:root{--bg:#f3efe8;--surface:rgba(255,251,245,.94);--surface-strong:hsla(34,54%,95%,.98);--line:rgba(56,42,30,.12);--text:#23180f;--muted:#6d6056;--brand:#0f6d5a;--brand-strong:#0c5647;--danger:#9a4a3f;--shadow:0 16px 40px rgba(58,42,30,.08);--radius-xl:20px;--radius-lg:16px;--radius-md:12px}*{box-sizing:border-box}#__nuxt,body,html{min-height:100%}body{background:radial-gradient(circle at top left,rgba(15,109,90,.08),transparent 26%),linear-gradient(145deg,#f6f1e9,#f2ede4 56%,#f7f4ee);color:var(--text);font-family:Manrope,Segoe UI,sans-serif;margin:0}a{color:inherit}button,input{font:inherit}.shell{min-height:100vh;padding:16px}.hero-grid{align-items:stretch;gap:18px;grid-template-columns:minmax(0,1.1fr) minmax(300px,440px);max-width:1040px}.hero-grid,.login-grid{display:grid;margin:0 auto}.login-grid{max-width:440px}.panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow);overflow:hidden;position:relative}.panel:before{background:linear-gradient(135deg,hsla(0,0%,100%,.34),transparent 44%);content:"";inset:0;pointer-events:none;position:absolute}.panel-body{padding:20px;position:relative;z-index:1}.eyebrow{align-items:center;background:transparent;border-radius:999px;color:var(--muted);display:inline-flex;font-size:12px;font-weight:700;gap:8px;letter-spacing:.04em;padding:7px 10px;text-transform:uppercase}.headline{font-size:clamp(2rem,4.4vw,3.4rem);letter-spacing:-.04em;line-height:.94;margin:10px 0 4px}.subhead{color:var(--muted);font-size:.98rem;line-height:1.42;max-width:30rem}.feature-list{display:grid;gap:8px;margin-top:12px}.feature-card{background:var(--surface);border:1px solid rgba(56,42,30,.08);border-radius:14px;padding:12px 12px 10px}.feature-card strong{display:block;font-size:.98rem;margin-bottom:4px}.feature-card span{color:var(--muted);line-height:1.42}.auth-card{align-self:center;background:var(--surface)}.stack{display:grid;gap:10px}.stack-tight{gap:8px}.label{display:grid;font-weight:700;gap:6px}.input{background:#ffffffe6;border:1px solid rgba(56,42,30,.14);border-radius:var(--radius-md);color:var(--text);min-height:42px;padding:10px 12px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease;width:100%}.input:focus{border-color:#0f6d5a73;box-shadow:0 0 0 3px #0f6d5a1a;outline:none;transform:translateY(-1px)}.hint{font-size:.88rem}.hint,.login-note{color:var(--muted);line-height:1.36}.login-hint,.login-note{margin:0}.login-actions{justify-content:flex-start}.login-actions-bottom{margin-top:8px}.actions{display:flex;flex-wrap:wrap;gap:8px}.actions,.button{align-items:center}.button{border:0;border-radius:999px;cursor:pointer;display:inline-flex;justify-content:center;min-height:40px;padding:0 14px;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.72;transform:none}.button-primary{background:linear-gradient(135deg,#169374,var(--brand-strong));box-shadow:0 10px 18px #0f6d5a47;color:#f8faf8}.button-secondary{background:#0f6d5a14;border:1px solid rgba(56,42,30,.14);box-shadow:0 8px 16px #3a2a1e14;color:var(--text)}.button-secondary:hover:not(:disabled){background:#0f6d5a1c}.summary-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px}.summary-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card-compact{padding:10px}.error-box{border:1px solid rgba(154,74,63,.18);border-radius:var(--radius-md);color:var(--danger)}.error-box,.status-box{background:var(--surface);line-height:1.55;padding:12px 14px}.status-box{border-radius:var(--radius-md);margin-top:12px}.status-box-success{border:1px solid rgba(15,109,90,.2);color:var(--brand-strong)}.status-box-error{border:1px solid rgba(154,74,63,.18);color:var(--danger)}.status-box-info{border:1px solid rgba(56,42,30,.12);color:var(--text)}.reconnect-banner{display:grid;gap:4px}.reconnect-banner strong{font-size:1rem}.dashboard-grid{display:grid;gap:12px;margin:0 auto;max-width:1040px}.dashboard-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.dashboard-cards{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px}.metric-card small{color:var(--muted);display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.metric-card strong{display:block;font-size:1.03rem;line-height:1.2}.limits-card,.upstream-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px}.upstream-card p{color:var(--muted);line-height:1.42;margin:6px 0 0}.upstream-details{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.cli-login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);margin-top:10px;padding:12px}.cli-login-card small{color:var(--muted);display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.cli-login-card strong{display:block;font-size:.98rem;line-height:1.2}.cli-command{background:#ffffffc7;border:1px solid rgba(56,42,30,.12);border-radius:var(--radius-md);color:var(--text);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.88rem;line-height:1.38;margin:10px 0 12px;overflow-x:auto;padding:10px 12px;white-space:pre-wrap;word-break:break-word}.limit-progress{background:#0f6d5a1f;border-radius:999px;height:8px;margin:8px 0 4px;overflow:hidden;width:100%}.limit-progress-fill{background:linear-gradient(90deg,var(--brand),var(--brand-strong));border-radius:999px;display:block;height:100%;min-width:2px;transition:width .22s ease}.limits-card p{color:var(--muted);line-height:1.42;margin:6px 0 0}.loading-state{color:var(--muted);display:grid;min-height:100vh;place-items:center}@media(max-width:980px){.hero-grid,.summary-grid,.upstream-details{grid-template-columns:1fr}.dashboard-header{flex-direction:column}}@media(max-width:640px){.shell{padding:12px}.panel-body{padding:18px}.headline{font-size:2.1rem}}
