:root{--font-display:"Newsreader", Georgia, serif;--font-body:"Geist", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--bg:#f7f7f5;--bg-elev:#fff;--bg-sunken:#eeeeeb;--ink:#1a1c1a;--ink-2:#3c3f3c;--muted:#6c706c;--muted-2:#9a9e9a;--border:#e0e0dc;--border-strong:#c8c8c4;--shadow-sm:0 1px 2px #0000000a, 0 1px 1px #00000008;--shadow-md:0 4px 14px -4px #00000014, 0 2px 6px -2px #0000000d;--shadow-lg:0 22px 50px -20px #00000029, 0 10px 22px -10px #00000017;--primary:#4a6b6b;--primary-soft:#e0eaea;--primary-ink:#233535;--accent:#8a7a6a;--accent-soft:#ede8e0;--info:#3a6e8c;--warn:#b98427;--danger:#b04a3f;--success:#4f8061;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--font-scale:1}[data-theme=dark]{--bg:#141414;--bg-elev:#1e1e1e;--bg-sunken:#0d0d0d;--ink:#f0eee8;--ink-2:#cec8c2;--muted:#96968e;--muted-2:#6a6a62;--border:#2a2a2a;--border-strong:#3a3a38;--primary-soft:#1e2a2a;--primary-ink:#b0cece;--accent-soft:#2c2820;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 18px -6px #00000080;--shadow-lg:0 22px 50px -20px #0000008c}[data-palette=sage]{--primary:#3d7a6b;--primary-soft:#ddede6;--primary-ink:#1f4a40;--accent:#c97b5a;--accent-soft:#f5decf;--bg:#faf6ef;--bg-elev:#fff;--bg-sunken:#f2ece1;--border:#e5ddce;--border-strong:#cfc4b0}[data-theme=dark][data-palette=sage]{--primary-soft:#1f3631;--primary-ink:#b8e2d2;--accent-soft:#3f2a22;--bg:#11161a;--bg-elev:#1b2226;--bg-sunken:#0b1013;--border:#2b3438;--border-strong:#3d4a4f}[data-palette=plum]{--primary:#6b4570;--primary-soft:#ecdfed;--primary-ink:#3f2543;--accent:#d89b5c;--accent-soft:#f6e3cb;--bg:#faf6fb;--bg-elev:#fff;--bg-sunken:#f1e9f2;--border:#e6dce8;--border-strong:#d0c0d3}[data-theme=dark][data-palette=plum]{--primary-soft:#2e1f31;--primary-ink:#e3cce5;--accent-soft:#3a2a1a;--bg:#17131a;--bg-elev:#221c26;--bg-sunken:#0f0c11;--border:#2e2733;--border-strong:#40374a}[data-palette=clay]{--primary:#b0533d;--primary-soft:#f6dbcf;--primary-ink:#6f2f1f;--accent:#4f8061;--accent-soft:#d8e7dc;--bg:#fbf5f0;--bg-elev:#fff;--bg-sunken:#f3e6dc;--border:#e8d6c8;--border-strong:#d1b7a2}[data-theme=dark][data-palette=clay]{--primary-soft:#3a1f17;--primary-ink:#f2c2ae;--accent-soft:#1f2f22;--bg:#1a1310;--bg-elev:#241a16;--bg-sunken:#100b09;--border:#33241d;--border-strong:#47332a}[data-palette=leaf]{--primary:#2f8558;--primary-soft:#dcefe1;--primary-ink:#1b5c3b;--accent:#e0a63a;--accent-soft:#fbebc9;--bg:#f6faf5;--bg-elev:#fff;--bg-sunken:#e9f2e6;--border:#dce9d8;--border-strong:#c2d6bc}[data-theme=dark][data-palette=leaf]{--primary-soft:#173324;--primary-ink:#b7e6c7;--accent-soft:#3a2c12;--bg:#10160f;--bg-elev:#1a2318;--bg-sunken:#0a0f09;--border:#24301f;--border-strong:#34452c}[data-palette=ocean]{--primary:#2c6e8c;--primary-soft:#d8e9ef;--primary-ink:#17435a;--accent:#d98e5b;--accent-soft:#f5e1ce;--bg:#f4f9fb;--bg-elev:#fff;--bg-sunken:#e5f0f4;--border:#d6e6ec;--border-strong:#b8d2dc}[data-theme=dark][data-palette=ocean]{--primary-soft:#15303b;--primary-ink:#b7dcea;--accent-soft:#3a2a1c;--bg:#0e161a;--bg-elev:#182228;--bg-sunken:#090f12;--border:#223038;--border-strong:#30424c}[data-palette=amber]{--primary:#b8863a;--primary-soft:#f3e6cc;--primary-ink:#6b4a17;--accent:#4f7d6b;--accent-soft:#dceae3;--bg:#fbf7ee;--bg-elev:#fff;--bg-sunken:#f4ead2;--border:#e9dab8;--border-strong:#d4be8c}[data-theme=dark][data-palette=amber]{--primary-soft:#332411;--primary-ink:#ead2a0;--accent-soft:#1e2f28;--bg:#1a150e;--bg-elev:#241d14;--bg-sunken:#100d08;--border:#362b1b;--border-strong:#4a3b24}[data-palette=teal]{--primary:#3d7a6b;--primary-soft:#dfeae6;--primary-ink:#1f4a40;--accent:#c99a4a;--accent-soft:#f2e4c8;--bg:#f4eedf;--bg-elev:#fff;--bg-sunken:#ece4d1;--border:#e6dcc5;--border-strong:#cfc2a0}[data-theme=dark][data-palette=teal]{--primary-soft:#1e332e;--primary-ink:#b8e0d6;--accent-soft:#3a2e18;--bg:#15120c;--bg-elev:#201b12;--bg-sunken:#0c0a06;--border:#332b1c;--border-strong:#473c28}[data-font-size=large]{--font-scale:1.15}[data-font-size=xlarge]{--font-scale:1.3}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);font-size:calc(15px * var(--font-scale));-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55;transition:background .2s,color .2s}button,input,select,textarea{font-family:inherit}button{cursor:pointer}::selection{background:var(--primary-soft);color:var(--primary-ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border:2px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.app-shell{background:var(--bg);min-height:100vh;display:flex}.btn{appearance:none;color:var(--ink);border-radius:var(--r-pill);font-size:calc(14px * var(--font-scale));letter-spacing:-.005em;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:10px 16px;font-weight:500;transition:background .12s,color .12s,border-color .12s,transform .12s,opacity .12s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-ink)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover{background:var(--bg-sunken);color:var(--ink)}.btn-outline{border-color:var(--border-strong);color:var(--ink);background:var(--bg-elev)}.btn-outline:hover{border-color:var(--ink-2)}.btn-danger-soft{background:color-mix(in oklch, var(--danger), transparent 88%);color:var(--danger)}.btn-danger-soft:hover{background:color-mix(in oklch, var(--danger), transparent 78%)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(.92)}.btn-icon{border-radius:var(--r-pill);justify-content:center;width:36px;height:36px;padding:8px}.btn-sm{font-size:calc(13px * var(--font-scale));padding:6px 12px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.display{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-weight:400;line-height:1.05}.eyebrow{font-family:var(--font-mono);font-size:calc(11px * var(--font-scale));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}.pill{border-radius:var(--r-pill);background:var(--bg-sunken);color:var(--ink-2);font-size:calc(12px * var(--font-scale));border:1px solid var(--border);align-items:center;gap:6px;padding:4px 10px;font-weight:500;display:inline-flex}.pill-primary{background:var(--primary-soft);color:var(--primary-ink);border-color:#0000}.pill-accent{background:var(--accent-soft);color:var(--accent);border-color:#0000}.lang-dropdown{position:relative}.lang-dropdown-btn{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--bg-sunken);color:var(--ink-2);font-size:calc(13px * var(--font-scale));cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.lang-dropdown-btn:hover{border-color:var(--border-strong);color:var(--ink)}.lang-dropdown-chevron{opacity:.5;font-size:10px}.lang-dropdown-list{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-lg);z-index:50;margin:0;padding:4px;list-style:none;display:none;position:absolute;top:calc(100% + 6px);right:0}.lang-dropdown-list.open{display:block}.lang-dropdown-list li{border-radius:var(--r-sm);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.lang-dropdown-list li:hover{background:var(--bg-sunken)}.lang-dropdown-list li.active{background:var(--primary-soft)}.lang-option-name{font-size:calc(13.5px * var(--font-scale));color:var(--ink);font-weight:500}.lang-option-native{font-size:calc(13px * var(--font-scale));color:var(--muted)}.lang-option-check{color:var(--primary);opacity:0;flex-shrink:0;font-size:14px}.lang-dropdown-list li.active .lang-option-check{opacity:1}.lang-dropdown-dark .lang-dropdown-btn{color:#f4eedf;background:#ffffff14;border-color:#f4eedf4d}.lang-dropdown-dark .lang-dropdown-btn:hover{border-color:#f4eedf80}.lang-dropdown-dark .lang-dropdown-list{background:#1f3631;border-color:#f4eedf26}.lang-dropdown-dark .lang-option-name{color:#f4eedf}.lang-dropdown-dark .lang-option-native{color:#f4eedf8c}.lang-dropdown-dark .lang-dropdown-list li:hover{background:#ffffff14}.lang-dropdown-dark .lang-dropdown-list li.active{background:#ffffff1f}aside.sidebar{border-right:1px solid var(--border);background:var(--bg-elev);flex-direction:column;flex-shrink:0;width:280px;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.side-top{justify-content:space-between;align-items:center;padding:18px 18px 12px;display:flex}.newchat-wrap{padding:8px 14px 14px}.newchat-btn{border:1px solid var(--border-strong);width:100%;color:var(--ink);background:var(--bg-elev);border-radius:12px;justify-content:flex-start;padding:10px 14px}.newchat-btn:hover{border-color:var(--ink-2)}#sidebar-history-section{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}nav.history-nav{flex:1;min-height:0;padding:8px 10px 12px;overflow-y:auto}.side-section-label{margin:6px 0 4px;padding:0 8px}.sidebar-footer{border-top:1px solid var(--border);flex-shrink:0;margin-top:auto;padding:10px}.nav-row{width:100%;color:var(--ink-2);font-size:calc(13.5px * var(--font-scale));cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.nav-row:hover{background:var(--bg-sunken);color:var(--ink)}.nav-row.active{background:var(--primary-soft);color:var(--primary-ink);font-weight:600}.nav-row.nav-row-menu{color:var(--ink);font-weight:500}.profile-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;margin-top:4px;padding:10px 8px;transition:background .12s;display:flex}.profile-row:hover{background:var(--bg-sunken)}.profile-row-chevron{color:var(--muted);flex-shrink:0}.sign-out-btn{background:color-mix(in oklch, var(--danger), transparent 88%);width:100%;color:var(--danger);justify-content:center;margin-top:10px;font-weight:600}.sign-out-btn:hover{background:color-mix(in oklch, var(--danger), transparent 76%)}.guest-indicator{background:var(--bg-sunken);border-radius:10px;align-items:center;gap:10px;padding:10px 8px;display:flex}.avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);font-size:calc(13px * var(--font-scale));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.avatar-lg{background:var(--accent-soft);width:64px;height:64px;color:var(--accent);font-size:calc(22px * var(--font-scale));border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.avatar img,.avatar-lg img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.profile-meta{flex:1;min-width:0}.profile-name{font-size:calc(13px * var(--font-scale));color:var(--ink);font-weight:500}.profile-email{font-size:calc(11px * var(--font-scale));color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-group-label{padding:10px 8px 4px}.new-chat-active{background:var(--primary-soft)!important;color:var(--primary-ink)!important}.history-row-title{font-size:calc(14px * var(--font-scale));color:var(--ink);font-weight:500}.history-row-date{font-size:calc(12px * var(--font-scale));color:var(--muted);margin-top:2px}.empty-state{text-align:center;color:var(--muted);font-size:calc(13.5px * var(--font-scale));padding:30px 10px}@media (max-width:767px){aside.sidebar{z-index:70;box-shadow:var(--shadow-lg);transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}aside.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{z-index:65;background:#14140f66;display:none;position:fixed;inset:0}.sidebar-overlay.show{display:block}.mobile-menu-btn{display:inline-flex}}@media (min-width:768px){.mobile-menu-btn{display:none}.sidebar-overlay{display:none!important}}main.main-panel{flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:auto}header.topbar{z-index:10;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:62px;padding:0 24px;display:flex;position:sticky;top:0}.page-wrap{width:100%;max-width:760px;margin:0 auto;padding:44px 28px 90px}.section{margin-top:36px}.section:first-of-type{margin-top:8px}.section-title{font-size:calc(15px * var(--font-scale));color:var(--ink);margin:0 0 4px;font-weight:600}.section-desc{font-size:calc(13.5px * var(--font-scale));color:var(--muted);margin:0 0 18px}.back-link{color:var(--ink-2);font-size:calc(13.5px * var(--font-scale));background:0 0;border:0;align-items:center;gap:8px;margin-bottom:18px;font-weight:500;display:inline-flex}.back-link:hover{color:var(--ink)}.back-link:disabled{opacity:.35;cursor:not-allowed;color:var(--muted)}[data-contrast=high]{--bg:#000!important;--bg-elev:#0a0a0a!important;--bg-sunken:#111!important;--ink:#fff!important;--ink-2:#f0f0f0!important;--muted:#c8c8c8!important;--muted-2:#a0a0a0!important;--border:#fff!important;--border-strong:#ff0!important;--primary:#ff0!important;--primary-soft:#2a2a00!important;--primary-ink:#ff0!important;--accent:#0ff!important;--accent-soft:#002a2a!important;--danger:#f66!important;--warn:#fa0!important;--success:#6f6!important;--shadow-sm:none!important;--shadow-md:none!important;--shadow-lg:none!important}[data-contrast=high] .card,[data-contrast=high] .modal,[data-contrast=high] .pill,[data-contrast=high] .btn-outline{border-width:2px!important}[data-contrast=high] .mode-icon.light,[data-contrast=high] .mode-icon.dark{filter:invert()grayscale()}[data-contrast=high] .swatch{filter:grayscale()contrast(2)}[data-contrast=high] .welcome-brand{border-bottom:2px solid #ff0;background:#000!important}[data-contrast=high] .welcome-blob{display:none}[data-contrast=high] .btn-primary{color:#000!important;background:#ff0!important;border:2px solid #ff0!important}[data-contrast=high] .btn-primary:hover{background:#ffa!important}[data-contrast=high] input,[data-contrast=high] select,[data-contrast=high] textarea{color:#fff!important;background:#000!important;border:2px solid #fff!important}.welcome-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);min-height:100vh;display:grid}.welcome-brand{color:#f4eedf;background:linear-gradient(165deg,#3d7a6b 0%,#1f4a40 70%,#1a3530 100%);flex-direction:column;min-height:600px;padding:44px 56px;display:flex;position:relative;overflow:hidden}.welcome-brand:after{content:"";pointer-events:none;z-index:1;mix-blend-mode:multiply;opacity:.5;background-image:radial-gradient(#0000000f 1px,#0000 1px);background-size:3px 3px;position:absolute;inset:0}.welcome-brand-blobs{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.welcome-blob{filter:blur(60px);opacity:.28;border-radius:50%;position:absolute}.welcome-blob.b1{background:var(--accent);width:320px;height:320px;animation:22s ease-in-out infinite blobDrift1;top:-70px;left:-70px}.welcome-blob.b2{background:#fbf6e8;width:280px;height:280px;animation:27s ease-in-out infinite blobDrift2;top:38%;right:-90px}.welcome-blob.b3{background:var(--primary-soft);width:220px;height:220px;animation:19s ease-in-out infinite blobDrift3;bottom:-50px;left:28%}@keyframes blobDrift1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,30px)scale(1.15)}}@keyframes blobDrift2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-30px,-25px)scale(1.1)}}@keyframes blobDrift3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(25px,-20px)scale(1.2)}}@media (prefers-reduced-motion:reduce){.welcome-blob{animation:none!important}}.welcome-brand-header{z-index:2;justify-content:space-between;align-items:center;display:flex;position:relative}.welcome-brand-mid{z-index:2;flex-direction:column;flex:1;justify-content:center;max-width:520px;display:flex;position:relative}.welcome-greeting-cycle{font-family:var(--font-display);color:var(--accent-soft);font-style:italic;font-size:calc(21px * var(--font-scale));opacity:0;margin-bottom:10px;transition:opacity .42s,transform .42s;transform:translateY(6px)}.welcome-greeting-cycle.show{opacity:1;transform:translateY(0)}.welcome-trust-row{flex-wrap:wrap;gap:28px;display:flex}.welcome-trust-item{font-size:calc(13px * var(--font-scale));color:#f4eedfd9;align-items:center;gap:8px;display:inline-flex}.welcome-trust-icon{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.welcome-brand-footer{z-index:2;font-size:calc(12px * var(--font-scale));color:#f4eedf8c;justify-content:space-between;display:flex;position:relative}.welcome-form-panel{background:var(--bg);justify-content:center;align-items:center;padding:44px 40px;display:flex;position:relative}.welcome-form-wrap{width:100%;max-width:420px}@keyframes welcomeFormIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.welcome-form-wrap.entrance{animation:.48s cubic-bezier(.16,.8,.3,1) welcomeFormIn}@media (prefers-reduced-motion:reduce){.welcome-form-wrap.entrance{animation:none}}.auth-success-overlay{background:var(--bg);opacity:0;pointer-events:none;z-index:10;flex-direction:column;justify-content:center;align-items:center;gap:14px;transition:opacity .2s;display:flex;position:absolute;inset:0}.auth-success-overlay.show{opacity:1;pointer-events:all}.auth-success-circle{background:var(--primary);color:#fff;opacity:0;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex;transform:scale(.5)}.auth-success-overlay.show .auth-success-circle{animation:.5s cubic-bezier(.16,.8,.3,1) forwards successPop}@keyframes successPop{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.auth-success-text{font-size:calc(14px * var(--font-scale));color:var(--ink-2);opacity:0;font-weight:500}.auth-success-overlay.show .auth-success-text{animation:.4s .2s forwards successTextIn}@keyframes successTextIn{to{opacity:1}}.auth-divider{color:var(--muted);font-size:calc(12px * var(--font-scale));align-items:center;gap:12px;margin:18px 0 16px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-landing-title{font-size:calc(20px * var(--font-scale));color:var(--ink);margin:0 0 20px;font-weight:600}.auth-action-stack{flex-direction:column;gap:10px;display:flex}.auth-action-btn{width:100%;font-size:calc(15px * var(--font-scale));justify-content:center;padding:13px}.auth-guest-action{color:var(--muted);gap:8px}.auth-guest-action:hover{color:var(--ink-2)}.auth-landing-hint{font-size:calc(12px * var(--font-scale));color:var(--muted);text-align:center;margin:14px 0 0}.auth-back-btn{color:var(--muted);font-size:calc(13px * var(--font-scale));background:0 0;border:0;align-items:center;gap:6px;margin-bottom:16px;padding:0;font-weight:500;display:inline-flex}.auth-back-btn:hover{color:var(--ink-2)}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}}.terms-check-row{cursor:pointer;align-items:flex-start;gap:9px;margin:2px 0 16px;display:flex}.terms-check-row input{width:15px;height:15px;accent-color:var(--primary);flex-shrink:0;margin-top:3px}.terms-check-row span{font-size:calc(13px * var(--font-scale));color:var(--ink-2);line-height:1.5}.terms-link{font-size:inherit;color:var(--primary-ink);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline;display:inline}.policy-modal{width:460px}.policy-modal-body{max-height:320px;font-size:calc(13.5px * var(--font-scale));color:var(--muted);margin:4px 0 20px;padding-right:6px;line-height:1.65;overflow-y:auto}.policy-modal-body p{margin:0 0 12px}.policy-modal-body strong{color:var(--ink-2)}@media (max-width:900px){.welcome-grid{grid-template-columns:1fr}.welcome-brand{min-height:260px}}.chat-screen{flex-direction:column;height:100vh;display:flex}.chat-header{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;justify-content:space-between;align-items:center;height:62px;padding:0 24px;display:flex}.chat-scroll{flex:1;padding:32px 24px 0;position:relative;overflow-y:auto}.chat-inner{max-width:820px;margin:0 auto}.empty-state-wrap{flex-direction:column;align-items:flex-start;gap:12px;max-width:480px;padding:48px 0 24px;display:flex}.empty-state-heading{font-size:calc(36px * var(--font-scale));margin:0}.empty-state-sub{color:var(--muted);font-size:calc(15px * var(--font-scale));margin:0;line-height:1.5}.scroll-latest-btn{border:1px solid var(--border);background:var(--bg-elev);width:38px;height:38px;color:var(--ink-2);box-shadow:var(--shadow-md);z-index:5;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.scroll-latest-btn:hover{background:var(--bg-sunken)}.composer-wrap{background:var(--bg);flex-shrink:0;padding:0 24px}.composer-inner{max-width:820px;margin:0 auto;padding:0 0 18px}.mode-row{gap:10px;display:flex}.mode-btn{border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg-elev);color:var(--ink-2);font-size:calc(14px * var(--font-scale));flex:1;align-items:center;gap:10px;padding:14px 16px;font-weight:500;transition:all .12s;display:flex}.mode-btn:hover{border-color:var(--border-strong)}.mode-btn.selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-ink)}.mode-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.mode-icon.light{background:linear-gradient(160deg,#ffe9b8,#fdbf60)}.mode-icon.dark{background:linear-gradient(160deg,#2b3438,#11161a)}.palette-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px;display:grid}.palette-btn{border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg-elev);flex-direction:column;align-items:center;gap:10px;padding:16px 10px;transition:all .12s;display:flex}.palette-btn:hover{border-color:var(--border-strong)}.palette-btn.selected{border-color:var(--swatch-color,var(--primary));box-shadow:0 0 0 3px color-mix(in oklch, var(--swatch-color,var(--primary)), transparent 78%)}.swatch{background:linear-gradient(150deg, var(--swatch-color) 0%, var(--swatch-accent) 130%);border-radius:50%;width:40px;height:40px;position:relative;box-shadow:inset 0 -2px 4px #0000001f,inset 0 2px 2px #ffffff40}.swatch.swatch-none{background:linear-gradient(150deg,#d8d8d4 0%,#b8b8b2 130%)}.swatch .check{opacity:0;color:#fff;justify-content:center;align-items:center;transition:opacity .12s;display:flex;position:absolute;inset:0}.palette-btn.selected .swatch .check{opacity:1}.palette-name{font-size:calc(13px * var(--font-scale));color:var(--ink-2);font-weight:500}.palette-btn.selected .palette-name{color:var(--ink);font-weight:600}.fontsize-row{gap:10px;margin-top:18px;display:flex}.fontsize-btn{border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg-elev);color:var(--ink-2);font-size:calc(12.5px * var(--font-scale));flex-direction:column;flex:1;align-items:center;gap:6px;padding:12px 10px;font-weight:600;transition:all .12s;display:flex}.fontsize-btn:hover{border-color:var(--border-strong)}.fontsize-btn.selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-ink)}.fontsize-sample{font-family:var(--font-display);line-height:1}.contrast-toggle-row{display:flex}.contrast-toggle-btn{border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg-elev);color:var(--ink-2);font-size:calc(13.5px * var(--font-scale));align-items:center;gap:8px;padding:9px 16px;font-weight:500;transition:all .12s;display:inline-flex}.contrast-toggle-btn:hover{border-color:var(--border-strong)}.contrast-toggle-btn.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-ink);font-weight:600}.field{margin-bottom:16px}.field label{font-size:calc(12.5px * var(--font-scale));color:var(--ink-2);margin-bottom:6px;font-weight:600;display:block}.field-hint{font-size:calc(12px * var(--font-scale));color:var(--muted);margin:6px 0 0;line-height:1.45}.field-hint-callout{background:var(--accent-soft);color:var(--accent);border-radius:10px;align-items:flex-start;gap:8px;padding:10px 12px;font-weight:500;display:flex}.field-hint-callout svg{flex-shrink:0;margin-top:1px}.field input,.field select{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-sunken);width:100%;color:var(--ink);font-size:calc(14px * var(--font-scale));outline:none;padding:10px 12px;transition:border-color .12s,background .12s}.field input:disabled,.field select:disabled{color:var(--muted);cursor:not-allowed}.field input:not(:disabled):focus,.field select:not(:disabled):focus{border-color:var(--primary);background:var(--bg-elev)}.profile-picture-row{align-items:center;gap:16px;margin-bottom:22px;display:flex}.remove-photo-link{color:var(--muted);font-size:calc(12.5px * var(--font-scale));background:0 0;border:0;margin-left:10px;padding:0;font-weight:500}.remove-photo-link:hover{color:var(--danger)}.history-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:13px 4px;transition:opacity .18s,transform .18s;display:flex}.history-row:last-child{border-bottom:none}.history-row.removing{opacity:0;transform:translate(12px)}.delete-all-float{box-shadow:var(--shadow-lg);z-index:20;position:fixed;bottom:26px;right:36px}.no-results{text-align:center;color:var(--muted);font-size:calc(13.5px * var(--font-scale));padding:30px 10px}.search-field{margin-bottom:18px;position:relative}.search-field input{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--bg-sunken);width:100%;font-size:calc(14px * var(--font-scale));color:var(--ink);outline:none;padding:11px 14px 11px 40px}.search-field input:focus{border-color:var(--primary);background:var(--bg-elev)}.search-icon{color:var(--muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.sidebar-search{margin-bottom:0}.sidebar-search input{font-size:calc(13px * var(--font-scale));padding:8px 12px 8px 34px}.sidebar-search .search-icon{font-size:calc(13px * var(--font-scale));left:12px}.step-title{font-size:calc(22px * var(--font-scale));color:var(--ink);margin:0 0 6px}.step-desc{font-size:calc(14px * var(--font-scale));color:var(--muted);margin:0 0 24px}.country-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.country-btn{border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--bg-elev);cursor:pointer;align-items:center;padding:16px 18px;transition:all .12s;display:flex}.country-btn:hover{border-color:var(--primary);background:var(--primary-soft)}.country-btn-name{font-size:calc(15px * var(--font-scale));color:var(--ink);font-weight:600}.facility-card{border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-elev);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:16px;transition:border-color .12s;display:flex}.facility-card:hover{border-color:var(--border-strong)}.facility-card-chevron{color:var(--muted);flex-shrink:0}.facility-name{font-size:calc(14.5px * var(--font-scale));color:var(--ink);margin:0 0 3px;font-weight:600}.facility-meta{font-size:calc(12.5px * var(--font-scale));color:var(--muted)}.facility-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.detail-header{align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.detail-icon{background:var(--primary-soft);width:52px;height:52px;color:var(--primary-ink);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.detail-row{border-bottom:1px solid var(--border);font-size:calc(14px * var(--font-scale));gap:12px;padding:13px 0;display:flex}.detail-row:last-of-type{border-bottom:none}.detail-row-icon{color:var(--muted);flex-shrink:0;margin-top:1px}.about-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:40px;display:grid}.about-card-icon{background:var(--primary-soft);width:40px;height:40px;color:var(--primary-ink);font-size:calc(17px * var(--font-scale));border-radius:12px;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.about-card{text-align:left;cursor:pointer;width:100%;padding:20px;transition:all .15s;display:block}.about-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.about-card h3{color:var(--ink)}.about-card p{color:var(--muted)}.about-card-more{font-size:calc(12.5px * var(--font-scale));color:var(--primary-ink);align-items:center;gap:5px;font-weight:600;display:inline-flex}.about-detail-icon{background:linear-gradient(150deg, var(--primary), var(--accent));color:#fff;width:52px;height:52px;box-shadow:var(--shadow-md);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.about-detail-section{margin-top:26px}.about-detail-section h3{font-size:calc(15px * var(--font-scale));margin:0 0 8px;font-weight:600}.about-detail-section p,.about-detail-section li{font-size:calc(14.5px * var(--font-scale));color:var(--ink-2);line-height:1.65}.about-detail-section ul{margin:0;padding-left:20px}.status-tag{font-family:var(--font-mono);font-size:calc(10px * var(--font-scale));letter-spacing:.06em;text-transform:uppercase;vertical-align:1px;border-radius:999px;margin-left:8px;padding:2px 8px;display:inline-block}.status-tag.live{background:var(--primary-soft);color:var(--primary-ink)}.status-tag.progress{background:var(--accent-soft);color:var(--accent)}.status-tag.planned{background:var(--bg-sunken);color:var(--muted);border:1px solid var(--border)}.safety-callout{background:var(--accent-soft);color:var(--accent);border-radius:16px;align-items:flex-start;gap:14px;margin-top:24px;padding:20px 22px;display:flex}.toast{background:var(--ink);color:var(--bg-elev);border-radius:var(--r-pill);font-size:calc(13.5px * var(--font-scale));box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;z-index:80;align-items:center;gap:8px;padding:11px 20px;font-weight:500;transition:opacity .2s,transform .2s;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.modal-backdrop{z-index:90;background:#14140f66;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-backdrop.show{display:flex}.modal{background:var(--bg-elev);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);width:380px;max-width:calc(100vw - 40px);padding:24px}.tutorial-modal{width:440px}.tutorial-icon{background:linear-gradient(150deg, var(--primary), var(--accent));color:#fff;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:18px;display:inline-flex}.tutorial-title{font-size:calc(19px * var(--font-scale));margin:0 0 8px;font-weight:600}.tutorial-body{font-size:calc(14.5px * var(--font-scale));color:var(--muted);margin:0 0 22px;line-height:1.6}.tutorial-dots{gap:6px;margin-bottom:18px;display:flex}.tutorial-dot{background:var(--border);border-radius:2px;flex:1;height:4px}.tutorial-dot.done,.tutorial-dot.current{background:var(--primary)}.tutorial-dot.current{opacity:.5}.tutorial-footer{justify-content:space-between;align-items:center;display:flex}.tutorial-skip{color:var(--muted);font-size:calc(13px * var(--font-scale));background:0 0;border:0;padding:0;font-weight:500}.tutorial-skip:hover{color:var(--ink-2)}.tutorial-nav{gap:8px;display:flex}.modal-icon{background:color-mix(in oklch, var(--danger), transparent 85%);width:40px;height:40px;color:var(--danger);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.modal-title{font-size:calc(16px * var(--font-scale));margin:0 0 6px;font-weight:600}.modal-body{font-size:calc(13.5px * var(--font-scale));color:var(--muted);margin:0 0 20px;line-height:1.5}.modal-actions{justify-content:flex-end;gap:10px;display:flex}
