@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{color-scheme:dark;--primary-color: #FFD700;--primary: var(--primary-color);--primary-hover: #E6C200;--bg-dark: #121212;--bg-secondary: #1E1E1E;--text-main: #FFFFFF;--text-muted: #A0A0A0;--border-color: #333333;--danger: #FF4A4A;--success: #00E676;--report-warning: #ffb300;--sidebar-width: 250px;--header-height: 70px;--border-radius: 12px;--transition: all .3s ease;--glass-bg: rgba(30, 30, 30, .7);--glass-border: rgba(255, 255, 255, .08);--card-shadow: 0 8px 32px 0 rgba(0, 0, 0, .3);--surface-elevated: rgba(0, 0, 0, .2);--login-card-shadow: 0 20px 50px rgba(0, 0, 0, .5)}[data-theme=light]{color-scheme:light;--primary-color: #c9a000;--primary: var(--primary-color);--primary-hover: #a68500;--bg-dark: #e8eaef;--bg-secondary: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border-color: #cbd5e1;--danger: #dc2626;--success: #059669;--report-warning: #d97706;--glass-bg: rgba(255, 255, 255, .92);--glass-border: rgba(15, 23, 42, .08);--card-shadow: 0 8px 28px rgba(15, 23, 42, .08);--surface-elevated: rgba(15, 23, 42, .04);--login-card-shadow: 0 20px 48px rgba(15, 23, 42, .12)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif}body{background-color:var(--bg-dark);color:var(--text-main);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}h1,h2,h3,h4{font-weight:600;color:var(--text-main)}.text-primary{color:var(--primary-color)}.text-muted{color:var(--text-muted)}.btn{padding:10px 20px;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.95rem}.btn-primary{background-color:var(--primary-color);color:#000;box-shadow:0 4px 15px #ffd70033}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px #ffd7004d}.btn-secondary{background-color:transparent;color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{border-color:var(--text-main);background-color:#ffffff0d}[data-theme=light] .btn-secondary:hover{border-color:var(--text-muted);background-color:#0f172a0f}.btn-danger{background-color:#ff4a4a1a;color:var(--danger);border:1px solid rgba(255,74,74,.3)}.btn-danger:hover{background-color:var(--danger);color:#fff}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:8px;font-size:.9rem;color:var(--text-muted)}.form-control{width:100%;padding:12px 16px;background-color:#0003;border:1px solid var(--border-color);border-radius:8px;color:var(--text-main);font-size:1rem;transition:var(--transition)}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ffd7001a}select.form-control,select.form-select-enhanced{cursor:pointer;background-color:#2a2a2a;background-image:linear-gradient(45deg,transparent 50%,var(--primary-color) 50%),linear-gradient(135deg,var(--primary-color) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% + 2px),calc(100% - 13px) calc(50% + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;border-color:#ffd70073;color:#fff;padding-right:36px;-moz-appearance:none;appearance:none;-webkit-appearance:none}select.form-control:hover,select.form-select-enhanced:hover{border-color:var(--primary-color);background-color:#333}select.form-control option,select.form-select-enhanced option{background:#1e1e1e;color:#f5f5f5;padding:10px}[data-theme=light] .form-control{background-color:#fff;color:var(--text-main);border-color:var(--border-color)}[data-theme=light] .form-control:focus{box-shadow:0 0 0 3px #c9a00033}[data-theme=light] select.form-control,[data-theme=light] select.form-select-enhanced{background-color:#f1f5f9;color:var(--text-main);border-color:#c9a00059}[data-theme=light] select.form-control:hover,[data-theme=light] select.form-select-enhanced:hover{background-color:#e2e8f0}[data-theme=light] select.form-control option,[data-theme=light] select.form-select-enhanced option{background:#ffffff;color:var(--text-main)}.card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--border-radius);padding:24px;box-shadow:var(--card-shadow)}.badge{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-active{background:rgba(0,230,118,.15);color:var(--success)}.badge-used{background:rgba(255,215,0,.15);color:var(--primary-color)}.badge-voided{background:rgba(255,74,74,.15);color:var(--danger)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.mt-4{margin-top:1.5rem}.mt-3{margin-top:1rem}.theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:10px;border:1px solid var(--border-color);background:var(--surface-elevated);color:var(--text-main);cursor:pointer;transition:var(--transition)}.theme-toggle-btn:hover{border-color:var(--primary-color);background:rgba(255,215,0,.1)}[data-theme=light] .theme-toggle-btn:hover{background:rgba(201,160,0,.12)}.alert{padding:12px 16px;border-radius:8px;margin-bottom:1rem;font-size:.9rem;border:1px solid transparent}.alert-danger{background:rgba(255,74,74,.12);color:var(--danger);border-color:#ff4a4a47}.alert-success{background:rgba(0,230,118,.1);color:var(--success);border-color:#05966947}[data-theme=light] .alert-danger{background:rgba(220,38,38,.08);color:#b91c1c;border-color:#dc262659}[data-theme=light] .alert-success{background:rgba(5,150,105,.1);color:#047857;border-color:#05966959}[data-theme=light] .reports-table tbody tr:hover{background:rgba(15,23,42,.04)}[data-theme=light] .alert-danger{background:rgba(220,38,38,.08);border-color:#dc262638}[data-theme=light] .alert-success{background:rgba(5,150,105,.1);border-color:#05966940}[data-theme=light] textarea.form-control{background-color:#fff;color:var(--text-main)}[data-theme=light] .card{box-shadow:0 4px 20px #0f172a0f}.fares-form-panel__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;flex-wrap:wrap}.fares-form-panel__actions{display:flex;align-items:center;gap:10px}.fares-form-close-x{min-width:44px;min-height:44px;padding:0!important;border:2px solid var(--border-color)!important;background:var(--surface-elevated)!important;color:var(--text-main)!important}.fares-form-close-x:hover{border-color:var(--primary-color)!important;color:var(--primary-color)!important}.fares-form-footer-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;align-items:center}.app-brand-logo{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;mix-blend-mode:normal}.toast-stack{position:fixed;top:16px;right:16px;z-index:10050;display:flex;flex-direction:column;gap:10px;max-width:min(400px,calc(100vw - 32px));pointer-events:none}.toast-stack .toast{pointer-events:auto}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;font-size:14px;line-height:1.4;box-shadow:0 10px 40px #00000059;border:1px solid rgba(255,255,255,.08);animation:toast-in .28s ease-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.toast__text{flex:1;min-width:0}.toast__close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:6px;background:rgba(255,255,255,.08);color:inherit;cursor:pointer;opacity:.85;transition:background .15s ease,opacity .15s ease}.toast__close:hover{opacity:1;background:rgba(255,255,255,.14)}.toast--success{background:rgba(22,40,28,.92);color:#b9f6ca;border-color:#00e67659}[data-theme=light] .toast--success{background:rgba(236,253,241,.97);color:#0d4f2b;border-color:#00965040}.toast--error{background:rgba(45,22,22,.92);color:#ffcdd2;border-color:#ff4a4a66}[data-theme=light] .toast--error{background:rgba(255,241,241,.97);color:#8b1010;border-color:#c8282840}.toast--info{background:rgba(22,28,40,.92);color:#e3e8ef;border-color:#6496ff40}[data-theme=light] .toast--info{background:rgba(248,250,255,.97);color:#1e293b;border-color:#3b82f633}@media (max-width: 520px){.toast-stack{top:auto;bottom:12px;right:12px;left:12px;max-width:none}}.layout-container{display:flex;height:100vh;background-color:var(--bg-dark)}.sidebar{width:var(--sidebar-width);flex-shrink:0;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:width .2s ease,min-width .2s ease;z-index:10}.sidebar--collapsed{width:var(--sidebar-collapsed-width, 72px);min-width:var(--sidebar-collapsed-width, 72px)}.sidebar-header{min-height:var(--header-height);display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:10px 14px 10px 16px;border-bottom:1px solid var(--border-color)}.sidebar--collapsed .sidebar-header{flex-direction:column;justify-content:center;align-items:center;height:auto;min-height:var(--header-height);padding:12px 8px;gap:8px}.sidebar-brand{min-width:0;width:100%;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px}.sidebar-brand-logo{flex-shrink:0;height:auto;max-height:44px;max-width:120px;width:auto;object-fit:contain;display:block}.sidebar-brand-text{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center}.sidebar-brand-name{font-size:.92rem;font-weight:700;line-height:1.2;letter-spacing:.02em;color:var(--text-main)}.sidebar-brand-name__line1{font-weight:600;opacity:.92}.sidebar-brand-name__accent{color:var(--primary-color);font-weight:800}.sidebar-brand-logo--compact{max-height:46px;max-width:46px;border-radius:8px}.sidebar-title-full{font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin:0;min-width:0;line-height:1.2}.sidebar-title-compact{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.04);border:1px solid var(--border-color);overflow:hidden}.sidebar--collapsed .sidebar-title-compact{margin:0}.sidebar-cajero-terminal-wrap{padding:0 16px 12px}.sidebar--collapsed .sidebar-cajero-terminal-wrap{padding:0 8px 8px}.sidebar--collapsed .sidebar-cajero-terminal-text{display:none}.sidebar--collapsed .sidebar-cajero-terminal-inner{justify-content:center;padding:10px 8px}.sidebar-cajero-terminal-inner{width:100%;background:rgba(255,193,7,.08);border:1px solid rgba(255,193,7,.25);border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-main)}[data-theme=light] .sidebar-cajero-terminal-inner{background:rgba(201,160,0,.1);border-color:#c9a00052}.sidebar-cajero-terminal-text{flex:1;min-width:0}.sidebar-cajero-terminal-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:2px}.sidebar-cajero-terminal-name{font-weight:600;line-height:1.3}.sidebar-cajero-terminal-city{font-size:11px;color:var(--text-muted);margin-top:2px}.topbar-terminal-hint{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted)}.sidebar-nav{flex:1;padding:24px 16px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:8px}.sidebar--collapsed .sidebar-nav{padding:16px 8px;align-items:center}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--text-muted);text-decoration:none;border-radius:8px;font-weight:500;transition:var(--transition);width:100%;box-sizing:border-box}.sidebar--collapsed .nav-item{width:48px;min-width:48px;padding:12px;justify-content:center;gap:0}.sidebar--collapsed .nav-item>span:not(.nav-item-badge){display:none}.sidebar--collapsed .nav-item-badge{display:none}.nav-item:hover{background-color:#ffffff0d;color:var(--text-main)}[data-theme=light] .nav-item:hover{background-color:#0f172a0f}.nav-item.active{background-color:#ffd7001a;color:var(--primary-color);border-right:3px solid var(--primary-color)}.sidebar--collapsed .nav-item.active{border-right:none;border-left:3px solid var(--primary-color)}.nav-item--disabled{opacity:.5;cursor:not-allowed;flex-wrap:wrap}.nav-item--disabled:hover{background-color:transparent;color:var(--text-muted)}.nav-item-badge{margin-left:auto;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:6px;background:rgba(148,163,184,.25);color:var(--text-muted);border:1px solid var(--border-color)}[data-theme=light] .nav-item--disabled{opacity:.5}[data-theme=light] .nav-item-badge{background:rgba(15,23,42,.08);color:var(--text-muted)}.sidebar-footer{padding:20px 16px;border-top:1px solid var(--border-color)}.sidebar--collapsed .sidebar-footer{padding:12px 8px}.user-info{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px;background:var(--surface-elevated);border-radius:8px}.sidebar--collapsed .user-info{justify-content:center;padding:10px 8px;margin-bottom:12px}.sidebar--collapsed .user-details{display:none}.user-avatar{width:36px;height:36px;border-radius:50%;background-color:var(--primary-color);color:#000;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.user-details{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:.9rem}.user-role{font-size:.7rem;align-self:flex-start}.btn-logout{width:100%;display:flex;align-items:center;gap:8px;padding:10px;background:transparent;border:1px solid var(--border-color);color:var(--text-muted);border-radius:8px;cursor:pointer;transition:var(--transition);font-weight:500;justify-content:center}.sidebar--collapsed .btn-logout span{display:none}.sidebar--collapsed .btn-logout{padding:10px 8px}.btn-logout:hover{background:rgba(255,74,74,.1);border-color:#ff4a4a4d;color:var(--danger)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.topbar{height:var(--header-height);background-color:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 32px;z-index:5}.topbar-title{font-size:1.25rem;font-weight:600;line-height:1.3;flex:1;min-width:0;padding-right:16px}.content-area{flex:1;overflow-y:auto;padding:32px}@keyframes topbar-notif-pulse{0%,to{box-shadow:0 0 #ffc10766}50%{box-shadow:0 0 0 10px #ffc10700}}.topbar-notif-link--pulse{animation:topbar-notif-pulse 2.2s ease-in-out infinite;border:1px solid rgba(255,193,7,.35)!important}.login-container{height:100vh;display:flex;justify-content:center;align-items:center;background-color:var(--bg-dark);position:relative;overflow:hidden}.login-theme-toggle{position:absolute;top:20px;right:20px;z-index:10}.login-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(255,215,0,.15),transparent 40%),radial-gradient(circle at bottom left,rgba(255,215,0,.05),transparent 30%);z-index:1}[data-theme=light] .login-overlay{background:radial-gradient(circle at top right,rgba(201,160,0,.12),transparent 42%),radial-gradient(circle at bottom left,rgba(201,160,0,.06),transparent 32%)}.login-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:3rem;border-radius:20px;width:100%;max-width:420px;z-index:5;box-shadow:var(--login-card-shadow);transform:translateY(0);animation:floatIn .6s cubic-bezier(.2,.8,.2,1)}@keyframes floatIn{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.login-header{text-align:center;margin-bottom:2rem}.login-brand-logo{max-width:min(320px,100%);height:auto;max-height:96px;object-fit:contain;display:inline-block}.login-header__tagline{margin-top:14px;margin-bottom:0;font-size:1.05rem;font-weight:600;letter-spacing:.02em}.login-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.5px}.btn-login{width:100%;margin-top:1rem;padding:14px;font-size:1.05rem}.alert{padding:12px;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;text-align:center}.alert-danger{background-color:#ff4a4a26;color:var(--danger);border:1px solid rgba(255,74,74,.3)}.dashboard-container{animation:fadeIn .4s ease}.dashboard-container .header-actions{align-items:flex-start;margin-bottom:28px}.dashboard-container .header-actions>div:first-child h1{margin:0 0 12px;font-size:1.75rem;font-weight:600;line-height:1.25}.dashboard-container .header-actions>div:first-child .text-muted{margin:0;font-size:.95rem;line-height:1.55;max-width:42rem}.dashboard-container .header-actions .btn{margin-top:2px}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh}.spinner{animation:spin 1.5s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--border-radius);padding:24px;display:flex;align-items:center;gap:20px;transition:var(--transition)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000080;border-color:#ffd70033}[data-theme=light] .stat-card:hover{box-shadow:0 12px 32px #0f172a1a;border-color:#c9a00059}.stat-icon-wrapper{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center}.bg-primary-soft{background:rgba(255,215,0,.15)}.bg-info-soft{background:rgba(0,188,212,.15)}.text-info{color:#00bcd4}.bg-success-soft{background:rgba(0,230,118,.15)}.bg-warning-soft{background:rgba(255,152,0,.15)}.text-warning{color:#ff9800}[data-theme=light] .text-info{color:#0e7490}[data-theme=light] .text-warning{color:#c2410c}.stat-content{flex:1}.stat-label{color:var(--text-muted);font-size:.9rem;font-weight:500;margin-bottom:8px}.stat-value{font-size:1.8rem;font-weight:700;margin-bottom:4px;color:var(--text-main)}.stat-indicator{font-size:.8rem;display:flex;align-items:center;gap:4px}.stat-indicator.positive{color:var(--success)}.stat-indicator.negative{color:var(--danger)}.dashboard-charts-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.chart-card{padding:24px 26px 28px}.chart-card h3{margin:0 0 20px;font-size:1.1rem;font-weight:600;line-height:1.35;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:2px;border-bottom:1px solid rgba(255,255,255,.06)}.chart-card .terminal-stats-list{margin-top:0;clear:both}.chart-card .dashboard-cashier-section{margin-top:0}.terminal-stat-item{margin-bottom:22px;padding-bottom:4px}.terminal-stat-item:last-child{margin-bottom:0}.terminal-name{font-weight:600;font-size:1.02rem;margin-bottom:10px;line-height:1.4;display:block;padding-right:6rem}.terminal-count{float:right;font-size:.9rem;color:var(--text-muted);line-height:1.4;margin-top:2px}.dashboard-driver-plate{display:block;margin-top:8px;font-size:.8125rem;font-weight:500;opacity:.72;line-height:1.45;letter-spacing:.02em}.terminal-bar-container{height:8px;background:var(--surface-elevated);border-radius:4px;overflow:hidden;margin-top:12px;clear:both;border:1px solid var(--glass-border)}.terminal-bar-fill{height:100%;background:var(--primary-color);border-radius:4px}.dashboard-cashier-name{font-weight:600;font-size:1rem;line-height:1.4;margin-bottom:12px}.dashboard-cashier-total{font-size:1.5rem;color:var(--success);font-weight:700;line-height:1.25}.shortcut-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:20px}.shortcut-btn{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:12px;color:var(--text-main);text-decoration:none;font-weight:600;transition:var(--transition)}.shortcut-btn:hover{background:rgba(255,215,0,.1);border-color:var(--primary-color);color:var(--primary-color);transform:translate(5px)}.shortcut-btn.disabled{opacity:.5;pointer-events:none}@media (max-width: 992px){.dashboard-charts-grid{grid-template-columns:1fr}}@keyframes ticket-emit-page-fade{0%{opacity:0}to{opacity:1}}.ticket-emit-page{animation:ticket-emit-page-fade .25s ease;max-width:960px}.ticket-emit-page .inline-icon{vertical-align:middle}.ticket-emit-page .ticket-emit-header-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.ticket-emit-page .ticket-emit-header-actions h1{margin:0 0 8px;font-size:1.75rem;font-weight:600;line-height:1.2}.ticket-emit-page .ticket-emit-header-actions .text-muted{max-width:560px;line-height:1.5;margin:0}.ticket-emit-page .ticket-emit-reports-link{flex-shrink:0;align-self:center}.ticket-emit-page .ticket-emit-reminder{position:fixed;bottom:20px;right:20px;z-index:8000;max-width:min(420px,calc(100vw - 40px));display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:var(--border-radius, 12px);background:var(--glass-bg, rgba(30, 30, 35, .95));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,215,0,.35);box-shadow:0 8px 32px #00000073}.ticket-emit-page .ticket-emit-reminder-main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px;line-height:1.35;min-width:0}.ticket-emit-page .ticket-emit-reminder-title{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.65;width:100%}.ticket-emit-page .ticket-emit-reminder-code{font-weight:800;color:var(--primary-color);letter-spacing:.04em}.ticket-emit-page .ticket-emit-reminder-meta{opacity:.9;font-size:12px}.ticket-emit-page .ticket-emit-reminder-actions{display:flex;gap:6px;flex-shrink:0}.ticket-emit-page .ticket-emit-reminder-btn{padding:8px 10px!important;min-width:40px}@media (max-width: 600px){.ticket-emit-page .ticket-emit-reminder{left:12px;right:12px;max-width:none;flex-wrap:wrap}}.ticket-emit-page .ticket-emit-form.form-card{margin-bottom:32px}.ticket-emit-page .ticket-emit-split{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}@media (max-width: 768px){.ticket-emit-page .ticket-emit-split{grid-template-columns:1fr}}.ticket-emit-page .ticket-emit-divider{border:none;border-top:1px solid var(--border-color);margin:24px 0}.ticket-emit-page .ticket-emit-label-row{display:flex;align-items:center;gap:8px;margin-bottom:8px!important;font-size:.9rem}.ticket-emit-page .ticket-emit-section-title{margin:0 0 12px;display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:600}.ticket-emit-page .ticket-emit-micro{font-size:11px;line-height:1.35;margin:0}.ticket-emit-page .ticket-emit-help{display:block;margin-top:4px!important;font-size:12px!important;line-height:1.3}.ticket-emit-page .ticket-emit-cobro-row{margin-bottom:0!important}.ticket-emit-page .ticket-emit-submit{padding:12px 20px!important;font-size:1rem!important}.ticket-emit-page .ticket-route-type-options--compact{flex-direction:row;flex-wrap:wrap;gap:10px;margin-bottom:12px!important}.ticket-emit-page .ticket-route-type-options--compact .ticket-route-type-option{flex:1;min-width:min(100%,160px);padding:10px 12px}.ticket-emit-page .ticket-hub-arrival-summary--compact{padding:10px 12px!important;margin-top:8px}.ticket-emit-page .ticket-hub-line{margin:0 0 6px!important;font-size:13px;line-height:1.4}.ticket-emit-page .ticket-hub-line--muted{opacity:.88;font-size:12px}.ticket-emit-page .ticket-emit-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.ticket-emit-page .ticket-emit-form .form-row{grid-template-columns:1fr}}.ticket-emit-page .ticket-route-type-options{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.ticket-emit-page .ticket-route-type-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid var(--border-color);background:rgba(255,255,255,.03);cursor:pointer}.ticket-emit-page .ticket-route-type-option:hover{border-color:#64b5f673}.ticket-emit-page .ticket-route-type-option.is-selected{border-color:#64b5f6b3;background:rgba(33,150,243,.1)}.ticket-emit-page .ticket-route-type-option input{margin-top:4px;flex-shrink:0}.ticket-emit-page .ticket-hub-arrival-summary{padding:12px 14px;border-radius:8px;background:rgba(0,0,0,.2);border:1px solid rgba(100,181,246,.2)}.ticket-emit-page .ticket-lookup-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.ticket-emit-page .ticket-lookup-tabs button{padding:8px 14px;border-radius:8px;border:1px solid var(--border-color);background:rgba(255,255,255,.04);color:inherit;cursor:pointer;font-size:13px}.ticket-emit-page .ticket-lookup-tabs button:hover{border-color:var(--primary-color)}.ticket-emit-page .ticket-lookup-tabs button.active{background:rgba(255,215,0,.12);border-color:var(--primary-color);font-weight:600}.ticket-emit-page .ticket-vehicle-summary{padding:16px!important;margin-bottom:12px!important;border-radius:8px;background:rgba(0,0,0,.15);border:1px solid var(--glass-border)}.ticket-emit-page .ticket-vehicle-summary h4{margin:0 0 12px;font-size:1rem!important;color:var(--primary-color);display:flex;align-items:center;gap:8px}.ticket-emit-page .ticket-vehicle-summary dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:.95rem}.ticket-emit-page .ticket-vehicle-summary dt{color:#ffffff73;font-weight:500}.ticket-emit-page .ticket-vehicle-summary dd{margin:0;font-weight:600}.ticket-emit-page .ticket-plate-search-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.ticket-emit-page .ticket-plate-search-row .form-group{flex:1;min-width:160px;margin-bottom:0}.ticket-emit-page .ticket-emit-form .ticket-emit-amount{font-size:1.15rem!important;font-weight:700;color:var(--primary-color);background-color:#ffd7000f}.ticket-emit-page .ticket-emit-form input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.ticket-emit-page .ticket-emit-form input[type=number]::-webkit-outer-spin-button,.ticket-emit-page .ticket-emit-form input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}[data-theme=light] .ticket-emit-page .ticket-vehicle-summary dt{color:var(--text-muted)}[data-theme=light] .ticket-emit-page .ticket-emit-reminder{box-shadow:0 8px 28px #0f172a1f;border-color:#c9a00073}[data-theme=light] .ticket-emit-page .ticket-emit-amount-readonly{border-color:var(--border-color)!important}.ticket-scan-container{animation:fadeIn .4s ease}.ticket-scan-container .header-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.ticket-scan-container .header-actions h1{margin:0 0 14px;font-size:1.75rem;font-weight:600;line-height:1.25;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ticket-scan-container .header-actions .text-muted{margin:0;font-size:.95rem;line-height:1.55;max-width:44rem}.ticket-scan-terminal-card{padding:22px 26px!important;margin-bottom:28px!important;max-width:min(100%,560px)}.ticket-scan-terminal-card .ticket-scan-terminal-label{display:flex;align-items:center;gap:10px;margin-bottom:14px!important;font-size:.95rem;line-height:1.4}.validation-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:0;align-items:start}.ticket-scan-left-col{display:flex;flex-direction:column;gap:24px}.scanner-card{display:flex;flex-direction:column;align-items:stretch;width:100%}.ticket-scan-container .scanner-card{padding:26px 28px!important;margin-bottom:0!important}.ticket-scan-code-heading{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:600;line-height:1.35}.ticket-scan-code-hint{margin:0 0 22px;font-size:.9rem;line-height:1.55}.ticket-scan-container .manual-form{gap:14px;align-items:center}.ticket-scan-container .manual-form .form-control{min-height:48px}.ticket-scan-pending-card{padding:22px 24px!important}.ticket-scan-pending-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.ticket-scan-pending-head h3{margin:0;display:flex;align-items:center;gap:10px;font-size:1.05rem;font-weight:600;line-height:1.35}.ticket-scan-pending-list{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.ticket-scan-pending-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:rgba(255,193,7,.07);border-radius:10px;border-left:3px solid var(--primary-color)}.ticket-scan-pending-item-main{flex:1;min-width:0}.ticket-scan-pending-code{font-weight:700;font-size:.95rem;letter-spacing:.06em;margin-bottom:6px;line-height:1.3}.ticket-scan-pending-meta{font-size:.8125rem;color:#ffffff8c;line-height:1.45}.ticket-scan-pending-actions{display:flex;gap:8px;flex-shrink:0}#reader{width:100%;max-width:400px;margin:0 auto;border-radius:12px;overflow:hidden;border:1px solid var(--border-color)!important}#reader__scan_region{background:#000}#reader__dashboard_section_csr button{background-color:var(--primary-color)!important;color:#000!important;border:none!important;padding:8px 16px!important;border-radius:6px!important;font-weight:600!important;font-family:Inter,sans-serif!important;margin-top:10px!important;cursor:pointer!important}.inline-icon{vertical-align:middle;margin-left:8px;margin-bottom:4px}.manual-entry{width:100%;margin-top:24px;padding-top:24px;border-top:1px dashed var(--border-color)}.manual-form{display:flex;gap:12px}.results-panel{display:flex;flex-direction:column;min-height:420px;position:sticky;top:16px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:420px;padding:40px 28px;background:transparent;border:1px dashed var(--border-color);border-radius:var(--border-radius)}.empty-state .text-muted{font-size:1rem;line-height:1.5;text-align:center;max-width:280px}.empty-state svg{margin-bottom:24px!important}.result-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 24px;min-height:400px;justify-content:center}.result-card.success{border-color:var(--success);background:rgba(0,230,118,.05)}.result-card.error{border-color:var(--danger);background:rgba(255,74,74,.05)}.icon-success{color:var(--success);margin-bottom:16px}.icon-error{color:var(--danger);margin-bottom:16px}.success-text{color:var(--success);margin-bottom:8px}.error-text{color:var(--danger);margin-bottom:8px}.validation-msg{font-size:1.1rem;margin-bottom:24px}.ticket-details-box{background:rgba(0,0,0,.3);padding:20px;border-radius:12px;width:100%;text-align:left;margin-bottom:24px}.ticket-details-box p{margin-bottom:8px;font-size:1.05rem}@media (max-width: 992px){.validation-grid{grid-template-columns:1fr}.results-panel{position:static;top:auto}}.reports-filters-bar{display:flex;gap:12px;align-items:flex-end;padding:16px;border-radius:8px;margin-bottom:20px;flex-wrap:wrap;background:var(--surface-elevated);border:1px solid var(--glass-border)}.reports-kpi-row{display:flex;gap:20px;margin-bottom:16px;flex-wrap:wrap}.reports-kpi{border-radius:8px;padding:10px 20px;border:1px solid var(--glass-border);background:var(--surface-elevated)}.reports-kpi__label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.reports-kpi__value{font-size:20px;font-weight:700;color:var(--text-main)}.reports-kpi--accent{border-color:#ffc10759;background:rgba(255,193,7,.08)}.reports-kpi--accent .reports-kpi__value{color:var(--primary-color)}.reports-kpi--success{border-color:#05966959;background:rgba(5,150,105,.08)}.reports-kpi--success .reports-kpi__value{color:var(--success)}.reports-kpi--amber{border-color:#ffb30059;background:rgba(255,179,0,.08)}.reports-kpi--amber .reports-kpi__value{color:var(--report-warning, #ffb300)}.reports-table{width:100%;text-align:left;border-collapse:collapse;min-width:900px}.reports-table thead tr{border-bottom:2px solid var(--border-color)}.reports-table th{padding:10px 12px;font-size:12px;color:var(--text-muted);font-weight:600;text-transform:uppercase}.reports-table td{padding:10px 12px;font-size:13px;color:var(--text-main);border-bottom:1px solid var(--glass-border)}.reports-table tbody tr.reports-row--voided{opacity:.72}.reports-table .reports-subtle{color:var(--text-muted);font-size:11px}.report-status-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent}.report-status-pill--active{background:rgba(255,179,0,.18);color:var(--report-warning, #ffb300);border-color:#ffb30073}.report-status-pill--used{background:rgba(5,150,105,.15);color:var(--success);border-color:#05966959}.report-status-pill--voided{background:rgba(220,38,38,.14);color:var(--danger);border-color:#dc262659;text-decoration:line-through}[data-theme=light] .report-status-pill--active{background:rgba(217,119,6,.12);color:#b45309;border-color:#d9770659}.ticket-summary-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:10000;padding:16px}[data-theme=light] .ticket-summary-backdrop{background:rgba(15,23,42,.45)}.ticket-summary-modal{width:100%;max-width:420px;max-height:min(90vh,640px);overflow:auto;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--card-shadow);padding:0}.ticket-summary-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-secondary);z-index:1}.ticket-summary-modal__head h3{margin:0;font-size:1rem;font-weight:600}.ticket-summary-modal__close{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:2px solid var(--border-color);background:var(--surface-elevated);color:var(--text-main);cursor:pointer;transition:var(--transition, .2s ease)}.ticket-summary-modal__close:hover{border-color:var(--primary-color);color:var(--primary-color)}.ticket-summary-body{padding:16px 18px 20px;font-family:Courier New,Courier,monospace;font-size:13px;color:var(--text-main)}.ticket-summary-brand{text-align:center;border-bottom:2px dashed var(--border-color);padding-bottom:10px;margin-bottom:12px}.ticket-summary-brand-logo{max-width:100%;height:auto;max-height:52px;object-fit:contain}.ticket-summary-foot-time{margin-top:6px!important;font-size:9px!important}.ticket-summary-brand h4{margin:0;font-size:15px;letter-spacing:2px;font-weight:700}.ticket-summary-brand p{margin:4px 0 0;font-size:11px;color:var(--text-muted);font-weight:400}.ticket-summary-code{text-align:center;margin:10px 0;font-size:17px;font-weight:700;letter-spacing:2px;border:2px solid var(--border-color);padding:8px;border-radius:6px}[data-theme=light] .ticket-summary-code{background:rgba(15,23,42,.04);color:var(--text-main);border-color:#c9a00073}.ticket-summary-row{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px;flex-wrap:wrap}.ticket-summary-row--stack{flex-direction:column;align-items:stretch}.ticket-summary-row--money{flex-wrap:nowrap;align-items:baseline}.ticket-summary-row--money .lbl{flex-shrink:0}.ticket-summary-row--money>span:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ticket-summary-row .lbl{font-weight:700}.ticket-summary-divider{border-top:1px dashed var(--border-color);margin:8px 0}.ticket-summary-amount{text-align:center;font-size:20px;font-weight:700;margin:10px 0;color:var(--text-main)}.ticket-summary-foot{text-align:center;font-size:10px;color:var(--text-muted);margin-top:12px;padding-top:10px;border-top:2px dashed var(--border-color)}.ticket-summary-extra{font-family:Inter,sans-serif;font-size:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border-color);color:var(--text-muted)}.ticket-summary-extra strong{color:var(--text-main)}.income-reports-page{max-width:1200px;margin:0 auto}.income-reports-header{margin-bottom:1.25rem}.income-reports-header__title{display:flex;align-items:center;gap:10px;margin:0 0 .65rem;font-size:1.5rem;font-weight:700;color:var(--text-main);line-height:1.25}.income-reports-header__lead{margin:0;line-height:1.55;font-size:.95rem;max-width:52rem}.income-reports-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:1.5rem}.income-reports-custom-dates{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.income-reports-custom-dates .form-control{width:auto;min-width:140px}.income-reports-range-caption{margin:0 0 1rem;font-size:.9rem}.income-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:12px;margin-bottom:1.25rem}.income-kpi-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--border-radius, 12px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);min-height:88px}.income-kpi-card--accent{background:var(--surface-elevated);border-color:var(--glass-border)}.income-kpi-card__icon{flex-shrink:0;margin-top:2px;opacity:.95}.income-kpi-card__body{display:flex;flex-direction:column;gap:4px;min-width:0}.income-kpi-card__label{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);line-height:1.3}.income-kpi-card__value{font-size:1.2rem;font-weight:700;color:var(--text-main);line-height:1.2}.income-kpi-card__value--num{color:var(--primary-color)}.income-kpi-card__value--stack{display:flex;flex-direction:column;gap:2px;font-size:1.05rem}.income-kpi-card__sub{font-size:.82rem;font-weight:600;color:var(--text-muted);word-break:break-word}.income-reports-details{margin-bottom:1.25rem;border-radius:var(--border-radius, 12px);border:1px solid var(--glass-border);background:var(--glass-bg);overflow:hidden}.income-reports-details__summary{cursor:pointer;padding:12px 16px;font-size:.9rem;font-weight:600;color:var(--text-main);list-style:none}.income-reports-details__summary::-webkit-details-marker{display:none}.income-reports-details__summary:before{content:"▸";display:inline-block;margin-right:8px;transition:transform .15s ease;color:var(--text-muted)}.income-reports-details[open] .income-reports-details__summary:before{transform:rotate(90deg)}.income-table-wrap{padding:0 16px 14px;max-height:220px;overflow:auto}.income-table{width:100%;border-collapse:collapse;font-size:.88rem}.income-table th,.income-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border-color)}.income-table th{color:var(--text-muted);font-weight:600;position:sticky;top:0;background:var(--glass-bg)}.income-table__num{text-align:right;font-variant-numeric:tabular-nums}[data-theme=light] .income-reports-details{background:#ffffff}.income-reports-charts{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 960px){.income-reports-charts{grid-template-columns:1fr 1fr}}.income-chart-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius, 12px);padding:1rem 1.25rem;box-shadow:var(--card-shadow)}.income-chart-card h3{margin:0 0 12px;font-size:1.05rem}.income-chart-wrap{width:100%;min-height:320px}[data-theme=light] .income-chart-card{background:#ffffff}.arrival-points-header{margin-bottom:1.5rem}.arrival-points-header__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-bottom:12px}.arrival-points-header__title{margin:0;font-size:1.35rem;font-weight:700;display:inline-flex;align-items:center;gap:8px;min-width:0}.arrival-points-header__actions{flex-shrink:0}.arrival-points-header__help{margin:0;max-width:100%;line-height:1.55;font-size:.95rem}
