:root{--color-primary: #1677ff;--color-primary-strong: #0f4ca8;--color-primary-soft: #e8f3ff;--color-page-bg: #eef4fb;--color-surface: #ffffff;--color-surface-muted: #f7fbff;--color-border: #dbe8f6;--color-text: #102033;--color-text-muted: #5f7088;--color-success: #047857;--color-success-soft: #d1fae5;--color-warning: #b45309;--color-warning-soft: #fef3c7;--color-danger: #b91c1c;--color-danger-soft: #fee2e2;--shadow-card: 0 12px 28px rgba(25, 67, 118, .12);--shadow-soft: 0 8px 20px rgba(25, 67, 118, .08);color:var(--color-text);font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:linear-gradient(135deg,rgba(22,119,255,.12),transparent 34%),linear-gradient(315deg,rgba(4,120,87,.1),transparent 30%),var(--color-page-bg)}button,input{font:inherit}button:focus-visible,input:focus-visible{outline:3px solid rgba(22,119,255,.28);outline-offset:2px}.app-shell{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:12px clamp(16px,4vw,32px);color:#fff;background:linear-gradient(110deg,#073b7a,#1677ff 78%);box-shadow:var(--shadow-soft)}.brand{display:flex;align-items:center;min-width:0;gap:12px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:none;border:1px solid rgba(255,255,255,.42);border-radius:10px;background:#ffffff29}.eyebrow{margin:0 0 4px;color:inherit;font-size:12px;font-weight:700;letter-spacing:0;opacity:.72}h1,h2{margin:0;letter-spacing:0}h1{font-size:clamp(18px,2vw,22px);line-height:1.25}h2{color:var(--color-text);font-size:20px;line-height:1.3}.topbar-status{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:#ffffff24;color:#fff;font-size:13px;white-space:nowrap}.status-dot{width:8px;height:8px;margin-right:8px;border-radius:999px;background:#fef3c7}.topbar-status[data-state=success] .status-dot{background:#86efac}.topbar-status[data-state=error] .status-dot{background:#fecaca}.workspace{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:24px 0 40px}.hero-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric-card,.panel{border:1px solid var(--color-border);border-radius:8px;background:#ffffffe6;box-shadow:var(--shadow-soft)}.metric-card{display:flex;align-items:center;min-height:86px;padding:18px;gap:14px;color:var(--color-primary-strong)}.metric-card.accent{color:#047857}.metric-card span{display:block;margin-bottom:4px;color:var(--color-text-muted);font-size:13px}.metric-card strong{color:var(--color-text);font-size:18px;font-weight:700}.content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:20px;align-items:start}.panel{padding:clamp(18px,3vw,24px)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.panel-heading .eyebrow{color:var(--color-primary-strong)}.panel-heading.compact{align-items:center}.badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary-strong);font-size:13px;font-weight:700;white-space:nowrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:8px;color:var(--color-text);font-size:14px;font-weight:600}.field-wide{grid-column:1 / -1}.field input{width:100%;min-height:44px;padding:0 13px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text)}.field input::placeholder{color:#94a3b8}.form-status{grid-column:1 / -1;display:flex;align-items:center;min-height:48px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-muted);gap:10px}.form-status[data-state=success]{border-color:#bbf7d0;background:var(--color-success-soft);color:var(--color-success)}.form-status[data-state=error]{border-color:#fecaca;background:var(--color-danger-soft);color:var(--color-danger)}.primary-action{grid-column:1 / -1;display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:0;border-radius:8px;background:linear-gradient(135deg,#1677ff,#0f4ca8);color:#fff;cursor:pointer;font-weight:700;gap:8px;box-shadow:var(--shadow-soft);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.primary-action:disabled{cursor:not-allowed;opacity:.58}.primary-action:not(:disabled):hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-primary-strong);cursor:pointer}.icon-button:disabled{cursor:not-allowed;color:var(--color-text-muted);opacity:.5}.code-box,.empty-box{min-height:178px;border:1px dashed #b9cbe0;border-radius:8px;background:#f8fbff}.code-box{padding:14px;overflow:auto}.code-box code{display:block;color:var(--color-text);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.empty-box{display:grid;place-items:center;padding:20px;color:var(--color-text-muted);text-align:center}.empty-box p{margin:10px 0 0}.payload-list{display:grid;gap:10px;margin:16px 0 0}.payload-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;border-bottom:1px solid var(--color-border)}.payload-list dt{color:var(--color-text-muted);font-size:13px}.payload-list dd{margin:0;color:var(--color-text);font-weight:700}.copy-hint{min-height:22px;margin:14px 0 0;color:var(--color-text-muted);font-size:13px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:820px){.topbar{align-items:flex-start;flex-direction:column;gap:12px}.hero-strip,.content-grid,.form-grid{grid-template-columns:1fr}.content-grid{gap:16px}}@media(max-width:480px){.workspace{width:min(100% - 24px,1180px);padding-top:16px}.panel-heading{flex-direction:column;align-items:stretch}.panel-heading.compact{flex-direction:row;align-items:center}.metric-card{min-height:78px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
