@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap";@keyframes spin-sm{to{transform:rotate(360deg)}}.spinning-sm{animation:spin-sm .8s linear infinite}:root{--color-bg-base: #0f172a;--color-bg-surface: rgba(30, 41, 59, .7);--color-bg-elevated: rgba(51, 65, 85, .8);--color-text-primary: #f8fafc;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-accent-primary: #3b82f6;--color-accent-hover: #2563eb;--color-accent-glow: rgba(59, 130, 246, .5);--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-border: rgba(255, 255, 255, .1);--color-border-hover: rgba(255, 255, 255, .2);--font-sans: "Inter", system-ui, sans-serif;--font-heading: "Outfit", system-ui, sans-serif;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-glow: 0 0 15px var(--color-accent-glow);--blur-glass: blur(12px);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1)}@media (prefers-color-scheme: light){:root{--color-bg-base: #f8fafc;--color-bg-surface: rgba(255, 255, 255, .8);--color-bg-elevated: rgba(255, 255, 255, .95);--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-border: rgba(0, 0, 0, .1);--color-border-hover: rgba(0, 0, 0, .2)}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--color-bg-base);color:var(--color-text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;background-image:radial-gradient(at 0% 0%,rgba(59,130,246,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(16,185,129,.1) 0px,transparent 50%);background-attachment:fixed}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2}a{color:var(--color-accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}.glass-panel{background:var(--color-bg-surface);backdrop-filter:var(--blur-glass);-webkit-backdrop-filter:var(--blur-glass);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-sans)}.btn-primary{background-color:var(--color-accent-primary);color:#fff;box-shadow:0 0 10px #3b82f64d}.btn-primary:hover{background-color:var(--color-accent-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-bg-elevated);border-color:var(--color-border-hover)}.react-flow__node{border-radius:var(--radius-md)}.react-flow__handle{width:10px;height:10px;background-color:var(--color-text-primary);border:2px solid var(--color-bg-elevated)}.react-flow__edge-path{stroke:var(--color-text-secondary);stroke-width:2}.react-flow__controls{background:var(--color-bg-surface);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.react-flow__controls-button{background:transparent;border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.react-flow__controls-button:hover{background:var(--color-bg-elevated)}.admin-shell{display:flex;height:100vh;overflow:hidden;background:var(--color-bg-base)}.admin-sidebar{width:240px;flex-shrink:0;background:#0000004d;border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;padding:1.5rem 1rem}.admin-brand{display:flex;align-items:center;gap:.75rem;padding:.25rem .5rem 2rem;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:1.25rem}.admin-brand-icon{color:#f97316;flex-shrink:0}.admin-brand-name{display:block;font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--color-text-primary)}.admin-brand-tag{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#f97316}.admin-nav{display:flex;flex-direction:column;gap:.25rem;flex:1}.admin-nav-item{display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem;border-radius:.5rem;text-decoration:none;font-size:.9rem;font-weight:500;color:var(--color-text-secondary);transition:background .15s,color .15s}.admin-nav-item:hover{background:#ffffff0f;color:var(--color-text-primary)}.admin-nav-item.active{background:#f973161f;color:#fb923c}.admin-sidebar-footer{border-top:1px solid rgba(255,255,255,.07);padding-top:1rem;margin-top:1rem}.admin-back-link{font-size:.8125rem;color:var(--color-text-muted);text-decoration:none;transition:color .15s}.admin-back-link:hover{color:var(--color-text-secondary)}.admin-main{flex:1;overflow-y:auto;padding:2rem 2.5rem}.admin-page-header{margin-bottom:2rem}.admin-page-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.25rem}.admin-page-sub{font-size:.875rem;color:var(--color-text-secondary)}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.admin-stat-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.875rem;padding:1.25rem}.admin-stat-value{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-text-primary);line-height:1;margin-bottom:.375rem}.admin-stat-label{font-size:.8125rem;color:var(--color-text-secondary)}.admin-table-wrap{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:.875rem;overflow:hidden}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th{text-align:left;padding:.75rem 1.25rem;background:#ffffff08;color:var(--color-text-secondary);font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.07);white-space:nowrap}.admin-table td{padding:.875rem 1.25rem;color:var(--color-text-secondary);border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#ffffff05;color:var(--color-text-primary)}.admin-td-primary{font-weight:600;color:var(--color-text-primary)!important}.admin-td-mono{font-family:monospace;font-size:.8125rem}.admin-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:600;padding:.2rem .5rem;border-radius:2rem}.badge-green{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.25)}.badge-blue{background:#3b82f61f;color:#60a5fa;border:1px solid rgba(59,130,246,.25)}.badge-purple{background:#8b5cf61f;color:#a78bfa;border:1px solid rgba(139,92,246,.25)}.badge-amber{background:#f59e0b1f;color:#fbbf24;border:1px solid rgba(245,158,11,.25)}.badge-red{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.25)}.badge-gray{background:#ffffff0f;color:var(--color-text-muted);border:1px solid rgba(255,255,255,.1)}.admin-action-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:.375rem;padding:.3rem .75rem;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-sans);transition:background .15s,color .15s}.admin-action-btn:hover{background:#ffffff1a;color:var(--color-text-primary)}.admin-action-btn-primary{background:#3b82f626;border-color:#3b82f64d;color:#60a5fa}.admin-action-btn-primary:hover{background:#3b82f640;color:#93c5fd}.admin-loading{display:flex;align-items:center;justify-content:center;padding:4rem;color:var(--color-text-muted);font-size:.9375rem}.admin-empty{padding:3rem;text-align:center;color:var(--color-text-muted);font-size:.9375rem}.admin-section-title{font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.875rem}
