:root{--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--transition-smooth:all .2s cubic-bezier(.4, 0, .2, 1);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--accent-primary:#0b1e3d;--accent-primary-hover:#16305c;--accent-primary-alpha:#0b1e3d14;--teal:#0c7c6e;--teal-bg:#0c7c6e1a;--red:#d6432e;--red-bg:#d6432e1a;--amber:#c2790c;--amber-bg:#c2790c1a;--purple:#6e4fcb;--purple-bg:#6e4fcb1a;--blue:#2563a8;--blue-bg:#2563a81a;--success:#0c7c6e;--bg-app:#eef1f5;--bg-surface:#fff;--bg-surface-hover:#f7f8fa;--border-color:#e3e7ed;--border-strong:#d3d9e2;--text-primary:#10182b;--text-secondary:#5b6472;--text-muted:#97a0ac;--shadow-sm:0 1px 2px #10182b0f;--shadow-md:0 4px 16px #10182b14;--shadow-lg:0 12px 32px #10182b29}[data-theme=dark]{--accent-primary:#4c82f0;--accent-primary-hover:#3b6fdb;--accent-primary-alpha:#4c82f029;--teal:#2dd4bf;--teal-bg:#2dd4bf24;--red:#f87171;--red-bg:#f8717124;--amber:#fbbf24;--amber-bg:#fbbf2424;--purple:#a78bfa;--purple-bg:#a78bfa24;--blue:#60a5fa;--blue-bg:#60a5fa24;--success:#2dd4bf;--bg-app:#0b0f19;--bg-surface:#121826;--bg-surface-hover:#1b2233;--border-color:#232b40;--border-strong:#303a55;--text-primary:#f1f4f9;--text-secondary:#a3acc2;--text-muted:#6b7488;--shadow-sm:none;--shadow-md:none;--shadow-lg:0 12px 32px #00000080}[data-brand]{--brand-accent:var(--brand-light);--accent-primary:var(--brand-accent);--accent-primary-hover:color-mix(in srgb, var(--brand-accent) 82%, #000);--accent-primary-alpha:color-mix(in srgb, var(--brand-accent) 12%, transparent);--bg-app:color-mix(in srgb, var(--brand-accent) 9%, #eef1f5);--bg-surface-hover:color-mix(in srgb, var(--brand-accent) 4%, #f7f8fa);--border-color:color-mix(in srgb, var(--brand-accent) 10%, #e3e7ed)}[data-brand][data-theme=dark]{--brand-accent:var(--brand-dark);--accent-primary-hover:color-mix(in srgb, var(--brand-accent) 85%, #fff);--accent-primary-alpha:color-mix(in srgb, var(--brand-accent) 20%, transparent);--bg-app:color-mix(in srgb, var(--brand-accent) 10%, #0b0f19);--bg-surface:color-mix(in srgb, var(--brand-accent) 5%, #121826);--bg-surface-hover:color-mix(in srgb, var(--brand-accent) 9%, #1b2233);--border-color:color-mix(in srgb, var(--brand-accent) 18%, #232b40)}[data-brand] body{border-top:4px solid var(--brand-accent)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;padding:28px 20px 60px;transition:background-color .25s,color .25s}.container{max-width:2020px;margin:0 auto}.app-bar{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:22px}.app-bar,.brand{align-items:center;display:flex}.brand{gap:12px}.brand-mark{background:var(--accent-primary)}.brand-mark,.brand-mark-logo{border-radius:var(--radius-md);color:#fff;width:40px;height:40px;transition:var(--transition-smooth);flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand-text h1{letter-spacing:-.01em;color:var(--text-primary);font-size:18px;font-weight:700}.brand-text span{color:var(--text-muted);font-size:12.5px;font-weight:500}.actions-right{gap:10px}.actions-right,.theme-toggle{align-items:center;display:flex}.theme-toggle{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:var(--radius-full);cursor:pointer;width:38px;height:38px;transition:var(--transition-smooth);justify-content:center}.theme-toggle:hover{background-color:var(--bg-surface-hover)}.btn-logout{background-color:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);transition:var(--transition-smooth);padding:8px 14px}.btn-logout:hover{background-color:var(--red-bg);color:var(--red);border-color:var(--red-bg)}.sync-pill{border-radius:var(--radius-full);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);white-space:nowrap;transition:var(--transition-smooth);align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.sync-pill[data-status=connected]{color:var(--teal);background:var(--teal-bg);border-color:#0000}.sync-pill[data-status=disconnected]{color:var(--amber);background:var(--amber-bg);border-color:#0000}.sync-pill[data-status=syncing]{color:var(--blue);background:var(--blue-bg);border-color:#0000}.dashboard-container{margin-bottom:20px}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.dashboard-header h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:13px;font-weight:700}.dashboard-tabs{background:var(--bg-surface-hover);border:1px solid var(--border-color);border-radius:9px;gap:2px;padding:3px;display:flex}.tab-btn{color:var(--text-secondary);cursor:pointer;font-size:12.5px;font-weight:600;font-family:var(--font-sans);transition:var(--transition-smooth);background:0 0;border:none;border-radius:6px;padding:6px 13px}.tab-btn.active,.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{background:var(--bg-surface);box-shadow:var(--shadow-sm)}[data-theme=dark] .tab-btn.active{background:var(--accent-primary);color:#fff}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.stat-card{background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.stat-icon.deposit{background:var(--teal-bg);color:var(--teal)}.stat-icon.withdrawal{background:var(--red-bg);color:var(--red)}.stat-icon.balance{background:var(--blue-bg);color:var(--blue)}.stat-icon.users{background:var(--purple-bg);color:var(--purple)}.stat-icon.newusers{background:var(--amber-bg);color:var(--amber)}.stat-icon.transferin{background:var(--teal-bg);color:var(--teal)}.stat-icon.transferout{background:var(--amber-bg);color:var(--amber)}.stat-icon.rebate{color:#7c3aed;background:#7c3aed1f}.stat-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;font-size:10.5px;font-weight:700}.stat-value{font-family:var(--font-mono);color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:18px;font-weight:700}.stat-sub{color:var(--text-muted);margin-top:-4px;font-size:10px;font-weight:600}.stat-sub.status-ok{color:var(--teal)}.stat-sub.status-warn{color:var(--amber)}@media (width<=768px){#customDateRangePicker{justify-content:center;width:100%;margin-left:0!important}}.toolbar-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:18px;padding:14px 16px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.search-wrap{flex:240px;min-width:240px;position:relative}.search-wrap svg{color:var(--text-muted);position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search-input{background-color:var(--bg-surface-hover);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:13.5px;font-family:var(--font-sans);transition:var(--transition-smooth);outline:none;padding:9px 12px 9px 34px}.search-input:focus{border-color:var(--accent-primary);background:var(--bg-surface);box-shadow:0 0 0 3px var(--accent-primary-alpha)}.chip-group{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:var(--radius-full);cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font-size:12.5px;font-weight:600;font-family:var(--font-sans);transition:var(--transition-smooth);align-items:center;gap:6px;padding:8px 13px;display:inline-flex}.chip:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--bg-surface-hover)}.chip .dot{border-radius:50%;width:7px;height:7px}.chip[data-bank=BSP] .dot{background:var(--blue)}.chip[data-bank=Kina] .dot{background:var(--amber)}.chip[data-bank=NBC] .dot{background:var(--purple)}.chip[data-bank=Credit\ Bank] .dot{background:var(--red)}.chip[data-bank=All] .dot{background:var(--text-muted)}.chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.chip.active .dot{background:#fff}.btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);transition:var(--transition-smooth);white-space:nowrap;border:none;align-items:center;gap:6px;padding:9px 15px;display:inline-flex}.btn-add{background-color:var(--accent-primary)}.btn-add:hover{background-color:var(--accent-primary-hover)}.page-size-container{color:var(--text-secondary);align-items:center;gap:6px;margin-left:auto;font-size:12.5px;font-weight:600;display:flex}.page-size-container select{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:var(--radius-sm);outline:none;padding:6px 8px;font-size:12.5px;font-weight:600}.table-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.table-responsive{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th{background-color:var(--bg-surface-hover);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px 14px;font-size:11px;font-weight:700}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--transition-smooth)}th.sortable:hover{color:var(--text-primary);background-color:var(--border-color)}[data-theme=dark] th.sortable.sort-active,th.sortable.sort-active{color:var(--accent-primary)}.sort-arrow{opacity:.35;transition:var(--transition-smooth);margin-left:4px;font-size:10px;display:inline-block}.sort-arrow.active{opacity:1}td{border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle;padding:12px 14px}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .1s}tr:hover td{background-color:var(--bg-surface-hover)}.id-cell{color:var(--text-muted);font-size:12px;font-weight:600}.amount-cell,.id-cell{font-family:var(--font-mono)}.amount-cell{font-variant-numeric:tabular-nums;font-weight:700}.amount-cell.deposit{color:var(--teal)}.amount-cell.withdrawal{color:var(--red)}.bonus-cell{font-family:var(--font-mono);color:var(--text-secondary);font-variant-numeric:tabular-nums}.bank-pill{border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.bank-pill .dot{border-radius:50%;width:6px;height:6px}.bank-BSP{background:var(--blue-bg);color:var(--blue)}.bank-BSP .dot{background:var(--blue)}.bank-Kina{background:var(--amber-bg);color:var(--amber)}.bank-Kina .dot{background:var(--amber)}.bank-NBC{background:var(--purple-bg);color:var(--purple)}.bank-NBC .dot{background:var(--purple)}.bank-Credit-Bank{background:var(--red-bg);color:var(--red)}.bank-Credit-Bank .dot{background:var(--red)}.chip-type{border-radius:var(--radius-full);text-align:center;text-transform:uppercase;letter-spacing:.03em;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.chip-deposit{background-color:var(--teal-bg);color:var(--teal)}.chip-withdrawal{background-color:var(--red-bg);color:var(--red)}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em;padding:3px 9px;font-size:10.5px;font-weight:700}.badge-yes{background-color:var(--teal-bg);color:var(--teal)}.badge-no{background-color:var(--bg-surface-hover);color:var(--text-muted)}.actions-wrapper{gap:6px;display:flex}.btn-action{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-strong);transition:var(--transition-smooth);background:0 0;align-items:center;padding:6px 9px;font-size:12px;font-weight:600;display:inline-flex}.btn-table-edit{color:var(--blue)}.btn-table-edit:hover{background-color:var(--blue-bg);border-color:var(--blue-bg)}.btn-table-delete{color:var(--red)}.btn-table-delete:hover{background-color:var(--red-bg);border-color:var(--red-bg)}.counter-text{margin-top:16px;font-weight:500}.counter-text,.footer{text-align:center;color:var(--text-muted);font-size:12.5px}.footer{margin-top:28px;padding-top:18px}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;visibility:hidden;opacity:0;width:100%;height:100%;transition:var(--transition-smooth);background-color:#0b0f1980;justify-content:center;align-items:center;padding:40px 20px;display:flex;position:fixed;top:0;left:0;overflow:auto}.modal-overlay.active{visibility:visible;opacity:1}.modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:100%;box-shadow:var(--shadow-lg);box-sizing:border-box;transition:var(--transition-smooth);resize:both;flex-direction:column;min-width:360px;max-width:560px;min-height:260px;max-height:90vh;padding:26px;display:flex;position:relative;overflow:hidden;transform:translateY(6px)scale(.98)}.modal-overlay.active .modal-content{transform:translateY(0)scale(1)}.modal-content:after{content:"";background:linear-gradient(135deg,transparent 50%,var(--border-color,#ccc) 50%);pointer-events:none;width:12px;height:12px;position:absolute;bottom:4px;right:4px}.modal-content.modal-xwide{width:125vw;max-width:1500px}.modal-xwide .inline-table-wrapper{overflow-x:auto}.modal-title{color:var(--text-primary);letter-spacing:-.01em;flex-shrink:0;margin-bottom:3px;font-size:18px;font-weight:700}.modal-subtitle{color:var(--text-muted);flex-shrink:0;margin-bottom:20px;font-size:13px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-group{margin-bottom:13px}.form-label{color:var(--text-secondary);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.form-control{background-color:var(--bg-surface-hover);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:13.5px;font-family:var(--font-sans);transition:var(--transition-smooth);box-sizing:border-box;outline:none;padding:9px 11px}.form-control:focus{border-color:var(--accent-primary);background:var(--bg-surface);box-shadow:0 0 0 3px var(--accent-primary-alpha)}.form-control[readonly]{color:var(--text-muted)}select.form-control{height:38px}.modal-actions{border-top:1px solid var(--border-color);flex-shrink:0;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:18px;display:flex}.btn-modal{border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:600;font-family:var(--font-sans);border:none;padding:9px 18px}.btn-submit{background-color:var(--accent-primary);color:#fff;align-items:center;gap:6px;display:flex}.btn-submit:hover{background-color:var(--accent-primary-hover)}.btn-cancel{background-color:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-strong)}.btn-cancel:hover{background-color:var(--bg-surface-hover)}.modal-content:not(.large-layout){overflow-y:auto}#message{color:#fff;border-radius:var(--radius-md);z-index:1001;box-shadow:var(--shadow-lg);align-items:center;gap:8px;padding:13px 20px;font-size:13.5px;font-weight:600;display:none;position:fixed;top:24px;right:24px}#message.show{display:flex}.success{background-color:var(--success)}.error{background-color:var(--red)}.pagination-container{background-color:var(--bg-surface);border-top:0 solid var(--border-color);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);justify-content:space-between;align-items:center;margin-left:10px;padding:0;display:flex}.record-count-text{color:var(--text-secondary);font-size:13px;font-weight:500}.pagination-buttons-group{align-items:center;gap:6px;display:flex}.pagination-buttons-group button{background-color:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:var(--radius-sm);font-family:var(--font-sans);transition:var(--transition-smooth);cursor:pointer;outline:none;justify-content:center;align-items:center;min-width:32px;height:32px;padding:0 10px;font-size:13px;font-weight:500;display:inline-flex}.pagination-buttons-group button:hover:not(:disabled):not(.active){color:var(--text-primary);background-color:var(--bg-surface-hover)!important;border-color:var(--border-strong)!important}.pagination-buttons-group button.active{background-color:var(--accent-primary)!important;border-color:var(--accent-primary)!important;color:#fff!important}.pagination-buttons-group button:disabled{opacity:.4;cursor:not-allowed;color:var(--text-muted)}.pagination-buttons-group button:focus-visible{box-shadow:0 0 0 3px var(--accent-primary-alpha)}.username-link{color:var(--accent-primary);cursor:pointer;border-radius:var(--radius-sm);background:var(--accent-primary-alpha);transition:var(--transition-smooth);padding:2px 6px;font-weight:600;text-decoration:none}.username-link:hover{background-color:var(--accent-primary);color:#fff}.btn-user-insights{background-color:var(--purple)}.btn-user-insights:hover{opacity:.9}.modal-content.large-layout{max-width:1200px}.large-layout .user-insights-layout{flex:1;min-height:0;overflow:hidden}.large-layout .user-insights-layout,.user-insights-layout{flex-direction:column;gap:20px;display:flex}.insight-metrics-row{flex-shrink:0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.insight-card{background:var(--bg-surface-hover);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 14px}.insight-card .ins-val{font-family:var(--font-mono);margin-top:4px;font-size:16px;font-weight:700}.log-section-title{text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;flex-shrink:0;font-size:13px;font-weight:700}.inline-table-wrapper{border:1px solid var(--border-color);border-radius:var(--radius-md);flex:1;min-height:120px;max-height:none;overflow-y:auto}.large-layout .user-insights-layout>div:has(.inline-table-wrapper){flex-direction:column;flex:1;min-height:0;display:flex}@media (width<=768px){.insight-metrics-row{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.insight-metrics-row{grid-template-columns:1fr}}@media (width<=600px){.modal-content{padding:18px 16px}.insight-metrics-row{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.insight-card{padding:10px 12px}.insight-card .stat-label{font-size:10.5px}.insight-card .ins-val{margin-top:2px;font-size:14px}.user-insights-layout>div:first-child{gap:6px}#rebateEndDate,#rebateSearchInput,#rebateStartDate,#statEndDate,#statSearchInput,#statStartDate{padding:6px 8px;font-size:12.5px}.inline-table-wrapper{flex:auto;min-height:50vh;max-height:60vh;overflow-x:hidden}.log-section-title{display:none}.inline-table-wrapper table,.inline-table-wrapper tbody,.inline-table-wrapper td,.inline-table-wrapper th,.inline-table-wrapper thead,.inline-table-wrapper tr{width:100%;display:block}.inline-table-wrapper thead{display:none}.inline-table-wrapper tbody tr{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface-hover);margin-bottom:10px;padding:10px 12px}.inline-table-wrapper td{text-align:right;white-space:normal;border:none;justify-content:space-between;align-items:center;padding:6px 0;display:flex;max-width:none!important;text-overflow:unset!important;overflow:visible!important}.inline-table-wrapper td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);text-align:left;flex-shrink:0;margin-right:10px;font-size:10.5px;font-weight:700}.inline-table-wrapper tbody tr td:first-child{border-bottom:1px solid var(--border-color);margin-bottom:4px;padding-bottom:8px}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{gap:4px;padding:10px 12px}.stat-icon{width:24px;height:24px}.stat-value{font-size:16px}.stat-label{font-size:9.5px}.table-card table,.table-card tbody,.table-card td,.table-card th,.table-card thead,.table-card tr{width:100%;display:block}.table-card thead{display:none}.table-responsive{overflow-x:hidden}.table-card tbody tr{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface-hover);margin:10px;padding:10px 12px}.table-card td{text-align:right;white-space:normal;border:none;justify-content:space-between;align-items:center;padding:6px 0;display:flex;max-width:none!important;text-overflow:unset!important;overflow:visible!important}.table-card td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);text-align:left;flex-shrink:0;margin-right:10px;font-size:10.5px;font-weight:700}.table-card tbody tr td:first-child{border-bottom:1px solid var(--border-color);margin-bottom:4px;padding-bottom:8px}.table-card td:last-child{justify-content:flex-end}.table-card td:last-child:before{display:none}.table-responsive{max-height:65vh;overflow-y:auto}}#loginPage{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:380px;padding:32px 30px}.login-brand{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-bottom:26px;display:flex}.login-brand .brand-mark{width:48px;height:48px}.login-brand h1{color:var(--text-primary);letter-spacing:-.01em;font-size:18px;font-weight:700}.login-brand span{color:var(--text-muted);font-size:12.5px;font-weight:500}.login-form .form-group{margin-bottom:16px}.btn-login-submit{background-color:var(--accent-primary);color:#fff;border-radius:var(--radius-sm);width:100%;font-size:14px;font-weight:700;font-family:var(--font-sans);cursor:pointer;transition:var(--transition-smooth);border:none;padding:11px}.btn-login-submit:hover{background-color:var(--accent-primary-hover)}.login-error{color:var(--red);text-align:center;margin-top:12px;font-size:12.5px;font-weight:600;display:none}.login-footer{text-align:center;color:var(--text-muted);margin-top:20px;font-size:12px}.tt-bar{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px;display:flex}.tt-bar.tt-bar-modal{border-bottom:none;padding:6px 0 4px}.tt-btn{font-family:var(--font-sans);cursor:pointer;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:var(--transition-smooth);align-items:center;gap:5px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.tt-btn:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.tt-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-primary-alpha);outline:none}.tt-btn[disabled]{opacity:.45;cursor:not-allowed}.tt-scope{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;padding:5px 8px;font-size:12px;font-weight:600}.tt-scope.tt-push{margin-left:auto}.tt-col-copy{color:var(--text-muted);cursor:pointer;vertical-align:middle;opacity:.55;transition:var(--transition-smooth);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-left:5px;padding:2px;display:inline-flex}.tt-col-copy:hover{opacity:1;color:var(--text-primary);background:var(--bg-surface-hover)}@media (width<=600px){.tt-bar{padding:8px 10px}.tt-scope.tt-push{margin-left:0}}.table-card.is-loading{opacity:.55;transition:opacity .15s}.custom-range{background:var(--bg-surface-hover);border:1px solid var(--border-color);border-radius:9px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.custom-range .form-control{width:auto;padding:4px 8px;font-size:12px}.custom-range span{color:var(--text-secondary);font-size:12px}.btn-apply{background:var(--accent-primary);color:#fff;cursor:pointer;font-size:12px;font-family:var(--font-sans);border:none;border-radius:6px;margin-left:4px;padding:4px 10px;font-weight:600}.pagination-container{background:0 0;flex-wrap:wrap;gap:10px;margin-top:16px;padding:12px 4px}.rows-per-page{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.rows-per-page select{border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:4px 8px}.record-count{color:var(--text-secondary);font-size:13px}.pager-ellipsis{color:var(--text-muted);-webkit-user-select:none;user-select:none;padding:0 4px;font-size:13px}.simple-pager{justify-content:flex-end;align-items:center;gap:6px;margin-top:10px;font-size:13px;display:flex}.confirm-content{resize:none;max-width:400px;min-height:0}.confirm-content:after{display:none}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{opacity:.9}.empty-cell{color:var(--text-muted)}.empty-cell,.error-cell{text-align:center;padding:30px 0}.error-cell{color:var(--red)}.day-summary{flex-direction:column;gap:3px;font-size:12.5px;line-height:1.4;display:flex}.day-summary .ds-rebate{border-top:1px solid var(--border-color);margin-top:2px;padding-top:3px;font-weight:700}.no-cell{white-space:nowrap}.no-cell small{color:var(--text-muted);font-size:10.5px;font-weight:500}.back-link{color:var(--text-secondary);font-size:12.5px;font-weight:600;text-decoration:none}.back-link:hover{color:var(--text-primary)}.landing{flex-direction:column;gap:28px;max-width:1040px;margin:0 auto;display:flex}.landing-top{flex-wrap:wrap;justify-content:space-between;gap:12px}.landing-hero,.landing-top{align-items:center;display:flex}.landing-hero{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;flex-direction:column;gap:14px;padding:48px 36px}.landing-hero h1{letter-spacing:-.02em;font-size:30px;font-weight:800}.landing-hero p{color:var(--text-secondary);max-width:560px;font-size:15px;line-height:1.6}.landing-hero img{border-radius:var(--radius-md)}.landing-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}.btn-primary-lg{background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-sans);transition:var(--transition-smooth);border:none;align-items:center;gap:8px;padding:11px 20px;text-decoration:none;display:inline-flex}.btn-primary-lg:hover{background:var(--accent-primary-hover)}.btn-secondary-lg{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:14px;font-weight:600;font-family:var(--font-sans);transition:var(--transition-smooth);align-items:center;gap:8px;padding:11px 20px;text-decoration:none;display:inline-flex}.btn-secondary-lg:hover{background:var(--bg-surface-hover)}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.feature-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:18px;display:flex}.feature-card h3{font-size:14px;font-weight:700}.feature-card p{color:var(--text-secondary);font-size:13px;line-height:1.5}.brand-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.brand-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;color:var(--text-primary);transition:var(--transition-smooth);flex-direction:column;align-items:center;gap:10px;padding:28px;text-decoration:none;display:flex}.brand-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.brand-card h2{font-size:18px;font-weight:700}.brand-card span{color:var(--text-muted);font-size:13px}.brand-card .brand-card-cta{color:var(--accent-primary);margin-top:6px;font-size:13px;font-weight:700}@media (width<=600px){.landing-hero{padding:32px 20px}.landing-hero h1{font-size:24px}}body.public-site{padding:0}.role-badge{border-radius:var(--radius-full);white-space:nowrap;background:var(--bg-surface-hover);color:var(--text-secondary);padding:3px 9px;font-size:11px;font-weight:700;display:inline-block}.role-badge[data-role=system_admin]{background:var(--purple-bg);color:var(--purple)}.role-badge[data-role=admin]{background:var(--blue-bg);color:var(--blue)}.brand-tag{border-radius:var(--radius-full);background:var(--bg-surface-hover);border:1px solid var(--border-color);color:var(--text-primary);white-space:nowrap;margin:2px 4px 2px 0;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.no-access{color:var(--red);font-size:12px;font-weight:600}.form-hint{color:var(--text-muted);margin:-6px 0 13px;font-size:12px}.form-group .form-hint{margin:5px 0 0}.check-grid{grid-template-columns:1fr 1fr;gap:6px 12px;display:grid}.check-item{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.check-item input{accent-color:var(--accent-primary);width:15px;height:15px}.check-item.check-all{border-bottom:1px solid var(--border-color);grid-column:1/-1;padding-bottom:4px;font-weight:600}.input-with-btn{gap:8px;display:flex}.input-with-btn .form-control{font-family:var(--font-mono)}.cred-box{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface-hover);flex-direction:column;gap:10px;padding:14px;display:flex}.cred-box div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.cred-box span{color:var(--text-secondary);font-size:12px;font-weight:600}.cred-box code{font-family:var(--font-mono);color:var(--text-primary);-webkit-user-select:all;user-select:all;word-break:break-all;font-size:13.5px;font-weight:600}.btn-admin-link{align-items:center;text-decoration:none;display:inline-flex}@media (width<=500px){.check-grid{grid-template-columns:1fr}}.brand-switcher{position:relative}.switcher-trigger{border-radius:var(--radius-md);cursor:pointer;text-align:left;font-family:var(--font-sans);color:inherit;transition:var(--transition-smooth);background:0 0;border:none;margin:-4px -8px -4px -4px;padding:4px 8px 4px 4px}.switcher-trigger:hover{background:var(--bg-surface-hover)}.switcher-trigger:focus-visible{box-shadow:0 0 0 3px var(--accent-primary-alpha);outline:none}.switcher-chevron{vertical-align:middle;color:var(--text-muted);transition:transform .15s}.switcher-chevron.open{transform:rotate(180deg)}.switcher-menu{z-index:50;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:240px;box-shadow:var(--shadow-lg);padding:6px;position:absolute;top:calc(100% + 8px);left:0}.switcher-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:6px 10px 4px;font-size:11px;font-weight:700}.switcher-item{border-radius:var(--radius-sm);color:var(--text-primary);align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.switcher-item:hover{background:var(--bg-surface-hover)}.switcher-item img{-o-object-fit:contain;object-fit:contain;border-radius:6px;flex-shrink:0}.switcher-item span{flex:1}.switcher-item.current{color:var(--accent-primary)}.feedback-fab-wrap{z-index:900;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.feedback-fab{border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;font-family:var(--font-sans);cursor:pointer;box-shadow:0 6px 18px var(--accent-primary-alpha),var(--shadow-lg);transition:var(--transition-smooth);border:none;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:700;display:inline-flex;position:relative}.feedback-fab:hover{background:var(--accent-primary-hover);transform:translateY(-1px)}.feedback-fab:focus-visible{box-shadow:0 0 0 3px var(--accent-primary-alpha),var(--shadow-lg);outline:none}.feedback-fab.is-new:before{content:"";border-radius:inherit;pointer-events:none;animation:2.4s ease-out infinite feedback-pulse;position:absolute;inset:0}@keyframes feedback-pulse{0%{box-shadow:0 0 0 0 var(--accent-primary);opacity:.6}70%,to{box-shadow:0 0 0 12px var(--accent-primary);opacity:0}}@media (prefers-reduced-motion:reduce){.feedback-fab.is-new:before{animation:none}.feedback-fab:hover{transform:none}}.feedback-hint{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);width:300px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);font-family:var(--font-sans);padding:16px 18px 14px;animation:.3s feedback-pop;position:relative}.feedback-hint:after{content:"";background:var(--bg-surface);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);width:10px;height:10px;position:absolute;bottom:-6px;right:40px;transform:rotate(45deg)}.feedback-hint-eyebrow{color:var(--accent-primary);letter-spacing:.8px;margin-bottom:6px;font-size:11.5px;font-weight:800}.feedback-hint-title{color:var(--text-primary);margin-bottom:6px;font-size:16px;font-weight:700}.feedback-hint-text{color:var(--text-secondary);margin:0 0 14px;font-size:13px;line-height:1.5}.feedback-hint-actions{justify-content:flex-end;gap:8px;display:flex}.feedback-hint-btn{border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;padding:7px 14px;font-size:13px;font-weight:600}.feedback-hint-btn:hover{background:var(--bg-surface-hover)}.feedback-hint-btn.primary{background:var(--accent-primary);color:#fff}.feedback-hint-btn.primary:hover{background:var(--accent-primary-hover)}@keyframes feedback-pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.feedback-content{max-width:480px}.feedback-cats{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.feedback-cat{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:var(--transition-smooth);padding:9px 6px;font-size:12.5px;font-weight:600}.feedback-cat:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.feedback-cat.active{background:var(--accent-primary-alpha);border-color:var(--accent-primary);color:var(--text-primary)}.feedback-textarea{resize:vertical;min-height:110px;line-height:1.5}.feedback-count{text-align:right}.feedback-message{white-space:pre-wrap;word-break:break-word;min-width:260px;max-width:520px}.feedback-type{border-radius:var(--radius-full);background:var(--bg-surface-hover);color:var(--text-secondary);padding:3px 9px;font-size:11px;font-weight:700;display:inline-block}.feedback-type[data-cat=problem]{background:var(--red-bg);color:var(--red)}.feedback-type[data-cat=suggestion]{background:var(--amber-bg);color:var(--amber)}.feedback-type[data-cat=question]{background:var(--blue-bg);color:var(--blue)}select.form-control.feedback-status{min-width:120px;height:32px;padding:4px 8px;font-size:12.5px;font-weight:600}.feedback-status[data-status=new]{color:var(--red)}.feedback-status[data-status=in_progress]{color:var(--amber)}.feedback-status[data-status=resolved]{color:var(--teal)}.feedback-meta{color:var(--text-muted);margin-top:4px;font-size:11px}@media (width<=500px){.feedback-cats{grid-template-columns:1fr 1fr}.feedback-fab-wrap{bottom:16px;right:16px}}@media print{.feedback-fab-wrap{display:none}}
