/* V0.15.0 — geometry + premium editorial visual system */

:root{
  --lux-bg:#060f0d;
  --lux-surface:#10211b;
  --lux-surface-deep:#0b1a16;
  --lux-surface-soft:rgba(244,240,229,.035);
  --lux-surface-raised:rgba(244,240,229,.055);
  --lux-ivory:#f3efe5;
  --lux-muted:#9ca9a3;
  --lux-muted-2:#74837d;
  --lux-line:rgba(242,235,218,.085);
  --lux-line-strong:rgba(242,235,218,.12);
  --lux-mint:#72cdb0;
  --lux-mint-soft:#a1dec9;
  --lux-sand:#d8c6a0;
  --lux-shadow:0 26px 72px rgba(0,0,0,.24);
}

html{background:var(--lux-bg)!important}
body{
  background:
    radial-gradient(900px 520px at 82% -120px,rgba(77,157,132,.095),transparent 64%),
    radial-gradient(760px 460px at -8% 10%,rgba(216,198,160,.05),transparent 68%),
    linear-gradient(180deg,#07120f 0%,#07100e 48%,#050b0a 100%)!important;
  color:var(--lux-ivory)!important;
}

/* Shared card and tile density */
.app-view-current .hero-panel,
.app-view-current .chart-panel,
.app-view-upcoming .upcoming-section,
.app-view-future .panel{
  padding-top:24px!important;
  padding-bottom:24px!important;
}

.panel,.hero-panel,.app-view-upcoming .upcoming-section,
.future-model-range-panel,.future-wait-planner,
.temporal-feature-home-projection,.temporal-feature-next-home{
  background:
    linear-gradient(145deg,rgba(18,37,30,.965),rgba(9,24,20,.97))!important;
  border-color:var(--lux-line)!important;
  box-shadow:
    0 1px 0 rgba(255,255,255,.025) inset,
    var(--lux-shadow)!important;
}

.hero-panel{
  background:
    radial-gradient(560px 300px at 88% 32%,rgba(114,205,176,.055),transparent 68%),
    radial-gradient(440px 260px at 3% -4%,rgba(216,198,160,.045),transparent 70%),
    linear-gradient(140deg,#10251e,#0b1b17 72%)!important;
  border-color:rgba(161,222,201,.12)!important;
}

.hero-balance-row>div,
.home-stats>div,
.current-fix-stats>div,
.deal-planner-rate,
.deal-planner-summary>div,
.next-home-summary-card,
.next-home-timeline-row,
.property-cost-card,
.home-profile-range>div{
  min-height:82px!important;
  padding:14px 15px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:linear-gradient(180deg,rgba(244,240,229,.042),rgba(244,240,229,.024))!important;
  border:1px solid var(--lux-line)!important;
  border-radius:15px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset!important;
}

.hero-balance-row span,.home-stats span,.interest-box span,.chart-stat span,
.current-fix-stats span,.deal-planner-rate span,.deal-planner-summary span,
.next-home-summary-card span,.next-home-timeline-row span{
  color:var(--lux-muted)!important;
}

.kicker,.eyebrow{
  color:var(--lux-mint)!important;
  letter-spacing:.15em!important;
}
.subtle,.field-note,.deep-note,.source-date,.next-event-text,.timeline-labels,.app-view-heading>p{color:var(--lux-muted)!important}

/* Editorial heading hierarchy */
.app-view .panel-heading h2,
.app-view .upcoming-section-heading h2,
.app-view .projection-heading h2,
.app-view .future-model-heading h2,
.app-view .future-wait-heading h2,
.app-view .next-home-heading h2,
.app-view .deep-heading h2,
.trajectory-scenario-copy h3{
  font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
  color:var(--lux-ivory)!important;
}
.app-view .panel-heading h2,.app-view .upcoming-section-heading h2,
.app-view .projection-heading h2,.app-view .future-model-heading h2,
.app-view .future-wait-heading h2,.app-view .next-home-heading h2{font-size:22px!important}

/* Current: compact the hero and tighten the trajectory flow */
.current-hero-condensed{padding:22px 24px!important}
.current-hero-condensed .hero-main>h1{
  color:var(--lux-ivory)!important;
  text-shadow:0 8px 30px rgba(0,0,0,.16);
}
.current-hero-condensed .hero-date{color:#b3bcb7!important}
.current-hero-condensed .hero-balance-row{gap:12px!important;margin-top:12px!important}
.current-hero-condensed .current-home-inline{margin-top:18px!important;padding-top:18px!important;column-gap:24px!important;border-top-color:var(--lux-line)!important}
.current-hero-condensed .current-home-inline .home-stats{gap:10px!important}
.current-hero-condensed .current-home-inline .home-value strong{
  font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif!important;
  font-weight:500!important;
  color:var(--lux-ivory)!important;
}
.current-hero-condensed .current-home-inline .ownership-donut{
  filter:drop-shadow(0 12px 22px rgba(0,0,0,.16));
}

.trajectory-with-what-if>.panel-heading{padding:24px 24px 0!important}
.trajectory-scenario-controls{
  margin:16px 24px 10px!important;
  padding:16px 16px 15px!important;
  background:linear-gradient(180deg,rgba(244,240,229,.026),rgba(244,240,229,.014))!important;
  border-color:var(--lux-line)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset!important;
}
.trajectory-scenario-copy{padding-bottom:11px!important;margin-bottom:11px!important;border-bottom-color:var(--lux-line)!important}
.trajectory-with-what-if>.chart-wrap{margin:10px 24px 0!important;width:calc(100% - 48px)!important}
.trajectory-with-what-if>.chart-wrap canvas{
  background:transparent!important;
  border:0!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.trajectory-with-what-if>.legend{margin:10px 24px 0!important;padding-bottom:20px!important}
.chart-stat{
  background:transparent!important;
  border-color:var(--lux-line)!important;
  box-shadow:none!important;
}

/* Controls: satin rather than chunky */
.trajectory-overpay-row button,.trajectory-custom-overpay{
  min-height:38px!important;
  border-radius:11px!important;
  background:rgba(244,240,229,.035)!important;
  border-color:var(--lux-line)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset!important;
}
.trajectory-overpay-row button:hover:hover{
  background:rgba(244,240,229,.06)!important;
  border-color:rgba(161,222,201,.22)!important;
}
.trajectory-overpay-row button.active.active{
  background:linear-gradient(180deg,#79d2b4,#66bea1)!important;
  color:#071610!important;
  box-shadow:0 10px 24px rgba(73,159,130,.18)!important;
}

/* Upcoming: composed sections, not a grid of generic boxes */
.app-view-upcoming .upcoming-section{padding:24px!important}
.app-view-upcoming .upcoming-section-heading{margin-bottom:17px!important;padding-bottom:12px!important;border-bottom:1px solid var(--lux-line)!important}
.app-view-upcoming .current-fix-stats,
.app-view-upcoming .deal-planner-rate-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important;
  gap:12px!important;
}
.app-view-upcoming .current-fix-stats{margin-top:16px!important}
.app-view-upcoming .deal-planner-rate,
.app-view-upcoming .current-fix-stats>div,
.app-view-upcoming .deal-planner-summary>div{
  min-height:88px!important;
  padding:14px 15px!important;
  background:linear-gradient(180deg,rgba(244,240,229,.038),rgba(244,240,229,.021))!important;
  border:1px solid var(--lux-line)!important;
  border-radius:15px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset!important;
}
.app-view-upcoming .deal-planner-rate:hover,
.app-view-upcoming .deal-planner-rate.is-current-rate,
.app-view-upcoming .deal-planner-rate.is-current-rate:hover,
.app-view-upcoming .current-fix-stats>div:hover,
.app-view-upcoming .deal-planner-summary>div:hover{
  background:linear-gradient(180deg,rgba(244,240,229,.038),rgba(244,240,229,.021))!important;
  border-color:var(--lux-line)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.018) inset!important;
  transform:none!important;
}
.app-view-upcoming .upcoming-rates .deal-planner-rate.is-current-rate span{color:var(--lux-muted)!important}
.app-view-upcoming .upcoming-position .deal-planner-summary{gap:12px!important}
.app-view-upcoming .upcoming-position .deal-planner-milestone,
.app-view-upcoming .upcoming-position .deal-position-interest{margin-top:18px!important;padding-top:18px!important;border-top-color:var(--lux-line)!important}
.app-view-upcoming .deal-planner-note{margin-top:16px!important;padding-top:14px!important;border-top-color:var(--lux-line)!important}
.app-view-upcoming .timeline-track{background:rgba(244,240,229,.055)!important;height:7px!important}
.app-view-upcoming .timeline-fill{background:linear-gradient(90deg,#5bb99a,#8bd7bd)!important}

/* Future: keep density, add quieter hierarchy */
.app-view-future .temporal-feature-home-projection,
.app-view-future .next-home-body,
.app-view-future .future-model-range-panel,
.app-view-future .future-wait-planner{padding-top:24px!important;padding-bottom:24px!important}
.app-view-future .home-profile-range,
.app-view-future .next-home-summary,
.app-view-future .next-home-timeline{gap:12px!important}
.future-model-range-panel .home-profile-range,
.future-wait-host,.future-cost-inline{border-color:var(--lux-line)!important}

/* Navigation: quieter luxury segmented control */
.app-section-nav-top{
  background:rgba(244,240,229,.018)!important;
  border-color:var(--lux-line)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.015) inset!important;
}
.app-section-nav button{
  background:transparent!important;
  color:var(--lux-muted)!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.app-section-nav button.is-active{
  background:rgba(244,240,229,.07)!important;
  color:var(--lux-ivory)!important;
  border-color:var(--lux-line)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
}

/* Setup: same material language */
.personal-modal{
  width:min(780px,100%)!important;
  padding:24px!important;
  background:
    radial-gradient(420px 220px at 88% 0%,rgba(114,205,176,.045),transparent 68%),
    linear-gradient(180deg,#10231d,#091914)!important;
  border-color:var(--lux-line-strong)!important;
  box-shadow:0 40px 120px rgba(0,0,0,.5)!important;
}
.personal-form{gap:12px!important;margin-top:16px!important}
.personal-form label{
  padding:11px 12px!important;
  border-radius:15px!important;
  background:rgba(244,240,229,.028)!important;
  border-color:var(--lux-line)!important;
}
.personal-form input,.setup-future-grid input{min-height:40px!important;background:rgba(2,12,10,.68)!important;border-color:var(--lux-line)!important}
.personal-section{margin-top:16px!important;padding-top:16px!important;border-top-color:var(--lux-line)!important}
.personal-footer-actions{margin-top:16px!important;padding-top:16px!important;border-top-color:var(--lux-line)!important}
.setup-tab-nav{background:rgba(244,240,229,.018)!important;border-color:var(--lux-line)!important}
.setup-tab-nav button.active{background:rgba(244,240,229,.075)!important;color:var(--lux-ivory)!important}

/* Micro-finish */
.brand{color:var(--lux-ivory)!important}.brand span{color:var(--lux-muted-2)!important}
.topline,.save-status{color:var(--lux-muted-2)!important}
.footer{color:#64736d!important}

@media(max-width:900px){
  .app-view-upcoming .current-fix-stats,
  .app-view-upcoming .deal-planner-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:700px){
  .app-view-current .hero-panel,
  .app-view-current .chart-panel,
  .app-view-upcoming .upcoming-section,
  .app-view-future .panel{padding-top:18px!important;padding-bottom:18px!important}
  .current-hero-condensed{padding:18px!important}
  .trajectory-with-what-if>.panel-heading{padding:18px 18px 0!important}
  .trajectory-scenario-controls{margin:14px 18px 9px!important}
  .trajectory-with-what-if>.chart-wrap{margin:9px 18px 0!important;width:calc(100% - 36px)!important}
  .trajectory-with-what-if>.legend{margin:10px 18px 0!important;padding-bottom:16px!important}
  .app-view-upcoming .upcoming-section{padding:18px!important}
  .hero-balance-row>div,.home-stats>div,.current-fix-stats>div,.deal-planner-rate,.deal-planner-summary>div,.next-home-summary-card,.next-home-timeline-row,.property-cost-card,.home-profile-range>div{min-height:72px!important;padding:12px!important}
  .personal-modal{width:100%!important;padding:18px!important}
  .app-view .panel-heading h2,.app-view .upcoming-section-heading h2,
  .app-view .projection-heading h2,.app-view .future-model-heading h2,
  .app-view .future-wait-heading h2,.app-view .next-home-heading h2{font-size:20px!important}
}

@media(max-width:520px){
  .app-view-upcoming .current-fix-stats,
  .app-view-upcoming .deal-planner-rate-grid{grid-template-columns:1fr!important}
}
