@tailwind base;@tailwind components;@tailwind utilities;:root{--color-bg-primary: #070b08;--color-bg-surface: #101613;--color-bg-elevated: #17201c;--color-border: #26342e;--color-accent: #00e676;--color-accent-hover: #00f58e;--color-accent-soft: #1ef59a;--color-accent-muted: rgba(0, 230, 118, .12);--color-text-primary: #eefcf3;--color-text-muted: #95aca0;--color-text-dim: #6f867b;--color-danger: #ff4444;--color-warning: #ffaa00;--shadow-soft: 0 10px 30px rgba(0, 0, 0, .35);--shadow-accent: 0 0 0 1px rgba(0, 230, 118, .18), 0 16px 32px rgba(0, 230, 118, .12)}@layer base{*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% -4%,rgba(0,230,118,.14),transparent 34%),radial-gradient(circle at 90% -10%,rgba(30,245,154,.08),transparent 36%),var(--color-bg-primary);color:var(--color-text-primary);font-family:Inter,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg-surface)}::-webkit-scrollbar-thumb{background:#355043;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#466458}}@layer components{.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.page-title{margin:0;font-size:1.28rem;font-weight:800;letter-spacing:.2px;color:var(--color-text-primary)}.section-subtitle{margin:6px 0 0;font-size:.86rem;color:var(--color-text-muted)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:0 1rem;border-radius:10px;font-size:.875rem;font-weight:700;transition:all .15s ease;background:linear-gradient(145deg,var(--color-accent),var(--color-accent-soft));color:#000;border:0;cursor:pointer;box-shadow:0 8px 20px #00e6763d}.btn-primary:hover{transform:translateY(-1px);filter:brightness(1.03)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-danger{@apply inline-flex items-center gap-2 px-4 py-2 rounded-lg font-semibold text-sm transition-all;background:var(--color-danger);color:#fff;border:0}.btn-danger:hover{background:#c33}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:0 1rem;border-radius:10px;font-size:.875rem;font-weight:700;transition:all .15s ease;cursor:pointer;border:1px solid var(--color-accent);color:var(--color-accent);background:#00e6760a}.btn-ghost:hover{background:var(--color-accent-muted);transform:translateY(-1px)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:0 1rem;border-radius:10px;font-size:.875rem;font-weight:700;transition:all .15s ease;cursor:pointer;background:#1b2621;color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:#23312b}.btn-block{width:100%;justify-content:center;padding-top:.72rem;padding-bottom:.72rem}.btn-sm{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;font-size:.78rem;border-radius:9px;white-space:nowrap}.action-group{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}.action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:8px;font-size:.74rem;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.action-btn--primary{background:linear-gradient(145deg,var(--color-accent),var(--color-accent-soft));color:#000;box-shadow:0 4px 14px #00e67633}.action-btn--ghost{background:#00e6760f;border-color:#00e67673;color:var(--color-accent)}.action-btn--ghost:hover{background:#00e67624}.action-btn--muted{background:#1b2621;border-color:var(--color-border);color:var(--color-text-primary)}.action-btn--muted:hover{background:#23312b}.action-btn--danger{background:#ff44441f;border-color:#ff444473;color:#ff6b6b}.action-btn--danger:hover{background:#f443}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;z-index:500;display:flex;justify-content:flex-end;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.drawer-panel{width:min(460px,100vw);background:linear-gradient(180deg,#141d19,#101713);border-left:1px solid #2a4035;display:flex;flex-direction:column;height:100%;box-shadow:-12px 0 40px #00000073}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--color-border)}.drawer-header h3{margin:0;font-size:1.05rem;font-weight:800;color:var(--color-text-primary)}.drawer-body{padding:24px;flex:1;overflow-y:auto}.drawer-footer{display:flex;gap:10px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--color-border);margin-top:8px}.drawer-close{background:#ffffff0a;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;width:32px;height:32px;border-radius:8px}.field-error{color:var(--color-danger);font-size:.78rem;margin-top:4px}.field{margin-bottom:18px}.empty-state{padding:48px 24px;text-align:center;color:var(--color-text-muted);font-size:.9rem}.table-wrap{overflow-x:auto}.card-table{padding:0;overflow:hidden}.card-table .empty-state{padding:48px 24px}.card-table .card-header{padding:16px 20px;margin-bottom:0;border-bottom:1px solid var(--color-border)}.card{background:linear-gradient(180deg,#101613f2,#0d1210f2);border:1px solid var(--color-border);border-radius:14px;padding:1.5rem;box-shadow:var(--shadow-soft)}.card-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--color-border)}.card-title{font-size:.95rem;font-weight:700;color:var(--color-text-primary)}.form-input,input.form-input,select.form-input,textarea.form-input{display:block;width:100%;min-height:42px;padding:.65rem .9rem;border-radius:10px;font-size:.875rem;line-height:1.4;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;background:#121a17!important;border:1px solid #31463c!important;color:var(--color-text-primary)!important;box-shadow:inset 0 1px #ffffff08}textarea.form-input{min-height:96px;resize:vertical;padding-top:.75rem}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:2.25rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2395aca0' d='M6 8L1 3h10z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right .85rem center!important}select.form-input option{background:#121a17;color:var(--color-text-primary)}input[type=date].form-input,input[type=number].form-input{color-scheme:dark}.form-input:focus{border-color:var(--color-accent)!important;box-shadow:0 0 0 3px #00e67629!important}.form-input::placeholder{color:var(--color-text-dim);opacity:1}.form-label{display:block;margin-bottom:.45rem;font-size:.82rem;font-weight:600;color:var(--color-text-muted)}.filter-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:16px}.data-table{width:100%;border-collapse:collapse;font-size:.875rem;table-layout:fixed}.data-table thead tr{background:#131c18;border-bottom:1px solid var(--color-border)}.data-table thead th{padding:.85rem 1rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent);vertical-align:middle}.data-table tbody tr{border-bottom:1px solid var(--color-border);transition:background .18s}.data-table tbody tr:nth-child(odd){background:#101613}.data-table tbody tr:nth-child(2n){background:#131b17}.data-table tbody tr:hover{background:#00e67614}.data-table tbody td{padding:.85rem 1rem;color:var(--color-text-primary);vertical-align:middle;overflow:hidden;text-overflow:ellipsis}.col-left{text-align:left}.col-center{text-align:center}.col-right{text-align:right}.col-num{text-align:right;font-variant-numeric:tabular-nums}.col-actions{text-align:right;width:280px}.pill-panel{border:1px solid #2a4035;border-radius:14px;background:linear-gradient(180deg,#121a17f2,#0d1411f2);box-shadow:var(--shadow-soft)}}
