:root{color-scheme:light;--ink: #0F172E;--paper: #F8FAFC;--surface: #FFFFFF;--primary: #06B6D4;--primary-dark: #0891B2;--primary-light: #22D3EE;--accent-ink: #0E7490;--primary-rgb: 6,182,212;--marklogin1: #EF4444;--marklogin2: #10B981;--marklogin3: #3B82F6;--buttoncolor1: #06B6D4;--buttonhover1: #0891B2;--am: #059669;--am-ink: #047857;--pm: #F59E0B;--night: #7C3AED;--success: #10B981;--danger: #EF4444;--danger-ink: #B91C1C;--warning: #F59E0B;--warning-ink: #92400E;--night-ink: #5B21B6;--line: #E2E8F0;--muted: #475569;--input-bg: #F1F5F9;--day-hover: #EFF6FF;--table-header: #F8FAFC;--shadow-sm: 0 1px 2px 0 rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,.1);--shadow-2xl: 0 25px 50px -12px rgba(0,0,0,.15);--transition: all .2s cubic-bezier(.4, 0, .2, 1);--font-display: "Custom Sans", sans-serif;--font-body: "Custom Sans", sans-serif;--font-mono: "Custom Sans", sans-serif}*{box-sizing:border-box}body{font-family:var(--font-body);background-color:#f8fafc;color:#0f172e;margin:0;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}html,body{background-color:#f8fafc;color:#0f172e}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600}h1{font-size:32px;line-height:1.2}h2{font-size:24px;line-height:1.3}h3{font-size:18px;line-height:1.4}h4{font-size:16px;line-height:1.4}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pageExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes fadeOutSlide{0%{opacity:1}to{opacity:0;transform:scale(.95)}}@keyframes redirectPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.8}to{opacity:0;transform:scale(1.05)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes themeTogglePop{0%{transform:scale(.9);opacity:.8}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.page-entering{animation:pageEnter .3s cubic-bezier(.4,0,.2,1) forwards}.page-exiting{animation:pageExit .2s cubic-bezier(.4,0,.2,1) forwards}button{font-family:var(--font-body);font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;transition:var(--transition)}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#0f172e;border:none;padding:12px 18px;box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(var(--primary-rgb),.4)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);padding:10px 16px;transition:var(--transition);font-weight:700}.btn-secondary:hover{background:var(--input-bg);border-color:var(--primary);color:var(--ink)}.btn-compact{padding:8px 14px}.btn-icon-small{padding:6px 10px;font-size:12px}.btn-icon-danger{color:#b91c1c;border-color:#b91c1c33}.btn-secondary:active{transform:scale(.98)}.btn-danger{background:var(--danger);color:#fff;border:none;padding:10px 16px;box-shadow:0 4px 12px #ef444433}.btn-danger:hover{background:#dc2626;box-shadow:0 6px 16px #ef44444d}.full-width{width:100%}.close-icon-btn{border:none;background:none;color:var(--muted);font-size:24px;cursor:pointer;transition:var(--transition);padding:0}.close-icon-btn:hover{color:var(--ink)}.drawer-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--accent-ink);cursor:pointer;font-weight:700;font-size:12px;transition:var(--transition)}.drawer-toggle:hover{color:var(--accent-ink)}.theme-toggle-switch{display:inline-flex;align-items:center;background:var(--input-bg);border:1.5px solid var(--line);border-radius:20px;padding:4px;cursor:pointer;transition:var(--transition);gap:8px}.theme-toggle-switch:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.05)}.theme-toggle-item{width:32px;height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:var(--transition);border:none;background:transparent;padding:0;color:var(--muted)}.theme-toggle-item:hover{color:var(--ink)}.theme-toggle-item.active{background:var(--surface);color:var(--accent-ink);box-shadow:0 2px 8px rgba(var(--primary-rgb),.2);animation:themeTogglePop .3s cubic-bezier(.4,0,.2,1)}.field{margin-bottom:20px}.field label{display:block;margin-bottom:8px;color:var(--muted);font-size:11px;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;font-weight:700}.field-wrap{position:relative}.input-with-suffix input{padding-right:38px}.input-suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted);font-size:13px}.field input,.field textarea,.field select{width:100%;border:1.5px solid var(--line);background:var(--input-bg);color:var(--ink);border-radius:12px;padding:12px 14px;font-size:15px;line-height:1.4;transition:var(--transition)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.1);outline:none}.field-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);font-size:12px;font-weight:700;transition:var(--transition)}.field-toggle:hover{color:var(--primary)}.btn-primary:disabled{cursor:wait;opacity:.7}.error-banner{margin-bottom:16px;border-radius:12px;border:1px solid rgba(239,68,68,.25);background:#ef44440f;padding:12px 14px;text-align:center;color:#b91c1c;font-size:14px;font-weight:700;animation:slideDown .2s ease-out}.hidden{display:none}.drawer-form-grid{display:grid;gap:14px}.drawer-form-grid input,.drawer-form-grid select{width:100%;border:1.5px solid var(--line);background:var(--input-bg);color:var(--ink);border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.4;transition:var(--transition)}.drawer-form-grid input:focus,.drawer-form-grid select:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.08);outline:none}.drawer-form-grid label{display:block;margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.topbar-actions input,.topbar-actions select{border:1.5px solid var(--line);background:var(--input-bg);color:var(--ink);border-radius:12px;padding:10px 12px;font-size:12px;transition:var(--transition)}.select-input{width:100%;appearance:none;border:1.5px solid var(--line);background:var(--input-bg);color:var(--ink);border-radius:12px;padding:12px 40px 12px 14px;font-size:15px;line-height:1.4;transition:var(--transition);background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%),linear-gradient(to right,#f8fafc,#f8fafc);background-position:calc(100% - 14px) calc(50% - 4px),calc(100% - 8px) calc(50% - 4px),0 0;background-size:8px 8px,8px 8px,100% 100%;background-repeat:no-repeat}.select-input:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.08);outline:none}.search-input{min-width:180px}.drawer-form-grid.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.drawer-form-grid.columns-4>div:last-child{grid-column:1 / -1}.topbar-actions .search-input,.modal-search-input{min-width:180px}.topbar-actions input:focus,.topbar-actions select:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1);outline:none}.app-layout{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;width:100%;max-width:100%;overflow:visible}.app-layout.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar.collapsed{width:72px;padding-left:8px;padding-right:8px}.sidebar.collapsed .brand-panel h2,.sidebar.collapsed .profile-box strong,.sidebar.collapsed .profile-box span{display:none}.sidebar.collapsed .sidebar-button{justify-content:center;padding-left:8px;padding-right:8px}.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-icon{margin-right:0}.sidebar{position:sticky;top:0;align-self:start;height:100vh;background:var(--surface);border-right:1px solid var(--line);padding:28px 22px;display:flex;flex-direction:column;gap:24px;box-shadow:inset -1px 0 0 0 var(--line)}.sidebar--offcanvas{position:fixed;left:0;top:0;height:100vh;width:280px;transform:translate(-100%);transition:transform .26s cubic-bezier(.2,.9,.2,1);z-index:1100;box-shadow:0 20px 40px #0000001f}.sidebar--offcanvas.open{transform:translate(0)}.sidebar-backdrop{position:fixed;inset:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .18s ease-in-out;z-index:1050}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.brand-panel{display:flex;align-items:center;justify-content:center;gap:12px;padding-bottom:18px;border-bottom:1.5px solid var(--line)}.brand-panel__logo-button{display:inline-flex;align-items:center;justify-content:center;width:auto;background:transparent;border:none;padding:0;margin:0 auto;cursor:pointer}.brand-panel__logo-button:focus-visible{outline:2px solid rgba(var(--primary-rgb),.25);outline-offset:4px;border-radius:10px}.brand-panel__logo{width:60px;height:60px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0 auto}.brand-panel__logo img{width:100%;height:100%;object-fit:contain;display:block}.brand-panel h2{font-size:16px;margin:0;color:var(--ink)}.profile-box{padding:16px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);transition:var(--transition)}.profile-box:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.05)}.profile-box strong{display:block;font-size:14px;margin-bottom:4px;color:var(--ink)}.profile-box span{color:var(--muted);font-size:12px}.sidebar-nav{display:grid;gap:6px;flex:1;align-content:start}.sidebar-button{display:flex;width:100%;box-sizing:border-box;align-items:center;gap:10px;padding:12px 14px;line-height:1.4;border-radius:10px;border:1.5px solid transparent;border-left:3px solid transparent;background:transparent;color:var(--ink);font-size:14px;font-weight:600;transition:var(--transition);cursor:pointer}.sidebar-icon{font-size:18px;min-width:24px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.sidebar-button:hover{background:var(--input-bg);border-color:var(--primary);transform:translate(4px)}.sidebar-button.active{background:rgba(var(--primary-rgb),.1);border-left-color:var(--primary);color:var(--accent-ink)}.sidebar-button.active .sidebar-icon{transform:scale(1.1)}.sidebar-footer{display:grid;gap:10px}.sidebar-footer .sidebar-collapse{width:100%}.main-column{display:flex;flex-direction:column;min-height:100vh;min-width:0;width:100%}.top-strip{position:sticky;top:0;z-index:20;display:flex;justify-content:flex-start;gap:12px;min-height:68px;padding:12px 28px;border-bottom:1px solid var(--line);background:var(--surface);align-items:center;flex-wrap:wrap}#appHeaderMount{flex:1 1 auto;width:100%}.main-content{padding:32px;flex:1;overflow-y:auto;min-height:0;width:100%;max-width:100%}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;border-bottom:1.5px solid var(--line);margin-bottom:24px;flex-wrap:wrap}.topbar-left h2{margin:0;font-size:24px;color:var(--ink)}.topbar-left p{margin:4px 0 0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.card{background:var(--surface);border:1.5px solid var(--line);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm);transition:var(--transition);overflow:visible;min-width:0}.card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.card h3{margin:0 0 16px;font-size:18px;color:var(--ink)}.topbar-compact{border-bottom:none;margin-bottom:16px;padding-bottom:0}.mb-16{margin-bottom:16px}.mb-12{margin-bottom:12px}.mt-18{margin-top:18px}.small-muted{font-size:11px;color:var(--muted)}.card-tight{margin-bottom:22px}.text-muted-sm{color:var(--muted);font-size:12px}.text-muted-xs{color:var(--muted);font-size:11px}.cell-strong{font-weight:600}.cell-right{text-align:right}.table-empty{text-align:center;color:var(--muted);padding:30px 0}.table-empty-sm{text-align:center;color:var(--muted);padding:20px 0}.action-button-sm{font-size:12px;padding:6px 10px}.inline-stack-xs{display:grid;gap:6px}.flex-between{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.date-range-wrap{position:relative;display:flex;align-items:center;gap:10px}.date-range-status{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px;font-size:13px;color:var(--muted)}.date-range-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;background:rgba(var(--primary-rgb),.08);border:1px solid rgba(var(--primary-rgb),.16);color:var(--primary);font-size:12px;font-weight:600}.btn-ghost[disabled],.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.topbar-search{min-width:180px;max-width:340px}.table-responsive{width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.table-responsive table{width:100%;min-width:720px;margin:0}@media(max-width:640px){.topbar-search{min-width:0;max-width:100%;flex:1 1 auto}.table-responsive table{min-width:0;width:100%}}.btn-ghost{border:none;background:transparent;color:var(--muted);font-size:16px;padding:8px;border-radius:999px}.btn-ghost:hover,.btn-ghost:focus{background:rgba(var(--primary-rgb),.08);color:var(--ink)}.badge-sm{font-size:12px;padding:4px 8px}.badge-branch-online{background:#e8f8ef;color:#0f7a3a;border:1px solid #8ee0a8}.badge-branch-offline{background:#fde8e8;color:#b42318;border:1px solid #f4b0b0}.popover-actions{margin-top:14px;gap:8px;display:flex;justify-content:flex-end}.modal-help-text{color:var(--muted);margin:0 0 16px;line-height:1.6}.modal-help-text-compact{color:var(--muted);margin:-4px 0 12px}.detail-block-soft{padding:12px;color:var(--muted);font-size:90%}.widget-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.dashboard-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:26px}.dashboard-hero h2{margin:8px 0 4px;font-size:32px;line-height:1.05}.eyebrow{margin:0;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.hero-pill-row{display:flex;flex-wrap:wrap;gap:10px}.hero-pill{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:var(--input-bg);border:1px solid var(--line);font-size:13px;color:var(--ink)}.overview-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.95fr);gap:24px;margin-bottom:24px;align-items:start}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}.overview-summary>.detail-block{margin-top:24px}.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:24px;align-items:start}.chart-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;min-height:320px}.chart-card h3{margin:0 0 16px;font-size:16px}.chart-caption{margin-top:14px;color:var(--muted);font-size:13px;line-height:1.6}.gauge-card{display:grid;place-items:center;width:100%;min-height:220px;gap:10px}.gauge-svg{width:100%;max-width:240px;height:auto}.gauge-background{fill:none;stroke:var(--line);stroke-width:14;stroke-linecap:round}.gauge-foreground{fill:none;stroke:url(#gaugeGradient);stroke-width:14;stroke-linecap:round}.gauge-needle{stroke:var(--ink);stroke-width:2;stroke-linecap:round}.gauge-center{fill:var(--ink)}.gauge-scale{width:100%;display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.trend-chart svg{width:100%;height:auto}.attendance-list{display:grid;gap:12px;max-height:440px;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.attendance-item{padding:16px 18px;border-radius:16px;background:var(--input-bg);border:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.attendance-item strong{display:block;color:var(--ink);margin-bottom:4px}.attendance-item span{color:var(--muted);font-size:13px}.attendance-time{display:inline-block;color:var(--muted);font-size:13px}.detail-title{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.duty-empty-state{display:flex;align-items:center;justify-content:space-between;gap:16px}.duty-empty-state p{margin:0}.shift-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.shift-card{border-radius:16px;border:1px solid var(--line);background:var(--input-bg);padding:18px;min-height:160px;display:flex;flex-direction:column;gap:12px}.shift-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.shift-badge{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.shift-badge-am{background:var(--am);color:var(--surface)}.shift-card-item{padding:8px 0;font-size:14px;color:var(--ink);border-top:1px solid var(--line)}.shift-card-more{padding:10px 12px;border-radius:12px;background:rgba(var(--primary-rgb),.08);color:var(--primary);font-size:13px;font-weight:700;text-align:center}.shift-card-empty{color:var(--muted);font-size:13px;font-style:italic}.branch-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.branch-card--collapsed{display:none}.branch-summary-grid--expanded .branch-card--collapsed{display:block}.branch-snapshot-toggle{white-space:nowrap}.branch-card{background:var(--input-bg);border:1px solid var(--line);border-radius:16px;padding:18px}.branch-card h4{margin:0 0 8px;font-size:14px}.branch-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.branch-summary-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--input-bg);color:var(--muted);font-size:13px}.branch-summary-footer button{white-space:nowrap}.detail-block{margin-bottom:24px;overflow:hidden;min-width:0}.overview-empty-state{margin:0;padding:18px;border:1px dashed var(--line);border-radius:12px;background:var(--input-bg);text-align:center}.metric-note{display:block;margin-top:10px;color:var(--muted);font-size:13px;line-height:1.5}.detail-block{display:grid;gap:16px;margin-bottom:16px}.account-settings-card{width:100%;max-width:none}.account-settings-card .table-responsive{width:100%}.account-settings-card .table-responsive table{min-width:0;table-layout:fixed}.account-settings-card .table-responsive th,.account-settings-card .table-responsive td{white-space:normal;overflow-wrap:anywhere}.account-settings-card .table-responsive th:nth-child(1),.account-settings-card .table-responsive td:nth-child(1){width:20%}.account-settings-card .table-responsive th:nth-child(2),.account-settings-card .table-responsive td:nth-child(2){width:24%}.account-settings-card .table-responsive th:nth-child(3),.account-settings-card .table-responsive td:nth-child(3){width:13%}.account-settings-card .table-responsive th:nth-child(4),.account-settings-card .table-responsive td:nth-child(4){width:15%}.account-settings-card .table-responsive th:nth-child(5),.account-settings-card .table-responsive td:nth-child(5){width:18%}.account-settings-card .table-responsive th:nth-child(6),.account-settings-card .table-responsive td:nth-child(6){width:10%}.account-settings-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px}.account-settings-pagination span{color:var(--muted);font-size:13px}.expense-entry-card{max-width:980px}.field-full{grid-column:1 / -1}.branch-settings-card{max-width:980px}.branch-settings-list{display:grid;gap:10px;margin-top:24px}.branch-settings-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--input-bg)}.branch-settings-item strong,.branch-settings-item span{display:block}.branch-settings-item span{margin-top:4px;color:var(--muted);font-size:13px}.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.account-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding-top:18px;border-top:1px solid var(--line)}.account-form-actions .muted{font-size:13px}.modal-heading{margin-bottom:20px}.modal-heading h3,.modal-heading p{margin-top:0}.modal-submit-button{width:100%;margin-top:4px}.confirm-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.text-right{text-align:right}.branch-settings-actions{white-space:nowrap}.branch-settings-actions button+button{margin-left:8px}.mono{font-family:var(--font-mono)}.row-inactive{opacity:.55}.payroll-override-item{padding:16px;border-bottom:1px solid var(--line);background:var(--surface);border-radius:14px;margin-bottom:12px}.payroll-rule-pill{display:inline-flex;margin:2px 6px 2px 0;padding:4px 8px;background:rgba(var(--primary-rgb),.08);border:1px solid var(--line);border-radius:999px}.payroll-tab-group{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.payroll-tab-button{border-radius:999px;padding:10px 18px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);transition:var(--transition);cursor:pointer}.payroll-tab-button--active{border-color:var(--primary);box-shadow:0 8px 18px rgba(var(--primary-rgb),.12);transform:translateY(-1px)}.rule-filter-row{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:18px}.rule-list-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.rule-card{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);display:flex;flex-direction:column;gap:14px}.rule-card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.rule-card-meta{display:grid;gap:6px}.rule-card-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.rule-card-tags{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px}.scope-target-group{display:grid;gap:10px}.rule-editor-date-row{display:grid;grid-template-columns:minmax(0,220px) minmax(0,180px) auto;gap:12px;align-items:center}.rule-scope-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.rule-scope-options .radio-option{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:var(--transition);cursor:pointer}.rule-scope-options input[type=radio]{accent-color:var(--primary)}.rule-scope-target{display:grid;gap:10px}.rule-editor-calendar{padding-top:0}.rule-editor-calendar-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(140px,240px) auto;gap:12px;align-items:center}.drawer-form-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.field-fullwidth{grid-column:1 / -1}.rule-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.payroll-rule-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(var(--primary-rgb),.08);color:var(--ink);font-size:13px}.confirm-actions--spaced{gap:16px;margin-top:18px}.payroll-added-rules{margin-top:8px;display:grid;gap:6px;color:var(--muted)}.payroll-rule-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.popover-panel{display:none;position:absolute;top:100%;right:0;z-index:1200;width:min(100%,340px);max-width:92vw;background:var(--surface);border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 28px #0000001f;border-radius:14px;padding:18px;margin-top:8px;box-sizing:border-box}.popover-panel.open{display:block}.popover-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.popover-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}@media(max-width:640px){.popover-panel{width:calc(100% - 24px);max-width:calc(100% - 24px);inset:auto 12px 12px!important;border-radius:12px;padding:14px}.popover-grid-2{grid-template-columns:1fr}}.popover-field-label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.input-full{width:100%}.payroll-rule-tags span{background:rgba(var(--primary-rgb),.08);border:1px solid rgba(var(--primary-rgb),.18);border-radius:999px;padding:6px 10px;font-size:12px;color:var(--ink)}.payroll-toolbar-summary span{background:var(--input-bg);border:1px solid var(--line);border-radius:999px;padding:6px 10px}.payroll-rule-summary{display:grid;gap:10px}.payroll-rule-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.payroll-rule-tags span{background:rgba(var(--primary-rgb),.08);border:1px solid rgba(var(--primary-rgb),.18);border-radius:999px;padding:6px 10px;font-size:12px}.action-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.sidebar-button:hover{background:var(--input-bg);border-color:rgba(var(--primary-rgb),.18);transform:none}@media(max-width:1120px){.overview-grid{grid-template-columns:1fr}}@media(max-width:800px){.charts-row,.shift-grid{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse;border-spacing:0}td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink)}.kebab-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);background:var(--surface);border:1.5px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);z-index:20;min-width:160px;overflow:visible;animation:slideUp .15s ease-out}body.drawer-open{overflow:hidden}.drawer-overlay{display:none;position:fixed;inset:0;z-index:120;background:#0f172e80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.drawer-overlay.drawer-open{display:block;animation:fadeIn .2s ease-out}.drawer-panel{position:absolute;right:0;top:0;height:100%;width:min(480px,100%);background:var(--surface);border-left:1.5px solid var(--line);display:flex;flex-direction:column;box-shadow:-8px 0 32px #0000001f;animation:slideInRight .3s ease-out}.drawer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 26px;border-bottom:1.5px solid var(--line)}.drawer-eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:.07em;font-size:11px;color:var(--muted);font-weight:700}.drawer-header h3{margin:0;font-size:20px;color:var(--ink)}.drawer-body{padding:26px;overflow-y:auto;flex:1}.drawer-footer{display:flex;justify-content:flex-end;gap:12px;padding:18px 26px;border-top:1.5px solid var(--line)}.drawer-summary-card{border:1.5px solid var(--line);border-radius:14px;padding:18px;background:var(--input-bg);margin-bottom:18px;transition:var(--transition)}.drawer-summary-card:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.05)}.drawer-summary-card h4{margin:4px 0;font-size:20px;color:var(--ink)}.drawer-grid{display:grid;gap:12px}.drawer-field{border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--input-bg)}.drawer-field label{font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:700;display:block;margin-bottom:4px;letter-spacing:.04em}.modal-overlay{display:none;position:fixed;inset:0;z-index:150;background:#0f172e80;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease-out}.modal-card{background:var(--surface);border-radius:16px;padding:28px;width:min(560px,92vw);max-height:min(86vh,760px);overflow:auto;border:1.5px solid var(--line);box-shadow:var(--shadow-2xl);position:relative;animation:modalPopIn .24s cubic-bezier(.2,.8,.2,1)}.modal-card--wide{width:min(1100px,96vw);max-height:min(95vh,920px)}.modal-shell__header{margin-bottom:18px}.modal-shell__body{display:grid;gap:16px}.profile-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--input-bg)}.profile-card__avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-weight:700}.profile-card__name{margin:0 0 4px;font-weight:700;color:var(--ink)}.profile-card__meta{margin:0;color:var(--muted);font-size:14px}.settings-group{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--input-bg)}.settings-group--compact{padding-top:14px}.settings-group__header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.settings-group__label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.settings-group h4{margin:0;font-size:16px;color:var(--ink)}.settings-group__badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700;background:#ef44441f;color:var(--danger-ink)}.settings-group__badge--soft{background:#10b9811f;color:var(--success)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;color:var(--ink)}.toggle-row+.toggle-row{border-top:1px solid var(--line)}.inline-hint{margin-top:8px;font-size:13px;color:var(--muted)}.policy-formula{margin-top:10px;font-size:13px;color:var(--ink);background:rgba(var(--primary-rgb),.08);border:1px solid rgba(var(--primary-rgb),.12);border-radius:12px;padding:10px 14px;line-height:1.5;white-space:normal}.inline-hint--success{color:var(--am-ink)}@keyframes modalPopIn{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-card h3{margin:0 0 16px;font-size:20px;color:var(--ink)}.modal-wrap{padding:12px}.confirm-overlay{position:fixed;inset:0;z-index:210;background:#0f172e80;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease-out;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.confirm-in{opacity:1}.confirm-card{background:var(--surface);border-radius:16px;padding:28px;width:min(400px,90vw);border:1.5px solid var(--line);box-shadow:var(--shadow-2xl);animation:slideUp .3s ease-out}.confirm-card p{margin:0 0 20px;font-size:15px;line-height:1.6;color:var(--ink)}.confirm-actions{display:flex;justify-content:flex-end;gap:12px}.toast-root{position:fixed;top:24px;right:24px;z-index:200;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{padding:14px 18px;border-radius:12px;background:var(--ink);color:var(--paper);font-size:14px;font-weight:600;box-shadow:var(--shadow-2xl);opacity:0;transform:translateY(16px) scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:auto}.toast-in{opacity:1;transform:translateY(0) scale(1)}.toast-success{background:var(--success);color:#fff}.toast-error{background:var(--danger);color:#fff}table{width:100%;border-collapse:collapse;border-spacing:0;max-width:100%;table-layout:auto}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:12px;border-bottom:2px solid var(--line);text-align:left;background:var(--table-header);font-weight:700}td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink);white-space:nowrap;vertical-align:middle}@media(max-width:640px){td{white-space:normal;word-break:break-word}}tbody tr{transition:var(--transition)}tbody tr:hover{background:var(--input-bg)}tbody tr:last-child td{border-bottom:none}.badge{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700;display:inline-block;text-transform:uppercase;letter-spacing:.03em}.fulltime{background:rgba(var(--primary-rgb),.15);color:var(--accent-ink)}.reliever{background:#f59e0b26;color:var(--warning-ink)}.badge-time-in{background:#22c55e26;color:#166534}.badge-time-out{background:#ef444426;color:#b91c1c}.badge-online{background:#22c55e26;color:#166534;border:1px solid #8ee0a8}.badge-offline{background:#ef444426;color:#b91c1c;border:1px solid #f4b0b0}.midwife{display:none}.badge-user{background:#3b82f626;color:var(--marklogin3)}.table-select{padding:6px 10px;font-size:13px;background:var(--surface);color:var(--ink);border:1.5px solid var(--line);border-radius:8px;cursor:pointer;transition:var(--transition)}.table-select:hover{border-color:var(--primary)}.account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.account-panel{padding:20px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);transition:var(--transition)}.account-panel:hover{border-color:var(--primary);background:rgba(var(--primary-rgb),.02)}.panel-desc{font-size:13px;color:var(--muted);margin-bottom:16px;line-height:1.6}.payroll-tabbar{display:inline-flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--input-bg)}.payroll-tabbar button{padding:10px 18px;border-radius:999px;min-width:150px;transition:var(--transition)}.payroll-tabbar button[aria-pressed=true]{box-shadow:0 4px 12px rgba(var(--primary-rgb),.28);transform:translateY(-1px)}.payroll-tab-panel{display:grid;gap:16px}.payroll-section-lead{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}.payroll-section-lead h3{margin:0 0 4px}.payroll-section-lead p{margin:0;color:var(--muted);font-size:13px;max-width:62ch}.payroll-config-grid{display:grid;gap:12px}.payroll-config-card{padding:16px;display:grid;gap:10px}.payroll-config-card__head{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start}.payroll-config-card__actions{display:flex;gap:8px;align-items:flex-start;flex-shrink:0}.payroll-tag-row{display:flex;flex-wrap:wrap;gap:6px}.payroll-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--input-bg);color:var(--muted);border:1px solid var(--line)}.payroll-tag--scope-global{background:rgba(var(--primary-rgb),.1);color:var(--accent-ink);border-color:transparent}.payroll-tag--scope-branch{background:#7c3aed1a;color:var(--night-ink);border-color:transparent}.payroll-tag--scope-person{background:#10b9811f;color:var(--am-ink);border-color:transparent}.payroll-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.payroll-dot--regularHoliday{background:var(--danger)}.payroll-dot--specialHoliday{background:var(--warning)}.payroll-dot--regular{background:var(--muted)}.holiday-picker{display:grid;gap:14px}.holiday-picker__layout{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:20px;align-items:start}@media(max-width:780px){.holiday-picker__layout{grid-template-columns:1fr}}.calendar-picker{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface)}.calendar-picker__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.calendar-picker__nav strong{font-family:var(--font-display);font-size:15px}.calendar-picker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-picker__weekday{text-align:center;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding-bottom:4px}.calendar-day{position:relative;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;border-radius:10px;border:1.5px solid transparent;background:var(--input-bg);font-size:13px;color:var(--ink);cursor:pointer;transition:var(--transition);min-height:34px}.calendar-day:hover{border-color:var(--primary)}.calendar-day--outside{opacity:.35;cursor:default}.calendar-day--outside:hover{border-color:transparent}.calendar-day--selected{background:rgba(var(--primary-rgb),.18);border-color:var(--primary);font-weight:700}.calendar-day--regularHoliday{background:#ef444424;border-color:#ef444466}.calendar-day--specialHoliday{background:#f59e0b29;border-color:#f59e0b73}.calendar-day__dot{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%}.calendar-picker__legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:11px;color:var(--muted)}.calendar-picker__legend span{display:inline-flex;align-items:center;gap:5px}.holiday-batch-panel{display:grid;gap:12px;align-content:start}.holiday-batch-panel__selected{display:flex;flex-wrap:wrap;gap:6px;min-height:32px}.holiday-batch-panel__row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.date-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:12px;border:1px solid var(--line);background:rgba(var(--primary-rgb),.08);color:var(--ink)}.date-chip button{border:none;background:transparent;cursor:pointer;color:var(--muted);font-size:12px;line-height:1;padding:0}.date-chip button:hover{color:var(--danger)}.holiday-existing-list{display:grid;gap:6px;max-height:220px;overflow-y:auto;padding-right:4px}.holiday-existing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-size:13px;background:var(--input-bg)}.roster-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.roster-toolbar input,.roster-toolbar select{padding:10px;border:1px solid var(--line);border-radius:10px}.roster-toolbar input{flex:1;min-width:220px}.roster-rule-cell{display:grid;gap:4px}.roster-rule-cell .payroll-tag{width:fit-content}.roster-today-flag{font-size:11px;font-weight:700;color:var(--danger-ink)}.topbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.schedule-search{min-width:220px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);color:var(--ink)}.branch-calendar-list{display:flex;flex-direction:column;gap:16px;width:100%;padding-right:4px;padding-bottom:24px;align-items:stretch}.branch-calendar-card{display:flex;flex-direction:column;gap:12px;width:100%}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:var(--table-header);padding:16px 20px;border-radius:14px;border:1.5px solid var(--line)}.calendar-controls h3{margin:0;font-size:18px;color:var(--ink)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.day-name{text-align:center;font-weight:700;font-size:12px;color:var(--muted);padding:12px;background:var(--table-header);border-radius:10px;border:1.5px solid var(--line);text-transform:uppercase;letter-spacing:.04em}.day{min-height:120px;border:1.5px solid var(--line);border-radius:12px;padding:10px;background:var(--surface);cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:var(--transition)}.day-placeholder{visibility:hidden}.day-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.day:hover{border-color:var(--primary);background:var(--day-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.day.is-today{border:2px solid var(--primary);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.15),var(--shadow-md);background:rgba(var(--primary-rgb),.02)}.day[data-selected-state=empty],.day[data-selected-state=empty]:hover{border:2px solid var(--danger)!important;box-shadow:0 0 0 3px #dc262629,var(--shadow-sm)!important;background:#dc262608!important}.day[data-selected-state=checked-in],.day[data-selected-state=checked-in]:hover{border:2px solid var(--primary)!important;box-shadow:0 0 0 4px rgba(var(--primary-rgb),.15),var(--shadow-md)!important;background:rgba(var(--primary-rgb),.02)!important}.day .day-num{font-size:14px;font-weight:700;color:var(--ink)}.day .day-num.is-sunday{color:var(--danger-ink)}.count-badge{font-size:11px;background:var(--input-bg);color:var(--muted);padding:3px 8px;border-radius:20px;font-weight:700;border:1px solid var(--line)}.assigned-list{margin-top:8px;display:flex;flex-direction:column;gap:4px}.assigned-item{font-size:12px;font-weight:700;padding:5px 7px;border-radius:6px;border-left:3px solid;display:flex;justify-content:space-between;align-items:center;gap:4px;overflow:hidden;text-transform:uppercase;letter-spacing:.02em}.assigned-item.shift-am{background:#05966926;color:var(--am-ink);border-left-color:var(--am)}.assigned-item.staff-full-time{background:#2563eb24;color:#1d4ed8;border-left-color:#2563eb}.assigned-item.staff-reliever{background:#f59e0b29;color:#b45309;border-left-color:#f59e0b}.assigned-remove{border:none;background:transparent;cursor:pointer;font-weight:700;color:inherit;padding:0 2px;transition:var(--transition)}.assigned-remove:hover{opacity:.7}.assigned-contact{border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;transition:var(--transition)}.assigned-contact:hover{text-decoration:underline}.empty-slot{color:var(--muted);font-size:11px;font-style:italic;margin-top:6px}.schedule-legend{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.schedule-legend-item{display:inline-flex;align-items:center;gap:6px}.schedule-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.schedule-legend-dot.fulltime{background:#2563eb}.schedule-legend-dot.reliever{background:#f59e0b}.schedule-legend-dot.midwife{display:none}.login-shell{display:flex;flex-direction:column;min-height:100vh;background:var(--paper)}.login-shell-center{flex:1;display:grid;place-items:center;padding:32px 16px;background:#f8fafc}.login-card{width:min(100%,448px);margin:0;padding:32px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 10px 25px #0f172a14}.login-brand{margin-bottom:24px;text-align:center}.login-icon{display:inline-flex;margin-bottom:16px;padding:12px;border-radius:16px;color:#2563eb;background:#dbeafe}.login-brand h1{margin:0;color:#0f172a;font-size:24px;font-weight:700}.login-brand p{margin:8px 0 0;color:#475569;font-size:14px;line-height:1.5}.login-card .field{margin-bottom:16px}.login-card .field label{margin-bottom:8px}.login-card .field input{padding:12px 14px;border-radius:8px;background:#fff}.login-card .btn-primary{min-height:44px;margin-top:8px}.login-showcase{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,8vw,112px);overflow:hidden;color:#fff;background:linear-gradient(145deg,#0a3dd8,#0069c5 54%,#007bff)}.login-showcase:before,.login-showcase:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.login-showcase:before{width:460px;height:460px;right:-180px;top:-180px;background:#22d3ee29}.login-showcase:after{width:320px;height:320px;left:-150px;bottom:-180px;background:#3b82f633}.login-showcase>*{position:relative;z-index:1}.login-showcase__brand{position:absolute;top:40px;left:clamp(48px,8vw,112px);display:flex;align-items:center;gap:10px}.login-showcase .mark,.login-brand .mark{display:inline-flex;gap:5px;align-items:center}.login-showcase .mark span,.login-brand .mark span{width:7px;height:20px;border-radius:3px}.login-showcase .mark span:nth-child(1),.login-brand .mark span:nth-child(1){background:var(--marklogin1)}.login-showcase .mark span:nth-child(2),.login-brand .mark span:nth-child(2){background:var(--marklogin2)}.login-showcase .mark span:nth-child(3),.login-brand .mark span:nth-child(3){background:var(--marklogin3)}.login-showcase__eyebrow,.login-brand__eyebrow{margin:0;font-size:13px;font-weight:700;letter-spacing:.03em}.login-showcase__copy{max-width:590px}.login-showcase__kicker{margin:0 0 14px;color:#a5f3fc;font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.login-showcase h1{max-width:560px;margin:0;color:#fff;font-size:clamp(38px,4vw,60px);line-height:1.06;letter-spacing:-.045em}.login-showcase__copy>p:last-child{max-width:510px;margin:24px 0 0;color:#ffffffc2;font-size:17px;line-height:1.65}.login-showcase__features{display:flex;flex-wrap:wrap;gap:10px;margin-top:44px}.login-showcase__features span{padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#ffffffe0;background:#ffffff14;font-size:12px;font-weight:600}.login-card .field input::placeholder{color:var(--muted);opacity:1}.login-card .field-toggle{right:10px;padding:7px 8px;border-radius:7px}.login-card .field-toggle:hover{background:rgba(var(--primary-rgb),.08)}@media(max-width:860px){.login-card{margin:0 4px}}@media(max-width:480px){.login-shell-center{padding:20px 14px}.login-card{padding:28px 24px}}.kebab-wrap{position:relative;display:inline-block}.kebab-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);background:var(--surface);border:1.5px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);z-index:20;min-width:160px;overflow:hidden;animation:slideUp .15s ease-out}.drawer-pill{display:inline-flex;padding:6px 12px;border-radius:999px;background:#f59e0b26;color:var(--warning-ink);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.password-input-wrap{position:relative}.password-input-wrap input{padding-right:70px}.drawer-menu-item{display:block;width:100%;text-align:left;padding:11px 14px;border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--ink);transition:var(--transition);border-radius:8px}.drawer-menu-item:hover{background:var(--input-bg);color:var(--accent-ink)}.drawer-menu-item-danger{color:var(--danger-ink)}.drawer-menu-item-danger:hover{background:#ef44441a}.stat-card{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:20px;text-align:center;transition:var(--transition);box-shadow:var(--shadow-sm)}.stat-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.stat-card h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.stat-card p{margin:8px 0 0;font-size:28px;font-weight:700;font-family:var(--font-display);color:var(--accent-ink)}.avatar-container{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px}.avatar{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700;cursor:pointer;transition:var(--transition);border:2.5px solid var(--line);background:var(--input-bg);overflow:hidden;position:relative}.avatar:hover{border-color:var(--primary);transform:scale(1.05);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.15)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-initial{color:var(--accent-ink);font-family:var(--font-display)}.avatar-upload-input{display:none}.avatar-upload-btn{font-size:13px;padding:8px 16px}.avatar-preview-container{display:flex;justify-content:center;margin-bottom:12px}@media(max-width:1080px){.widget-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.app-layout{grid-template-columns:1fr}.main-column{width:100%;min-width:0}.sidebar{display:none;position:fixed;left:0;top:0;z-index:1100;width:280px;height:100vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.sidebar.open{display:flex}.sidebar.sidebar--offcanvas{display:block;transform:translate(-100%);pointer-events:auto}.sidebar.sidebar--offcanvas.open{transform:translate(0);display:flex}.main-content{padding:20px}.topbar{flex-direction:column;align-items:flex-start}.topbar-actions{width:100%;justify-content:space-between}.topbar-actions>*{flex:1 1 min(220px,100%);min-width:0}.topbar-actions .topbar-search{min-width:180px}.panel-header{align-items:flex-start}.panel-header .topbar-actions{width:100%;justify-content:flex-start}}@media(max-width:860px){.widget-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.account-grid{grid-template-columns:1fr}.stat-card p{font-size:22px}.top-strip{padding:12px 16px;gap:8px}.main-content{padding:16px}.topbar-actions{gap:10px}.panel-header{gap:12px}.panel-header .search-input,.panel-header .topbar-actions>*{width:100%;max-width:100%;flex:1 1 100%}th,td{padding:10px 8px;font-size:13px}.card{padding:16px}.profile-box{padding:12px}.brand-panel{padding-bottom:12px}}@media(max-width:640px){.widget-row,.metric-grid,.account-form-grid{grid-template-columns:1fr}.account-form-actions{align-items:stretch;flex-direction:column}.stat-card p{font-size:20px}h1{font-size:24px}h2{font-size:18px}.sidebar{width:260px}.topbar-left h2{font-size:18px}.app-header{gap:10px}.app-header__left,.app-header__right{min-width:0}.main-content{padding:12px}.topbar-actions,.panel-header{width:100%}.topbar-actions>*,.panel-header .topbar-actions>*{flex-basis:100%;width:100%}.card{padding:14px;margin-bottom:16px}.top-strip{padding:10px 12px;gap:6px}.drawer-form-grid{gap:10px}.login-card{padding:28px 20px}th,td{padding:8px 6px;font-size:12px}.drawer{width:90vw;max-width:calc(100vw - 20px)}.modal-wrap{padding:12px}.btn-primary,.btn-secondary,.btn-danger{padding:10px 14px;font-size:13px}.theme-toggle-item{width:28px;height:28px;font-size:14px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
