.confirm-overlay{z-index:1000;background:#0f111473;justify-content:center;align-items:center;animation:.12s ease-out confirm-fade-in;display:flex;position:fixed;inset:0}@keyframes confirm-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.confirm-overlay{animation:none}}.confirm-modal{background:var(--bg);border-radius:12px;width:360px;max-width:90vw;padding:22px 24px;box-shadow:0 16px 48px #0000003d}.confirm-title{margin:0 0 var(--sp-2);font-size:16px;font-weight:600}.confirm-message{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:20px;display:flex}.confirm-actions button{padding:7px 14px}.confirm-actions button.danger{background:var(--err);border-color:var(--err);color:#fff}.confirm-actions button.danger:hover:not(:disabled){background:var(--err-fg)}.toast{border-radius:var(--radius);background:var(--fg);color:#fff;max-width:min(520px,100vw - 32px);font-size:var(--font-sm);opacity:0;pointer-events:none;z-index:60;padding:10px 16px;transition:opacity .18s,transform .18s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);box-shadow:0 6px 24px #0000002e}.toast[data-show]{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.toast{transition:none}}:root{--fg:#1a1d21;--muted:#697077;--line:#e3e6ea;--accent:#0b5fff;--bg:#fff;--bubble:#f2f4f7;--err:#b3261e;--ok:#1a7f37;--user:var(--accent);--surface-subtle:#f7f9fc;--surface-sunken:#e8ebf0;--line-strong:#d4d9df;--line-stronger:#c6ccd4;--line-soft:#e7eaef;--notice-bg:#fff8e6;--notice-line:#f0d787;--notice-fg:#6b5013;--err-bg:#fdeceb;--err-line:#f3c9c6;--err-fg:#8f1d17;--ok-bg:#e6f4ea;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:18px;--radius:8px;--radius-sm:6px;--font-sm:13px;--font-xs:12px}*{box-sizing:border-box}html,body{height:100%}body{color:var(--fg);background:var(--bg);margin:0;font:15px/1.55 system-ui,-apple-system,sans-serif}.hidden{display:none}.muted{color:var(--muted)}button,.btn{border:1px solid var(--line);background:var(--bg);border-radius:var(--radius);font:inherit;font-size:var(--font-sm);cursor:pointer;color:var(--fg);padding:6px 12px}.btn{text-decoration:none;display:inline-block}button:hover:not(:disabled),.btn:hover{background:var(--bubble)}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, #000)}button.danger{color:var(--err);border-color:var(--err-line)}button.danger:hover:not(:disabled){background:var(--err-bg)}button:disabled{opacity:.5;cursor:default}:where(button,.btn,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field{margin-bottom:var(--sp-3)}.field>label,.field>span:first-child{color:var(--muted);margin-bottom:var(--sp-1);font-size:12.5px;display:block}.field input,.field select{border:1px solid var(--line);width:100%;font:inherit;background:var(--bg);color:var(--fg);border-radius:7px;padding:8px 10px;font-size:14px}.field textarea{border:1px solid var(--line);resize:vertical;border-radius:7px;width:100%;padding:8px 10px;font-family:ui-monospace,monospace;font-size:12.5px}.hint{color:var(--muted);margin-top:3px;font-size:11.5px}.hint.err{color:var(--err)}.wrap{max-width:1200px;margin:0 auto;padding:20px 18px 60px}.toolbar{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:14px;display:flex}.toolbar h2{color:var(--muted);margin:0;font-size:15px;font-weight:600}.actions{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.mono{font-family:ui-monospace,monospace;font-size:12.5px}.card3{border:1px solid var(--line);border-radius:12px;margin-bottom:13px}.card3>.chead{align-items:center;gap:9px;padding:10px 14px;display:flex}.card3>.chead h3,.card3>.chead h4{margin:0;font-size:13.5px}.card3>.chead h4{font-weight:600}.card3>.chead .state{font-size:var(--font-xs);color:var(--muted);margin-left:auto}.card3>.chead .state.dirty{color:var(--accent)}.card3>.chead .state.ok{color:var(--ok)}.card3>.chead .state.err{color:var(--err)}.card3>.cbody{border-top:1px solid var(--line);padding:13px 14px}.card3 .cbody .field:last-child{margin-bottom:0}.notice{background:var(--notice-bg);border:1px solid var(--notice-line);border-radius:var(--radius);color:var(--notice-fg);font-size:var(--font-xs);margin-bottom:var(--sp-3);padding:9px 12px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 10px}th{color:var(--muted);font-weight:600;font-size:var(--font-xs);text-transform:uppercase}.empty{color:var(--muted);font-size:var(--font-sm);padding:18px 10px}
