:root{
  --ink:#060607;
  --panel:rgba(255,255,255,.045);
  --panel-2:rgba(255,255,255,.045);
  --panel-3:rgba(255,255,255,.07);
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.14);
  --text:#f2f0ec;
  --text-dim:#a8adb3;
  --text-faint:#6b7078;
  --orange:#f0940c;
  --orange-2:#ff7a1a;
  --orange-dim:#a86408;
  --green:#3fb56f;
  --red:#e6503f;
  --blue:#3f8cf2;
  --shadow-lg:0 24px 60px rgba(0,0,0,.55);
  font-size:16px;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background: var(--ink);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
}

.page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:44px 16px 32px;
  gap:28px;
}

.page-header{text-align:center;max-width:640px;}
.wordmark{font-size:1.9rem;font-weight:800;letter-spacing:-.02em;}
.wordmark__gun{color:var(--text);}
.wordmark__broker{color:var(--orange);}
.wordmark__product{
  display:block;
  margin-top:3px;
  font-size:.78rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--text-faint);
  font-weight:700;
}
.page-header__tag{
  margin:12px 0 0;
  color:var(--text-dim);
  font-size:.9rem;
}

.shell{
  width:100%;
  max-width:820px;
  display:flex;
  flex-direction:column;
  gap:20px;
}

.panel{
  background:linear-gradient(180deg, var(--panel-2), rgba(255,255,255,.015));
  backdrop-filter:blur(20px) saturate(150%);
  border:1px solid var(--line-strong);
  border-radius:22px;
  padding:28px;
  box-shadow:var(--shadow-lg);
}

.panel-head h1{
  margin:0 0 8px;
  font-size:1.5rem;
  font-weight:800;
  letter-spacing:-.01em;
}
.panel-head p{
  margin:0 0 24px;
  color:var(--text-dim);
  font-size:.92rem;
  line-height:1.5;
  max-width:560px;
}

.appraisal-form{display:flex;flex-direction:column;gap:16px;}
.field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.field{display:flex;flex-direction:column;gap:7px;}
.field label{
  font-size:.78rem;
  font-weight:700;
  color:var(--text-dim);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.field-optional{
  text-transform:none;
  font-weight:500;
  color:var(--text-faint);
  letter-spacing:0;
}
.field select,
.field input{
  background:var(--panel-3);
  border:1px solid var(--line-strong);
  border-radius:12px;
  padding:12px 14px;
  color:var(--text);
  font-size:.92rem;
  font-family:inherit;
  width:100%;
  appearance:none;
}
.field select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a8adb3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:16px;
  padding-right:36px;
}
.field select:disabled{color:var(--text-faint);cursor:not-allowed;}
.field select:focus,
.field input:focus{
  outline:none;
  border-color:var(--orange);
}
.field input::placeholder{color:var(--text-faint);}

.btn{
  border:none;
  border-radius:999px;
  padding:13px 22px;
  font-weight:700;
  font-size:.92rem;
  cursor:pointer;
  font-family:inherit;
}
.btn--primary{background:var(--orange);color:#171000;}
.btn--primary:hover{background:var(--orange-2);}
.btn--ghost{background:var(--panel-3);border:1px solid var(--line-strong);color:var(--text);}
.btn--block{width:100%;}
.btn--cta{padding:15px 22px;font-size:.98rem;}

.result-panel{display:flex;flex-direction:column;gap:28px;}

.estimate-card{
  text-align:center;
  padding:8px 8px 4px;
}
.estimate-card__label{
  font-size:.76rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--text-faint);
  margin-bottom:8px;
}
.estimate-card__range{
  font-size:2.4rem;
  font-weight:900;
  color:var(--orange);
  letter-spacing:-.02em;
  line-height:1.1;
}
.estimate-card__meta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:12px;
  flex-wrap:wrap;
}
.confidence-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:rgba(63,181,111,.16);
  color:var(--green);
  font-size:.74rem;
  font-weight:700;
  padding:5px 12px;
  border-radius:999px;
}
.confidence-badge.is-medium{
  background:rgba(240,148,12,.16);
  color:var(--orange);
}
.confidence-badge.is-low{
  background:rgba(230,80,63,.16);
  color:var(--red);
}
.estimate-card__basis{
  font-size:.78rem;
  color:var(--text-faint);
}
.estimate-card__summary{
  margin:14px auto 0;
  max-width:520px;
  color:var(--text-dim);
  font-size:.88rem;
  line-height:1.5;
}

.trend-block{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:24px 4px;
}
.trend-insight{
  margin:0 0 16px;
  font-size:.92rem;
  font-weight:600;
  color:var(--text);
}
.trend-insight .trend-arrow{font-weight:900;}
.trend-insight .is-up{color:var(--green);}
.trend-insight .is-down{color:var(--red);}
.trend-insight .is-flat{color:var(--text-dim);}
.trend-chart-wrap{
  width:100%;
  line-height:0;
}
.trend-chart-wrap svg{width:100%;height:auto;display:block;}
.trend-axis{
  display:flex;
  justify-content:space-between;
  margin-top:8px;
  font-size:.68rem;
  color:var(--text-faint);
  padding:0 2px;
}

.comps-block h2{
  margin:0 0 14px;
  font-size:1.05rem;
  font-weight:800;
}
.comps-list{display:flex;flex-direction:column;gap:10px;}
.comp-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:var(--panel-3);
  border:1px solid var(--line-strong);
  border-radius:14px;
  padding:14px 16px;
}
.comp-item__main{min-width:0;}
.comp-item__title{
  font-weight:700;
  font-size:.9rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.comp-item__meta{
  margin-top:3px;
  font-size:.76rem;
  color:var(--text-dim);
  display:flex;
  flex-wrap:wrap;
  row-gap:2px;
}
.comp-item__meta span:not(:last-child)::after{
  content:"·";
  margin:0 8px;
  color:var(--text-faint);
}
.comp-item__price{
  flex-shrink:0;
  font-weight:800;
  font-size:1rem;
  color:var(--orange);
  text-align:right;
}

.cta-block{
  text-align:center;
  padding-top:4px;
}
.cta-note{
  margin:12px 0 0;
  font-size:.8rem;
  color:var(--text-faint);
}

.disclaimer{
  max-width:640px;
  text-align:center;
  font-size:.72rem;
  line-height:1.6;
  color:var(--text-faint);
  padding:0 12px;
}

@media (max-width:600px){
  .page{padding:28px 12px 24px;}
  .panel{padding:20px;border-radius:18px;}
  .field-row{grid-template-columns:1fr;gap:14px;}
  .estimate-card__range{font-size:1.9rem;}
  .comp-item{flex-direction:column;align-items:flex-start;gap:6px;}
  .comp-item__price{align-self:flex-end;}
}
