:root{--accent:#5b63d3;--accent-soft:#eeeffb;--bg:#f7f7f9;--card:#fff;--line:#eaeaef;--ink:#1b1b22;--sub:#71717a;--dark:#16161a;--good:#1c8c58;--good-soft:#e7f4ed;--warn:#b5790b;--warn-soft:#fbf1dd;--warn-border:#f0dfb8;--hover:#f2f2f5;--brand:#e5326b}*,:before,:after{box-sizing:border-box;margin:0;padding:0}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}html,body,#root{height:100%;overflow:hidden}body{color:#1b1b22;background:#f7f7f9;font-family:Hanken Grotesk,Segoe UI,system-ui,sans-serif;font-size:14px}input,select,textarea,button{font-family:inherit}input,select,textarea{box-sizing:border-box;outline:none}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 2px #2980b926;border-color:#2980b9!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f7f7f9}::-webkit-scrollbar-thumb{background:#c8c8d8;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#99a}.btn{cursor:pointer;color:#fff;background:#5b63d3;border:none;border-radius:7px;align-items:center;gap:4px;padding:6px 13px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.btn--primary{color:#fff;background:#5b63d3;box-shadow:0 1px 2px #5b63d359}.btn--blue{color:#fff;background:#2980b9}.btn--ghost{color:#1b1b22;background:0 0;border:1px solid #eaeaef;border-radius:7px;font-weight:400}.btn--ghost:hover{background:var(--hover)}.btn--danger{color:#fff;background:#c0392b}.btn:disabled{opacity:.5;cursor:not-allowed}.spin-btn{cursor:pointer;color:#71717a;background:#f7f7f9;border:1px solid #eaeaef;border-radius:5px;padding:2px 7px;font-family:inherit;font-size:13px}.inp{color:#1b1b22;box-sizing:border-box;background:#fff;border:1px solid #eaeaef;border-radius:4px;width:100%;padding:4px 8px;font-family:inherit;font-size:13px}.td{color:#1b1b22;vertical-align:middle;padding:5px 8px;font-size:13px}.th{color:#71717a;text-transform:uppercase;letter-spacing:.04em;text-align:left;vertical-align:middle;border-bottom:1px solid #eaeaef;padding:5px 8px;font-size:11px;font-weight:700}.progress-bar{background:#f7f7f9;border:1px solid #eaeaef;border-radius:2px;flex:1;height:5px;overflow:hidden}.progress-bar__fill{background:#2980b9;border-radius:2px;height:100%}.progress-bar__fill--complete{background:#1c8c58}.badge{border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-size:11px;display:inline-flex}
