:root { color-scheme:light; font-family:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#17202a; background:#f6f8fb; font-size:14px; --primary:#0b63ce; --line:#d8dee8; --muted:#5f6878; --surface:#fff; }
* { box-sizing:border-box; letter-spacing:0; }
body { margin:0; min-width:320px; }
button,input,select,textarea { font:inherit; }
a,button,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button,.button { display:inline-flex; align-items:center; justify-content:center; padding:9px 14px; border:1px solid #d8dee8; background:#fff; color:#263749; cursor:pointer; border-radius:7px; line-height:1.4; text-decoration:none; gap:6px; }
button:hover:not(:disabled),.button:hover { background:#f0f5fb; border-color:#a7bfdc; text-decoration:none; }
button:disabled { opacity:.48; cursor:not-allowed; }
button.primary,.button.primary { background:var(--primary); border-color:var(--primary); color:white; }
button.danger { background:#b3261e; border-color:#b3261e; color:white; }
button.quiet { border-color:transparent; background:transparent; }
a { color:var(--primary); text-decoration:none; }
a:hover { text-decoration:underline; }
:focus-visible { outline:2px solid #0b63ce; outline-offset:3px; }
input:not([type="checkbox"]),select,textarea { width:100%; min-width:0; padding:10px 11px; border:1px solid #d8dee8; border-radius:6px; color:#17202a; background:#fff; }
textarea { resize:vertical; line-height:1.7; }
label { display:grid; gap:7px; color:#435266; font-size:13px; min-width:0; }
pre,code { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; }
pre { white-space:pre-wrap; overflow-wrap:anywhere; margin:12px 0; line-height:1.7; font-size:12px; }
h1 { font-size:26px; font-weight:650; line-height:1.4; margin:0; } h2 { font-size:17px; line-height:1.5; margin:0; } h3 { margin:0; font-size:15px; }
[hidden] { display:none!important; }
.skip-link { position:fixed; top:10px; left:16px; z-index:50; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; background:white; }
body.route-pending .view { visibility:hidden; }
.skip-link:focus { width:auto; height:auto; padding:12px; clip-path:none; white-space:normal; }
.developer-layout { display:grid; grid-template-columns:220px minmax(0,1fr); min-height:100vh; }
.developer-shell { min-width:0; }
.sidebar { position:sticky; top:0; height:100vh; padding:26px 16px; border-right:1px solid var(--line); display:flex; flex-direction:column; background:#fff; }
.brand { display:flex; align-items:center; gap:10px; color:#17202a; flex-shrink:0; }
.brand img { width:34px; height:34px; object-fit:contain; }
.brand strong { font-size:20px; }
.brand span { display:grid; gap:5px; }
.brand small { color:#738194; font-size:11px; }
.workspace-nav { display:grid; gap:6px; margin-top:34px; }
.workspace-nav a { padding:12px 14px; color:#526276; border-radius:7px; }
.workspace-nav a[aria-current="page"] { color:#084aa0; background:#eaf2ff; font-weight:600; }
.sidebar-bottom { display:grid; gap:13px; margin-top:auto; padding:20px 10px 4px; color:#738194; font-size:12px; overflow-wrap:anywhere; }
.sidebar-bottom button { width:fit-content; padding:3px 0; font-size:12px; }
.topbar { min-height:72px; display:flex; align-items:center; justify-content:space-between; padding:16px 32px; border-bottom:1px solid #e4e9ef; background:white; gap:16px; }
.topbar>div { display:grid; gap:5px; }
.topbar nav { display:flex; align-items:center; gap:22px; font-size:13px; flex-wrap:wrap; }
.topbar nav a { color:#526276; }
.section-tabs { display:flex; gap:22px; padding:0 32px; border-bottom:1px solid #e4e9ef; background:white; overflow-x:auto; }
.section-tabs a { color:#526276; padding:16px 0 13px; border-bottom:3px solid transparent; white-space:nowrap; font-size:13px; }
.section-tabs a[aria-current="page"] { border-color:var(--primary); color:#084aa0; font-weight:600; }
main { padding:30px 32px 50px; min-width:0; width:100%; max-width:1520px; }
.page-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:24px; }
.page-copy { color:var(--muted); font-size:13px; line-height:1.7; margin:8px 0 0; }
.eyebrow { margin:0 0 7px; color:#748296; font-size:10px; letter-spacing:.08em; }
.surface { padding:22px; background:var(--surface); border:1px solid #e0e6ed; border-radius:10px; margin-bottom:20px; min-width:0; }
.metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:20px; }
.metric { display:grid; gap:9px; padding:22px; background:white; border:1px solid #e0e6ed; border-radius:10px; min-width:0; }
.metric span,.metric small { color:var(--muted); font-size:12px; }
.metric strong { font-size:25px; overflow-wrap:anywhere; font-weight:650; }
.setup-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; list-style:none; padding:0; margin:22px 0 0; counter-reset:step; }
.setup-steps li { counter-increment:step; min-width:0; } .setup-steps li:before { content:"0" counter(step); display:block; color:#7492b8; font-size:11px; margin-bottom:10px; } .setup-steps p { color:var(--muted); line-height:1.7; font-size:12px; }
.overview-columns { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.mini-list { margin:16px 0 0; padding:0; list-style:none; } .mini-list li { display:grid; gap:6px; padding:13px 0; border-bottom:1px solid #edf0f4; } .mini-list li:last-child { border:0; } .mini-list small { color:var(--muted); }
.credential-row { display:flex; flex-wrap:wrap; align-items:end; gap:12px; padding:16px 18px; border:1px solid #e0e6ed; border-radius:8px; background:#fff; }
.credential-row label { flex:1; min-width:170px; max-width:460px; }
.credential-row>span,.credential-row>a { color:#738194; font-size:12px; align-self:end; margin-bottom:10px; }
.workbench { display:grid; grid-template-columns:minmax(270px,.85fr) minmax(320px,1.15fr); padding-top:24px; }
.request-column { padding-right:28px; display:grid; align-content:start; gap:17px; min-width:0; }
.result-column { padding-left:28px; border-left:1px solid #dde5ed; min-width:0; }
.segmented { display:flex; background:#eaf0f7; padding:3px; border-radius:7px; gap:2px; }
.segmented button { flex:1; border-color:transparent; background:transparent; min-width:0; padding:8px 10px; }
.segmented button[aria-selected="true"],.segmented button[aria-pressed="true"] { background:white; box-shadow:0 1px 3px #16262c14; color:#084aa0; }
.compact { background:transparent; flex-wrap:wrap; } .compact button { padding:5px 9px; flex:0 0 auto; font-size:12px; white-space:nowrap; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; } .budget-fields { grid-template-columns:1.2fr 1fr 1fr; }
.field-note { color:var(--muted); font-size:11px; line-height:1.7; margin:0; }
.check-label { display:flex; flex-direction:row; align-items:center; gap:8px; } .check-label input { accent-color:var(--primary); margin:0; }
.command-row { display:flex; align-items:center; gap:9px; flex-wrap:wrap; } .command-row .primary { min-width:84px; }
.result-heading { display:flex; align-items:center; gap:12px; justify-content:space-between; flex-wrap:wrap; min-height:34px; }
.badge { font-size:11px; color:#486077; background:#eaf0f7; border-radius:5px; padding:5px 9px; white-space:nowrap; }
.receipt { display:flex; flex-wrap:wrap; gap:18px; margin:18px 0; font-size:11px; } .receipt div { min-width:65px; max-width:100%; } .receipt dt { color:#738194; margin-bottom:7px; } .receipt dd { margin:0; font-family:ui-monospace,monospace; overflow-wrap:anywhere; }
.outputs { min-height:240px; padding:16px 0; white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.75; }
.outputs img,.outputs video { display:block; width:100%; max-height:460px; object-fit:contain; background:#eef2f7; margin-bottom:10px; border-radius:7px; }
.outputs figure { margin:0 0 18px; } .outputs figcaption { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; font-size:12px; } .outputs figcaption small { color:var(--muted); }
.empty { color:#7e8a99; text-align:center; padding:35px 12px; font-size:13px; line-height:1.8; margin:0; }
details { border-top:1px solid #e2e7ee; padding:12px 0; font-size:12px; } summary { cursor:pointer; color:#65778c; } details label { margin-top:14px; }
progress { width:100%; height:6px; accent-color:var(--primary); }
.examples-band { margin-top:28px; border-top:1px solid #dce2e7; padding-top:18px; } .examples-band pre { background:#edf2f7; border-radius:7px; padding:18px; max-height:320px; overflow:auto; }
.notice { background:#edf4fc; border-left:3px solid #5792d6; padding:12px 15px; margin-bottom:20px; line-height:1.7; font-size:13px; overflow-wrap:anywhere; border-radius:5px; }
.notice.error { background:#fff1ef; border-color:#c95144; color:#912e25; }
.filter-row { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:18px 0; } .filter-row input,.filter-row select { max-width:240px; } .filter-row label { flex:1 1 145px; max-width:220px; }
.table-scroll { overflow-x:auto; width:100%; background:white; border:1px solid #e0e6ed; border-radius:9px; }
table { width:100%; border-collapse:collapse; font-size:12px; } th { text-align:left; color:#65778c; font-size:11px; font-weight:500; background:#f4f7fb; } th,td { padding:14px 12px; border-bottom:1px solid #e4e9ef; vertical-align:top; min-width:90px; } td { overflow-wrap:anywhere; max-width:340px; } td code { display:block; max-width:330px; color:#34424c; } td small { display:block; margin-top:6px; color:#738194; line-height:1.6; } td button { padding:5px 8px; font-size:11px; margin-right:5px; margin-bottom:5px; }
.key-form { max-width:840px; display:grid; gap:18px; } fieldset { border:0; padding:0; margin:0; } legend { color:#435266; font-size:13px; margin-bottom:10px; } .scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; } .scope-grid label { display:flex; align-items:center; gap:8px; }
.pagination { display:flex; justify-content:end; align-items:center; gap:16px; margin-top:22px; font-size:12px; }
.reference-preview { display:flex; gap:7px; overflow:auto; } .reference-preview img { width:64px; height:64px; object-fit:cover; border:1px solid #dfe4e8; }
.task-list { display:grid; gap:12px; } .task-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:18px; border:1px solid #e0e6ed; border-radius:9px; background:white; } .task-card p { color:var(--muted); font-size:12px; margin:8px 0; } .task-card strong,.task-card a { overflow-wrap:anywhere; } .task-card .command-row { align-self:start; } .task-state-row { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; } .task-state-row span { padding:5px 8px; border-radius:5px; background:#edf2f7; color:#4a607a; font-size:11px; } .task-state-row .is-success { color:#226849; background:#edf8f2; } .task-state-row .is-error { color:#9c3e2f; background:#fff1ee; }
.task-detail { margin-top:24px; scroll-margin-top:20px; } .detail-receipt { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; font-size:12px; } .detail-receipt div { min-width:0; } .detail-receipt dt { color:var(--muted); margin-bottom:7px; } .detail-receipt dd { margin:0; overflow-wrap:anywhere; } .task-detail .outputs { min-height:80px; }
dialog { border:1px solid #d5dce2; border-radius:10px; padding:26px; max-width:480px; width:calc(100% - 32px); box-shadow:0 14px 55px #20242926; } dialog::backdrop { background:#1c293657; } dialog input,dialog label { margin:22px 0; } dialog p { line-height:1.7; color:var(--muted); font-size:12px; }
.key-recovery input { margin:0; } .verification-row { display:flex; gap:8px; align-items:center; min-width:0; } .verification-row input { flex:1; width:0; } .verification-row button { flex:none; white-space:nowrap; font-size:12px; padding:10px; } .key-recovery .verification-status { min-height:20px; overflow-wrap:anywhere; } .verification-status.error { color:#912e25; } .key-recovery .command-row { margin-top:18px; }
.docs-layout { display:grid; grid-template-columns:210px minmax(0,1fr); max-width:1260px; margin:auto; } .docs-nav { padding:30px 22px; border-right:1px solid #e2e7eb; position:sticky; top:0; align-self:start; display:grid; gap:15px; font-size:13px; } .docs-main { padding:35px 48px; } .docs-main section { scroll-margin-top:24px; padding:22px 0; border-bottom:1px solid #e2e7eb; } .docs-main h2 { font-size:20px; margin-bottom:18px; } .docs-main p { line-height:1.95; font-size:14px; color:#56616b; } .docs-main pre { background:#edf2f7; padding:18px; border-radius:7px; }
@media(max-width:1150px) { .developer-layout { grid-template-columns:190px minmax(0,1fr); } main { padding:24px; } .topbar,.section-tabs { padding-left:24px; padding-right:24px; } .workbench { grid-template-columns:1fr; } .request-column { padding-right:0; } .result-column { padding-left:0; border-left:0; border-top:1px solid #e2e7eb; margin-top:24px; padding-top:20px; } .outputs { min-height:180px; } .overview-columns { grid-template-columns:1fr; } }
@media(max-width:700px) {
  .developer-layout { grid-template-columns:1fr; } .sidebar { position:static; height:auto; padding:16px; border-right:0; border-bottom:1px solid var(--line); } .sidebar .brand img { width:28px; height:28px; } .brand strong { font-size:18px; } .brand small,.sidebar-bottom { display:none; } .workspace-nav { display:flex; overflow-x:auto; gap:4px; margin-top:14px; } .workspace-nav a { flex:none; font-size:12px; padding:9px 10px; } .topbar { padding:14px 16px; min-height:60px; } .topbar nav { gap:14px; font-size:12px; } .topbar .eyebrow { display:none; } .section-tabs { padding:0 16px; gap:20px; } .section-tabs a { padding-top:14px; } main { padding:22px 16px; } h1 { font-size:23px; } .metric-grid { gap:9px; } .metric { padding:14px 11px; } .metric strong { font-size:20px; } .metric span,.metric small { font-size:10px; } .setup-steps { grid-template-columns:1fr; gap:18px; } .setup-steps li { border-bottom:1px solid #edf0f4; padding-bottom:14px; } .surface { padding:18px; } .scope-grid { grid-template-columns:1fr 1fr; } .budget-fields { grid-template-columns:1fr 1fr; } .budget-fields label:first-child { grid-column:1/-1; } .task-card { grid-template-columns:1fr; } .detail-receipt { grid-template-columns:1fr; } .docs-layout { grid-template-columns:1fr; } .docs-nav { position:static; border-right:0; border-bottom:1px solid #e2e7eb; display:flex; flex-wrap:wrap; padding:18px; gap:12px; } .docs-main { padding:24px 18px; } .credential-row { padding:14px; } .credential-row label { max-width:none; } .filter-row label { max-width:none; }
}
