@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg:#fff;--surface:#F6F8FA;--ink:#0A0A0F;--inkMid:#4B5264;--inkLight:#8792A2;--border:#E3E8EF;--borderMid:#C8D0DC;--accent:#635BFF;--accentDark:#4F46E5;--accentLight:#F0EFFE;--green:#09825D;--greenLight:#D7F7EF;--amber:#A35200;--amberLight:#FFF3E0;--red:#C0392B;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--surface);font-family:Inter,-apple-system,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}.topbar{background:#fff;border-bottom:1px solid var(--border);padding:12px 20px;display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:10}.logo{width:30px;height:30px;border-radius:7px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;font-family:IBM Plex Mono,monospace}.tabs{display:flex;gap:4px;margin-left:8px}.tab{padding:7px 14px;font-size:13px;font-weight:500;color:var(--inkMid);border-radius:7px;cursor:pointer;border:none;background:none}.tab.active{background:var(--accentLight);color:var(--accent);font-weight:600}.spacer{flex:1}.muted{color:var(--inkLight);font-size:12px}.wrap{max-width:840px;margin:0 auto;padding:24px 18px 80px}.card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:20px 22px;margin-bottom:14px}.row{display:flex;gap:10px;flex-wrap:wrap}.grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}h1{font-size:20px;letter-spacing:-.02em}h2{font-size:15px;margin-bottom:10px;letter-spacing:-.01em}label{display:block;font-size:13px;font-weight:500;color:var(--inkMid);margin-bottom:6px}.hint{font-size:12px;color:var(--inkLight);margin-bottom:10px;line-height:1.5}input,textarea,select{width:100%;padding:9px 12px;font-size:14px;font-family:inherit;background:#fff;border:1px solid var(--border);border-radius:7px;color:var(--ink);outline:none;transition:.15s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #635bff1a}textarea{resize:vertical;line-height:1.6}.btn{padding:10px 18px;font-size:14px;font-weight:600;font-family:inherit;border-radius:7px;cursor:pointer;border:none;transition:.15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accentDark)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:#fff;color:var(--inkMid);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface)}.pill{border:1px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;background:#fff;transition:.15s;text-align:left;font-size:13px}.pill:hover{border-color:var(--borderMid);background:var(--surface)}.pill.sel{border-color:var(--accent);background:var(--accentLight);box-shadow:0 0 0 2px #635bff1f}.pill.sel-green{border-color:var(--green);background:var(--greenLight);box-shadow:0 0 0 2px #09825d1f}.chip{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px}.chip-accent{background:var(--accentLight);color:var(--accent)}.chip-green{background:var(--greenLight);color:var(--green)}.chip-amber{background:var(--amberLight);color:var(--amber)}.banner{padding:12px 14px;border-radius:8px;font-size:13px;line-height:1.5;margin-bottom:12px}.banner-accent{background:var(--accentLight);color:var(--accentDark);border:1px solid #d9d6fe}.banner-green{background:var(--greenLight);color:var(--green);border:1px solid #b8eede}.banner-err{background:#fdf0ee;color:var(--red);border:1px solid #f5d0cb}.result{background:#fff;border:1px solid var(--border);border-radius:10px;padding:24px;white-space:pre-wrap;line-height:1.85;font-size:14px}.tablez{width:100%;border-collapse:collapse;font-size:13px}.tablez th,.tablez td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}.tablez th{color:var(--inkLight);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.bar{height:6px;background:var(--border);border-radius:6px;overflow:hidden}.bar>div{height:100%;background:var(--accent)}.center{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:20px}.spin{display:inline-block;width:14px;height:14px;border:2px solid var(--accentLight);border-top-color:var(--accent);border-radius:50%;animation:s .8s linear infinite;vertical-align:middle}@keyframes s{to{transform:rotate(360deg)}}
