@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--primary: #6366f1;--primary-hover: #4f46e5;--bg-dark: #0f172a;--bg-card: rgba(30, 41, 59, .5);--glass-border: rgba(255, 255, 255, .08);--text-main: #f8fafc;--text-dim: #94a3b8;--success: #10b981;--danger: #ef4444;--accent: #c084fc;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}body{margin:0;font-family:Outfit,sans-serif;background-color:var(--bg-dark);background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.15) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(192,132,252,.15) 0px,transparent 50%);color:var(--text-main);min-height:100vh;-webkit-font-smoothing:antialiased}.admin-container{max-width:1100px;margin:0 auto;padding:60px 20px}.header{text-align:center;margin-bottom:60px;animation:fadeInDown .8s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header h1{font-size:3.5rem;font-weight:800;margin:0;letter-spacing:-.03em;background:linear-gradient(135deg,#fff,#a5b4fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header p{color:var(--text-dim);font-size:1.25rem;margin:15px 0 40px}.nav-buttons{display:inline-flex;background:#0000004d;padding:6px;border-radius:16px;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-btn{padding:12px 30px;border:none;background:transparent;color:var(--text-dim);font-weight:600;font-size:1rem;cursor:pointer;border-radius:12px;transition:var(--transition)}.nav-btn.active{background:var(--primary);color:#fff;box-shadow:0 4px 20px #6366f166}.card{background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:28px;padding:40px;box-shadow:0 20px 50px #0000004d;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}h2{font-size:2rem;font-weight:700;margin:0 0 35px;display:flex;align-items:center;gap:15px}.key-form{display:flex;flex-direction:column;gap:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.input-group{display:flex;flex-direction:column;gap:10px}label{font-size:.95rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}input{background:#0003;border:2px solid var(--glass-border);border-radius:14px;padding:16px 20px;color:#fff;font-size:1.1rem;transition:var(--transition)}input:focus{outline:none;border-color:var(--primary);background:#0000004d;box-shadow:0 0 0 4px #6366f126}.key-display-group{display:flex;gap:15px}.key-display-group input{flex:1;font-family:JetBrains Mono,monospace;letter-spacing:.1em;font-weight:700;color:var(--accent)}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,#4f46e5 100%);color:#fff;border:none;border-radius:14px;padding:18px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:var(--transition);margin-top:10px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #6366f166}.btn-secondary{background:#ffffff0d;color:#fff;border:1px solid var(--glass-border);padding:0 25px;border-radius:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.list-card{max-width:100%}.card-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:35px;gap:20px;flex-wrap:wrap}.header-left{display:flex;flex-direction:column;gap:10px}.header-left h2{margin:0}.ca-badge{background:#c084fc1a;border:1px solid rgba(192,132,252,.2);color:var(--accent);padding:8px 16px;border-radius:12px;font-size:1.1rem;font-weight:500;width:fit-content}.ca-badge strong{font-weight:800;color:#fff}.filter-controls{display:flex;align-items:flex-end;gap:15px;background:#0003;padding:15px;border-radius:18px;border:1px solid var(--glass-border)}.date-input{display:flex;flex-direction:column;gap:6px}.date-input label{font-size:.75rem;color:var(--text-dim)}.date-input input{padding:8px 12px;font-size:.9rem;border-radius:10px;background:#0000004d}.date-text{color:var(--text-dim);font-weight:500}.btn-refresh{background:#6366f11a;color:var(--primary);border:1px solid rgba(99,102,241,.2);padding:10px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-refresh:hover{background:#6366f133}.table-wrapper{margin:0 -40px;overflow-x:auto}.user-table{width:100%;border-collapse:separate;border-spacing:0 12px;padding:0 40px}.user-table th{padding:0 20px 10px;color:var(--text-dim);text-align:left;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.05em}.user-table tbody tr{background:#ffffff05;transition:var(--transition)}.user-table tbody tr:hover{background:#ffffff0a;transform:scale(1.005)}.user-table td{padding:20px;border:1px solid transparent}.user-table td:first-child{border-radius:16px 0 0 16px;border-left:1px solid var(--glass-border);padding-left:25px}.user-table td:last-child{border-radius:0 16px 16px 0;border-right:1px solid var(--glass-border);padding-right:25px}.user-table tr td{border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border)}.client-name{font-weight:700;font-size:1.1rem;color:#fff}.phone-badge{color:var(--text-dim);font-size:.95rem;display:flex;align-items:center;gap:8px}.key-tag{color:var(--accent);font-weight:800;font-size:1.1rem}.key-cell{display:flex;align-items:center;gap:10px}.key-pill{background:#6366f11a;color:#a5b4fc;padding:8px 16px;border-radius:10px;font-family:JetBrains Mono,monospace;font-weight:600;border:1px solid rgba(99,102,241,.2)}.btn-copy{background:#ffffff0d;border:1px solid var(--glass-border);border-radius:8px;padding:8px 12px;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-dim);transition:var(--transition);display:flex;align-items:center;gap:5px;min-width:80px;justify-content:center}.btn-copy:hover{background:#ffffff1a;color:#fff;transform:scale(1.05)}.btn-copy.copied{background:#10b98126;border-color:var(--success);color:var(--success)}.status-indicator{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.9rem}.dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 10px var(--success)}.btn-delete{background:transparent;color:var(--danger);border:1px solid rgba(239,68,68,.2);padding:8px 15px;border-radius:10px;cursor:pointer;transition:var(--transition);opacity:.6}.btn-delete:hover{opacity:1;background:#ef44441a;border-color:var(--danger)}.flex-center{display:flex;justify-content:center;align-items:center;min-height:100%}.centered-card{max-width:650px;width:100%}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:28px;padding:40px;max-width:450px;width:100%;text-align:center;box-shadow:0 30px 60px #00000080;animation:modalIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes modalIn{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-icon{font-size:3rem;margin-bottom:20px}.modal-card h3{font-size:1.8rem;margin:0 0 15px;color:#fff}.modal-card p{color:var(--text-dim);font-size:1.1rem;line-height:1.6;margin-bottom:25px}.modal-input{width:100%;margin-bottom:25px;background:#0000004d!important;text-align:center;font-family:JetBrains Mono,monospace}.modal-actions{display:flex;gap:15px}.btn-modal-primary{flex:1;padding:16px;background:var(--primary);border:none;border-radius:12px;color:#fff;font-weight:700;cursor:pointer;transition:var(--transition)}.btn-modal-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.btn-modal-secondary{flex:1;padding:16px;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:12px;color:#fff;font-weight:600;cursor:pointer;transition:var(--transition)}.modal-card.confirm .btn-modal-primary{background:var(--accent)}.modal-card.revoke .btn-modal-primary{background:var(--danger)}@media(max-width:900px){.form-row{grid-template-columns:1fr}}@media(max-width:600px){.admin-container{padding:30px 15px}.header h1{font-size:2.5rem}.user-table thead{display:none}.user-table tbody tr{display:block;margin-bottom:25px;padding:15px;border-radius:20px;border:1px solid var(--glass-border)}.user-table td{display:flex;justify-content:space-between;padding:12px 10px;border:none!important}.user-table td:before{content:attr(data-label);color:var(--text-dim);font-weight:600;font-size:.85rem}.btn-delete{width:100%;margin-top:10px}.key-display-group{flex-direction:column}.btn-secondary{padding:15px}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0c0e14;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary: #6366f1;--primary-hover: #4f46e5;--bg-gradient: radial-gradient(circle at top right, #1e1b4b, #0c0e14);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--text-dim: #94a3b8;--success: #4ade80;--error: #f43f5e}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background:var(--bg-gradient);overflow:hidden}#root{width:100%}.web-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;padding:40px;width:100%;max-width:450px;box-shadow:0 25px 50px -12px #00000080;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.glass-card:hover{transform:translateY(-5px)}.header{text-align:center;margin-bottom:40px}h1{font-size:2.5rem;font-weight:800;margin:0;background:linear-gradient(to bottom right,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}p.subtitle{color:var(--text-dim);margin-top:10px}.form-group{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.input-wrapper{position:relative}input{width:100%;padding:16px 20px;background:#0003;border:1px solid var(--glass-border);border-radius:14px;color:#fff;font-size:1.1rem;transition:all .2s;box-sizing:border-box}input:focus{outline:none;border-color:var(--primary);background:#0000004d;box-shadow:0 0 0 4px #6366f11a}.btn-primary{width:100%;padding:16px;background:var(--primary);color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 10px 15px -3px #6366f14d}.btn-primary:hover{background:var(--primary-hover);transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.success-content{text-align:center;animation:fadeIn .5s ease-out}.icon-box{width:80px;height:80px;background:#4ade801a;border-radius:50%;display:flex;justify-content:center;align-items:center;margin:0 auto 24px;color:var(--success);font-size:2.5rem}.divider{height:1px;background:var(--glass-border);margin:30px 0}.link-btn{background:none;border:none;color:var(--primary);font-weight:500;cursor:pointer;padding:5px;margin-top:15px;transition:color .2s}.link-btn:hover{color:#818cf8;text-decoration:underline}.logout-btn{color:var(--error);margin-top:30px}.logout-btn:hover{color:#fb7185}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pin-change-form{margin-top:20px;text-align:left}.pin-change-form label{display:block;font-size:.9rem;color:var(--text-dim);margin-bottom:8px}.btn-row{display:flex;gap:10px;margin-top:15px}.btn-secondary{flex:1;padding:12px;background:#ffffff0d;border:1px solid var(--glass-border);color:#fff;border-radius:10px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff1a}.btn-small-primary{flex:2;padding:12px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer}.loading-spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.animate-in{animation:fadeIn .5s ease-out forwards}
