:root{color-scheme:light;--ink:#15231c;--muted:#647269;--paper:#f5f1e8;--card:#fffdf7;--green:#18392b;--lime:#d8f26a;--line:#d9ded7;--shadow:0 18px 50px rgba(21,35,28,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);min-height:100dvh}button,input{font:inherit}a{color:inherit}header{height:68px;padding:max(14px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,57,43,.12)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand img{width:30px;height:30px;border-radius:7px}.brand strong{font-family:Georgia,serif;font-size:1.15rem}.status{font-size:.78rem;color:var(--muted);max-width:48%;text-align:right}.status.ready{color:#245d3e}.status.offline{color:#8a4f1d}main{width:min(760px,100%);margin:0 auto;padding:clamp(42px,8vw,86px) 20px 96px}.hero{text-align:center}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.18em;color:#557162;margin:0 0 14px}.hero h1{font:700 clamp(2.15rem,8vw,4.5rem)/.98 Georgia,serif;letter-spacing:-.045em;max-width:650px;margin:0 auto}.hero>p:not(.eyebrow){color:var(--muted);line-height:1.55;max-width:570px;margin:22px auto 30px}form{text-align:left}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.search-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:min(100%,390px);margin:0 0 12px;padding:4px;border:1px solid #d4dad3;border-radius:13px;background:#e6e8e2}.search-tab{min-height:38px;padding:0 14px;border-radius:9px;background:transparent;color:#526159;font-size:.8rem;font-weight:800;box-shadow:none}.search-tab:hover{color:var(--ink);background:rgba(255,255,255,.55)}.search-tab.active{color:white;background:var(--green);box-shadow:0 2px 8px rgba(24,57,43,.18)}.search-tab.active:hover{color:white;background:var(--green)}.search-tab:focus-visible{outline:2px solid #527c67;outline-offset:3px}.searchbox{display:flex;background:white;border:1px solid #cbd4cd;border-radius:16px;padding:6px;box-shadow:var(--shadow);transition:.2s}.searchbox:focus-within{border-color:#527c67;box-shadow:0 0 0 4px rgba(82,124,103,.15),var(--shadow)}.input-wrap{display:flex;align-items:center;min-width:0;flex:1}input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:14px 8px 14px 12px;font-size:1rem;color:var(--ink)}input[type=search]::-webkit-search-cancel-button{display:none}.clear-search{flex:0 0 42px;width:42px;min-height:42px;padding:0;border-radius:50%;background:transparent;color:var(--muted);font-size:1.65rem;font-weight:400;line-height:1}.clear-search:hover{background:#eef0eb;color:var(--ink)}.clear-search[hidden]{display:none}button{border:0;border-radius:11px;background:var(--green);color:white;font-weight:750;padding:0 20px;cursor:pointer;min-height:46px}button:active{transform:translateY(1px)}.pattern-help{margin:9px 5px 0;color:var(--muted);font-size:.78rem;line-height:1.45}.pattern-help code{padding:1px 4px;border-radius:4px;background:#e7ebe5;color:var(--green);font-weight:800}.progress{margin:18px 4px 0;text-align:left;font-size:.77rem;color:var(--muted)}.progress>div{display:flex;justify-content:space-between;margin-bottom:7px}progress{width:100%;height:6px;border:0;border-radius:9px;overflow:hidden}progress::-webkit-progress-bar{background:#dfe4dd}progress::-webkit-progress-value{background:var(--green)}.results-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-top:44px;border-bottom:1px solid var(--line)}.results-head h2{font:700 1.35rem Georgia,serif}.results-head span{flex:0 0 auto;color:var(--muted);font-size:.82rem}.results{list-style:none;padding:0;margin:0}.result{border-bottom:1px solid var(--line)}.result a{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:19px 3px;text-decoration:none}.result a:hover .clue{text-decoration:underline}.clue{line-height:1.35}.answer{grid-column:2;grid-row:1/3;align-self:center;background:var(--lime);border-radius:8px;padding:7px 9px;font-weight:850;letter-spacing:.035em}.source-id{color:var(--muted);font-size:.72rem}.empty{padding:42px 0;text-align:center;color:var(--muted)}.clue-page{background:var(--card);margin:44px 0 0;padding:clamp(24px,6vw,46px);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);text-align:left}.clue-page h2{font:700 clamp(1.7rem,6vw,2.8rem)/1.13 Georgia,serif;margin:0 0 34px}.answer-label{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.answers{list-style:none;padding:0;margin:8px 0 0;display:flex;gap:9px;flex-wrap:wrap}.answers li{background:var(--lime);padding:10px 13px;border-radius:9px;font-weight:900;letter-spacing:.05em}footer{position:fixed;bottom:0;left:0;right:0;min-height:54px;padding:8px max(16px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:center;gap:18px;background:rgba(245,241,232,.92);backdrop-filter:blur(14px);border-top:1px solid rgba(24,57,43,.12);font-size:.75rem;color:var(--muted)}footer button{background:transparent;color:var(--green);min-height:auto;padding:7px;font-size:.75rem}
@media(max-width:520px){header{height:62px}.brand strong{display:none}main{padding-top:36px}.hero>p:not(.eyebrow){font-size:.92rem;margin:18px auto 24px}.searchbox{display:grid;grid-template-columns:1fr}.searchbox>button[type=submit]{width:100%}.result a{grid-template-columns:minmax(0,1fr) auto}.answer{max-width:42vw;overflow-wrap:anywhere}.clue-page{margin-top:30px}}
.hero.searching>.eyebrow,.hero.searching>h1,.hero.searching>p:not(.eyebrow){display:none}.hero.searching~#results-section .results-head{margin-top:24px}
@media(max-width:520px){main:has(.hero.searching){padding-top:18px}.hero.searching~#results-section .results-head{margin-top:18px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
