@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=JetBrains+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0c0c0e;--bg-surface: #161618;--bg-elevated: #1e1e21;--bg-hover: rgba(255, 255, 255, .05);--bg-active: rgba(255, 255, 255, .08);--bg-inset: #121214;--border: rgba(255, 255, 255, .09);--border-hover: rgba(255, 255, 255, .14);--border-active: rgba(255, 255, 255, .2);--text: #ededf0;--text-secondary: #9b9ba1;--text-muted: #6e6e76;--primary: #0090ff;--primary-hover: #3b9eff;--primary-subtle: rgba(0, 144, 255, .08);--danger: #e5484d;--danger-subtle: rgba(229, 72, 77, .08);--success: #30a46c;--success-subtle: rgba(48, 164, 108, .08);--warning: #f5a623;--warning-subtle: rgba(245, 166, 35, .08);--radius: 6px;--radius-sm: 4px;--radius-lg: 8px;--radius-xl: 12px;--transition: .12s ease;--transition-slow: .2s ease;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .6);--font: "DM Sans", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace}html,body{height:100%;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--text)}button{cursor:pointer;font:inherit;border:none;border-radius:var(--radius);padding:.45rem .85rem;transition:all var(--transition);font-weight:500;font-size:.8125rem;line-height:1.4}button:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:focus-visible{box-shadow:0 0 0 3px #0090ff40}.btn-secondary{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-active);border-color:var(--border-hover);color:var(--text)}.btn-danger{background:var(--danger-subtle);color:var(--danger);border:1px solid rgba(229,72,77,.12)}.btn-danger:hover:not(:disabled){background:#e5484d24;border-color:#e5484d3d}.btn-ghost{background:transparent;color:var(--text-muted);padding:.4rem .65rem}.btn-ghost:hover{color:var(--text-secondary);background:var(--bg-hover)}input,textarea,select{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .75rem;width:100%;outline:none;transition:border-color var(--transition),box-shadow var(--transition);font-size:.8125rem;line-height:1.5}input:hover,textarea:hover,select:hover{border-color:var(--border-hover)}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0090ff14}input::placeholder,textarea::placeholder{color:var(--text-muted)}textarea{resize:vertical;min-height:72px}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%238b8b8f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;transition:border-color var(--transition)}.badge{display:inline-flex;align-items:center;font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:999px;letter-spacing:.01em;line-height:1.6}.badge-low{background:#0090ff14;color:#52a8ff}.badge-medium{background:#f5a62314;color:#f5a623}.badge-high{background:#ff873c14;color:#ff873c}.badge-critical{background:#e5484d14;color:#e5484d}.badge-open{background:#0090ff14;color:#52a8ff}.badge-in_progress{background:#f5a62314;color:#f5a623}.badge-done{background:#30a46c14;color:#30a46c}.avatar{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;color:#fff;flex-shrink:0}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{font-size:.75rem;color:var(--text-muted);font-weight:500}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}::selection{background:#0090ff4d;color:#fff}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.admin-page{padding:1.5rem 2rem;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;animation:fadeIn .2s ease}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-header-left{display:flex;flex-direction:column;gap:.25rem}.page-title{font-size:1.25rem;font-weight:700;letter-spacing:-.03em;color:var(--text)}.page-desc{font-size:.8125rem;color:var(--text-muted)}.section-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition)}.section-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);background:var(--bg-inset)}.section-title{font-size:.8125rem;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.section-count{font-size:.6875rem;font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-hover);padding:.1rem .45rem;border-radius:999px}.section-body{padding:1.25rem}.data-table{width:100%;border-collapse:collapse}.data-table thead th{font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:.6rem 1rem;text-align:left;background:var(--bg-inset);border-bottom:1px solid var(--border)}.data-table tbody td{padding:.65rem 1rem;font-size:.8125rem;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.data-table .col-actions{width:50px;text-align:right}.inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.inline-form-full{grid-column:1 / -1}.form-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding-top:.5rem;grid-column:1 / -1}.alert{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;border-radius:var(--radius);font-size:.8125rem;font-weight:500}.alert-error{background:var(--danger-subtle);color:var(--danger);border:1px solid rgba(229,72,77,.12)}.alert-success{background:var(--success-subtle);color:var(--success);border:1px solid rgba(48,164,108,.12)}.alert-warning{background:var(--warning-subtle);color:var(--warning);border:1px solid rgba(245,166,35,.12)}.delete-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);padding:0;background:transparent;color:var(--text-muted);opacity:0;transition:all var(--transition)}tr:hover .delete-btn,.table-row:hover .delete-btn,.delete-btn:focus-visible{opacity:1}.delete-btn:hover{color:var(--danger);background:var(--danger-subtle)}.status-indicator{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:500}.status-indicator:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-indicator.active:before{background:var(--success)}.status-indicator.inactive:before{background:var(--text-muted)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1rem;color:var(--text-muted);font-size:.8125rem}.empty-state svg{opacity:.3}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
