@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1a1a2e;--color-bg:#f8f9fb;--color-surface:#fff;--color-surface-secondary:#f3f4f6;--color-border:#e2e5ea;--color-border-strong:#d0d4da;--color-text:#1a1a2e;--color-text-secondary:#5a6170;--color-text-muted:#8b909a;--color-primary:#0f6b8a;--color-primary-hover:#0b5570;--color-primary-bg:#0f6b8a14;--color-accent:#e67e22;--color-accent-bg:#e67e2214;--color-success:#0d7a5f;--color-success-bg:#0d7a5f14;--color-danger:#c0392b;--color-danger-hover:#a93226;--color-danger-bg:#c0392b14;--color-warning-bg:#e67e2214;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-lg:0 4px 12px #00000014, 0 1px 3px #0000000a;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;background:#f8f9fb;font-family:Inter,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--color-bg);min-width:320px}body{background:inherit;min-width:320px;min-height:100vh;color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}#root{min-height:100vh}a{color:inherit}button,input,select,textarea{font:inherit}.app-loading{min-height:100vh;padding:var(--space-6);background:inherit;place-items:center;display:grid}.app-loading__card{width:min(100%,360px);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);text-align:center}.app-loading__eyebrow,.app-eyebrow{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.app-loading__title,.app-section-title,.auth-title,.app-page-header__title,.app-panel__title,.app-navbar__title{font-weight:600}.app-loading__title{margin:var(--space-2) 0 0;font-size:18px}.app-loading__subtitle,.app-muted,.app-section-copy,.auth-subtitle{color:var(--color-text-secondary);line-height:1.5}.app-shell{min-height:100vh;position:relative}.app-page{padding:var(--space-6) var(--space-4)}.app-page__inner{gap:var(--space-6);width:min(100%,1200px);margin:0 auto;display:grid}.app-page-header{gap:var(--space-1);display:grid}.app-page-header__title{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:600;line-height:1.3}.app-page-header__row{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.app-page-header__count{color:var(--color-text-muted);white-space:nowrap;font-size:13px;font-weight:500}.app-nav-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.app-nav-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:inherit;text-decoration:none;transition:border-color .1s,box-shadow .1s;display:block}.app-nav-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.app-nav-card__title{margin:0;font-size:14px;font-weight:600}.app-nav-card__desc{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.4}.dash-status{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);display:flex}.dash-status--in{border-color:var(--color-success);background:var(--color-success-bg)}.dash-status--out{border-color:var(--color-border-strong)}.dash-status__info{align-items:center;gap:var(--space-3);min-width:0;display:flex}.dash-status__dot{background:var(--color-text-muted);border-radius:50%;flex-shrink:0;width:10px;height:10px}.dash-status__dot--in{background:var(--color-success);box-shadow:0 0 0 3px var(--color-success-bg)}.dash-status__label{color:var(--color-text);margin:0;font-size:.9375rem;font-weight:600}.dash-status__detail{color:var(--color-text-secondary);margin:0;font-size:.8125rem}.dash-status__action{flex-shrink:0}.dash-active{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-accent);background:var(--color-accent-bg);margin-top:var(--space-3);display:flex}.dash-active__info{min-width:0}.dash-active__label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0;font-size:.75rem;font-weight:600}.dash-active__job{margin:var(--space-1) 0 0;color:var(--color-text);font-size:.9375rem;font-weight:600}.dash-active__time{color:var(--color-text-secondary);margin:2px 0 0;font-size:.8125rem}.dash-active__action{flex-shrink:0}.dash-earnings{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);margin-top:var(--space-3);box-shadow:var(--shadow-sm);display:flex}.dash-earnings__main{align-items:baseline;gap:var(--space-3);display:flex}.dash-earnings__label{color:var(--color-text-secondary);font-size:.8125rem;font-weight:600}.dash-earnings__total{color:var(--color-success);font-size:1.25rem;font-weight:700}.dash-earnings__detail{gap:var(--space-4);color:var(--color-text-muted);font-size:.8125rem;display:flex}.dash-jobs{margin-top:var(--space-6)}.dash-jobs__header{margin-bottom:var(--space-3);justify-content:space-between;align-items:baseline;display:flex}.dash-jobs__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.dash-jobs__link{color:var(--color-primary);font-size:.8125rem;font-weight:500;text-decoration:none}.dash-jobs__link:hover{text-decoration:underline}.dash-jobs__list{gap:var(--space-2);flex-direction:column;display:flex}.dash-job{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);display:flex}.dash-job--actionable{border-color:var(--color-primary);background:var(--color-primary-bg)}.dash-job--active{border-color:var(--color-accent);background:var(--color-accent-bg)}.dash-job--done{opacity:.7}.dash-job__info{min-width:0}.dash-job__name{color:var(--color-text);margin:0;font-size:.875rem;font-weight:600}.dash-job__meta{color:var(--color-text-secondary);margin:2px 0 0;font-size:.8125rem}.dash-job__btn{flex-shrink:0}.dash-links{gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border);display:flex}.dash-links__item{color:var(--color-primary);font-size:.8125rem;font-weight:500;text-decoration:none}.dash-links__item:hover{text-decoration:underline}.app-detail-list{gap:0;display:grid}.app-detail-list__row{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:flex}.app-detail-list__row:last-child{border-bottom:0}.app-detail-list__label{color:var(--color-text-muted);flex-shrink:0;font-size:13px;font-weight:500}.app-detail-list__value{text-align:right;word-break:break-word;justify-content:flex-end;align-items:center;gap:var(--space-3);font-size:14px;font-weight:500;display:flex}.settings-edit-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:500}.settings-edit-btn:hover{text-decoration:underline}.settings-legal-notice{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-warning-bg);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.5}.settings-name-form{gap:var(--space-3);flex-direction:column;display:flex}.settings-name-form__actions{gap:var(--space-3);margin-top:var(--space-2);display:flex}.auth-input--error{border-color:var(--color-danger)}.auth-field-error{color:var(--color-danger);margin-top:var(--space-1);font-size:.8125rem;display:block}.app-grid{gap:var(--space-6);display:grid}.app-grid--two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}.app-grid--three{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start}.app-stack{gap:var(--space-4);display:grid}.app-panel,.auth-card,.record-card,.selection-card,.app-empty{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);position:relative}.app-panel,.auth-card,.app-empty{padding:var(--space-6)}.app-panel--compact{padding:var(--space-4)}.app-panel__head,.app-section-heading{gap:var(--space-1);display:grid}.app-panel__title,.app-section-title{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600;line-height:1.3}.app-panel__copy,.app-section-copy{color:var(--color-text-secondary);margin:0;font-size:13px}.app-toolbar{gap:var(--space-4);align-items:end;display:grid}.app-toolbar--hero{grid-template-columns:minmax(0,1fr) auto;align-items:start}.app-toolbar__aside{justify-self:end;width:min(100%,200px)}.app-toolbar__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.app-meta-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.app-info-tile{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary)}.app-info-tile__label{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.app-info-tile__value{color:var(--color-text);word-break:break-word;margin-top:2px;font-size:15px;font-weight:600;display:block}.app-list{gap:var(--space-3);display:grid}.app-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow-x:auto}.app-table{border-collapse:collapse;width:100%}.app-table th,.app-table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border);font-size:13px}.app-table th{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;background:var(--color-surface-secondary);font-size:11px;font-weight:600}.app-table tbody tr{transition:background-color .1s}.app-table tbody tr:last-child td{border-bottom:0}.app-table__row{cursor:pointer}.app-table__row:hover{background:var(--color-primary-bg)}.app-table__row--active{background:#0f6b8a0f}.app-table__row--muted{opacity:.55}.app-table__cell-title{gap:1px;display:grid}.app-table__primary{color:var(--color-text);font-size:13px;font-weight:600}.app-table__secondary{color:var(--color-text-muted);font-size:12px}.pay-rate-display{cursor:pointer;align-items:center;gap:var(--space-2);font-size:13px;font-weight:500;display:inline-flex}.pay-rate-display__edit{color:var(--color-primary);opacity:0;font-size:.75rem;transition:opacity .1s}.pay-rate-display:hover .pay-rate-display__edit{opacity:1}.pay-rate-edit{flex-direction:column;gap:2px;display:flex}.pay-rate-edit__row{align-items:center;gap:4px;display:flex}.pay-rate-edit__prefix{color:var(--color-text-secondary);font-size:13px;font-weight:500}.pay-rate-edit__input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:80px;padding:2px 6px;font-size:13px;font-weight:500}.pay-rate-edit__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-bg);outline:none}.pay-rate-edit__btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:2px 8px;font-size:12px;font-weight:500;line-height:1.5}.pay-rate-edit__btn--save{background:var(--color-primary);color:#fff}.pay-rate-edit__btn--save:hover{background:var(--color-primary-hover)}.pay-rate-edit__btn--cancel{color:var(--color-text-muted);background:0 0}.pay-rate-edit__btn--cancel:hover{color:var(--color-text)}.pay-rate-edit__error{color:var(--color-danger);font-size:11px}.app-table__actions{justify-content:flex-start;display:flex}.app-table__button{min-height:30px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);white-space:nowrap;font-size:12px}.admin-split{align-items:start}.record-card{padding:var(--space-4);transition:border-color .1s,background-color .1s}.record-card:hover{border-color:var(--color-border-strong)}.record-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.record-card__title{margin:0;font-size:14px;font-weight:600}.record-card__subtitle{color:var(--color-text-secondary);margin:2px 0 0;font-size:13px}.record-card__meta{gap:var(--space-2) var(--space-4);margin-top:var(--space-3);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;font-size:13px;display:flex}.record-card__details{gap:var(--space-1);margin-top:var(--space-3);color:var(--color-text-secondary);font-size:13px;display:grid}.record-card__actions,.app-actions,.admin-form__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.app-pill,.status-pill{min-height:22px;padding:2px var(--space-2);border-radius:var(--radius-sm);letter-spacing:.02em;text-transform:capitalize;white-space:nowrap;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.status-pill{background:var(--color-primary-bg);color:var(--color-primary)}.status-pill--success{background:var(--color-success-bg);color:var(--color-success)}.status-pill--warning{background:var(--color-warning-bg);color:#b45309}.status-pill--danger{background:var(--color-danger-bg);color:var(--color-danger)}.status-pill--neutral{color:var(--color-text-secondary);background:#8b909a1f}.status-pill--primary{background:var(--color-primary-bg);color:var(--color-primary);font-weight:600}.status-pill--info{color:#0369a1;background:#e0f2fe;font-weight:600}.status-pill--clickable{cursor:pointer;transition:box-shadow .15s}.status-pill--clickable:hover{box-shadow:0 0 0 2px var(--color-border-strong)}.role-edit{align-items:center;gap:var(--space-2);display:inline-flex}.role-edit__select{font:inherit;padding:2px var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;outline:none;font-size:.8125rem}.role-edit__select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-bg)}.role-edit__saving{color:var(--color-text-muted);font-size:.75rem}.role-edit__error{color:var(--color-danger);font-size:.75rem}.auth-screen{min-height:100vh;padding:var(--space-6) var(--space-4);place-items:center;display:grid}.auth-shell{gap:var(--space-6);width:min(100%,960px);display:grid}.auth-layout{gap:var(--space-6);align-items:stretch;display:grid}.auth-brandbar{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600;display:inline-flex}.auth-branddot{background:var(--color-primary);border-radius:50%;width:8px;height:8px}.auth-card{padding:var(--space-8)}.auth-kicker{color:var(--color-primary);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.auth-title{margin:var(--space-2) 0 0;letter-spacing:-.02em;font-size:24px;line-height:1.2}.auth-subtitle{margin:var(--space-2) 0 0;font-size:14px}.auth-showcase{padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);box-shadow:var(--shadow-sm)}.auth-showcase>*{position:relative}.auth-info{gap:var(--space-3);margin-top:var(--space-6);display:grid}.auth-pill{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:13px;display:flex}.auth-pill strong{color:var(--color-text);font-weight:600}.auth-form{gap:var(--space-4);margin-top:var(--space-6);display:grid}.auth-split,.app-inline-fields{gap:var(--space-4);display:grid}.auth-label{gap:var(--space-1);color:var(--color-text);font-size:13px;font-weight:500;display:grid}.auth-input,.auth-select{width:100%;min-height:38px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;font-size:14px;transition:border-color .1s,box-shadow .1s}.auth-input::placeholder{color:var(--color-text-muted)}.auth-input:focus,.auth-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg)}.auth-help{color:var(--color-text-secondary);margin-top:-2px;font-size:12px;line-height:1.4}.auth-error{color:var(--color-danger);font-size:12px;line-height:1.4}.auth-banner,.auth-success{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:13px;line-height:1.5}.auth-banner{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #c0392b26}.auth-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid #0d7a5f26}.auth-submit,.auth-secondary,.app-button{min-height:36px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;transition:background-color .1s,border-color .1s,opacity .1s}.auth-submit,.app-button{background:var(--color-primary);color:#fff;border:0}.auth-submit:hover:not(:disabled),.app-button:hover:not(:disabled){background:var(--color-primary-hover)}.auth-secondary,.app-button--secondary,.app-button--ghost{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.auth-secondary:hover:not(:disabled),.app-button--secondary:hover:not(:disabled),.app-button--ghost:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-secondary)}.app-button--danger{background:var(--color-danger);color:#fff;border:0}.app-button--danger:hover:not(:disabled){background:var(--color-danger-hover)}.auth-submit:disabled,.auth-secondary:disabled,.app-button:disabled,.app-button--secondary:disabled,.app-button--ghost:disabled,.app-button--danger:disabled{cursor:not-allowed;opacity:.5}.auth-footer{margin:var(--space-4) 0 0;color:var(--color-text-secondary);text-align:center;font-size:13px;line-height:1.5}.auth-footer a{color:var(--color-primary);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.tfa-code-group{justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.tfa-code-input{text-align:center;letter-spacing:0;border:2px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:48px;height:56px;color:var(--color-text);caret-color:var(--color-primary);outline:none;font-size:1.5rem;font-weight:700;transition:border-color .15s,box-shadow .15s}.tfa-code-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg)}.tfa-back-link{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600;text-decoration:none}.tfa-back-link:hover{text-decoration:underline}.app-navbar{z-index:40;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.app-navbar__inner{width:min(100%,1200px);padding:0 var(--space-4);align-items:center;min-height:52px;margin:0 auto;display:flex}.app-navbar__brand{justify-content:space-between;align-items:center;gap:var(--space-4);flex:1;display:flex}.app-navbar__brandbutton{align-items:center;gap:var(--space-3);cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.app-navbar__mark{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.app-navbar__brandtext{text-align:left;display:grid}.app-navbar__title{font-size:14px;font-weight:600;line-height:1.2}.app-navbar__subtitle{color:var(--color-text-muted);text-transform:capitalize;font-size:11px;line-height:1.2}.app-navbar__toggle{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:36px;min-height:36px;padding:0;display:inline-flex}.app-navbar__toggle span{background:var(--color-text);border-radius:1px;width:14px;height:1.5px}.app-navbar__links{gap:var(--space-1);display:none}.app-navbar__links--open{padding:var(--space-2) var(--space-4) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:39;display:grid;position:absolute;top:52px;left:0;right:0}.app-navbar__link,.app-navbar__logout{min-height:34px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);background:0 0;border:0;justify-content:center;align-items:center;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .1s,color .1s;display:inline-flex}.app-navbar__link:hover,.app-navbar__logout:hover{background:var(--color-surface-secondary);color:var(--color-text)}.app-navbar__link--active{background:var(--color-primary-bg);color:var(--color-primary);font-weight:600}.app-navbar__logout{cursor:pointer;color:var(--color-text-muted)}.app-navbar__dropdown{position:relative}.app-navbar__dropdown-toggle{gap:var(--space-1);cursor:pointer}.app-navbar__chevron{flex-shrink:0;transition:transform .15s}.app-navbar__dropdown-toggle[aria-expanded=true] .app-navbar__chevron{transform:rotate(180deg)}.app-navbar__dropdown-menu{min-width:180px;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md,0 4px 12px #0000001a);z-index:50;gap:1px;display:grid;position:absolute;top:calc(100% + 4px);left:0}.app-navbar__dropdown-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm,4px);color:var(--color-text-secondary);white-space:nowrap;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .1s,color .1s;display:block}.app-navbar__dropdown-item:hover{background:var(--color-surface-secondary);color:var(--color-text)}.app-navbar__dropdown-item--active{background:var(--color-primary-bg);color:var(--color-primary);font-weight:600}.app-navbar__links--open .app-navbar__dropdown-menu{box-shadow:none;padding:0 0 0 var(--space-4);background:0 0;border:0;min-width:0;position:static}.confirm-modal__backdrop{z-index:100;padding:var(--space-4);background:#0006;place-items:center;display:grid;position:fixed;inset:0}.confirm-modal{width:min(100%,400px);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.confirm-modal__title{margin:0;font-size:16px;font-weight:600}.confirm-modal__message{margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:14px;line-height:1.5}.confirm-modal__actions{gap:var(--space-2);margin-top:var(--space-5);display:grid}.confirm-modal__button{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;min-height:36px;font-size:13px;font-weight:600;transition:background-color .1s}.confirm-modal__button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.confirm-modal__button--secondary:hover{background:var(--color-surface-secondary)}.confirm-modal__button--danger{background:var(--color-danger);color:#fff}.confirm-modal__button--danger:hover{background:var(--color-danger-hover)}.app-empty{text-align:center;place-items:center;min-height:200px;display:grid}.app-empty__content{max-width:320px}.app-empty__title{color:var(--color-text-secondary);margin:0;font-size:15px;font-weight:600}.app-empty__copy{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.app-checkbox{align-items:center;gap:var(--space-2);font-size:13px;font-weight:500;display:flex}.app-checkbox input{width:16px;height:16px;accent-color:var(--color-primary)}.app-divider{border:0;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.job-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden}.job-panel__header{gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);text-align:left;cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;transition:background-color .1s;display:grid}.job-panel__header:hover{background:var(--color-surface-secondary)}.job-panel__title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.job-panel__title-group{gap:1px;display:grid}.job-panel__title{margin:0;font-size:14px;font-weight:600;line-height:1.3}.job-panel__sub{color:var(--color-text-muted);font-size:12px}.job-panel__stats{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.job-panel__stat{gap:1px;display:grid}.job-panel__stat-label{color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:600}.job-panel__stat-value{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.job-panel__stat-value--full{color:var(--color-success)}.job-panel__chevron{color:var(--color-text-muted);margin-left:auto;font-size:12px;transition:transform .15s}.job-panel__chevron[data-open=true]{transform:rotate(180deg)}.job-panel__body{gap:var(--space-4);padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--color-border);padding-top:var(--space-4);display:grid}.job-panel__footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:flex}.job-panel__footer-meta{color:var(--color-text-muted);font-size:13px;font-weight:500}.assign-section{gap:var(--space-2);display:grid}.assign-section--assigned{padding:var(--space-3);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:#0f6b8a08}.assign-section--assigned .assign-section__label{color:var(--color-primary)}.assign-section--assigned .assign-section__count{background:var(--color-primary-bg);color:var(--color-primary)}.assign-section__header{align-items:center;gap:var(--space-2);font:inherit;color:inherit;background:0 0;border:0;padding:0;display:flex}.assign-section__label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:600}.assign-section__count{border-radius:var(--radius-sm);background:var(--color-surface-secondary);min-width:20px;height:18px;color:var(--color-text-secondary);justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.assign-section__meta{color:var(--color-text-muted);margin-left:auto;font-size:12px;font-weight:500}.assign-section__empty{color:var(--color-text-muted);margin:0;font-size:13px}.assign-section__toggle{color:var(--color-text-muted);font-size:11px;transition:transform .15s}.assign-section__toggle[data-open=true]{transform:rotate(180deg)}.assign-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.assign-section--assigned .assign-table-wrap{border-color:#0f6b8a33}.assign-table{border-collapse:collapse;width:100%}.assign-table th,.assign-table td{padding:var(--space-2) var(--space-3);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border);font-size:13px}.assign-table th{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;background:var(--color-surface-secondary);font-size:10px;font-weight:600}.assign-table tbody tr:last-child td{border-bottom:0}.assign-table__row--active{background:var(--color-primary-bg)}.assign-table__name{font-weight:500}.assign-table__col-action{text-align:center;width:90px}.assign-table th.assign-table__col-action{text-align:center}.assign-btn{min-width:70px;min-height:26px;padding:2px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;justify-content:center;align-items:center;font-size:12px;font-weight:500;transition:background-color 80ms,border-color 80ms,color 80ms;display:inline-flex}.assign-btn:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-secondary)}.assign-btn:disabled{opacity:.4;cursor:not-allowed}.assign-btn--remove{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg)}.assign-btn--remove:hover:not(:disabled){background:#c0392b24}.assign-table__tag{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);background:var(--color-primary-bg);color:var(--color-primary);margin-left:var(--space-2);vertical-align:middle;padding:1px 6px;font-size:.675rem;font-weight:600;display:inline-block}.assign-btn--leader{min-width:56px}.assign-btn--leader-on{border-color:var(--color-accent);background:var(--color-accent-bg);color:#92400e}.assign-btn--leader-on:hover:not(:disabled){background:#e67e2224}.location-banner{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:.85rem;font-weight:500;display:flex}.location-banner--ok{background:var(--color-success-bg);color:var(--color-success);border:1px solid #0d7a5f26}.location-banner--blocked{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #c0392b26}.clock-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);max-width:420px}.clock-card__status{align-items:center;gap:var(--space-4);display:flex}.clock-card__indicator{border-radius:50%;flex-shrink:0;width:14px;height:14px}.clock-card__indicator--in{background:var(--color-success);box-shadow:0 0 0 4px var(--color-success-bg)}.clock-card__indicator--out{background:var(--color-text-muted);box-shadow:0 0 0 4px var(--color-surface-secondary)}.clock-card__label{color:var(--color-text);margin:0;font-size:1.1rem;font-weight:600}.clock-card__time{color:var(--color-text-secondary);margin:2px 0 0;font-size:.85rem}.clock-card__notice{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);background:var(--color-warning-bg);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.82rem;line-height:1.5}.clock-card__actions{margin-top:var(--space-4)}.clock-card__btn{width:100%;padding:var(--space-4);font-size:1.05rem;font-weight:600}.production-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.production-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.production-card__info{min-width:0}.production-card__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600;line-height:1.3}.production-card__meta{color:var(--color-text-muted);margin-top:2px;font-size:.8rem;display:block}.production-card__stats{gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.production-card__stat{flex-direction:column;gap:2px;display:flex}.production-card__stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:500}.production-card__stat-value{color:var(--color-text);font-size:.95rem;font-weight:600}.production-card__stat-value--earnings{color:var(--color-success)}.production-card__workers{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-warning-bg);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex}.production-card__worker{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:.8rem;display:flex}.production-card__worker-name{color:var(--color-text);font-weight:600}.production-card__worker-time{color:var(--color-text-secondary)}.production-sessions{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.production-sessions__heading{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:600}.production-sessions__row{align-items:baseline;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3);background:var(--color-surface-secondary);border-radius:var(--radius-md);flex-wrap:wrap;font-size:.85rem;display:flex}.production-sessions__times{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:500}.production-sessions__units{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.production-sessions__notes{width:100%;color:var(--color-text-muted);font-size:.8rem;font-style:italic}.production-card__actions{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.production-card__leader-note{color:var(--color-muted);margin:0;font-size:.85rem}.production-finish-form{gap:var(--space-3);flex-direction:column;display:flex}.production-finish-form__buttons{gap:var(--space-2);display:flex}.app-hide-desktop{display:grid}.app-hide-mobile{display:none}@media (width>=640px){.app-hide-desktop{display:none}.app-hide-mobile{display:block}.app-page{padding:var(--space-8) var(--space-6)}.app-toolbar{grid-template-columns:minmax(0,1fr) auto}.auth-split,.app-inline-fields,.confirm-modal__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.admin-split{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}}@media (width<=639px){.app-toolbar--hero{grid-template-columns:minmax(0,1fr)}.app-toolbar__aside{justify-self:stretch;width:100%}.app-table th,.app-table td{padding:var(--space-2) var(--space-3)}}@media (width>=900px){.auth-layout{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}}@media (width>=960px){.app-navbar__inner{gap:var(--space-4)}.app-navbar__brand{flex:none}.app-navbar__toggle{display:none}.app-navbar__links{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;display:flex}}.sh-layout{gap:var(--space-6);flex-direction:column;display:flex}.sh-calendar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.sh-calendar__nav{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.sh-calendar__arrow{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer;color:var(--color-text);background:0 0;font-size:1rem;line-height:1}.sh-calendar__arrow:hover{background:var(--color-surface-secondary)}.sh-calendar__month{color:var(--color-text);font-size:1rem;font-weight:600}.sh-calendar__grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.sh-calendar__weekday{color:var(--color-text-muted);padding:var(--space-2) 0;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.sh-calendar__cell{aspect-ratio:1;border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:.875rem;display:flex;position:relative}.sh-calendar__cell:hover{background:var(--color-surface-secondary)}.sh-calendar__cell--empty{cursor:default}.sh-calendar__cell--empty:hover{background:0 0}.sh-calendar__cell--today{color:var(--color-primary);font-weight:700}.sh-calendar__cell--worked:after{content:"";background:var(--color-success);border-radius:50%;width:5px;height:5px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.sh-calendar__cell--selected{background:var(--color-primary);color:#fff;font-weight:600}.sh-calendar__cell--selected:hover{background:var(--color-primary-hover)}.sh-calendar__cell--selected.sh-calendar__cell--worked:after{background:#fff}.sh-summary{min-width:0}.sh-summary__date{color:var(--color-text);margin-bottom:var(--space-5);font-size:1.125rem;font-weight:600}.sh-section{margin-bottom:var(--space-6)}.sh-section__heading{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:.8125rem;font-weight:600}.sh-rows{gap:var(--space-2);flex-direction:column;display:flex}.sh-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);justify-content:space-between;align-items:center;display:flex}.sh-row__times{color:var(--color-text);font-size:.875rem}.sh-row__duration{color:var(--color-text-secondary);font-size:.8125rem;font-weight:500}.sh-session{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.sh-session__header{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.sh-session__job{color:var(--color-text);font-size:.875rem;font-weight:600}.sh-session__units{color:var(--color-primary);font-size:.8125rem;font-weight:500}.sh-session__meta{justify-content:space-between;align-items:center;display:flex}.sh-session__notes{margin-top:var(--space-2);color:var(--color-text-muted);font-size:.8125rem;font-style:italic}.sh-session__pay{color:var(--color-success);font-size:.875rem;font-weight:600}.sh-earnings{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.sh-earnings__total{padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;display:flex}.sh-earnings__total-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.875rem;font-weight:600}.sh-earnings__total-value{color:var(--color-success);font-size:1.5rem;font-weight:700}.sh-earnings__grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.sh-earnings__item{gap:var(--space-1);flex-direction:column;display:flex}.sh-earnings__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.sh-earnings__value{color:var(--color-text);font-size:.95rem;font-weight:600}.sh-earnings__breakdown{gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.sh-earnings__line{color:var(--color-text-secondary);justify-content:space-between;font-size:.875rem;display:flex}.sh-earnings__line span:last-child{color:var(--color-text);font-weight:600}@media (width>=768px){.sh-layout{flex-direction:row;align-items:flex-start}.sh-calendar{top:var(--space-6);flex:0 0 300px;position:sticky}.sh-calendar__cell{font-size:.8125rem}.sh-summary{flex:1}}.payroll-export{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5)}.payroll-export__title{margin:0 0 var(--space-3) 0;font-size:1rem;font-weight:600}.payroll-export__row{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.payroll-export__field{gap:var(--space-1);flex-direction:column;display:flex}.payroll-export__label{color:var(--color-muted);font-size:.8rem}.payroll-export__btn{white-space:nowrap}.payroll-export__error{color:var(--color-danger);margin:var(--space-2) 0 0 0;font-size:.85rem}.payroll-totals{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5)}.payroll-totals__main{margin-bottom:var(--space-4);justify-content:space-between;align-items:baseline;display:flex}.payroll-totals__label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.875rem;font-weight:600}.payroll-totals__value{color:var(--color-success);font-size:1.5rem;font-weight:700}.payroll-totals__grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.payroll-totals__item{text-align:center;padding:var(--space-3);background:var(--color-surface-secondary);border-radius:var(--radius-md)}.payroll-totals__item-label{color:var(--color-text-muted);margin-bottom:var(--space-1);font-size:.75rem;display:block}.payroll-totals__item-value{color:var(--color-text);font-size:.9375rem;font-weight:600;display:block}.payroll-list{gap:var(--space-3);flex-direction:column;display:flex}.payroll-emp{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.payroll-emp__header{width:100%;padding:var(--space-4) var(--space-5);cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;transition:background .15s;display:flex}.payroll-emp__header:hover{background:var(--color-surface-secondary)}.payroll-emp__name{font-size:.9375rem;font-weight:600}.payroll-emp__stats{align-items:center;gap:var(--space-4);display:flex}.payroll-emp__stat{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.payroll-emp__stat--money{color:var(--color-success);font-weight:600}.payroll-emp__chevron{color:var(--color-text-muted);font-size:.75rem;transition:transform .2s;display:inline-block}.payroll-emp__chevron--open{transform:rotate(180deg)}.payroll-emp__detail{padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--color-border)}.payroll-emp__grid{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.payroll-emp__cell{text-align:center;padding:var(--space-3);background:var(--color-surface-secondary);border-radius:var(--radius-md)}.payroll-emp__cell-label{color:var(--color-text-muted);margin-bottom:var(--space-1);font-size:.75rem;display:block}.payroll-emp__cell-value{color:var(--color-text);font-size:.875rem;font-weight:600;display:block}.payroll-emp__earnings{margin-top:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.payroll-emp__line{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);justify-content:space-between;font-size:.875rem;display:flex}.payroll-emp__line+.payroll-emp__line{border-top:1px solid var(--color-border)}.payroll-emp__line--total{background:var(--color-surface-secondary);color:var(--color-text);font-weight:600}.payroll-emp__section{margin-top:var(--space-4)}.payroll-emp__section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0 0 var(--space-2);font-size:.75rem;font-weight:600}.payroll-emp__row{padding:var(--space-2) 0;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);justify-content:space-between;font-size:.8125rem;display:flex}.payroll-emp__row:last-child{border-bottom:none}.payroll-emp__row-sub{color:var(--color-text-muted)}.payroll-emp__session{padding:var(--space-3);background:var(--color-surface-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.payroll-emp__session:last-child{margin-bottom:0}.payroll-emp__session-header{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.payroll-emp__session-job{font-size:.8125rem;font-weight:600}.payroll-emp__session-pay{color:var(--color-success);font-size:.8125rem;font-weight:600}.payroll-emp__session-meta{color:var(--color-text-muted);justify-content:space-between;font-size:.75rem;display:flex}.adm-metrics{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.adm-metric{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);text-align:center}.adm-metric__value{color:var(--color-text);font-size:1.75rem;font-weight:700;line-height:1.1;display:block}.adm-metric--primary .adm-metric__value{color:var(--color-primary)}.adm-metric--success .adm-metric__value,.adm-metric--money .adm-metric__value{color:var(--color-success)}.adm-metric__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--space-1);font-size:.75rem;font-weight:500;display:block}.adm-alerts{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.adm-alert{border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5)}.adm-alert--warning{background:var(--color-warning-bg);border:1px solid #e67e2233}.adm-alert--info{background:var(--color-primary-bg);border:1px solid #0f6b8a33}.adm-alert__header{align-items:center;gap:var(--space-3);display:flex}.adm-alert__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:inline-flex}.adm-alert--warning .adm-alert__icon{color:#b45309;background:#e67e2226}.adm-alert--info .adm-alert__icon{color:var(--color-primary);background:#0f6b8a26}.adm-alert__message{color:var(--color-text);font-size:.875rem;font-weight:600}.adm-alert__details{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;padding-left:34px;display:flex}.adm-alert__tag{padding:2px var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:#0000000d;font-size:.75rem;display:inline-block}.adm-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (width>=900px){.adm-grid{grid-template-columns:1fr 340px}}.adm-section{margin-bottom:var(--space-5)}.adm-section__header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.adm-section__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.adm-section__link{color:var(--color-primary);font-size:.8125rem;font-weight:500;text-decoration:none}.adm-section__link:hover{text-decoration:underline}.adm-job-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.adm-job-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);grid-template-columns:1fr 90px 70px 60px 100px;display:grid}.adm-job-row:last-child{border-bottom:none}.adm-job-row--header{background:var(--color-surface-secondary);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:var(--space-2) var(--space-4);font-size:.6875rem;font-weight:600}.adm-job-row__title{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;display:block;overflow:hidden}.adm-job-row__meta{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;display:block;overflow:hidden}.adm-job-row__pct{color:var(--color-primary);text-align:center;font-size:.8125rem;font-weight:600}.adm-job-row__pct--done{color:var(--color-success)}.adm-job-row__pct--zero{color:var(--color-text-muted);font-weight:400}.adm-job-row__req-count{color:var(--color-text-secondary);text-align:center;font-size:.75rem}.adm-job-row__req-count--zero{color:var(--color-text-muted)}.adm-job-row__status{text-align:right}.adm-job-row__progress,.adm-job-row__requests{text-align:center}.adm-staffing{align-items:center;gap:var(--space-2);display:flex}.adm-staffing__track{background:var(--color-surface-secondary);border-radius:3px;flex:1;height:6px;overflow:hidden}.adm-staffing__fill{background:var(--color-accent);border-radius:3px;height:100%;transition:width .3s}.adm-staffing__fill--full{background:var(--color-success)}.adm-staffing__label{color:var(--color-text-secondary);white-space:nowrap;text-align:right;min-width:28px;font-size:.6875rem;font-weight:600}.adm-staffing__label--gap{color:var(--color-accent)}.adm-live-dot{background:var(--color-success);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite adm-pulse}@keyframes adm-pulse{0%,to{opacity:1}50%{opacity:.4}}.adm-activity-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.adm-activity-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.adm-activity-row:last-child{border-bottom:none}.adm-activity-row__dot{background:var(--color-success);border-radius:50%;flex-shrink:0;width:8px;height:8px}.adm-activity-row__info{flex:1;min-width:0}.adm-activity-row__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;display:block;overflow:hidden}.adm-activity-row__job{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;display:block;overflow:hidden}.adm-activity-row__time{color:var(--color-text-secondary);white-space:nowrap;font-size:.75rem;font-weight:500}.adm-payroll{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.adm-payroll__row{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);justify-content:space-between;font-size:.875rem;display:flex}.adm-payroll__row:last-child{border-bottom:none}.adm-payroll__row--total{background:var(--color-surface-secondary);color:var(--color-text);font-weight:600}.adm-payroll__val{font-weight:600}.adm-payroll__row--total .adm-payroll__val{color:var(--color-success)}.adm-quick-nav{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.adm-quick-nav__item{padding:var(--space-2) var(--space-3);color:var(--color-primary);background:var(--color-primary-bg);border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;text-decoration:none;transition:background .15s;display:inline-block}.adm-quick-nav__item:hover{background:#0f6b8a24}.adm-sidebar{min-width:0}@media (width<=700px){.adm-job-row{gap:var(--space-2);grid-template-columns:1fr auto}.adm-job-row__staffing,.adm-job-row__progress,.adm-job-row__requests,.adm-job-row--header{display:none}}.reg-codes{margin-top:var(--space-8)}.reg-codes__header{margin-bottom:var(--space-4)}.reg-codes__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.reg-codes__create{margin-bottom:var(--space-4)}.reg-codes__create-row{gap:var(--space-2);align-items:center;display:flex}.reg-codes__input{width:180px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font:inherit;background:var(--color-surface);color:var(--color-text);font-size:.8125rem}.reg-codes__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-bg);outline:none}.reg-codes__create-btn{white-space:nowrap}.reg-codes__error{margin-top:var(--space-2);color:var(--color-danger);font-size:.75rem;display:block}.reg-codes__list{gap:var(--space-2);flex-direction:column;display:flex}.reg-code{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex}.reg-code--inactive{opacity:.55}.reg-code__main{flex:1;min-width:0}.reg-code__value{letter-spacing:.08em;color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:Courier New,monospace;font-size:.9375rem;font-weight:700;display:inline-block}.reg-code__value:hover{text-decoration:underline}.reg-code__meta{gap:var(--space-1);margin-top:var(--space-1);color:var(--color-text-muted);flex-wrap:wrap;font-size:.6875rem;display:flex}.reg-code__sep{color:var(--color-border-strong)}.reg-code__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.reg-code__disable{font:inherit;color:var(--color-danger);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;font-size:.75rem;font-weight:600;transition:background .15s}.reg-code__disable:hover{background:var(--color-danger-bg)}.reg-code__disable:disabled{opacity:.5;cursor:not-allowed}@media (width<=600px){.reg-code{align-items:flex-start;gap:var(--space-2);flex-direction:column}.reg-code__actions{align-self:flex-end}}.prod-metrics{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.prod-metric{gap:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);flex-direction:column;flex:1;min-width:120px;display:flex}.prod-metric__label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:600}.prod-metric__value{color:var(--color-text);font-size:1.25rem;font-weight:700}.prod-table-wrap{margin-bottom:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.prod-table{border-collapse:collapse;width:100%;font-size:.85rem}.prod-table th{background:var(--color-surface-secondary);padding:var(--space-3) var(--space-4);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap;font-size:.7rem;font-weight:600}.prod-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:middle}.prod-table tbody tr:last-child td{border-bottom:none}.prod-table tbody tr:hover{background:var(--color-surface-secondary)}.prod-task-cell{flex-direction:column;gap:2px;display:flex}.prod-task-cell__name{color:var(--color-text);font-weight:600}.prod-task-cell__sku{color:var(--color-text-muted);font-size:.75rem}.prod-avg-cell{align-items:center;gap:var(--space-1);display:inline-flex}.prod-trend{font-size:.65rem;line-height:1}.prod-trend--faster{color:var(--color-success)}.prod-trend--slower{color:var(--color-danger)}.prod-trend--neutral{color:var(--color-text-muted)}.prod-final{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-6)}.prod-final__title{margin:0 0 var(--space-4) 0;color:var(--color-text);font-size:.85rem;font-weight:700}.prod-final__grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.prod-final__card{background:var(--color-surface-secondary);border-radius:var(--radius-sm);padding:var(--space-3);flex-direction:column;gap:2px;display:flex}.prod-final__name{color:var(--color-text);font-size:.85rem;font-weight:600}.prod-final__sku{color:var(--color-text-muted);font-size:.75rem}.prod-final__units{color:var(--color-primary);margin-top:var(--space-1);font-size:.85rem;font-weight:600}.prod-final__value{color:var(--color-success);font-size:.8rem;font-weight:600}.prod-final__totals{padding-top:var(--space-3);border-top:1px solid var(--color-border);color:var(--color-text-secondary);justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.prod-trend-section{margin-bottom:var(--space-6)}.prod-trend-section__title{margin:0 0 var(--space-3) 0;color:var(--color-text);font-size:.85rem;font-weight:700}@media (width<=600px){.prod-metrics{flex-direction:column}.prod-metric{min-width:unset}.prod-final__grid{grid-template-columns:1fr}}.prod-period-picker{align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex}.prod-period-picker__tabs{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;overflow:hidden}.prod-period-picker__tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:.4rem .85rem;font-size:.8rem;font-weight:500;transition:background .15s,color .15s}.prod-period-picker__tab:hover{background:var(--color-hover)}.prod-period-picker__tab--active,.prod-period-picker__tab--active:hover{background:var(--color-primary);color:#fff}.prod-period-picker__controls{align-items:center;gap:var(--space-2);display:flex}.prod-period-picker__arrow{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:2rem;height:2rem;color:var(--color-text);justify-content:center;align-items:center;font-size:1.1rem;transition:background .15s;display:flex}.prod-period-picker__arrow:hover{background:var(--color-hover)}.prod-period-picker__label{color:var(--color-text);text-align:center;min-width:10rem;font-size:.85rem;font-weight:600}@media (width<=600px){.prod-period-picker{align-items:stretch}.prod-period-picker__tabs{justify-content:stretch}.prod-period-picker__tab{text-align:center;flex:1}.prod-period-picker__controls{justify-content:center}}.recognition-walls{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.recognition-wall{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.recognition-wall--fame{border-left:3px solid #d4a017}.recognition-wall--shame{border-left:3px solid var(--color-danger)}.recognition-wall__title{text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-4) 0;color:var(--color-text-secondary);font-size:.85rem;font-weight:600}.recognition-wall--fame .recognition-wall__title{color:#9a7b10}.recognition-wall--shame .recognition-wall__title{color:var(--color-danger)}.recognition-wall__list{gap:var(--space-3);flex-direction:column;display:flex}.recognition-card{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);display:flex}.recognition-card--fame{background:#d4a0170f}.recognition-card--shame{background:var(--color-danger-bg)}.recognition-card__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.1rem;display:flex}.recognition-card--fame .recognition-card__icon{color:#d4a017;background:#d4a0171f}.recognition-card--shame .recognition-card__icon{color:var(--color-danger);background:#c0392b1a}.recognition-card__info{flex-direction:column;min-width:0;display:flex}.recognition-card__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.recognition-card__role{color:var(--color-text-muted);text-transform:capitalize;font-size:.75rem}.recognition-cell__buttons{gap:var(--space-1);display:flex}.recognition-btn{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:28px;height:28px;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex}.recognition-btn:hover{border-color:var(--color-border-strong)}.recognition-btn--fame:hover,.recognition-btn--fame.recognition-btn--active{color:#d4a017;background:#d4a01714;border-color:#d4a017}.recognition-btn--shame:hover,.recognition-btn--shame.recognition-btn--active{color:var(--color-danger);background:var(--color-danger-bg);border-color:var(--color-danger)}.recognition-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=640px){.recognition-walls{grid-template-columns:1fr}}.sms-broadcast{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-top:var(--space-6)}.sms-broadcast__header{margin-bottom:var(--space-4);justify-content:space-between;align-items:baseline;display:flex}.sms-broadcast__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.sms-broadcast__count{color:var(--color-text-muted);font-size:.8rem}.sms-broadcast__body{gap:var(--space-3);flex-direction:column;display:flex}.sms-broadcast__textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;background:var(--color-surface);min-height:70px;color:var(--color-text);box-sizing:border-box;font-family:inherit;font-size:.9rem;transition:border-color .15s}.sms-broadcast__textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-bg);outline:none}.sms-broadcast__textarea:disabled{opacity:.6;cursor:not-allowed}.sms-broadcast__footer{justify-content:space-between;align-items:center;display:flex}.sms-broadcast__charcount{color:var(--color-text-muted);font-size:.75rem}.sms-broadcast__result{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.85rem;display:flex}.sms-broadcast__result--success{background:var(--color-success-bg);color:var(--color-success)}.sms-broadcast__result--partial{background:var(--color-warning-bg);color:var(--color-accent)}.sms-broadcast__result--failed{background:var(--color-danger-bg);color:var(--color-danger)}.sms-broadcast__result-icon{flex-shrink:0;font-size:1rem;font-weight:700;line-height:1.4}.sms-broadcast__result-info{gap:var(--space-2);flex-direction:column;display:flex}.sms-broadcast__result-text{font-weight:500}.sms-broadcast__errors{gap:var(--space-1);opacity:.85;flex-direction:column;font-size:.75rem;display:flex}.sms-broadcast__error-item{white-space:nowrap;text-overflow:ellipsis;max-width:400px;overflow:hidden}.qc-clockout-btn{align-items:center;gap:var(--space-1);border-radius:var(--radius);background:var(--color-danger);color:#fff;cursor:pointer;white-space:nowrap;border:none;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.qc-clockout-btn:hover:not(:disabled){background:#a93226}.qc-clockout-btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--space-4);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--color-surface);border-radius:var(--radius-lg,12px);padding:var(--space-5);width:min(100%,480px);max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #0003}.modal-dialog--wide{width:min(100%,640px)}.modal-dialog--danger{border-top:4px solid var(--color-danger);width:min(100%,520px)}.modal-dialog__title{margin:0 0 var(--space-2) 0;color:var(--color-text);font-size:1.25rem;font-weight:700}.modal-dialog__body{color:var(--color-text-secondary);margin:0 0 var(--space-3) 0;font-size:.875rem;line-height:1.5}.modal-dialog__body--warning{color:var(--color-danger)}.modal-dialog__count{color:var(--color-danger);padding:var(--space-2) var(--space-3);border-radius:var(--radius);text-align:center;margin-bottom:var(--space-3);background:#c0392b14;font-size:.9rem;font-weight:600}.modal-dialog__empty{text-align:center;padding:var(--space-4) 0;color:var(--color-text-muted)}.modal-dialog__list{border:1px solid var(--color-border);border-radius:var(--radius);max-height:240px;margin-bottom:var(--space-3);overflow-y:auto}.modal-dialog__list-item{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;font-size:.8125rem;display:flex}.modal-dialog__list-item:last-child{border-bottom:none}.modal-dialog__list-meta{color:var(--color-text-muted);font-size:.75rem}.modal-dialog__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3);display:flex}.adm-notif-btn{align-items:center;gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:border-color .15s;display:inline-flex;position:relative}.adm-notif-btn:hover{border-color:var(--color-primary)}.adm-notif-badge{background:var(--color-danger);color:#fff;border-radius:99px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.6875rem;font-weight:700;display:inline-flex}.adm-notif-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--space-4);box-shadow:0 4px 16px #0000000f}.adm-notif-panel__header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.adm-notif-panel__header h3{margin:0;font-size:.875rem;font-weight:600}.adm-notif-panel__close{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;font-size:1.25rem;line-height:1}.adm-notif-panel__list{max-height:240px;overflow-y:auto}.adm-notif-item{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.adm-notif-item:last-child{border-bottom:none}.adm-notif-item--unread{background:var(--color-primary-bg)}.adm-notif-item__message{margin:0;font-size:.8125rem;line-height:1.45}.adm-notif-item__time{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:.7rem}.clockout-log-list{gap:var(--space-3);flex-direction:column;max-height:400px;display:flex;overflow-y:auto}.clockout-log-batch{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.clockout-log-batch__header{padding:var(--space-2) var(--space-3);background:var(--color-surface-secondary);gap:var(--space-1);flex-wrap:wrap;align-items:center;font-size:.8125rem;display:flex}.clockout-log-batch__time{color:var(--color-text-muted);margin-left:auto;font-size:.75rem}.clockout-log-batch__employees{flex-direction:column;display:flex}.clockout-log-emp{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);font-size:.8125rem;display:flex}.clockout-log-emp__name{flex:1;font-weight:500}.clockout-log-emp__times{color:var(--color-text-muted);font-size:.75rem}.clockout-log-emp__edit{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--radius);cursor:pointer;background:0 0;padding:2px 10px;font-size:.75rem;font-weight:500;transition:background .15s}.clockout-log-emp__edit:hover{background:var(--color-primary-bg)}.shift-edit-form{gap:var(--space-3);flex-direction:column;display:flex}.qc-bulk-clockout-section{margin-top:var(--space-5);border-top:2px solid var(--color-danger);padding-top:var(--space-4)}.qc-bulk-clockout-section__inner{justify-content:space-between;align-items:center;gap:var(--space-4);border-radius:var(--radius);padding:var(--space-4);background:#c0392b0a;border:1px solid #c0392b26;display:flex}.qc-bulk-clockout-section__title{margin:0 0 var(--space-1) 0;color:var(--color-danger);font-size:1rem;font-weight:600}.qc-bulk-clockout-section__desc{color:var(--color-text-secondary);margin:0;font-size:.8125rem;line-height:1.4}@media (width<=600px){.qc-bulk-clockout-section__inner{text-align:center;flex-direction:column}}
