@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Sora:wght@300;400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--emerald: #065F46;--emerald-mid: #047857;--teal: #0F766E;--teal-light: #14B8A6;--teal-dim: #0F766E18;--surface: #F0FDFA;--surface-2: #CCFBF1;--white: #FFFFFF;--bg: #F1F5F9;--ink: #0F172A;--ink-2: #334155;--ink-3: #64748B;--border: #CBD5E1;--border-2: #E2E8F0;--red: #DC2626;--red-dim: #DC262612;--amber: #D97706;--amber-dim: #D9770612;--green: #16A34A;--green-dim: #16A34A12;--blue: #0369A1;--blue-dim: #0369A112;--font-ui: "Sora", sans-serif;--font-data: "IBM Plex Mono", monospace;--radius: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(0,0,0,.07);--shadow: 0 4px 6px rgba(0,0,0,.07);--shadow-lg: 0 10px 25px rgba(0,0,0,.1)}html,body,#root{height:100%;font-family:var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.card{background:var(--white);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700}.badge-green{background:var(--green-dim);color:var(--green)}.badge-red{background:var(--red-dim);color:var(--red)}.badge-amber{background:var(--amber-dim);color:var(--amber)}.badge-blue{background:var(--blue-dim);color:var(--blue)}.badge-teal{background:var(--teal-dim);color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius);border:none;font-family:var(--font-ui);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover:not(:disabled){background:var(--emerald-mid)}.btn-ghost{background:transparent;color:var(--ink-2);border:1.5px solid var(--border)}.btn-ghost:hover:not(:disabled){border-color:var(--teal);color:var(--teal)}.btn-sm{height:28px;padding:0 10px;font-size:11px}.input{height:36px;padding:0 12px;border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-data);font-size:12px;color:var(--ink);background:var(--surface);outline:none;transition:border-color .15s;width:100%}.input:focus{border-color:var(--teal-light);box-shadow:0 0 0 3px #14b8a61f}.input-sm{height:30px;font-size:11px}.label{display:block;font-size:10px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.select{height:36px;padding:0 10px;border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);font-size:12px;color:var(--ink);background:var(--surface);outline:none;cursor:pointer;width:100%}.select:focus{border-color:var(--teal-light)}.form-group{margin-bottom:14px}.form-row{display:flex;gap:10px}.form-row .form-group{flex:1}.data-table{width:100%;border-collapse:collapse}.data-table thead th{padding:8px 14px;background:var(--emerald);color:#ffffffd9;font-size:9px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;text-align:left;white-space:nowrap;position:sticky;top:0;z-index:1}.data-table tbody td{padding:9px 14px;font-size:12px;color:var(--ink-2);border-bottom:1px solid var(--border-2);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface)}.col-mono{font-family:var(--font-data)}.col-bold{font-weight:700;color:var(--ink)}.page{flex:1;overflow-y:auto;padding:20px 24px}.page-header{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between}.page-title{font-size:18px;font-weight:700;color:var(--ink)}.page-sub{font-size:12px;color:var(--ink-3);margin-top:2px}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay{display:flex;align-items:center;justify-content:center;padding:48px;gap:10px;color:var(--ink-3);font-size:13px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--ink-3);text-align:center;gap:8px}.empty-state-icon{font-size:36px;opacity:.4}.empty-state-title{font-size:14px;font-weight:600;color:var(--ink-2)}.empty-state-sub{font-size:12px}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{box-shadow:0 0 0 2px #14b8a64d}50%{box-shadow:0 0 0 6px #14b8a61a}}
