*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#09090b;--surface:#111113;--surface2:#18181b;--surface3:#202023;--border:#27272a;--border2:#3f3f46;--text:#e4e4e7;--dim:#a1a1aa;--dimmer:#52525b;--accent:#6366f1;--accent2:#818cf8;--accent-glow:rgba(99,102,241,.15);--radius:10px;--radius-sm:6px;--font:'Inter',sans-serif;--mono:'JetBrains Mono',monospace}
body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}
#app{max-width:1200px;margin:0 auto;padding:0 24px}

/* header */
header{border-bottom:1px solid var(--border);padding:0;position:sticky;top:0;z-index:50;background:var(--bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.header-inner{display:flex;align-items:center;height:56px;gap:20px}
.brand{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;letter-spacing:-.3px;color:var(--text);flex-shrink:0}
.brand svg{color:var(--accent)}
#tabBar{display:flex;gap:2px;flex:1;overflow-x:auto;scrollbar-width:none}
#tabBar::-webkit-scrollbar{display:none}
.tab{padding:6px 14px;font-size:12px;font-weight:500;font-family:var(--font);border:none;background:transparent;color:var(--dimmer);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s;white-space:nowrap;letter-spacing:.2px}
.tab:hover{color:var(--text);background:var(--surface2)}
.tab.active{color:var(--accent2);background:var(--accent-glow)}
.header-status{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--dimmer);flex-shrink:0;letter-spacing:.3px;text-transform:uppercase}
.header-status .dot{width:6px;height:6px;border-radius:50%;background:#22c55e}

/* layout */
.layout{display:flex;gap:24px;padding:24px 0;align-items:flex-start}
.panel-form{flex:1;min-width:0}
.panel-side{width:340px;min-width:340px;position:sticky;top:80px}

/* form cards */
.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;overflow:hidden}
.form-card-header{display:flex;align-items:center;gap:8px;padding:14px 18px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--dimmer);border-bottom:1px solid var(--border);cursor:pointer;user-select:none}
.form-card-header svg{width:14px;height:14px;opacity:.5;transition:transform .2s}
.form-card-body{padding:14px 18px 18px}
.form-card.collapsed .form-card-body{display:none}
.form-card.collapsed .form-card-header svg{transform:rotate(-90deg)}

/* fields */
.field-row{display:flex;gap:8px;align-items:center}
.field-group{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.field-group-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.field{margin-bottom:10px}
.field:last-child{margin-bottom:0}
.field label{display:block;font-size:10px;font-weight:600;color:var(--dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:.6px}
.field input,.field select{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:13px;padding:8px 10px;outline:none;border-radius:var(--radius-sm);transition:border-color .15s,box-shadow .15s}
.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.field input::placeholder{color:var(--dimmer)}
.field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2352525b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}
.field select option{background:var(--surface);color:var(--text)}
.field-single{margin-bottom:10px}
.field-single label{display:block;font-size:10px;font-weight:600;color:var(--dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:.6px}
.field-single input,.field-single select{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:13px;padding:8px 10px;outline:none;border-radius:var(--radius-sm);transition:border-color .15s,box-shadow .15s}
.field-single input:focus,.field-single select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}

/* buttons */
.btn{font-family:var(--font);font-size:11px;font-weight:600;padding:8px 14px;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:all .15s;white-space:nowrap;letter-spacing:.3px;text-transform:uppercase}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent2)}
.btn-primary:disabled{opacity:.4;cursor:not-allowed}
.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}
.btn-secondary:hover{border-color:var(--accent)}
.btn-secondary:disabled{opacity:.4;cursor:not-allowed}
.btn-ghost{background:transparent;color:var(--dim);padding:6px 10px}
.btn-ghost:hover{color:var(--text);background:var(--surface2)}
.btn-load{display:flex;align-items:center;gap:4px}
.btn-load svg{width:14px;height:14px}

/* side panel */
.card-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:16px}
.card-side h3{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--dimmer);margin-bottom:12px}
.side-field{margin-bottom:12px}
.side-field:last-child{margin-bottom:0}
.side-field label{display:block;font-size:10px;font-weight:600;color:var(--dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:.6px}
.side-field input{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:13px;padding:8px 10px;outline:none;border-radius:var(--radius-sm);transition:border-color .15s}
.side-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.side-row{display:flex;gap:8px;align-items:center}
.side-row .btn{flex-shrink:0}

/* stats */
.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.stat{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;text-align:center}
.stat-num{display:block;font-size:20px;font-weight:700;font-family:var(--mono)}
.stat-lbl{font-size:9px;color:var(--dimmer);text-transform:uppercase;letter-spacing:1px;margin-top:2px}
.stat-red .stat-num{color:#ef4444}

/* feed */
.feed{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-family:var(--mono);font-size:11px;line-height:1.7;max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.feed::-webkit-scrollbar{width:4px}
.feed::-webkit-scrollbar-track{background:transparent}
.feed::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}
.feed div{padding:1px 0}
.feed .ok{color:#22c55e}
.feed .err{color:#ef4444}
.feed .dim{color:var(--dimmer)}

/* format pages */
.page-format{display:none}
.page-format.active{display:block}

/* transitions */
@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.page-format.active{animation:fadeIn .2s ease-out}

/* responsive */
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.layout{flex-direction:column}.panel-side{width:100%;min-width:0;position:static}}
@media(max-width:600px){#app{padding:0 16px}.field-group{grid-template-columns:1fr}.field-group-3{grid-template-columns:1fr}.header-inner{gap:12px}.tab{padding:6px 10px;font-size:11px}}
