@font-face{font-family:__satoshi_992709;src:url(/_next/static/media/b1dca2a5d44fc7a4-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:__satoshi_992709;src:url(/_next/static/media/12084922609e6532-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:__satoshi_Fallback_992709;src:local("Arial");ascent-override:102.23%;descent-override:24.29%;line-gap-override:10.12%;size-adjust:98.80%}.__className_992709{font-family:__satoshi_992709,__satoshi_Fallback_992709}.__variable_992709{--font-satoshi:"__satoshi_992709","__satoshi_Fallback_992709"}:root{--color-bg:#fff;--color-surface:#fdf2f8;--color-surface-2:#fce7f3;--color-border:#f9a8d4;--color-border-subtle:#fbcfe8;--color-text:#1f2937;--color-muted:#6b7280;--color-accent:#db2777;--color-accent-hover:#be185d;--color-accent-soft:#fce7f3;--color-danger:#b91c1c;--color-success:#15803d;--shadow-sm:0 1px 2px rgba(15,23,42,.06);--shadow-md:0 4px 12px rgba(15,23,42,.08);--radius:12px;--radius-sm:8px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--font-sans:var(--font-satoshi,"Satoshi"),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}.app-wordmark{font-family:var(--font-sans);font-weight:700;letter-spacing:-.02em}*{box-sizing:border-box}html{color-scheme:light}body,html{font-family:var(--font-sans)}body{margin:0;font-weight:400;background:var(--color-bg);color:var(--color-text);min-height:100vh;line-height:1.5}html:has(.app-shell){overflow:hidden;height:100%}body:has(.app-shell){overflow:hidden;height:100%;min-height:100%}a{color:var(--color-accent);-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border)}a:hover{color:var(--color-accent-hover)}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.public-main{padding:var(--space-3);max-width:720px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.hero-title{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;letter-spacing:-.02em;margin:0 0 var(--space-1);color:var(--color-text)}.hero-lead{color:var(--color-muted);margin:0 0 var(--space-3);font-size:1.0625rem}.stack{flex-direction:column;gap:var(--space-2)}.row,.stack{display:flex}.row{gap:var(--space-1);flex-wrap:wrap;align-items:center}.page-header{margin-bottom:var(--space-3)}.page-header h1{margin:0 0 var(--space-1);font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.page-header p{margin:0;color:var(--color-muted);font-size:.9375rem}.card{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius);padding:var(--space-3);box-shadow:var(--shadow-sm)}.card--muted{background:var(--color-surface)}.btn{cursor:pointer;border-radius:var(--radius-sm);padding:10px 16px;font-weight:600;font-size:.9375rem;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background:var(--color-accent-hover);color:#fff}.btn--primary:focus-visible:not(:disabled){color:#fff}.btn--kiosk-lg{width:100%;min-height:56px;padding:14px 20px;font-size:1.125rem}.kiosk-shift-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius);background:linear-gradient(180deg,var(--color-surface) 0,var(--color-bg) 100%);box-shadow:var(--shadow-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.kiosk-shift-card__split{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.kiosk-shift-card__split-col{min-width:0;flex:1 1 200px}.kiosk-shift-card__split-col--break{flex:0 1 160px;text-align:right}.kiosk-shift-card__split-col--schedule .kiosk-shift-card__shift-list,.kiosk-shift-card__split-col--schedule .kiosk-shift-card__value{text-align:left}@media (max-width:420px){.kiosk-shift-card__split-col--break{flex:1 1 100%;text-align:left}}.kiosk-shift-card__block{margin:0}.kiosk-shift-card__label{margin:0 0 4px;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.kiosk-shift-card__value{margin:0;font-size:1rem;line-height:1.4;color:var(--color-text)}.kiosk-shift-card__value--emphasis{font-size:1.35rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--color-text)}.kiosk-shift-card__shift-list{margin:0;padding:0;list-style:none}.kiosk-shift-card__shift-item{margin:0;padding:6px 0 0;font-size:1.1rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text)}.kiosk-shift-card__shift-item:first-child{padding-top:0}.kiosk-shift-card__break-intervals{margin:6px 0 0;padding:0;list-style:none;font-size:.8rem;line-height:1.45;color:var(--color-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kiosk-shift-card__break-intervals--empty{margin:6px 0 0;font-size:.8rem;color:var(--color-muted)}.kiosk-shift-card__break-interval-line{margin:0;padding:2px 0 0}.kiosk-shift-card__break-interval-line:first-child{padding-top:0}.kiosk-shift-card__banner{margin:0;padding:10px 12px;border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-hover);font-weight:600;font-size:.95rem;text-align:center}.kiosk-shift-card__banner--overtime{background:var(--color-warn-bg,#fef3c7);color:var(--color-warn-fg,#92400e)}.kiosk-shift-card__overtime-note{margin:0 0 var(--space-2);font-size:.875rem;line-height:1.45;color:var(--color-muted);text-align:center}.kiosk-clock-actions{display:flex;flex-direction:column;gap:var(--space-2);width:100%;margin-top:var(--space-1)}.kiosk-dialog-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:var(--space-3);background:rgba(15,23,42,.55);box-sizing:border-box}.kiosk-dialog{width:100%;max-width:420px;max-height:min(90vh,560px);overflow:auto;padding:var(--space-3);border-radius:var(--radius);background:var(--color-bg);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-md)}.kiosk-dialog__title{margin:0 0 var(--space-2);font-size:1.25rem;font-weight:700;color:var(--color-text);line-height:1.3}.kiosk-dialog__text{margin:0 0 var(--space-3);font-size:.95rem;line-height:1.5;color:var(--color-text)}.kiosk-dialog__label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:600;color:var(--color-text)}.kiosk-dialog__textarea{width:100%;min-height:88px;resize:vertical;margin-bottom:var(--space-2)}.kiosk-dialog__field-error{margin:0 0 var(--space-2);font-size:.875rem;color:var(--color-danger)}.kiosk-dialog__hint{margin:0 0 var(--space-3);font-size:.85rem;line-height:1.45;color:var(--color-muted)}.kiosk-dialog__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.btn--secondary{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border-subtle);box-shadow:var(--shadow-sm)}.btn--secondary:hover:not(:disabled){background:var(--color-surface);border-color:var(--color-border)}a.btn{text-decoration:none;box-sizing:border-box}a.btn.btn--primary:focus-visible,a.btn.btn--primary:hover{color:#fff}a.btn.btn--secondary:focus-visible,a.btn.btn--secondary:hover{color:var(--color-text)}.field,.field-label{display:flex;flex-direction:column;gap:6px;font-size:.875rem}.field-label span,.field-label-heading{font-weight:500;color:var(--color-text)}.field-label-heading{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.field-label-heading__text{font-weight:500}.field-required-mark{color:var(--color-danger);font-weight:600;line-height:1}.field-hint-btn{display:inline-flex;align-items:center;justify-content:center;padding:2px;margin:0;border:none;background:transparent;color:var(--color-muted);cursor:help;border-radius:var(--radius-sm);flex-shrink:0}.field-hint-btn:hover{color:var(--color-accent);background:var(--color-accent-soft)}.field-hint-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.page-title-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.page-title-toolbar__meta{min-width:0;flex:1 1 12rem}.page-title-toolbar__actions.row{flex-shrink:0;justify-content:flex-end}.input,input.input{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background:#fff;color:var(--color-text);width:100%;min-height:44px}.input:focus,input.input:focus{border-color:var(--color-border);box-shadow:0 0 0 3px rgba(219,39,119,.12)}.input-group--suffix{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;min-width:0}.input-group--suffix .input,.input-group--suffix input.input{flex:1 1 auto;min-width:0;width:auto;max-width:100%}.input-group--suffix__suffix{flex-shrink:0;font-size:.875rem;color:var(--color-muted);white-space:nowrap}.staff-modal-payroll-row>.field-label{min-width:0}.error{color:var(--color-danger)}.error,.success{font-size:.875rem;margin:0}.success{color:var(--color-success)}.schedule-staff-picker-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.schedule-staff-picker-row .input{flex:1 1 220px;min-width:0}.hr-status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1.2;white-space:nowrap;background:rgba(219,39,119,.12);color:#9d174d;border:1px solid rgba(219,39,119,.25)}.app-shell{display:flex;align-items:stretch;width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;overflow:hidden;background:var(--color-surface)}.sidebar-overlay{position:fixed;inset:0;z-index:25;background:rgba(15,23,42,.35);border:none;padding:0;cursor:pointer}.sidebar{width:260px;flex:0 0 260px;height:100%;min-height:0;max-height:100%;background:#fff;border-right:1px solid var(--color-border-subtle);padding:var(--space-3) var(--space-2);display:flex;flex-direction:column;gap:var(--space-3);align-self:stretch;box-sizing:border-box;overflow:hidden}.sidebar-collapse-toggle{display:none;width:32px;height:32px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background:#fff;cursor:pointer;color:var(--color-muted);flex-shrink:0;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.sidebar-collapse-toggle:hover{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent)}.sidebar-collapse-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (min-width:901px){.sidebar-collapse-toggle{display:inline-flex;align-items:center;justify-content:center}.sidebar{transition:width .22s ease,flex-basis .22s ease,padding .22s ease}.app-shell--sidebar-collapsed .sidebar{width:76px;flex:0 0 76px;padding-left:10px;padding-right:10px}.app-shell--sidebar-collapsed .sidebar-brand .sidebar-tagline{display:none}.app-shell--sidebar-collapsed .sidebar-brand__row{flex-direction:column;align-items:center;gap:6px}.app-shell--sidebar-collapsed .sidebar-logo{justify-content:center;width:100%}.app-shell--sidebar-collapsed .sidebar-logo .nordshift-brand{justify-content:center}.app-shell--sidebar-collapsed .sidebar-link--with-icon{justify-content:center;padding-left:10px;padding-right:10px;position:relative;z-index:1}.app-shell--sidebar-collapsed .sidebar-link__text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media (min-width:901px){.app-shell--sidebar-collapsed .sidebar-link--with-icon:focus-visible,.app-shell--sidebar-collapsed .sidebar-link--with-icon:hover{z-index:39}}.sidebar-floating-tooltip{position:fixed;z-index:100;transform:translateY(-50%);padding:6px 10px;border-radius:var(--radius-sm);background:var(--color-text);color:#fff;font-size:.8125rem;font-weight:500;pointer-events:none;box-shadow:var(--shadow-md);max-width:min(280px,calc(100vw - 24px));white-space:normal;line-height:1.35}@media (max-width:900px){.app-shell--sidebar-collapsed .sidebar{width:min(260px,88vw);flex:0 0 auto;padding:var(--space-3) var(--space-2)}.app-shell--sidebar-collapsed .sidebar-link__text{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}.app-shell--sidebar-collapsed .sidebar-link--with-icon{justify-content:flex-start}.app-shell--sidebar-collapsed .sidebar-brand .sidebar-tagline{display:block}.app-shell--sidebar-collapsed .sidebar-logo{justify-content:flex-start}}.sidebar-nav--main{flex:1 1 auto;min-height:0;overflow-y:auto}.sidebar-footer{margin-top:auto;flex-shrink:0;padding-top:var(--space-2);display:flex;flex-direction:column;gap:6px}.sidebar-link--footer{font-weight:600;font-size:.875rem}.sidebar-link--walkthrough{border:none;background:var(--color-accent-soft);color:var(--color-accent);cursor:pointer;width:100%;font-family:inherit;margin-top:2px}.sidebar-link--walkthrough .sidebar-link__icon{color:var(--color-accent)}.sidebar-link--walkthrough:focus-visible,.sidebar-link--walkthrough:hover{background:var(--color-surface-2);color:var(--color-accent-hover)}.sidebar-link--walkthrough:focus-visible .sidebar-link__icon,.sidebar-link--walkthrough:hover .sidebar-link__icon{color:var(--color-accent-hover)}.sidebar-brand{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.sidebar-brand__row{justify-content:space-between;gap:8px}.sidebar-brand__row,.sidebar-logo{display:flex;align-items:center;min-width:0}.sidebar-logo{text-decoration:none;overflow:hidden}.sidebar-logo:hover .nordshift-brand__text{color:var(--color-accent)}.nordshift-brand{display:inline-flex;align-items:center;gap:8px;min-width:0}.nordshift-brand__icon{flex-shrink:0;border-radius:6px;display:block;width:var(--brand-icon-size,26px)!important;height:var(--brand-icon-size,26px)!important;max-width:var(--brand-icon-size,26px);max-height:var(--brand-icon-size,26px);object-fit:contain}.nordshift-brand__text{font-weight:700;font-size:1.0625rem;line-height:1.2;color:var(--color-text);letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nordshift-brand--hero{gap:8px}.nordshift-brand--hero .nordshift-brand__text,.nordshift-brand--sidebar .nordshift-brand__text{font-size:1.0625rem}.nordshift-brand--inline .nordshift-brand__text{font-size:inherit;line-height:inherit;color:inherit;text-shadow:none}.nordshift-brand--on-dark .nordshift-brand__text{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.35)}.sidebar-logo:hover{color:inherit}.sidebar-tagline{font-size:.75rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-link{display:block;padding:10px 12px;border-radius:var(--radius-sm);color:var(--color-text);text-decoration:none;font-size:.9375rem;font-weight:500}.sidebar-link--with-icon{display:flex;align-items:center;gap:10px}.sidebar-link__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .18s ease}.sidebar-nav-badge{margin-left:auto;flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.65rem;font-weight:700;line-height:18px;text-align:center}@media (min-width:901px){.app-shell--sidebar-collapsed .sidebar-nav-badge{position:absolute;top:4px;right:6px;margin-left:0}}.sidebar-link__icon{flex-shrink:0;color:var(--color-muted)}.sidebar-link--active .sidebar-link__icon,.sidebar-link:hover .sidebar-link__icon{color:inherit}.sidebar-link:hover{background:var(--color-surface)}.sidebar-link--active{background:var(--color-accent-soft);color:var(--color-accent)}.app-main{flex:1 1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.app-main,.content-wrap{display:flex;flex-direction:column}.content-wrap{width:100%}.content-wrap>.top-bar{flex-shrink:0}.page-body{padding:var(--space-3) 10px;width:100%;max-width:none;margin:0;box-sizing:border-box}.app-main.app-main--page-scroll,.content-wrap--page-scroll{overflow:hidden;min-height:0}.content-wrap--page-scroll{flex:1 1 auto}.page-body--page-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.admin-settings-page-root{padding-bottom:var(--space-3)}@media (max-width:900px){.sidebar-overlay{display:block}.sidebar{position:fixed;z-index:28;left:0;top:0;bottom:0;height:100dvh;max-height:100dvh;transform:translateX(-100%);transition:transform .2s ease;box-shadow:var(--shadow-md)}.sidebar.sidebar--open{transform:translateX(0)}.app-main{min-height:0}}.top-bar{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);padding:var(--space-2) 10px;background:#fff;border-bottom:1px solid var(--color-border-subtle);min-height:56px;box-sizing:border-box}.manager-mode-switcher{display:flex;flex-direction:column;align-items:center;gap:2px;max-width:100%}.manager-mode-switcher__segments{display:inline-flex;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface,#fff)}.manager-mode-switcher__btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.8125rem;font-weight:600;border:none;background:transparent;color:var(--color-muted);cursor:pointer;white-space:nowrap}.manager-mode-switcher__btn:hover{color:var(--color-text);background:var(--color-surface-muted,#f8fafc)}.manager-mode-switcher__btn.is-active{background:color-mix(in srgb,var(--color-accent,#2563eb) 12%,transparent);color:var(--color-accent,#2563eb)}.manager-mode-switcher__label{font-size:.6875rem;color:var(--color-muted);letter-spacing:.02em}.manager-mode-switcher--toolbar{flex-direction:row;align-items:center;gap:8px}.manager-mode-switcher--toolbar .manager-mode-switcher__label{white-space:nowrap;line-height:1.2}.manager-mode-switcher--toolbar .manager-mode-switcher__btn{padding:5px 8px;font-size:.75rem;gap:4px}.top-bar-menu{display:none;width:40px;height:40px;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background:#fff;cursor:pointer;color:var(--color-text);flex-shrink:0}.top-bar-menu:hover{background:var(--color-surface)}.top-bar-staff-location{flex:1 1;display:flex;align-items:center;gap:6px;margin:0;padding:0 var(--space-1);font-size:.8125rem;color:var(--color-muted);white-space:nowrap}.top-bar-staff-location,.top-bar-staff-location span{min-width:0;overflow:hidden;text-overflow:ellipsis}.top-bar-staff-location__icon{flex-shrink:0;color:var(--color-muted)}.sidebar-logout-mobile{display:none}@media (min-width:901px){.sidebar-logout-mobile{display:none!important}}.top-bar-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;flex-shrink:0;margin-left:auto}.top-bar-lang{gap:2px;padding:2px;border-radius:var(--radius-sm,8px);border:1px solid var(--color-border-subtle);background:var(--color-surface,#f8fafc)}.top-bar-lang,.top-bar-lang-btn{display:inline-flex;align-items:center}.top-bar-lang-btn{gap:4px;padding:6px 8px;border:none;border-radius:6px;background:transparent;color:var(--color-text);font-size:.75rem;font-weight:600;cursor:pointer}.top-bar-lang-btn:hover{background:var(--color-bg,#fff)}.top-bar-lang-btn--active{background:var(--color-accent-soft,#fce7f3);color:var(--color-accent-hover,#9d174d)}.top-bar-toolbar-cluster{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.top-bar-branch{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 8px;border-radius:var(--radius-sm,8px);border:1px solid var(--color-border-subtle);background:var(--color-surface,#f8fafc);max-width:10.5rem}.top-bar-branch__icon{flex-shrink:0;color:var(--color-muted)}.top-bar-branch__select{flex:1 1;min-width:0;max-width:8.5rem;padding:5px 4px 5px 0;border:none;border-radius:6px;background:transparent;color:var(--color-text);font-size:.75rem;font-weight:600;font-family:inherit;cursor:pointer;line-height:1.2}.top-bar-branch__select:disabled{opacity:.6;cursor:not-allowed}.top-bar-branch__select:focus-visible{outline:2px solid var(--color-accent,#2563eb);outline-offset:1px}.top-bar-user{display:inline-flex;align-items:center;flex-shrink:0;font-size:.875rem;color:var(--color-muted)}.top-bar-role{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent)}.top-bar-notify{position:relative}.top-bar-notify-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer}.top-bar-notify-btn:hover{background:#f6f7f9}.top-bar-notify-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.65rem;font-weight:700;line-height:18px;text-align:center}.top-bar-notify-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100vw - 24px));max-height:min(420px,70vh);display:flex;flex-direction:column;background:#fff;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);box-shadow:0 8px 24px rgba(0,0,0,.08);z-index:50}.top-bar-notify-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--color-border-subtle);font-size:.875rem;font-weight:600}.top-bar-notify-list{overflow:auto;flex:1 1;min-height:0}.top-bar-notify-empty{margin:0;padding:16px 12px;font-size:.875rem;color:var(--color-muted)}.top-bar-notify-item{display:block;width:100%;text-align:left;padding:10px 12px;border:none;border-bottom:1px solid var(--color-border-subtle);background:transparent;cursor:pointer;font:inherit}.top-bar-notify-item:hover{background:#f9fafb}.top-bar-notify-item--unread{background:#f3f7ff}.top-bar-notify-title{font-weight:600;font-size:.875rem}.top-bar-notify-body{margin-top:4px;font-size:.8125rem;color:var(--color-muted)}.top-bar-notify-meta{margin-top:6px;font-size:.7rem;color:var(--color-muted)}.top-bar-notify-foot{margin:0;font-size:.7rem;color:var(--color-muted);line-height:1.4}.top-bar-notify-foot,.top-bar-notify-viewall{padding:8px 12px;border-top:1px solid var(--color-border-subtle)}.notifications-center__toolbar .notifications-center__actions,.notifications-center__toolbar .notifications-center__tabs{display:flex;flex-wrap:wrap;gap:var(--space-2)}.notifications-center__list-wrap{padding:0}.notifications-center__row{display:grid;grid-template-columns:auto 1fr;grid-gap:var(--space-2);gap:var(--space-2);align-items:flex-start;padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.notifications-center__row:last-child{border-bottom:none}.notifications-center__row--unread{background:var(--color-surface)}.notifications-center__row--pulse{animation:notifications-focus-pulse 1.5s ease-out 1}@keyframes notifications-focus-pulse{0%{outline:2px solid var(--color-primary);outline-offset:2px}to{outline:2px solid transparent;outline-offset:6px}}.notifications-center__check{margin-top:4px}.notifications-center__title-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:baseline;justify-content:space-between}.notifications-center__body-text{margin:6px 0;font-size:.9rem;line-height:1.45;white-space:pre-wrap}.notifications-center__type{font-size:.75rem;text-transform:uppercase;letter-spacing:.02em}.notifications-center__row-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.notifications-center__foot{margin-top:var(--space-2)}pre{background:var(--color-surface);border:1px solid var(--color-border-subtle);padding:var(--space-2);border-radius:var(--radius-sm);overflow:auto;font-size:.8125rem}ul.plain{margin:0;padding-left:1.25rem;color:var(--color-text)}code{font-size:.875em;background:var(--color-surface);padding:2px 6px;border-radius:4px}.unauthorized-card{max-width:420px;margin:var(--space-4) auto}.login-card{max-width:420px;margin:0 auto}.login-split{min-height:100vh;display:flex;flex-direction:row;align-items:stretch;background:var(--color-bg)}.login-split__hero{position:relative;flex:0 0 40%;min-height:320px;overflow:hidden;background:#0f1729}.login-split__hero-img{object-fit:cover;object-position:58% center}.login-split__hero--home .login-split__hero-img,.login-split__hero--kiosk .login-split__hero-img{object-position:center 22%}.login-split__hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,42,.82) 0,rgba(15,23,42,.25) 45%,rgba(15,23,42,.08) 72%,rgba(15,23,42,.2));pointer-events:none;z-index:1}.login-split__brand{top:var(--space-4);display:inline-flex;align-items:center;max-width:calc(100% - var(--space-4) * 2);padding:0;background:transparent;box-shadow:none}.login-split__brand,.login-split__tagline{position:absolute;left:var(--space-4);z-index:2}.login-split__tagline{bottom:var(--space-4);right:var(--space-4);margin:0;font-size:clamp(1rem,2vw,1.125rem);font-weight:600;line-height:1.45;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45)}.login-split__panel{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:var(--space-4);min-width:0}.login-split__panel-inner{width:100%;max-width:500px;margin:0 auto}.login-split__title{margin:0 0 var(--space-1);font-size:clamp(1.5rem,3vw,1.75rem);font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.login-split__lead{margin:0 0 var(--space-4);font-size:1rem;line-height:1.5;color:var(--color-muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-split:has(.login-split__hero--kiosk) .login-split__panel{padding:var(--space-2) var(--space-2)}@media (min-width:901px){.login-split:has(.login-split__hero--kiosk) .login-split__panel{padding:var(--space-2) var(--space-3)}}.login-split:has(.login-split__hero--kiosk) .login-split__panel-inner{max-width:720px}.login-split:has(.login-split__hero--kiosk) .login-split__lead{margin-bottom:var(--space-2)}.kiosk-pin{--kiosk-pad-line:#d1d5db}.kiosk-pin__clock{background:var(--color-accent);color:#fff;text-align:center;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.kiosk-pin__clock-time{font-size:clamp(2.25rem,8vw,3rem);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:.02em}.kiosk-pin__clock-date{margin-top:6px;font-size:clamp(.95rem,2.5vw,1.1rem);font-weight:500;opacity:.96}.kiosk-pin__field,.kiosk-pin__field-wrap{display:block;margin:0}.kiosk-pin__field{width:100%;padding:14px 16px;font-size:1.25rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em;font-family:var(--font-sans);border:none;border-bottom:1px solid var(--kiosk-pad-line);background:#fff;color:var(--color-text);border-radius:0}.kiosk-pin__field::placeholder{color:#9ca3af;letter-spacing:.06em}.kiosk-pin__field:focus{outline:2px solid var(--color-accent);outline-offset:-2px;position:relative;z-index:1}.kiosk-pin__pad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--kiosk-pad-line);border:1px solid var(--kiosk-pad-line);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);overflow:hidden}.kiosk-pin__key{min-height:54px;margin:0;padding:0;font-size:1.35rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border:none;background:#fff;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center}.kiosk-pin__key--num:hover{background:#f3f4f6}.kiosk-pin__key--num:active{background:#e5e7eb}.kiosk-pin__key--action{background:var(--color-accent);color:#fff}.kiosk-pin__key--action:active,.kiosk-pin__key--action:hover{background:var(--color-accent-hover)}.kiosk-attendance-board__scroll{margin-top:var(--space-3);max-height:min(58vh,560px);overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--kiosk-pad-line,#d1d5db);border-radius:var(--radius-sm);background:#fff}.kiosk-attendance-board__table{width:100%;min-width:1100px;border-collapse:collapse;font-size:1rem}.kiosk-attendance-board__time-cell{white-space:nowrap;line-height:1.2}.kiosk-attendance-board__time-main{display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500}.kiosk-attendance-board__time-sub{display:block;margin-top:2px;font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-muted);letter-spacing:.01em}.kiosk-attendance-board__overtime,.kiosk-attendance-board__punched{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.kiosk-attendance-board__overtime{color:var(--color-danger);font-weight:600}.kiosk-attendance-board__pulse--warn{background:#ef4444}.kiosk-attendance-board__punched--live{color:var(--color-success,#166534);font-weight:600}.kiosk-attendance-board__pulse{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#22c55e;vertical-align:middle;animation:kioskBoardPulse 1.2s ease-in-out infinite}@keyframes kioskBoardPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.kiosk-attendance-board__pulse{animation:none}}.kiosk-attendance-board__late-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#fee2e2;color:var(--color-danger);font-size:.8rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;vertical-align:baseline}.kiosk-attendance-board__table td,.kiosk-attendance-board__table th{padding:14px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--kiosk-pad-line,#d1d5db)}.kiosk-attendance-board__table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:#f9fafb;font-weight:600;font-size:.9rem;color:var(--color-muted)}.kiosk-attendance-board__table tbody tr:last-child td{border-bottom:none}.kiosk-attendance-board__shift-list{margin:0;padding-left:1.1em}.kiosk-attendance-board__shift-list li{margin:4px 0}.login-split__form{gap:var(--space-2)}.login-split__forgot-row{display:flex;justify-content:flex-end;margin-top:calc(-1 * var(--space-1))}.login-forgot-pw{font-size:.875rem;font-weight:500;color:var(--color-accent);text-decoration:none}.login-forgot-pw:hover{text-decoration:underline;color:var(--color-accent-hover)}.login-password-wrap{position:relative;width:100%}.login-password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);cursor:pointer}.login-password-toggle:hover{color:var(--color-text)}.otp-cells-fieldset{margin:0;padding:0;border:none;min-width:0}.otp-cells-fieldset .field-label>span{display:block;margin-bottom:var(--space-1)}.otp-cells{display:flex;gap:.5rem;justify-content:flex-start;flex-wrap:nowrap;margin-top:var(--space-1)}.otp-cells__input{width:2.75rem;height:3rem;flex:0 0 auto;text-align:center;font-size:1.25rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-sm,8px);background:var(--color-surface,#fff);color:var(--color-text);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.otp-cells__input:focus{border-color:var(--color-accent,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent,#2563eb) 25%,transparent)}.otp-cells__input:disabled{opacity:.65;cursor:not-allowed;background:var(--color-surface-muted,#f8fafc)}.otp-cells__resend{margin-top:var(--space-2);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.otp-cells__resend button.btn--link{padding:0;min-height:auto;font-size:.875rem;font-weight:500;color:var(--color-accent);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.otp-cells__resend button.btn--link:hover:not(:disabled){color:var(--color-accent-hover)}.otp-cells__resend button.btn--link:disabled{opacity:.65;cursor:not-allowed;text-decoration:none}.login-otp-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.login-otp-primary__spinner{width:1.125rem;height:1.125rem;animation:login-otp-spin .75s linear infinite}@keyframes login-otp-spin{to{transform:rotate(1turn)}}.login-split__otp-sent{font-size:.875rem;color:var(--color-muted);margin-top:0}.login-split__demo-hint{margin:var(--space-3) 0 0;font-size:.8125rem;color:var(--color-muted);line-height:1.4}.login-split--loading{display:flex;align-items:center;justify-content:center}.login-split__loading-text{color:var(--color-muted)}@media (max-width:900px){.login-split{flex-direction:column}.login-split__hero{flex:0 0 auto;width:100%;aspect-ratio:1;min-height:0;max-height:none}.login-split__panel{flex:1 1;padding:var(--space-3) var(--space-4) var(--space-4)}}.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(15,23,42,.45);display:flex;align-items:flex-start;justify-content:center;padding:var(--space-4) var(--space-2);overflow-y:auto}.modal-panel{width:100%;max-width:560px;margin:var(--space-2) auto;max-height:calc(100vh - var(--space-4) * 2);overflow-y:auto}.modal-panel h2{margin:0;font-size:1.125rem}.kiosk-device-modal{gap:var(--space-3)}.kiosk-device-modal__title{margin:0;font-size:1.25rem;font-weight:600;line-height:1.3}.kiosk-device-modal__intro{margin:0;color:var(--color-muted);font-size:.9375rem;line-height:1.55;max-width:42rem}.kiosk-device-modal__form{gap:var(--space-3)}.kiosk-device-modal__hint{display:block;margin-top:2px;color:var(--color-muted);font-size:.8125rem;line-height:1.45;font-weight:400}.kiosk-device-modal__device-id{font-family:ui-monospace,monospace;font-size:.875rem}.kiosk-device-modal__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-1)}.kiosk-device-modal__actions .btn{min-height:44px;min-width:7.5rem}.schedule-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}@media (min-width:900px){.schedule-toolbar--dense{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px 10px;padding-bottom:2px;margin-bottom:-2px}}.schedule-toolbar-group{display:inline-flex;align-items:center;gap:6px}.schedule-toolbar-month{font-weight:600;min-width:9rem;text-align:center;font-size:.875rem}.schedule-toolbar__date-input{align-self:center;max-width:11rem;padding:6px 8px;font-size:.875rem}.schedule-toolbar-daylabel{font-size:.8125rem;color:var(--color-muted);line-height:1.35;flex:1 1 180px;text-align:right;min-width:0}.schedule-toolbar .field-label{margin:0}.schedule-toolbar .field-label span{display:none}@media (min-width:900px){.schedule-toolbar .field-label span{display:block;font-size:.75rem;margin-bottom:2px;color:var(--color-muted)}}.schedule-pagination{justify-content:flex-end;gap:10px;margin-top:var(--space-2);font-size:.875rem;color:var(--color-muted)}.schedule-pagination,.schedule-view-tabs{display:flex;align-items:center;flex-wrap:wrap}.schedule-view-tabs{gap:6px;margin-bottom:0;width:100%}@media (min-width:900px){.schedule-view-tabs{flex-wrap:nowrap}}.app-main:has(.schedule-page-root){min-height:0}.content-wrap:has(.schedule-page-root){flex:1 1;min-height:0;overflow:hidden}.page-body:has(.schedule-page-root){flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-body:has(.schedule-page-root) .page-header{flex-shrink:0}.schedule-page-header .schedule-page-header__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px;margin-bottom:6px}.schedule-page-header__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.schedule-page-root{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.schedule-page-root.schedule-page-root--page-scroll{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.schedule-page-root--page-scroll .schedule-page-layout{flex:0 1 auto;overflow:visible;min-height:min-content}.schedule-page-root--page-scroll .schedule-table-card{flex:0 1 auto;min-height:0;overflow:visible}.schedule-page-root--page-scroll .schedule-table-card .schedule-table-scroll.data-table-wrap{flex:0 1 auto;min-height:0;overflow-x:auto;overflow-y:visible}.app-main:has(.staff-page-root){min-height:0}.content-wrap:has(.staff-page-root){flex:1 1;min-height:0;overflow:hidden}.page-body:has(.staff-page-root){flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-body:has(.staff-page-root) .page-header{flex-shrink:0}.staff-page-layout,.staff-page-root,.staff-table-card{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.staff-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px;flex-shrink:0}.staff-table-title{margin:0;font-size:1.125rem}.staff-table-card .success,.staff-table-card>.error{flex-shrink:0}.staff-data-table-wrap{flex:1 1;min-height:0;min-width:0;overflow-x:auto;overflow-y:hidden}.staff-table-card .schedule-pagination{flex-shrink:0}.staff-table-empty{color:var(--color-muted);margin:0;flex-shrink:0}@media (max-height:680px),(max-width:599px){.staff-page-root{overflow-y:auto;-webkit-overflow-scrolling:touch}}.super-admin-overview-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-3)}.super-admin-overview-metric{padding:var(--space-3)}.super-admin-overview-metric__label{color:var(--color-muted);font-size:.8125rem;margin-bottom:4px}.super-admin-overview-metric__value{font-size:1.75rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.super-admin-overview-table-head{margin-bottom:var(--space-2)}.super-admin-overview-table-head h2{margin:0 0 var(--space-1);font-size:1.1rem}.super-admin-overview-table-head p{margin:0;font-size:.8125rem}.super-admin-overview-filters,.super-admin-restaurants-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin-bottom:var(--space-2)}.super-admin-overview-filters label,.super-admin-restaurants-filters label{display:block;margin-bottom:4px;font-size:13px}.super-admin-overview-filters__actions,.super-admin-restaurants-filters__actions{display:flex;align-items:flex-end}.super-admin-table-card{overflow-x:auto;margin-bottom:0}.super-admin-kiosk-table,.super-admin-overview-table,.super-admin-restaurants-table{font-size:.8125rem}.super-admin-id-code{font-size:.75rem}.super-admin-id-code--truncated{cursor:help}.super-admin-table-pagination{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.super-admin-table-pagination__summary{color:var(--color-muted);font-size:.875rem}.kiosk-devices-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2);margin-bottom:var(--space-3)}.kiosk-devices-toolbar__field{display:flex;flex-direction:column;gap:4px;min-width:0}.kiosk-devices-toolbar__field label{display:block;margin:0;font-size:13px;font-weight:500;color:var(--color-text)}.kiosk-devices-toolbar__field--restaurant{flex:0 1 280px;width:100%;max-width:320px}.kiosk-devices-toolbar__field--search{flex:1 1 320px;min-width:min(100%,280px)}.kiosk-devices-toolbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);flex:0 0 auto}.kiosk-devices-toolbar__actions .btn{min-height:44px;white-space:nowrap}@media (min-width:720px){.kiosk-devices-toolbar{flex-wrap:nowrap}.kiosk-devices-toolbar__actions{margin-left:auto}}@media (max-width:719px){.kiosk-devices-toolbar__field--restaurant,.kiosk-devices-toolbar__field--search{flex:1 1 100%;max-width:none}.kiosk-devices-toolbar__actions{width:100%}.kiosk-devices-toolbar__actions .btn{flex:1 1 calc(50% - var(--space-1))}}.app-main:has(.overview-page-root){min-height:0}.content-wrap:has(.overview-page-root){flex:1 1;min-height:0;overflow:hidden}.page-body:has(.overview-page-root){flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.overview-page-layout,.overview-page-root{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.overview-page-head{display:flex;flex-direction:column;gap:4px;flex-shrink:0;margin-bottom:var(--space-2)}.overview-page-head__row--primary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;min-width:0}.overview-page-head__greeting{margin:0;display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:0 .4em;font-size:clamp(1.0625rem,2.2vw,1.25rem);font-weight:600;letter-spacing:-.02em;color:var(--color-text);line-height:1.25;flex:1 1 auto;min-width:0}.overview-page-head__user-name{font-weight:600;color:var(--color-text);white-space:nowrap}.overview-page-head__sub{margin:0;padding:0;color:var(--color-muted);font-size:.8125rem;line-height:1.4}.overview-page-head__tabs.schedule-view-tabs{flex-shrink:0;width:auto;max-width:100%;margin-bottom:0}@media (max-width:640px){.overview-page-head__row--primary .overview-page-head__tabs.schedule-view-tabs{flex:1 1 100%;width:100%;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}.overview-page-head__tabs.schedule-view-tabs button{flex:1 1;min-width:0}.overview-page-head__greeting{flex:1 1 100%}.overview-page-head__user-name{white-space:normal}}.overview-tab-panels{min-width:0}.overview-tab-panel--glance,.overview-tab-panels{flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}@media (max-height:680px),(max-width:599px){.overview-tab-panel--glance{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}}.overview-tab-panel--glance.card.stack{gap:8px}.overview-tab-panel--glance .overview-metrics-grid{flex:1 1;min-height:0}.overview-tab-panel--schedule{overflow:hidden;min-height:0;display:flex;flex-direction:column}.overview-tab-panel--schedule .overview-schedule__head{flex-shrink:0}.overview-tab-panel--schedule .data-table-wrap--overview-schedule{flex:1 1;min-height:0;overflow-x:auto;overflow-y:hidden}.overview-tab-panel--schedule .schedule-pagination{flex-shrink:0}.overview-page-layout .overview-schedule{margin-top:0}.data-table-wrap--overview-schedule{overflow-x:auto;overflow-y:hidden}.schedule-page-layout{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-2);overflow:hidden}.schedule-filters-card{flex-shrink:0}.schedule-filters-card.card.stack{gap:10px!important;padding:var(--space-2) var(--space-3)!important}.schedule-table-card{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.schedule-table-card>h2,.schedule-table-card>p{flex-shrink:0}.schedule-table-card .schedule-table-scroll.data-table-wrap{flex:1 1;min-height:0;min-width:0;overflow-x:auto;overflow-y:auto}.schedule-table-card .schedule-pagination{flex-shrink:0}.schedule-view-tabs button{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background:var(--color-bg);cursor:pointer;font-size:.8125rem}.schedule-view-tabs button.is-active{border-color:var(--color-accent);background:var(--color-accent-soft);font-weight:600}.schedule-month-grid-wrap{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg)}.schedule-month-grid-head,.schedule-month-grid-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-month-grid-weekday{padding:8px 6px;font-weight:600;color:var(--color-muted);text-align:center;background:var(--color-surface)}.schedule-month-cell,.schedule-month-grid-weekday{font-size:.75rem;border-bottom:1px solid var(--color-border-subtle)}.schedule-month-cell{min-height:110px;padding:6px;border-right:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:4px}.schedule-month-cell:nth-child(7n){border-right:none}.schedule-month-cell--empty{background:var(--color-surface);min-height:110px}.schedule-month-cell--clickable .schedule-month-cell-day-hit{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:4px;align-items:stretch;width:100%;margin:0;padding:0;border:none;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm);outline:none}.schedule-month-cell--clickable .schedule-month-cell-day-hit:hover{background:var(--color-surface-2)}.schedule-month-cell--clickable .schedule-month-cell-day-hit:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.schedule-month-cell-day{font-weight:600;color:var(--color-text)}.schedule-month-cell-names{display:flex;flex-direction:column;gap:2px;flex:1 1;min-height:0}.schedule-month-cell-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-month-cell-muted{color:var(--color-muted);font-size:.7rem}.schedule-month-cell-actions{display:flex;flex-direction:column;gap:4px}.schedule-month-shift-edit-line{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%;justify-content:flex-start}.schedule-shift-status-pill{font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:1px 5px;border-radius:4px;line-height:1.25;white-space:nowrap;vertical-align:middle}.schedule-shift-status-pill--draft{background:rgba(251,191,36,.4);color:inherit}.schedule-shift-status-pill--published{background:rgba(34,197,94,.3);color:inherit}.schedule-month-edit-btn{font-size:.7rem!important;padding:4px 6px!important}.schedule-month-edit-btn--sick{background:hsla(0,96%,89%,.45)!important}.schedule-month-edit-btn--vacation{background:rgba(191,219,254,.55)!important}.schedule-month-edit-btn--child-care{background:rgba(233,213,255,.5)!important}.schedule-month-edit-btn--maternity{background:rgba(153,246,228,.45)!important}.schedule-month-edit-btn--active{background:rgba(220,252,231,.75)!important}.employee-sched-month-cell{display:flex;flex-direction:column;align-items:stretch;text-align:left}button.employee-sched-month-cell.schedule-month-cell--clickable{cursor:pointer;margin:0;font:inherit;color:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none}button.employee-sched-month-cell.schedule-month-cell--clickable:hover{background:var(--color-surface-2)}button.employee-sched-month-cell.schedule-month-cell--clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.employee-sched-month-cell--muted{opacity:.88;cursor:default}.employee-sched-month-cell-inner{display:flex;flex-direction:column;gap:4px;min-height:0;flex:1 1}.employee-sched-month-avail{font-size:.68rem;color:var(--color-muted);line-height:1.2}.employee-sched-month-hr-away{font-size:.65rem;color:var(--color-warning-text,#b45309);background:var(--color-warning-soft,hsla(48,96%,89%,.6));border-radius:4px;padding:2px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-sched-month-shifts{display:flex;flex-direction:column;gap:2px;margin-top:auto}.employee-sched-month-shift-line{font-size:.68rem;color:var(--color-text);line-height:1.25}.schedule-week-grid-wrap{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow-x:auto;background:var(--color-bg)}.schedule-week-grid-head,.schedule-week-grid-row{display:grid;grid-template-columns:minmax(120px,160px) repeat(7,minmax(96px,1fr))}.schedule-week-grid-corner,.schedule-week-grid-dayhead{background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle);border-right:1px solid var(--color-border-subtle)}.schedule-week-grid-dayhead{padding:8px 6px;text-align:center}.schedule-week-grid-dayhead:last-child{border-right:none}.schedule-week-grid-dow{display:block;font-size:.7rem;font-weight:600;color:var(--color-muted)}.schedule-week-grid-dom{font-size:.85rem;font-weight:600}.schedule-week-staff-label{position:relative;padding:8px 10px 8px 14px;font-size:.8rem;font-weight:600;border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-self:stretch;display:flex;align-items:center}.schedule-week-staff-label:before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:4px;border-radius:2px;background:var(--schedule-staff-stripe,var(--color-border-subtle))}.schedule-week-staff-label--totals{padding-left:10px;gap:8px}.schedule-week-staff-label--totals:before{display:none}.schedule-week-hours-icon{width:1rem;height:1rem;flex-shrink:0;opacity:.85}.schedule-week-staff-name{min-width:0}.schedule-week-cell{padding:6px;border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);min-height:72px;vertical-align:top;font-size:.72rem}.schedule-week-cell--avail-available{background:rgba(34,197,94,.06)}.schedule-week-cell--avail-unavailable{background:hsla(0,91%,71%,.08)}.schedule-week-cell--avail-unset{background:rgba(148,163,184,.06)}.schedule-week-cell-stack{display:flex;flex-direction:column;gap:4px;min-height:100%}.schedule-week-hr-chip{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 6px;align-self:flex-start;max-width:100%;margin-top:1px;font-size:.62rem;line-height:1.25}.schedule-week-hr-chip-prefix{font-weight:700;letter-spacing:.02em;color:var(--color-muted)}.schedule-week-hr-chip-label{font-weight:600;color:#be185d}.schedule-week-avail-badge{font-size:.62rem;font-weight:600;line-height:1.2;padding:2px 4px;border-radius:4px;align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:normal}.schedule-week-avail-window{font-weight:600}.schedule-week-avail-badge--available{color:#15803d;background:rgba(34,197,94,.18)}.schedule-week-avail-badge--unavailable{color:#991b1b;background:hsla(0,91%,71%,.22)}.schedule-week-avail-badge--unset{color:var(--color-muted);background:rgba(148,163,184,.15)}.schedule-week-cell:nth-child(8){border-right:none}.schedule-week-cell--total{background:rgba(37,99,235,.08);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.schedule-week-grid-row--totals .schedule-week-staff-label{background:rgba(37,99,235,.12)}.schedule-week-avail-below-shifts{align-self:stretch;margin-top:4px}.schedule-week-shifts-stack{display:flex;flex-direction:column;gap:4px}.schedule-week-shift-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left}.schedule-week-shift-time{font-weight:600}.schedule-week-shift-meta{font-size:.65rem;color:var(--color-muted)}.btn--small{font-size:.8125rem;padding:6px 10px}.app-main:has(.reports-page-root){min-height:0}.content-wrap:has(.reports-page-root){flex:1 1;min-height:0;overflow:hidden}.page-body:has(.reports-page-root){flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-2) var(--space-3)}@media (min-width:900px){.page-body:has(.reports-page-root){padding:var(--space-3) var(--space-4)}}.page-body:has(.reports-page-root) .page-header{flex-shrink:0;margin-top:0;padding-left:var(--space-1);margin-bottom:var(--space-2)}.reports-page-header h1{margin-bottom:4px}.reports-page-header p{font-size:.875rem;line-height:1.45}.reports-page-root{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;gap:var(--space-2);overflow:hidden}.reports-print-root{background:transparent}.reports-page-root>.reports-content-panel.card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;align-self:stretch;padding:var(--space-2) var(--space-3)!important}.reports-filters-card{flex-shrink:0;gap:8px!important}.reports-toolbar{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;margin-bottom:0}.reports-toolbar .field-label{margin:0}.reports-toolbar .btn{padding:8px 12px;font-size:.875rem}.reports-email-hint{margin:0;font-size:.75rem;color:var(--color-muted);line-height:1.35}.reports-period-block{padding-top:0;padding-left:var(--space-1);flex-shrink:0}.reports-period-title{margin:0 0 6px;font-size:1.0625rem;font-weight:600}.reports-period-tz{color:var(--color-muted);font-weight:400;font-size:.875rem}.reports-legend-details{margin:0 0 4px}.reports-legend-details summary{cursor:pointer;font-size:.8125rem;font-weight:500;color:var(--color-accent);-webkit-user-select:none;-moz-user-select:none;user-select:none}.reports-legend-details summary:hover{color:var(--color-accent-hover)}.reports-legend-details .reports-legend{margin:8px 0 0;padding-left:0;font-size:.8125rem;color:var(--color-muted)}.reports-legend--print-only{display:none;margin:0 0 8px;font-size:.8rem;color:var(--color-muted)}.print-only{display:none!important}.reports-print-header{margin-bottom:12px}.reports-print-brand-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 14px;background:#db2777;color:#fff;border-radius:0}.reports-print-brand-bar .nordshift-brand__text{color:#fff}.reports-print-brand-name{font-size:1.125rem;font-weight:700;letter-spacing:-.02em}.reports-print-brand-subtitle{font-size:.8125rem;font-weight:500}.reports-print-info-card{position:relative;margin-bottom:10px;padding:10px 12px 22px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.reports-print-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px 16px;gap:8px 16px;margin:0}.reports-print-info-grid dt{margin:0 0 2px;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.reports-print-info-grid dd{margin:0;font-size:.875rem;font-weight:500;color:#0f172a}.reports-print-generated{position:absolute;right:12px;bottom:8px;margin:0;font-size:.6875rem;color:#64748b}.reports-print-summary-strip{margin-bottom:8px;padding:8px 12px;background:#fce7f3;border:1px solid #f9a8d4;border-radius:6px}.reports-print-summary-primary{margin:0 0 4px;font-size:.8125rem;font-weight:700;color:#db2777}.reports-print-summary-secondary{margin:0;font-size:.75rem;color:#0f172a}.reports-print-footnotes{margin:0 0 10px;font-size:.6875rem;line-height:1.45;color:#64748b}.reports-print-footer{display:none;margin:0;padding:8px 0 0;border-top:1px solid #e2e8f0;font-size:.6875rem;text-align:center;color:#64748b}.reports-report-card{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;gap:var(--space-2)!important}.reports-table-region{flex:1 1;min-height:0;min-width:0;align-self:stretch;overflow:auto;-webkit-overflow-scrolling:touch}.reports-table-region,.reports-table-region .data-table-wrap--reports-wide{width:100%;max-width:100%;box-sizing:border-box}.reports-pdf-col-head{text-align:center;width:52px}.reports-pdf-col-head-icon{display:block;margin:0 auto;color:var(--color-muted);vertical-align:middle}.reports-pdf-download-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:6px}@media (max-height:680px),(max-width:599px){.reports-page-root{overflow-y:auto;-webkit-overflow-scrolling:touch}}table.data-table--reports{font-size:.8125rem}table.data-table--reports th{white-space:nowrap;font-size:.75rem;line-height:1.25;padding:7px 8px;vertical-align:middle}table.data-table--reports td{padding:8px 10px}.data-table-wrap--reports-wide{max-width:100%}.data-table-wrap--reports-wide .data-table--reports{min-width:1520px}@media print{@page{margin:10mm 10mm 16mm}.no-print,.sidebar,.top-bar,.top-bar-menu{display:none!important}.print-only{display:block!important}.reports-print-info-grid{display:grid!important}.reports-print-footer{position:fixed;left:0;right:0;bottom:0;display:block!important;padding:6px 10mm 0;background:#fff;border-top:1px solid #e2e8f0}.reports-print-brand-bar,.reports-print-footer,.reports-print-info-card,.reports-print-summary-strip,table.data-table--reports thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-main{margin:0!important;padding:0!important;overflow:visible!important}.content-wrap:has(.reports-page-root){overflow:visible!important}.page-body:has(.reports-page-root){overflow:visible!important;height:auto!important}.reports-page-root{overflow:visible!important;height:auto!important}.reports-report-card{box-shadow:none!important;border:none!important;background:transparent!important;padding:0!important}.reports-report-card,.reports-table-region{overflow:visible!important}.reports-legend--print-only{display:none!important}.reports-print-root{padding:0}.page-body{padding:0!important}table.data-table--reports{font-size:.7rem;border-collapse:collapse}table.data-table--reports thead th{white-space:nowrap;font-size:.65rem;padding:5px 6px;background:#db2777!important;color:#fff!important;border-color:#be185d!important}table.data-table--reports tbody tr:nth-child(2n) td{background:#f8fafc!important}table.data-table--reports td{padding:5px 6px;border-color:#e2e8f0!important}.data-table-wrap--reports-wide{overflow:visible!important}}.data-table-wrap{overflow-x:auto;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg)}table.data-table{width:100%;border-collapse:collapse;font-size:.875rem}table.data-table td,table.data-table th{padding:10px 12px;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}table.data-table th{font-weight:600;color:var(--color-muted);background:var(--color-surface)}table.data-table tr:last-child td{border-bottom:none}table.data-table tr.shift-warn{background:rgba(255,182,193,.35)}table.data-table tr.shift-warn--break{background:rgba(255,237,213,.85)}table.data-table tr.shift-warn--break td{border-bottom-color:rgba(251,191,36,.35)}table.data-table tr.shift-row-day--sick{background:hsla(0,96%,89%,.45)}table.data-table tr.shift-row-day--sick td{border-bottom-color:hsla(0,91%,71%,.25)}table.data-table tr.shift-row-day--vacation{background:rgba(191,219,254,.55)}table.data-table tr.shift-row-day--vacation td{border-bottom-color:rgba(96,165,250,.25)}table.data-table tr.shift-row-day--child-care{background:rgba(233,213,255,.5)}table.data-table tr.shift-row-day--child-care td{border-bottom-color:rgba(168,85,247,.2)}table.data-table tr.shift-row-day--maternity{background:rgba(153,246,228,.45)}table.data-table tr.shift-row-day--maternity td{border-bottom-color:rgba(45,212,191,.25)}table.data-table tr.shift-row-day.shift-warn{box-shadow:inset 3px 0 0 rgba(244,63,94,.65)}table.data-table tr.shift-row-day.shift-warn--break{box-shadow:inset 3px 0 0 rgba(217,119,6,.75)}.shift-warn-msgs{font-size:.8rem;margin-top:6px;color:var(--color-muted)}.shift-warn-msgs--break{color:#9a3412;background:hsla(48,96%,89%,.7);margin-top:6px;padding:4px 8px;border-radius:6px;font-weight:500}.overview-glance{margin-top:0}.overview-glance__title{margin:0;font-size:1rem;flex-shrink:0}.overview-glance__intro-wrap{margin:0;flex-shrink:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:6px 10px;background:var(--color-bg)}.overview-glance__intro-summary{cursor:pointer;font-size:.75rem;font-weight:600;color:var(--color-muted);list-style:none}.overview-glance__intro-summary::-webkit-details-marker{display:none}.overview-glance__intro-summary:before{content:"▸ ";display:inline-block;transition:transform .15s ease;color:var(--color-accent)}.overview-glance__intro-wrap[open] .overview-glance__intro-summary:before{transform:rotate(90deg)}.overview-glance__intro{color:var(--color-muted);font-size:.75rem;line-height:1.4;margin:8px 0 0}.overview-metrics-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-2);align-items:stretch}@media (min-width:640px){.overview-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:900px){.overview-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1200px){.overview-metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.overview-metric-card{min-height:0;box-sizing:border-box;display:flex;flex-direction:column;padding:14px 16px;border:1px solid var(--color-border-subtle);border-radius:var(--radius);background:var(--color-bg);box-shadow:var(--shadow-sm)}.overview-metric-card--break{background:color-mix(in srgb,var(--color-bg) 82%,#fef9c3 18%);border-color:rgba(245,158,11,.45);box-shadow:var(--shadow-sm),0 0 0 1px rgba(245,158,11,.12)}.overview-metric-card__label{font-size:.75rem;color:var(--color-muted);font-weight:600;letter-spacing:.02em;line-height:1.35}.overview-metric-card__value{margin-top:8px;font-size:clamp(1.125rem,2.2vw,1.375rem);font-weight:700;color:var(--color-text);line-height:1.25;flex:1 1;min-height:0}.overview-metric-card__hint{margin-top:auto;padding-top:8px;font-size:.6875rem;color:var(--color-muted);line-height:1.4}.overview-metric-empty{font-size:.8125rem;font-weight:500;color:var(--color-muted);line-height:1.45}.overview-metric-value-numeric{display:block;font-size:clamp(1.125rem,2.2vw,1.375rem);font-weight:700;margin-bottom:6px}.overview-active-block{display:flex;flex-direction:column;gap:4px;min-height:0}.overview-active-names{margin:0;padding-left:1rem;font-size:.8125rem;font-weight:500;color:var(--color-text);line-height:1.4;max-height:4.5rem;overflow-y:auto;overscroll-behavior:contain}.overview-active-more{font-size:.625rem;font-weight:600;color:var(--color-accent)}.overview-sick-block{display:flex;flex-direction:column;gap:4px;min-height:0}.overview-sick-names{margin:0;padding-left:1rem;font-size:.8125rem;font-weight:500;color:var(--color-text);line-height:1.4;max-height:4.5rem;overflow-y:auto;overscroll-behavior:contain}.overview-break-violations{display:flex;flex-direction:column;gap:4px;min-height:0;max-height:5rem;overflow-y:auto;overscroll-behavior:contain}.break-violation-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 6px;border-radius:6px}.break-violation-name{font-size:.6875rem;font-weight:600}.break-violation-hrs{font-size:.6875rem;font-weight:700;white-space:nowrap}.overview-break-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start;align-content:flex-start}.break-chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.8125rem;font-weight:600;color:#1e293b;border:1px solid rgba(15,23,42,.08)}.break-chip--0{background:#e0f2fe}.break-chip--1{background:#fce7f3}.break-chip--2{background:#d1fae5}.break-chip--3{background:#fef3c7}.break-chip--4{background:#e9d5ff}.break-chip--5{background:#fee2e2}.overview-schedule{margin-top:var(--space-3)}.overview-schedule__head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center}.overview-schedule__title{margin:0;font-size:1.125rem}.overview-schedule__sub{color:var(--color-muted);font-size:.875rem;margin:0}.overview-schedule__toggle{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer}.overview-schedule__empty{color:var(--color-muted);margin:0}table.data-table .table-actions{display:flex;flex-wrap:wrap;gap:8px}.shift-row-actions{position:relative;display:inline-block;vertical-align:middle}.shift-row-actions__trigger{min-width:2.25rem;padding:6px 10px!important;font-size:1.1rem!important;line-height:1!important;font-weight:700}.shift-row-actions__menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:9rem;padding:4px 0;background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.shift-row-actions__menu--portal{position:fixed;right:auto;z-index:99}.shift-row-actions__item{display:block;width:100%;padding:8px 14px;border:none;background:transparent;text-align:left;font:inherit;cursor:pointer;color:var(--color-text)}.shift-row-actions__item:hover:not(:disabled){background:var(--color-surface)}.shift-row-actions__item:disabled{opacity:.45;cursor:not-allowed}.shift-row-actions__item.shift-row-actions__item--danger:not(:disabled){color:var(--color-danger)}.shift-row-actions__item.shift-row-actions__item--danger:hover:not(:disabled){background:rgba(185,28,28,.08)}table.data-table select.input{min-width:140px;padding:6px 8px}.app-main:has(.chat-page),.app-main:has(.messages-inbox){min-height:0;overflow:hidden}.content-wrap:has(.chat-page),.content-wrap:has(.messages-inbox){flex:1 1;min-height:0;overflow:hidden}.page-body:has(.chat-page),.page-body:has(.messages-inbox){flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.messages-page-root{flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.messages-page-root>.page-header{flex-shrink:0}.messages-page-root>.messages-inbox{flex:1 1;min-height:0}.chat-page{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:hidden}.chat-page .page-header{flex-shrink:0}.chat-page .chat-thread{flex:1 1;min-height:0}.chat-thread{display:flex;flex-direction:column;flex:1 1;min-height:0;background:var(--color-surface,#f0f2f5);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow:hidden}.chat-thread__error{flex-shrink:0;margin:0;padding:8px 12px}.chat-thread__messages{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 10px 16px;display:flex;flex-direction:column;gap:6px;-webkit-overflow-scrolling:touch}.chat-thread__empty{margin:auto;color:var(--color-muted);font-size:.9375rem}.chat-day-separator{display:flex;justify-content:center;align-items:center;width:100%;padding:10px 8px 6px;flex-shrink:0}.chat-day-separator__label{display:inline-block;padding:4px 12px;border-radius:999px;background:rgba(0,0,0,.06);color:var(--color-muted);font-size:.75rem;font-weight:600;letter-spacing:.02em}.chat-bubble-row{display:flex;width:100%}.chat-bubble-row--in{justify-content:flex-start}.chat-bubble-row--out{justify-content:flex-end}.chat-bubble{max-width:min(85%,520px);padding:10px 12px 6px;border-radius:12px;box-shadow:0 1px 0 rgba(0,0,0,.06)}.chat-bubble--in{background:#fff;border:1px solid var(--color-border-subtle);border-bottom-left-radius:4px}.chat-bubble--out{background:var(--color-accent-soft,#dcf8c6);border:1px solid rgba(0,0,0,.04);border-bottom-right-radius:4px}.chat-bubble__text{margin:0;font-size:.9375rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.chat-bubble__meta{display:block;margin-top:4px;font-size:.65rem;color:var(--color-muted);text-align:right}.chat-bubble--in .chat-bubble__meta{text-align:left}.chat-thread__composer{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px;background:#fff;border-top:1px solid var(--color-border-subtle)}.chat-thread__input{width:100%;resize:none;min-height:72px;font-size:1rem}.chat-thread__send{width:100%;align-self:stretch}.messages-inbox{display:grid;grid-template-columns:minmax(200px,300px) 1fr;flex:1 1;min-height:0;background:#fff;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow:hidden}.messages-inbox>.messages-inbox__chat,.messages-inbox>.messages-inbox__threads{min-height:0}@media (max-width:900px){.messages-inbox{grid-template-columns:1fr;grid-template-rows:minmax(140px,32vh) 1fr}}.messages-inbox__threads{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--color-border-subtle);background:var(--color-surface,#f6f7f9);overflow-y:auto}@media (max-width:900px){.messages-inbox__threads{border-right:none;border-bottom:1px solid var(--color-border-subtle)}}.messages-inbox__thread{display:flex;align-items:flex-start;gap:8px;width:100%;padding:10px 12px;border:none;border-bottom:1px solid var(--color-border-subtle);background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background .12s ease}.messages-inbox__thread:hover{background:rgba(0,0,0,.03)}.messages-inbox__thread--active{background:var(--color-accent-soft)}.messages-inbox__thread-main{flex:1 1;min-width:0}.messages-inbox__thread-name{font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:8px}.messages-inbox__thread-preview{margin:4px 0 0;font-size:.8rem;color:var(--color-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-inbox__badge{flex-shrink:0;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.7rem;font-weight:700;line-height:20px;text-align:center}.messages-inbox__chat{min-width:0}.messages-inbox__chat,.messages-inbox__chat-inner{display:flex;flex-direction:column;flex:1 1;min-height:0}.messages-inbox__chat-title{flex-shrink:0;padding:10px 14px;border-bottom:1px solid var(--color-border-subtle);background:#fff;font-weight:600;font-size:.9375rem}.messages-inbox__chat .chat-thread{flex:1 1;min-height:0;border:none;border-radius:0}.messages-inbox__empty{margin:auto;padding:24px;color:var(--color-muted);text-align:center}@media (max-width:900px){.page-body{padding:var(--space-2) 10px}.data-table-wrap,.staff-data-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.page-header{display:flex;flex-wrap:wrap;gap:var(--space-1)}.page-header .row,.row--actions,.row--filters{width:100%}.page-header .row>input,.page-header .row>select,.row>input,.row>select{min-width:0;flex:1 1 160px}.top-bar{position:-webkit-sticky;position:sticky;top:0;z-index:20;justify-content:space-between;align-items:flex-start;padding:8px 10px;min-height:56px;flex-wrap:wrap;row-gap:6px}.top-bar-menu{display:inline-flex}.top-bar-staff-location{order:10;flex:1 1 100%;width:100%;max-width:100%;min-width:0;margin:0;padding:6px 2px 2px;border-top:1px solid var(--color-border-subtle);white-space:normal;line-height:1.35}.top-bar-staff-location span{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-word}.top-bar-actions{flex:1 1 auto;flex-wrap:nowrap;min-width:0;justify-content:flex-end;margin-left:auto}.top-bar-user{max-width:none}.top-bar-logout{display:none}.sidebar-logout-mobile{display:flex}}@media (max-width:640px){.page-body{padding:var(--space-2) var(--space-1)}.overview-page-head__greeting,.page-header h1{font-size:1.25rem}.card-grid,.dashboard-tiles,.tiles-grid{grid-template-columns:1fr!important}.card .form-grid input,.card .form-grid select,.card input,.card select,.card textarea{width:100%}.btn,.schedule-view-tabs button,.sidebar-link{min-height:40px}.modal-backdrop{padding:var(--space-2) var(--space-1)}.modal-panel{max-width:100%;margin:0 auto}}@media (max-width:380px){.page-body{padding:10px 8px}}body,html{overflow-x:hidden}@media (max-width:900px){.page-header .row,.schedule-toolbar,.staff-toolbar{width:100%}.schedule-toolbar>*,.staff-toolbar>*{flex:1 1 auto;min-width:0}.chat-thread__composer textarea{min-height:44px}.chat-thread__composer button{min-height:44px;padding-inline:14px}.top-bar-notify-panel{right:8px;width:min(360px,calc(100vw - 16px))}}@media (max-width:640px){.messages-inbox{grid-template-rows:minmax(120px,28vh) 1fr}.schedule-month-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table-wrap--reports-wide{overflow-x:auto}.card{padding:12px}}@media (max-width:480px){.page-header .employee-overview-greeting,.page-header h1{font-size:1.125rem}}@media (max-width:420px){.top-bar{min-height:52px}.top-bar-notify-btn{width:40px;height:40px}}.muted{color:var(--color-muted)}.payroll-subhead{margin:0 0 8px;font-size:1rem}.payroll-kv{list-style:none;padding:0;margin:0;display:grid;grid-gap:6px;gap:6px;max-width:420px}.payroll-kv li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--color-border-subtle);padding:4px 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.payroll-warnings{margin:0;padding-left:1.25rem;color:var(--color-danger)}.payroll-pre{font-size:.75rem;overflow:auto;max-height:240px;padding:8px;background:var(--color-surface);border-radius:var(--radius-sm)}.payroll-result-block{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border-subtle)}.page-header .employee-overview-greeting{margin:0 0 var(--space-1);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--color-text)}.page-header .employee-overview-name{margin:0 0 var(--space-2);font-size:1.125rem;font-weight:600;letter-spacing:-.01em;color:var(--color-text)}.employee-overview-active-date{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.employee-overview-grid{display:grid;grid-gap:16px;gap:16px}@media (min-width:900px){.employee-overview-grid{grid-template-columns:1fr 1fr;align-items:start}}.employee-overview-right.stack{gap:16px}.employee-overview-shift-list{margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.employee-overview-shift-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--color-border-subtle)}.employee-overview-shift-row:last-child{border-bottom:none;padding-bottom:0}.employee-overview-shift-meta{display:flex;flex-direction:column;gap:2px}.employee-overview-shift-date{font-weight:600}.employee-overview-shift-dept{font-size:.85rem;color:var(--color-muted)}.employee-overview-shift-time{display:inline-flex;align-items:center;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.95rem}.employee-overview-msg-list{margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.employee-overview-msg-link{display:block;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);text-decoration:none;color:inherit;transition:background .15s ease}.employee-overview-msg-link:hover{background:var(--color-surface)}.employee-overview-msg-from{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-weight:600;font-size:.85rem}.employee-overview-msg-body{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px;font-size:.88rem;color:var(--color-muted)}.employee-overview-live-badge{margin:6px 0 0;padding:4px 8px;font-size:.78rem;background:var(--color-accent-soft);color:var(--color-accent-hover)}.employee-overview-live-badge,.employee-timesheet-badge{display:inline-block;font-weight:600;border-radius:var(--radius-sm)}.employee-timesheet-badge{padding:3px 8px;font-size:.75rem;border:1px solid var(--color-border-subtle)}.employee-timesheet-badge--warn{background:#fef3c7;color:#92400e;border-color:#fcd34d}.employee-timesheet-badge--live{background:var(--color-accent-soft);color:var(--color-accent-hover);border-color:var(--color-border)}.employee-absence-edit-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.4)}.employee-absence-edit-dialog{width:100%;max-width:480px;max-height:min(90vh,720px);overflow:auto}.driver-active-element{outline:2px solid var(--color-accent)!important}.nordshift-driver-popover.driver-popover{background:#fff;color:#0f172a;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 16px 40px rgba(15,23,42,.18);max-width:min(360px,calc(100vw - 32px));padding:20px 20px 16px}.nordshift-driver-popover .driver-popover-title{font-size:1rem;font-weight:700;color:#0f172a;padding-right:2.5rem}.nordshift-driver-popover .driver-popover-description{font-size:.9375rem;line-height:1.55;color:#475569}.nordshift-driver-popover .driver-popover-progress-text{font-size:.75rem;color:#64748b}.nordshift-driver-popover .driver-popover-close-btn{position:absolute;top:12px;right:12px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-size:1rem;font-weight:600;line-height:1;text-shadow:none;cursor:pointer;background:var(--color-accent);color:#fff;border:none;transition:none}.nordshift-driver-popover .driver-popover-close-btn:active,.nordshift-driver-popover .driver-popover-close-btn:focus,.nordshift-driver-popover .driver-popover-close-btn:hover{background:var(--color-accent);color:#fff}.nordshift-driver-popover .driver-popover-next-btn,.nordshift-driver-popover .driver-popover-prev-btn{border-radius:8px;font-size:.875rem;font-weight:600;text-shadow:none;transition:none}.nordshift-driver-popover .driver-popover-next-btn{background:var(--color-accent);color:#fff;border:none}.nordshift-driver-popover .driver-popover-next-btn:active,.nordshift-driver-popover .driver-popover-next-btn:focus,.nordshift-driver-popover .driver-popover-next-btn:hover{background:var(--color-accent);color:#fff}.nordshift-driver-popover .driver-popover-prev-btn{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.nordshift-driver-popover .driver-popover-prev-btn:active,.nordshift-driver-popover .driver-popover-prev-btn:focus,.nordshift-driver-popover .driver-popover-prev-btn:hover{background:#f1f5f9;color:#334155;border-color:#e2e8f0}.nordshift-driver-popover .driver-popover-arrow-side-bottom.driver-popover-arrow,.nordshift-driver-popover .driver-popover-arrow-side-left.driver-popover-arrow,.nordshift-driver-popover .driver-popover-arrow-side-right.driver-popover-arrow,.nordshift-driver-popover .driver-popover-arrow-side-top.driver-popover-arrow{border-color:#fff}.walkthrough-replay-card{margin-bottom:20px}