*{box-sizing:border-box}
:root{
  --bg:#0b0c0f; --card:#14161a; --fg:#e8eaed; --muted:#9aa0a6;
  --accent:#86b7ff; --danger:#ff6b6b; --border:#2a2d33;
}
html,body{height:100%}
body{margin:0; font-family: ui-sans-serif, -apple-system, 'Hiragino Sans', 'Noto Sans JP', Roboto, 'Segoe UI', Arial, 'Helvetica Neue', sans-serif; background:var(--bg); color:var(--fg)}
.container{max-width:980px;margin:0 auto;padding:24px}
h1{font-size:22px;margin:0 0 14px}
h1 .sub{font-size:14px;color:var(--muted);font-weight:400;margin-left:.4em}
h2{font-size:16px;margin:0}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px;margin:14px 0;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.row{display:flex;gap:10px;flex-wrap:wrap}
.col{flex:1 1 220px;display:flex;flex-direction:column;gap:6px}
label span{font-size:12px;color:var(--muted)}
input[type=text], input[type=number]{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#0f1115;color:var(--fg)}
input:focus{outline:2px solid var(--accent);border-color:transparent}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.btn{cursor:pointer;border:1px solid var(--border);background:#111421;color:var(--fg);padding:10px 12px;border-radius:10px}
.btn:hover{background:#151a2a}
.btn.primary{background:#1a2336;border-color:#2b3b60}
.btn.danger{border-color:#3a2830;background:#1d0f12}
.btn.small{font-size:12px;padding:6px 8px}
.btn.tiny{font-size:11px;padding:4px 6px}
.help{color:var(--muted);font-size:12px;margin:8px 0 0}
.saved-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}
.item{display:flex;align-items:center;gap:8px;background:#0f1115;border:1px solid var(--border);border-radius:10px;padding:8px}
.item .text{font-family:ui-monospace, SFMono-Regular, Menlo, monospace;font-size:12px;color:#cfd5dd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60ch}
.item .spacer{flex:1}
.footer{color:var(--muted);font-size:12px;text-align:center;margin-top:8px}
code{background:#0b0d12;border:1px solid var(--border);padding:2px 4px;border-radius:6px}
