:root{--bg:#f3f5f9;--panel:#fff;--text:#17283e;--muted:#6c7f95;--line:#dbe3ee;--brand:#2d63e2;--brand-deep:#1d46b5;--mint:#e7fbef;--danger:#c53d33;--shadow:0 18px 40px rgba(16,39,79,.08)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;font-family:SF Pro Display,PingFang SC,Noto Sans SC,sans-serif;color:var(--text);background:linear-gradient(180deg,#f8fafc 0,var(--bg) 100%)}body{min-height:100vh}.page-shell{width:min(760px,calc(100vw - 28px));margin:0 auto;padding:34px 0 72px}.modal-card,.result-card,.simple-panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px}.simple-panel{padding:22px}.brand-bar{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--brand),#4a8cff);color:#fff;font-weight:800;font-size:1.3rem}.brand-copy{display:flex;flex-direction:column;gap:4px}.brand-title{font-size:1rem;font-weight:700}.brand-subtitle{font-size:.9rem;color:var(--muted)}.headline{padding:26px 6px 18px;text-align:center}.headline h1{margin:0;font-size:clamp(2rem,5vw,3rem);letter-spacing:-.04em}.headline p{margin:12px auto 0;max-width:38ch;color:var(--muted);line-height:1.7}.query-form{display:grid;grid-gap:16px;gap:16px}.field{display:flex;flex-direction:column;gap:10px}.field span{font-size:.92rem;font-weight:700}.field input,.field select{height:52px;width:100%;border-radius:16px;border:1px solid var(--line);background:hsla(0,0%,100%,.96);padding:0 16px;font-size:1rem;color:var(--text);outline:none}.field input:focus,.field select:focus{border-color:rgba(31,111,255,.48);box-shadow:0 0 0 4px rgba(31,111,255,.12)}.primary-button,.secondary-button{border:0;border-radius:16px;font-size:1rem;font-weight:700;cursor:pointer}.primary-button{height:52px;background:linear-gradient(135deg,var(--brand),var(--brand-deep));color:#fff}.primary-full{width:100%}.primary-button:disabled{opacity:.65;cursor:wait}.empty-state,.error-box,.warning-box{margin-top:16px;padding:14px 16px;border-radius:16px}.error-box{background:rgba(197,61,51,.08);color:var(--danger)}.warning-box{background:rgba(242,162,43,.1);color:#9a640c}.empty-state{background:rgba(88,112,141,.08);color:var(--muted)}.modal-top,.result-heading,.status-strip{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-strip{margin-top:18px;padding:12px 14px;border-radius:16px;background:#f8fbff;border:1px solid var(--line);color:var(--muted);font-size:.9rem;flex-wrap:wrap}.result-card{margin-top:18px;padding:18px}.result-heading{color:var(--muted);font-size:.88rem}.source-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(31,111,255,.1);color:var(--brand-deep);font-weight:700}.modal-code,.result-code{margin:18px 0 12px;padding:20px 16px;border-radius:22px;background:var(--mint);text-align:center;font-size:clamp(2.2rem,8vw,4rem);font-weight:800;letter-spacing:.22em}.result-actions{display:flex;gap:12px}.history-item,.modal-close,.secondary-button{background:#fff;border:1px solid var(--line);color:var(--text)}.secondary-button{height:52px;padding:0 20px}.history-block{margin-top:22px}.history-title{margin-bottom:12px;font-size:.95rem;font-weight:700;color:var(--muted)}.history-list{display:grid;grid-gap:12px;gap:12px}.history-item{width:100%;display:grid;grid-template-columns:80px 1fr auto;align-items:center;height:54px;padding:0 14px;border-radius:16px;cursor:pointer;text-align:left}.history-item.active{border-color:rgba(31,111,255,.42);box-shadow:0 0 0 4px rgba(31,111,255,.08)}.history-item strong{font-size:1.2rem;letter-spacing:.12em}.excerpt{margin:14px 0 0;color:var(--muted);line-height:1.65}.modal-backdrop{position:fixed;inset:0;background:rgba(9,20,39,.38);display:grid;place-items:center;padding:20px}.modal-card{width:min(560px,100%);padding:20px}.modal-close{height:40px;padding:0 14px;border-radius:12px;cursor:pointer}.modal-meta{color:var(--muted);line-height:1.7}@media (max-width:900px){.page-shell{width:min(100vw - 20px,1160px);padding-top:18px}.result-actions,.status-strip{flex-direction:column;align-items:stretch}.history-item{grid-template-columns:1fr;height:auto;padding:14px}}