:root{--navy:#1b2a4a;--navy-deep:#0f1830;--navy-soft:#2a3b60;--steel:#2e6f95;--steel-light:#5b93b3;--gold:#c89b3c;--gold-soft:#e4c878;--gold-deep:#96731f;--surface:#f6f7fa;--card:#fff;--sunken:#eef1f5;--ink:#1b2130;--muted:#6b7280;--faint:#9ca3af;--success:#2e7d32;--success-soft:#e7f3e8;--warning:#b7791f;--warning-soft:#fbf1de;--danger:#c0392b;--danger-soft:#fbeae8;--border:rgba(27,33,48,.1);--shadow:0 1px 2px rgba(15,24,48,.06),0 1px 1px rgba(15,24,48,.04);--panel-shadow:0 12px 40px rgba(15,24,48,.12);--sidebar:240px;--radius:12px}[data-theme=dark]{--surface:#0d1324;--card:#151e33;--sunken:#11192b;--ink:#edf1fa;--muted:#a7b0c0;--faint:#7d8799;--border:rgba(255,255,255,.1);--shadow:0 1px 2px rgba(0,0,0,.3)}[x-cloak]{display:none!important}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--surface);line-height:1.5}body{margin:0;background:var(--surface);min-height:100vh}h1,h2,h3,h4{font-family:Sora,Inter,ui-sans-serif,sans-serif;margin-top:0}a{color:var(--steel);text-decoration:none}a:hover{text-decoration:none}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--navy-deep);color:#fff;display:flex;flex-direction:column;z-index:50;transition:transform .25s,width .25s}.sidebar.collapsed{width:76px}.sidebar-brand{height:74px;display:flex;align-items:center;gap:11px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,var(--gold-soft),var(--gold));color:var(--navy-deep);display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px #c89b3c40}.brand-copy{min-width:0}.brand-copy strong{display:block;font-family:Sora,sans-serif;font-size:15px}.brand-copy small{color:#ffffff80;font-size:11px}.sidebar.collapsed .brand-copy,.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-user-copy{display:none}.sidebar.collapsed .sidebar-brand,.sidebar.collapsed .nav-link,.sidebar.collapsed .sidebar-actions{justify-content:center}.sidebar-nav{padding:14px 12px;overflow-y:auto;flex:1}.nav-section{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:#ffffff59;padding:14px 10px 6px}.sidebar.collapsed .nav-section{font-size:0;height:14px}.nav-link{display:flex;align-items:center;gap:12px;color:#ffffffa6;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:650;margin:2px 0;white-space:nowrap}.nav-link:hover,.nav-link.active{background:#ffffff14;color:#fff}.nav-link.active{box-shadow:inset 3px 0 var(--gold)}.nav-icon{width:19px;text-align:center;font-size:16px}.nav-badge{margin-left:auto;background:var(--danger);color:#fff;border-radius:99px;font-size:10px;padding:1px 6px}.sidebar-footer{border-top:1px solid rgba(255,255,255,.08);padding:14px}.sidebar-user{display:flex;align-items:center;gap:10px;margin-bottom:11px}.avatar{width:34px;height:34px;border-radius:50%;background:#e4c87829;color:var(--gold-soft);display:grid;place-items:center;font-weight:800}.sidebar-user-copy strong{font-size:12px;display:block}.sidebar-user-copy small{font-size:10px;color:var(--gold-soft);text-transform:uppercase;letter-spacing:.08em}.sidebar-actions{display:flex;gap:8px}.sidebar-action{border:1px solid rgba(255,255,255,.12);background:transparent;color:#ffffffb3;border-radius:8px;min-height:34px;display:grid;place-items:center;flex:1;cursor:pointer}.sidebar-action:hover{background:#ffffff14;color:#fff}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));min-height:100vh;transition:margin-left .25s,width .25s}.main.sidebar-collapsed{margin-left:76px;width:calc(100% - 76px)}.topbar{height:74px;background:color-mix(in srgb,var(--card) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:30}.topbar h1{font-size:20px;margin:0}.topbar p{font-size:12px;color:var(--muted);margin:2px 0 0}.topbar-actions{display:flex;gap:8px;align-items:center}.icon-button{width:38px;height:38px;border-radius:9px;border:1px solid var(--border);background:var(--card);color:var(--muted);display:grid;place-items:center;cursor:pointer}.icon-button:hover{color:var(--navy);border-color:var(--steel-light)}.mobile-menu{display:none}.page{padding:26px 30px 40px;max-width:1680px;margin:0 auto}.page-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:20px}.page-header h2{font-size:24px;margin:0 0 4px}.page-header p{margin:0;color:var(--muted);font-size:13px}.page-actions{display:flex;flex-wrap:wrap;gap:9px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-header{padding:17px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:15px}.card-header h3{font-size:15px;margin:0}.card-body{padding:20px}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.stat-card{padding:18px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:var(--stat-color,var(--steel));opacity:.07;right:-25px;top:-28px}.stat-label{font-size:12px;color:var(--muted);font-weight:650}.stat-value{font-family:Sora,sans-serif;font-size:30px;font-weight:800;margin-top:5px;color:var(--stat-color,var(--navy))}.stat-foot{font-size:11px;color:var(--faint);margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:16px;margin-top:16px}.chart-box{height:310px}.metric-list{display:grid;gap:10px}.metric-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.metric-item:last-child{border:0}.metric-item strong{font-size:13px}.metric-item span{font-weight:800;color:var(--navy)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:39px;padding:8px 14px;border-radius:8px;border:1px solid transparent;font-size:13px;font-weight:700;cursor:pointer;transition:.15s;text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-soft);color:#fff}.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--border)}.btn-secondary:hover{background:var(--sunken);color:var(--ink)}.btn-gold{background:var(--gold);color:var(--navy-deep)}.btn-danger{background:var(--danger);color:#fff}.btn-success{background:var(--success);color:#fff}.btn-sm{min-height:31px;padding:5px 10px;font-size:11px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.link-danger{color:var(--danger)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group{display:grid;gap:6px}.form-group.full{grid-column:1/-1}.form-label{font-size:12px;font-weight:750;color:var(--ink)}.form-help{font-size:11px;color:var(--muted)}.input,.select,.textarea{width:100%;border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:13px;min-height:41px}.input:focus,.select:focus,.textarea:focus{border-color:var(--steel);box-shadow:0 0 0 3px #2e6f9524;outline:0}.textarea{min-height:95px;resize:vertical}.input-error{border-color:var(--danger)}.error-text{font-size:11px;color:var(--danger)}.checkbox{display:flex;align-items:flex-start;gap:9px;font-size:13px}.checkbox input{margin-top:3px;accent-color:var(--navy)}.field-row{display:flex;gap:10px;align-items:end}.field-row>*{flex:1}.alert{border-radius:9px;padding:11px 14px;margin-bottom:16px;font-size:13px;border:1px solid transparent;display:flex;gap:10px;align-items:flex-start}.alert-success{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb,var(--success) 20%,transparent)}.alert-warning{background:var(--warning-soft);color:var(--warning)}.alert-danger{background:var(--danger-soft);color:var(--danger)}.status-badge{display:inline-flex;align-items:center;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:800;white-space:nowrap}.status-confirmed,.status-active,.status-approved,.status-owned{background:var(--success-soft);color:var(--success)}.status-pending,.status-locked,.status-suspended,.status-unprinted{background:var(--warning-soft);color:var(--warning)}.status-rejected,.status-deactivated{background:var(--danger-soft);color:var(--danger)}.status-unowned{background:var(--sunken);color:var(--muted)}.ticket-stub{display:inline-flex;align-items:center;border:1px dashed rgba(150,115,31,.45);background:#e4c87829;border-radius:6px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:750;color:var(--navy)}.table-card{padding:5px 16px 16px;overflow:hidden}.table-toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:13px 2px}.filter-row{display:flex;gap:8px;flex-wrap:wrap}.table-responsive{overflow:auto}.dataTable{width:100%!important;border-collapse:separate!important;border-spacing:0!important}.dataTable thead th{background:var(--sunken)!important;color:var(--muted)!important;text-transform:uppercase;font-size:10px!important;letter-spacing:.07em;padding:11px!important;border-bottom:1px solid var(--border)!important}.dataTable tbody td{font-size:12px;padding:12px 11px!important;border-bottom:1px solid var(--border)!important;color:var(--ink)!important;background:var(--card)!important}.dataTable tbody tr:hover td{background:color-mix(in srgb,var(--sunken) 60%,var(--card))!important}.dt-container{color:var(--ink);font-size:12px}.dt-container .dt-search input,.dt-container .dt-length select{border:1px solid var(--border)!important;background:var(--card)!important;color:var(--ink)!important;border-radius:7px!important;padding:6px 9px!important}.dt-container .dt-paging .dt-paging-button{border:0!important;border-radius:6px!important;color:var(--muted)!important}.dt-container .dt-paging .dt-paging-button.current{background:var(--navy)!important;color:#fff!important}.action-group{display:flex;gap:5px;white-space:nowrap}.action-link{font-size:11px;font-weight:750;border:1px solid var(--border);border-radius:6px;padding:4px 7px;color:var(--ink);background:var(--card)}.action-link:hover{background:var(--sunken)}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.definition dt{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.definition dd{margin:3px 0 0;font-size:13px;font-weight:650}.chip-list{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:10px;border-radius:99px;background:var(--sunken);padding:4px 8px;color:var(--ink)}.settings-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px}.settings-nav{padding:10px}.settings-link{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:7px;color:var(--muted);font-size:12px;font-weight:700}.settings-link.active,.settings-link:hover{background:var(--sunken);color:var(--navy)}.privilege-module{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:12px}.privilege-module-header{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;background:var(--sunken)}.privilege-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--border)}.privilege-option{background:var(--card);padding:11px 13px;display:flex;gap:9px;align-items:flex-start}.privilege-option strong{display:block;font-size:12px}.privilege-option small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.role-summary{position:sticky;top:92px}.danger-zone{border-color:#c0392b40}.danger-zone .card-header{background:var(--danger-soft);color:var(--danger)}.ticket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:8px}.ticket-cell{min-height:76px;border:1px solid var(--border);border-radius:9px;background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;position:relative}.ticket-cell.owned{border-color:#2e7d3240;background:var(--success-soft)}.ticket-cell.printed:after{content:"✓";position:absolute;right:6px;top:4px;color:var(--success);font-weight:900}.ticket-cell strong{font-family:JetBrains Mono,monospace;font-size:11px}.ticket-cell small{font-size:9px;color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-switch{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.view-switch button{border:0;background:var(--card);padding:7px 10px;color:var(--muted);cursor:pointer}.view-switch button.active{background:var(--navy);color:#fff}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:var(--surface)}.login-art{background:radial-gradient(circle at 20% 15%,rgba(200,155,60,.24),transparent 35%),linear-gradient(145deg,var(--navy-deep),var(--navy));color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:50px;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-170px;bottom:-130px;box-shadow:0 0 0 65px #ffffff06,0 0 0 130px #ffffff05}.login-art h1{font-size:42px;max-width:600px;line-height:1.12;margin-bottom:14px}.login-art p{color:#ffffffa6;max-width:540px}.login-form-wrap{display:grid;place-items:center;padding:30px}.login-card{width:min(420px,100%);padding:30px}.login-card h2{font-size:25px;margin-bottom:6px}.login-card>p{color:var(--muted);font-size:13px;margin:0 0 24px}.login-points{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;position:relative;z-index:1}.login-point{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px;background:#ffffff0a}.login-point strong{font-size:12px;display:block}.login-point small{font-size:10px;color:#ffffff80}.empty-state{text-align:center;padding:46px 20px;color:var(--muted)}.empty-state strong{display:block;color:var(--ink);margin-bottom:4px}.pagination{display:flex;gap:5px;list-style:none;padding:0}.page-link{border:1px solid var(--border);padding:6px 9px;border-radius:6px;background:var(--card);color:var(--ink)}.page-item.active .page-link{background:var(--navy);color:#fff}.page-item.disabled .page-link{opacity:.45}.overlay{display:none;position:fixed;inset:0;background:#0f18308c;z-index:40}.print-page{background:#fff;color:#111;padding:20px}.print-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.print-ticket{border:1px dashed #555;padding:15px;min-height:110px;display:flex;justify-content:space-between;align-items:center;page-break-inside:avoid}.print-ticket strong{font-family:monospace;font-size:18px}@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.detail-grid,.settings-shell{grid-template-columns:1fr}.settings-nav{display:flex;overflow:auto}.settings-link{white-space:nowrap}.role-summary{position:static}}@media(max-width:780px){.sidebar{transform:translate(-100%);width:260px!important}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand-copy,.sidebar .nav-label,.sidebar .sidebar-user-copy{display:block!important}.main,.main.sidebar-collapsed{margin-left:0;width:100%}.mobile-menu{display:grid}.topbar{padding:0 16px;height:66px}.topbar p{display:none}.page{padding:18px 14px 30px}.page-header{flex-direction:column}.stat-grid,.form-grid,.definition-grid,.privilege-grid,.login-page{grid-template-columns:1fr}.login-art{display:none}.login-form-wrap{padding:18px}.action-group{flex-wrap:wrap}.print-grid{grid-template-columns:1fr}.overlay.show{display:block}}@media print{.no-print{display:none!important}.print-page{padding:0}.print-ticket{border-color:#333}body{background:#fff}@page{size:A4;margin:10mm}}:root{--primary: #1d4ed8;--primary-dark: #1e3a8a;--primary-soft: #dbeafe;--purple: #7c3aed;--purple-soft: #ede9fe;--elevated-shadow: 0 18px 45px rgba(15, 23, 42, .1);--hover-shadow: 0 14px 32px rgba(15, 23, 42, .13);--transition-fast: .15s ease;--transition-base: .22s ease}body{overflow-x:hidden}body.is-navigating{cursor:progress}.navigation-progress{position:fixed;inset:0 auto auto 0;z-index:10001;width:0;height:3px;opacity:0;background:linear-gradient(90deg,var(--gold),#f8df8b,var(--primary));box-shadow:0 0 18px #c89b3c99;transition:width .15s ease,opacity .15s ease}.navigation-progress.active{width:82%;opacity:1;animation:progress-pulse 1.4s ease-in-out infinite}@keyframes progress-pulse{0%{width:18%}60%{width:72%}to{width:92%}}.page-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;pointer-events:none;opacity:0;visibility:hidden;background:#0f172a38;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity var(--transition-fast),visibility var(--transition-fast)}.page-loader.show{opacity:1;visibility:visible;pointer-events:auto}.page-loader-card{min-width:300px;max-width:calc(100vw - 32px);display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--border);border-radius:16px;color:var(--ink);background:color-mix(in srgb,var(--card) 96%,transparent);box-shadow:0 24px 70px #0f172a3d}.page-loader-card strong,.page-loader-card small{display:block}.page-loader-card strong{font-size:14px;margin-bottom:2px}.page-loader-card small{color:var(--muted);font-size:11px}.loader-spinner,.inline-spinner{display:inline-block;width:22px;height:22px;flex:0 0 auto;border:3px solid color-mix(in srgb,var(--primary) 18%,transparent);border-top-color:var(--primary);border-radius:50%;animation:spin .72s linear infinite}.inline-spinner{width:16px;height:16px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.page-enter{animation:page-enter .24s ease both}@keyframes page-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.sidebar{background:radial-gradient(circle at 15% 8%,rgba(59,130,246,.18),transparent 25%),linear-gradient(180deg,#0b1224,#0f1830 58%,#0b1326);box-shadow:12px 0 36px #0f172a1a}.sidebar-brand{min-height:78px}.brand-link{min-width:0;display:flex;align-items:center;gap:11px;color:#fff}.brand-link:hover{color:#fff}.sidebar-collapse-button{width:30px;height:30px;margin-left:auto;display:grid;place-items:center;flex:0 0 30px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:#ffffff0a;color:#ffffffb8;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.sidebar-collapse-button:hover{color:#fff;background:#ffffff1f;transform:translate(-1px)}.sidebar.collapsed .sidebar-collapse-button span{transform:rotate(180deg)}.nav-link{position:relative;min-height:42px;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.nav-link:after{content:"";position:absolute;inset:8px 7px 8px auto;width:4px;border-radius:999px;background:transparent;transition:background var(--transition-fast)}.nav-link:hover{background:#ffffff1a;color:#fff;transform:translate(3px)}.nav-link.active{background:linear-gradient(90deg,#3b82f638,#ffffff12);color:#fff;box-shadow:inset 3px 0 var(--gold),0 8px 20px #00000014}.nav-link.active:after{background:var(--gold-soft)}.sidebar.collapsed .nav-link:hover{transform:translateY(-1px)}.sidebar-logout-form{display:flex;flex:1}.sidebar-logout-form .sidebar-action{width:100%}.topbar{height:82px;padding:0 28px;background:color-mix(in srgb,var(--card) 92%,transparent);border-bottom:1px solid var(--border);box-shadow:0 1px #ffffff73}.topbar-heading{min-width:0;display:flex;align-items:center;gap:13px}.topbar-kicker,.eyebrow{display:inline-block;margin-bottom:4px;color:var(--primary);font-size:9px;font-weight:850;letter-spacing:.12em;line-height:1.3;text-transform:uppercase}.eyebrow.light{color:#f5d77d}.topbar h1{margin-bottom:2px;font-size:20px;letter-spacing:-.02em}.topbar p{max-width:650px;margin:0;color:var(--muted);font-size:11px}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-profile{min-width:190px;display:flex;align-items:center;gap:9px;margin-left:4px;padding:7px 10px;border:1px solid transparent;border-radius:11px;color:var(--ink);transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.topbar-profile:hover{color:var(--ink);background:var(--sunken);border-color:var(--border);transform:translateY(-1px)}.topbar-profile strong,.topbar-profile small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-profile strong{font-size:11px}.topbar-profile small{color:var(--muted);font-size:9px}.avatar-sm{width:31px;height:31px;flex:0 0 31px}.icon-button{border:1px solid var(--border);background:var(--card);box-shadow:0 1px 2px #0f172a0a;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.icon-button:hover{transform:translateY(-2px);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,var(--border));box-shadow:0 8px 18px #0f172a17}.page{max-width:1680px;margin:0 auto;padding:28px 30px 44px}.page-header{margin-bottom:20px}.page-header h2{margin-bottom:5px;font-size:24px;letter-spacing:-.035em}.page-header p{max-width:780px;margin:0;color:var(--muted);font-size:12px}.card{border:1px solid var(--border);box-shadow:var(--shadow);transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.card:hover{border-color:color-mix(in srgb,var(--primary) 10%,var(--border))}.compact-card{padding:14px 16px}.btn,.action-link,.view-switch button,.sidebar-action{position:relative;overflow:hidden;isolation:isolate}.btn{gap:8px;min-height:40px;padding:9px 14px;border-radius:9px;font-weight:760;box-shadow:0 2px 5px #0f172a12;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.btn:after,.action-link:after,.view-switch button:after{content:"";position:absolute;inset:0;z-index:-1;background:#ffffff29;opacity:0;transition:opacity var(--transition-fast)}.btn:hover,.action-link:hover{transform:translateY(-2px);box-shadow:0 9px 22px #0f172a24}.btn:hover:after,.action-link:hover:after,.view-switch button:hover:after{opacity:1}.btn:active,.action-link:active,.view-switch button:active,.icon-button:active,.nav-link:active{transform:translateY(0) scale(.975)}.btn.is-loading,form.is-submitting .btn[type=submit],form.is-submitting button[type=submit]{pointer-events:none;opacity:.78}.btn.is-loading:before,form.is-submitting .btn[type=submit]:before,form.is-submitting button[type=submit]:before{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.btn-lg{min-height:45px;padding:11px 17px}.btn-primary{background:linear-gradient(135deg,#1e40af,#2563eb);border-color:transparent}.btn-primary:hover{background:linear-gradient(135deg,#1e3a8a,#1d4ed8)}.btn-gold{background:linear-gradient(135deg,#e4c878,#c89b3c);border-color:transparent}.btn-hero-secondary{color:#fff;border:1px solid rgba(255,255,255,.24);background:#ffffff1a;box-shadow:none}.btn-hero-secondary:hover{color:#fff;background:#ffffff2e}.dashboard-hero{min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:20px;padding:34px 38px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.08);border-radius:18px;color:#fff;background:radial-gradient(circle at 82% 15%,rgba(228,200,120,.2),transparent 28%),radial-gradient(circle at 14% 120%,rgba(59,130,246,.35),transparent 38%),linear-gradient(135deg,#0b1838,#162b58,#15356d);box-shadow:0 24px 55px #0f183033}.dashboard-hero:after{content:"";position:absolute;width:310px;height:310px;right:-110px;bottom:-200px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 55px #ffffff06,0 0 0 110px #ffffff05}.dashboard-hero-copy,.hero-actions{position:relative;z-index:1}.dashboard-hero h2{margin-bottom:8px;color:#fff;font-size:clamp(26px,3vw,38px);letter-spacing:-.045em}.dashboard-hero p{max-width:660px;margin:0;color:#ffffffad;font-size:13px}.hero-meta{display:flex;align-items:center;gap:9px;margin-top:19px;color:#ffffff9e;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.08em}.hero-dot{width:4px;height:4px;border-radius:50%;background:var(--gold-soft)}.hero-actions{min-width:210px;display:flex;flex-direction:column;gap:9px}.stat-grid-modern{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px}.stat-card-modern{min-height:126px;display:flex;align-items:flex-start;gap:13px;padding:17px;overflow:hidden;position:relative}.stat-card-modern:after{content:"";position:absolute;width:82px;height:82px;right:-34px;bottom:-38px;border-radius:50%;background:currentColor;opacity:.055}.stat-card-modern:hover{transform:translateY(-3px);box-shadow:var(--hover-shadow)}.stat-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 39px;border-radius:11px;background:var(--sunken);color:var(--primary)}.stat-icon .nav-icon{font-size:18px}.stat-copy span,.stat-copy strong,.stat-copy small{display:block}.stat-copy span{color:var(--muted);font-size:10px;font-weight:760;text-transform:uppercase;letter-spacing:.055em}.stat-copy strong{margin:5px 0 2px;font-family:Sora,Inter,sans-serif;font-size:25px;letter-spacing:-.04em}.stat-copy small{color:var(--muted);font-size:9px}.tone-green .stat-icon{color:#15803d;background:#dcfce7}.tone-gold .stat-icon{color:#a16207;background:#fef3c7}.tone-slate .stat-icon{color:#475569;background:#e2e8f0}.tone-red .stat-icon{color:#b91c1c;background:#fee2e2}.tone-purple .stat-icon{color:#7e22ce;background:#f3e8ff}[data-theme=dark] .tone-green .stat-icon,[data-theme=dark] .tone-gold .stat-icon,[data-theme=dark] .tone-slate .stat-icon,[data-theme=dark] .tone-red .stat-icon,[data-theme=dark] .tone-purple .stat-icon{background:#ffffff14}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.7fr);gap:18px;margin-bottom:18px}.dashboard-lower-grid{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:18px}.chart-card,.operational-card,.activity-card{overflow:hidden}.modern-card-header{min-height:70px;align-items:center;padding:17px 20px}.modern-card-header h3{margin:0;font-size:15px}.chart-box-lg,.bank-chart-box{height:330px}.live-indicator{display:inline-flex;align-items:center;gap:6px;color:var(--success);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.live-indicator i{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 12%,transparent)}.progress-summary{padding:2px 0 18px}.progress-summary>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px}.progress-summary strong{font-size:28px;letter-spacing:-.04em}.progress-summary span{color:var(--muted);font-size:10px}.progress-track{height:9px;overflow:hidden;border-radius:999px;background:var(--sunken)}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#60a5fa);box-shadow:0 0 18px #2563eb52}.compact-metrics .metric-item{padding:12px 0}.metric-item small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.activity-list{padding:4px 20px 16px}.activity-item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:11px;padding:13px 0;border-bottom:1px solid var(--border)}.activity-item:last-child{border-bottom:0}.activity-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--muted)}.activity-dot.success{background:var(--success)}.activity-dot.danger{background:var(--danger)}.activity-item strong,.activity-item small{display:block}.activity-item strong{font-size:11px;font-weight:720}.activity-item small{margin-top:3px;color:var(--muted);font-size:9px}.text-link{color:var(--primary);font-size:10px;font-weight:750}.data-panel{min-height:280px}.table-toolbar{min-height:62px;padding:13px 2px}.flush-toolbar{min-height:0;padding:0}.filter-field{display:grid;gap:5px;min-width:160px}.filter-field>span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.table-hint{max-width:530px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.table-loading-shell{position:relative;min-height:210px}.table-skeleton{position:absolute;inset:18px 0 auto;z-index:3;display:grid;gap:13px;padding:0 4px;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}.table-skeleton span{height:43px;border-radius:8px;background:linear-gradient(90deg,var(--sunken) 20%,color-mix(in srgb,var(--sunken) 55%,var(--card)) 50%,var(--sunken) 80%);background-size:240% 100%;animation:skeleton 1.15s linear infinite}@keyframes skeleton{to{background-position:-240% 0}}.table-loading-shell:not(.table-ready) .table-responsive{opacity:.06}.table-loading-shell.table-ready .table-skeleton{opacity:0;visibility:hidden}.table-loading-shell.table-ready .table-responsive{opacity:1;transition:opacity .18s ease}.table-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:9px;color:var(--danger);background:var(--danger-soft);font-size:10px}.table-error strong,.table-error span{display:block}.table-error strong{margin-right:10px}.dataTable tbody tr{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dataTable tbody tr:hover td{background:color-mix(in srgb,var(--primary-soft) 36%,var(--card))!important}.dt-container .dt-layout-row{align-items:center;gap:12px;margin:12px 0}.dt-container .dt-processing{display:none!important}.table-activity{position:absolute;top:14px;right:14px;z-index:7;min-width:150px;display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 13px;border:1px solid var(--border);border-radius:10px;color:var(--ink);background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:var(--elevated-shadow);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .16s ease,visibility .16s ease,transform .16s ease;font-size:10px;font-weight:700}.table-loading-shell.table-busy .table-activity{opacity:1;visibility:visible;transform:translateY(0)}.table-loading-shell.table-ready:not(.table-busy) .table-activity{display:none}.ticket-search-field{min-width:min(420px,100%);flex:1 1 320px}.search-control{display:flex;align-items:center;gap:8px}.search-control .input{min-width:220px}.search-control .btn{flex:0 0 auto}.dt-container .dt-search input{min-width:240px}.dt-container .dt-paging .dt-paging-button:hover{color:var(--primary)!important;background:var(--primary-soft)!important}.action-link{min-height:29px;display:inline-flex;align-items:center;color:var(--ink);transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.action-link:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 25%,var(--border));background:var(--primary-soft)}.ticket-toolbar-card{margin-bottom:15px}.ticket-grid-section{min-height:260px}.ticket-cell{min-height:84px;box-shadow:0 1px 2px #0f172a0a;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.ticket-cell:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--primary) 28%,var(--border));box-shadow:0 10px 24px #0f172a1a}.ticket-empty{grid-column:1 / -1}.pagination-wrap{margin-top:18px}.view-switch button{min-width:64px;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.input,.select,.textarea{transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.input:hover,.select:hover,.textarea:hover{border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2563eb1c}.small-empty{padding:26px 14px}@media(max-width:1450px){.stat-grid-modern{grid-template-columns:repeat(3,1fr)}}@media(max-width:1120px){.dashboard-main-grid,.dashboard-lower-grid{grid-template-columns:1fr}.bank-chart-box{height:300px}}@media(max-width:900px){.dashboard-hero{align-items:flex-start;flex-direction:column;padding:28px}.hero-actions{width:100%;min-width:0;flex-direction:row;flex-wrap:wrap}.topbar-profile span:last-child{display:none}.topbar-profile{min-width:0;padding:5px}}@media(max-width:780px){.topbar{padding:0 14px}.topbar-kicker{display:none}.topbar-actions{gap:5px}.topbar-profile{display:none}.page{padding:18px 14px 30px}.dashboard-hero{min-height:auto;padding:24px 21px;border-radius:14px}.stat-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.table-toolbar{align-items:stretch;flex-direction:column}.filter-field{min-width:100%}.table-hint{max-width:none}.dt-container .dt-search input{min-width:0;width:100%}}@media(max-width:520px){.stat-grid-modern{grid-template-columns:1fr}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.page-loader-card{min-width:0;width:calc(100vw - 30px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sidebar.collapsed .sidebar-nav{overflow:visible}.sidebar.collapsed .nav-link[data-tooltip]:before{content:attr(data-tooltip);position:absolute;left:calc(100% + 14px);top:50%;z-index:120;min-width:-moz-max-content;min-width:max-content;max-width:240px;padding:8px 11px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#10182b;box-shadow:0 12px 30px #00000047;color:#fff;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:0;opacity:0;pointer-events:none;transform:translate(-5px,-50%);transition:opacity .14s ease,transform .14s ease}.sidebar.collapsed .nav-link[data-tooltip]:hover:before,.sidebar.collapsed .nav-link[data-tooltip]:focus-visible:before{opacity:1;transform:translateY(-50%)}@media(max-width:780px){.sidebar .nav-link[data-tooltip]:before{display:none!important}}@media(max-width:640px){.search-control{align-items:stretch;flex-direction:column}.search-control .input,.search-control .btn{width:100%}.table-activity{top:10px;right:10px;left:10px}}
