:root { color-scheme: light; --ink:#13251f; --muted:#66736e; --paper:#f5f7f2; --line:#dce2dc; --green:#0b6b4f; --lime:#cfe96f; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 85% 8%,#e5efcf 0,transparent 28%),var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.shell { width:min(1080px,calc(100% - 40px)); margin:0 auto; padding-bottom:72px; }
.topbar { height:84px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; gap:11px; align-items:center; font-weight:750; letter-spacing:-.02em; }
.mark { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:var(--ink); color:var(--lime); }
.status { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:13px; }
.top-actions,.user-menu { display:flex; align-items:center; gap:14px; }
.user-menu { padding-left:14px; border-left:1px solid var(--line); color:var(--ink); font-size:13px; font-weight:650; }
.user-menu img { width:30px; height:30px; border-radius:50%; object-fit:cover; }
.user-menu button { border:0; background:transparent; color:var(--green); font-weight:750; cursor:pointer; }
.dot { width:8px; height:8px; background:#25a66f; border-radius:50%; box-shadow:0 0 0 4px #25a66f1c; }
.hero { padding:74px 0 40px; max-width:850px; }
.eyebrow { margin:0 0 18px; color:var(--green); font-size:12px; font-weight:800; letter-spacing:.14em; }
h1 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(48px,8vw,86px); line-height:.94; letter-spacing:-.055em; font-weight:500; }
h1 span { color:var(--green); }
.intro { max-width:620px; margin:26px 0 0; color:var(--muted); font-size:18px; line-height:1.6; }
.ask-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:22px; box-shadow:0 24px 70px #1931270b; }
.ask-card>label { display:block; margin-bottom:10px; font-size:13px; font-weight:750; }
.composer { display:flex; align-items:flex-end; gap:14px; }
textarea { flex:1; border:0; outline:0; resize:vertical; min-height:64px; padding:10px 2px; color:var(--ink); font:500 19px/1.45 inherit; }
textarea::placeholder { color:#9aa49f; }
#askButton { border:0; border-radius:12px; padding:15px 20px; background:var(--ink); color:#fff; font-weight:750; cursor:pointer; white-space:nowrap; }
#askButton:hover { background:var(--green); }
#askButton:disabled { opacity:.5; cursor:wait; }
.login-card { max-width:680px; padding:32px; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 24px 70px #1931270b; }
.login-card h2 { margin:0; font:500 30px/1.2 Georgia,serif; }
.login-card>p:not(.eyebrow):not(.auth-error) { color:var(--muted); line-height:1.6; }
.google-login { display:inline-flex; align-items:center; gap:12px; margin-top:10px; padding:13px 18px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); font-weight:750; text-decoration:none; }
.google-login:hover { border-color:#98b7a9; background:#f9fbf7; }
.google-login span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#4285f4; color:#fff; }
.auth-error { color:#a33333; }
.suggestions { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin:14px 0 40px; }
.suggestion { text-align:left; padding:14px 16px; border:1px solid var(--line); background:transparent; color:#40514a; border-radius:12px; cursor:pointer; }
.suggestion:hover { border-color:#98b7a9; background:#fff; }
.result { padding:26px; background:#10281f; color:#fff; border-radius:18px; }
.result-head { display:flex; justify-content:space-between; align-items:center; }
.result-head p { margin:0; color:var(--lime); font-size:11px; letter-spacing:.13em; font-weight:800; }
.result-head button { border:0; background:transparent; color:#a8bbb3; cursor:pointer; }
.result h2 { margin:12px 0 22px; font:500 25px/1.35 Georgia,serif; }
.records { display:grid; gap:10px; overflow:auto; }
.record { padding:14px; border:1px solid #ffffff1b; border-radius:10px; background:#ffffff08; font-size:13px; line-height:1.5; }
.record dl { display:grid; grid-template-columns:150px 1fr; gap:5px 12px; margin:0; }
.record dt { color:#9fb3aa; }
.record dd { margin:0; overflow-wrap:anywhere; }
.download { margin-top:14px; border:1px solid #cfe96f66; border-radius:8px; padding:9px 12px; background:var(--lime); color:var(--ink); font-weight:750; cursor:pointer; }
.download:disabled { opacity:.55; cursor:wait; }
.empty { color:#b8c8c1; }
@media (max-width:700px) { .shell{width:min(100% - 24px,1080px)} .topbar{height:auto;min-height:68px;gap:12px;padding:12px 0}.top-actions{align-items:flex-end;flex-direction:column;gap:8px}.status{display:none}.user-menu{border:0;padding:0}.user-menu span{display:none} .hero{padding:48px 0 30px} .composer{display:block} #askButton{width:100%;margin-top:10px} .suggestions{grid-template-columns:1fr} .record dl{grid-template-columns:1fr} }
