*,:before,:after{box-sizing:border-box;margin:0;padding:0;border-radius:0!important}:root{--accent:#0891b2;--accent-soft:#06b6d4;--accent-tint:#ecfeff;--bg:#fafaf7;--bg-card:#fff;--border:1px solid #d4d4d4;--border-soft:1px solid #e5e5e5;--border-strong:1px solid #262626;--fg:#1a1a1a;--font-mono:ui-monospace, "SFMono-Regular", menlo, consolas, monospace;--font-sans:-apple-system, blinkmacsystemfont, "Segoe UI", helvetica, arial, sans-serif;--muted:#737373}html,body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);height:100%;font-size:15px;line-height:1.5}body{flex-direction:column;min-height:100dvh;display:flex}main{flex-direction:column;flex:1;display:flex}button{background:var(--accent);border:1px solid var(--accent);color:#fff;cursor:pointer;font:inherit;letter-spacing:0;text-transform:none;padding:9px 22px;font-weight:500;transition:background .12s}button:hover{background:var(--accent-soft);border-color:var(--accent-soft)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.outlined{border:var(--border);color:var(--fg);background:0 0}button.outlined:hover{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}button:disabled{background:var(--muted);border-color:var(--muted);color:#fff;cursor:not-allowed;opacity:1}input[type=text],textarea{background:var(--bg-card);border:var(--border);color:var(--fg);font:inherit;width:100%;padding:9px 12px}input[type=text]:focus-visible,textarea:focus-visible{border-color:var(--accent);outline:none}a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--accent-soft)}h1,h2,h3{letter-spacing:-.01em;font-weight:600;line-height:1.2}h1{font-size:clamp(22px,3.5vw,32px)}.mono{font-family:var(--font-mono)}.divider{border-top:var(--border)}@keyframes dots-cycle{0%,33%{content:"."}33.01%,66%{content:".."}66.01%,to{content:"..."}}.dots{color:var(--accent);text-align:left;min-width:1.4em;display:inline-block}.dots:after{content:".";animation:1.4s step-end infinite dots-cycle}*{-webkit-tap-highlight-color:transparent}button,input,textarea,a{touch-action:manipulation}button,header,footer,.topbar,.action-row,.confirm-banner,.status,.searching-row{-webkit-user-select:none;user-select:none}@media (hover:none) and (pointer:coarse){input[type=text],textarea,select{font-size:16px}button{min-height:44px}}@media (prefers-reduced-motion:reduce){.dots:after{content:"...";animation:none}*{scroll-behavior:auto!important;transition:none!important}}
