:root {
  --ink:#17243b; --muted:#69758a; --paper:#f6f8fc; --surface:#fff; --surface-soft:#f3f5f9;
  --line:#dde3ee; --accent:#7c3aed; --accent-hover:#6d28d9; --accent-soft:#ede9fe; --accent-ring:#7c3aed1f;
  --navy:#10213e; --mint:#62d8b6; --danger:#b42318; --danger-line:#f3c5c1;
  --hero-start:#10213e; --hero-end:#293f6c; --hero-copy:#d7deeb; --hero-muted:#c8d3e8;
  --field:#fbfcfe; --field-line:#cfd6e2; --callout:#f1fbf8; --config:#f7f8fb;
  --secret:#101b31; --secret-ink:#dfe8f7; --shadow:0 18px 60px rgba(26,38,70,.09);
}
:root[data-theme="dark"] {
  --ink:#f4f1ff; --muted:#aaa4bb; --paper:#0d0a16; --surface:#171321; --surface-soft:#211b2e;
  --line:#332b43; --accent:#a78bfa; --accent-hover:#c4b5fd; --accent-soft:#2c2044; --accent-ring:#a78bfa33;
  --navy:#f4f1ff; --mint:#71dfc0; --danger:#ff8b86; --danger-line:#633336;
  --hero-start:#1a102d; --hero-end:#35205b; --hero-copy:#ded7eb; --hero-muted:#cfc4df;
  --field:#110e19; --field-line:#40364f; --callout:#112822; --config:#120f1b;
  --secret:#090713; --secret-ink:#e7e0f5; --shadow:0 18px 60px rgba(0,0,0,.28);
}
@media (prefers-color-scheme:dark) {
  :root[data-theme="system"] {
    --ink:#f4f1ff; --muted:#aaa4bb; --paper:#0d0a16; --surface:#171321; --surface-soft:#211b2e;
    --line:#332b43; --accent:#a78bfa; --accent-hover:#c4b5fd; --accent-soft:#2c2044; --accent-ring:#a78bfa33;
    --navy:#f4f1ff; --mint:#71dfc0; --danger:#ff8b86; --danger-line:#633336;
    --hero-start:#1a102d; --hero-end:#35205b; --hero-copy:#ded7eb; --hero-muted:#cfc4df;
    --field:#110e19; --field-line:#40364f; --callout:#112822; --config:#120f1b;
    --secret:#090713; --secret-ink:#e7e0f5; --shadow:0 18px 60px rgba(0,0,0,.28);
  }
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;min-height:100vh;transition:background .2s,color .2s}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.header{min-height:76px;display:flex;align-items:center;gap:24px}
.wordmark{font:700 26px Manrope,sans-serif;letter-spacing:-1.5px;color:var(--navy);text-decoration:none;white-space:nowrap}.wordmark span{color:var(--accent)}
nav{display:flex;gap:8px;margin-right:auto}nav button,.link-button{border:0;background:transparent;color:var(--muted);font:600 14px inherit;padding:10px 12px;border-radius:10px;cursor:pointer}nav button.active,nav button:hover{background:var(--surface);color:var(--ink)}
.settings-action{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--muted);cursor:pointer}.settings-action:hover{color:var(--accent);border-color:var(--accent)}.settings-action svg{width:18px;height:18px;fill:currentColor}
#identity{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:10px}#identity button{margin-left:0}.identity-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.context-label select{width:auto;max-width:220px;padding:8px 30px 8px 10px;background:var(--surface);font-size:12px}
.hero{background:linear-gradient(125deg,var(--hero-start),var(--hero-end));color:#fff;border-radius:28px;padding:44px 48px;display:grid;grid-template-columns:1fr auto;gap:30px;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:320px;height:320px;border:70px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:50%;right:-110px;top:-140px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:11px;color:var(--mint)}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.035em;margin:0}h1{font-size:42px;line-height:1.1;max-width:680px}.hero p{max-width:620px;color:var(--hero-copy);font-size:17px;line-height:1.6}.hero .stat{position:relative;z-index:1;align-self:center;text-align:right}.stat strong{font:700 52px Manrope;display:block}.stat span{color:var(--hero-muted)}
.toolbar{display:flex;align-items:center;justify-content:space-between;margin:34px 0 18px}.toolbar p{color:var(--muted);margin:5px 0 0}
.button,button.button{border:0;border-radius:12px;padding:12px 17px;background:var(--accent);color:#fff;font:700 14px "DM Sans";cursor:pointer;box-shadow:0 7px 20px color-mix(in srgb,var(--accent) 25%,transparent)}.button:hover,button.button:hover{background:var(--accent-hover)}.button.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:none}.button.danger{background:var(--surface);color:var(--danger);border:1px solid var(--danger-line);box-shadow:none}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.card{cursor:pointer;transition:transform .18s,border-color .18s}.card:hover{transform:translateY(-2px);border-color:var(--accent)}.card h3{font-size:19px}.card p{color:var(--muted);font-size:14px}.pill{display:inline-flex;border-radius:999px;padding:5px 9px;background:var(--callout);color:color-mix(in srgb,var(--mint) 55%,var(--ink));font-size:11px;font-weight:700}.providers{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}.providers span{background:var(--surface-soft);padding:5px 8px;border-radius:7px;font-size:11px}.empty{text-align:center;padding:70px 25px;grid-column:1/-1}.empty .icon{font-size:45px}
.setup{max-width:860px;margin:38px auto}.setup-head{text-align:center;margin-bottom:28px}.setup-head h1{font-size:38px;margin-top:10px}.setup-head p{color:var(--muted);line-height:1.6}.steps{display:flex;justify-content:center;gap:8px;margin:20px}.steps span{height:6px;width:56px;border-radius:8px;background:var(--line)}.steps span.done{background:var(--accent)}
form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}label{font-size:13px;font-weight:700}.field-label{position:relative;display:flex;align-items:center;gap:7px}.field-help-trigger{display:grid;place-items:center;width:17px;height:17px;padding:0;border:1px solid var(--field-line);border-radius:50%;background:transparent;color:var(--muted);font:700 11px/1 Georgia,serif;cursor:pointer}.field-help-trigger:hover,.field-help-trigger:focus-visible{border-color:var(--accent);color:var(--accent);outline:3px solid var(--accent-ring)}.field-help-content{position:absolute;z-index:10;top:25px;left:0;width:min(340px,100%);padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink);font-size:12px;font-weight:400;line-height:1.5}.field-help-content[hidden]{display:none}.hint{font-size:12px;color:var(--muted);line-height:1.45}input,textarea,select{width:100%;border:1px solid var(--field-line);border-radius:11px;background:var(--field);color:var(--ink);padding:12px 13px;font:14px "DM Sans";outline:none}textarea{resize:vertical;min-height:84px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.inline-form{grid-template-columns:1fr auto;margin:20px 0}
.check-field{display:flex;align-items:center;gap:9px}.check-field input{width:auto;margin:0;accent-color:var(--accent)}
.callout{border-left:4px solid var(--mint);padding:13px 15px;background:var(--callout);border-radius:8px;font-size:13px;line-height:1.5}.callout code,.secret code{word-break:break-all}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:26px 0 20px}.tabs button{border:0;background:transparent;padding:12px 13px;border-bottom:2px solid transparent;color:var(--muted);font:600 14px inherit;cursor:pointer}.tabs button.active{border-color:var(--accent);color:var(--ink)}
.detail-head{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.detail-head p{color:var(--muted)}.config-list{display:grid;gap:12px}.config-row{padding:13px 15px;background:var(--config);border-radius:10px}.config-row b{font-size:11px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:5px}.config-row code{word-break:break-all;font-size:12px}.provider-card{border:1px solid var(--line);padding:18px;border-radius:14px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.provider-card h3{font-size:16px}
.settings-page{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:32px}.settings-page p{margin-bottom:0}.theme-choice{min-width:190px;margin:0}.theme-choice select{margin-top:7px}
.preview{min-height:360px;border-radius:18px;background:#253451 center/cover;display:grid;place-items:center;padding:30px}.preview-dialog{width:min(390px,100%);padding:34px;border-radius:16px;text-align:center;box-shadow:0 20px 60px #0003}.preview-dialog img{max-height:45px;max-width:180px}.preview-dialog button{display:block;width:100%;padding:12px;margin-top:12px;border:0;border-radius:9px;color:#fff;font-weight:700}
.help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.help-grid p{color:var(--muted);line-height:1.6}.loading{min-height:60vh;display:grid;place-items:center;align-content:center;color:var(--muted)}.spinner{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
#toast{position:fixed;right:24px;bottom:24px;background:var(--navy);color:var(--paper);padding:13px 17px;border-radius:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:none}.secret{background:var(--secret);color:var(--secret-ink);padding:17px;border-radius:12px}.secret strong{color:var(--mint)}
@media(max-width:900px){.header{gap:14px;flex-wrap:wrap;padding:12px 0}.identity-name,.context-label>span{display:none}.context-label select{max-width:170px}}
@media(max-width:800px){.grid,.help-grid,.form-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr;padding:32px}.hero .stat{text-align:left}nav{display:none}.shell{width:min(100% - 24px,1180px)}h1{font-size:34px}.settings-page{align-items:stretch;flex-direction:column}.theme-choice{min-width:0}}
