:root{--navy: #1a3a5c;--navy-dark: #0f2438;--navy-light: #2a5685;--gold: #c8a45e;--gold-light: #e0c896;--cream: #faf7f1;--paper: #ffffff;--ink: #1a1a1a;--ink-soft: #4a4a4a;--ink-mute: #8a8a8a;--line: #e5e1d8;--line-soft: #f0ece4;--green: #2d7a3e;--green-soft: #e8f3eb;--red: #a83232;--red-soft: #fbeaea;--amber: #b8842a;--amber-soft: #fdf3e1;--shadow-sm: 0 1px 2px rgba(15, 36, 56, .06);--shadow-md: 0 4px 12px rgba(15, 36, 56, .08);--shadow-lg: 0 12px 32px rgba(15, 36, 56, .12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,sans-serif;background:var(--cream);color:var(--ink);line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}.display-font{font-family:Fraunces,Georgia,serif}.gate-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--cream);padding:20px}.gate-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:48px 40px;max-width:420px;width:100%;text-align:center}.gate-card .gate-ornament{color:var(--gold);font-size:14px;letter-spacing:1em;margin-bottom:12px}.gate-card h1{font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:600;color:var(--navy);margin-bottom:6px;letter-spacing:-.01em}.gate-card .gate-subtitle{font-size:13px;color:var(--ink-mute);margin-bottom:28px;font-style:italic}.gate-card label{display:block;text-align:left;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}.gate-card input[type=password]{width:100%;padding:12px 14px;border:1px solid var(--line);background:var(--cream);font-size:16px;font-family:inherit;color:var(--ink);letter-spacing:.1em;margin-bottom:16px}.gate-card input[type=password]:focus{outline:none;border-color:var(--navy);background:var(--paper);box-shadow:0 0 0 3px #1a3a5c14}.gate-card button{width:100%;padding:12px;border:none;background:var(--navy);color:#fff;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s}.gate-card button:hover{background:var(--navy-dark)}.gate-error{color:var(--red);font-size:13px;margin-top:12px;min-height:18px}.gate-footer{margin-top:32px;font-size:11px;color:var(--ink-mute);border-top:1px solid var(--line);padding-top:16px}.app-header{background:var(--navy);color:#fff;padding:28px 32px 24px;border-bottom:4px solid var(--gold)}.app-header .wrap{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px}.app-header h1{font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:600;letter-spacing:-.01em;line-height:1.1}.app-header .subtitle{font-size:13px;color:#ffffffbf;margin-top:6px;letter-spacing:.02em}.header-actions{display:flex;gap:10px}.btn-outline{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.btn-outline:hover{background:var(--gold);border-color:var(--gold);color:var(--navy-dark)}main{max-width:1280px;margin:0 auto;padding:32px;display:grid;grid-template-columns:380px 1fr;gap:32px}@media (max-width: 900px){main{grid-template-columns:1fr;padding:20px;gap:20px}.app-header{padding:20px}}.input-panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:28px;height:fit-content;position:sticky;top:20px}@media (max-width: 900px){.input-panel{position:static}}.section-title{font-family:Fraunces,Georgia,serif;font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--navy);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--line)}.section-title:not(:first-of-type){margin-top:28px}.input-group{margin-bottom:14px}.input-group label{display:block;font-size:12px;font-weight:500;color:var(--ink-soft);margin-bottom:5px;letter-spacing:.01em}.input-group input[type=text],.input-group input[type=number]{width:100%;padding:9px 12px;border:1px solid var(--line);background:var(--cream);font-size:14px;font-family:inherit;color:var(--ink);transition:all .15s}.input-group input:focus{outline:none;border-color:var(--navy);background:var(--paper);box-shadow:0 0 0 3px #1a3a5c14}.input-group .hint{font-size:11px;color:var(--ink-mute);margin-top:4px;font-style:italic}.toggle-row{display:flex;background:var(--line-soft);padding:3px;margin-bottom:14px}.toggle-row button{flex:1;padding:8px 10px;border:none;background:transparent;font-family:inherit;font-size:12px;font-weight:500;color:var(--ink-mute);cursor:pointer;transition:all .15s;letter-spacing:.01em}.toggle-row button.active{background:var(--navy);color:#fff;box-shadow:var(--shadow-sm)}.slider-group{margin-bottom:18px}.slider-label-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.slider-label-row label{font-size:12px;font-weight:500;color:var(--ink-soft)}.slider-value{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:600;color:var(--navy)}input[type=range]{width:100%;height:6px;background:var(--line);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;background:var(--navy);border:3px solid white;box-shadow:var(--shadow-md);cursor:pointer;border-radius:50%;transition:transform .1s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}input[type=range]::-moz-range-thumb{width:22px;height:22px;background:var(--navy);border:3px solid white;box-shadow:var(--shadow-md);cursor:pointer;border-radius:50%}.slider-range{display:flex;justify-content:space-between;margin-top:4px;font-size:10px;color:var(--ink-mute);letter-spacing:.05em}.results-panel{display:flex;flex-direction:column;gap:24px}.hero-card{background:var(--navy);color:#fff;padding:32px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}.hero-card:before{content:"";position:absolute;top:0;right:0;width:140px;height:140px;background:var(--gold);opacity:.08;transform:rotate(45deg) translate(40px,-40px)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;position:relative;z-index:1}@media (max-width: 600px){.hero-grid{grid-template-columns:1fr;gap:20px}}.hero-metric .hero-label{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#fff9;margin-bottom:8px;font-weight:500}.hero-metric .hero-value{font-family:Fraunces,Georgia,serif;font-size:42px;font-weight:600;line-height:1;letter-spacing:-.02em}.hero-metric .hero-detail{font-size:12px;color:#ffffffb3;margin-top:6px}.hero-value.positive{color:#6ee087}.hero-value.negative{color:#ffa5a5}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:24px}.card-title{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:600;color:var(--navy);margin-bottom:18px;display:flex;justify-content:space-between;align-items:baseline}.card-title .badge{font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;background:var(--gold);color:var(--navy-dark)}.breakdown{width:100%;border-collapse:collapse}.breakdown tr td{padding:9px 0;font-size:14px;border-bottom:1px solid var(--line-soft)}.breakdown tr td:first-child{color:var(--ink-soft)}.breakdown tr td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.breakdown tr.subtotal td{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600;background:var(--line-soft);padding:11px 12px}.breakdown tr.subtotal td:first-child{padding-left:12px}.breakdown tr.subtotal td:last-child{padding-right:12px}.breakdown tr.total td{font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:600;color:var(--navy);padding-top:14px;border-bottom:none}.breakdown tr.neg td:last-child{color:var(--red)}.breakdown tr.pos td:last-child{color:var(--green)}.breakdown .indent{padding-left:16px!important;color:var(--ink-mute)!important;font-size:13px!important}.clock-card{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-light) 100%);padding:24px;color:var(--navy-dark);position:relative;overflow:hidden}.clock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 600px){.clock-grid{grid-template-columns:1fr}}.clock-metric .clock-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--navy-dark);opacity:.7;margin-bottom:6px}.clock-metric .clock-value{font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:600;line-height:1}.clock-metric .clock-detail{font-size:11px;margin-top:4px;opacity:.75}.probability-row{display:flex;align-items:center;gap:12px;padding:14px;background:var(--cream);border-left:4px solid var(--gold)}.probability-row .prob-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);font-weight:600}.probability-row .prob-value{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:600;flex:1}.probability-row .prob-bar{flex:2;height:8px;background:var(--line);position:relative;overflow:hidden}.probability-row .prob-fill{height:100%;transition:width .4s ease,background .4s ease}.prob-low .prob-value{color:var(--red)}.prob-low .prob-fill{background:var(--red);width:25%}.prob-moderate .prob-value{color:var(--amber)}.prob-moderate .prob-fill{background:var(--amber);width:60%}.prob-high .prob-value{color:var(--green)}.prob-high .prob-fill{background:var(--green);width:90%}.insight{padding:16px 20px;border-left:4px solid var(--navy);background:var(--paper);margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-soft)}.insight strong{color:var(--navy);font-weight:600}.insight.warn{border-color:var(--red);background:var(--red-soft)}.insight.good{border-color:var(--green);background:var(--green-soft)}.insight.gold{border-color:var(--gold);background:var(--amber-soft)}.compare-table{width:100%;border-collapse:collapse;font-size:13px}.compare-table th{padding:12px 8px;background:var(--navy);color:#fff;font-weight:500;text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.compare-table th:first-child{text-align:left;padding-left:14px}.compare-table td{padding:10px 8px;text-align:center;border-bottom:1px solid var(--line-soft);font-variant-numeric:tabular-nums}.compare-table td:first-child{text-align:left;padding-left:14px;font-weight:500;color:var(--ink-soft)}.compare-table tr.current{background:var(--amber-soft)}.compare-table tr.current td:first-child:before{content:"▸ ";color:var(--gold);font-weight:700}footer{max-width:1280px;margin:40px auto 0;padding:24px 32px 40px;font-size:11px;color:var(--ink-mute);text-align:center;border-top:1px solid var(--line)}footer .tag{color:var(--navy);font-weight:600}
