:root{--font-body:"DM Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-head:"Outfit","DM Sans",ui-sans-serif,system-ui,sans-serif;--paper:#f0f7fd;--paper-raised:#ffffff;--ink:#0d1b2e;--ink-soft:#45586f;--ink-faint:#64778e;--rule:#d3e2f0;--navy:#05264d;--navy-mid:#1b6fb5;--blue-soft:#e3f1fb;--navy-ink:#eaf4ff;--navy-ink-soft:#b4cce6;--accent:#27b7f5;--accent-ink:#05264d;--accent-text:#0b6fae;--accent-soft:#d9effc;--lime:#78fc44;--good:#2f8a55;--bad:#b3413a;--hero:linear-gradient(135deg,#05264d,#2d236d);--shadow:0 1px 2px rgba(5,38,77,0.06),0 14px 32px -18px rgba(5,38,77,0.32)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0a1424;--paper-raised:#101d33;--ink:#e8f0fa;--ink-soft:#a9bbd1;--ink-faint:#7c90a8;--rule:#22344f;--navy:#04162f;--navy-mid:#6fb6f0;--blue-soft:#16273f;--navy-ink:#eaf4ff;--navy-ink-soft:#b4cce6;--accent:#27b7f5;--accent-ink:#05264d;--accent-text:#5ccbfa;--accent-soft:#123a55;--good:#6fb894;--bad:#e08a80;--hero:linear-gradient(135deg,#04162f,#241c58);--shadow:0 1px 2px rgba(0,0,0,0.35),0 20px 40px -20px rgba(0,0,0,0.55)}}:root[data-theme=dark]{--paper:#0a1424;--paper-raised:#101d33;--ink:#e8f0fa;--ink-soft:#a9bbd1;--ink-faint:#7c90a8;--rule:#22344f;--navy:#04162f;--navy-mid:#6fb6f0;--blue-soft:#16273f;--navy-ink:#eaf4ff;--navy-ink-soft:#b4cce6;--accent:#27b7f5;--accent-ink:#05264d;--accent-text:#5ccbfa;--accent-soft:#123a55;--good:#6fb894;--bad:#e08a80;--hero:linear-gradient(135deg,#04162f,#241c58);--shadow:0 1px 2px rgba(0,0,0,0.35),0 20px 40px -20px rgba(0,0,0,0.55)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}.mono{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.brand-mark{font-family:var(--font-head);font-weight:650}.brand-mark em{font-style:normal;font-weight:700}.accent,.em-accent{color:var(--accent)}.em-accent{font-style:normal;font-weight:700}.btn-primary{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.82rem;letter-spacing:.04em;color:var(--accent-ink);background:var(--accent);border:none;font-weight:600;border-radius:10px;padding:12px 18px;cursor:pointer;transition:filter .15s ease}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:disabled{opacity:.55;cursor:default}.btn-primary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.field input{font-family:var(--font-body);font-size:.98rem;color:var(--ink);background:var(--blue-soft);border:1px solid var(--rule);border-radius:8px;padding:11px 13px;width:100%}.field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.error-note{font-size:.84rem;color:var(--bad);margin:-6px 0 16px;line-height:1.5}.signin-page{min-height:100dvh;background:var(--paper)}.signin-hero{position:relative;overflow:hidden;background:var(--hero);color:#ffffff;text-align:center;padding:68px 24px 112px}.signin-hero .citation-mark{position:absolute;font-family:IBM Plex Mono,ui-monospace,monospace;color:#ffffff;opacity:.09;white-space:nowrap;pointer-events:none;transform:rotate(-6deg)}.signin-hero .c1{top:22px;left:4%;font-size:.85rem}.signin-hero .c2{bottom:74px;right:3%;font-size:1rem}.signin-hero .c3{bottom:24px;left:9%;font-size:.78rem}.signin-brand{position:relative;margin:0 0 16px;font-family:var(--font-head);font-weight:600;font-size:clamp(2.1rem,7vw,3.1rem);letter-spacing:-.015em;line-height:1.1}.signin-line{position:relative;margin:0;font-size:clamp(1rem,2.6vw,1.2rem);line-height:1.5}.signin-line.first{font-weight:600}.signin-line.second{color:var(--navy-ink-soft)}.signin-body{position:relative;max-width:424px;margin:-68px auto 0;padding:0 24px 56px}.signin-card{background:var(--paper-raised);border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow);padding:30px}.signin-foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--rule);text-align:center;display:flex;flex-direction:column;gap:6px}.signin-foot .invite{font-size:.8rem;color:var(--ink-soft)}.signin-foot .disclaimer{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;letter-spacing:.02em;color:var(--ink-faint)}.appbar{background:var(--navy);color:var(--navy-ink);display:flex;align-items:center;justify-content:space-between;padding:14px 22px;position:-webkit-sticky;position:sticky;top:0;z-index:5}.appbar .mark{font-family:var(--font-head);font-weight:650;font-size:1.02rem;white-space:nowrap}.appbar .who{gap:10px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.72rem;color:var(--navy-ink-soft)}.appbar .who,.appbar .who .dot{display:flex;align-items:center}.appbar .who .dot{width:22px;height:22px;border-radius:50%;background:var(--navy-mid);color:var(--navy-ink);justify-content:center;font-size:.66rem;font-weight:700;flex:none}.appbar .who button{background:none;border:none;padding:0;color:var(--navy-ink-soft);text-decoration:underline;text-underline-offset:2px;cursor:pointer;font:inherit}.appbar .usage{font-size:.68rem;color:var(--navy-ink-soft);opacity:.85}.hero{background:var(--hero);color:var(--navy-ink);padding:34px 20px 40px}.hero-inner{max-width:720px;margin:0 auto}.hero h1{margin:0 0 12px;font-family:var(--font-head);font-weight:600;font-size:clamp(1.45rem,3.6vw,2.05rem);line-height:1.22;letter-spacing:-.01em;color:#ffffff}.hero p{margin:0;max-width:62ch;font-size:1.02rem;line-height:1.55;color:var(--navy-ink-soft)}main.shell{max-width:720px;margin:0 auto;padding:28px 20px 64px;display:flex;flex-direction:column;gap:22px}.card{background:var(--paper-raised);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.askbar{padding:20px 22px}.askbar form{display:flex;flex-direction:column;gap:12px}.askbar textarea{width:100%;resize:vertical;min-height:64px;font-family:var(--font-body);font-size:.98rem;color:var(--ink);background:var(--blue-soft);border:1px solid var(--rule);border-radius:10px;padding:12px 14px;line-height:1.5}.askbar textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.askbar .row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.askbar .toggle-inline{display:flex;align-items:center;gap:8px;font-size:.68rem;color:var(--ink-faint)}.askbar .go,.askbar .toggle-inline{font-family:IBM Plex Mono,ui-monospace,monospace}.askbar .go{font-size:.74rem;letter-spacing:.04em}.answer-card{padding:4px 0 0}.answer{padding:20px 22px 6px}.answer .q{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.68rem;letter-spacing:.03em;color:var(--ink-faint);text-transform:uppercase;margin:0 0 12px}.answer p{margin:0 0 14px;font-size:.97rem;line-height:1.62;color:var(--ink);white-space:pre-wrap}.answer p:last-child{margin-bottom:0}.cite{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:1px 4px;margin-left:1px;white-space:nowrap}.sources{padding:14px 22px 20px;border-top:1px solid var(--rule);margin-top:8px}.sources .tag{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);display:block;margin-bottom:10px}.source-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--rule)}.source-row:last-child{border-bottom:none}.source-row a.name{font-size:.86rem;color:var(--ink);text-decoration:none}.source-row a.name:hover{text-decoration:underline}.source-row .num{color:var(--accent);margin-right:6px;font-size:.78rem}.source-row .juris,.source-row .num{font-family:IBM Plex Mono,ui-monospace,monospace}.source-row .juris{flex:none;font-size:.64rem;color:var(--navy-mid);white-space:nowrap}.phrasings{padding:0 22px 18px}.phrasings summary{cursor:pointer;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint)}.phrasings ul{margin:10px 0 0;padding-left:18px;font-size:.84rem;color:var(--ink-soft);line-height:1.6}.compare{padding:14px 22px 20px;border-top:1px solid var(--rule)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;background:none;border:none;width:100%;text-align:left;padding:0}.toggle-row .label{font-size:.85rem;color:var(--ink)}.toggle-row .label small{display:block;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;color:var(--ink-faint);margin-top:2px}.switch{flex:none;width:38px;height:22px;border-radius:999px;background:var(--rule);position:relative;transition:background .15s ease}.switch.on{background:var(--navy-mid)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--paper-raised);transition:left .15s ease}.switch.on:after{left:19px}.compare-panel{margin-top:14px;border:1px solid var(--rule);border-radius:10px;overflow:hidden}.compare-panel .ph{background:var(--blue-soft);padding:9px 13px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.64rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft)}.rank-row{display:flex;align-items:center;gap:10px;padding:8px 13px;border-top:1px solid var(--rule);font-size:.82rem}.rank-row .r{flex:none;width:1.4em;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.74rem;color:var(--ink-faint)}.rank-row .c{flex:1 1;color:var(--ink-soft)}.rank-row .s{flex:none;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.72rem;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank-row.hit{background:var(--accent-soft)}.rank-row.hit .r,.rank-row.hit .s{color:var(--accent)}.rank-row.hit .c{color:var(--ink);font-weight:600}.rank-row .tagged{flex:none;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.6rem;letter-spacing:.03em;text-transform:uppercase;color:var(--accent)}.compare-note{margin:12px 0 0;font-size:.8rem;line-height:1.5}.compare-note,.hint{color:var(--ink-soft)}.hint{padding:18px 22px;font-size:.88rem;line-height:1.55}.hint .eg{margin-top:10px;display:flex;flex-direction:column;gap:6px}.hint .eg button{text-align:left;background:var(--blue-soft);border:1px solid var(--rule);border-radius:8px;padding:9px 13px;font-family:var(--font-body);font-size:.83rem;color:var(--ink);cursor:pointer}.hint .eg button:hover{filter:brightness(.98)}.loading-row{padding:22px;font-size:.78rem}.app-foot,.loading-row{font-family:IBM Plex Mono,ui-monospace,monospace;color:var(--ink-faint);text-align:center}.app-foot{font-size:.64rem;padding-top:6px}.fs-badge{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px;text-align:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.68rem;letter-spacing:.02em;color:var(--ink-faint)}.fs-badge p{margin:0}.fs-badge img{height:54px;width:auto;display:block}.fs-badge a{color:var(--accent-text);text-decoration:underline;text-underline-offset:3px}.fs-badge a.logo-link{text-decoration:none;line-height:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .fs-badge img{filter:brightness(0) invert(1) opacity(.92)}}:root[data-theme=dark] .fs-badge img{filter:brightness(0) invert(1) opacity(.92)}@media (max-width:460px){main.shell{padding:20px 14px 48px}.appbar{padding:12px 16px}}@media (prefers-reduced-motion:reduce){.btn-primary,.switch,.switch:after{transition:none}}.tier-block{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.tiers{display:inline-flex;gap:4px;padding:4px;background:var(--blue-soft);border:1px solid var(--rule);border-radius:999px}.tier-btn{padding:7px 18px;border:none;border-radius:999px;background:transparent;color:var(--ink-soft);font-family:var(--font-head);font-size:.92rem;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease}.tier-btn:hover:not(:disabled):not(.on){background:var(--paper-raised);color:var(--ink)}.tier-btn small{margin-left:6px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.56rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint)}.tier-btn.on{background:var(--navy);color:#ffffff;font-weight:600;box-shadow:inset 0 -3px 0 var(--lime)}.tier-btn:disabled{opacity:.6;cursor:not-allowed}.tier-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tier-blurb{margin:0 2px;font-size:.9rem;line-height:1.5;color:var(--ink-soft)}.free-results{padding:4px 22px 8px}.free-result{padding:14px 0;border-top:1px solid var(--rule)}.free-result .name{font-weight:600;color:var(--navy-mid);text-decoration:none}.free-result .juris{margin-left:10px;font-size:.78rem;color:var(--ink-faint)}.free-result .excerpt{margin:6px 0 0;font-size:.92rem;line-height:1.55;color:var(--ink)}.free-result mark{background:var(--accent-soft);color:inherit;border-radius:3px;padding:0 2px}.upsell{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 22px 14px;padding:14px 16px;background:var(--blue-soft);border-radius:10px}.upsell .mono{font-size:.66rem;color:var(--ink-soft)}.cite,.rank-row .tagged,.rank-row.hit .r,.rank-row.hit .s,.source-row .num{color:var(--accent-text)}.brand-mark em{color:var(--accent)}.signin-body .fs-badge{margin-top:34px}.chat-wrap[hidden]{display:none}.chat{display:flex;flex-direction:column;gap:14px}.msg-user{align-self:flex-end;max-width:85%;padding:11px 16px;background:var(--navy);color:#ffffff;border-radius:18px 18px 4px 18px;font-size:.95rem;line-height:1.5;white-space:pre-wrap}.msg-bot .sources{margin-top:4px}.chips{display:flex;flex-wrap:wrap;gap:8px;padding:4px 22px 18px}.chip{padding:7px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--blue-soft);color:var(--ink);font-size:.86rem;text-align:left;cursor:pointer}.chip:hover{border-color:var(--accent)}.chat-notice{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 20px;font-size:.9rem;color:var(--ink-soft)}.chat-notice.error{color:var(--bad)}.chat-notice button,.link-btn{background:none;border:none;padding:0;color:var(--accent-text);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:.85rem}.link-btn:disabled{opacity:.5;cursor:default}.chat-form{display:flex;flex-direction:column;gap:12px}.chat-form textarea{width:100%;resize:vertical;min-height:64px;font-family:var(--font-body);font-size:.98rem;color:var(--ink);background:var(--blue-soft);border:1px solid var(--rule);border-radius:10px;padding:12px 14px;line-height:1.5}.chat-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chat-form .row{justify-content:space-between;gap:12px;flex-wrap:wrap}.chat-actions,.chat-form .row{display:flex;align-items:center}.chat-actions{gap:16px}.lang-switch{display:inline-flex;border:1px solid rgba(180,204,230,.45);border-radius:999px;overflow:hidden;flex:none}.appbar .who .lang-switch button,.lang-switch button{background:transparent;border:none;padding:3px 9px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;font-weight:600;letter-spacing:.04em;color:var(--navy-ink-soft);text-decoration:none;cursor:pointer}.appbar .who .lang-switch button.on,.lang-switch button.on{background:var(--accent);color:var(--accent-ink)}.lang-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.signin-hero .signin-lang{position:absolute;top:16px;right:18px;z-index:2}