:root{--background: #faf9f5;--surface: #ffffff;--surface-muted: #f0eee7;--border: #e4e1d8;--border-soft: #edeae2;--text: #1f1e1d;--text-muted: #6b6a63;--text-faint: #93918a;--accent: #b8563a;--alert: #9a3d1f;--alert-background: #9a3d1f0f;--shadow: 0 1px 2px rgba(31, 30, 29, .04), 0 8px 24px rgba(31, 30, 29, .04);--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--serif: ui-serif, "Iowan Old Style", Charter, Palatino, Georgia, serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--width: 720px;--radius: 16px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--background: #262624;--surface: #30302e;--surface-muted: #353532;--border: #403f3b;--border-soft: #353532;--text: #f0eee7;--text-muted: #a6a49c;--text-faint: #7e7c75;--accent: #d97757;--alert: #e2845f;--alert-background: #e2845f14;--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 8px 24px rgba(0, 0, 0, .2)}}:root[data-theme=dark]{--background: #262624;--surface: #30302e;--surface-muted: #353532;--border: #403f3b;--border-soft: #353532;--text: #f0eee7;--text-muted: #a6a49c;--text-faint: #7e7c75;--accent: #d97757;--alert: #e2845f;--alert-background: #e2845f14;--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 8px 24px rgba(0, 0, 0, .2)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--background);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.app{display:flex;flex-direction:column;height:100dvh}.turnstile{position:absolute;width:0;height:0;overflow:hidden}.bar{display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:12px 16px;flex:none}.bar button{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;font-size:13.5px;color:var(--text-muted)}.bar button:hover,.close:hover,.signout-button:hover{background:var(--surface-muted);color:var(--text)}.center{flex:1;min-height:0;display:flex;flex-direction:column}.empty{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 20px 10vh;gap:28px}.empty h1{font-family:var(--serif);font-size:clamp(28px,5.5vw,42px);font-weight:400;letter-spacing:-.02em;margin:0;text-align:center;text-wrap:balance}.suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;max-width:var(--width)}.suggestions button,.message-cta button{font:inherit;font-size:14px;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:7px 14px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.suggestions button:hover,.message-cta button:hover{color:var(--text);border-color:var(--text-faint)}.thread{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable}.thread-inner{max-width:var(--width);margin:0 auto;padding:8px 20px 32px;display:flex;flex-direction:column;gap:28px}.footer{flex:none;max-width:var(--width);width:100%;margin:0 auto;padding:0 20px 16px}.message-user{align-self:flex-end;max-width:85%;background:var(--surface-muted);border-radius:var(--radius);padding:12px 16px;white-space:pre-wrap;overflow-wrap:anywhere}.message-agent{overflow-wrap:anywhere}.message-agent>:first-child{margin-top:0}.message-agent>:last-child{margin-bottom:0}.message-agent h1,.message-agent h2,.message-agent h3{font-size:1.05em;font-weight:650;letter-spacing:-.01em;margin:1.6em 0 .5em}.message-agent p,.message-agent ul,.message-agent ol{margin:0 0 1em}.message-agent li{margin-bottom:.35em}.message-agent a,.sheet a{color:var(--accent);text-underline-offset:2px}.message-agent code{font-family:var(--mono);font-size:.86em;background:var(--surface-muted);border:1px solid var(--border-soft);border-radius:4px;padding:1px 5px}.message-agent pre{background:var(--surface-muted);border:1px solid var(--border-soft);border-radius:8px;padding:12px 14px;overflow-x:auto}.message-agent pre code{background:none;border:none;padding:0}.message-agent table,.admin-table{border-collapse:collapse;width:100%;font-size:14px;display:block;overflow-x:auto}.message-agent th,.message-agent td,.admin-table th,.admin-table td{border-bottom:1px solid var(--border-soft);padding:8px 12px;text-align:left}.message-blocked{border-left:2px solid var(--alert);background:var(--alert-background);border-radius:0 8px 8px 0;padding:12px 16px;color:var(--text-muted)}.reason{display:block;margin-top:8px;font-size:13px;color:var(--text-faint)}.message-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;font-size:13.5px}.activity{display:flex;align-items:center;gap:9px;color:var(--text-faint);font-size:14.5px}.activity:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;animation:heartbeat 1.4s ease-in-out infinite}@keyframes heartbeat{0%,to{opacity:.25}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.activity:before{animation:none;opacity:.6}}.composer{display:flex;align-items:flex-end;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 10px 10px 16px;box-shadow:var(--shadow);transition:border-color .15s ease}.composer:focus-within{border-color:var(--text-faint)}.composer textarea{flex:1 1 auto;resize:none;border:none;outline:none;background:none;color:inherit;font:inherit;line-height:1.55;max-height:40vh;overflow-y:auto;padding:6px 0}.composer textarea::placeholder{color:var(--text-faint)}.send{flex:none;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--text);color:var(--background);transition:opacity .15s ease}.send:disabled{opacity:.25;cursor:default}.disclaimer{margin:10px 4px 0;font-size:12px;line-height:1.5;color:var(--text-faint);text-align:center;text-wrap:pretty}.disclaimer .license{display:block;margin-top:3px;opacity:.8}.privacy-chat{margin:6px 4px 0;font-size:11.5px;color:var(--text-faint);text-align:center}.layer{position:fixed;inset:0;z-index:10;background:color-mix(in srgb,var(--background) 88%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);overflow-y:auto;padding:24px 20px 64px}.sheet{position:relative;max-width:640px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px 36px 36px}.sheet h2{font-family:var(--serif);font-size:21px;font-weight:500;letter-spacing:-.01em;margin:28px 0 8px}.sheet h2:first-of-type{margin-top:0}.sheet p{margin:0 0 12px;font-size:15px;line-height:1.65;color:var(--text-muted);text-wrap:pretty}.signin{max-width:430px}.signin h2{margin-top:0}.signin-button{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:9px;background:var(--text);color:var(--background);font-size:14px;transition:opacity .15s ease}.signin-button:hover{opacity:.82}.signin-button:disabled{opacity:.45;cursor:default}.signin-button.secondary{width:auto;flex:none;background:var(--surface-muted);color:var(--text)}.divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--text-faint);font-size:13px}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--border-soft)}.signin label{display:block;margin-bottom:6px;font-size:13px;color:var(--text-muted)}.signin-row{display:flex;gap:8px}.signin-row input{min-width:0;flex:1;border:1px solid var(--border);border-radius:8px;padding:9px 10px;background:var(--surface);color:var(--text);font:inherit;font-size:14px}.confirmation{padding:10px 12px;border-radius:8px;background:var(--surface-muted);color:var(--text)!important;font-size:14px!important}.signin-error{margin-top:14px!important;color:var(--alert)!important;font-size:13px!important}.privacy-signin{margin-top:20px!important;border-top:1px solid var(--border-soft);padding-top:12px;font-size:12px!important;color:var(--text-faint)!important}.account-row{display:flex;gap:8px;margin-top:18px}.account-row .signin-button{flex:1}.signin-button.danger{background:var(--alert)}.signout-button{width:100%;margin-top:12px;padding:8px;border-radius:8px;color:var(--text-muted);font-size:13px}.signout-button:hover{background:var(--surface-muted);color:var(--text)}.close{position:absolute;top:14px;right:16px;width:30px;height:30px;border-radius:8px;color:var(--text-faint);font-size:15px}.definitions{margin:0;font-size:14.5px}.definitions dt{font-weight:600;margin-top:14px}.definitions dd{margin:3px 0 0;color:var(--text-muted);line-height:1.6}.colophon{margin-top:28px;padding-top:14px;border-top:1px solid var(--border-soft);font-size:12.5px;color:var(--text-faint)}@media(max-width:640px){.thread-inner,.footer{padding-left:14px;padding-right:14px}.message-user{max-width:92%}.suggestions{flex-direction:column;align-self:stretch;padding:0 14px}.suggestions button{width:100%;text-align:left}.sheet{padding:28px 20px 32px}}.admin,.page{min-height:100vh;background:var(--background)}.admin-bar,.page-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:16px;padding:12px 28px;background:var(--surface);border-bottom:1px solid var(--border)}.admin-bar h1,.page-bar h1{font-family:var(--serif);font-size:17px;font-weight:500;letter-spacing:-.01em;margin:0;color:var(--text)}.admin-back,.page-back{font:inherit;font-size:13px;padding:5px 10px;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:8px;cursor:pointer}.admin-back:hover,.page-back:hover{color:var(--text);border-color:var(--text-faint)}.admin-window{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted)}.admin-body{max-width:1240px;margin:0 auto;padding:24px 28px 80px}.admin-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;margin:0 0 28px}.admin-figure{display:flex;flex-direction:column;gap:3px;padding:16px 18px;background:var(--surface)}.admin-figure strong{font-family:var(--serif);font-size:26px;font-weight:500;letter-spacing:-.02em;color:var(--text)}.admin-figure-label{font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:var(--text-faint)}.admin-figure-note{font-size:12px;color:var(--text-faint)}.admin h3{font-family:var(--serif);font-size:17px;font-weight:500;margin:32px 0 6px;color:var(--text)}.admin-hint{font-size:13px;line-height:1.55;color:var(--text-faint);margin:0 0 12px;max-width:78ch}.admin-hint code{font-family:var(--mono);font-size:12px}.admin-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 14px}.admin-controls select,.admin-controls input,.admin-window select{font:inherit;font-size:13px;padding:6px 9px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px}.admin-controls input{min-width:240px}.admin-controls .signin-button{width:auto;padding:6px 12px;font-size:13px}.admin-table{font-size:13px;margin:0 0 12px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.admin-table th,.admin-table td{padding:9px 14px;white-space:nowrap;vertical-align:top}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table td.admin-wrap{white-space:normal;min-width:320px}.admin-actions{display:flex;gap:6px}.admin-actions .signin-button{width:auto;padding:4px 9px;font-size:12px}.admin-health{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 24px;margin:0 0 8px}.admin-health div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border-soft);padding:6px 0}.admin-health dt{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.admin-health dd{margin:0;font-size:13px;color:var(--text)}@media(max-width:720px){.admin-bar,.admin-body,.page-bar,.page-body{padding-left:16px;padding-right:16px}.admin-bar h1,.page-bar h1{font-size:15px}}.page-body{max-width:68ch;margin:0 auto;padding:28px 28px 80px}.page-lede{font-size:15px;line-height:1.65;color:var(--text-muted);margin:0 0 8px}.page-body h3{font-family:var(--serif);font-size:17px;font-weight:500;margin:30px 0 6px;color:var(--text)}.page-body p{font-size:14px;line-height:1.7;color:var(--text);margin:0 0 12px}.page-hint{font-size:13px!important;line-height:1.6!important;color:var(--text-faint)!important}.page-body a{color:var(--accent)}.link{font:inherit;color:var(--accent);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.page-footer{margin-top:48px;padding-top:20px;border-top:1px solid var(--border-soft)}.page-links{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 10px}.page-links button{font:inherit;font-size:13px;color:var(--text-muted);background:none;border:none;padding:0;cursor:pointer}.page-links button:hover{color:var(--text)}.page-colophon{font-size:12px!important;color:var(--text-faint)!important;margin:0!important}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:20px 0 8px}.plan{display:flex;flex-direction:column;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.plan h2{font-family:var(--serif);font-size:16px;font-weight:500;margin:0 0 6px;color:var(--text)}.plan-price{font-family:var(--serif);font-size:24px;color:var(--text);margin:0 0 2px!important}.plan-cadence{font-family:var(--sans);font-size:13px;color:var(--text-faint)}.plan-quota{font-size:13px!important;color:var(--accent)!important;margin:0 0 10px!important}.plan-summary{font-size:13px!important;color:var(--text-muted)!important;margin:0 0 10px!important}.plan-highlights{list-style:none;padding:0;margin:0 0 16px;flex:1}.plan-highlights li{font-size:13px;line-height:1.5;color:var(--text-muted);padding-left:14px;position:relative;margin-bottom:5px}.plan-highlights li:before{content:"·";position:absolute;left:4px;color:var(--text-faint)}.plan-note{font-size:13px!important;color:var(--text-faint)!important;margin:0!important;text-align:center}.legal-links{display:flex;justify-content:center;gap:16px;margin:4px 0 0;font-size:12px}.legal-links .link{color:var(--text-faint);text-decoration:none}.legal-links .link:hover{color:var(--text-muted);text-decoration:underline}.plan-quoted{font-size:20px;color:var(--text-muted)}.plan .plan-contact{display:block;text-align:center;text-decoration:none;color:var(--background)}.plan-current{color:var(--accent)!important}
