@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.login-container{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw}.login-box{padding:3rem;width:100%;max-width:450px;animation:slideUp .6s cubic-bezier(.16,1,.3,1)}.login-title{font-size:2.2rem;font-weight:700;margin-bottom:.25rem;text-align:center;background:linear-gradient(to right,#ffffff,#a0a0b0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.login-subtitle{color:var(--text-muted);text-align:center;font-size:.95rem;margin-bottom:2.5rem}.login-form{display:flex;flex-direction:column}.input-group{margin-bottom:1.25rem;display:flex;flex-direction:column}.input-group label{margin-bottom:.5rem;font-size:.85rem;font-weight:600;color:#1f2937;text-transform:uppercase;letter-spacing:.5px}.input-group input{padding:.85rem 1rem;border-radius:8px;border:1px solid var(--glass-border);background:rgba(0,0,0,.15);color:var(--text-main);font-family:var(--font-family);font-size:1rem;transition:all .3s ease}.input-group input:focus{outline:none;border-color:var(--primary-color);background:rgba(0,0,0,.3);box-shadow:0 0 0 2px #6366f133}.login-btn{width:100%;margin-top:1rem;font-size:1.1rem;padding:1rem;text-align:center;justify-content:center}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.admin-container{display:flex;height:100vh;width:100vw;max-width:100vw;overflow:hidden;padding:1.5rem;gap:1.5rem;box-sizing:border-box}.sidebar{width:280px;display:flex;flex-direction:column;padding:2rem 1.5rem;animation:slideRight .5s cubic-bezier(.16,1,.3,1)}.sidebar-logo{font-size:1.5rem;font-weight:700;margin-bottom:2rem;text-align:center;background:linear-gradient(to right,var(--text-main),var(--primary-hover));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.admin-nav{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.nav-btn{background:transparent;color:var(--text-muted);border:1px solid var(--glass-border);padding:.8rem 1.25rem;border-radius:12px;font-size:.92rem;font-weight:500;text-align:left;cursor:pointer;transition:all .3s ease;font-family:var(--font-family);display:flex;align-items:center;gap:.6rem;width:100%;min-height:44px;box-sizing:border-box}.nav-btn:hover{background:rgba(0,0,0,.05);color:var(--text-main)}.nav-btn.active{background:rgba(2,132,199,.1);color:var(--primary-hover);border:1px solid rgba(2,132,199,.3);box-shadow:0 4px 12px #0284c71a}.admin-submenu{display:flex;flex-direction:column;gap:.4rem;padding-left:1rem}.nav-btn-sub{font-size:.85rem;min-height:38px;padding:.6rem 1rem;border-radius:8px}.sidebar-footer{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.sidebar-user{padding:.6rem .75rem;background:rgba(0,0,0,.04);border-radius:8px;border:1px solid var(--glass-border)}.sidebar-user-name{font-size:.85rem;font-weight:700;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.1rem}.logout-btn:hover{background:rgba(0,0,0,.05);color:var(--text-main)}.admin-content{flex:1 1 0;min-width:0;display:flex;flex-direction:column;animation:fadeIn .8s ease;min-height:0;overflow:hidden}.content-box{padding:2rem;flex:1 1 0;min-height:0;min-width:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}@keyframes slideRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.user-management{display:flex;flex-direction:column}.header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.header-actions h2{font-size:1.8rem;font-weight:600;margin-bottom:.25rem}.subtitle{color:var(--text-muted);font-size:.95rem}.add-user-btn{padding:.75rem 1.5rem;font-size:.95rem}.table-container{border-radius:12px;border:1px solid var(--glass-border);background:rgba(255,255,255,.5);flex-grow:1;overflow-x:auto}.users-table{width:100%;border-collapse:collapse;text-align:left}.users-table th,.users-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--glass-border)}.users-table th{color:var(--text-muted);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;background:rgba(255,255,255,.92);position:sticky;top:var(--sticky-thead-top, 0px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.users-table tr:last-child td{border-bottom:none}.users-table tr{transition:background .3s ease}.users-table tbody tr:hover{background:rgba(0,0,0,.04)}.status-badge{padding:.35rem .85rem;border-radius:20px;font-size:.8rem;font-weight:600}.status-badge.active{background:rgba(16,185,129,.15);color:#059669;border:1px solid rgba(16,185,129,.3)}.status-badge.blocked{background:rgba(239,68,68,.15);color:#ef4444;border:1px solid rgba(239,68,68,.3)}.role-badge{font-size:.85rem;color:var(--text-main);background:rgba(0,0,0,.05);padding:.35rem .75rem;border-radius:6px;font-weight:500}.action-btn{display:inline-flex;align-items:center;gap:.3rem;background:transparent;border:1px solid var(--glass-border);border-radius:6px;padding:.25rem .6rem;font-family:var(--font-family);font-size:.78rem;font-weight:500;color:var(--text-main);cursor:pointer;justify-content:center;white-space:nowrap;text-transform:none;letter-spacing:normal;transition:background .2s ease,border-color .2s ease}.action-btn:hover:not(:disabled){background:rgba(0,0,0,.04)}.action-btn.danger,.action-btn.toggle,.action-btn.delete{border-color:#ef444466;color:#ef4444}.action-btn.danger:hover:not(:disabled),.action-btn.toggle:hover:not(:disabled),.action-btn.delete:hover:not(:disabled){background:rgba(239,68,68,.06)}.action-btn.edit{color:var(--text-main);border-color:var(--glass-border)}.action-btn.edit:hover:not(:disabled){background:rgba(0,0,0,.04)}.dictionary-container{display:flex;flex-direction:column}.dictionary-layout{display:flex;gap:2rem;flex-grow:1;overflow:hidden;margin-top:1rem}.dict-sidebar{width:320px;display:flex;flex-direction:column;padding-right:1.5rem}.dict-list{list-style:none;overflow-y:auto;flex-grow:1;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.dict-item{padding:1.25rem;border-radius:12px;cursor:pointer;transition:all .2s ease;border:1px solid var(--glass-border);background:rgba(255,255,255,.7)}.dict-item:hover{background:rgba(0,0,0,.05)}.dict-item.active{background:rgba(2,132,199,.1);border:1px solid rgba(2,132,199,.3);box-shadow:0 4px 12px #0284c71a}.dict-title{font-weight:600;margin-bottom:.35rem;color:var(--text-main);font-size:1.05rem}.dict-desc{font-size:.85rem;color:var(--text-muted);line-height:1.4}.add-dict-btn{background:transparent;border:1px dashed var(--glass-border);color:var(--text-muted);width:100%;padding:1rem}.add-dict-btn:hover{background:rgba(0,0,0,.05);border-color:var(--primary-hover);color:var(--primary-hover);box-shadow:none}.dict-content{flex-grow:1;display:flex;flex-direction:column;overflow:hidden;border-left:1px solid var(--glass-border);padding-left:2rem}.dict-content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dict-content-header h3{font-size:1.2rem;font-weight:500;color:var(--text-muted)}.add-val-btn{padding:.6rem 1.25rem;font-size:.95rem}.code-font{font-family:monospace;color:var(--primary-hover);background:rgba(0,0,0,.05);padding:.3rem .6rem;border-radius:4px;font-size:.9rem;border:1px solid rgba(0,0,0,.1)}.sd-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99990;background:rgba(15,23,42,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:sd-backdrop-in .18s ease}@keyframes sd-backdrop-in{0%{opacity:0}to{opacity:1}}.sd-modal{width:100%;max-width:480px;border-radius:20px;overflow:hidden;animation:sd-modal-in .22s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column}@keyframes sd-modal-in{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.sd-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--glass-border);background:rgba(255,255,255,.5)}.sd-modal-header h3{display:flex;align-items:center;font-size:1rem;font-weight:700;color:var(--primary-color)}.sd-modal-id{font-size:.78rem;font-weight:500;color:var(--text-muted);background:rgba(0,0,0,.06);padding:.15rem .5rem;border-radius:20px;margin-left:.4rem}.sd-modal-close{width:30px;height:30px;border-radius:50%;border:none!important;background:transparent!important;font-size:1.25rem;line-height:1;color:var(--text-muted)!important;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.sd-modal-close:hover{background:rgba(0,0,0,.08)!important;color:var(--text-main)!important}.sd-modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.1rem;background:rgba(255,255,255,.65)}.sd-field{display:flex;flex-direction:column;gap:.35rem}.sd-field label{font-size:.82rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.sd-field input{width:100%}.sd-field-hint{font-weight:400;font-size:.78rem;color:#f59e0b;margin-left:.4rem}.sd-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--glass-border);margin-top:.25rem}.sd-spot-chip{display:inline-flex;align-items:center;justify-content:center;background:rgba(2,132,199,.1);color:var(--primary-color);border:1px solid rgba(2,132,199,.25);border-radius:6px;font-size:.78rem;font-weight:600;padding:.15rem .45rem;min-width:1.6rem}.sd-spots-preview{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin-top:.5rem;padding:.6rem .75rem;background:rgba(2,132,199,.04);border:1px solid rgba(2,132,199,.15);border-radius:8px}.sd-spots-count{font-size:.78rem;font-weight:600;color:var(--text-muted);margin-right:.25rem;white-space:nowrap}.sd-spots-inline{display:flex;flex-wrap:wrap;gap:.25rem}.facilities-management{display:flex;flex-direction:column}.table-toolbar{padding:1rem 1.5rem;display:flex;justify-content:flex-end;border-bottom:1px solid var(--glass-border)}.quantity-badge{background:rgba(99,102,241,.15);color:#818cf8;padding:.25rem .6rem;border-radius:6px;font-weight:600;border:1px solid rgba(99,102,241,.3)}.fm-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99990;background:rgba(15,23,42,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:fm-backdrop-in .18s ease}@keyframes fm-backdrop-in{0%{opacity:0}to{opacity:1}}.fm-modal{width:100%;max-width:600px;border-radius:20px;overflow:hidden;animation:fm-modal-in .22s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column}@keyframes fm-modal-in{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.fm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--glass-border);background:rgba(255,255,255,.5)}.fm-modal-header h3{display:flex;align-items:center;font-size:1rem;font-weight:700;color:var(--primary-color);gap:.35rem}.fm-modal-id{font-size:.78rem;font-weight:500;color:var(--text-muted);background:rgba(0,0,0,.06);padding:.15rem .5rem;border-radius:20px;margin-left:.4rem}.fm-modal-close{width:30px;height:30px;border-radius:50%;border:none!important;background:transparent!important;font-size:1.25rem;line-height:1;color:var(--text-muted)!important;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.fm-modal-close:hover{background:rgba(0,0,0,.08)!important;color:var(--text-main)!important}.fm-modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.1rem;background:rgba(255,255,255,.65)}.fm-field{display:flex;flex-direction:column;gap:.35rem;flex:1}.fm-field label{font-size:.82rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.fm-field input,.fm-field select{width:100%}.fm-field--wide{flex-basis:100%}.fm-field-row{display:flex;gap:1rem;flex-wrap:wrap}.fm-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--glass-border);margin-top:.25rem}.pricing-management{display:flex;flex-direction:column}.pricing-tabs{display:flex;gap:1rem;margin-bottom:2rem}.tab-btn{background:transparent;color:var(--text-muted);border:1px solid var(--glass-border);padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;transition:all .25s ease;font-weight:500;font-family:var(--font-family);font-size:.92rem}.tab-btn:hover{background:rgba(0,0,0,.04);color:var(--text-main)}.tab-btn.active{background:rgba(2,132,199,.08);color:var(--primary-hover);border:1px solid rgba(2,132,199,.35)}.table-toolbar{padding:1.25rem 1.5rem;display:flex;justify-content:flex-end;border-bottom:1px solid var(--glass-border);background:rgba(255,255,255,.5)}.date-badge{background:rgba(0,0,0,.05);padding:.4rem .8rem;border-radius:6px;font-family:monospace;color:var(--text-main);border:1px solid rgba(0,0,0,.1);font-size:.95rem;letter-spacing:.5px}.price-badge{background:rgba(16,185,129,.15);color:#34d399;padding:.4rem .85rem;border-radius:8px;font-weight:700;border:1px solid rgba(16,185,129,.3);display:inline-block;font-size:.95rem}.inline-form{display:flex;gap:1rem;align-items:stretch}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.85rem;color:var(--text-muted);font-weight:500}:root{--bg-gradient: linear-gradient(135deg, #e0e7ff 0%, #f1f5f9 100%);--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(0, 0, 0, .12);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .08);--text-main: #0f172a;--text-muted: #475569;--primary-color: #0284c7;--primary-hover: #0369a1;--accent-color: #f59e0b;--font-family: "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg-gradient);color:var(--text-main);min-height:100vh;display:flex;flex-direction:column}#root{min-height:100vh;width:100%;display:flex;flex-direction:column}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px}input,select,textarea{background:#ffffff;border:1px solid var(--glass-border);color:var(--text-main);padding:.6rem .8rem;border-radius:6px;outline:none;font-family:inherit;font-size:.95rem}input:focus,select:focus,textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #0284c733}.btn{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color);padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .25s ease;font-family:var(--font-family);font-size:.92rem;display:inline-flex;align-items:center;gap:.5rem}.btn:hover{background:rgba(2,132,199,.08);color:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px)}.btn-danger{color:#ef4444;border-color:#ef444480}.btn-danger:hover{background:rgba(239,68,68,.08);color:#dc2626;border-color:#ef4444}.btn-success{color:#10b981;border-color:#10b98180}.btn-success:hover{background:rgba(16,185,129,.08);color:#059669;border-color:#10b981}.btn-warning{color:#f59e0b;border-color:#f59e0b80}.btn-warning:hover{background:rgba(245,158,11,.08);color:#d97706;border-color:#f59e0b}.btn-muted{color:var(--text-muted);border-color:var(--glass-border)}.btn-muted:hover{background:rgba(0,0,0,.04);color:var(--text-main)}.admin-content button{background:transparent!important;box-shadow:none!important;color:var(--text-main)!important;border-color:var(--glass-border)!important;font-family:var(--font-family)!important;font-weight:500!important;text-transform:none!important;letter-spacing:normal!important;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.admin-content button.btn-solid-blue{background:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important;padding:.5rem 1rem;border-radius:6px}.admin-content button.btn-solid-blue:hover:not(:disabled){background:var(--primary-hover)!important}.admin-content button.btn-solid-red{background:#ef4444!important;color:#fff!important;border-color:#ef4444!important;padding:.5rem 1rem;border-radius:6px}.admin-content button.btn-solid-red:hover:not(:disabled){background:#dc2626!important}.admin-content button:hover:not(:disabled){background:rgba(0,0,0,.04)!important}.admin-content button:disabled{opacity:.4;cursor:not-allowed}.admin-content .tab-btn.active{background:rgba(2,132,199,.07)!important;color:var(--primary-color)!important;border-color:#0284c759!important}.admin-content button.tab-active-indigo{background:#6366f1!important;color:#fff!important;border-color:#6366f1!important;box-shadow:0 4px 14px #6366f166!important}.admin-content button.tab-active-amber{background:#f59e0b!important;color:#fff!important;border-color:#f59e0b!important;box-shadow:0 4px 14px #f59e0b66!important}.admin-content button.tab-active-green{background:#10b981!important;color:#fff!important;border-color:#10b981!important;box-shadow:0 4px 12px #10b98166!important}.admin-content button[style*="2px solid"]{border-width:2px!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.print-page{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:11pt;line-height:1.5;color:#000;background:#fff;padding:10mm;margin:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-page table{width:100%;border-collapse:collapse;font-size:9pt;page-break-inside:auto}.print-page table th{background:#e8e8e8;color:#000;font-weight:700;padding:5pt 6pt;border:1px solid #bbb;font-size:8pt;text-transform:uppercase;letter-spacing:.3px;text-align:center}.print-page table td{padding:4pt 6pt;border:1px solid #ccc;color:#000;font-size:9pt;vertical-align:middle}.print-page table tbody tr:nth-child(2n){background:#f8f8f8}.print-page table tfoot td{font-weight:700;border-top:2px solid #000;background:#f0f0f0;font-size:9pt}.print-page table tr{page-break-inside:avoid}.print-page .print-footer{display:block;margin-top:15pt;padding-top:8pt;border-top:1px solid #ccc;font-size:7pt;color:#888;text-align:center}.print-page .print-signatures{display:flex;justify-content:space-between;margin-top:30pt;padding-top:5pt}.print-page .print-signatures .signature-line{width:35%;border-top:1px solid #000;padding-top:4pt;text-align:center;font-size:8pt;color:#555}@media print{@page{size:A4;margin:10mm}.print-page{padding:0}}
