*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#232b32;--bg2:#1b2229;--surface:#2c3540;--border:#3a4550;--text:#edeff0;--text2:#9aaab5;--accent:#3fa8a0;--accent2:#2d8c85;--red:#ef7a6d;--green:#5fce8a;--radius:8px;--font:"Inter", system-ui, -apple-system, sans-serif}body{background:var(--bg);color:var(--text);font-family:var(--font);min-height:100vh;font-size:14px;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}input,select,textarea{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;font-family:var(--font);outline:none;width:100%;padding:8px 12px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}select option{background:var(--bg2)}button{cursor:pointer;font-family:var(--font);border-radius:var(--radius);border:none;padding:8px 16px;font-size:14px;transition:opacity .15s,background .15s}button:hover{opacity:.88}.btn-primary{background:var(--accent);color:#fff;font-weight:600}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-danger{background:var(--red);color:#fff}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{color:var(--text2);background:0 0;padding:4px 6px}.btn-icon:hover{color:var(--text);opacity:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.form-grid{gap:12px;display:grid}.form-grid-2{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.form-label{color:var(--text2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;display:block}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--text2);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff05}.text-right{text-align:right}.text-center{text-align:center}.text-muted{color:var(--text2)}.text-accent{color:var(--accent)}.text-red{color:var(--red)}.text-green{color:var(--green)}.text-sm{font-size:12px}.text-lg{font-size:18px}.text-xl{font-size:22px}.font-bold{font-weight:700}.font-medium{font-weight:500}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.p-0{padding:0}.w-full{width:100%}.grid{display:grid}.grid-2{grid-template-columns:1fr 1fr;gap:16px}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px}.grid-4{grid-template-columns:1fr 1fr 1fr 1fr;gap:16px}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:560px;max-height:90vh;padding:24px;overflow-y:auto}.modal-title{margin-bottom:20px;font-size:18px;font-weight:700}.progress-bar-container{background:var(--bg2);border-radius:4px;height:6px;overflow:hidden}.progress-bar-fill{background:var(--accent);border-radius:4px;height:100%;transition:width .3s}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-red{color:var(--red);background:#ef7a6d26}.badge-green{color:var(--green);background:#5fce8a26}.badge-accent{color:var(--accent);background:#3fa8a026}.badge-muted{background:var(--bg2);color:var(--text2)}.stat-label{color:var(--text2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px}.stat-value{font-size:24px;font-weight:700}.stat-sub{color:var(--text2);margin-top:2px;font-size:12px}.section-header{color:var(--text2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:13px;font-weight:600}input[type=checkbox]{width:auto;accent-color:var(--accent);cursor:pointer}.toast{background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);color:var(--text);z-index:999;padding:12px 20px;animation:.2s fadeInUp;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 20px #0006}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
