:root{color-scheme:light;--page: #f7f5f1;--surface: #ffffff;--ink: #16213a;--ink-2: #4a5468;--muted: #8a91a0;--grid: #e4e1da;--baseline: #c9c6bd;--border: rgba(27, 42, 73, .12);--primary: #243a66;--primary-deep: #1b2a49;--primary-soft: #e3e8f2;--accent: #ff6b5b;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--shadow: 0 1px 2px rgba(27,42,73,.05), 0 8px 24px rgba(27,42,73,.08);--radius: 16px;--brand-font: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--page: #0f1626;--surface: #182238;--ink: #f4f1ec;--ink-2: #c3c8d4;--muted: #8a91a0;--grid: #263150;--baseline: #34405e;--border: rgba(255, 255, 255, .1);--primary: #9db4e8;--primary-deep: #c7d5f3;--primary-soft: #243a66;--accent: #ff7a6b;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.4)}}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:var(--ink)}.app{max-width:1100px;margin:0 auto;padding:0 20px 90px}.app.conversing{padding-bottom:150px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 2px;gap:12px}.brand{display:flex;align-items:center;gap:9px;font-family:var(--brand-font);font-weight:600;font-size:21px;color:var(--primary-deep)}.brand .logo{width:30px;height:30px;border-radius:8px;display:block}.brand small{color:var(--muted);font-weight:500;font-size:15px}.topbar .who{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--ink-2)}.avatar{width:36px;height:36px;border-radius:50%;border:1px solid var(--border)}.linkbtn{background:none;border:none;color:var(--primary);padding:4px 6px;border-radius:8px}.linkbtn:hover{background:var(--primary-soft)}.hero{text-align:center;margin:7vh 0 30px}.hero.compact{margin:10px 0 20px}.hero h1{font-family:var(--brand-font);font-weight:600;font-size:clamp(34px,6.5vw,58px);margin:0 0 6px;letter-spacing:-.5px}.hero h1 .k{color:var(--primary-deep)}.hero p{color:var(--ink-2);margin:0 0 26px;font-size:clamp(15px,2.4vw,19px)}.searchbar{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);padding:8px 10px 8px 24px;max-width:780px;margin:0 auto}.searchbar:focus-within{border-color:var(--primary)}.searchbar input{flex:1;border:none;outline:none;background:transparent;font-size:18px;min-width:0;padding:13px 0}.iconbtn{border:none;background:transparent;border-radius:50%;width:50px;height:50px;display:grid;place-items:center;font-size:23px;color:var(--ink-2);flex:none}.iconbtn:hover{background:var(--page)}.iconbtn.listening{background:var(--critical);color:#fff;animation:pulse 1.2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 10px #d03b3b26}}.askbtn{border:none;background:var(--primary);color:#fff;font-weight:600;border-radius:999px;padding:13px 28px;font-size:17px;flex:none}.askbtn:disabled{opacity:.5}.askbtn:hover:not(:disabled){background:var(--primary-deep)}.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}.hero.compact .chips{margin-top:0}.askdock{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--page);border-top:1px solid var(--border);padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px))}.searchbar.docked{max-width:780px;padding:4px 8px 4px 20px}.searchbar.docked input{font-size:17px;padding:10px 0}.searchbar.docked .iconbtn{width:44px;height:44px;font-size:21px}.searchbar.docked .askbtn{padding:11px 22px;font-size:16px}.chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:9px 18px;font-size:15.5px;color:var(--ink-2)}.chip:hover,.chip.on{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.thread{display:flex;flex-direction:column;gap:14px;margin:22px auto 10px;max-width:780px}.app.conversing .thread{min-height:calc(100vh - 250px)}.msg{scroll-margin-top:16px}.msg.pending{display:flex;align-items:center;gap:10px;color:var(--ink-2)}.msg{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 20px;text-align:left;font-size:16.5px;line-height:1.6}.msg.user{border-left-color:var(--border);background:var(--page);font-size:15px;color:var(--ink-2);max-width:90%;align-self:flex-end}.msg .meta{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.msg .meta span{font-size:12px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:16px;margin-top:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;display:flex;flex-direction:column;gap:10px;text-align:left}.card .head{display:flex;align-items:flex-start;gap:10px}.card .head .icon{font-size:26px}.card h3{margin:0;font-size:18px;line-height:1.3;flex:1}.card .cat{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.card p.desc{margin:0;color:var(--ink-2);font-size:15.5px;line-height:1.5}.fields{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:15px}.fields dt{color:var(--muted)}.fields dd{margin:0;font-weight:500}.card .foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid var(--grid);flex-wrap:wrap}.due{font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px}.due.overdue{color:var(--critical)}.due.due-soon{color:#8a5b00}.due.upcoming{color:var(--good)}@media (prefers-color-scheme: dark){.due.due-soon{color:var(--warning)}}.attach{font-size:12.5px;color:var(--primary);text-decoration:none}.owner{font-size:11.5px;color:var(--muted)}.consent{display:inline-flex;align-items:center;gap:6px;font-size:12px;border-radius:999px;padding:4px 10px;border:1px solid var(--border)}.consent.shared{color:var(--primary-deep);background:var(--primary-soft);border-color:transparent}.consent.private{color:var(--ink-2);background:var(--page)}.consent button{border:none;background:none;font-size:11.5px;color:inherit;text-decoration:underline;padding:0}.bell{position:relative;font-size:20px;cursor:pointer;background:none;border:none;padding:0 2px;line-height:1}.bell:hover{transform:scale(1.12);transition:transform .12s}.bellcount{position:absolute;top:-6px;right:-10px;background:var(--critical);color:#fff;font-size:11.5px;font-weight:700;border-radius:999px;min-width:18px;height:18px;display:inline-grid;place-items:center;padding:0 4px}.notifs{display:flex;flex-direction:column;gap:12px}.notif{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 20px;display:flex;align-items:center;gap:16px;justify-content:space-between;flex-wrap:wrap;text-align:left}.notif.overdue{border-left:5px solid var(--critical)}.notif.urgent{border-left:5px solid var(--warning)}.notif.soon{border-left:5px solid var(--primary)}.notif .ntext{font-size:16.5px;line-height:1.5;flex:1;min-width:220px}.notif .ndate{color:var(--muted);font-size:14.5px}.notif .nq{color:var(--ink-2);font-size:14.5px;margin-top:3px}.notif .ndesc{color:var(--muted);font-size:13.5px;margin-top:4px;line-height:1.35}.notif .nactions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notif.overdue .ntext strong{color:var(--critical)}.section-title{font-size:15px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin:34px 0 12px;text-align:left}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;text-align:left}.tile .v{font-size:44px;font-weight:700;line-height:1.1}.tile .l{font-size:15px;color:var(--ink-2);margin-top:4px;display:flex;align-items:center;gap:6px}.tile.critical .v{color:var(--critical)}.tile.warn .v{color:#8a5b00}@media (prefers-color-scheme: dark){.tile.warn .v{color:var(--warning)}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;text-align:left}.renew-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--grid);font-size:16.5px}.renew-row:last-child{border-bottom:none}.renew-row .sdot{width:10px;height:10px;border-radius:50%;flex:none}.renew-row .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.renew-row .d{color:var(--ink-2);font-size:14.5px;flex:none}.badge{font-size:13px;font-weight:600;border-radius:7px;padding:3px 10px;flex:none}.badge.overdue{color:#fff;background:var(--critical)}.badge.due-soon{color:#5a3c00;background:var(--warning)}.badge.upcoming{color:#fff;background:var(--good)}.barrow{display:grid;grid-template-columns:140px 1fr 42px;align-items:center;gap:12px;font-size:15.5px;padding:6px 0}.barrow .lbl{color:var(--ink-2);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barrow .track{height:22px;display:flex;align-items:center}.barrow .bar{height:22px;background:var(--primary);border-radius:0 4px 4px 0;min-width:2px}.barrow .num{color:var(--ink-2);font-variant-numeric:tabular-nums}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0b0b73;display:grid;place-items:center;padding:14px;z-index:50}.modal{background:var(--surface);border-radius:20px;box-shadow:var(--shadow);width:100%;max-width:560px;max-height:92vh;overflow:auto;padding:20px;text-align:left}.modal h2{margin:0 0 4px;font-size:19px}.modal .sub{color:var(--ink-2);font-size:13.5px;margin:0 0 16px}.tabs{display:flex;gap:6px;margin-bottom:16px}.tabs button{flex:1;border:1px solid var(--border);background:var(--page);border-radius:10px;padding:9px;font-size:14px;color:var(--ink-2)}.tabs button.on{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.form{display:flex;flex-direction:column;gap:11px}.form label{font-size:12.5px;color:var(--ink-2);display:flex;flex-direction:column;gap:4px}.form input,.form textarea,.form select{border:1px solid var(--baseline);border-radius:10px;padding:9px 11px;background:var(--page);font-size:14.5px;width:100%}.form .row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dropzone{border:2px dashed var(--baseline);border-radius:14px;padding:26px 14px;text-align:center;color:var(--ink-2);font-size:14px;background:var(--page)}.dropzone.on{border-color:var(--primary);color:var(--primary)}.qbox{background:var(--primary-soft);border-radius:12px;padding:12px 14px;font-size:13.5px}.qbox ul{margin:6px 0 8px;padding-left:18px}.primary{border:none;background:var(--primary);color:#fff;font-weight:600;border-radius:10px;padding:11px 18px}.primary:hover{background:var(--primary-deep)}.primary:disabled{opacity:.5}.ghost{border:1px solid var(--border);background:transparent;color:var(--ink-2);border-radius:10px;padding:10px 16px}.btnrow{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}.sharebox{display:flex;align-items:flex-start;gap:9px;background:var(--page);border-radius:12px;padding:11px 13px;font-size:13px;color:var(--ink-2)}.sharebox input{width:auto;margin-top:2px}.authwrap{min-height:82vh;display:grid;place-items:center}.authcard{background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);padding:34px 30px;width:100%;max-width:420px;text-align:center}.authcard h1{font-size:26px;margin:4px 0 6px}.authcard .sub{color:var(--ink-2);font-size:14.5px;margin-bottom:22px;line-height:1.5}.bigdot{width:46px;height:46px;border-radius:14px;background:var(--primary);display:inline-grid;place-items:center;font-size:24px}.minor{border-left:4px solid var(--warning);text-align:left}.landing{max-width:880px;margin:0 auto;padding:56px 20px 32px}.land-hero{text-align:center;margin-bottom:48px}.land-icon{width:76px;height:76px;border-radius:20px}.land-hero h1{font-family:var(--brand-font);font-weight:600;font-size:clamp(36px,6vw,52px);color:var(--primary-deep);margin:10px 0 4px;letter-spacing:-.5px}.land-tag{font-size:clamp(18px,3vw,22px);color:var(--ink);margin:0 0 4px}.land-sub{color:var(--ink-2);margin:0 0 26px;font-size:16px}.land-signin{max-width:360px;margin:0 auto}.land-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:44px}.land-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.land-card h3{margin:0 0 6px;font-size:17px;color:var(--primary-deep)}.land-card h3:before{content:"";display:block;width:26px;height:4px;border-radius:2px;background:var(--accent);margin-bottom:12px}.land-card p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.5}.land-ask{text-align:center;margin-bottom:40px}.land-ask h2{font-size:19px;margin:0 0 14px;color:var(--ink)}.land-ask ul{list-style:none;padding:0;margin:0 auto;max-width:560px;display:grid;gap:10px}.land-ask li{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:12px 20px;text-align:left;color:var(--ink-2);font-size:15.5px}.land-ask li:before{content:"“";color:var(--accent);font-weight:700;margin-right:6px}.land-privacy{text-align:center;color:var(--ink-2);font-size:14.5px;max-width:520px;margin:0 auto 36px;line-height:1.5}.land-foot{text-align:center;color:var(--muted);font-size:13.5px;border-top:1px solid var(--grid);padding-top:18px}.land-foot a{color:var(--primary)}.land-dot{margin:0 8px}.legal{max-width:680px;line-height:1.6}.legal-back{display:inline-flex;align-items:center;gap:8px;font-family:var(--brand-font);font-weight:600;color:var(--primary-deep);text-decoration:none;margin-bottom:24px}.legal-back img{width:30px;height:30px;border-radius:8px}.legal h1{font-family:var(--brand-font);font-weight:600;font-size:34px;color:var(--primary-deep);margin:0}.legal-date{color:var(--muted);font-size:14px;margin:4px 0 28px}.legal h2{font-size:18px;margin:28px 0 6px;color:var(--ink)}.legal p,.legal li{color:var(--ink-2);font-size:16px}.legal ul{padding-left:20px;margin:8px 0}.legal a{color:var(--primary)}@media (max-width: 680px){.landing{padding-top:36px}.land-cards{grid-template-columns:1fr}}.spin{display:inline-block;width:16px;height:16px;border:2px solid var(--grid);border-top-color:var(--primary);border-radius:50%;animation:rot .7s linear infinite;vertical-align:-3px}@keyframes rot{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:18px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--page);border-radius:999px;padding:10px 20px;font-size:14px;box-shadow:var(--shadow);z-index:99}.empty{color:var(--muted);font-size:14px;text-align:center;padding:26px 0}.speakbtn{border:none;background:none;color:var(--primary);font-size:13px;padding:0}@media (max-width: 560px){body{font-size:16px}.app{padding:0 14px 80px}.brand{font-size:18px}.brand small{display:none}.topbar .who{font-size:13.5px}.searchbar{padding:6px 8px 6px 16px}.searchbar input{font-size:16px;padding:11px 0}.iconbtn{width:44px;height:44px;font-size:20px}.askbtn{padding:11px 20px;font-size:15.5px}.chip{padding:8px 14px;font-size:14px}.tiles{grid-template-columns:1fr 1fr 1fr;gap:10px}.tile{padding:13px 14px}.tile .v{font-size:28px}.tile .l{font-size:12.5px}.renew-row{font-size:14.5px}.barrow{grid-template-columns:96px 1fr 32px;font-size:13.5px}.hero{margin-top:3vh}.card h3{font-size:16px}.grid{grid-template-columns:1fr}}.health{gap:16px}.health-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.health-score{display:flex;align-items:baseline;gap:2px;line-height:1}.hs-num{font-size:52px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hs-den{font-size:15px;font-weight:600;opacity:.55}.health-verdict{flex:1;min-width:220px}.hs-band{font-size:15px;font-weight:700;display:flex;align-items:center;gap:6px}.hs-line{font-size:13px;color:var(--ink-2);margin:3px 0 8px}.hs-meter{height:6px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--muted) 22%,transparent)}.hs-fill{display:block;height:100%;border-radius:999px}.hs-basis{font-size:12px;color:var(--muted);margin:7px 0 0;font-variant-numeric:tabular-nums}.health-money{display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid var(--border);padding-top:14px}.hm-cell{flex:1;min-width:150px}.hm-v{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.hm-l{font-size:11.5px;color:var(--muted);line-height:1.35;margin-top:2px}.hs-block{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:7px}.hs-block.critical{border-top:0;border-left:3px solid var(--critical);padding:9px 11px;background:color-mix(in srgb,var(--critical) 10%,transparent);border-radius:10px;font-size:13px}.hs-block-t{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.hs-row{display:flex;align-items:baseline;gap:10px;font-size:13px;flex-wrap:wrap}.hs-row-t{font-weight:600}.hs-row-why{color:var(--muted);font-size:12px;flex:1;min-width:120px}.hs-row-amt{font-weight:700;font-variant-numeric:tabular-nums;color:var(--critical)}.hs-gap{font-size:13px;color:var(--ink-2)}.hs-note{font-size:11.5px;color:var(--muted);line-height:1.45;margin:0;border-top:1px solid var(--border);padding-top:10px}.more-notifs{margin-top:10px;width:100%;padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}.more-notifs:hover{border-color:var(--baseline);color:var(--ink)}.qbox.readfail{background:#fff6e0;border-left:4px solid var(--warning)}@media (prefers-color-scheme: dark){.qbox.readfail{background:#3a2d05}}.fields.secure dd code{font-family:ui-monospace,monospace;font-size:13px;letter-spacing:.3px}.linkbtn{background:none;border:0;padding:0;font:inherit;font-size:12.5px;color:var(--primary);text-decoration:underline;cursor:pointer}.linkbtn.on{color:var(--primary-deep);font-weight:600}.modal.sheet{max-width:760px}.sheetrow{padding:10px 0;border-bottom:1px solid var(--baseline)}.sheetvalue{font-family:ui-monospace,monospace;font-size:15px;letter-spacing:.4px}@media print{body *{visibility:hidden}.printable,.printable *{visibility:visible}.printable{position:absolute;left:0;top:0;width:100%;color:#000;background:#fff}.overlay{position:static;background:none}}
