:root {
  --bg: #0D1117;
  --bg-card: #161B22;
  --text: #C9D1D9;
  --text-sec: #8B949E;
  --text-muted: #484F58;
  --primary: #2D3436;
  --secondary: #636E72;
  --accent: #0984E3;
  --green: #2ECC71;
  --amber: #F39C12;
  --red: #E74C3C;
  --border: rgba(9,132,227,0.06);
  --radius: 12px;
  --font: 'Inter',system-ui,sans-serif;
  --mono: 'JetBrains Mono',monospace;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh}

.header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--bg-card);border-bottom:1px solid var(--border)}
.header h1{font-size:.88rem;font-weight:700;color:var(--accent)}
.header-right{display:flex;gap:4px;align-items:center}

.btn{padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-sec);font-family:var(--font);font-size:.66rem;cursor:pointer;transition:.2s}
.btn:hover{border-color:var(--accent);color:var(--accent)}
.btn.primary{background:var(--accent);color:#fff;border:none;font-weight:600}

.app{max-width:800px;margin:0 auto;padding:12px}

.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:8px}
.card h2{font-size:.6rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;display:flex;align-items:center;gap:4px}

.label{font-size:.54rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;display:block;margin-bottom:2px}

.input{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:rgba(255,255,255,.02);color:var(--text);font-family:var(--font);font-size:.7rem}
.input.code{font-family:var(--mono);font-size:.62rem;line-height:1.5}
.input:focus{outline:none;border-color:var(--accent)}
.sel{width:auto}

.endpoint-row{display:flex;gap:6px;align-items:center}
.endpoint-url{font-family:var(--mono);font-size:.66rem;color:var(--accent);background:rgba(9,132,227,.06);padding:5px 10px;border-radius:6px;flex:1;word-break:break-all}

.sim-row{display:flex;gap:6px;align-items:center}
.sim-body-row{display:flex;gap:6px;margin-top:4px}
.resp-row{display:flex;gap:4px}

.badge{font-size:.52rem;background:var(--accent);color:#fff;padding:1px 6px;border-radius:10px;font-weight:600}

/* Request log */
.req-item{display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px solid var(--border);border-radius:6px;margin-bottom:3px;cursor:pointer;font-size:.64rem;transition:.15s}
.req-item:hover{background:rgba(255,255,255,.02)}
.req-item.active{border-color:rgba(9,132,227,.2);background:rgba(9,132,227,.03)}
.method-badge{font-size:.56rem;font-weight:700;padding:1px 5px;border-radius:4px;font-family:var(--mono)}
.method-GET{background:rgba(46,204,113,.08);color:var(--green)}
.method-POST{background:rgba(9,132,227,.08);color:var(--accent)}
.method-PUT{background:rgba(243,156,18,.08);color:var(--amber)}
.method-PATCH{background:rgba(243,156,18,.08);color:var(--amber)}
.method-DELETE{background:rgba(231,76,60,.08);color:var(--red)}
.req-path{color:var(--text-sec);font-family:var(--mono);font-size:.6rem}
.req-time{color:var(--text-muted);font-size:.5rem;margin-left:auto}
.status-badge{font-size:.52rem;padding:1px 4px;border-radius:3px}
.status-2xx{background:rgba(46,204,113,.08);color:var(--green)}
.status-4xx{background:rgba(231,76,60,.08);color:var(--red)}
.status-5xx{background:rgba(231,76,60,.12);color:var(--red)}

/* Detail */
.detail-group{margin-bottom:8px}
.detail-group h3{font-size:.56rem;color:var(--text-muted);text-transform:uppercase;margin-bottom:3px}
.detail-table{width:100%;border-collapse:collapse;font-size:.62rem}
.detail-table th,.detail-table td{padding:2px 6px;text-align:left;border-bottom:1px solid var(--border)}
.detail-table th{color:var(--text-muted);font-weight:500;width:30%}
.detail-table td{color:var(--text);font-family:var(--mono);font-size:.58rem}
.detail-body{background:rgba(0,0,0,.2);border-radius:6px;padding:8px;font-family:var(--mono);font-size:.58rem;white-space:pre-wrap;overflow-x:auto;line-height:1.5}
.detail-actions{display:flex;gap:4px;margin-top:4px}

@media(max-width:600px){.sim-body-row{flex-direction:column}.sim-row{flex-wrap:wrap}}
