:root{--bg-0:#07080c;--bg-1:#0d0f16;--bg-2:#141724;--glass:#ffffff0b;--glass-border:#ffffff17;--gold:#d4af6a;--gold-bright:#f0d89a;--gold-dim:#8f7a4e;--text:#f4efe6;--text-dim:#a89f8e;--text-faint:#6f6a5e;--danger:#e06a5c;--radius:18px;--shadow:0 20px 60px #0000008c;--font-display:"Cormorant Garamond", "Playfair Display", Georgia, serif;--font-body:"Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--text);background:radial-gradient(1100px 600px at 85% -10%, #d4af6a1a, transparent 60%), radial-gradient(900px 500px at -10% 110%, #785ac814, transparent 60%), linear-gradient(160deg, var(--bg-1), var(--bg-0) 60%);-webkit-font-smoothing:antialiased;background-attachment:fixed}h1,h2,h3,.brand-name{font-family:var(--font-display);letter-spacing:.02em;font-weight:600}.glass{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow)}.btn{font-family:var(--font-body);cursor:pointer;letter-spacing:.02em;border:1px solid #0000;border-radius:999px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .25s}.btn-gold{background:linear-gradient(135deg, var(--gold-bright), var(--gold) 55%, #a8843f);color:#1a1408;box-shadow:0 8px 30px #d4af6a47}.btn-gold:hover{transform:translateY(-1px);box-shadow:0 12px 40px #d4af6a66}.btn-ghost{color:var(--text-dim);border-color:var(--glass-border);background:0 0}.btn-ghost:hover{color:var(--text);border-color:#fff3}.btn-danger{color:var(--danger);background:0 0;border-color:#e06a5c66}.btn-danger:hover{background:#e06a5c1f}.btn-lg{padding:.9rem 2.2rem;font-size:1rem}.btn-sm{padding:.4rem .9rem;font-size:.8rem}.btn-xs{padding:.2rem .6rem;font-size:.7rem}.splash,.login-screen{text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.splash-inner{max-width:480px}.logo-mark{color:var(--gold);text-shadow:0 0 40px #d4af6a80;margin-bottom:.75rem;font-size:2.4rem}.logo-mark.small{margin-bottom:0;font-size:1.3rem}.login-card{width:100%;max-width:440px;padding:3.2rem 3rem}.login-card h1{margin-bottom:.6rem;font-size:2.4rem}.login-tag{color:var(--text-dim);margin-bottom:.4rem;font-size:1.05rem}.login-secure{color:var(--text-faint);margin-bottom:2rem;font-size:.8rem}.splash-sub{color:var(--text-faint);margin-top:.4rem}.loader-bar{background:#ffffff14;border-radius:2px;width:160px;height:3px;margin:1.6rem auto 0;overflow:hidden}.loader-bar span{background:linear-gradient(90deg, transparent, var(--gold), transparent);width:40%;height:100%;animation:1.2s ease-in-out infinite slide;display:block}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.app-shell{min-height:100vh;display:flex}.sidebar{border-radius:22px;flex-direction:column;width:260px;height:calc(100vh - 2rem);margin:1rem 0 1rem 1rem;padding:1.6rem 1.2rem;display:flex;position:sticky;top:1rem}.brand{border-bottom:1px solid var(--glass-border);align-items:center;gap:.7rem;padding:.2rem .4rem 1.4rem;display:flex}.brand-name{font-size:1.15rem}.brand-sub{color:var(--text-faint);letter-spacing:.04em;font-size:.68rem}.nav{flex-direction:column;flex:1;gap:.3rem;margin-top:1.4rem;display:flex}.nav-item{color:var(--text-dim);font-family:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:.7rem;padding:.7rem .9rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{color:var(--text);background:#ffffff0d}.nav-item.active{color:var(--gold-bright);background:linear-gradient(135deg,#d4af6a24,#d4af6a08)}.nav-icon{text-align:center;width:1.4rem}.sidebar-footer{border-top:1px solid var(--glass-border);padding-top:1rem}.user-chip{align-items:center;gap:.6rem;margin-bottom:.8rem;display:flex}.avatar{background:linear-gradient(135deg, var(--gold), #7a6436);color:#1a1408;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.user-email{color:var(--text-dim);text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.main{flex:1;max-width:1500px;padding:2rem 2.4rem 3rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.6rem;display:flex}.page-head h2{font-size:2rem}.sub{color:var(--text-dim);margin-top:.25rem;font-size:.95rem}.sub em{color:var(--gold);font-style:italic}.compare-scroll{border-radius:var(--radius);overflow-x:auto}.compare{border-collapse:collapse;width:100%;min-width:820px;overflow:hidden}.compare th,.compare td{text-align:left;padding:.9rem 1.1rem}.compare thead th{border-bottom:1px solid var(--glass-border)}.compare th.col{vertical-align:top;min-width:230px}.compare th.col.fav{background:linear-gradient(#d4af6a1a,#0000)}.col-head{align-items:flex-start;gap:.6rem;display:flex}.type-icon{font-size:1.2rem}.type-icon.big{font-size:1.8rem}.col-name{font-family:var(--font-display);font-size:1.1rem;font-weight:600}.col-loc{color:var(--text-faint);margin-top:.1rem;font-size:.75rem}.fav-tag{color:var(--gold);background:#d4af6a1f;border:1px solid #d4af6a4d;border-radius:999px;margin-top:.4rem;padding:.15rem .6rem;font-size:.68rem;display:inline-block}.row-label{color:var(--text-dim);white-space:nowrap;font-size:.85rem}.compare td{font-variant-numeric:tabular-nums;border-top:1px solid #ffffff0a}.total-row td{border-top:1px solid var(--glass-border);font-weight:600}.total-row .row-label{color:var(--gold-bright)}.total-cell{color:var(--gold-bright);font-weight:600}.best-value{color:#7fd4a8}.score-dots{letter-spacing:2px;color:var(--gold);font-size:.8rem}.score-dots.best{color:#7fd4a8}.score-num{color:var(--text-dim);margin-left:.5rem;font-size:.75rem}.verdict{margin-top:1.4rem;padding:1.2rem 1.4rem}.verdict h3{color:var(--gold-bright);margin-bottom:.4rem}.verdict p{color:var(--text-dim);font-size:.95rem;line-height:1.6}.verdict strong{color:var(--text)}.options-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;display:grid}.option-card{padding:1.4rem;transition:transform .25s,box-shadow .25s;position:relative}.option-card:hover{transform:translateY(-3px);box-shadow:0 26px 70px #000000a6}.option-card.fav{border-color:#d4af6a73}.fav-ribbon{background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:#1a1408;border-radius:999px;padding:.25rem .8rem;font-size:.68rem;font-weight:700;position:absolute;top:-10px;right:16px;box-shadow:0 6px 20px #d4af6a66}.card-top{align-items:flex-start;gap:.8rem;margin-bottom:.8rem;display:flex}.card-top h3{font-size:1.25rem}.card-loc{color:var(--text-faint);font-size:.78rem}.card-price{font-family:var(--font-display);color:var(--gold-bright);margin-bottom:.3rem;font-size:1.7rem}.listing-link{color:var(--gold);margin-bottom:.8rem;font-size:.78rem;text-decoration:none;display:inline-block}.listing-link:hover{text-decoration:underline}.card-stats{gap:1rem;margin:.6rem 0;display:flex}.stat{background:#00000038;border-radius:12px;flex:1;padding:.6rem .9rem}.stat-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;display:block}.stat-value{margin-top:.15rem;font-size:1.15rem;font-weight:600;display:block}.card-notes{color:var(--text-dim);margin:.6rem 0;font-size:.82rem;line-height:1.5}.card-actions{gap:.5rem;margin-top:.4rem;display:flex}.empty-state{text-align:center;padding:2.5rem}.empty-state h2,.empty-state h3{color:var(--gold-bright);margin-bottom:.4rem}.empty-state p{color:var(--text-dim)}.form-view{max-width:900px}.option-form{padding:1.8rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;display:grid}.field{flex-direction:column;gap:.35rem;display:flex}.field.span2{grid-column:span 2}.field>span{color:var(--text-dim);font-size:.8rem}.field .hint{color:var(--text-faint);font-size:.72rem;font-style:normal}.field input[type=text],.field input[type=number],.field select,.field textarea{border:1px solid var(--glass-border);color:var(--text);font-family:var(--font-body);background:#0000004d;border-radius:12px;outline:none;padding:.65rem .85rem;font-size:.95rem;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#d4af6a99}.field input[type=range]{accent-color:var(--gold)}.range-val{color:var(--gold-bright);font-size:.8rem}.form-section{color:var(--gold-bright);border-bottom:1px solid var(--glass-border);margin:1.6rem 0 .9rem;padding-bottom:.4rem;font-size:1.05rem}.form-actions{justify-content:flex-end;gap:.8rem;margin-top:1.6rem;display:flex}.lifestyle-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.3rem;margin-bottom:2.2rem;display:grid}.lifestyle-card{flex-direction:column;gap:1.1rem;padding:1.5rem;transition:transform .25s,box-shadow .25s;display:flex}.lifestyle-card:hover{transform:translateY(-3px);box-shadow:0 26px 70px #000000a6}.ls-head{align-items:center;gap:.9rem;display:flex}.ls-head h3{font-size:1.45rem}.ls-tagline{color:var(--text-faint);font-size:.85rem;font-style:italic}.ls-scores{flex-direction:column;gap:.45rem;display:flex}.score-row{align-items:center;gap:.6rem;display:flex}.score-label{color:var(--text-dim);flex:0 0 110px;font-size:.78rem}.score-bar{background:#ffffff14;border-radius:3px;flex:1;height:6px;overflow:hidden}.score-fill{background:linear-gradient(90deg, var(--gold-dim), var(--gold-bright));border-radius:3px;height:100%;display:block}.score-num{color:var(--text-faint);text-align:right;width:32px;font-size:.72rem}.ls-lists{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ls-pros,.ls-cons{flex-direction:column;gap:.35rem;font-size:.8rem;line-height:1.55;list-style:none;display:flex}.ls-pros li{color:#9fd8b4}.ls-cons li{color:#e0a29a}.ls-active{border:1px solid var(--glass-border);background:#00000047;border-radius:14px;padding:.9rem 1rem}.ls-active-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin-bottom:.3rem;font-size:.66rem}.ls-active-name{font-size:1.02rem;font-weight:600}.ls-active-meta{color:var(--text-dim);font-size:.8rem}.ls-active-meta strong{color:var(--gold-bright)}.ls-active-none{color:var(--text-faint);font-size:.82rem}.ls-active-select{border:1px solid var(--glass-border);width:100%;color:var(--text);font-family:var(--font-body);background:#0006;border-radius:10px;outline:none;margin-top:.6rem;padding:.5rem .7rem;font-size:.82rem}.ls-drill{align-self:flex-start;margin-top:auto}.compare-section{margin-top:.6rem}.compare-section .page-head{margin-bottom:1rem}.section-row td{color:var(--gold-dim);letter-spacing:.05em;text-transform:uppercase;background:#d4af6a0d;padding:.55rem 1.1rem;font-size:.75rem}.tab-pills{flex-wrap:wrap;gap:.5rem;margin-bottom:1.3rem;display:flex}.tab-pill{border:1px solid var(--glass-border);color:var(--text-dim);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;transition:all .2s}.tab-pill:hover{color:var(--text);border-color:#ffffff38}.tab-pill.active{color:#1a1408;background:linear-gradient(135deg, var(--gold-bright), var(--gold) 55%, #a8843f);border-color:#0000;box-shadow:0 6px 22px #d4af6a4d}.head-actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.horizon-pills{margin-bottom:0}.row-hint{color:var(--text-faint);white-space:normal;font-size:.68rem;font-weight:400}.wealth-value{color:#7fd4a8;font-weight:600}.stat-wealth{color:#7fd4a8}.form-note{color:var(--text-faint);margin-top:.6rem;font-size:.78rem;line-height:1.5}.lifestyle-strip{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.3rem;padding:1rem 1.3rem;display:flex}.strip-body{flex:1;min-width:160px}.strip-name{font-family:var(--font-display);font-size:1.35rem;font-weight:600}.strip-tagline{color:var(--text-faint);font-size:.82rem;font-style:italic}.strip-scores{flex-wrap:wrap;gap:.4rem;display:flex}.strip-score{color:var(--text-dim);border:1px solid var(--glass-border);background:#0000004d;border-radius:999px;padding:.25rem .6rem;font-size:.72rem}.active-badge{color:#07130d;background:linear-gradient(135deg,#7fd4a8,#3f9d6f);border-radius:999px;padding:.25rem .8rem;font-size:.68rem;font-weight:700;position:absolute;top:-10px;left:16px;box-shadow:0 6px 20px #7fd4a859}@media (width<=900px){.app-shell{flex-direction:column}.sidebar{width:auto;height:auto;margin:.8rem;position:static}.nav{flex-flow:wrap}.sidebar-footer{display:none}.main{padding:1.2rem}.field.span2{grid-column:span 1}}
