@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Manrope:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700;800&display=swap";:root{--bg: #0B0D10;--steel-1: #20242B;--steel-2: #2C313A;--steel-3: #3B424E;--amber: #FFB454;--amber-bright: #FFD08A;--text-hi: #F1F3F5;--text-mid: #8B929C;--text-low: #4B5058;--theme-color: #FFB454;--theme-rgb: 255, 180, 84;--bg-dark: #0B0D10;--bg-black: #0B0D10;--bg-card: rgba(20, 22, 26, .78);--bg-card-solid: #14171C;--bg-input: rgba(10, 11, 13, .85);--bg-hover: rgba(255, 180, 84, .14);--border-subtle: rgba(255, 180, 84, .18);--border-hover: rgba(255, 180, 84, .55);--border-active: #FFB454;--primary-neon: #FFB454;--primary-red: #FFB454;--primary-blue: #FFD08A;--alert-red: #FF4D4D;--warning-yellow: #FFB454;--signal-green: #FFB454;--text-main: #F1F3F5;--text-muted: #8B929C;--text-dim: #4B5058;--font-sans: "Space Grotesk", "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-2xl: 20px;--radius-xl: 14px;--radius-lg: 10px;--radius-md: 8px;--radius-pill: 9999px;--ease-spring: cubic-bezier(.16, 1, .3, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:rgba(255,180,84,.4) rgba(11,13,16,.95)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0b0d10f2;border-radius:9999px}::-webkit-scrollbar-thumb{background:#ffb45459;border-radius:9999px;border:1px solid rgba(255,180,84,.15);transition:background .25s var(--ease-spring)}::-webkit-scrollbar-thumb:hover{background:#ffb454;box-shadow:0 0 12px #ffb454}::-webkit-scrollbar-corner{background:transparent}html{scroll-behavior:smooth;overflow-y:scroll}html,body{width:100%;min-height:100vh;background-color:var(--bg-dark);background-image:radial-gradient(ellipse 1400px 900px at 50% 45%,#14171C,var(--bg-dark));color:var(--text-main);font-family:var(--font-sans);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color .35s var(--ease-spring),color .35s var(--ease-spring)}#app{width:100%;min-height:100vh}html[data-theme=light],body[data-theme=light]{--bg-dark: #F8FAFC;--bg-black: #F1F5F9;--bg-card: rgba(255, 255, 255, .95);--bg-card-solid: #FFFFFF;--bg-input: #F1F5F9;--bg-hover: #E2E8F0;--border-subtle: rgba(255, 180, 84, .28);--border-hover: rgba(255, 180, 84, .65);--border-active: #D97706;--primary-neon: #D97706;--primary-red: #D97706;--text-main: #0F172A;--text-muted: #475569;--text-dim: #64748B;background-color:#f8fafc!important;background-image:none!important;color:#0f172a!important}body[data-theme=light] .bg-mesh-overlay{background-image:linear-gradient(to right,rgba(217,119,6,.08) 1px,transparent 1px),linear-gradient(to bottom,rgba(217,119,6,.08) 1px,transparent 1px)}body[data-theme=light] .app-navbar{background:#fffffff0;border-color:#ffb45459;box-shadow:0 10px 30px #0f172a0f}body[data-theme=light] .brand-title{color:#d97706}body[data-theme=light] .key-pill{background:#d9770614;border-color:#d977064d;color:#d97706}body[data-theme=light] .segmented-control{background:#f1f5f9;border-color:#ffb45459}body[data-theme=light] .segmented-option{color:#475569}body[data-theme=light] .segmented-option.active{background:linear-gradient(135deg,#ffd08a,#ffb454)!important;color:#2a1b08!important;box-shadow:0 0 12px #d9770666}body[data-theme=light] .btn-subtle{border-color:#ffb45459;color:#475569}body[data-theme=light] .btn-subtle:hover{color:#0f172a;border-color:#d97706;background:#f1f5f9}body[data-theme=light] .admin-login-card,body[data-theme=light] .stat-card,body[data-theme=light] .table-container,body[data-theme=light] .modal-card{background:#fffffff5;border-color:#ffb45459;box-shadow:0 15px 40px #0f172a0f;color:#0f172a}body[data-theme=light] .data-table th{background-color:#f1f5f9;color:#475569;border-color:#ffb45440}body[data-theme=light] .data-table td{border-color:#ffb45440;color:#0f172a}body[data-theme=light] .data-table tr:hover td{background-color:#f1f5f9}body[data-theme=light] .form-input,body[data-theme=light] .search-input{background-color:#fff;border-color:#ffb45459;color:#0f172a}body[data-theme=light] .form-input:focus,body[data-theme=light] .search-input:focus{border-color:#d97706;box-shadow:0 0 15px #d9770640}body[data-theme=light] .btn-primary{background:linear-gradient(135deg,#ffd08a,#ffb454);color:#2a1b08;box-shadow:0 4px 15px #d9770659}body[data-theme=light] .btn-primary:hover{background:#ffb454}.bg-mesh-overlay{position:fixed;inset:-20%;pointer-events:none;background-size:42px 42px;background-image:radial-gradient(rgba(255,180,84,.06) 1px,transparent 1px);z-index:0;transform-origin:center center;animation:grid-zoom-out 12s cubic-bezier(.4,0,.2,1) infinite alternate;will-change:transform;opacity:1!important}@keyframes grid-zoom-out{0%{transform:scale(1.35)}to{transform:scale(1)}}.font-mono{font-family:var(--font-mono)}.text-green,.text-cyan{color:#ffb454}.text-emerald{color:#ffd08a}.text-red{color:#ff4d4d}.text-yellow{color:#ffb454}.text-muted{color:var(--text-muted)}.app-container{display:flex;flex-direction:column;min-height:100vh;justify-content:flex-start;position:relative;z-index:1}.app-navbar-wrapper{padding:1.25rem 2rem 0;position:sticky;top:0;z-index:100}.app-navbar{max-width:1400px;margin:0 auto;height:64px;background:#14161ad9;backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,180,84,.25);border-radius:var(--radius-pill);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 10px 40px #000000d9;transition:background .3s var(--ease-spring),border-color .3s var(--ease-spring)}.navbar-brand{display:flex;align-items:center;gap:.75rem}.brand-icon-img{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,180,84,.7);box-shadow:0 0 18px #ffb454b3;transition:transform .28s var(--ease-bounce)}.brand-icon-img:hover{transform:scale(1.08)}.brand-title{font-weight:900;font-size:1.2rem;letter-spacing:-.05em;color:#ffb454;text-shadow:0 0 15px rgba(255,180,84,.4)}.navbar-right{display:flex;align-items:center;gap:.75rem}.key-pill{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;padding:5px 14px;background:#ffb4541f;border:1px solid rgba(255,180,84,.4);border-radius:var(--radius-pill);color:#ffb454}.pulse-dot{width:6px;height:6px;border-radius:50%;background-color:#ffb454;box-shadow:0 0 10px #ffb454;animation:pulse-amber 1.5s infinite}@keyframes pulse-amber{0%{transform:scale(.95);opacity:.7}50%{transform:scale(1.25);opacity:1}to{transform:scale(.95);opacity:.7}}.btn-subtle{background:transparent;border:1px solid var(--border-subtle);color:var(--text-muted);font-family:var(--font-sans);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;padding:.5rem 1.15rem;border-radius:var(--radius-pill);cursor:pointer;transition:all .25s var(--ease-spring);display:inline-flex;align-items:center;gap:.35rem}.btn-subtle:hover{color:#fff;border-color:var(--primary-neon);background:var(--bg-hover);box-shadow:0 0 15px #ffb4544d;transform:translateY(-1px)}.segmented-control{position:relative;display:inline-flex;background:var(--bg-input);padding:4px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);gap:4px;transition:background .3s var(--ease-spring)}.segmented-indicator{position:absolute;top:4px;height:calc(100% - 8px);background:linear-gradient(135deg,#ffd08a,#ffb454);border-radius:var(--radius-pill);box-shadow:0 0 20px #ffb45480;transition:transform .35s var(--ease-bounce),width .35s var(--ease-bounce);pointer-events:none;z-index:1}.segmented-option{position:relative;z-index:2;padding:.55rem 1.15rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);cursor:pointer;transition:color .25s var(--ease-spring);user-select:none;border:none;background:transparent!important}.segmented-option:hover{color:#fff}.segmented-option.active{color:#2a1b08!important;font-weight:900;background:transparent!important;box-shadow:none!important}.admin-login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;position:relative;z-index:1}.admin-login-card{width:100%;max-width:420px;background:var(--bg-card);backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);padding:2.75rem;box-shadow:0 25px 60px #000000f2;position:relative;overflow:hidden;transition:transform .3s var(--ease-spring)}.admin-login-card:hover{transform:translateY(-2px)}.admin-title{font-weight:900;font-size:1.8rem;margin-top:.35rem;letter-spacing:-.04em;color:#ffb454}.admin-badge{font-size:.65rem;font-weight:800;letter-spacing:.2em;padding:4px 10px;background-color:#ffb4542e;color:#ffb454;border:1px solid rgba(255,180,84,.45);border-radius:var(--radius-pill);text-transform:uppercase}.admin-container{padding:2rem;max-width:1400px;margin:0 auto;position:relative;z-index:1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1.75rem}.stat-card{background:var(--bg-card);backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);padding:1.35rem 1.6rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 10px 25px #00000080;position:relative;overflow:hidden;transition:transform .28s var(--ease-spring)}.stat-card:hover{transform:translateY(-2px)}.stat-val{font-size:1.8rem;font-weight:900;margin-top:.2rem;color:#ffb454}.stat-label{font-size:.75rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.15em}.action-bar{display:grid;grid-template-columns:280px 1fr auto;align-items:center;gap:1.25rem;margin-bottom:1.5rem;width:100%}.search-input{background-color:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-main);font-family:var(--font-mono);font-size:.85rem;padding:.75rem 1.15rem;border-radius:var(--radius-xl);width:100%;outline:none;transition:all .25s var(--ease-spring)}.search-input:focus{border-color:var(--primary-neon);box-shadow:0 0 20px #ffb45466}.segmented-control{justify-self:center}.btn-primary{justify-self:end;background:linear-gradient(135deg,#ffd08a,#ffb454);color:#2a1b08;border:none;font-family:var(--font-sans);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em;padding:.8rem 1.35rem;border-radius:var(--radius-xl);cursor:pointer;transition:all .25s var(--ease-spring);box-shadow:0 4px 20px #ffb45466}.btn-primary:hover{transform:translateY(-1px);background:#ffb454;box-shadow:0 8px 30px #ffb45499}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-danger{background-color:#ffb45424;color:#ffb454;border:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:.8rem;font-weight:700;padding:.45rem .85rem;border-radius:var(--radius-pill);cursor:pointer;transition:all .2s var(--ease-spring)}.btn-danger:hover{background-color:#ffb454;color:#2a1b08}.btn-secondary{background-color:#ffffff0a;color:var(--text-muted);border:1px solid var(--border-subtle);font-family:var(--font-sans);font-size:.8rem;font-weight:600;padding:.45rem .85rem;border-radius:var(--radius-pill);cursor:pointer;transition:all .2s var(--ease-spring)}.btn-secondary:hover{color:var(--text-main);border-color:var(--primary-neon);background-color:var(--bg-hover)}.table-container{background:var(--bg-card);backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);overflow-x:auto;height:520px;min-height:520px;max-height:520px;box-shadow:0 10px 30px #0009}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table th{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:var(--text-muted);background-color:#0a0b0dd9;padding:1rem 1.25rem;border-bottom:1px solid var(--border-subtle)}.data-table td{padding:1rem 1.25rem;border-bottom:1px solid var(--border-subtle);font-size:.85rem;transition:background .15s var(--ease-spring)}.data-table tr:hover td{background-color:var(--bg-hover)}.badge{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.7rem;font-weight:700;padding:4px 12px;border-radius:var(--radius-pill);text-transform:uppercase}.badge-active{background-color:#ffb4542e;color:#ffb454;border:1px solid rgba(255,180,84,.45)}.badge-unused{background-color:#ffd08a2e;color:#ffd08a;border:1px solid rgba(255,208,138,.45)}.badge-expired,.badge-revoked{background-color:#4b505833;color:#8b929c;border:1px solid rgba(75,80,88,.5)}.modal-backdrop{position:fixed;inset:0;background-color:#000000d9;backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;animation:modal-fade .25s var(--ease-spring)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--bg-card-solid);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);width:100%;max-width:540px;padding:2rem;box-shadow:0 25px 60px #000000f2;animation:modal-pop .3s var(--ease-bounce)}@keyframes modal-pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{font-size:1.3rem;font-weight:900;letter-spacing:-.03em;margin-bottom:1.35rem;display:flex;justify-content:space-between;align-items:center}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.4rem;color:var(--text-main)}.form-input{width:100%;background-color:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-main);font-family:var(--font-mono);font-size:.9rem;padding:.75rem 1rem;border-radius:var(--radius-xl);outline:none;transition:all .25s var(--ease-spring)}.form-input:focus{border-color:var(--primary-neon);box-shadow:0 0 20px #ffb45466}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.75rem}.preset-chip{background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-muted);padding:.45rem .85rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s var(--ease-spring);user-select:none}.preset-chip:hover{border-color:var(--border-hover);color:#fff;transform:translateY(-1px)}.preset-chip.active{background:#ffb45433;border-color:var(--primary-neon);color:#ffb454;box-shadow:0 0 15px #ffb45466}#scene{position:fixed;inset:0;width:100vw;height:100vh;perspective:1800px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 1400px 900px at 50% 45%,#14171c,#0b0d10);font-family:Space Grotesk,sans-serif;color:var(--text-hi);overflow:hidden;z-index:100}.depth-grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,180,84,.06) 1px,transparent 1px);background-size:42px 42px;transform:translateZ(-400px) scale(1.5);opacity:.5}.beam{position:absolute;width:2px;height:140%;background:linear-gradient(to bottom,transparent,rgba(255,180,84,.12),transparent);top:-20%;animation:sway 9s ease-in-out infinite}.beam.b1{left:18%;animation-delay:0s}.beam.b2{left:78%;animation-delay:3s}.beam.b3{left:50%;animation-delay:6s}@keyframes sway{0%,to{transform:translateZ(-200px) rotate(2deg)}50%{transform:translateZ(-200px) rotate(-2deg)}}#rig{position:relative;transform-style:preserve-3d;transition:transform .15s ease-out;width:460px;height:460px;display:flex;align-items:center;justify-content:center}.door{position:absolute;top:0;width:50%;height:100%;background:linear-gradient(135deg,var(--steel-3),var(--steel-1) 60%);border:1px solid rgba(255,255,255,.05);transform-style:preserve-3d;box-shadow:0 30px 70px #0009}.door.left{left:0;border-radius:230px 0 0 230px;transform-origin:left center;animation:openLeft 1.6s cubic-bezier(.55,.05,.25,1) .5s forwards}.door.right{right:0;border-radius:0 230px 230px 0;transform-origin:right center;animation:openRight 1.6s cubic-bezier(.55,.05,.25,1) .5s forwards}@keyframes openLeft{0%{transform:rotateY(0)}to{transform:rotateY(-108deg);opacity:.15}}@keyframes openRight{0%{transform:rotateY(0)}to{transform:rotateY(108deg);opacity:.15}}.door:before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,180,84,.15);border-radius:inherit}.dial{position:absolute;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--steel-3),var(--steel-1) 70%);border:2px solid rgba(255,180,84,.3);box-shadow:0 8px 24px #0009,inset 0 0 12px #00000080;animation:spinDial 1.6s ease-in .5s forwards,idleSpin 14s linear 2.1s infinite}@keyframes spinDial{0%{transform:translateZ(20px) rotate(0)}to{transform:translateZ(20px) rotate(720deg)}}@keyframes idleSpin{0%{transform:translateZ(20px) rotate(720deg)}to{transform:translateZ(20px) rotate(1080deg)}}.dial .tick{position:absolute;width:2px;height:10px;background:#ffb45480;top:4px;left:50%;margin-left:-1px;transform-origin:1px 41px}.dial .center{position:absolute;inset:32px;border-radius:50%;background:linear-gradient(145deg,var(--amber-bright),var(--amber));box-shadow:0 0 16px #ffb45480}.card{position:relative;width:380px;padding:36px 34px 30px;border-radius:16px;background:#14161ab3;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:1px solid rgba(255,180,84,.18);box-shadow:0 40px 90px -20px #000c,0 0 40px -10px #ffb4541a;transform-style:preserve-3d;opacity:0;animation:cardRise 1s cubic-bezier(.2,.9,.25,1) 1.5s forwards}@keyframes cardRise{0%{opacity:0;transform:translateZ(-60px) translateY(50px) scale(.9)}to{opacity:1;transform:translateZ(80px) translateY(0) scale(1)}}.lock-badge{width:44px;height:44px;margin:0 auto 18px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#ffb45433,#ffb4540d);border:1px solid rgba(255,180,84,.35);transform:translateZ(30px);animation:pulseGlow 3s ease-in-out infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 16px #ffb45426}50%{box-shadow:0 0 30px #ffb45466}}.card h1{text-align:center;font-size:20px;font-weight:600;margin:0 0 4px;transform:translateZ(26px);color:var(--text-hi)}.card .sub{text-align:center;font-size:11.5px;color:var(--text-mid);margin:0 0 26px;font-family:JetBrains Mono,monospace;letter-spacing:1px;text-transform:uppercase;transform:translateZ(20px)}.field{position:relative;margin-bottom:16px;transform:translateZ(18px)}.field label{display:block;font-size:10.5px;color:var(--text-mid);margin-bottom:7px;letter-spacing:1px;text-transform:uppercase;font-family:JetBrains Mono,monospace}.input-wrap{position:relative}.input-wrap svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--text-low);transition:color .25s}.input-wrap input{width:100%;padding:12px 14px 12px 40px;background:#0a0b0d99;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:var(--text-hi);font-size:13.5px;font-family:Space Grotesk,sans-serif;outline:none;transition:all .25s ease}.input-wrap input::placeholder{color:var(--text-low)}.field:focus-within label{color:var(--amber)}.field:focus-within .input-wrap svg{color:var(--amber)}.input-wrap input:focus{border-color:var(--amber);background:#0a0b0de6;box-shadow:0 0 0 3px #ffb4541f}.row-between{display:flex;align-items:center;justify-content:space-between;margin:2px 0 20px;transform:translateZ(14px);font-size:12px;color:var(--text-mid)}.remember{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none}.remember input[type=checkbox]{appearance:none;-webkit-appearance:none;width:15px;height:15px;border-radius:4px;border:1px solid rgba(255,255,255,.15);background:#0a0b0d99;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.remember input[type=checkbox]:checked{background:var(--amber);border-color:var(--amber)}.remember input[type=checkbox]:checked:after{content:"✓";font-size:10px;color:#2a1b08;font-weight:700}button.submit{width:100%;padding:13.5px;border:none;border-radius:9px;background:linear-gradient(135deg,var(--amber-bright),var(--amber));color:#2a1b08;font-weight:700;font-size:13.5px;letter-spacing:.4px;cursor:pointer;position:relative;overflow:hidden;transform:translateZ(34px);box-shadow:0 10px 28px -8px #ffb45480;transition:transform .2s ease,box-shadow .2s ease}button.submit:hover{transform:translateZ(34px) translateY(-2px);box-shadow:0 14px 34px -6px #ffb45499}button.submit:active{transform:translateZ(34px) scale(.98)}button.submit .shine{position:absolute;top:0;left:-60%;width:35%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.6),transparent);transform:skew(-20deg);animation:shine 3.4s ease-in-out infinite}@keyframes shine{0%{left:-60%}45%{left:120%}to{left:120%}}.footnote{text-align:center;margin-top:20px;font-size:11px;color:var(--text-low);font-family:JetBrains Mono,monospace;transform:translateZ(10px)}.footnote span{color:var(--text-mid)}
