*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font: "DM Sans", sans-serif;--mono: "DM Mono", monospace;--bg: #F2F0EB;--surface: #FFFFFF;--surface2: #F8F6F2;--border: #E2DDD5;--border2: #CBC5BB;--txt: #1C1A17;--txt2: #5C5852;--txt3: #9A9690;--accent: #3B3B9E;--accent2: #5252B8;--accentbg: #EBEBF8;--accentbg2:#D8D8F2;--green: #1A6B47;--greenbg: #E4F3EC;--greenbg2: #C8E8D6;--amber: #8B5A00;--amberbg: #FEF3DC;--amberbg2: #FCDFA0;--red: #8B1A1A;--redbg: #FDEBEB;--redbg2: #F9CCCC;--gray: #5A5754;--graybg: #EDEBE7;--graybg2: #D8D5D0;--cell-bg: #F5F3EF;--cell-header: #ECEAE5;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow: 0 1px 2px rgba(0,0,0,.05), 0 1px 4px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08)}html,body,#root{height:100%;font-family:var(--font);background:var(--bg);color:var(--txt);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}input,select,textarea,button{font-family:var(--font);font-size:13px}input,select,textarea{width:100%;padding:7px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--cell-bg);color:var(--txt);outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent2);background:var(--surface);box-shadow:0 0 0 3px var(--accentbg)}input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--border2)}textarea{resize:vertical;min-height:72px}button{cursor:pointer}.btn-primary{padding:8px 18px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-weight:500;font-size:13px;letter-spacing:.01em;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 1px 3px #3b3b9e40}.btn-primary:hover{background:var(--accent2);box-shadow:0 2px 6px #3b3b9e4d}.btn-primary:active{transform:scale(.98)}.btn-ghost{padding:8px 18px;background:var(--surface);color:var(--txt2);border:1px solid var(--border);border-radius:var(--radius);font-size:13px;transition:background .15s,border-color .15s}.btn-ghost:hover{background:var(--cell-bg);border-color:var(--border2);color:var(--txt)}.btn-sm{padding:4px 10px;font-size:12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--txt2);transition:background .15s,border-color .15s}.btn-sm:hover{background:var(--cell-bg);border-color:var(--border2);color:var(--txt)}.btn-sm.accent{color:var(--accent);border-color:var(--accentbg2)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em}.badge-green{background:var(--greenbg);color:var(--green);border:1px solid var(--greenbg2)}.badge-amber{background:var(--amberbg);color:var(--amber);border:1px solid var(--amberbg2)}.badge-red{background:var(--redbg);color:var(--red);border:1px solid var(--redbg2)}.badge-gray{background:var(--graybg);color:var(--gray);border:1px solid var(--graybg2)}.badge-accent{background:var(--accentbg);color:var(--accent);border:1px solid var(--accentbg2)}.form-group{margin-bottom:12px}.form-label{display:block;font-size:11px;font-weight:600;color:var(--txt3);margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}table thead tr,table thead th{background:var(--cell-header)}table tbody tr{background:var(--surface)}table tbody tr:nth-child(2n){background:var(--cell-bg)}table tbody tr:hover{background:var(--accentbg)!important}.divider{height:1px;background:var(--border);margin:14px 0}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .2s ease}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--txt3)}
