.toolbar-bar{z-index:10;background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin:-24px -16px 20px;padding:10px max(16px,50% - 23rem);display:flex;position:sticky;top:0}.toolbar-bar[hidden]{display:none}.toolbar-bar .spacer{flex:1}.toolbar-bar .brand{color:var(--muted);font-size:.8rem;font-weight:600;text-decoration:none}.toolbar-bar button,.landing button{font:inherit;cursor:pointer;border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:7px;padding:5px 10px;font-size:.78rem}.toolbar-bar button:hover,.landing button:hover{background:var(--bg);color:var(--ink)}.toolbar-bar .switch{color:var(--muted);align-items:center;gap:5px;font-size:.78rem;display:flex}body.dropping:after{content:"Drop the case file to open it";z-index:50;pointer-events:none;border:2px dashed var(--accent);color:var(--accent);background:#f8fafce0;border-radius:14px;place-items:center;font-size:1.05rem;font-weight:600;display:grid;position:fixed;inset:10px}@media (prefers-color-scheme:dark){body.dropping:after{background:#0b1120e0}}.landing{max-width:46rem;margin:0 auto;padding-top:24px}.landing h1{letter-spacing:-.01em;margin:0 0 8px;font-size:1.5rem}.landing .lede{color:var(--muted);max-width:34rem;margin:0 0 18px}.landing textarea{border:1px solid var(--line);background:var(--card);width:100%;min-height:260px;color:var(--ink);resize:vertical;border-radius:10px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.6}.landing textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.landing-actions{gap:8px;margin-top:12px;display:flex}.landing button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.landing button.primary:hover{background:var(--accent);color:#fff;filter:brightness(1.06)}.landing .error{background:var(--amber-soft);color:var(--amber);border-radius:8px;margin:0 0 12px;padding:9px 12px;font-size:.85rem}.landing .fine{color:var(--faint);margin-top:20px;font-size:.78rem;line-height:1.6}.landing .fine a{color:var(--muted)}.builder{max-width:46rem;margin:0 auto;padding-bottom:48px}.builder-head h1{letter-spacing:-.01em;margin:0 0 8px;font-size:1.5rem}.bsection{margin-top:28px}.bsection>h2{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 10px;font-size:.78rem}.bfield{margin-bottom:12px;display:block}.blabel{color:var(--muted);margin-bottom:3px;font-size:.78rem;font-weight:600;display:block}.bfield input,.bfield textarea,.bfield select{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:7px 10px;font-size:.9rem}.bfield textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.6}.bfield input:focus,.bfield textarea:focus,.bfield select:focus{outline:2px solid var(--accent);outline-offset:-1px}.bhint{color:var(--faint);margin-top:3px;font-size:.75rem;display:block}.bcard{border:1px solid var(--line);background:var(--card);border-radius:10px;margin-bottom:12px;padding:12px 14px}.bcard-head{align-items:center;gap:6px;margin-bottom:10px;display:flex}.bcard-title{color:var(--ink);flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:600}.bcheck{color:var(--muted);align-items:center;gap:6px;font-size:.82rem;display:flex}button.bghost{font:inherit;border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;padding:5px 10px;font-size:.78rem}button.bghost:hover:not(:disabled){background:var(--bg);color:var(--ink)}button.bghost:disabled{opacity:.35;cursor:default}button.bprimary{font:inherit;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:7px;padding:6px 12px;font-size:.82rem;font-weight:600}.builder-preview{white-space:pre-wrap;word-break:break-word;color:#e2e8f0;background:#0f172a;border-radius:8px;max-height:20rem;padding:12px 14px;font-size:.78rem;line-height:1.55;overflow:auto}.builder-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}
