html.auth-page,body.auth-page,body.auth-page #root{background-color:var(--cream, var(--warm-white, #f5f0e8))!important;min-height:100%}.auth-page-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow:auto}.auth-page-layout__inner{margin:auto;width:100%;max-width:440px;animation:auth-fade-in .5s ease-out}.auth-page-layout--wide .auth-page-layout__inner{max-width:480px}@keyframes auth-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-card{width:100%;padding:var(--space-8)}.auth-title{text-align:center;margin-bottom:var(--space-2)}.auth-logo{font-size:var(--font-size-4xl);font-weight:300;font-family:var(--font-display);display:inline-block;color:var(--sage, var(--ink, #1a1a1a));letter-spacing:var(--letter-spacing-tight)}.auth-subtitle{text-align:center;color:var(--ink-mid, var(--puls-neutral-700));font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);margin:0;margin-top:var(--space-2)}.auth-description{text-align:center;color:var(--ink-mid, var(--puls-neutral-600));font-size:var(--font-size-sm);margin:var(--space-2) 0 0}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form--spaced{gap:var(--space-5)}.auth-link-wrapper{text-align:right;margin-top:calc(var(--space-1) * -1)}.auth-link{color:var(--sage, var(--ink));font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-back{text-align:center;margin-top:var(--space-4)}.auth-button{margin-top:var(--space-2)}.auth-loading{text-align:center;color:var(--ink-mid, var(--puls-neutral-600));padding:var(--space-6) 0}.auth-help-text{text-align:center;color:var(--ink-mid, var(--puls-neutral-600));font-size:var(--font-size-sm);margin-top:var(--space-4)}.auth-fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.auth-legend{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--ink, var(--puls-neutral-800));margin-bottom:var(--space-1);padding:0}.auth-select-group{display:flex;flex-direction:column;gap:var(--space-1)}.auth-select-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--ink-mid, var(--puls-neutral-700))}.auth-select{padding:var(--space-2) var(--space-3);border:1px solid var(--puls-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:var(--warm-white, var(--puls-white));color:var(--ink, var(--puls-neutral-800))}.auth-select:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 2px color-mix(in srgb,var(--sage) 15%,transparent)}@media(max-width:640px){.auth-card{padding:var(--space-6)}.auth-logo{font-size:var(--font-size-3xl)}}.auth-page .puls-input,.auth-card .puls-input,.auth-select{font-size:16px}.puls-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:none;border-radius:var(--radius-full);font-family:var(--font-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition);text-decoration:none;line-height:1;white-space:nowrap;position:relative;outline:none;box-sizing:border-box}.puls-btn>span{display:inline-flex;align-items:center;justify-content:center;line-height:1.25}.puls-btn:focus,.puls-btn:focus-visible{outline:none;box-shadow:none}.puls-btn:disabled,.puls-btn-disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.puls-btn-tiny{padding:7px 12px;font-size:var(--font-size-xs);font-weight:var(--font-control-weight, var(--font-weight-medium));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);min-height:34px}.puls-btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-control-size, var(--font-size-sm));font-weight:var(--font-control-weight, var(--font-weight-medium));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);min-height:32px}.puls-btn-md{padding:12px 18px;font-size:var(--font-size-base);min-height:46px}.puls-btn-lg{padding:14px 22px;font-size:var(--font-size-lg);min-height:52px}.puls-btn-primary{background-color:var(--sage);color:var(--warm-white)}.puls-btn-primary:hover:not(:disabled){background-color:var(--sage-dark);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.puls-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none;background-color:var(--sage-dark)}.puls-btn-secondary{background-color:var(--cream-dark);color:var(--ink);border:none}.puls-btn-secondary:hover:not(:disabled){background-color:var(--cream-deeper)}.puls-btn-secondary:active:not(:disabled){background-color:var(--cream-deeper)}.puls-btn-soft{background-color:var(--warm-white);color:var(--sage-dark);border:var(--border-soft)}.puls-btn-soft:hover:not(:disabled){background-color:var(--cream);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.puls-btn-soft:active:not(:disabled){background-color:var(--cream-dark);box-shadow:none;transform:translateY(0)}.puls-btn-outline{background-color:transparent;border:2px solid var(--sage);color:var(--sage)}.puls-btn-outline:hover:not(:disabled){background-color:var(--sage);color:var(--warm-white);box-shadow:var(--shadow-soft)}.puls-btn-outline:active:not(:disabled){background-color:var(--sage-dark);border-color:var(--sage-dark)}.puls-btn-ghost{background-color:var(--sage-pale);color:var(--sage-dark)}.puls-btn-ghost:hover:not(:disabled){background-color:var(--cream-dark)}.puls-btn-ghost:active:not(:disabled){background-color:var(--cream-dark)}.puls-btn-danger{background-color:var(--terra-pale);color:var(--terra)}.puls-btn-danger:hover:not(:disabled){background-color:var(--terra);color:var(--warm-white);box-shadow:var(--shadow-md);transform:translateY(-1px)}.puls-btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm);background-color:var(--terra-dark);color:var(--warm-white)}.puls-btn-warn{background-color:var(--gold-pale);color:var(--ink)}.puls-btn-warn:hover:not(:disabled){background-color:var(--gold);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.puls-btn-warn:active:not(:disabled){background-color:var(--gold-dark);color:var(--warm-white);box-shadow:none;transform:translateY(0)}.puls-btn-success{background-color:var(--puls-success);color:var(--puls-neutral-white)}.puls-btn-success:hover:not(:disabled){background-color:var(--puls-success-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.puls-btn-success:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm);background-color:var(--puls-success-darker)}.puls-btn-loading{cursor:wait}.puls-btn-content-loading{opacity:.7}.puls-btn-spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:var(--radius-full);animation:puls-spin .6s linear infinite}.puls-btn-block{width:100%;display:flex}.puls-input-group{margin-bottom:var(--space-4)}.puls-input-label{display:block;margin-bottom:var(--space-1);color:var(--puls-neutral-700);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide)}.puls-input-required{color:var(--puls-error)}.puls-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-base);font-size:var(--font-size-base);font-family:var(--font-family-base);background-color:var(--puls-neutral-white);color:var(--text-color);transition:var(--transition);box-sizing:border-box}.puls-input::placeholder{color:var(--text-muted)}.puls-input:focus{outline:none;border-color:var(--puls-primary-base);box-shadow:0 0 0 3px rgba(var(--puls-primary-rgb),.1)}.puls-input:focus-visible{outline:2px solid var(--terra);outline-offset:2px}.puls-input:disabled,.puls-input-disabled{background-color:var(--puls-neutral-50);cursor:not-allowed;opacity:.6}.puls-input-error{border-color:var(--puls-error)}.puls-input-error:focus{border-color:var(--puls-error);box-shadow:0 0 0 3px rgba(var(--puls-error-rgb),.1)}.puls-input-error-text{display:block;margin-top:var(--space-1);color:var(--puls-error);font-size:var(--font-size-sm)}.puls-input-help-text{display:block;margin-top:var(--space-1);color:var(--text-muted);font-size:var(--font-size-sm)}.puls-alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-base);border-left:4px solid;animation:puls-alert-slide-in .3s ease-out}@keyframes puls-alert-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.puls-alert-content{flex:1}.puls-alert-title{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1);font-size:var(--font-size-base)}.puls-alert-message{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.puls-alert-close{background:none;border:none;font-size:var(--font-size-xl);line-height:1;cursor:pointer;color:inherit;opacity:.7;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition);flex-shrink:0}.puls-alert-close:hover{opacity:1;background-color:#0000001a}.puls-alert-success{background-color:var(--puls-success-light);border-left-color:var(--puls-success);color:var(--puls-success-darker)}.puls-alert-error{background-color:var(--puls-error-light);border-left-color:var(--puls-error);color:var(--puls-error-darker)}.puls-alert-warning{background-color:var(--puls-warning-light);border-left-color:var(--puls-warning);color:var(--puls-warning-darker)}.puls-alert-info{background-color:var(--puls-info-light);border-left-color:var(--puls-info);color:var(--puls-info-darker)}.puls-card{min-width:0;background:var(--warm-white);border:var(--border-soft);border-radius:var(--radius-card-lg);padding:var(--layout-card-padding);box-shadow:var(--shadow-soft);transition:var(--transition)}.puls-card-default,.puls-card-elevated{box-shadow:var(--shadow-soft)}.puls-card-outlined{border:var(--border-soft);box-shadow:none}.puls-card-featured{background:var(--sage-pale);border-color:var(--sage-light)}.puls-card-compact{padding:var(--layout-card-padding-compact);border-radius:var(--radius-card-md)}.puls-card.puls-card--density-compact{padding:var(--layout-card-padding-compact)}.puls-card-hover:hover{box-shadow:0 20px 48px var(--cream-dark);transform:translateY(-1px)}.puls-card-header{margin-bottom:var(--layout-card-header-gap)}.puls-card-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--ink);line-height:var(--line-height-tight)}.puls-card-body{margin-bottom:var(--layout-card-header-gap)}.puls-card-body:last-child{margin-bottom:0}.puls-card-footer{margin-top:var(--layout-card-footer-gap);padding-top:var(--layout-card-footer-gap);border-top:var(--border-soft)}.not-found-full{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow:auto;background-color:var(--cream, var(--warm-white, #f5f0e8))}.not-found-full .not-found-content{margin:auto;width:100%;max-width:440px;animation:not-found-fade-in .5s ease-out}.not-found-inline{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-8)}.not-found-inline .not-found-content{text-align:center;max-width:400px}@keyframes not-found-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.not-found-card{width:100%;padding:var(--space-8)}.not-found-title{text-align:center;margin-bottom:var(--space-2);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--ink, var(--puls-neutral-800))}.not-found-code{text-align:center;font-size:var(--font-size-2xl);font-weight:var(--font-weight-medium);color:var(--ink-mid, var(--puls-neutral-600));margin-bottom:var(--space-4)}.not-found-description{text-align:center;color:var(--ink-mid, var(--puls-neutral-600));margin-bottom:var(--space-6);line-height:1.5}.not-found-actions{display:flex;flex-direction:column;gap:var(--space-4);align-items:center}.not-found-actions .not-found-primary{width:100%;max-width:240px}.not-found-back{background:none;border:none;color:var(--sage, var(--ink));font-size:var(--font-size-sm);cursor:pointer;text-decoration:underline;padding:var(--space-2) 0}.not-found-back:hover{text-decoration:none}.not-found-inline .not-found-title{color:var(--ink, var(--puls-neutral-800))}.not-found-inline .not-found-description{color:var(--ink-mid, var(--puls-neutral-600))}@media(max-width:640px){.not-found-card{padding:var(--space-6)}.not-found-title{font-size:var(--font-size-3xl)}}.puls-badge{display:inline-flex;align-items:center;justify-content:center;gap:7px;box-sizing:border-box;min-width:0;max-width:100%;min-height:28px;height:auto;border:var(--border-soft);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);line-height:1.3;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:break-word;vertical-align:middle}.puls-badge-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.puls-badge-md{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm)}.puls-badge-lg{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.puls-badge-primary{background-color:var(--sage);color:var(--warm-white);border-color:var(--sage)}.puls-badge-secondary{background-color:var(--puls-secondary-slate-blue);color:var(--puls-neutral-white);border-color:var(--puls-secondary-slate-blue)}.puls-badge-success{background-color:var(--sage-pale);color:var(--sage-dark);border-color:var(--sage-light)}.puls-badge-warning{background-color:var(--gold-pale);color:var(--ink);border-color:var(--gold)}.puls-badge-error{background-color:var(--terra-pale);color:var(--terra);border-color:var(--terra)}.puls-badge-info{background-color:var(--puls-info);color:var(--puls-neutral-white);border-color:var(--puls-info)}.puls-badge-sage{background-color:var(--sage);color:var(--warm-white);border-color:var(--sage)}.puls-badge-dark{background-color:var(--sage-dark);color:var(--warm-white);border-color:var(--sage-dark)}.puls-badge-neutral{background-color:var(--cream);color:var(--ink-mid);border-color:var(--cream-dark)}.puls-spinner{border:3px solid;border-top-color:transparent;border-radius:var(--radius-full);animation:puls-spin .8s linear infinite;display:inline-block}.puls-spinner-sm{width:16px;height:16px;border-width:2px}.puls-spinner-md{width:24px;height:24px;border-width:3px}.puls-spinner-lg{width:40px;height:40px;border-width:4px}.puls-spinner-primary{border-color:var(--puls-primary-300);border-top-color:var(--puls-primary-base)}.puls-spinner-secondary{border-color:var(--puls-slate-100);border-top-color:var(--puls-secondary-slate-blue)}.puls-spinner-white{border-color:#ffffff4d;border-top-color:var(--puls-neutral-white)}@keyframes puls-spin{to{transform:rotate(360deg)}}.puls-skeleton{background:linear-gradient(90deg,var(--puls-neutral-100) 0%,var(--puls-neutral-200) 50%,var(--puls-neutral-100) 100%);background-size:200% 100%;animation:puls-skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-base)}@keyframes puls-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.puls-loading-container{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--text-muted);gap:var(--space-3)}.puls-segmented-control{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--color-border-subtle, #e5e7eb);border-radius:999px;background:var(--color-surface-muted, #f8fafc)}.puls-segmented-control--sm{padding:3px}.puls-segmented-control--lg{padding:5px}.puls-segmented-control__item{border:0;border-radius:999px;background:transparent;color:var(--color-text-muted, #64748b);cursor:pointer;font:inherit;font-weight:600;line-height:1;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.puls-segmented-control--sm .puls-segmented-control__item{padding:7px 12px;font-size:.8125rem}.puls-segmented-control--md .puls-segmented-control__item{padding:9px 16px;font-size:.875rem}.puls-segmented-control--lg .puls-segmented-control__item{padding:11px 18px;font-size:.9375rem}.puls-segmented-control__item:hover:not(:disabled){color:var(--color-text, #0f172a)}.puls-segmented-control__item--active{background:var(--color-surface, #ffffff);color:var(--color-text, #0f172a);box-shadow:var(--shadow-sm, 0 1px 2px rgba(15, 23, 42, .08))}.puls-segmented-control__item:focus-visible{outline:2px solid var(--color-focus, #2563eb);outline-offset:2px}.puls-segmented-control__item:disabled{cursor:not-allowed;opacity:.55}.puls-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--layout-page-header-columns-gap);align-items:end;margin-bottom:var(--layout-page-header-gap)}.puls-page-header__copy{min-width:0}.puls-page-header__eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--sage-dark);font-size:13px;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.puls-page-header__eyebrow:before{content:"";width:24px;height:2px;border-radius:var(--radius-full);background:var(--sage)}.puls-page-header__title{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(32px,3.6vw,48px);font-weight:var(--font-weight-semibold);line-height:1.05;letter-spacing:-.015em}.puls-page-header__description{max-width:740px;margin:var(--layout-page-description-margin);color:var(--ink-mid);font-size:var(--font-size-base);line-height:1.7}.puls-page-header__tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}@media(max-width:768px){.puls-page-header{grid-template-columns:1fr;align-items:start}.puls-page-header__tools{width:100%;justify-content:center}.puls-page-header__title{font-size:clamp(28px,8vw,40px)}}.puls-period-control{display:flex;align-items:center;justify-content:space-between;gap:8px;width:auto;max-width:100%;min-width:min(100%,20rem);box-sizing:border-box;padding:8px;border:var(--border-soft);border-radius:var(--radius-full);background:var(--warm-white)}.puls-period-control__nav{flex:0 0 auto}.puls-period-control__center{display:flex;align-items:center;justify-content:center;flex:1 1 auto;gap:8px;min-width:0}.puls-period-control button{display:grid;place-items:center;min-width:38px;height:38px;border:0;border-radius:50%;background:var(--cream);color:var(--ink);font-weight:var(--font-control-weight, var(--font-weight-medium));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);cursor:pointer}.puls-period-control button:hover:not(:disabled){background:var(--sage-pale);color:var(--sage-dark)}.puls-period-control button:disabled{opacity:.4;cursor:not-allowed}.puls-period-control button:focus-visible{outline:2px solid var(--terra);outline-offset:2px}.puls-period-control__label{min-width:0;color:var(--ink);font-weight:var(--font-weight-semibold);letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);text-align:center;overflow-wrap:anywhere}.puls-period-control__label--button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 10px;border:0;border-radius:var(--radius-full);background:transparent;font:inherit;font-weight:var(--font-weight-semibold);letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);color:inherit;cursor:pointer}.puls-period-control__label--button:hover{background:var(--sage-pale);color:var(--sage-dark)}.puls-period-control__label--button:focus-visible{outline:2px solid var(--terra);outline-offset:2px}.puls-period-control__today{width:auto;min-width:54px;flex:0 0 auto;padding:0 12px;border-radius:var(--radius-full);font-size:var(--font-control-size, var(--font-size-sm))}.puls-page-header__tools>.puls-period-control,.puls-page-header__tools>.puls-control-type:has(>.puls-period-control):not(:has(>:not(.puls-period-control))),.puls-page-header__tools>[class*=__header-tools]:has(>.puls-period-control):not(:has(>:not(.puls-period-control))){width:100%;max-width:100%;min-width:min(100%,22rem);box-sizing:border-box}.puls-page-header__tools>.puls-control-type:has(>.puls-period-control):not(:has(>:not(.puls-period-control)))>.puls-period-control,.puls-page-header__tools>[class*=__header-tools]:has(>.puls-period-control):not(:has(>:not(.puls-period-control)))>.puls-period-control{width:100%;min-width:0}@media(max-width:768px){.puls-period-control{width:100%;min-width:0}.puls-period-control__center{flex-wrap:wrap}.puls-page-header__tools [class*=__period-wrap],.puls-page-header__tools [class*=__period-wrap] .puls-period-control{width:100%;max-width:100%;min-width:0}}.puls-kpi-card{display:grid;gap:var(--space-2);align-content:start}.puls-kpi-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.puls-kpi-card__label{margin:0;color:var(--ink-mid);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;line-height:1.2}.puls-kpi-card__value{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.75rem;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.puls-kpi-card__label+.puls-kpi-card__value{margin-top:6px}.puls-kpi-card__trend{flex:0 0 auto;border-radius:var(--radius-full);padding:5px 9px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.puls-kpi-card__trend--good{background:var(--sage-pale);color:var(--sage-dark)}.puls-kpi-card__trend--warn{background:var(--gold-pale);color:var(--ink)}.puls-kpi-card__trend--bad{background:var(--terra-pale);color:var(--terra)}.puls-kpi-card__footer{color:var(--ink-mid);font-size:var(--font-size-sm);line-height:1.5}.puls-progress{display:grid;gap:8px}.puls-progress__label{color:var(--ink-mid);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.puls-progress progress{width:100%;height:10px;overflow:hidden;border:0;border-radius:var(--radius-full);background:var(--cream-dark)}.puls-progress progress::-webkit-progress-bar{background:var(--cream-dark);border-radius:var(--radius-full)}.puls-progress progress::-webkit-progress-value{background:var(--sage);border-radius:var(--radius-full)}.puls-progress progress::-moz-progress-bar{background:var(--sage);border-radius:var(--radius-full)}.puls-action-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.puls-action-list__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:var(--border-soft);border-radius:var(--radius-card-md);background:var(--cream)}.puls-action-list__item--clickable{display:block;padding:0}.puls-action-list__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;min-width:0;padding:14px;box-sizing:border-box;margin:0;border:none;background:transparent;font:inherit;text-align:left;color:inherit;text-decoration:none;border-radius:inherit;cursor:pointer}.puls-action-list__item--clickable:hover{background:var(--cream-dark, #ede7dc)}.puls-action-list__item--clickable:hover .puls-action-list__row{color:inherit}.puls-action-list__dot{width:12px;height:12px;border-radius:50%;background:var(--gold)}.puls-action-list__dot--error{background:var(--terra)}.puls-action-list__dot--success{background:var(--sage)}.puls-action-list__copy{display:grid;min-width:0;gap:2px}.puls-action-list__copy strong{color:var(--ink)}.puls-action-list__copy span{color:var(--ink-mid);font-size:var(--font-size-sm)}.puls-action-list__action{justify-self:end}.puls-action-list--plain{gap:0}.puls-action-list--plain .puls-action-list__item{padding:.65rem 0;border:none;border-bottom:1px solid var(--border-soft, rgba(0, 0, 0, .06));border-radius:0;background:transparent}.puls-action-list--plain .puls-action-list__item--clickable{display:block;padding:0}.puls-action-list--plain .puls-action-list__row{padding:.65rem 0}.puls-action-list--plain .puls-action-list__item--clickable:first-child .puls-action-list__row{padding-top:0}.puls-action-list--plain .puls-action-list__item--clickable:last-child .puls-action-list__row{padding-bottom:0}.puls-action-list--plain .puls-action-list__item--clickable:hover{background:transparent}.puls-action-list--plain .puls-action-list__item:first-child{padding-top:0}.puls-action-list--plain .puls-action-list__item:last-child{border-bottom:none;padding-bottom:0}.puls-action-list--plain .puls-action-list__dot{width:8px;height:8px}.puls-table-card{padding:0;overflow:hidden}.puls-table-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--layout-table-header-padding-y) var(--space-6);border-bottom:var(--border-soft);flex-wrap:wrap}.puls-table-card__header:has(>.puls-table-card__tools:only-child){justify-content:flex-end}.puls-table-card__header h2{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(22px,3vw,32px);font-weight:var(--font-weight-semibold);line-height:1.05;letter-spacing:-.015em}.puls-table-card__header p{margin:8px 0 0;color:var(--ink-mid);line-height:1.5}.puls-table-card__tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.puls-table-card__wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.puls-table-card table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}.puls-table-card th{padding:14px 18px;background:var(--cream);color:var(--ink-mid);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.puls-table-card td{padding:18px;border-top:var(--border-soft);color:var(--ink);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);vertical-align:middle}.puls-table-card tr.is-selected td{background:#e8f0e473}.puls-table-card .group-row td{padding:12px 18px;background:var(--cream);color:var(--sage-dark);border-top:var(--border-soft);border-bottom:var(--border-soft);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}@media(max-width:768px){.puls-table-card__header{align-items:stretch;flex-direction:column;padding:var(--layout-table-header-padding-y) var(--space-4)}.puls-table-card__tools{width:100%;justify-content:flex-start}.puls-table-card table{min-width:760px}.puls-table-card th,.puls-table-card td{padding:12px 14px}}.puls-person-cell{display:flex;align-items:center;gap:12px;min-width:220px;max-width:100%}@media(max-width:768px){.puls-person-cell{min-width:0;width:100%}.puls-person-cell__meta{min-width:0;flex:1 1 auto}.puls-person-cell__meta strong,.puls-person-cell__meta span{white-space:normal;overflow-wrap:anywhere}}.puls-person-cell__avatar{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:var(--radius-card-sm);background:var(--sage-pale);color:var(--sage-dark);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.puls-person-cell__meta{display:grid;gap:3px;min-width:0}.puls-person-cell__meta strong{color:var(--ink)}.puls-person-cell__meta span{color:var(--ink-mid);font-size:var(--font-size-sm)}.puls-filter-badge{cursor:default}button.puls-filter-badge{cursor:pointer}.puls-filter-badge:hover{box-shadow:var(--shadow-soft)}.puls-filter-badge:focus-visible{outline:2px solid var(--terra);outline-offset:2px}.puls-filter-badge--active{box-shadow:inset 0 0 0 2px var(--sage)}:root{--modal-z-base: 1000;--modal-z-step: 10}.modal-root__overlay:not(.modal-overlay){position:fixed;inset:0;z-index:var(--modal-z-index, var(--modal-z-base));display:flex;align-items:center;justify-content:center;padding:var(--space-4, 1rem);background:#2a262273;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal-root__panel:not(.modal-content){box-sizing:border-box;display:flex;flex-direction:column;width:100%;max-height:min(90vh,900px);overflow:hidden;background:var(--warm-white, #fefcf9);border-radius:var(--radius-md, 12px);box-shadow:0 8px 32px #2a26221f;animation:scaleIn .2s ease-out}.modal-root__panel:not(.modal-content).modal-root__panel--sm{max-width:400px}.modal-root__panel:not(.modal-content).modal-root__panel--md{max-width:500px}.modal-root__panel:not(.modal-content).modal-root__panel--lg{max-width:720px}.modal-root__panel:not(.modal-content).modal-root__panel--wide{max-width:min(96vw,960px)}.modal-root__panel:not(.modal-content).modal-root__panel--fullscreen{width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0}@media(max-width:768px){.modal-root__overlay:not(.modal-overlay){padding:12px;align-items:stretch}.modal-root__panel:not(.modal-content).modal-root__panel--fullscreen{width:100%;height:calc(100dvh - 24px);max-width:100%;max-height:calc(100dvh - 24px);border-radius:16px;overflow:hidden}}.modal-root__overlay.modal-overlay,.modal-root__panel.modal-content{outline:none}.modal-root__overlay:focus-visible,.modal-root__panel:focus-visible{outline:2px solid var(--sage, #4a6741);outline-offset:2px}.modal-root__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3, .75rem);padding:var(--space-4, 1rem) var(--space-4, 1rem) 0;flex-shrink:0}.modal-root__title{margin:0;font-size:1.125rem;font-weight:600;color:var(--ink, #2a2622);line-height:1.3}.modal-root__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--radius-sm, 8px);background:transparent;color:var(--ink-mid, #6b6259);cursor:pointer}.modal-root__close:hover{background:var(--cream-dark, #ede7dc);color:var(--ink, #2a2622)}.modal-root__close:focus-visible{outline:2px solid var(--sage, #4a6741);outline-offset:2px}.modal-root__body{flex:1;min-height:0;overflow:auto;padding:var(--space-4, 1rem)}.modal-root__body-scale{transform-origin:top center}.modal-root__footer{flex-shrink:0;padding:0 var(--space-4, 1rem) var(--space-4, 1rem)}.modal-root__footer .dialog-actions{margin-top:0}.modal-root__body-scale--1{zoom:1}.modal-root__body-scale--085{zoom:.85}.modal-root__body-scale--09{zoom:.9}.modal-root__overlay[data-stack-level="0"]{z-index:calc(var(--modal-z-base) + 0 * var(--modal-z-step))}.modal-root__overlay[data-stack-level="1"]{z-index:calc(var(--modal-z-base) + 1 * var(--modal-z-step))}.modal-root__overlay[data-stack-level="2"]{z-index:calc(var(--modal-z-base) + 2 * var(--modal-z-step))}.modal-root__overlay[data-stack-level="3"]{z-index:calc(var(--modal-z-base) + 3 * var(--modal-z-step))}.modal-root__message{margin:0 0 var(--space-4, 1rem);color:var(--ink-mid, #6b6259);line-height:1.5}.modal-root__footer .dialog-actions{display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem);justify-content:flex-end;align-items:center}.modal-root__footer:not(.form-modal-footer):not(.report-modal-footer):not(.staff-unsaved-dialog-footer){display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem);justify-content:flex-end;align-items:center}.modal-root__footer.confirm-modal-footer:not(.form-modal-footer):not(.report-modal-footer):not(.staff-unsaved-dialog-footer){justify-content:center}.modal-root__footer.confirm-modal-footer .dialog-actions{justify-content:center;width:100%;gap:var(--space-2, .5rem);margin-top:0;padding-top:0;border-top:0}.modal-root__footer.confirm-modal-footer .dialog-actions .puls-btn{min-height:1.75rem;padding:.3rem .7rem;font-size:.75rem}@media(max-width:640px){.modal-root__footer .dialog-actions,.modal-root__footer:not(.form-modal-footer):not(.report-modal-footer):not(.staff-unsaved-dialog-footer){flex-direction:column-reverse;align-items:stretch}.modal-root__footer .dialog-actions>*,.modal-root__footer:not(.form-modal-footer):not(.report-modal-footer):not(.staff-unsaved-dialog-footer)>button,.modal-root__footer:not(.form-modal-footer):not(.report-modal-footer):not(.staff-unsaved-dialog-footer)>.btn{width:100%;justify-content:center}.modal-root__footer.confirm-modal-footer .dialog-actions .puls-btn{min-height:2.75rem;padding:.625rem 1rem;font-size:.875rem}.staff-unsaved-dialog-footer{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3, .75rem)}.staff-unsaved-dialog-footer__row{display:flex;flex-direction:column-reverse;gap:var(--space-3, .75rem)}.staff-unsaved-dialog-footer__row>*,.staff-unsaved-dialog-footer>button{width:100%;justify-content:center}}.employee-dashboard{width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0}.employee-dashboard__status{margin:0 0 1rem;color:var(--ink-mid, #6b6259)}.employee-dashboard__status--error{color:var(--terra, var(--color-error-red))}.employee-dashboard__hero-card.puls-table-card,.employee-dashboard__hero-card.puls-card{padding:0;min-width:0}.employee-dashboard__hero-card>.puls-table-card__header{background:var(--sage, rgb(74, 103, 65));border-bottom:none}.employee-dashboard__hero-card>.puls-table-card__header h2,.employee-dashboard__hero-card>.puls-table-card__header p{color:var(--warm-white, #fefcf9)}.employee-dashboard__hero-card>.puls-table-card__header p{opacity:.85}.employee-dashboard__hero-card>.puls-table-card__wrap{padding:0}.employee-dashboard__hero-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.4rem}.employee-dashboard__tool-link{text-decoration:none}.employee-dashboard__hero-body{display:grid;gap:1rem;padding:1.15rem}.employee-dashboard__hero-label{margin:0;color:var(--ink, #1c1917);font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,2rem);font-weight:var(--font-weight-semibold);letter-spacing:-.02em;line-height:1.15}.employee-dashboard__hero-date,.employee-dashboard__hero-time,.employee-dashboard__hero-empty{margin:.3rem 0 0;color:var(--ink-mid, #6b6259);font-size:.9375rem}.employee-dashboard__hero-time{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink, #1c1917)}.employee-dashboard__upcoming-title{margin:0 0 .35rem;color:var(--ink-mid, #6b6259);font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.employee-dashboard__upcoming-list{margin:0}.employee-dashboard__hero-actions{display:flex;flex-wrap:wrap;gap:.5rem}.monthly-calendar{background:#fefcf9;border-radius:var(--border-radius);box-shadow:0 2px 8px var(--color-shadow-light);padding:var(--spacing-lg)}.calendar-grid{display:flex;flex-direction:column}.weekdays-header{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.weekday{text-align:center;font-weight:600;color:var(--color-text-muted);padding:var(--spacing-sm)}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-xs)}.day-cell{min-height:100px;border:1px solid var(--color-border-light);border-radius:var(--border-radius);padding:var(--spacing-xs);cursor:pointer;transition:background-color .2s;background:#fefcf9}.day-cell:hover{background-color:var(--color-bg-hover)}.day-cell.other-month{opacity:.4}.day-cell.today{border-color:var(--sage);border-width:2px}.day-cell.selected{border:3px solid var(--sage)!important;box-shadow:0 0 0 2px #4a674166,0 4px 12px #4a67414d!important;transform:scale(1.02);z-index:10;position:relative;background-color:#4a67411a}.day-cell.selected:hover{background-color:#4a674126;transform:scale(1.03)}.day-cell.selected.today{border:3px solid var(--sage)!important;box-shadow:0 0 0 2px #4a674166,0 4px 12px #4a67414d!important}.day-cell.available{background-color:#4a67410f}.day-cell.available .day-number:after{content:"";display:inline-block;width:6px;height:6px;background:var(--sage);border-radius:50%;margin-left:4px;vertical-align:middle}.day-cell.available:hover{background-color:#4a67411f}.day-cell.available.selected{background-color:#4a674126}.day-number{font-weight:600;margin-bottom:var(--spacing-xs)}.day-shifts{display:flex;flex-direction:column;gap:2px}.calendar-event{display:flex;align-items:center;gap:4px;font-size:.75rem;padding:3px 6px;border-radius:4px;border-left:3px solid var(--color-neutral-gray);background-color:var(--color-bg-light);color:var(--color-text-primary);overflow:hidden;min-width:0}.calendar-event-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.calendar-event-time{flex-shrink:0;color:var(--color-text-slate-medium);font-size:.7rem;white-space:nowrap;margin-left:auto}.more-shifts{font-size:.75rem;color:var(--color-text-muted);font-style:italic;padding:2px 8px;cursor:pointer}.more-shifts:hover{color:var(--sage)}.weekly-calendar{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);background:#fefcf9;border-radius:var(--border-radius);box-shadow:0 2px 8px var(--color-shadow-light)}.weekly-calendar .day-cell{background:#fefcf9;border-radius:var(--border-radius);box-shadow:0 1px 3px #0000000f}.staff-calendar .day-cell{min-height:140px}.staff-calendar.weekly-calendar .day-cell{min-height:180px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.calendar-header__nav{flex-shrink:0}.calendar-header__title{margin:0;color:var(--color-text-heading)}.calendar-header__actions{flex-shrink:0}.calendar-header button{padding:var(--spacing-sm) var(--spacing-md);background:#fefcf9;border:1px solid var(--color-border-light);border-radius:var(--border-radius);cursor:pointer}.calendar-header button:hover{background-color:var(--color-bg-light)}.day-detail-modal{max-width:700px;width:90vw}.day-detail-modal h2,.day-detail-modal .form-modal-top__title{text-transform:capitalize}.day-detail-section{margin-bottom:var(--spacing-lg, 1.5rem)}.day-detail-section:last-child{margin-bottom:0}.day-detail-section-title{font-size:.9rem;font-weight:600;color:var(--color-text-slate-medium);margin:0 0 var(--spacing-sm, .5rem) 0;text-transform:uppercase;letter-spacing:.03em}.day-detail-table{width:100%;border-collapse:collapse}.day-detail-table th{text-align:left;font-weight:600;font-size:.85rem;color:var(--color-text-slate-medium);padding:8px 12px;border-bottom:2px solid var(--color-border-light);background-color:var(--color-bg-light)}.day-detail-table td{padding:8px 12px;font-size:.875rem;border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary)}.day-detail-table tbody tr:last-child td{border-bottom:none}.day-detail-table tbody tr:hover{background-color:var(--color-bg-hover)}.day-detail-employee{font-weight:500}.day-detail-time{font-variant-numeric:tabular-nums;white-space:nowrap}.shift-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.8rem;color:#fff;font-weight:500}.day-detail-empty{text-align:center;padding:var(--spacing-lg, 1.5rem);color:var(--color-text-muted)}.calendar-empty-state{grid-column:1 / -1;text-align:center;padding:3rem 1rem;color:var(--color-text-muted)}.calendar-empty-state-title{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:var(--color-text-slate-medium)}.calendar-empty-state-message{font-size:.875rem;margin:0}.org-badge{display:inline-block;padding:2px 8px;border-left:3px solid var(--color-neutral-gray);font-size:.8rem;font-weight:500;color:var(--color-text-primary);background-color:var(--color-bg-light);border-radius:2px}@media(max-width:640px){.day-detail-table thead{display:none}.day-detail-table,.day-detail-table tbody,.day-detail-table tr,.day-detail-table td{display:block;width:100%}.day-detail-table tr{padding:10px 0;border-bottom:1px solid var(--color-border-light)}.day-detail-table tr:last-child{border-bottom:none}.day-detail-table td{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:none}.day-detail-table td:before{content:attr(data-label);flex-shrink:0;font-weight:600;color:var(--color-text-slate-medium)}.day-detail-time{white-space:normal}}.modal-root__overlay:not(.modal-overlay):has(.form-modal-v2){background:#2a26228a}.modal-root__panel.form-modal-v2:not(.modal-content){width:min(700px,calc(100vw - 32px));max-width:700px;max-height:calc(100vh - 32px);padding:0;overflow:hidden;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:28px;background:var(--warm-white, #FEFCF9);box-shadow:0 32px 100px #2a262261}.modal-root__panel.form-modal-v2.form-modal-v2--sm:not(.modal-content){width:min(480px,calc(100vw - 32px));max-width:480px}.modal-root__panel.form-modal-v2.form-modal-v2--lg:not(.modal-content),.modal-root__panel.form-modal-v2.form-modal-v2--wide:not(.modal-content){width:min(960px,calc(100vw - 32px));max-width:min(96vw,960px)}.form-modal-v2__form{display:flex;flex:1;min-height:0;flex-direction:column}.form-modal-top{flex-shrink:0;padding:22px 24px 20px;background:var(--sage-dark, #2D4229);color:var(--warm-white, #FEFCF9)}.form-modal-top__row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.form-modal-top__eyebrow{margin:0 0 5px;color:#fefcf98c;font-size:.65625rem;font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase}.form-modal-top__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.form-modal-top__title{margin:0;color:var(--warm-white, #FEFCF9);font-family:var(--font-display);font-size:1.625rem;font-weight:var(--font-weight-semibold);line-height:1.06}.form-modal-top__meta{margin:7px 0 0;color:#fefcf9b8;font-size:.8125rem;font-weight:500}.form-modal-top__close{display:grid;flex-shrink:0;width:36px;height:36px;place-items:center;border:1px solid rgba(254,252,249,.22);border-radius:50%;background:#fefcf924;color:var(--warm-white, #FEFCF9);cursor:pointer;transition:background .12s}.form-modal-top__close:hover:not(:disabled){background:#fefcf942}.form-modal-top__close:disabled{opacity:.5;cursor:not-allowed}.form-modal-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:.6875rem;font-weight:var(--font-weight-semibold)}.form-modal-badge--info{border:1px solid rgba(232,240,228,.32);background:#e8f0e42e;color:var(--sage-pale, #E8F0E4)}.form-modal-badge--danger{border:1px solid rgba(245,232,227,.45);background:#c4614a33;color:#f8d7cf}.form-modal-badge--warn{border:1px solid rgba(255,236,179,.45);background:#f5b43c38;color:#ffe8a8}.form-modal-body.modal-root__body{padding:0;background:var(--cream, #F7F3EC)}.form-modal-body .modal-root__body-scale{display:flex;flex-direction:column;gap:16px;padding:20px 18px 18px}.form-modal-card{padding:22px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:22px;background:var(--warm-white, #FEFCF9);box-shadow:0 4px 16px #2a262212}.form-modal-card--accent{border-color:#4a674133;background:var(--sage-pale, #E8F0E4)}.form-modal-card--danger{border-color:#c4614a38;background:var(--terra-pale, #F5E8E3)}.form-modal-card__title{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:var(--ink, #2A2622);font-size:.875rem;font-weight:var(--font-weight-semibold)}.form-modal-card__title i{color:var(--sage, #4A6741)}.form-modal-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.form-modal-field{display:flex;flex-direction:column;gap:6px;min-width:0}.form-modal-field--full{grid-column:1 / -1}.form-modal-field__label{color:var(--ink-mid, #6B6259);font-size:.75rem;font-weight:var(--font-weight-semibold)}.form-modal-field__label--required:after{content:" *";color:var(--terra, #C4614A)}.form-modal-field__hint{margin:0;color:var(--ink-mid, #6B6259);font-size:.75rem}.form-modal-field input[type=text],.form-modal-field input[type=number],.form-modal-field input[type=date],.form-modal-field input[type=time],.form-modal-field textarea,.form-modal-field .custom-select-trigger,.form-modal-field .date-picker-input-wrapper{width:100%;box-sizing:border-box;border:1px solid var(--cream-dark, #EDE7DC);border-radius:12px;background:var(--warm-white, #FEFCF9)}.form-modal-field textarea{min-height:88px;resize:vertical;padding:10px 12px;font:inherit}.form-modal-footer.modal-root__footer{padding:14px 18px;border-top:1px solid var(--cream-dark, #EDE7DC);background:var(--warm-white, #FEFCF9)}.form-modal-footer .dialog-actions{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;margin-top:0;padding:0;border-top:none}.form-modal-footer__bar{display:flex;align-items:center;gap:12px;width:100%}.form-modal-footer__left{flex:1;min-width:0;color:var(--ink-mid, #6B6259);font-size:.75rem}.form-modal-footer__left:empty,.form-modal-footer__left:empty+.form-modal-footer__separator{display:none}.form-modal-footer__bar:has(.form-modal-footer__left:empty){justify-content:flex-end}.bulk-dialog__hint{margin:0 0 14px}.bulk-dialog #bulk-update-description::placeholder{font-size:.8125rem;color:var(--ink-mid, #6b6259);opacity:1}.bulk-dialog__week-row{display:grid;grid-template-columns:minmax(240px,280px) auto;align-items:stretch;justify-content:start;gap:12px}.bulk-dialog__week-group{display:grid;grid-template-columns:minmax(0,1.3fr) 1px minmax(0,.7fr);align-items:stretch;width:100%;max-width:100%;border:1px solid var(--cream-dark, #ede7dc);border-radius:12px;background:var(--warm-white, #FEFCF9);overflow:hidden}.bulk-dialog__week-cell{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:6px 10px;transition:background .12s ease}.bulk-dialog__week-cell-label{color:var(--ink-mid, #6b6259);font-size:.6875rem;font-weight:var(--font-weight-semibold, 600);letter-spacing:.02em;line-height:1.2}.bulk-dialog__week-divider{width:1px;margin:5px 0;background:var(--cream-deeper, #d4c9b8)}.bulk-dialog .form-modal-field .bulk-dialog__week-input{width:100%;min-height:24px;padding:0;border:none;border-radius:0;background:transparent;color:var(--ink, #2a2622);font-size:.9375rem;font-weight:var(--font-weight-semibold, 600);font-variant-numeric:tabular-nums;line-height:1.25}.bulk-dialog .form-modal-field .bulk-dialog__week-input--year,.bulk-dialog .form-modal-field .bulk-dialog__week-input--week{width:100%}.bulk-dialog .form-modal-field .bulk-dialog__week-input:focus{outline:none}.bulk-dialog__week-group:focus-within{border-color:var(--sage, #4a6741);box-shadow:0 0 0 3px #4a674124}.bulk-dialog__week-cell:focus-within{background:var(--sage-pale, #e8f0e4)}.bulk-dialog .bulk-dialog__week-reset.puls-btn{flex:0 0 auto;align-self:stretch;min-height:44px;margin-left:0;padding:8px 12px;border:1px solid var(--cream-dark, #ede7dc);border-radius:12px;background:var(--cream, #f7f3ec);box-shadow:none;color:var(--ink-mid, #6b6259);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);text-decoration:none;transform:none}.bulk-dialog .bulk-dialog__week-reset.puls-btn:hover:not(:disabled),.bulk-dialog .bulk-dialog__week-reset.puls-btn:active:not(:disabled){border-color:var(--cream-deeper, #d4c9b8);background:var(--cream-dark, #ede7dc);box-shadow:none;color:var(--ink, #2a2622);transform:none}.bulk-dialog__shifts{margin-top:18px;padding-top:16px;border-top:1px solid var(--cream-dark, #ede7dc)}.bulk-dialog__shifts-title{margin:0 0 10px;color:var(--ink, #2a2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600)}.bulk-dialog__shift-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;border:1px solid var(--cream-dark, #ede7dc);border-radius:12px;background:var(--cream, #f7f3ec)}.bulk-dialog__shift-item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-bottom:1px solid var(--cream-dark, #ede7dc);font-size:.8125rem;line-height:1.35}.bulk-dialog__shift-item:last-child{border-bottom:none}.bulk-dialog__shift-name{color:var(--ink, #2a2622);font-weight:var(--font-weight-semibold, 600)}.bulk-dialog__shift-meta{color:var(--ink-mid, #6b6259);font-size:.75rem}.bulk-dialog__shift-item--muted{color:var(--ink-mid, #6b6259);font-style:italic}.bulk-dialog__draft-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--cream-dark, #ede7dc);color:var(--ink-mid, #6b6259);font-size:.6875rem;font-weight:var(--font-weight-semibold, 600);font-style:normal;letter-spacing:.02em;text-transform:uppercase}@media(max-width:769px){.bulk-dialog .form-modal-footer__bar,.bulk-dialog .form-modal-footer__bar:has(.form-modal-footer__left:empty){justify-content:center}.bulk-dialog .form-modal-footer__actions{flex:0 1 auto;justify-content:center}}.form-modal-footer__separator{width:1px;height:32px;background:var(--cream-dark, #EDE7DC)}.form-modal-footer__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:0}.form-modal-footer__actions .btn,.form-modal-footer__actions .puls-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:10px 18px;border-radius:12px;font-size:.84375rem;font-weight:var(--font-weight-semibold);white-space:nowrap}.form-modal-footer__actions .btn-secondary,.form-modal-footer__actions .puls-btn-secondary,.form-modal-footer__actions .btn-outline,.form-modal-footer__actions .puls-btn-outline{border:none;background:var(--cream-dark, #EDE7DC);color:var(--ink, #2A2622);box-shadow:none;transform:none}.form-modal-footer__actions .btn-secondary:hover:not(:disabled),.form-modal-footer__actions .puls-btn-secondary:hover:not(:disabled),.form-modal-footer__actions .btn-outline:hover:not(:disabled),.form-modal-footer__actions .puls-btn-outline:hover:not(:disabled){background:var(--cream-deeper, #D4C9B8);border:none;color:var(--ink, #2A2622);box-shadow:none;transform:none}.report-modal-footer.form-modal-footer .dialog-actions{justify-content:flex-end}@media(max-width:640px){.modal-root__panel.form-modal-v2:not(.modal-content){width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:22px}.modal-root__panel.form-modal-v2.modal-root__panel--fullscreen:not(.modal-content){width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.form-modal-top{padding:20px 18px 18px}.form-modal-body .modal-root__body-scale{padding:16px 12px}.form-modal-card{padding:18px}.form-modal-fields-grid{grid-template-columns:1fr}.form-modal-footer__left,.form-modal-footer__separator{display:none}.form-modal-footer__bar{justify-content:flex-end}.form-modal-footer__actions{flex:1;justify-content:flex-end}.bulk-dialog .form-modal-footer__bar{justify-content:center}.bulk-dialog .form-modal-footer__actions{flex:0 1 auto;justify-content:center}.bulk-dialog__week-row{grid-template-columns:minmax(0,1fr)}.bulk-dialog .bulk-dialog__week-reset.puls-btn{justify-self:start;min-height:40px}.form-modal-footer__actions .btn,.form-modal-footer__actions .puls-btn,.form-modal-footer .dialog-actions .btn,.form-modal-footer .dialog-actions .puls-btn{flex:1;min-width:0;justify-content:center}.bulk-dialog .form-modal-footer__actions .btn,.bulk-dialog .form-modal-footer__actions .puls-btn{flex:0 1 auto}}.time-filter-nav{display:inline-flex;align-items:center;gap:.4rem}.time-filter-nav .btn-previous,.time-filter-nav .btn-next,.time-filter-nav .btn-today{padding:.75rem 1rem;border:1px solid #D4C9B8;border-radius:8px;background:#fefcf9;color:#334155;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap;line-height:1.2;display:inline-flex;align-items:center;justify-content:center}.time-filter-nav .btn-today{padding:.8rem 1.9rem;font-size:1.05rem;background:#4a6741;color:#fff;border-color:#4a6741}.time-filter-nav .btn-previous .btn-arrow,.time-filter-nav .btn-next .btn-arrow{font-size:1.4rem;line-height:1;display:inline-flex;align-items:center}.time-filter-nav .btn-previous:hover,.time-filter-nav .btn-next:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.time-filter-nav .btn-today:hover{background:#4a6741;border-color:#4a6741;transform:translateY(-1px);box-shadow:0 4px 12px #4a674140}.time-filter-nav .btn-previous:active,.time-filter-nav .btn-next:active,.time-filter-nav .btn-today:active{transform:translateY(0)}.admin-filters--with-nav,.date-filters.date-filters--with-nav{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.analysis-period-quick-buttons--with-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.employee-schedule{width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0}.employee-schedule__table-card.puls-table-card,.employee-schedule__table-card.puls-card{padding:0;min-width:0}.employee-schedule__table-card>.puls-table-card__header{background:var(--sage, rgb(74, 103, 65));border-bottom:none}.employee-schedule__table-card>.puls-table-card__header p{margin:0;color:var(--warm-white, #fefcf9);font-size:.9375rem;font-weight:600;letter-spacing:.01em;text-transform:capitalize;opacity:1}.employee-schedule__table-card>.puls-table-card__wrap{padding:0;min-width:0;overflow-x:auto}.employee-schedule__card-tools{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;min-width:0}.employee-schedule .puls-page-header__tools .puls-segmented-control,.employee-schedule__card-tools .puls-segmented-control{border-color:var(--cream-deeper, #d4c9b8);background:var(--warm-white, #fefcf9)}.employee-schedule .puls-page-header__tools .puls-segmented-control__item,.employee-schedule__card-tools .puls-segmented-control__item{color:var(--ink-mid, #6b6259)}.employee-schedule .puls-page-header__tools .puls-segmented-control__item:hover:not(:disabled),.employee-schedule__card-tools .puls-segmented-control__item:hover:not(:disabled){color:var(--ink, #1c1917)}.employee-schedule .puls-page-header__tools .puls-segmented-control__item--active,.employee-schedule__card-tools .puls-segmented-control__item--active{background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #3d5636);box-shadow:none}.employee-schedule__card-tools .puls-btn-ghost{background:var(--warm-white, #fefcf9);color:var(--ink, #1c1917);border:1px solid var(--cream-deeper, #d4c9b8)}.employee-schedule__card-tools .puls-btn-ghost:hover:not(:disabled){background:var(--cream, #f7f3ec);color:var(--ink, #1c1917)}.employee-schedule__card-tools .puls-btn-ghost:active:not(:disabled){background:var(--sage-pale, #e8f0e4)}.employee-schedule__color-btn.puls-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;padding-inline:.55rem}.employee-schedule__color-btn .fa-palette{font-size:.875rem}.employee-schedule__card-tools .time-filter-nav{flex-shrink:0}.employee-schedule__card-tools .time-filter-nav .btn-previous,.employee-schedule__card-tools .time-filter-nav .btn-next,.employee-schedule__card-tools .time-filter-nav .btn-today{min-height:2.25rem;padding:.35rem .75rem;font-size:.8125rem;background:var(--warm-white, #fefcf9);color:var(--ink, #1c1917);border:1px solid var(--cream-deeper, #d4c9b8);box-shadow:none;transform:none}.employee-schedule__card-tools .time-filter-nav .btn-today{background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #3d5636);border-color:var(--cream-deeper, #d4c9b8);font-weight:600}.employee-schedule__card-tools .time-filter-nav .btn-previous:hover,.employee-schedule__card-tools .time-filter-nav .btn-next:hover,.employee-schedule__card-tools .time-filter-nav .btn-today:hover{background:var(--cream, #f7f3ec);color:var(--ink, #1c1917);border-color:var(--cream-deeper, #d4c9b8);box-shadow:none;transform:none}.employee-schedule__card-tools .time-filter-nav .btn-today:hover{background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #3d5636)}.employee-schedule__card-tools .time-filter-nav .btn-previous:active,.employee-schedule__card-tools .time-filter-nav .btn-next:active,.employee-schedule__card-tools .time-filter-nav .btn-today:active{background:var(--sage-pale, #e8f0e4);transform:none}.employee-schedule__card-tools .time-filter-nav .btn-previous .btn-arrow,.employee-schedule__card-tools .time-filter-nav .btn-next .btn-arrow{font-size:1rem}.employee-schedule__calendar-wrap .calendar-header{justify-content:flex-start;margin-bottom:.75rem}.employee-schedule__calendar-wrap .calendar-header__title{font-size:.9375rem;font-weight:600;color:var(--ink-mid, #6b6259)}.employee-schedule__status{margin:0;padding:1.25rem 1.15rem;color:var(--ink-mid, #6b6259);font-size:.9375rem}.employee-schedule__status--error{color:var(--terra, var(--color-error-red))}.employee-schedule__calendar-panel{display:grid;gap:0}.employee-schedule__availability-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1.15rem;background:var(--warm-white, #fefcf9);border-bottom:var(--border-soft, 1px solid #ede7dc)}.employee-schedule__availability-counter{color:var(--ink-mid, #6b6259);font-size:.8125rem;font-weight:600}.employee-schedule__availability-buttons{display:flex;flex-wrap:wrap;gap:.35rem}.employee-schedule__availability-buttons .puls-btn{padding:4px 8px;min-height:26px;font-size:.6875rem}.employee-schedule__calendar-wrap{padding:.85rem 1.15rem 1.15rem;background:var(--cream, rgb(247, 243, 236));min-width:0;overflow-x:auto}.employee-schedule__table{width:100%;min-width:720px;table-layout:fixed;border-collapse:collapse;text-align:left}.employee-schedule__table th{padding:14px 18px;background:var(--cream, #f7f3ec);color:var(--ink-mid, #6b6259);font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.employee-schedule__table td{padding:14px 18px;border-top:var(--border-soft, 1px solid #ede7dc);color:var(--ink, #1c1917);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium);vertical-align:middle}.employee-schedule__row,.employee-schedule__row td{background:var(--cream, rgb(247, 243, 236))}.employee-schedule__row:hover,.employee-schedule__row:hover td{background:var(--sage-pale, rgba(122, 158, 110, .08))}.employee-schedule__day,.employee-schedule__shift-name{display:block;color:var(--ink, #1c1917)}.employee-schedule__meta,.employee-schedule__comment{display:block;margin-top:.2rem;color:var(--ink-mid, #6b6259);font-size:.75rem;line-height:1.35}.employee-schedule__comment{font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-schedule__time{color:var(--ink-mid, #6b6259);font-variant-numeric:tabular-nums;white-space:nowrap}.employee-schedule__table th:last-child,.employee-schedule__table td:last-child{text-align:right}.employee-schedule__row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.35rem;white-space:nowrap}.employee-schedule__row-actions .puls-btn{padding:4px 8px;min-height:26px;font-size:.6875rem}@media(max-width:768px){.employee-schedule__card-tools{width:100%;justify-content:flex-start}.employee-schedule__availability-actions{flex-direction:column;align-items:flex-start}.employee-schedule__calendar-wrap{padding:.75rem .9rem 1rem}.employee-schedule__table th:last-child,.employee-schedule__table td:last-child{text-align:left}.employee-schedule__row-actions{justify-content:flex-start;flex-wrap:wrap}.employee-schedule__row-actions .puls-btn,.employee-schedule__availability-buttons .puls-btn{flex:0 0 auto;min-height:var(--control-min-height-mobile, 40px);padding:.45rem .75rem;font-size:.8125rem}}.shift-color-settings-modal{max-width:540px;width:92vw}.shift-color-settings-modal .form-modal-body .modal-root__body-scale{gap:0}.scs-list-card{padding:10px 12px}.scs-empty{text-align:center;padding:var(--spacing-lg, 1.5rem);color:var(--ink-mid, #6B6259)}.scs-org-group{margin-bottom:10px}.scs-org-group:last-child{margin-bottom:0}.scs-org-heading{font-size:.75rem;font-weight:var(--font-weight-semibold, 600);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mid, #6B6259);margin:0 0 6px;padding:0 4px 6px;border-bottom:1px solid var(--cream-dark, #EDE7DC)}.scs-list,.scs-org-group{display:flex;flex-direction:column;gap:2px}.scs-row{display:flex;align-items:center;gap:12px;min-height:44px;padding:6px 8px;border-radius:var(--radius-sm, 10px);background:transparent;position:relative}.scs-row:hover{background:var(--cream, #F7F3EC)}.scs-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.scs-type-name{font-weight:var(--font-weight-semibold, 600);font-size:.875rem;color:var(--ink, #2A2622);line-height:1.3}.scs-org-name{font-size:.75rem;color:var(--ink-mid, #6B6259);line-height:1.3}.scs-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0;width:70px}.color-swatch{width:28px;height:28px;border-radius:var(--radius-sm, 8px);border:1px solid var(--cream-deeper, #D4C9B8);padding:2px;cursor:pointer;background:var(--warm-white, #FEFCF9);transition:border-color .15s,box-shadow .15s}.color-swatch:hover{border-color:var(--sage, #4A6741)}.color-swatch--active{border-color:var(--sage, #4A6741);box-shadow:0 0 0 2px #4a674138}.color-swatch-inner{display:block;width:100%;height:100%;border-radius:5px}.scs-reset-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--ink-mid, #6B6259);cursor:pointer;border-radius:var(--radius-sm, 8px);font-size:.8rem;transition:color .15s,background-color .15s}.scs-reset-btn:hover{color:var(--terra, #C4614A);background:var(--terra-pale, #F5E8E3)}.scs-picker-popover--fixed{position:fixed;top:var(--picker-top);left:var(--picker-left);z-index:1100;padding:12px;background:var(--warm-white, #FEFCF9);border-radius:var(--radius-md, 14px);box-shadow:0 8px 24px #2a26222e;border:1px solid var(--cream-deeper, #D4C9B8)}.scs-picker-popover .react-colorful{width:200px;height:160px}.scs-reset-all-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.35rem .85rem;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:10px;background:transparent;color:var(--ink, #2A2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.scs-reset-all-btn:hover{background:var(--cream, #F7F3EC);border-color:var(--cream-deeper, #D4C9B8);color:var(--ink, #2A2622)}.scs-close-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:10px 18px;border:none;border-radius:12px;background:var(--sage, #4A6741);color:var(--warm-white, #FEFCF9);font-size:.84375rem;font-weight:var(--font-weight-semibold, 600);cursor:pointer;transition:background-color .15s}.scs-close-btn:hover{background:var(--sage-dark, #2D4229)}@media(max-width:640px){.shift-color-settings-modal .form-modal-footer__left,.shift-color-settings-modal .form-modal-footer__separator{display:flex}.shift-color-settings-modal .form-modal-footer__bar{flex-wrap:wrap;justify-content:space-between}.shift-color-settings-modal .form-modal-footer__left:empty,.shift-color-settings-modal .form-modal-footer__left:empty+.form-modal-footer__separator{display:none}}.scs-picker-inline{display:none}@media(max-width:480px){.shift-color-settings-modal{width:100vw;max-width:100vw;border-radius:16px 16px 0 0}.scs-list-card{padding:8px 10px}.scs-row{padding:8px 6px;gap:10px;flex-wrap:wrap}.scs-row-actions{width:auto}.color-swatch{width:36px;height:36px}.scs-reset-btn{width:36px;height:36px;font-size:.95rem}.scs-picker-popover--fixed{display:none}.scs-picker-inline{display:block;width:100%;padding:10px 0 2px}.scs-picker-inline .react-colorful{width:100%;height:200px}.shift-color-settings-modal .form-modal-footer__bar{flex-direction:column;align-items:stretch;gap:10px}.shift-color-settings-modal .form-modal-footer__separator{display:none}.shift-color-settings-modal .form-modal-footer__left,.shift-color-settings-modal .form-modal-footer__actions{flex:none;width:100%}.scs-close-btn,.scs-reset-all-btn{width:100%;min-height:44px;padding:12px;font-size:.9375rem}}.shift-color-settings-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:var(--border-soft, 1px solid var(--cream-dark, #EDE7DC));background:var(--warm-white, #FEFCF9);border-radius:var(--radius-sm, 8px);color:var(--ink-mid, #6B6259);cursor:pointer;font-size:.95rem;transition:background-color .15s,border-color .15s,color .15s}.shift-color-settings-btn:hover{background-color:var(--cream, #F7F3EC);border-color:var(--sage, #4A6741);color:var(--sage, #4A6741)}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;background:var(--cream)}.main-area{display:flex;flex-direction:column;min-width:0;height:100%;min-height:0;overflow:hidden;background:var(--cream)}@media(min-width:769px){.main-area{zoom:.8}}.content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;width:100%;padding:var(--layout-content-padding);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.content:has(>.admin-dashboard){overflow:hidden}.content .schedule-container{min-width:0;width:100%;padding:0}.content .schedule-container .schedule-app-container{min-width:0;max-width:100%}.sidebar-backdrop{display:none}.loading{color:var(--ink-mid)}.puls-page{width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0}.puls-page--full{max-width:none;margin-left:0;margin-right:0}.sidebar{position:sticky;top:0;z-index:40;display:flex;flex-direction:column;width:var(--sidebar-width);height:100vh;overflow-y:auto;padding:1.5rem 1.125rem;background:var(--cream);border-right:var(--border-soft)}.brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.75rem}.brand-title{margin:0;line-height:1}.brand-title .logo-wordmark{font-family:var(--font-display);font-weight:500;font-size:1.5rem;letter-spacing:.5px;line-height:1;white-space:nowrap}.brand-title .logo-wordmark .wm-s{color:var(--sage)}.brand-title .logo-wordmark .wm-rest{color:var(--ink)}.brand-title .logo-wordmark .wm-t{position:relative;color:var(--ink);display:inline-block}.brand-title .logo-wordmark .wm-t:before{content:"";position:absolute;left:68%;top:.05em;width:.22em;height:.22em;border-radius:50%;background:var(--sage);transform:translate(0)}.mobile-close{display:none;margin-left:auto;flex-shrink:0;width:2.5rem;height:2.5rem;padding:0;border:var(--border-soft);border-radius:999px;background:var(--warm-white);color:var(--ink);font-size:1.125rem;font-weight:var(--font-weight-semibold);line-height:1;cursor:pointer;align-items:center;justify-content:center}.sidebar-nav{display:flex;flex:1 1 auto;flex-direction:column}.nav-group{margin-top:1.375rem}.nav-group:first-child{margin-top:0}.nav-label{margin:0 0 .625rem;color:var(--ink-mid);font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.nav-button{display:flex;align-items:center;gap:.75rem;width:100%;min-height:2.875rem;padding:.5rem .625rem;border:0;border-radius:999px;background:transparent;color:var(--ink-mid);font:inherit;font-size:.9375rem;font-weight:var(--font-weight-semibold);text-align:left;text-decoration:none;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}.nav-button:hover,.nav-button:focus-visible{background:var(--warm-white);color:var(--ink)}.nav-button.active{background:var(--sage);color:var(--warm-white);box-shadow:var(--shadow-soft)}.nav-button:active{transform:translateY(1px)}.nav-icon{display:grid;flex:0 0 auto;width:2rem;height:2rem;place-items:center;border-radius:999px;background:var(--warm-white);color:var(--sage)}.nav-icon svg{display:block}.nav-button.active .nav-icon{background:color-mix(in srgb,var(--warm-white) 22%,transparent);color:var(--warm-white)}.nav-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-badge{display:inline-flex;min-width:1.5rem;height:1.5rem;align-items:center;justify-content:center;margin-left:auto;padding:0 .45rem;border-radius:999px;background:var(--gold);color:var(--warm-white);font-size:.72rem;font-weight:var(--font-weight-semibold)}.nav-button.active .nav-badge{background:var(--warm-white);color:var(--sage-dark)}.sidebar-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem}.sidebar-action{width:100%;border:var(--border-soft);border-radius:999px;background:var(--warm-white);color:var(--ink);cursor:pointer;font:inherit;font-size:.875rem;font-weight:var(--font-weight-semibold);padding:.75rem 1rem;text-align:center}.sidebar-action:hover,.sidebar-action:focus-visible{border-color:var(--sage-light);color:var(--sage-dark)}.sidebar-action--danger{color:var(--terra-dark)}.sidebar-action--compact{min-height:1.875rem;padding:.3125rem .75rem;font-size:.75rem;font-weight:var(--font-weight-semibold)}.sidebar-card{margin-top:.75rem;padding:.75rem .8125rem;border:var(--border-soft);border-radius:var(--radius-md);background:var(--warm-white);box-shadow:var(--shadow-soft)}.sidebar-card-title,.sidebar-card strong{display:block;margin-bottom:.25rem;color:var(--ink);font-size:.8125rem;font-weight:var(--font-weight-semibold);line-height:1.25}.sidebar-card p{margin:0 0 .5rem;color:var(--ink-mid);font-size:.75rem;line-height:1.35}.sidebar-org-current{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem;min-width:0}.sidebar-org-current-name{min-width:0;overflow:hidden;color:var(--ink);font-size:.75rem;font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.sidebar-org-sep{flex:0 0 auto;color:var(--ink-mid);font-size:.6875rem;font-weight:var(--font-weight-medium);line-height:1}.sidebar-org-current-number,.sidebar-org-number{flex:0 0 auto;color:var(--ink-mid);font-size:.6875rem;font-weight:var(--font-weight-medium);letter-spacing:.01em;white-space:nowrap}.sidebar-org-panel:not([hidden]){margin-top:.5rem;padding-top:.5rem;border-top:var(--border-soft)}.sidebar-org-panel[hidden]{display:none}.sidebar-org-panel .nav-label{margin:0 0 .375rem;font-size:.6875rem}.sidebar-org-list{display:flex;flex-direction:column;gap:.25rem;max-height:10rem;overflow-y:auto}.nav-button--org{align-items:center;justify-content:space-between;gap:.5rem;min-height:2rem;padding:.3125rem .5rem;border:var(--border-soft);font-size:.75rem}.nav-button--org .nav-text{flex:0 1 auto;font-size:.75rem;font-weight:var(--font-weight-semibold)}.sidebar-org-primary{display:flex;align-items:baseline;flex:1 1 auto;flex-wrap:wrap;gap:.25rem;min-width:0}.nav-button--org.active{background:var(--sage-pale);border-color:var(--sage);color:var(--ink);box-shadow:none}.nav-button--org.active .nav-text{color:var(--ink)}.nav-button--org.active .sidebar-org-role{color:var(--sage-dark)}.sidebar-org-role{flex:0 0 auto;color:var(--ink-mid);font-size:.6875rem;font-weight:var(--font-weight-medium);line-height:1.2;white-space:nowrap}.sidebar-org-state{margin:0;color:var(--ink-mid);font-size:.75rem}.sidebar-org-state--error{color:var(--terra-dark)}.sidebar-org-add{margin-top:.5rem}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0;padding:var(--layout-topbar-padding-y) var(--layout-topbar-padding-x);background:color-mix(in srgb,var(--warm-white) 92%,transparent);border-bottom:var(--border-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hamburger{display:none;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;border:var(--border-soft);border-radius:999px;background:var(--warm-white);color:var(--ink);cursor:pointer;font-size:1.25rem;font-weight:var(--font-weight-semibold)}.top-actions{display:flex;flex:0 0 auto;align-items:center;gap:.75rem;margin-left:auto}.header-action-wrapper{position:relative}.header-action-button{display:inline-flex;align-items:center;gap:.5rem;min-height:2.5rem;padding:.625rem .875rem;border:var(--border-soft);border-radius:999px;background:var(--warm-white);color:var(--ink);cursor:pointer;font:inherit;font-size:.875rem;font-weight:var(--font-weight-semibold);transition:background .16s ease,border-color .16s ease,color .16s ease}.header-action-button:hover,.header-action-button:focus-visible{border-color:var(--sage-light);color:var(--sage-dark)}.notification-button{position:relative;width:2.75rem;height:2.75rem;justify-content:center;padding:0}.notification-badge{position:absolute;top:-.375rem;right:-.375rem;display:inline-flex;min-width:1.125rem;height:1.125rem;align-items:center;justify-content:center;padding:0 .25rem;border-radius:999px;background:var(--gold);color:var(--warm-white);font-size:.65rem;font-weight:var(--font-weight-semibold)}.user-pill{display:flex;align-items:center;gap:.625rem;min-height:2.75rem;padding:.375rem .75rem .375rem .375rem;border:var(--border-soft);border-radius:999px;background:var(--warm-white)}.avatar{display:grid;width:2rem;height:2rem;place-items:center;border-radius:999px;background:var(--sage);color:var(--warm-white);font-size:.75rem;font-weight:var(--font-weight-semibold)}.user-copy{display:flex;min-width:0;flex-direction:column;line-height:1.1}.user-copy strong{max-width:9rem;overflow:hidden;color:var(--ink);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.user-copy span{color:var(--ink-mid);font-size:.72rem;font-weight:var(--font-weight-medium)}.header-dropdown{position:absolute;top:calc(100% + .75rem);right:0;z-index:110;min-width:17.5rem;padding:.75rem;border:var(--border-soft);border-radius:var(--radius-lg);background:var(--warm-white);box-shadow:var(--shadow-soft)}.dropdown-header{margin-bottom:.75rem;color:var(--ink-mid);font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.dropdown-state{padding:.5rem 0;color:var(--ink-mid);font-size:.875rem}.dropdown-state.error{color:var(--terra-dark)}.org-options{display:flex;flex-direction:column;gap:.625rem;max-height:16.25rem;overflow-y:auto;padding-right:.25rem}.org-option{border:var(--border-soft);border-radius:var(--radius-md);background:var(--warm-white)}.org-option:hover,.org-option:focus-visible{border-color:var(--sage-light);background:var(--sage-pale)}.org-option-name{color:var(--ink);font-size:.875rem;font-weight:var(--font-weight-semibold)}.org-option-role{color:var(--ink-mid);font-size:.75rem;font-weight:var(--font-weight-medium)}.notification-dropdown{box-shadow:none}.notification-dropdown .notification-list{display:flex;flex-direction:column;gap:.625rem;max-height:16.25rem;overflow-y:auto;padding-right:.25rem}.notification-dropdown .notification-item{display:flex;flex-direction:column;gap:.25rem;padding:.625rem;border:var(--border-soft);border-radius:var(--radius-md);background:var(--warm-white)}.notification-dropdown .notification-item--clickable{cursor:pointer}.notification-dropdown .notification-item--clickable:hover,.notification-dropdown .notification-item--clickable:focus-visible{border-color:var(--sage-light);background:var(--sage-pale)}.notification-dropdown .notification-message{color:var(--ink);font-size:.875rem;font-weight:var(--font-weight-semibold)}.notification-dropdown .notification-org,.notification-dropdown .notification-time{color:var(--ink-mid);font-size:.75rem;font-weight:var(--font-weight-medium)}.org-option{cursor:pointer;padding:.625rem .75rem;text-align:left}.org-option.is-active{border-color:var(--sage);background:var(--sage-pale)}.dropdown-footer-button{width:100%;margin-top:.75rem;padding:.65rem .875rem;border:0;border-radius:999px;background:var(--sage);color:var(--warm-white);cursor:pointer;font:inherit;font-size:.8125rem;font-weight:var(--font-weight-semibold)}.dropdown-footer-button:hover,.dropdown-footer-button:focus-visible{background:var(--sage-dark)}@media(max-width:1023px)and (min-width:769px){.content{padding:var(--layout-content-padding-tablet)}.user-copy{display:none}}@media(max-width:768px){.app-shell{display:flex;flex-direction:column;height:100dvh;min-height:100dvh;max-height:100dvh}.sidebar{position:fixed;width:min(var(--sidebar-width),86vw);transform:translate(-100%);transition:transform .22s ease}body.nav-open .sidebar{transform:translate(0)}.mobile-close,.hamburger{display:inline-flex;align-items:center;justify-content:center}.mobile-close{width:var(--control-min-height-mobile-lg, 44px);height:var(--control-min-height-mobile-lg, 44px)}.hamburger{width:var(--control-min-height-mobile-lg, 44px);height:var(--control-min-height-mobile-lg, 44px);flex-shrink:0}.sidebar-backdrop{position:fixed;inset:0;z-index:35;display:none;background:var(--color-shadow-overlay)}body.nav-open .sidebar-backdrop{display:block}.main-area{flex:1 1 auto;width:100%;min-width:0;min-height:0;height:auto;max-height:100%;overflow:hidden}.topbar{gap:.625rem;padding:var(--layout-topbar-padding-y-mobile) var(--layout-topbar-padding-x-mobile)}.top-actions{gap:.5rem;flex-shrink:0;margin-left:auto}.header-action-button{min-height:var(--control-min-height-mobile, 40px);padding:.5rem .75rem;font-size:var(--font-size-sm, .8125rem)}.notification-button{width:var(--control-min-height-mobile-lg, 44px);height:var(--control-min-height-mobile-lg, 44px);min-height:var(--control-min-height-mobile-lg, 44px)}.content{padding:var(--layout-content-padding-mobile);min-width:0;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.content:has(>.admin-dashboard){overflow-x:hidden;overflow-y:auto}.content>*{flex:0 0 auto;min-height:auto;max-height:none}.user-pill{display:none}.header-dropdown{right:-.25rem;width:min(20rem,calc(100vw - 2rem));min-width:0}}@media(max-width:480px){.topbar{gap:.5rem}.content{padding:var(--layout-content-padding-mobile-sm)}}.custom-select{position:relative;width:100%;anchor-scope:--cs-trigger}.custom-select--prefer-below.custom-select--open{z-index:5}.custom-select-trigger{anchor-name:--cs-trigger;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition, all .2s ease);font-family:inherit;background:#fefcf9;color:var(--text-color, var(--puls-neutral-700));text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.custom-select-trigger:hover:not(:disabled){border-color:var(--puls-neutral-300)}.custom-select-trigger:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.custom-select-trigger .custom-select-value,.custom-select-trigger .custom-select-placeholder{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-trigger .custom-select-chevron{flex-shrink:0;font-size:.75rem;color:var(--puls-neutral-500);transition:transform .2s ease}.custom-select--open .custom-select-trigger .custom-select-chevron{transform:rotate(180deg)}.custom-select--open .custom-select-trigger{border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.custom-select--disabled .custom-select-trigger{opacity:.6;cursor:not-allowed;background:var(--puls-neutral-50)}.custom-select-panel{position:fixed;position-anchor:--cs-trigger;top:anchor(bottom);left:anchor(left);width:anchor-size(width);min-width:anchor-size(width);max-width:calc(100vw - 16px);margin-top:4px;max-height:240px;overflow-y:auto;z-index:calc(var(--modal-z-base, 1000) + 10);box-sizing:border-box;background:#fefcf9;border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 12px var(--color-shadow-dark, rgba(0, 0, 0, .15))}.custom-select-panel--flip-above{top:auto;bottom:anchor(top);margin-top:0;margin-bottom:4px}.custom-select-panel--align-end{left:auto;right:anchor(right)}.custom-select-panel--clamp-viewport{max-width:calc(100vw - 16px);width:calc(100vw - 16px);min-width:unset}.custom-select-panel--in-modal.custom-select-panel--stack-0{z-index:calc(var(--modal-z-base, 1000) + 0 * var(--modal-z-step, 10) + 5)}.custom-select-panel--in-modal.custom-select-panel--stack-1{z-index:calc(var(--modal-z-base, 1000) + 1 * var(--modal-z-step, 10) + 5)}.custom-select-panel--in-modal.custom-select-panel--stack-2{z-index:calc(var(--modal-z-base, 1000) + 2 * var(--modal-z-step, 10) + 5)}.custom-select-panel--in-modal.custom-select-panel--stack-3{z-index:calc(var(--modal-z-base, 1000) + 3 * var(--modal-z-step, 10) + 5)}.custom-select--min-200 .custom-select-panel{min-width:max(200px,anchor-size(width))}.custom-select--min-240 .custom-select-panel{min-width:max(240px,anchor-size(width))}.payroll-exports .custom-select-panel{width:anchor-size(width);min-width:anchor-size(width);max-width:anchor-size(width)}.payroll-exports .custom-select-option{white-space:normal}.custom-select-search{position:sticky;top:0;z-index:1;padding:8px;background:#fefcf9;border-bottom:1px solid var(--border-color)}.custom-select-search__input{width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.9375rem;font-family:inherit;background:#fff;color:var(--text-color, var(--puls-neutral-700));box-sizing:border-box}.custom-select-search__input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.custom-select-empty{padding:var(--spacing-sm) var(--spacing-md);color:var(--puls-neutral-500);font-size:.875rem}.custom-select-option{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;font-size:1rem;font-family:inherit;color:var(--text-color, var(--puls-neutral-700));text-align:left;cursor:pointer;transition:background-color .15s ease}.custom-select-option:hover{background:var(--background-light, var(--puls-neutral-50))}.custom-select-option--selected{background:var(--puls-primary-100);color:var(--puls-primary-800);font-weight:500}.custom-select-option--selected:hover{background:var(--puls-primary-200)}.custom-select-option--focused{background:var(--puls-neutral-100)}.custom-select-option--focused.custom-select-option--selected{background:var(--puls-primary-200)}.custom-select-panel--staff-v3{border-radius:13px}.custom-select-panel--staff-v3 .custom-select-option{font-size:var(--font-size-sm, .875rem);line-height:normal;padding:10px 12px;color:var(--ink, #2a2622)}.custom-select-panel--staff-v3 .custom-select-option:hover{background:var(--sage-pale, #eef4ec)}.custom-select-panel--staff-v3 .custom-select-option--selected{background:var(--sage-pale, #eef4ec);color:var(--ink, #2a2622);font-weight:500}.custom-select-panel--staff-v3 .custom-select-option--selected:hover,.custom-select-panel--staff-v3 .custom-select-option--focused,.custom-select-panel--staff-v3 .custom-select-option--focused.custom-select-option--selected{background:var(--sage-pale, #eef4ec)}.custom-select-option--clear{border-top:1px solid var(--border-color, var(--puls-neutral-200));color:var(--text-muted, var(--puls-neutral-500))}.custom-select-option--clear:hover{background:var(--background-light, var(--puls-neutral-50))}.custom-select-panel--staff-v3 .custom-select-option--clear{font-size:var(--font-size-sm, .875rem);line-height:normal;padding:10px 12px}.custom-select-panel--staff-v3 .custom-select-option--clear:hover{background:var(--puls-neutral-50, #f5f5f5)}.custom-select-placeholder{color:var(--text-muted, var(--puls-neutral-500))}.custom-select.is-invalid .custom-select-trigger,.custom-select-trigger.is-invalid{border-color:var(--puls-error, var(--color-error-red))}.custom-select.is-invalid .custom-select-trigger:focus,.custom-select-trigger.is-invalid:focus{box-shadow:0 0 0 3px rgba(var(--puls-error-rgb, 220, 53, 69),.15)}@supports not (width: anchor-size(width)){.custom-select--min-200 .custom-select-panel{min-width:200px}.custom-select--min-240 .custom-select-panel{min-width:240px}}@supports not (anchor-name: --x){.custom-select-panel{position:absolute;top:100%;left:0;width:100%;max-width:none;margin-top:4px;position-anchor:unset}.custom-select-panel--flip-above{top:auto;bottom:100%;margin-bottom:4px}.custom-select-panel--align-end{left:auto;right:0}.custom-select-panel--clamp-viewport{width:100%;max-width:none}.custom-select--min-200 .custom-select-panel{min-width:200px}.custom-select--min-240 .custom-select-panel{min-width:240px}.payroll-exports .custom-select-panel{width:100%;min-width:100%;max-width:100%}}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.date-picker-container{position:relative;width:100%}.date-picker-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--color-border-medium, var(--border-color));border-radius:8px;background-color:var(--color-bg-white, var(--background-color));transition:border-color .2s,box-shadow .2s}.date-picker-input-wrapper:focus-within{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #4a67411a}.date-picker-input{flex:1;min-width:0;width:100%;padding:.5rem .75rem;border:none;border-radius:8px;font-size:.9375rem;font-family:inherit;color:var(--color-text-primary, var(--text-color));background:transparent;cursor:pointer}.date-picker-input::placeholder{color:var(--color-text-muted, var(--text-muted))}.date-picker-input:focus{outline:none;cursor:text}.date-picker-input:disabled{cursor:not-allowed;opacity:.7}.date-picker-popover{position:absolute;top:calc(100% + 4px);left:0;z-index:var(--z-index-dropdown, 1000);padding:.5rem;background:var(--color-bg-white, #FEFCF9);border:1px solid var(--color-border-medium, var(--border-color));border-radius:8px;box-shadow:var(--color-shadow-slate, 0 4px 12px rgba(0, 0, 0, .1))}.date-picker-container--inline .date-picker-inline-panel{position:static;width:fit-content;max-width:100%;margin-top:.375rem;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.date-picker-container--inline .date-picker-calendar.rdp-root{--rdp-day-height: 26px;--rdp-day-width: 26px;--rdp-day_button-height: 24px;--rdp-day_button-width: 24px}.date-picker-calendar.rdp-root{--rdp-accent-color: var(--sage);--rdp-accent-background-color: var(--sage);--rdp-today-color: var(--sage);--rdp-day-height: 28px;--rdp-day-width: 28px;--rdp-day_button-height: 26px;--rdp-day_button-width: 26px;--rdp-nav_button-height: 1.5rem;--rdp-nav_button-width: 1.5rem;--rdp-nav-height: 1.75rem;--rdp-weekday-padding: .2rem 0;font-size:.8125rem}.date-picker-calendar.rdp-root .rdp-months,.date-picker-calendar.rdp-root .rdp-month{max-width:100%}.date-picker-calendar.rdp-root .rdp-month_grid{width:auto;table-layout:fixed;border-collapse:collapse;background:transparent}.date-picker-calendar.rdp-root .rdp-month_grid thead{position:static;z-index:auto;background:transparent}.date-picker-calendar.rdp-root .rdp-month_grid tbody tr,.date-picker-calendar.rdp-root .rdp-month_grid tbody tr:nth-child(2n),.date-picker-calendar.rdp-root .rdp-month_grid tbody tr:hover{background:transparent}.date-picker-calendar.rdp-root .rdp-weekday{width:var(--rdp-day-width);padding:var(--rdp-weekday-padding);border:0;color:inherit;font-size:smaller;letter-spacing:normal;text-align:center;text-transform:none}.date-picker-calendar.rdp-root .rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);padding:0;border:0;background:transparent;text-align:center}.date-picker-calendar.rdp-root .rdp-selected,.date-picker-calendar.rdp-root .rdp-selected .rdp-day_button{font-size:inherit;font-weight:inherit}.date-picker-calendar.rdp-root .rdp-today:not(.rdp-selected) .rdp-day_button{font-weight:var(--font-weight-semibold);color:var(--sage-dark, #2d4229);background:var(--sage-pale, #e8f0e4);box-shadow:inset 0 0 0 1.5px var(--sage, #4a6741);border-radius:999px}.date-picker-calendar.rdp-root .rdp-today.rdp-selected .rdp-day_button{box-shadow:inset 0 0 0 2px #fefcf9d9}.date-picker-calendar.rdp-root .date-picker-day--red:not(.rdp-selected) .rdp-day_button{color:var(--terra, #c4614a);font-weight:600}.date-picker-calendar.rdp-root .date-picker-day--red.rdp-outside:not(.rdp-selected) .rdp-day_button{color:#c4614a73}.date-picker-calendar.rdp-root .date-picker-day--red.rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--terra, #c4614a);background:#c4614a1f;box-shadow:inset 0 0 0 1.5px var(--terra, #c4614a)}.date-picker-footer{display:flex;justify-content:space-between;margin-top:.375rem;padding-top:.375rem;border-top:1px solid var(--color-border-light, var(--border-color))}.date-picker-footer-link{background:none;border:none;padding:0;font-size:.8125rem;font-family:inherit;color:var(--sage);cursor:pointer;text-decoration:none}.date-picker-footer-link:hover{text-decoration:underline}.date-picker-container.input-error .date-picker-input-wrapper,.date-picker-container.error .date-picker-input-wrapper{border-color:var(--color-error-red, var(--puls-error))}.date-range-picker{--date-range-picker-width: min(21rem, calc(100vw - 1.5rem) );position:absolute;top:calc(100% + 6px);left:0;right:auto;z-index:var(--z-index-dropdown, 1000);box-sizing:border-box;width:var(--date-range-picker-width);max-width:calc(100vw - 1.5rem)}.date-range-picker--align-end{left:auto;right:0}.date-range-picker--flip-up{top:auto;bottom:calc(100% + 6px)}.date-range-picker__popover{position:static;box-sizing:border-box;width:100%;min-width:0;max-width:100%;max-height:calc(100dvh - 1.5rem);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.date-range-picker--constrained .date-range-picker__popover{max-height:calc(50dvh - 1rem)}.date-range-picker--dragging{user-select:none;-webkit-user-select:none;cursor:grabbing}.date-range-picker--dragging .rdp-day_button{cursor:grabbing}.date-range-picker .date-picker-calendar.rdp-root,.multi-date-picker .date-picker-calendar.rdp-root{--rdp-range-fill: var(--sage-pale, #e8f0e4);--rdp-accent-color: var(--sage, #4a6741);--rdp-accent-background-color: var(--rdp-range-fill);--rdp-range_middle-background-color: var(--rdp-range-fill);--rdp-range_middle-color: var(--ink, #1d2939);--rdp-range_start-date-background-color: var(--sage, #4a6741);--rdp-range_end-date-background-color: var(--sage, #4a6741);--rdp-range_start-color: rgb(254, 252, 249);--rdp-range_end-color: rgb(254, 252, 249);--rdp-range_start-background: linear-gradient( 90deg, transparent 50%, var(--rdp-range-fill) 50% );--rdp-range_end-background: linear-gradient( 90deg, var(--rdp-range-fill) 50%, transparent 50% );--rdp-selected-border: 2px solid var(--sage, #4a6741);--rdp-day_button-border-radius: 999px;--rdp-day-height: 36px;--rdp-day-width: 36px;--rdp-day_button-height: 32px;--rdp-day_button-width: 32px;--rdp-nav-height: 2.125rem;--rdp-nav_button-height: 1.75rem;--rdp-nav_button-width: 1.75rem;width:100%;max-width:100%;font-size:.875rem}.date-range-picker .date-picker-calendar.rdp-root .rdp-months,.date-range-picker .date-picker-calendar.rdp-root .rdp-month,.multi-date-picker .date-picker-calendar.rdp-root .rdp-months,.multi-date-picker .date-picker-calendar.rdp-root .rdp-month{width:100%;max-width:100%}.date-range-picker .date-picker-calendar.rdp-root .rdp-month_caption,.multi-date-picker .date-picker-calendar.rdp-root .rdp-month_caption{width:100%;max-width:100%;min-height:var(--rdp-nav-height)}.date-range-picker .date-picker-calendar.rdp-root .rdp-caption_label,.multi-date-picker .date-picker-calendar.rdp-root .rdp-caption_label{font-size:1rem;font-weight:var(--font-weight-semibold, 600);color:var(--ink, #2a2622);letter-spacing:-.01em;text-transform:capitalize}.date-range-picker .date-picker-calendar.rdp-root .rdp-month_grid,.multi-date-picker .date-picker-calendar.rdp-root .rdp-month_grid{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse}.date-range-picker .date-picker-calendar.rdp-root .rdp-weekday,.date-range-picker .date-picker-calendar.rdp-root .rdp-day,.multi-date-picker .date-picker-calendar.rdp-root .rdp-weekday,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day{width:calc(100% / 7);max-width:calc(100% / 7);height:var(--rdp-day-height);padding:0;text-align:center;vertical-align:middle;overflow:hidden}.date-range-picker .date-picker-calendar.rdp-root .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day_button{box-sizing:border-box;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);margin-inline:auto;flex:none}.date-range-picker .date-picker-calendar.rdp-root .rdp-week,.date-range-picker .date-picker-calendar.rdp-root .rdp-weeks,.multi-date-picker .date-picker-calendar.rdp-root .rdp-week,.multi-date-picker .date-picker-calendar.rdp-root .rdp-weeks{gap:0;column-gap:0}.date-range-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_middle,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_middle{border-radius:0;background-color:var(--rdp-range_middle-background-color);background-image:none}.date-range-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_start,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_start{background:var(--rdp-range_start-background)}.date-range-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_end,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_end{background:var(--rdp-range_end-background)}.date-range-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_start.rdp-range_end,.multi-date-picker .date-picker-calendar.rdp-root .rdp-day.rdp-range_start.rdp-range_end{background:transparent}.date-range-picker .date-picker-calendar.rdp-root .rdp-range_middle .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-range_middle .rdp-day_button{background:transparent;color:var(--rdp-range_middle-color);font-size:inherit;font-weight:inherit;border-radius:0;box-shadow:none;border:none}.date-range-picker .date-picker-calendar.rdp-root .rdp-range_start .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .rdp-range_end .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .rdp-selected:not(.rdp-range_middle) .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-range_start .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-range_end .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-selected:not(.rdp-range_middle) .rdp-day_button{width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);background:var(--sage, #4a6741);color:#fefcf9;font-size:inherit;font-weight:inherit;border-radius:999px;box-shadow:none;border:none;outline:none}.date-range-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_start .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_end .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-selected:not(.rdp-range_middle) .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_start .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_end .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-selected:not(.rdp-range_middle) .rdp-day_button{color:#fefcf9}.date-range-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_middle .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .date-picker-day--red.rdp-range_middle .rdp-day_button{color:var(--terra, #c4614a)}.date-range-picker .date-picker-calendar.rdp-root .rdp-today:not(.rdp-selected):not(.rdp-range_middle):not(.rdp-range_start):not(.rdp-range_end) .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-today:not(.rdp-selected):not(.rdp-range_middle):not(.rdp-range_start):not(.rdp-range_end) .rdp-day_button{background:transparent;color:var(--sage-dark, #2d4229);box-shadow:inset 0 0 0 1.5px var(--sage, #4a6741);font-weight:var(--font-weight-semibold, 600)}.date-range-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_middle .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_middle .rdp-day_button{background:transparent;color:var(--sage-dark, #2d4229);font-size:inherit;font-weight:inherit;box-shadow:none}.date-range-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_start .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_end .rdp-day_button,.date-range-picker .date-picker-calendar.rdp-root .rdp-today.rdp-selected:not(.rdp-range_middle) .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_start .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-today.rdp-range_end .rdp-day_button,.multi-date-picker .date-picker-calendar.rdp-root .rdp-today.rdp-selected:not(.rdp-range_middle) .rdp-day_button{background:var(--sage, #4a6741);color:#fefcf9;box-shadow:none}.multi-date-picker__popover{box-sizing:border-box;width:min(21rem,calc(100vw - 2rem));max-width:100%;padding:.75rem}.date-range-picker__presets{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--color-border-light, var(--border-color));width:100%;max-width:100%}.date-range-picker__presets .date-picker-footer-link{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:2rem;padding:.35rem .6rem;border-radius:8px;background:var(--cream, #f7f3ec);color:var(--ink, #2a2622);font-size:.75rem;font-weight:var(--font-weight-medium, 500);line-height:1.25;text-align:center;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.date-range-picker__presets .date-picker-footer-link:hover:not(:disabled){background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #2d4229);text-decoration:none}.date-range-picker__presets .date-picker-footer-link:last-child:nth-child(odd){grid-column:1 / -1}.date-range-picker__presets .date-picker-footer-link:disabled{opacity:.4;cursor:not-allowed;text-decoration:none}@media(max-width:768px){.date-range-picker{--date-range-picker-width: min(21rem, calc(100vw - 1.5rem) );max-width:calc(100vw - 1.5rem)}.date-range-picker--align-end{right:0}}.date-range-picker__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem;padding-top:.5rem;border-top:1px solid var(--color-border-light, var(--border-color))}.date-range-picker__action{min-height:2rem;padding:.35rem .85rem;border-radius:var(--radius-full, 999px);border:0;font:inherit;font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);cursor:pointer}.date-range-picker__action:disabled{opacity:.45;cursor:not-allowed}.date-range-picker__action--ghost{background:var(--cream-dark, #ede7dc);color:var(--ink, var(--color-text-heading))}.date-range-picker__action--ghost:hover:not(:disabled){background:var(--cream-deeper, #d4c9b8);color:var(--ink, var(--color-text-heading))}.date-range-picker__action--ghost:focus,.date-range-picker__action--ghost:focus-visible{outline:none;box-shadow:none}.date-range-picker__action--primary{background:var(--sage, #4a6741);color:#fefcf9}.date-range-picker__action--primary:hover:not(:disabled){background:var(--sage-dark, #2d4229)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:#fefcf9;border-radius:var(--border-radius);box-shadow:0 4px 12px var(--color-shadow-dark);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--spacing-lg)}.modal-content h2{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--color-text-heading)}.assign-dialog,.edit-dialog{max-width:600px}.dialog-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}.dialog-actions button{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius);cursor:pointer;font-size:1rem;font-weight:500;transition:var(--transition)}.modal-center-message{padding:20px;text-align:center}.open-shift-info{background:var(--color-bg-white);padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg)}.info-row{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.info-row:last-child{margin-bottom:0}.info-label{font-size:.875rem;color:var(--color-text-muted);font-weight:500;min-width:100px}.info-value{font-size:.875rem;color:var(--color-text-primary);flex:1}.time-report-detail-actions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border-light)}.error-message{background:var(--color-error-bg-subtle);color:var(--color-error-dark);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);font-size:.875rem}.modal-content.payroll-modal-bento{background:var(--color-bg-white);border-radius:16px;box-shadow:0 4px 20px var(--color-shadow-light),0 0 0 1px var(--color-border-light);padding:var(--space-6) var(--space-8);max-width:440px;transition:all .3s ease}.modal-content.payroll-modal-bento h2{font-size:.75rem;font-weight:600;color:var(--color-text-slate-medium);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--space-6) 0;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.modal-content.payroll-modal-bento>div{padding-top:0}.modal-content.payroll-modal-bento .payroll-confirm-message{margin:0 0 var(--space-6) 0;color:var(--color-text-primary);font-size:1rem;line-height:1.5}.modal-content.payroll-modal-bento .form-actions,.modal-content.payroll-modal-bento .dialog-actions{margin-top:var(--space-6);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light);gap:var(--spacing-md)}.modal-content.payroll-modal-bento .form-actions button,.modal-content.payroll-modal-bento .dialog-actions button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:10px;font-weight:600;font-size:.875rem;transition:all .2s ease}.modal-content.payroll-modal-bento .form-actions .btn-primary,.modal-content.payroll-modal-bento .dialog-actions .btn-primary{background:var(--sage);color:var(--color-white);box-shadow:0 2px 6px #4a674140}.modal-content.payroll-modal-bento .form-actions .btn-primary:hover:not(:disabled),.modal-content.payroll-modal-bento .dialog-actions .btn-primary:hover:not(:disabled){background:var(--sage-dark);color:var(--color-white);transform:translateY(-1px);box-shadow:0 4px 10px #4a67414d}.modal-root__panel.payroll-modal-bento:not(.modal-content){background:var(--color-bg-white);border-radius:16px;box-shadow:0 4px 20px var(--color-shadow-light),0 0 0 1px var(--color-border-light);padding:var(--space-5) var(--space-6);width:min(100%,440px);max-width:440px;max-height:min(85dvh,560px);transition:all .3s ease}.modal-root__panel.payroll-modal-bento.modal-root__panel--sm{width:min(100%,440px);max-width:440px;max-height:min(85dvh,560px)}.modal-root__panel.payroll-modal-bento.modal-root__panel--md{width:min(100%,560px);max-width:560px;max-height:min(85dvh,640px)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__header{padding:0;margin:0 0 var(--space-6) 0;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__title{font-size:.75rem;font-weight:600;color:var(--color-text-slate-medium);text-transform:uppercase;letter-spacing:.08em;margin:0}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__body{padding:0;flex:0 1 auto}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__body-scale{padding:0}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__message{margin:0 0 var(--space-6) 0;color:var(--color-text-primary);font-size:1rem;line-height:1.5}.end-agreement-modal-body{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--space-6)}.end-agreement-modal-body__lead{margin:0;color:var(--color-text-primary);font-size:1rem;line-height:1.5}.end-agreement-modal-body__label{font-size:.875rem;font-weight:600;color:var(--color-text-slate-medium)}.end-agreement-modal-body__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--border-radius);font-size:1rem;background:var(--color-bg-white);color:var(--color-text-primary)}.end-agreement-modal-body__datepicker{width:100%}.end-agreement-modal-body__datepicker.date-picker-container--inline{display:flex;flex-direction:column;align-items:flex-start}.end-agreement-modal-body__hint{margin:0;font-size:.8125rem;line-height:1.4;color:var(--color-text-slate-medium)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__footer{padding:0;margin:0}.modal-root__panel.payroll-modal-bento:not(.modal-content) .dialog-actions{margin-top:var(--space-6);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light);gap:var(--spacing-md)}@media(max-width:768px){.modal-root__panel.payroll-modal-bento:not(.modal-content),.modal-root__panel.payroll-modal-bento.modal-root__panel--sm,.modal-root__panel.payroll-modal-bento.modal-root__panel--md{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:min(88dvh,640px);padding:1rem 1.1rem;border-radius:16px}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__header{margin-bottom:.85rem;padding-bottom:.65rem}.modal-root__panel.payroll-modal-bento:not(.modal-content) .modal-root__message{margin-bottom:.85rem;font-size:.9375rem}.modal-root__panel.payroll-modal-bento:not(.modal-content) .dialog-actions{margin-top:.85rem;padding-top:.75rem;flex-wrap:wrap;gap:.5rem}.modal-root__panel.payroll-modal-bento:not(.modal-content) .dialog-actions .puls-btn,.modal-root__panel.payroll-modal-bento:not(.modal-content) .dialog-actions .btn{flex:1 1 calc(50% - .25rem);min-width:0;justify-content:center;min-height:40px}}.modal-content.payroll-modal-bento .payroll-result-success{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--color-text-heading)}.modal-content.payroll-modal-bento .payroll-result-error{background:#c4614a14;color:var(--color-error-red);font-size:.9375rem;padding:var(--spacing-md);border-radius:12px;border:1px solid rgba(196,97,74,.2);margin:0}.modal-content.payroll-modal-bento .payroll-result-skipped{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-white);border-radius:12px;border:1px solid var(--color-border-light)}.modal-content.payroll-modal-bento .payroll-result-skipped-title{margin:0 0 var(--spacing-sm) 0;font-size:.6875rem;font-weight:600;color:var(--color-text-slate-medium);text-transform:uppercase;letter-spacing:.05em}.modal-content.payroll-modal-bento .payroll-result-skipped-list{margin:0;padding-left:1.25rem;font-size:.875rem;color:var(--color-text-primary)}.modal-content.payroll-modal-bento .payroll-result-skipped-list li{margin-bottom:var(--spacing-xs)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-success{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--color-text-heading)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-error{background:#c4614a14;color:var(--color-error-red);font-size:.9375rem;padding:var(--spacing-md);border-radius:12px;border:1px solid rgba(196,97,74,.2);margin:0}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-skipped{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-white);border-radius:12px;border:1px solid var(--color-border-light)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-skipped-title{margin:0 0 var(--spacing-sm) 0;font-size:.6875rem;font-weight:600;color:var(--color-text-slate-medium);text-transform:uppercase;letter-spacing:.05em}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-skipped-list{margin:0;padding-left:1.25rem;font-size:.875rem;color:var(--color-text-primary)}.modal-root__panel.payroll-modal-bento:not(.modal-content) .payroll-result-skipped-list li{margin-bottom:var(--spacing-xs)}.availability-dialog h2{margin:0 0 var(--spacing-md) 0;color:var(--color-text-heading);font-size:1.5rem}.dialog-question{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-primary);font-size:1rem;font-weight:500}.selected-dates-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-border-light);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);background:var(--color-bg-white)}.date-item{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-sm);background:#fefcf9;border-radius:var(--border-radius-sm);border:1px solid var(--color-border-light);transition:var(--transition)}.date-item:last-child{margin-bottom:0}.date-item:hover{border-color:var(--sage);background:#4a67410d}.date-text{font-size:.95rem;color:var(--color-text-primary);font-weight:500}.agi-header-section{background:var(--color-bg-white);border:1px solid var(--color-border-light);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.agi-header-section h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--color-text-heading);font-size:1.25rem;font-weight:600}.agi-header-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.agi-header-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.agi-header-label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.agi-header-value{font-size:1.1rem;color:var(--color-text-primary);font-weight:600}.agi-employees-section{margin-bottom:var(--spacing-lg)}.agi-employees-section h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--color-text-heading);font-size:1.25rem;font-weight:600}.agi-modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}@media(max-width:768px){.agi-header-grid{grid-template-columns:1fr}.modal-root__overlay:has(.report-modal-layout){align-items:stretch;justify-content:stretch;padding:0}.modal-root__panel.form-modal-v2.report-modal-layout.modal-root__panel--fullscreen,.modal-root__panel.form-modal-v2.report-modal-layout.modal-root__panel--wide,.modal-root__panel.form-modal-v2.form-modal-v2--wide.report-modal-layout{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.report-modal-layout .form-modal-body .modal-root__body-scale{padding:12px}.report-header-grid{grid-template-columns:1fr}.report-modal-footer .dialog-actions,.report-modal-actions{flex-direction:column;align-items:stretch}.report-modal-footer .dialog-actions .puls-btn,.report-modal-actions .puls-btn{width:100%;justify-content:center}.statistics-tabs{flex-wrap:wrap}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}}.report-modal-footer .dialog-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:0;padding-top:0;border-top:none}@media(min-width:769px){.modal-root__panel.form-modal-v2.report-modal-layout:not(.modal-content){max-height:min(860px,calc(100vh - 32px))}}.report-header-section,.report-details-section,.report-modal-layout .agi-header-section,.report-modal-layout .agi-employees-section{margin:0;padding:16px 18px;border:1px solid var(--cream-dark, #ede7dc);border-radius:22px;background:var(--warm-white, #fefcf9);box-shadow:0 4px 16px #2a262212}.report-details-section,.report-modal-layout .agi-employees-section{display:flex;flex-direction:column;min-height:0}.report-header-section h3,.report-details-section h3,.report-modal-layout .agi-header-section h3,.report-modal-layout .agi-employees-section h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:0;border:none;color:var(--ink, #2a2622);font-size:.875rem;font-weight:var(--font-weight-semibold, 600)}.report-header-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 16px}.report-header-item{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0;border:none;border-radius:0;background:transparent}.report-header-label{display:block;margin:0;color:var(--ink-mid, #6b6259);font-size:.75rem;font-weight:var(--font-weight-semibold, 600)}.report-header-value{color:var(--ink, #2a2622);font-size:.875rem;font-weight:var(--font-weight-semibold, 600)}.report-header-note{margin:12px 0 0;color:var(--ink-mid, #6b6259);font-size:.8125rem}.report-header-note--warning{color:var(--ink, #2a2622)}.report-details-section h4{margin:0 0 8px;color:var(--ink, #2a2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600)}.report-details-section+.report-details-section{margin-top:12px}.report-modal-layout .agi-header-grid{gap:12px 16px}.report-modal-layout .agi-header-item{gap:4px}.report-modal-layout .agi-header-label{font-size:.75rem;font-weight:var(--font-weight-semibold, 600)}.report-modal-layout .agi-header-value{font-size:.875rem}.table-responsive{overflow:auto;border:1px solid var(--cream-dark, #ede7dc);border-radius:12px;background:var(--cream, #f7f3ec)}.report-modal-layout .data-table{box-shadow:none;border-radius:0}.report-modal-layout .data-table th,.report-modal-layout .data-table td{padding:8px 10px;font-size:.8125rem}.report-modal-layout .data-table th:first-child,.report-modal-layout .data-table td:first-child,.report-modal-layout .data-table th:last-child,.report-modal-layout .data-table td:last-child{width:auto;text-align:left}.report-modal-layout.report-modal--accounting .accounting-journal-table th:nth-child(3),.report-modal-layout.report-modal--accounting .accounting-journal-table th:nth-child(4),.report-modal-layout.report-modal--accounting .accounting-journal-table td.accounting-journal-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.report-modal--accounting .accounting-journal-group td{font-weight:var(--font-weight-semibold, 600)}.report-modal--accounting .accounting-journal-group__toggle{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer}.report-modal--accounting .accounting-journal-group__toggle i{width:.75rem;color:var(--ink-mid, #6b6259);font-size:.7rem}.report-modal--accounting .accounting-journal-line td{color:var(--ink-mid, #6b6259);font-weight:var(--font-weight-regular, 400)}.report-modal--accounting .accounting-journal-line td:nth-child(2){padding-left:1.75rem}.report-modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}.statistics-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.statistics-tab{padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.95em;color:var(--color-text-muted);transition:all .2s}.statistics-tab:hover{color:var(--color-text-heading);background-color:var(--color-bg-hover)}.statistics-tab.active{color:var(--sage);border-bottom-color:var(--sage);font-weight:600}.loading{text-align:center;padding:var(--spacing-lg);color:var(--color-text-muted)}.payslip-modal:not(.payslip-utbetalning) .modal-content,.payslip-modal:not(.payslip-utbetalning).modal-root__panel{max-width:600px;width:90%;max-height:90vh;overflow-y:auto;overflow-x:hidden}.payslip-content{padding:var(--spacing-sm) var(--spacing-md);min-width:0}.payslip-header{display:flex;flex-wrap:wrap;gap:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-white);border:1px solid var(--color-border-light);border-radius:var(--border-radius)}.payslip-header-item{display:flex;align-items:center;gap:.35rem;font-size:.85rem}.payslip-header-item .payslip-label{font-size:.85rem}.payslip-section{margin-bottom:var(--spacing-sm)}.payslip-section h3{margin:0 0 var(--spacing-xs) 0;font-size:.9rem;font-weight:600;color:var(--color-text-heading);border-bottom:1px solid var(--color-border-light);padding-bottom:.25rem}.payslip-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .75rem}@media(max-width:480px){.payslip-grid{grid-template-columns:1fr}}.payslip-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;padding:.35rem .5rem;background-color:var(--color-bg-white);border:1px solid var(--color-border-light);border-radius:4px;font-size:.85rem}.payslip-item .payslip-label{min-width:0;overflow-wrap:break-word}.payslip-item .payslip-value{flex-shrink:0}.payslip-item.payslip-total{grid-column:1 / -1;background-color:var(--sage);color:#fff;font-weight:600;margin-top:.25rem;padding:.35rem .5rem}.payslip-label{font-size:.82rem;color:var(--color-text-muted)}.payslip-value{font-size:.85rem;font-weight:500;color:var(--color-text-heading)}.payslip-item.payslip-total .payslip-label,.payslip-item.payslip-total .payslip-value{color:#fff}.payslip-emphasis{font-weight:600;font-size:.95rem}.payslip-warnings{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-warning-bg);border:1px solid var(--color-warning-dark);border-radius:var(--border-radius);font-size:.85rem}.payslip-warning{margin-bottom:.2rem;font-size:.82rem;color:var(--color-warning-text-alt)}.payslip-warning:last-child{margin-bottom:0}.payslip-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-light)}@media print{.payslip-modal .modal-overlay,.payslip-modal .modal-root__overlay{background:#fefcf9}.payslip-modal .modal-content,.payslip-modal .modal-root__panel{box-shadow:none;max-width:100%;width:100%;max-height:none}.payslip-actions{display:none}}.shift-applications-modal .modal-content{max-width:900px;width:90%}.applications-summary{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-white);border-radius:var(--border-radius);border:1px solid var(--color-border-light)}.summary-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.summary-label{font-size:.875rem;color:var(--color-text-muted);font-weight:500}.summary-value{font-size:1.25rem;font-weight:600;color:var(--color-text-heading)}.summary-value.pending{color:var(--color-warning-dark)}.summary-value.approved{color:var(--color-success-darker)}.summary-value.rejected{color:var(--color-error-dark)}.applications-table-container{overflow-x:auto}.applications-table{width:100%;border-collapse:collapse;background:#fefcf9;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px var(--color-shadow-light)}.applications-table thead{background:var(--color-bg-white)}.applications-table th{padding:var(--spacing-md);text-align:left;font-weight:600;border-bottom:2px solid var(--color-border-medium);color:var(--color-text-heading)}.applications-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-light)}.applications-table tbody tr:hover{background-color:var(--color-bg-row-hover)}.applications-table tbody tr:last-child td{border-bottom:none}.application-row.status-pending{background-color:var(--color-status-pending-bg)}.application-row.status-approved{background-color:var(--color-status-approved-bg)}.application-row.status-rejected{background-color:var(--color-status-rejected-bg)}.action-buttons{display:flex;gap:var(--spacing-sm)}.btn-approve{background:var(--color-success-darker);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.btn-approve:hover:not(:disabled){background:var(--color-success-dark)}.btn-approve:disabled{opacity:.5;cursor:not-allowed}.btn-reject{background:var(--color-error-dark);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.btn-reject:hover:not(:disabled){background:var(--color-error-darker)}.btn-reject:disabled{opacity:.5;cursor:not-allowed}.btn-applications{background:var(--sage);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.btn-applications:hover{background:var(--primary-dark)}.applications-badge{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-warning-dark);color:var(--color-black);border-radius:var(--border-radius);font-size:.75rem;font-weight:600;margin-top:var(--spacing-xs)}.badge-count{background:var(--color-black);color:var(--color-warning-dark);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold)}.badge-label{font-size:.7rem}.no-applications{text-align:center;padding:var(--spacing-lg);color:var(--color-text-muted)}.no-action{color:var(--color-text-muted);font-style:italic}.reject-dialog .modal-content{max-width:500px}.reject-dialog textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-light);border-radius:var(--border-radius);font-family:inherit;font-size:.9rem;resize:vertical;margin-top:var(--spacing-xs)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.modal-header h2,.modal-header h3{margin:0;color:var(--color-text-heading)}.modal-close{background:none;border:none;font-size:2rem;line-height:1;cursor:pointer;color:var(--color-text-muted);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius);transition:var(--transition)}.modal-close:hover{background:var(--color-bg-white);color:var(--color-text-heading)}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}.info-banner{background:var(--color-warning-bg);border:1px solid var(--color-warning-dark);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem;color:var(--color-warning-text-alt)}.info-icon{font-size:1.2rem}.employee-selection-shift{margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--color-bg-white);border-radius:var(--border-radius);border:1px solid var(--color-border-light)}.employee-selection-shift .form-label{display:block;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-heading)}.selected-count-inline{font-weight:400;color:var(--color-text-muted);font-size:.9rem}.employee-checkbox-list.is-invalid{border-color:var(--puls-error, var(--color-error-red))}.notification-selection{margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--color-bg-white);border-radius:var(--border-radius);border:1px solid var(--color-border-light)}.notification-selection .form-label{display:block;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-heading)}.employee-checkbox-list{max-height:200px;overflow-y:auto;margin-top:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);background:#fefcf9;border:1px solid var(--border-light);border-radius:var(--border-radius)}.checkbox-item{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);transition:var(--transition)}.checkbox-item:hover{background:var(--color-bg-hover)}.checkbox-item input[type=checkbox]{cursor:pointer;width:18px;height:18px}.checkbox-item span{flex:1;font-size:.9rem}.form-hint{margin-top:var(--spacing-sm);font-size:.85rem;color:var(--color-text-muted);font-style:italic}.btn-add-employee{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-secondary);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-size:.9rem;font-weight:500;transition:var(--transition);margin-top:var(--spacing-sm)}.btn-add-employee:hover:not(:disabled){background:var(--color-secondary-hover)}.btn-add-employee:disabled{opacity:.5;cursor:not-allowed}.selected-employees-section{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-white);border-radius:var(--border-radius)}.selected-employees-section h4{margin:0 0 var(--spacing-md) 0;font-size:.95rem;color:var(--color-text-heading);font-weight:600}.selected-employees-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.selected-employee-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#fefcf9;border:1px solid var(--color-border-legacy);border-radius:var(--border-radius)}.employee-name{font-weight:500;color:var(--color-text-heading)}.employee-workgroups{color:var(--color-text-muted);font-size:.875rem;margin-left:var(--spacing-xs)}.btn-remove-employee{margin-left:auto;background:transparent;border:none;color:var(--color-error-dark);font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition)}.btn-remove-employee:hover{background:var(--color-error-bg)}.time-report-edit-modal{max-width:560px;width:100%}.time-report-edit-modal__body{display:flex;flex-direction:column;gap:1rem}.time-report-edit-modal__subtitle{font-size:.95rem;color:var(--color-text-muted, #A89C8E);margin-bottom:.125rem}.time-report-edit-modal__date{font-size:.875rem;color:var(--color-text-muted, #A89C8E);margin-bottom:.25rem}.time-report-deviation-info{background:var(--color-warning-bg, #F5EDD8);border:1px solid var(--color-warning-orange, #C4963A);border-radius:var(--radius-md, 8px);padding:.875rem 1rem;font-size:.875rem}.time-report-deviation-info__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--color-warning-text, #8B6520)}.time-report-deviation-info__header i{font-size:1rem}.time-report-deviation-info__text{margin:0 0 .5rem;color:var(--color-text-main, #3D2E1E);line-height:1.5}.time-report-deviation-info__details{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.time-report-deviation-info__row{display:flex;gap:.5rem}.time-report-deviation-info__label{font-weight:500;min-width:130px}.time-report-deviation-info__actions{display:flex;gap:.5rem;margin-top:.5rem}.time-report-edit-form{display:flex;flex-direction:column;gap:.75rem}.time-report-edit-form .form-value-readonly{padding:.5rem 0;font-weight:500}.time-report-edit-form .form-group--separator{display:flex;align-items:flex-end;padding-bottom:.5rem;font-size:1.1rem;color:var(--color-text-muted, #A89C8E)}.time-report-edit-form .form-hint{font-size:.8125rem;color:var(--color-text-muted, #A89C8E);margin-top:-.25rem}.time-report-edit-form .form-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.time-report-edit-form .form-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.modal-root__footer.time-report-modal-footer .dialog-actions,.time-report-modal-footer{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.time-report-modal-footer__left{flex-shrink:0}.time-report-modal-footer__actions{display:flex;gap:.5rem}.status-dropdown__trigger{display:inline-flex;align-items:center;gap:.35rem}.status-dropdown__trigger i{font-size:.65em}.status-dropdown__menu{position:absolute;bottom:100%;left:0;margin-bottom:4px;list-style:none;padding:.25rem 0;margin-left:0;background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #E0D6CC);border-radius:var(--radius-md, 8px);box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:100}.status-dropdown__item{display:block;width:100%;padding:.5rem 1rem;text-align:left;font-size:.875rem;background:none;border:none;cursor:pointer;color:var(--color-text-main, #3D2E1E);transition:background .15s}.status-dropdown__item:hover{background:var(--color-bg-light, #FAF7F2)}.status-action--approve{color:var(--color-success-dark, #4A6741)}.status-action--reject{color:var(--color-warning-text, #8B6520)}.status-action--void{color:var(--color-error-red, #C4614A)}.status-action--delete{color:var(--terra, #C4614A)}.time-report-history{border:1px solid var(--color-border, #E0D6CC);border-radius:var(--radius-md, 8px);overflow:hidden}.time-report-history__summary{cursor:pointer;padding:.625rem 1rem;font-size:.875rem;color:var(--color-info, #7A9E6E);font-weight:500;-webkit-user-select:none;user-select:none}.time-report-history__summary:hover{background:var(--color-bg-light, #FAF7F2)}.time-report-history__list{padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.75rem}.time-report-history__loading,.time-report-history__empty{font-size:.8125rem;color:var(--color-text-muted, #A89C8E)}.time-report-history__entry{border-left:3px solid var(--color-border, #E0D6CC);padding-left:.75rem}.time-report-history__meta{font-size:.8125rem;color:var(--color-text-muted, #A89C8E);margin-bottom:.25rem}.time-report-history__meta strong{color:var(--color-text-main, #3D2E1E)}.time-report-history__event-type{font-style:italic;color:var(--color-text-muted, #A89C8E)}.time-report-history__changes{list-style:none;padding:0;margin:0}.time-report-history__change{font-size:.8125rem;line-height:1.5}.time-report-history__field-label{font-weight:500}.time-report-history__old{text-decoration:line-through;color:var(--color-error-red, #C4614A)}.time-report-history__new{color:var(--color-success-dark, #4A6741)}.modal-root__overlay:not(.modal-overlay):has(.time-report-edit-modal){background:#2a26228a}.modal-root__panel.time-report-edit-modal{width:min(700px,calc(100vw - 32px));max-width:700px;max-height:calc(100vh - 32px);border:1px solid var(--cream-deeper, #D4C9B8);border-radius:28px;background:var(--warm-white, #FEFCF9);box-shadow:0 32px 100px #2a262261}.time-report-edit-modal .date-picker-popover{left:50%;transform:translate(-50%)}.time-report-modal-form{display:flex;flex:1;min-height:0;flex-direction:column}.time-report-modal-top{flex-shrink:0;padding:22px 24px 20px;background:var(--sage-dark, #2D4229);color:var(--warm-white, #FEFCF9)}.time-report-modal-top__row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.time-report-modal-top__eyebrow{margin:0 0 5px;color:#fefcf98c;font-size:.65625rem;font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase}.time-report-modal-top__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.time-report-modal-top__title{margin:0;color:var(--warm-white, #FEFCF9);font-family:var(--font-display);font-size:1.625rem;font-weight:var(--font-weight-semibold);line-height:1.06}.time-report-modal-top__meta{margin:7px 0 0;color:#fefcf9b8;font-size:.8125rem;font-weight:500}.time-report-modal-top__close{display:grid;flex-shrink:0;width:36px;height:36px;place-items:center;border:1px solid rgba(254,252,249,.22);border-radius:50%;background:#fefcf924;color:var(--warm-white, #FEFCF9);cursor:pointer;transition:background .12s}.time-report-modal-top__close:hover{background:#fefcf942}.time-report-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:.6875rem;font-weight:var(--font-weight-semibold)}.time-report-status-badge--pending{background:var(--gold-pale, #F5EDD8);color:var(--gold, #C4963A)}.time-report-status-badge--approved{border:1px solid rgba(232,240,228,.32);background:#e8f0e42e;color:var(--sage-pale, #E8F0E4)}.time-report-status-badge--deleted,.time-report-status-badge--rejected{border:1px solid rgba(196,97,74,.35);background:#c4614a29;color:var(--terra-pale, #f0cfc6)}.time-report-modal-body.modal-root__body{padding:0;background:var(--cream, #F7F3EC)}.time-report-modal-body .modal-root__body-scale{display:flex;flex-direction:column;gap:16px;padding:20px 18px 18px}.time-report-edit-modal__body,.time-report-edit-form{display:flex;flex-direction:column;gap:16px}.time-report-card,.time-report-extra-card,.time-report-history{border:1px solid var(--cream-dark, #EDE7DC);border-radius:22px;background:var(--warm-white, #FEFCF9);box-shadow:0 4px 16px #2a262212}.time-report-card,.time-report-extra-card{padding:22px}.time-report-extra-card{border-color:#4a674133;background:var(--sage-pale, #E8F0E4)}.time-report-card__title{display:flex;align-items:center;gap:7px;margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid var(--cream-dark, #EDE7DC);color:var(--ink-mid, #6B6259);font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.13em;text-transform:uppercase}.time-report-card__title i{color:var(--ink-light, #A89C8E);font-size:.75rem}.time-report-extra-card .time-report-card__title{border-bottom-color:#4a674133;color:var(--sage-dark, #2D4229)}.time-report-extra-card .time-report-card__title i{color:var(--sage, #4A6741)}.time-report-fields-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.time-report-field,.time-report-rast-field{display:grid;gap:7px}.time-report-field--full,.time-report-duration-row{grid-column:1 / -1}.time-report-duration-row{display:flex;justify-content:flex-end}.time-report-field__label{color:var(--ink-mid, #6B6259);font-size:.71875rem;font-weight:var(--font-weight-semibold);letter-spacing:.03em}.time-report-field__label--required:after{content:" *";color:var(--terra, #C4614A)}.time-report-field__hint{margin:0;color:var(--ink-light, #A89C8E);font-size:.6875rem;line-height:1.5}.time-report-field input[type=text],.time-report-field input[type=number],.time-report-field input[type=date],.time-report-field select,.time-report-field textarea,.time-report-field .custom-select-trigger{width:100%;min-height:42px;padding:10px 13px;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:12px;background:var(--warm-white, #FEFCF9);color:var(--ink, #2A2622);outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.time-report-field textarea{min-height:80px;resize:vertical}.time-report-field input:focus,.time-report-field textarea:focus,.time-report-field .custom-select-trigger:focus,.time-report-field .custom-select-trigger:focus-visible{border-color:var(--sage, #4A6741);background:var(--sage-pale, #E8F0E4);box-shadow:0 0 0 3px #4a674126}.time-report-time-interval{display:flex;align-items:center;gap:10px}.time-report-time-interval .time-report-time-input{flex:1;min-width:0;min-height:46px;padding:10px 8px;font-size:.9375rem;font-weight:var(--font-weight-semibold);text-align:center}.time-report-time-separator{flex-shrink:0;color:var(--ink-light, #A89C8E);font-size:1.125rem;font-weight:300;-webkit-user-select:none;user-select:none}.time-report-duration-pill{display:inline-flex;align-items:center;gap:6px;align-self:start;padding:5px 11px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:999px;background:var(--cream, #F7F3EC);color:var(--ink-mid, #6B6259);font-size:.75rem;font-weight:var(--font-weight-semibold)}.time-report-duration-pill i{color:var(--sage, #4A6741);font-size:.6875rem}.time-report-readonly-value{min-height:42px;padding:10px 13px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:12px;background:var(--cream, #F7F3EC);color:var(--ink-mid, #6B6259);font-weight:var(--font-weight-semibold)}.time-report-rast-header{display:flex;align-items:center;justify-content:flex-start;gap:8px}.time-report-rast-header .time-report-field__label{margin:0}.time-report-rast-add{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:10px;background:var(--warm-white, #FEFCF9);color:var(--sage, #4A6741);cursor:pointer;transition:background .12s,border-color .12s}.time-report-rast-add:hover:not(:disabled){background:var(--sage-pale, #E8F0E4);border-color:var(--sage, #4A6741)}.time-report-rast-add:disabled{opacity:.45;cursor:not-allowed}.time-report-rast-row{display:flex;align-items:center;gap:8px}.time-report-rast-row .time-report-time-interval{flex:1;min-width:0}.time-report-rast-remove{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--ink-light, #A89C8E);cursor:pointer}.time-report-rast-remove:hover{color:var(--terra, #C4614A);background:#c4614a14}.time-report-rast-inputs{margin-top:0}.time-report-check-row{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:13px;background:var(--cream, #F7F3EC);cursor:pointer}.time-report-check-row input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin-top:2px;accent-color:var(--sage, #4A6741)}.time-report-check-row__text{display:grid;gap:2px}.time-report-check-row__label{color:var(--ink, #2A2622);font-size:.8125rem;font-weight:var(--font-weight-semibold)}.time-report-check-row__sub{color:var(--ink-light, #A89C8E);font-size:.6875rem}.time-report-deviation-info{padding:16px 18px;border:1px solid rgba(196,150,58,.32);border-radius:18px;background:var(--gold-pale, #F5EDD8);box-shadow:none}.time-report-deviation-info__header{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--ink, #2A2622);font-size:.84375rem;font-weight:var(--font-weight-semibold)}.time-report-deviation-info__header i{color:var(--gold, #C4963A);font-size:.8125rem}.time-report-deviation-info__text{margin:0 0 14px;color:var(--ink-mid, #6B6259);font-size:.78125rem;line-height:1.55}.time-report-deviation-info__details{display:grid;gap:4px;margin-bottom:12px}.time-report-deviation-info__row{display:flex;gap:8px;color:var(--ink-mid, #6B6259);font-size:.78125rem}.time-report-deviation-info__label{min-width:120px;color:var(--ink, #2A2622);font-weight:var(--font-weight-semibold)}.time-report-deviation-info__actions{display:flex;flex-wrap:wrap;gap:8px}.time-report-deviation-info__primary,.time-report-deviation-info__secondary{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;cursor:pointer;font-size:.78125rem;font-weight:var(--font-weight-semibold);transition:background .12s}.time-report-deviation-info__primary{border:0;background:var(--gold, #C4963A);color:var(--warm-white, #FEFCF9)}.time-report-deviation-info__primary:hover{background:#b8882e}.time-report-deviation-info__secondary{border:1px solid rgba(196,150,58,.4);background:transparent;color:var(--ink-mid, #6B6259)}.time-report-deviation-info__secondary:hover{background:#c4963a1f}.time-report-history{overflow:hidden;padding:0}.time-report-history__details{width:100%}.time-report-history__summary{display:flex;align-items:center;gap:9px;padding:16px 22px;color:inherit;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.time-report-history__summary::-webkit-details-marker{display:none}.time-report-history__chevron{color:var(--ink-light, #A89C8E);font-size:.6875rem;transition:transform .18s}.time-report-history__details[open] .time-report-history__chevron{transform:rotate(90deg)}.time-report-history__icon{color:var(--ink-light, #A89C8E);font-size:.75rem}.time-report-history__summary-main{display:flex;flex:1;align-items:center;justify-content:space-between;gap:12px}.time-report-history__summary-title{color:var(--ink-mid, #6B6259);font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.13em;text-transform:uppercase}.time-report-history__summary-meta{color:var(--ink-light, #A89C8E);font-size:.6875rem;font-weight:var(--font-weight-semibold)}.time-report-history__divider{height:1px;margin:0 22px;background:var(--cream-dark, #EDE7DC)}.time-report-history__list{display:grid;gap:8px;padding:0 22px 18px}.time-report-history__loading,.time-report-history__empty{margin:10px 0 0;color:var(--ink-light, #A89C8E);font-size:.8125rem}.time-report-history__entry{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:12px;background:var(--cream, #F7F3EC);font-size:.75rem}.time-report-history__dot{flex-shrink:0;width:7px;height:7px;margin-top:4px;border-radius:50%;background:var(--cream-deeper, #D4C9B8)}.time-report-history__content{display:grid;gap:2px}.time-report-history__who{color:var(--ink, #2A2622);font-weight:var(--font-weight-semibold)}.time-report-history__what{color:var(--ink-mid, #6B6259);line-height:1.4}.time-report-modal-footer.modal-root__footer{padding:14px 18px;border-top:1px solid var(--cream-dark, #EDE7DC);background:var(--warm-white, #FEFCF9)}.time-report-modal-footer .dialog-actions{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;margin-top:0}.time-report-modal-footer__left{display:flex;flex:1;align-items:center;min-width:0}.time-report-modal-footer__separator{width:1px;height:32px;background:var(--cream-dark, #EDE7DC)}.time-report-modal-footer__separator--hidden{visibility:hidden}.time-report-modal-footer__actions{display:flex;align-items:center;gap:10px}.time-report-modal-footer__actions .btn,.time-report-modal-footer__actions .puls-btn,.time-report-modal-footer .status-dropdown__trigger{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:6px 12px;border-radius:10px;font-size:.8125rem;font-weight:500;white-space:nowrap}.time-report-modal-footer__actions .btn-primary,.time-report-modal-footer__actions .puls-btn-primary{padding-inline:14px;background:var(--sage, #4A6741);color:var(--warm-white, #FEFCF9)}.time-report-modal-footer__actions .btn-primary:hover:not(:disabled),.time-report-modal-footer__actions .puls-btn-primary:hover:not(:disabled){background:var(--sage-dark, #2D4229)}.time-report-modal-footer__actions .btn-secondary,.time-report-modal-footer__actions .puls-btn-secondary,.time-report-modal-footer__actions .btn-outline,.time-report-modal-footer__actions .puls-btn-outline{border:none;background:var(--cream-dark, #EDE7DC);color:var(--ink, #2A2622);box-shadow:none;transform:none;transition:background .15s ease,color .15s ease}.time-report-modal-footer__actions .btn-secondary:hover:not(:disabled),.time-report-modal-footer__actions .puls-btn-secondary:hover:not(:disabled),.time-report-modal-footer__actions .btn-outline:hover:not(:disabled),.time-report-modal-footer__actions .puls-btn-outline:hover:not(:disabled){background:var(--cream-deeper, #D4C9B8);border:none;color:var(--ink, #2A2622);box-shadow:none;transform:none}.time-report-modal-footer .status-dropdown__trigger{border:1px solid var(--cream-deeper, #D4C9B8);background:transparent;color:var(--ink, #2A2622);transition:background .15s ease,border-color .15s ease,color .15s ease}.time-report-modal-footer .status-dropdown__trigger:hover:not(:disabled){background:var(--sage-pale, #e8f0e4);border-color:var(--sage-light, #7a9e6e);color:var(--sage-dark, #2d4229);box-shadow:none;transform:none}.status-dropdown{position:relative;display:inline-block}.status-dropdown__trigger i{font-size:.625rem}.status-dropdown__menu{position:absolute;bottom:calc(100% + 6px);left:0;z-index:100;min-width:0;width:max-content;margin:0;padding:3px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:10px;background:var(--warm-white, #FEFCF9);box-shadow:0 10px 24px #2a26221f;list-style:none}.status-dropdown__item{display:flex;align-items:center;gap:7px;width:100%;padding:6px 9px;border:0;border-radius:7px;background:transparent;color:var(--ink, #2A2622);cursor:pointer;font-size:.75rem;font-weight:var(--font-weight-semibold);text-align:left}.status-dropdown__item:hover{background:var(--cream, #F7F3EC)}.status-dropdown__item.status-action--delete{min-height:0;padding:6px 9px;border:0;background:transparent;color:var(--terra, #C4614A);font-family:inherit;font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.01em;transition:background .15s ease,color .15s ease}.status-dropdown__item.status-action--delete:hover:not(:disabled){background:var(--cream, #F7F3EC);color:var(--terra-dark, #8B3D2A)}.status-dropdown__item.status-action--delete:disabled{opacity:.55;cursor:not-allowed}.status-action--delete__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;height:auto;border-radius:0;background:transparent;color:inherit;font-size:.7rem}.status-action--delete__label{flex:0 1 auto;min-width:0}@media(max-width:640px){.modal-root__panel.time-report-edit-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:22px}.time-report-modal-top{padding:20px 18px 18px}.time-report-modal-body .modal-root__body-scale{padding:16px 12px}.time-report-card,.time-report-extra-card{padding:18px}.time-report-fields-grid{grid-template-columns:1fr}.time-report-modal-footer .dialog-actions{align-items:stretch}.time-report-modal-footer__separator{display:none}.time-report-modal-footer__actions{flex:1;justify-content:flex-end}.time-report-modal-footer__actions .btn,.time-report-modal-footer__actions .puls-btn,.time-report-modal-footer .status-dropdown__trigger{width:auto;min-height:32px;padding:6px 12px;font-size:.8125rem;font-weight:500}.time-report-modal-footer__actions .btn-primary,.time-report-modal-footer__actions .puls-btn-primary{padding-inline:14px}.time-report-history__summary-main{align-items:flex-start;flex-direction:column;gap:3px}}.admin-time-reports{width:100%;min-width:0;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto}.admin-time-reports__header-tools,.admin-time-reports__tools,.admin-time-reports__badges{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.admin-time-reports__events-col{text-align:center}.admin-time-reports__events-col .admin-time-reports__badges{justify-content:center}.admin-time-reports__hours-label{display:inline-block;font-weight:var(--font-weight-semibold);color:var(--ink-mid, var(--color-text-subheading));white-space:nowrap}.admin-time-reports__chip{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:6px;font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.01em;line-height:1.3;background:var(--cream, #F7F3EC);color:var(--ink-mid, #6B6259);border:1px solid var(--cream-deeper, #D4C9B8)}.admin-time-reports__chip--pending,.admin-time-reports__chip--warning{background:var(--gold-pale, #F5EDD8);border-color:#c4963a59;color:var(--gold-dark, #8B6520)}.admin-time-reports__chip--late{background:#e8956c2e;border-color:#e8956c73;color:var(--terra-dark, #8B3D2A)}.admin-time-reports__chip--early{background:var(--cream-dark, #EDE7DC);border-color:var(--cream-deeper, #D4C9B8);color:var(--ink, #2A2622)}.admin-time-reports__chip--error{background:var(--terra-pale, #F5E8E3);border-color:#c4614a59;color:var(--terra, #C4614A)}.admin-time-reports__chip--info{background:var(--sage-pale, #E8F0E4);border-color:#4a674140;color:var(--sage-dark, #2D4229)}.admin-time-reports__chip--manual{background:var(--cream, #F7F3EC);border-color:var(--cream-deeper, #D4C9B8);color:var(--ink-mid, #6B6259)}.admin-time-reports__chip--unscheduled{background:#a89c8e38;border-color:#6b625959;color:var(--ink, #2A2622)}.admin-time-reports__chip--neutral{background:var(--cream, #F7F3EC);border-color:var(--cream-deeper, #D4C9B8);color:var(--ink-mid, #6B6259)}.admin-time-reports__header-tools{justify-content:flex-end}.admin-time-reports__table-card>.puls-table-card__header{background:var(--sage, rgb(74, 103, 65))}.admin-time-reports__table-card>.puls-table-card__header:has(>.puls-table-card__tools:only-child){justify-content:stretch}.admin-time-reports__table-card>.puls-table-card__header>.puls-table-card__tools{flex:1 1 100%;width:100%;min-width:0}.admin-time-reports__table-card .admin-time-reports__tools{width:100%;flex-wrap:nowrap;justify-content:flex-start}.admin-time-reports__create-btn{flex:0 0 auto;background-color:var(--warm-white, rgb(254, 252, 249));color:#000}.admin-time-reports__create-btn:hover:not(:disabled),.admin-time-reports__create-btn:active:not(:disabled),.admin-time-reports__create-btn:focus,.admin-time-reports__create-btn:focus-visible{background-color:var(--warm-white, rgb(254, 252, 249));color:#000;box-shadow:none;transform:none;outline:none}.admin-time-reports__filters{display:flex;align-items:center;flex-wrap:nowrap;gap:.5rem;margin-left:auto;min-width:0}.admin-time-reports__search{flex:0 1 12rem;width:12rem;min-width:8rem;max-width:14rem;min-height:2.25rem;border:1px solid var(--border, var(--color-border-light));border-radius:999px;padding:.45rem .85rem;background:var(--cream, var(--color-bg-white));color:var(--ink, var(--color-text-primary))}.admin-time-reports__filters .custom-select{flex:0 0 10rem;width:10rem;min-width:10rem;max-width:10rem}.admin-time-reports__filter-select.custom-select-trigger,.admin-time-reports__filter-select .custom-select-trigger{width:100%;min-height:2.25rem;border:1px solid var(--border, var(--color-border-light));border-radius:999px;padding:.45rem .85rem;background:var(--cream, var(--color-bg-white));color:var(--ink, var(--color-text-primary));font-size:inherit}.admin-time-reports__table{min-width:840px}.admin-time-reports__table-card--dashboard{display:flex;flex-direction:column;min-height:0;min-width:0}.admin-time-reports__table-card--dashboard>.puls-table-card__header{background:var(--sage, rgb(74, 103, 65));align-items:flex-start;border-bottom:none;padding:1rem 1.15rem .85rem}.admin-time-reports__table-card--dashboard>.puls-table-card__header h2{font-family:var(--font-sans, inherit);font-size:1.25rem;letter-spacing:-.01em;color:var(--warm-white, rgb(254, 252, 249))}.admin-time-reports__dashboard-title{display:inline-flex;align-items:center;gap:.65rem;flex-wrap:wrap}.admin-time-reports__table-card--dashboard>.puls-table-card__header p{margin-top:.35rem;font-size:.875rem;color:var(--sage-pale, #e8f0e4)}.admin-time-reports__table-card--dashboard>.puls-table-card__wrap{flex:1 1 0;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.puls-table-card.admin-time-reports__table-card--dashboard table.admin-time-reports__table--dashboard,table.admin-time-reports__table.admin-time-reports__table--dashboard{width:100%;min-width:0;table-layout:fixed}.admin-time-reports__table--dashboard th,.admin-time-reports__table--dashboard td{padding:.55rem .75rem;vertical-align:middle}.admin-time-reports__table--dashboard th:first-child,.admin-time-reports__table--dashboard td:first-child{width:78%}.admin-time-reports__table--dashboard th:last-child,.admin-time-reports__table--dashboard td:last-child{width:22%}.admin-time-reports__table--dashboard th:last-child{text-align:center}.admin-time-reports__table--dashboard .admin-time-reports__status-col{overflow:visible;white-space:normal;text-align:center}.admin-time-reports__table--dashboard .admin-time-reports__status-col .admin-time-reports__badges{justify-content:center;gap:.35rem}.admin-time-reports__table--dashboard .puls-person-cell{min-width:0;width:100%;max-width:100%;gap:.55rem}.admin-time-reports__table--dashboard .puls-person-cell__avatar{width:32px;height:32px;font-size:.75rem}.admin-time-reports__table--dashboard .puls-person-cell__meta{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;gap:.5rem;min-width:0;flex:1 1 auto}.admin-time-reports__table--dashboard .puls-person-cell__meta strong{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.admin-time-reports__table--dashboard .puls-person-cell__meta span{flex:0 0 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;color:var(--ink-mid, var(--color-text-subheading))}.admin-time-reports__table--dashboard .admin-time-reports__date-row td{padding:.55rem .9rem;font-size:.75rem;letter-spacing:.02em}.admin-time-reports__table th{cursor:default}.admin-time-reports__table th[onClick]{cursor:pointer}.admin-time-reports__row,.admin-time-reports__row td{background:var(--cream, rgb(247, 243, 236))}.admin-time-reports__row{cursor:pointer}.admin-time-reports__row:hover,.admin-time-reports__row:hover td{background:var(--sage-pale, rgba(122, 158, 110, .08))}.admin-time-reports__row--deleted,.admin-time-reports__row--deleted td{color:var(--ink-light, var(--color-text-muted));background:var(--warning-bg, rgba(177, 94, 73, .08))}.admin-time-reports__date-row td{background:var(--warm-white, rgb(254, 252, 249));color:var(--ink-mid, var(--color-text-subheading));font-weight:var(--font-weight-semibold)}.admin-time-reports__muted,.admin-time-reports__empty,.admin-time-reports__loading{margin:0;color:var(--ink-mid, var(--color-text-subheading))}.admin-time-reports__empty{text-align:center}.admin-time-reports__error{color:var(--terra, var(--color-error-red))}@media(max-width:768px){.admin-time-reports__table-card--dashboard{min-height:auto}.admin-time-reports__table-card--dashboard>.puls-table-card__wrap{flex:0 0 auto;min-height:auto;overflow-x:auto;overflow-y:visible}.admin-time-reports__table-card--dashboard>.puls-table-card__header{padding:.85rem .9rem .7rem}.admin-time-reports__table-card--dashboard>.puls-table-card__header h2{font-size:1.125rem}.admin-time-reports__table-card--dashboard>.puls-table-card__header p{font-size:.8125rem}.admin-time-reports__dashboard-title{gap:.45rem}.admin-time-reports__table--dashboard th,.admin-time-reports__table--dashboard td{padding:.5rem .65rem}.admin-time-reports__table--dashboard th:first-child,.admin-time-reports__table--dashboard td:first-child{width:78%}.admin-time-reports__table--dashboard th:last-child,.admin-time-reports__table--dashboard td:last-child{width:22%}.admin-time-reports__table--dashboard .puls-person-cell{gap:.5rem}.admin-time-reports__table--dashboard .puls-person-cell__avatar{width:34px;height:34px;font-size:.75rem}.admin-time-reports{min-width:0;overflow-x:clip}.admin-time-reports__header-tools{align-items:stretch;flex-direction:column;justify-content:center;width:100%}.admin-time-reports__table-card .admin-time-reports__tools{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:.5rem;flex-wrap:nowrap}.admin-time-reports__create-btn{grid-column:1 / -1;grid-row:1;width:100%;max-width:none;justify-self:stretch}.admin-time-reports__filters{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:.5rem;width:100%;margin-left:0}.admin-time-reports__filters .custom-select{grid-column:1;grid-row:1;width:100%;max-width:9.5rem;min-width:0;flex:none;justify-self:center}.admin-time-reports__search{grid-column:2;grid-row:1;width:100%;max-width:9.5rem;min-width:0;min-height:2rem;padding:.3rem .7rem;font-size:var(--font-size-sm, .875rem);justify-self:center}.admin-time-reports__filters .custom-select-trigger,.admin-time-reports__filter-select.custom-select-trigger{width:100%;min-height:2rem;padding:.3rem .7rem;font-size:var(--font-size-sm, .875rem)}.admin-time-reports__table{min-width:840px}.admin-time-reports__table.admin-time-reports__table--dashboard{min-width:0}.admin-time-reports__table:not(.admin-time-reports__table--dashboard) th:nth-child(1),.admin-time-reports__table:not(.admin-time-reports__table--dashboard) td[data-label=Anställd]{width:14rem;min-width:14rem}.admin-time-reports__table:not(.admin-time-reports__table--dashboard) .puls-person-cell{min-width:12.5rem;width:100%;max-width:none}.admin-time-reports__table:not(.admin-time-reports__table--dashboard) .puls-person-cell__meta{flex:1 1 auto;min-width:0}.admin-time-reports__table:not(.admin-time-reports__table--dashboard) .puls-person-cell__meta strong{white-space:normal;overflow-wrap:break-word;word-break:normal}.admin-time-reports__table th:nth-child(2),.admin-time-reports__table td[data-label=Arbetsgrupp],.admin-time-reports__table th:nth-child(5),.admin-time-reports__table td[data-label="Arbetad tid"]{text-align:center;vertical-align:middle}}@media(max-width:480px){.admin-time-reports__table--dashboard th:first-child,.admin-time-reports__table--dashboard td:first-child{width:62%}.admin-time-reports__table--dashboard th:last-child,.admin-time-reports__table--dashboard td:last-child{width:38%}.admin-time-reports__table--dashboard .admin-time-reports__date-row td{padding:.45rem .7rem}}.onboarding-banner{margin-bottom:20px;border-left:4px solid var(--sage)}.onboarding-banner .puls-card-body{padding:1.25rem 1.5rem}.onboarding-banner__layout{display:flex;align-items:flex-start;gap:1rem;position:relative}.onboarding-banner__icon{width:48px;height:48px;min-width:48px;border-radius:var(--radius-md, 12px);background:var(--sage-pale, var(--color-success-bg));color:var(--sage);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:var(--font-weight-semibold);letter-spacing:.04em}.onboarding-banner__body{flex:1;min-width:0;padding-right:1.5rem}.onboarding-banner__heading{font-family:var(--font-display);font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--ink, var(--color-text-slate-dark));margin:0 0 .35rem}.onboarding-banner__subtitle{font-size:.9375rem;color:var(--ink-mid, var(--color-text-subheading));margin:0 0 1rem;line-height:1.5}.onboarding-banner__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.onboarding-banner__close{position:absolute;top:0;right:0;width:2rem;height:2rem;border:none;background:transparent;color:var(--ink-light, var(--color-text-muted));font-size:1.25rem;line-height:1;cursor:pointer;border-radius:var(--radius-sm, 8px)}.onboarding-banner__close:hover{background:var(--cream, var(--color-bg-light));color:var(--ink, var(--color-text-slate-dark))}.onboarding-banner__form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}.onboarding-banner__field{display:flex;flex-direction:column;gap:.35rem}.onboarding-banner__field--select{grid-column:span 1}.onboarding-banner__label{font-size:.8125rem;font-weight:600;color:var(--ink-mid, var(--color-text-subheading))}.onboarding-banner__input,.onboarding-banner__field .custom-select,.onboarding-banner__field .custom-select-trigger{width:100%}.onboarding-banner__input,.onboarding-banner__field .custom-select-trigger.onboarding-banner__input{padding:.625rem .75rem;border:1px solid var(--border-soft, rgba(0, 0, 0, .08));border-radius:var(--radius-sm, 8px);font-size:.9375rem;background:var(--warm-white, var(--color-bg-white));color:var(--ink, var(--color-text-slate-dark))}.onboarding-banner__input:focus,.onboarding-banner__field .custom-select-trigger.onboarding-banner__input:focus{outline:2px solid var(--terra, var(--color-error-red));outline-offset:1px}.onboarding-banner__input--error{border-color:var(--terra, var(--color-error-red))}.onboarding-banner__field-error{font-size:.8125rem;color:var(--terra, var(--color-error-red))}.onboarding-banner__form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.75rem}@media(max-width:768px){.onboarding-banner__layout{flex-direction:column}.onboarding-banner__form{grid-template-columns:1fr}.onboarding-banner__body{padding-right:0;padding-top:.25rem}}.admin-dashboard{display:flex;flex-direction:column;flex:1 1 auto;width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0;min-height:0;overflow:hidden}.admin-dashboard>.puls-page-header,.admin-dashboard>.onboarding-banner{flex:0 0 auto}.admin-dashboard a.puls-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.admin-dashboard__main{--admin-dashboard-today-height: 430px;display:flex;flex-direction:row;align-items:flex-start;gap:var(--layout-grid-gap);flex:1 1 auto;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.admin-dashboard__left{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:var(--layout-grid-gap)}.admin-dashboard__today-card{display:flex;flex-direction:column;height:var(--admin-dashboard-today-height);min-height:0;min-width:0;overflow:hidden}.admin-dashboard__compact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--layout-grid-gap);align-items:stretch;min-width:0}.admin-dashboard__reports-slot{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;height:var(--admin-dashboard-reports-h, auto);max-height:var(--admin-dashboard-reports-h, none)}.admin-dashboard__reports-card{display:flex;flex-direction:column;flex:1 1 0%;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.admin-dashboard__today-card .puls-card-header,.admin-dashboard__reports-card>.puls-table-card__header{flex:0 0 auto}.admin-dashboard__today-card .puls-card-title{margin:0;font-family:var(--font-sans, inherit);font-size:1.25rem;font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.admin-dashboard__today-card .puls-card-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.admin-dashboard__shift-list{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;gap:0;padding-right:4px;margin-right:-4px}.admin-dashboard__shift{display:grid;grid-template-columns:6.25rem minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.625rem 0;border-bottom:1px solid var(--cream-dark, #ede7dc)}.admin-dashboard__shift:first-child{padding-top:0}.admin-dashboard__shift:last-child{border-bottom:none;padding-bottom:0}.admin-dashboard__shift .puls-person-cell{min-width:0;width:100%;max-width:100%}.admin-dashboard__shift .puls-person-cell__meta strong,.admin-dashboard__shift .puls-person-cell__meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dashboard__shift .puls-person-cell__meta strong{font-size:13px}.admin-dashboard__shift-time{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0;font-variant-numeric:tabular-nums;line-height:1.2}.admin-dashboard__shift-time-scheduled{font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--ink-mid, var(--color-text-subheading))}.admin-dashboard__shift-time-clocked{font-size:.75rem;font-weight:var(--font-weight-semibold);color:var(--sage-dark, #2d4229)}.admin-dashboard__reports-card.puls-table-card,.admin-dashboard__reports-card.puls-card{padding:0;min-width:0;overflow:hidden}.admin-dashboard__reports-card>.puls-table-card__wrap{flex:1 1 0;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.admin-dashboard__compact{min-width:0}.admin-dashboard__compact .puls-card-header{margin-bottom:.75rem}.admin-dashboard__compact .puls-card-title{margin:0;font-family:var(--font-sans, inherit);font-size:1.25rem;font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.admin-dashboard__summary-list{display:flex;flex-direction:column}.admin-dashboard__summary{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 0;border-bottom:1px solid var(--cream-dark, #ede7dc)}.admin-dashboard__summary:first-child{padding-top:0}.admin-dashboard__summary:last-child{border-bottom:none;padding-bottom:0}.admin-dashboard__summary span{color:var(--ink-mid, var(--color-text-subheading));font-size:.8125rem;font-weight:var(--font-weight-semibold);min-width:0}.admin-dashboard__summary strong{color:var(--ink, var(--color-text-primary));font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-weight-bold, 700);letter-spacing:-.02em;font-variant-numeric:tabular-nums;flex:0 0 auto}.admin-dashboard__empty,.admin-dashboard__loading{margin:0;padding:.25rem 0;color:var(--ink-mid, var(--color-text-subheading));font-size:.9375rem}.admin-dashboard__error{margin:0;padding:1rem 0;color:var(--terra, var(--color-error-red))}@media(max-width:1100px){.admin-dashboard__main{--admin-dashboard-today-height: 360px;flex-direction:column;align-items:stretch}.admin-dashboard__left{display:contents}.admin-dashboard__today-card{order:1;flex:0 0 var(--admin-dashboard-today-height);width:100%;height:var(--admin-dashboard-today-height);min-height:var(--admin-dashboard-today-height);max-height:var(--admin-dashboard-today-height)}.admin-dashboard__reports-slot{order:2;flex:0 0 360px;width:100%;height:360px;min-height:360px;max-height:360px}.admin-dashboard__compact-row{order:3;flex:0 0 auto;width:100%}.admin-dashboard__reports-card{height:100%}}@media(max-width:768px){.admin-dashboard{overflow:visible}.admin-dashboard__main{overflow:visible;flex:0 0 auto;min-height:auto}.admin-dashboard>.puls-page-header{margin-bottom:var(--space-4, 1rem)}.admin-dashboard>.puls-page-header .puls-page-header__description{margin-top:.65rem;font-size:.9375rem;line-height:1.55}.admin-dashboard__main,.admin-dashboard__shift-list,.admin-dashboard__reports-card>.puls-table-card__wrap{scrollbar-width:thin;scrollbar-color:var(--cream-deeper, #d4c9b8) transparent}.admin-dashboard__main::-webkit-scrollbar,.admin-dashboard__shift-list::-webkit-scrollbar,.admin-dashboard__reports-card>.puls-table-card__wrap::-webkit-scrollbar{width:2px}.admin-dashboard__main::-webkit-scrollbar-track,.admin-dashboard__shift-list::-webkit-scrollbar-track,.admin-dashboard__reports-card>.puls-table-card__wrap::-webkit-scrollbar-track{background:transparent}.admin-dashboard__main::-webkit-scrollbar-thumb,.admin-dashboard__shift-list::-webkit-scrollbar-thumb,.admin-dashboard__reports-card>.puls-table-card__wrap::-webkit-scrollbar-thumb{background:var(--cream-deeper, #d4c9b8);border-radius:999px}.admin-dashboard__main{--admin-dashboard-today-height: 320px;gap:var(--space-3, .75rem)}.admin-dashboard__today-card{flex-basis:var(--admin-dashboard-today-height)}.admin-dashboard__reports-slot{flex:0 0 320px;height:320px;min-height:320px;max-height:320px}.admin-dashboard__today-card .puls-card-title,.admin-dashboard__compact .puls-card-title{font-size:1.125rem}.admin-dashboard__compact-row{grid-template-columns:1fr}.admin-dashboard__shift{grid-template-columns:5.5rem minmax(0,1fr) auto;grid-template-rows:auto;gap:.5rem .65rem;padding:.7rem 0;align-items:center}.admin-dashboard__shift .puls-badge{grid-column:3;grid-row:1;justify-self:end;align-self:center}.admin-dashboard__shift-time-scheduled{font-size:.75rem}.admin-dashboard__shift-time-clocked{font-size:.6875rem}.admin-dashboard__summary{padding:.55rem 0}.admin-dashboard__summary span{font-size:.75rem}.admin-dashboard__summary strong{font-size:1.125rem}}@media(max-width:480px){.admin-dashboard__main{--admin-dashboard-today-height: 280px}.admin-dashboard__today-card{flex:0 0 280px;height:280px;min-height:280px;max-height:280px}.admin-dashboard__reports-slot{flex:0 0 300px;height:300px;min-height:300px;max-height:300px}.admin-dashboard__shift{grid-template-columns:5rem minmax(0,1fr) auto;gap:.4rem .5rem}.admin-dashboard__shift .puls-badge{grid-column:3;grid-row:1}.admin-dashboard__shift .puls-person-cell__avatar{width:34px;height:34px;font-size:.75rem}}.admin-staff{--admin-sticky-offset: var(--layout-sticky-offset);width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0}.admin-staff__import-tip{margin-bottom:1.25rem}.admin-staff__import-tip p{margin:0 0 1rem;color:var(--ink-mid, var(--color-text-subheading))}.admin-staff__shell{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;align-items:start}.admin-staff__main{min-width:0}.admin-staff__badges{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.admin-staff__table-card .puls-table-card__header{background:var(--sage, #4a6741);color:var(--warm-white, #fff)}.admin-staff__table-card .puls-table-card__header:has(>.puls-table-card__tools:only-child){justify-content:stretch}.admin-staff__table-card .puls-table-card__tools{flex:1 1 100%;width:100%;min-width:0}.admin-staff__table-tools{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;width:100%}.admin-staff__create-btn{flex:0 0 auto}.admin-staff__search,.admin-staff__select.custom-select-trigger,.admin-staff__select .custom-select-trigger{min-height:2rem;border:1px solid var(--cream-dark, var(--color-border-light));border-radius:999px;padding:.3rem .7rem;background:var(--cream, #f7f3ec);color:var(--ink, var(--color-text-primary));font-size:var(--font-size-sm, .875rem)}.admin-staff__table-tools .custom-select{flex:0 1 10rem;min-width:8rem;width:fit-content}.admin-staff__search{flex:1 1 12rem;min-width:10rem;max-width:18rem}.admin-staff__table-card .admin-staff__table-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.5rem}.admin-staff__table-card .admin-staff__create-btn,.admin-staff__table-card .admin-staff__work-groups-btn{flex:0 0 auto;width:auto}.admin-staff__table-card .admin-staff__search{flex:0 1 11rem;max-width:11rem;min-width:7rem;width:auto;margin-left:auto}.admin-staff__table-card .admin-staff__table-tools .custom-select{flex:0 0 14rem;min-width:14rem;width:14rem;max-width:14rem}.admin-staff__table-card .admin-staff__table-tools .custom-select-trigger{width:100%}.admin-staff__table-card .admin-staff__table-tools>.puls-btn-soft:not(.admin-staff__create-btn):not(.admin-staff__work-groups-btn){flex:0 0 auto;width:auto}.admin-staff__table-tools .custom-select-trigger:focus,.admin-staff__table-tools .custom-select-trigger:focus-visible,.admin-staff__table-tools .custom-select--open .custom-select-trigger{outline:none;border-color:var(--cream-dark, var(--color-border-light));box-shadow:none}.admin-staff__search:focus,.admin-staff__search:focus-visible{outline:none;border-color:var(--cream-dark, var(--color-border-light));box-shadow:none}.admin-staff__table-tools .puls-btn-soft{background:var(--cream, #f7f3ec);color:var(--ink, var(--color-text-primary));border:1px solid var(--cream-dark, #ede7dc)}.admin-staff__table-tools .puls-btn-soft:hover:not(:disabled),.admin-staff__table-tools .puls-btn-soft:active:not(:disabled){background:var(--cream, #f7f3ec);box-shadow:none;transform:none}.admin-staff__table-tools .puls-btn-soft:focus,.admin-staff__table-tools .puls-btn-soft:focus-visible{outline:none;box-shadow:none}.admin-staff__mobile-list .admin-staff__table-tools{margin-bottom:.875rem;padding:.75rem;border-radius:var(--radius-lg, 1.25rem);background:var(--sage, #4a6741)}.admin-staff__pending-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.875rem;padding:.875rem 1rem;border:1px solid color-mix(in srgb,var(--sage, #4a6741) 18%,transparent);border-radius:1rem;background:var(--sage-pale, rgba(122, 158, 110, .12))}.admin-staff__mobile-list .admin-staff__pending-summary{margin:0 0 .875rem}.admin-staff__pending-summary div{display:grid;gap:.25rem}.admin-staff__pending-summary strong{color:var(--ink, var(--color-text-primary))}.admin-staff__pending-summary span{color:var(--ink-mid, var(--color-text-subheading));font-size:.875rem}.admin-staff__table{table-layout:fixed;width:100%;min-width:820px}.admin-staff__table th,.admin-staff__table td{padding:10px 12px;box-sizing:border-box;text-align:left;vertical-align:middle}.admin-staff__table th:nth-child(1),.admin-staff__table td:nth-child(1){width:8%;padding-left:28px;padding-right:20px;text-align:center}.admin-staff__table th:nth-child(2),.admin-staff__table td:nth-child(2){width:41%}.admin-staff__table th:nth-child(3),.admin-staff__table td:nth-child(3){width:18%}.admin-staff__table th:nth-child(4),.admin-staff__table td:nth-child(4){width:16%}.admin-staff__table th:nth-child(5),.admin-staff__table td:nth-child(5){width:17%;padding-left:6px;padding-right:10px}.admin-staff__table th:nth-child(1){white-space:normal;line-height:1.25;letter-spacing:.04em;-webkit-hyphens:auto;hyphens:auto}.admin-staff__emp-nr-cell,.admin-staff__ssn-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.admin-staff__emp-nr-cell{font-weight:var(--font-weight-semibold);color:var(--ink-mid, var(--color-text-subheading))}.admin-staff__ssn-cell{font-weight:600;letter-spacing:.01em}.admin-staff__table td:nth-child(2){min-width:0;overflow:hidden}.admin-staff__table .puls-person-cell{display:flex;justify-content:flex-start;align-items:center;gap:.65rem;width:100%;min-width:0;max-width:100%;text-align:left}.admin-staff__table .puls-person-cell__avatar{flex:0 0 32px;width:32px;height:32px;font-size:.75rem}.admin-staff__table .puls-person-cell__meta{flex:1 1 auto;min-width:0;overflow:hidden;text-align:left}.admin-staff__table .puls-person-cell__meta strong,.admin-staff__table .puls-person-cell__meta span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.admin-staff__table .puls-person-cell__meta strong{font-size:.875rem}.admin-staff__table .admin-staff__badges{justify-content:flex-start}.admin-staff__list-meta{margin:0 0 .875rem;color:var(--ink-mid, var(--color-text-subheading));font-size:.875rem;font-weight:var(--font-weight-semibold)}.admin-staff__card-list{display:grid;gap:.875rem;min-width:0}.admin-staff__master-group{min-width:0}.admin-staff__master-group-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.25rem .125rem .35rem;color:var(--ink-mid, var(--color-text-subheading));font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.admin-staff__master-group-list{display:grid;gap:.4rem;min-width:0}.admin-staff__card{min-width:0;border:1px solid var(--border-soft, var(--color-border-light));border-radius:.75rem;background:var(--warm-white, var(--color-bg-white))}.admin-staff__card.is-selected{border-color:color-mix(in srgb,var(--sage, #4a6741) 28%,transparent);background:var(--sage-pale, rgba(122, 158, 110, .1))}.admin-staff__card.admin-staff__row--blocked{opacity:.72}.admin-staff__card-hit{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-width:0;min-height:56px;padding:.5rem .65rem;border:0;border-radius:.75rem;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.admin-staff__card-emp-nr{flex:0 0 auto;min-width:2.25rem;padding:.2rem .35rem;color:var(--ink, var(--color-text));font-size:.75rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:1.2;text-align:center}.admin-staff__card-hit:disabled{cursor:not-allowed}.admin-staff__card-hit:focus-visible{outline:3px solid color-mix(in srgb,var(--sage, #4a6741) 32%,transparent);outline-offset:2px}.admin-staff__master-person{flex:1 1 auto;min-width:0}.admin-staff__master-person .puls-person-cell{min-width:0}.admin-staff__master-person .puls-person-cell__meta strong,.admin-staff__master-person .puls-person-cell__meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-staff__card-aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.25rem;flex:0 0 auto;max-width:40%;min-width:0}.admin-staff__card-ssn{font-size:.72rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--ink-mid, var(--color-text-subheading));letter-spacing:.01em;white-space:nowrap}.admin-staff__card-chevron{color:var(--ink-light, var(--color-text-muted, #a89c8e));font-size:1.1rem;line-height:1}.admin-staff__row-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem;max-width:100%}.admin-staff__table tbody tr:not(.admin-staff__group-row):hover{background:var(--sage-pale, rgba(122, 158, 110, .08))}.admin-staff__table tbody tr.admin-staff__row--blocked{cursor:not-allowed;opacity:.72}.admin-staff__group-row td{background:var(--warm-white, var(--color-bg-light));color:var(--ink-mid, var(--color-text-subheading));font-weight:var(--font-weight-semibold);text-align:left;border:none}.admin-staff__group-row-label{white-space:nowrap}.admin-staff__row--inactive{opacity:.72}.admin-staff__empty,.admin-staff__loading{margin:0;color:var(--ink-mid, var(--color-text-subheading))}.admin-staff__empty{padding:.25rem 0}.admin-staff__row--clickable{cursor:pointer}.admin-staff__table tbody tr.is-selected,.admin-staff__table tbody tr.is-selected:hover{background:var(--sage-pale, rgba(122, 158, 110, .12))}@media(max-width:768px){.admin-staff{min-width:0;overflow-x:clip}.admin-staff__mobile-list .admin-staff__table-tools{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:.5rem}.admin-staff__mobile-list .admin-staff__create-btn{grid-column:1 / -1;grid-row:1;width:100%;max-width:none;justify-self:stretch}.admin-staff__mobile-list .custom-select{grid-column:1;grid-row:2;width:100%;max-width:14rem;min-width:0;flex:none;justify-self:center}.admin-staff__mobile-list .admin-staff__search{grid-column:2;grid-row:2;width:100%;max-width:9.5rem;min-width:0;justify-self:center}.admin-staff__mobile-list .custom-select-trigger{width:100%}.admin-staff__mobile-list .admin-staff__table-tools>.puls-btn-soft:not(.admin-staff__create-btn){grid-column:1 / -1;grid-row:3;justify-self:center;width:auto;min-width:6rem}.admin-staff__pending-summary{align-items:stretch;flex-direction:column}.admin-staff__card-hit{gap:.45rem;padding:.55rem .6rem}.admin-staff__card-emp-nr{min-width:2rem;font-size:.7rem}.admin-staff__card-aside{max-width:36%}.admin-staff__card-ssn{font-size:.68rem}}@media(max-width:380px){.admin-staff__card-hit{flex-wrap:wrap}.admin-staff__card-emp-nr{order:0}.admin-staff__master-person{flex:1 1 calc(100% - 3rem);order:1}.admin-staff__card-aside{flex:1 1 100%;max-width:none;flex-direction:row;align-items:center;justify-content:space-between;order:2;padding-left:.15rem}}.employee-selection-controls{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.employee-search-container{width:100%}.employee-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);font-family:inherit;background:#fefcf9}.employee-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.work-group-filter-container{width:100%}.work-group-filter-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);font-family:inherit;background:#fefcf9}.work-group-filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.select-all-controls{display:flex;gap:var(--spacing-sm)}.select-all-button,.deselect-all-button{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);background:#fefcf9;color:var(--text-color);font-size:.875rem;cursor:pointer;transition:var(--transition)}.select-all-button:hover:not(:disabled),.deselect-all-button:hover:not(:disabled){background:var(--background-light);border-color:var(--primary-color)}.selected-count{padding:var(--spacing-sm);background:var(--background-light);border-radius:var(--border-radius);font-size:.875rem;color:var(--text-color-secondary);margin-bottom:var(--spacing-sm)}.no-employees-message{padding:var(--spacing-md);text-align:center;color:var(--text-color-secondary);font-style:italic}.open-shift-preview{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--background-light);border-radius:var(--border-radius);border:1px solid var(--border-color)}.preview-title{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--text-color)}.preview-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.preview-item{display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.preview-label{font-weight:500;color:var(--text-color-secondary);min-width:150px}.preview-value{color:var(--text-color);flex:1}.form-group .is-invalid{border-color:var(--puls-error)}.form-group .is-invalid:focus{box-shadow:0 0 0 3px rgba(var(--puls-error-rgb),.15)}.form-group{margin-bottom:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-color);font-size:.9375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);font-family:inherit;background:#fefcf9}.form-group input.form-control-readonly,.form-group input[readonly]{background:var(--background-light, #EDE7DC);cursor:default}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.form-row:has(.input-unit){display:flex;align-items:center;gap:var(--spacing-sm)}.form-row:has(.input-unit) input{flex:1}.input-unit{color:var(--text-secondary);font-size:.875rem;white-space:nowrap}.form-hint{display:block;font-size:.875rem;color:var(--text-muted);margin-top:var(--spacing-xs);font-style:italic}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.employee-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.employee-selector{margin-bottom:var(--spacing-lg)}.employee-selector label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-color)}.employee-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition)}.employee-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff92011a}.list-input-group{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.list-input-group input{flex:1}.item-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.item-tag{display:flex;align-items:center;gap:var(--spacing-xs);background:#fefcf9;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.item-tag span{color:var(--text-color)}.staff-create-form{background:#fefcf9;padding:var(--spacing-lg);border-radius:var(--border-radius);box-shadow:var(--box-shadow);margin-bottom:var(--spacing-lg)}.staff-create-form h3{margin-bottom:var(--spacing-md);color:var(--text-color)}.staff-create-form label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-color)}.staff-create-form input[type=text],.staff-create-form input[type=email],.staff-create-form input[type=tel],.staff-create-form select,.staff-create-form textarea{width:100%;padding:var(--spacing-sm);margin-top:var(--spacing-xs);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:border-color var(--transition)}.staff-create-form input:focus,.staff-create-form select:focus,.staff-create-form textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.1)}.staff-create-form textarea{resize:vertical;min-height:80px}.staff-create-form button[type=submit],.staff-create-form button[type=button]{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);font-weight:500;cursor:pointer;transition:all var(--transition)}.staff-create-form button[type=submit]{background:var(--primary-color);color:#fff;border:none}.staff-create-form button[type=submit]:hover:not(:disabled){background:var(--primary-color-dark);transform:translateY(-1px)}.staff-create-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.staff-create-form button[type=button]{background:var(--background-light);color:var(--text-color);border:1px solid var(--border-color)}.staff-create-form button[type=button]:hover{background:var(--background-hover)}.time-reports .filters{margin-bottom:var(--spacing-lg)}.time-reports .filter-group{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.time-reports .filter-group label{display:flex;flex-direction:column;gap:var(--spacing-xs);font-weight:500;color:var(--text-color)}.calculated-hours-display{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-info-bg);border:1px solid var(--color-info-border);border-radius:var(--border-radius);font-size:1.1rem;font-weight:600;color:var(--color-info-text);text-align:center;transition:var(--transition)}.calculated-hours-display:hover{background:var(--color-info-bg-hover);border-color:var(--color-info)}.info-text{font-size:.875rem;color:var(--text-muted);font-style:italic;margin-top:var(--spacing-xs)}.info-text strong{font-weight:600;color:var(--color-info-text)}.time-bank-settings{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-subtle);border-radius:var(--border-radius);border:1px solid var(--border-light)}.time-bank-settings .form-group,.time-bank-settings .form-label-inline{margin-bottom:var(--spacing-md)}.work-groups-container{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto;border:1px solid var(--color-border-input);padding:8px;border-radius:4px}.work-group-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.form-error-text{color:var(--color-error-red)}.btn-primary{background:var(--sage);color:#fff;border:none;border-radius:var(--radius-full, 9999px);cursor:pointer;transition:var(--transition)}.btn-primary:hover:not(:disabled){background:var(--sage-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--cream-dark, #ede7dc);color:var(--ink, var(--text-color));border:none;border-radius:var(--radius-full, 9999px);cursor:pointer;transition:var(--transition)}.btn-secondary:hover:not(:disabled){background:var(--cream-deeper, #d4c9b8)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.employee-header-action{margin-right:10px}.btn-close{background:var(--background-light);border:1px solid var(--border-color);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.5rem;line-height:1;color:var(--text-color);transition:var(--transition)}.btn-close:hover{background:var(--color-error-dark);color:#fff;border-color:var(--color-error-dark)}.btn-nav{padding:var(--spacing-sm) var(--spacing-md);background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);color:var(--text-color)}.btn-nav:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-today{padding:var(--spacing-xs) var(--spacing-md);background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.btn-today:hover{background:var(--primary-dark)}.filter-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);color:var(--text-color);font-size:.875rem}.filter-btn:hover,.filter-btn.active,.btn-assign{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-assign:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.btn-assign:disabled{opacity:.5;cursor:not-allowed}.btn-convert{background:var(--color-info);color:#fff;border-color:var(--color-info)}.btn-convert:hover{background:var(--color-info-hover);border-color:var(--color-info-hover)}.btn-edit{background:var(--color-warning-dark);color:var(--text-color);border-color:var(--color-warning-dark)}.btn-edit:hover{background:var(--color-warning-orange);border-color:var(--color-warning-orange)}.btn-delete{background:var(--color-error-dark);color:#fff;border-color:var(--color-error-dark)}.btn-delete:hover{background:var(--color-error-darker);border-color:var(--color-error-darker)}.btn-add-item{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-size:1.25rem;font-weight:600;line-height:1;transition:var(--transition);min-width:40px}.btn-add-item:hover{background:var(--primary-dark)}.btn-remove-item{background:transparent;border:none;color:var(--danger-color, #C4614A);cursor:pointer;font-size:1.25rem;line-height:1;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-remove-item:hover{color:var(--color-error-darker);transform:scale(1.1)}.time-reports .btn-success{background-color:var(--success-color);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.time-reports .btn-success:hover{background-color:var(--color-success-darker);transform:translateY(-1px)}.time-reports .btn-danger{background-color:var(--danger-color);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:var(--transition)}.time-reports .btn-danger:hover{background-color:var(--color-error-dark);transform:translateY(-1px)}.time-reports .action-buttons{display:flex;gap:var(--spacing-sm)}.info-badge-orange{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--color-warning-orange);color:var(--color-white);font-size:.65rem;cursor:help;border:none}.info-badge-orange i{font-size:.75rem}.info-badge-orange:focus{outline:none}.info-badge-orange:focus-visible{outline:2px solid currentColor;outline-offset:2px}.info-badge-wrapper{position:relative;display:inline-flex;align-items:center}.info-badge-icon{margin-left:.35rem;cursor:help;display:inline-flex;align-items:center;justify-content:center;padding:.2rem .35rem;border-radius:50%;background:var(--color-purple-bg);color:var(--color-purple-text)}.info-badge-icon:hover{background:var(--color-purple-hover);color:var(--color-purple-text)}.info-badge-icon:focus{outline:none}.info-badge-icon:focus-visible{border-radius:50%;outline:2px solid currentColor;outline-offset:2px}.info-badge-icon i{font-size:.875rem}.info-badge-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-4px);margin-bottom:.25rem;padding:1rem 1.25rem;background:var(--color-bg-white);border-radius:16px;box-shadow:0 2px 8px var(--color-shadow-light),0 4px 16px var(--color-shadow-medium);border:1px solid var(--color-border-light);max-width:280px;white-space:normal;text-align:left;visibility:hidden;opacity:0;transition:visibility .2s ease,opacity .2s ease,transform .2s ease;z-index:var(--z-index-tooltip, 3000);pointer-events:none}.info-badge-wrapper:hover .info-badge-tooltip,.info-badge-wrapper:focus-within .info-badge-tooltip{visibility:visible;opacity:1;transform:translate(-50%) translateY(0)}.info-badge-tooltip-label{display:block;font-size:.6875rem;font-weight:600;color:var(--color-text-slate-medium);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.info-badge-tooltip-text{display:block;font-size:.8125rem;line-height:1.4;color:var(--color-text-primary)}.status-badge{display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);box-shadow:var(--shadow-xs)}.status-badge.status-approved{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.status-badge.status-pending{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.status-badge.status-rejected{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.time-reports .status-badge.status-pending{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase}.tab-button{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--text-muted);transition:var(--transition);white-space:nowrap;margin-bottom:-2px}.tab-button:hover{color:var(--primary-color);background:var(--background-light)}.tab-button.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.tab-button.disabled{opacity:.6;cursor:pointer}.tab-button.disabled:hover{opacity:.8;background:var(--background-light)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);transition:var(--transition)}.checkbox-label:hover{background:var(--background-light)}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.checkbox-label span{color:var(--text-color);-webkit-user-select:none;user-select:none}.department-selector,.function-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:300px;overflow-y:auto;padding:var(--spacing-sm);background:#fefcf9;border:1px solid var(--border-color);border-radius:var(--border-radius)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.stat-value-colored{color:var(--primary-color)}.availability-actions{display:flex;gap:10px;align-items:center;margin-top:var(--spacing-md)}.availability-warning{font-weight:600;color:var(--sage)}.availability-buttons{display:flex;gap:8px}.shift-indicator{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:4px}.vacation-progress-bar{width:100%;height:20px;background:var(--color-border-medium);border-radius:10px;overflow:hidden;margin-top:var(--spacing-sm)}.vacation-progress-fill{height:100%;background:var(--primary-color);transition:width .3s ease;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:600}.summary-box{background:var(--color-bg-white);border:1px solid var(--puls-neutral-200);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-base);position:relative;overflow:hidden}.summary-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--sage)}.summary-box h3{margin-top:0;margin-bottom:var(--space-5);color:var(--puls-neutral-800);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-5)}.summary-item{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--puls-neutral-white);border-radius:var(--radius-base);border:1px solid var(--puls-neutral-100);transition:var(--transition)}.summary-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--puls-primary-200)}.summary-label{font-size:var(--font-size-sm);color:var(--puls-neutral-600);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.summary-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--puls-primary-base);line-height:1.2}.clickable-row{cursor:pointer;transition:var(--transition)}.clickable-row:hover{background:var(--color-bg-row-hover)}.payroll-details{margin-top:var(--spacing-lg)}.payroll-period{margin-bottom:var(--spacing-md)}.payroll-period h4{margin:0;color:var(--text-color);font-size:1.125rem}.payroll-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.payroll-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius)}.payroll-label{font-weight:500;color:var(--text-color)}.payroll-value{font-weight:600;color:var(--text-color)}.payroll-value.highlight{color:var(--primary-color);font-size:1.125rem}.payroll-breakdown{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.payroll-breakdown h4{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-color)}.payroll-filters-section{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end}.search-filter-group{flex:1;min-width:200px}.search-filter-group label{display:flex;flex-direction:column;gap:var(--spacing-xs)}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.95em}.filter-group{min-width:150px}.filter-group label{display:flex;flex-direction:column;gap:var(--spacing-xs)}.bulk-actions-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:var(--spacing-md)}.selected-count{font-weight:600;color:var(--text-color);margin-right:var(--spacing-sm)}.payroll-exports{position:relative;display:inline-block;margin-left:var(--spacing-md)}.payroll-exports .custom-select{width:fit-content;min-width:10rem}.approval-status-badge{display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--puls-neutral-white);box-shadow:var(--shadow-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.approval-status-badge[data-status=pending]{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.approval-status-badge[data-status=approved]{background:var(--color-success-dark)}.approval-status-badge[data-status=rejected]{background:var(--color-error-dark)}.payroll-warning-message{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-dark);padding:10px;margin-bottom:15px;border-radius:4px}.payroll-table-row-missing-data{background-color:var(--color-warning-bg)}.payroll-table-row-no-hours{background-color:var(--color-bg-hover)}.payroll-table-row-selected{background-color:var(--color-status-paid-row-bg)}.payroll-error-text{display:block;font-size:.9em;color:var(--color-error-red)}.payroll-warnings-container{font-size:.85em;margin-top:5px}.payroll-warning-item{display:block;color:var(--color-warning-text-alt);background-color:var(--color-warning-bg);padding:2px 6px;border-radius:3px;margin-bottom:2px}.payroll-no-hours-text{display:block;font-size:.85em;color:var(--color-text-secondary);font-style:italic}.employee-payroll-warnings-box{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-dark);padding:15px;margin-bottom:20px;border-radius:4px}.employee-payroll-warnings-title{margin-top:0;margin-bottom:10px;color:var(--color-warning-text-alt)}.employee-payroll-warning-item{margin-bottom:8px}.employee-payroll-warning-code,.employee-payroll-warning-message{color:var(--color-warning-text-alt)}.employee-payroll-status-box{padding:10px;margin-bottom:20px;border-radius:4px}.employee-payroll-status-box[data-status=MISSING_DATA]{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-dark)}.employee-payroll-status-box[data-status=NO_HOURS]{background-color:var(--color-bg-hover);border:1px solid var(--color-border-medium)}.employee-payroll-status-box[data-status=OK]{background-color:transparent;border:none}.employee-payroll-status-text-missing{color:var(--color-warning-text-alt)}.employee-payroll-status-text-no-hours{color:var(--color-text-secondary);font-style:italic}.employee-payroll-status-text-ok{color:var(--color-success-darker)}.employee-payroll-status-box[data-status=NO_DATA]{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-dark)}.empty-state-box{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);background:var(--background-light);border:1px dashed var(--border-color);border-radius:var(--border-radius);color:var(--text-muted)}.empty-state-box h4{margin:0 0 var(--spacing-sm) 0;color:var(--text-color);font-size:1.125rem}.empty-state-box p{line-height:1.5;max-width:480px;margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.staff-modal-v3{--v3-border: 1px solid rgba(45, 66, 41, .14);--v3-header-bg: var(--sage-dark, #2d4229);--v3-header-text: #fefcf9;--v3-header-meta: rgba(254, 252, 249, .72);--v3-tab-active-bg: var(--sage-dark, #2d4229);--v3-tab-active-text: #fefcf9;--v3-tab-bg: rgba(247, 243, 236, .66);--v3-tab-text: #6b6259;--v3-dot-color: #c4963a;--v3-pane-bg: #fefcf9;--v3-sidebar-bg: #f7f3ec}.modal-root__panel.staff-modal-v3.modal-root__panel--wide,.staff-modal-v3.staff-modal-card.modal-root__panel--wide{box-sizing:border-box;width:min(96vw,1200px);max-width:min(96vw,1200px);height:min(94vh,900px);max-height:min(94vh,900px);overflow:hidden;margin:0;padding:0;background:var(--color-bg-white, #fefcf9);border-radius:30px;box-shadow:0 30px 90px #2a262257;display:flex;flex-direction:column}.modal-root__panel.staff-modal-v3.modal-root__panel--wide:has(.custom-select--prefer-below.custom-select--open),.staff-modal-v3.staff-modal-card.modal-root__panel--wide:has(.custom-select--prefer-below.custom-select--open){overflow:visible}.modal-root__panel.staff-modal-v3.modal-root__panel--fullscreen,.staff-modal-v3.staff-modal-card.modal-root__panel--fullscreen{box-sizing:border-box;width:100vw;height:100vh;max-width:100vw;max-height:100vh;overflow:hidden;margin:0;padding:0;background:var(--color-bg-white, #fefcf9);border-radius:0;display:flex;flex-direction:column}.staff-modal-v3__body{padding:0;overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:0}.staff-modal-v3__body.modal-root__body{padding:0;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.staff-modal-v3__body .modal-root__body-scale{height:100%;min-height:0;display:flex;flex-direction:column;flex:1}.staff-modal-v3__body .employee-detail-view{width:100%;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.staff-modal-v3 .staff-modal-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:start;margin:0;padding:20px 24px;background:var(--v3-header-bg);flex-shrink:0}.staff-modal-v3 .staff-modal-eyebrow{margin:0 0 3px;font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--v3-header-meta)}.staff-modal-avatar{width:50px;height:50px;border-radius:50%;background:#fefcf92e;border:1.5px solid rgba(254,252,249,.32);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem;font-weight:var(--font-weight-semibold);letter-spacing:.02em;color:var(--v3-header-text);text-transform:uppercase}.staff-modal-v3 .staff-modal-header-info{min-width:0}.staff-modal-v3 .staff-modal-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.staff-modal-v3 .staff-modal-title-row h2{margin:0;font-family:var(--font-display);font-size:clamp(1.375rem,2.2vw,2.125rem);font-weight:var(--font-weight-semibold);color:var(--v3-header-text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-modal-v3 .staff-modal-avatar{background:#fff;border:none;color:var(--sage-dark, #2d4229);box-shadow:0 4px 16px #0000003d}.staff-modal-v3 .staff-modal-header-meta{margin:3px 0 0;font-size:var(--font-size-sm, .875rem);color:var(--v3-header-meta);font-weight:var(--font-weight-medium, 500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-modal-v3 .staff-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-full, 9999px);font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-medium, 500)}.staff-modal-v3 .staff-status-badge.inactive{background:#c4614a38;color:#ffcec6;border:1px solid rgba(196,97,74,.35)}.staff-modal-v3 .staff-status-badge.success{background:#4a674159;color:#c8e0c0;border:1px solid rgba(74,103,65,.5)}.staff-modal-v3 .staff-modal-close{background:#fefcf91f;border:1.5px solid rgba(254,252,249,.24);border-radius:var(--radius-full, 9999px);width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.25rem;line-height:1;padding:0;color:var(--v3-header-text);transition:background .2s ease,border-color .2s ease;flex-shrink:0;align-self:center}.staff-modal-v3 .staff-modal-close:hover{background:#c4614a73;border-color:#c4614a99}.staff-modal-v3 .staff-modal-command-bar-wrap{display:flex;align-items:center;gap:8px;padding:6px 18px 12px;border-bottom:1px solid rgba(0,0,0,.18);background:var(--v3-header-bg);flex-shrink:0}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-command-bar{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:0;border-bottom:none;background:transparent}.staff-modal-v3 .staff-modal-command-bar{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab{position:relative;display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1px solid rgba(254,252,249,.18);border-radius:999px;background:transparent;color:#fefcf994;font-size:.8125rem;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease;white-space:nowrap}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab:hover{color:#fefcf9e0;background:#fefcf91f;border-color:#fefcf94d}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab.active{background:var(--warm-white, #fefcf9);color:var(--v3-header-bg);border-color:transparent}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab:focus-visible{outline:2px solid rgba(254,252,249,.85);outline-offset:2px}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab-dot{display:none;position:absolute;top:8px;right:9px;width:7px;height:7px;border-radius:50%;background:var(--v3-dot-color);box-shadow:0 0 0 3px #c4963a38}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab.has-unsaved .staff-modal-tab-dot{display:block}.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab.has-unsaved{padding-right:24px}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-dirty-chip{display:flex;align-items:center;gap:7px;flex-shrink:0;padding:7px 12px;border-radius:var(--radius-full, 9999px);background:#c4963a38;border:1px solid rgba(196,150,58,.35);color:#f5e6c8;font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);white-space:nowrap}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-dirty-chip-dot{width:7px;height:7px;border-radius:50%;background:var(--gold, #c4963a);flex-shrink:0}.staff-modal-v3 .staff-modal-v3-workarea:has(.custom-select--prefer-below.custom-select--open){overflow:visible}.staff-modal-v3 .staff-modal-v3-workarea{flex:1 1 0;min-height:0;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth;background:var(--cream, #f7f3ec)}.staff-modal-v3 .staff-modal-panes{position:relative}.staff-modal-v3 .staff-modal-pane:not(.active){display:none}.staff-modal-v3 .staff-modal-pane[hidden]{display:none}.staff-modal-v3 .staff-modal-pane.active{display:grid;grid-template-columns:minmax(0,1fr) 300px}.staff-modal-v3 .staff-modal-pane.active.staff-modal-pane--no-sidebar{grid-template-columns:1fr}.staff-modal-v3 .staff-modal-pane-main{padding:22px 24px;background:var(--cream, #f7f3ec);min-width:0;max-width:100%}.staff-modal-v3 .staff-modal-pane-sidebar{padding:18px 16px;background:var(--v3-sidebar-bg);border-left:var(--v3-border)}.staff-modal-v3 .employee-section{background:#fff;border:var(--v3-border);border-radius:var(--radius-md, 12px);margin-bottom:16px;box-shadow:none;padding:18px}.staff-modal-v3 .employee-section:last-child{margin-bottom:0}.staff-modal-v3 .staff-modal-v3-card .employee-section{background:transparent;border:none;border-radius:0;margin-bottom:0;box-shadow:none;padding:0}.staff-modal-v3 .staff-modal-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px 12px;padding:12px 24px;border-top:1px solid var(--cream-dark, #ede7dc);background:#fefcf9f0;box-shadow:0 -12px 32px #2a26220f;flex-shrink:0}.staff-modal-v3 .staff-modal-footer-left{justify-self:start}.staff-modal-v3 .staff-modal-footer-center{justify-self:center}.staff-modal-v3 .staff-modal-footer-right{justify-self:end;display:flex;gap:8px}.staff-modal-v3 .staff-modal-footer-dirty-status{display:flex;align-items:center;gap:8px;color:var(--ink-mid, #6b6259);font-weight:var(--font-weight-semibold);font-size:13.5px}.staff-modal-v3 .staff-modal-footer-dirty-dot{width:8px;height:8px;border-radius:50%;background:var(--gold, #c4963a);flex-shrink:0}.staff-modal-sidebar-card{background:#fff;border:var(--v3-border);border-radius:var(--radius-md, 12px);padding:14px 16px;margin-bottom:12px}.staff-modal-sidebar-card:last-child{margin-bottom:0}.staff-modal-sidebar-card-label{font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--sage, #4a6741);margin-bottom:6px}.staff-modal-sidebar-card-value{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading, #2a2622);line-height:1.2}.staff-modal-sidebar-card-meta{font-size:var(--font-size-xs, .75rem);color:var(--color-text-muted, #a89c8e);margin-top:3px}.staff-modal-v3 .form-group label:not(.staff-modal-v3-perm-check),.staff-modal-v3 .staff-modal-v3-field label{color:#6b6259;font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:.02em;text-transform:none}.staff-modal-v3 .form-group label.req:after,.staff-modal-v3 .staff-modal-v3-field label.req:after{content:" *";color:var(--terra, #c4614a)}.staff-modal-v3 .employee-form{gap:12px}.staff-modal-v3 .form-group input:not([type=checkbox]):not([type=radio]),.staff-modal-v3 .form-group select,.staff-modal-v3 .form-group textarea,.staff-modal-v3 .custom-select-trigger,.staff-modal-v3 .date-picker-input{border:1px solid var(--cream-deeper, #d4c9b8);background:var(--warm-white, #fefcf9);font-size:var(--font-size-sm, .875rem);padding:10px 12px;border-radius:13px;min-height:42px;box-sizing:border-box}.staff-modal-v3 .form-group textarea{min-height:100px}.staff-modal-v3 .employee-form.staff-modal-v3-section-form{gap:0}.staff-modal-v3 .staff-modal-v3-card--additional-info .staff-modal-v3-fields{gap:10px}.staff-modal-v3 .staff-modal-v3-card--additional-info .form-group textarea{min-height:72px;resize:vertical}.staff-modal-v3 .form-group input:not([type=checkbox]):not([type=radio]):focus,.staff-modal-v3 .form-group select:focus,.staff-modal-v3 .form-group textarea:focus,.staff-modal-v3 .custom-select-trigger:focus-visible,.staff-modal-v3 .date-picker-input:focus{border-color:var(--sage, #4a6741);box-shadow:0 0 0 3px var(--sage-pale, #eef4ec);background:var(--warm-white, #fefcf9);outline:none}.staff-modal-v3 .custom-select--open .custom-select-trigger{border-color:var(--sage, #4a6741);box-shadow:0 0 0 3px var(--sage-pale, #eef4ec)}.staff-modal-v3 .form-control-readonly,.staff-modal-v3 .form-group input:not([type=checkbox]):not([type=radio])[readonly],.staff-modal-v3 .form-group input.form-control-readonly{background:var(--cream, #f7f3ec);color:var(--ink-mid, #6b6259);cursor:default}.staff-modal-v3 .calculated-hours-display{display:flex;align-items:center;min-height:42px;padding:10px 12px;border:var(--v3-border);border-radius:13px;background:var(--cream, #f7f3ec);color:var(--ink-mid, #6b6259);font-size:var(--font-size-sm, .875rem);font-weight:600;box-sizing:border-box}.staff-modal-v3 .staff-modal-v3-section-dirty-badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:var(--font-weight-semibold);background:var(--gold-pale, #f5edd8);color:var(--gold, #c4963a);white-space:nowrap}.staff-modal-v3 .puls-btn,.staff-modal-v3 .staff-modal-v3-seg__option,.staff-modal-v3 .staff-modal-command-bar .staff-modal-tab,.staff-modal-v3 .staff-modal-v3-st-pane-btn{font-weight:600;line-height:1.2}.staff-modal-v3 .modal-center-message{padding:var(--space-8, 32px);text-align:center;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.staff-modal-v3 .loading{color:var(--color-text-muted, #a89c8e);font-size:var(--font-size-base, 1rem)}@media(max-width:1279px){.staff-modal-v3 .staff-modal-pane.active{grid-template-columns:1fr;grid-template-rows:auto auto}.staff-modal-v3 .staff-modal-pane-sidebar{border-left:none;border-top:var(--v3-border);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}.staff-modal-v3 .form-row.form-row--three,.staff-modal-v3 .staff-modal-v3-fields--three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.modal-root__overlay:has(.staff-modal-v3){align-items:stretch;justify-content:stretch;padding:12px}.modal-root__panel.staff-modal-v3.modal-root__panel--wide,.modal-root__panel.staff-modal-v3.modal-root__panel--fullscreen,.staff-modal-v3.staff-modal-card.modal-root__panel--fullscreen,.staff-modal-v3.staff-modal-card.modal-root__panel--wide{width:100%;max-width:100%;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);min-height:0;border-radius:16px;overflow:hidden}.staff-modal-v3__body .modal-root__body-scale{width:100%;height:100%;transform:none!important}.staff-modal-v3 .staff-modal-header{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:14px 14px 12px}.staff-modal-v3 .staff-modal-avatar{width:42px;height:42px;font-size:.875rem}.staff-modal-v3 .staff-modal-title-row{gap:8px}.staff-modal-v3 .staff-modal-title-row h2{max-width:100%;font-size:1.45rem;white-space:normal;line-height:1.05}.staff-modal-v3 .staff-modal-header-meta{white-space:normal}.staff-modal-v3 .staff-modal-close{width:36px;height:36px}.staff-modal-v3 .staff-modal-command-bar-wrap{display:block;padding:0 10px 10px;overflow:hidden}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-command-bar{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:2px 0;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(to right,#000 88%,transparent);mask-image:linear-gradient(to right,#000 88%,transparent)}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-command-bar::-webkit-scrollbar{display:none}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-command-bar .staff-modal-tab{flex:0 0 auto;min-height:36px;padding:8px 12px;font-size:.75rem;scroll-snap-align:start}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-dirty-chip{width:fit-content;max-width:100%;margin-top:8px}.staff-modal-v3 .staff-modal-pane-main{padding:12px 10px}.staff-modal-v3 .staff-modal-v3-card,.staff-modal-v3 .employee-section{border-radius:16px;padding:16px}.staff-modal-v3 .staff-modal-pane-sidebar{grid-template-columns:1fr;padding:12px 10px 16px}.staff-modal-v3 .form-row,.staff-modal-v3 .form-row.form-row--three,.staff-modal-v3 .staff-modal-v3-fields,.staff-modal-v3 .staff-modal-v3-fields--two,.staff-modal-v3 .staff-modal-v3-fields--three,.staff-modal-v3 .staff-modal-v3-perm-grid{grid-template-columns:1fr}.staff-modal-v3 .staff-modal-footer{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px))}.staff-modal-v3 .staff-modal-footer-left,.staff-modal-v3 .staff-modal-footer-right{justify-self:stretch}.staff-modal-v3 .staff-modal-footer-center{grid-column:1 / -1;grid-row:1;justify-self:start}.staff-modal-v3 .staff-modal-footer-left{grid-column:1;grid-row:2}.staff-modal-v3 .staff-modal-footer-right{grid-column:2;grid-row:2}.staff-modal-v3 .staff-modal-footer .puls-btn{min-height:36px;padding:8px 11px}.staff-modal-v3 .employee-detail-view--new .staff-modal-pane-sidebar{border-top:none;background:var(--cream, #f7f3ec);padding-top:0}.staff-modal-v3 .employee-detail-view--new .staff-modal-pane-sidebar .staff-modal-sidebar-card{margin-bottom:0}.staff-modal-v3 .employee-detail-view--new .form-actions{justify-content:stretch}.staff-modal-v3 .employee-detail-view--new .form-actions .puls-btn{width:100%;justify-content:center}}@media(max-width:549px){.staff-modal-v3 .staff-modal-header{gap:8px;padding:12px 10px 10px}.staff-modal-v3 .staff-modal-avatar{width:36px;height:36px;font-size:.75rem}.staff-modal-v3 .staff-modal-title-row h2{font-size:1.25rem}.staff-modal-v3 .staff-modal-command-bar-wrap{padding:0 8px 8px}.staff-modal-v3 .staff-modal-command-bar-wrap .staff-modal-command-bar .staff-modal-tab{min-height:34px;padding:6px 10px;font-size:.6875rem}.staff-modal-v3 .staff-modal-pane-main{padding:10px 8px}.staff-modal-v3 .staff-modal-v3-card,.staff-modal-v3 .employee-section{border-radius:14px;padding:12px}.staff-modal-v3 .staff-modal-pane-sidebar{padding:10px 8px 14px}.staff-modal-v3 .staff-modal-footer{grid-template-columns:1fr;gap:6px;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}.staff-modal-v3 .staff-modal-footer-center{grid-column:1;grid-row:1}.staff-modal-v3 .staff-modal-footer-left,.staff-modal-v3 .staff-modal-footer-right{grid-column:1;justify-self:stretch}.staff-modal-v3 .staff-modal-footer-left{grid-row:2}.staff-modal-v3 .staff-modal-footer-right{grid-row:3}.staff-modal-v3 .staff-modal-footer-left .puls-btn,.staff-modal-v3 .staff-modal-footer-right .puls-btn{width:100%;justify-content:center;min-height:40px}}.staff-modal-v3 .staff-modal-v3-card{background:#fff;border:var(--v3-border);border-radius:24px;box-shadow:0 12px 32px #2a262214;padding:22px;margin-bottom:14px}.staff-modal-v3 .staff-modal-v3-card:last-child{margin-bottom:0}.staff-modal-v3 .staff-modal-v3-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.staff-modal-v3 .staff-modal-v3-card-head h3{margin:0;font-family:var(--font-display);font-size:1.1rem;font-weight:var(--font-weight-semibold);letter-spacing:.02em;color:var(--sage-dark, #2d4229)}.staff-modal-v3 .staff-modal-v3-card-head-meta{margin-top:4px}.staff-modal-v3 .staff-modal-v3-card-head-desc{margin:3px 0 0;font-size:var(--font-size-xs, .75rem);color:var(--ink-mid, #6b6259);font-weight:500}.staff-modal-v3 .staff-modal-v3-card-head-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;max-width:min(100%,520px)}.staff-modal-v3 .staff-modal-v3-card>.agreement-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;padding:14px 16px;margin:0 0 14px;border-radius:16px;background:var(--cream, #f7f3ec);border:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .staff-modal-v3-card>.agreement-summary+.employee-section{padding:0}.staff-modal-v3 .staff-modal-v3-card>.employee-section:first-child{padding:0}.staff-modal-v3 .ag-pill{display:flex;flex-direction:column;gap:3px;padding:12px 16px;min-height:56px;border-radius:14px;background:var(--warm-white, #fefcf9);border:1px solid var(--cream-dark, #ede7dc);justify-content:center;text-align:center}.staff-modal-v3 .ag-pill-label{font-size:11px;font-weight:var(--font-weight-semibold);color:var(--ink-light, #a89c8e);letter-spacing:.05em;text-transform:uppercase}.staff-modal-v3 .ag-pill-value{font-weight:var(--font-weight-semibold);color:var(--ink, #2a2622);font-size:16px}@media(max-width:1279px){.staff-modal-v3 .staff-modal-v3-card>.agreement-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.staff-modal-v3 .staff-modal-v3-card>.agreement-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;margin-bottom:10px}.staff-modal-v3 .ag-pill{min-height:0;padding:8px 10px;border-radius:12px;gap:2px}.staff-modal-v3 .ag-pill-label{font-size:10px}.staff-modal-v3 .ag-pill-value{font-size:.875rem}.staff-modal-v3 .staff-modal-v3-seg{display:flex;flex-wrap:wrap;width:100%;grid-auto-flow:unset;border-radius:16px}.staff-modal-v3 .staff-modal-v3-seg__option{flex:1 1 auto;text-align:center;min-height:36px;padding:8px 10px;white-space:normal}.staff-modal-v3 .form-actions{margin-top:10px;padding-top:10px;justify-content:stretch}.staff-modal-v3 .form-actions .puls-btn{width:100%;justify-content:center;min-height:38px}}@media(max-width:549px){.staff-modal-v3 .staff-modal-v3-card-head{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:12px}.staff-modal-v3 .staff-modal-v3-card-head h3{font-size:1rem}.staff-modal-v3 .staff-modal-v3-card-head-actions{justify-content:stretch;max-width:none}.staff-modal-v3 .staff-modal-v3-card-head-actions .puls-btn{flex:1 1 auto;justify-content:center;min-height:36px}.staff-modal-v3 .staff-modal-v3-card>.agreement-summary{grid-template-columns:1fr;gap:6px;padding:8px;margin-bottom:8px}.staff-modal-v3 .ag-pill{padding:6px 8px;border-radius:10px;text-align:left}.staff-modal-v3 .ag-pill-value{font-size:.8125rem}.staff-modal-v3 .staff-modal-v3-fields,.staff-modal-v3 .staff-modal-v3-fields--two,.staff-modal-v3 .staff-modal-v3-fields--three{gap:10px;margin-bottom:10px}.staff-modal-v3 .staff-modal-v3-seg__option{min-height:34px;padding:6px 8px;font-size:.75rem}}.staff-modal-v3 .staff-modal-v3-new-version-form{padding-top:16px;margin-top:16px;border-top:1px dashed var(--cream-deeper, #ddd4c8)}.staff-modal-v3 .staff-modal-v3-new-version-form[hidden]{display:none}.staff-modal-v3 .staff-modal-v3-expand-divider{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:12px;font-weight:var(--font-weight-semibold);color:var(--ink-light, #a89c8e);text-transform:uppercase;letter-spacing:.05em}.staff-modal-v3 .staff-modal-v3-expand-divider:before,.staff-modal-v3 .staff-modal-v3-expand-divider:after{content:"";flex:1;height:1px;background:var(--cream-deeper, #ddd4c8)}.staff-modal-v3 .staff-modal-v3-tax-advanced{margin-top:16px;border:none}.staff-modal-v3 .staff-modal-v3-tax-advanced-summary{list-style:none;cursor:pointer;margin-bottom:12px;display:inline-flex;align-items:center;gap:8px}.staff-modal-v3 .staff-modal-v3-tax-advanced-summary::-webkit-details-marker{display:none}.staff-modal-v3 .agreement-benefits-section{display:none}.staff-modal-v3 .staff-modal-v3-seg{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border-radius:999px;background:var(--cream-dark, #ede7dc)}.staff-modal-v3 .staff-modal-v3-seg--invalid{outline:2px solid var(--terra, #c4614a);outline-offset:2px}.staff-modal-v3 .staff-modal-v3-seg__option{padding:7px 11px;border:none;border-radius:999px;background:transparent;color:var(--ink-mid, #6b6259);font-size:var(--font-size-xs, .75rem);cursor:pointer;white-space:nowrap}.staff-modal-v3 .staff-modal-v3-seg__option:hover:not(:disabled){color:var(--ink, #2a2622)}.staff-modal-v3 .staff-modal-v3-seg__option:focus-visible{outline:2px solid var(--sage, #4a6741);outline-offset:2px}.staff-modal-v3 .staff-modal-v3-seg__option--active{background:var(--sage, #4a6741);color:var(--warm-white, #fefcf9)}.staff-modal-v3 .staff-modal-v3-seg__option:disabled{opacity:.55;cursor:not-allowed}.staff-modal-v3 .staff-modal-v3-seg--lg{gap:6px;padding:5px}.staff-modal-v3 .staff-modal-v3-seg--lg .staff-modal-v3-seg__option{min-height:40px;padding:10px 16px;font-size:var(--font-size-sm, .875rem);font-weight:600}.staff-modal-v3 .staff-modal-v3-card:has(.custom-select--prefer-below.custom-select--open),.staff-modal-v3 .staff-modal-pane-main:has(.custom-select--prefer-below.custom-select--open){overflow:visible}.staff-modal-v3 .staff-modal-v3-fields{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px;align-items:start;width:100%;max-width:100%;min-width:0}.staff-modal-v3 .staff-modal-v3-identity-pending-hint{margin:0 0 12px}.staff-modal-v3 .staff-modal-v3-fields:last-child{margin-bottom:0}.staff-modal-v3 .staff-modal-v3-fields--three{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-modal-v3 .staff-modal-v3-fields--two{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-modal-v3 .staff-modal-v3-field--full{grid-column:1 / -1}.staff-modal-v3 .staff-modal-v3-field,.staff-modal-v3 .staff-modal-v3-fields .form-group{display:grid;gap:7px;margin-bottom:0;align-content:start;min-width:0;max-width:100%}.staff-modal-v3 .staff-modal-v3-fields .custom-select,.staff-modal-v3 .staff-modal-v3-fields .custom-select-trigger,.staff-modal-v3 .staff-modal-v3-field .custom-select,.staff-modal-v3 .staff-modal-v3-field .custom-select-trigger{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.staff-modal-v3 .staff-modal-v3-fields .custom-select-trigger .custom-select-value,.staff-modal-v3 .staff-modal-v3-fields .custom-select-trigger .custom-select-placeholder,.staff-modal-v3 .staff-modal-v3-field .custom-select-trigger .custom-select-value,.staff-modal-v3 .staff-modal-v3-field .custom-select-trigger .custom-select-placeholder{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-modal-v3 .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.staff-modal-v3 .form-row:last-child{margin-bottom:0}.staff-modal-v3 .form-row.form-row--three{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-modal-v3 .form-row.form-row--single-col{grid-template-columns:1fr}.staff-modal-v3 .form-hint,.staff-modal-v3 .form-hint-small,.staff-modal-v3 .employee-form>.info-text,.staff-modal-v3 .required-indicator{display:none}.staff-modal-v3 .form-error-text,.staff-modal-v3 .loading,.staff-modal-v3 .error-message{display:revert}.staff-modal-v3 .staff-modal-v3-timbank-active{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs, .75rem);font-weight:600;color:var(--ink-mid, #6b6259);cursor:pointer;white-space:nowrap}.staff-modal-v3 .staff-modal-v3-timbank-active input[type=checkbox]{width:16px;height:16px;accent-color:var(--sage, #4a6741);cursor:pointer}.staff-modal-v3 .tax-extra-deduction-input{display:flex;align-items:center;gap:8px}.staff-modal-v3 .tax-extra-deduction-input input{flex:1}.staff-modal-v3 .form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .staff-modal-v3-card .admin-section{padding:0}.staff-modal-v3 .staff-modal-v3-card .admin-filters{margin-bottom:14px;gap:10px}.staff-modal-v3 .staff-modal-v3-card .admin-filters--with-nav{flex-wrap:wrap;align-items:center}.staff-modal-v3 .staff-modal-v3-card .empty-state-box,.staff-modal-v3 .staff-modal-v3-card .admin-section table{font-size:var(--font-size-sm, .875rem)}.staff-modal-v3 .employment-agreements-card.staff-modal-v3-card{padding-left:0;padding-right:0;padding-bottom:0}.staff-modal-v3 .employment-agreements-card .staff-modal-v3-card-head{padding-left:22px;padding-right:22px}.staff-modal-v3 .employment-agreements-list{display:flex;flex-direction:column;gap:10px;padding:0 16px 18px}.staff-modal-v3 .agreement-accordion{border:1px solid var(--cream-dark, #ede7dc);border-radius:16px;background:var(--warm-white, #fefcf9)}.staff-modal-v3 .agreement-accordion__trigger{width:100%;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:16px 22px;background:var(--warm-white, #fefcf9);border:0;border-radius:16px;text-align:left;cursor:default;font:inherit;color:inherit;transition:background .15s ease,border-radius .15s ease}.staff-modal-v3 .agreement-accordion__trigger:hover{background:var(--cream, #f7f3ec)}.staff-modal-v3 .agreement-accordion.is-open>.agreement-accordion__trigger{background:var(--sage-pale, #e8f0e4);border-radius:16px 16px 0 0;border-bottom:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-accordion.is-ended>.agreement-accordion__trigger{background:var(--cream, #f7f3ec)}.staff-modal-v3 .agreement-accordion.is-ended.is-open>.agreement-accordion__trigger{background:var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-accordion__chevron{appearance:none;-webkit-appearance:none;width:28px;height:28px;margin:0;padding:0;border:0;border-radius:8px;display:grid;place-items:center;color:var(--ink-mid, #6b6259);background:transparent;box-shadow:none;outline:none;cursor:pointer;flex-shrink:0;transition:transform .2s ease,background .15s ease,color .15s ease}.staff-modal-v3 .agreement-accordion__chevron:hover{background:#2a26220f;color:var(--ink, #2a2622)}.staff-modal-v3 .agreement-accordion__chevron:focus-visible{outline:2px solid var(--sage, #4a6741);outline-offset:2px}.staff-modal-v3 .agreement-accordion.is-open .agreement-accordion__chevron{transform:rotate(180deg)}.staff-modal-v3 .agreement-accordion__period{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;gap:6px;min-height:28px;max-width:100%;margin:0;padding:4px 10px;border-radius:999px;background:transparent;border:1px solid var(--cream-deeper, #d4c9b8);color:var(--ink-mid, #6b6259);font:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.staff-modal-v3 .agreement-accordion.is-open .agreement-accordion__period{border-color:#4a674159;color:var(--sage-dark, #2d4229)}.staff-modal-v3 .agreement-accordion__period i{color:inherit;opacity:.75;font-size:11px}.staff-modal-v3 .agreement-accordion__title{appearance:none;-webkit-appearance:none;display:grid;place-items:center;min-width:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:center;font:inherit;color:inherit;cursor:pointer}.staff-modal-v3 .agreement-accordion__title:focus-visible{outline:2px solid var(--sage, #4a6741);outline-offset:2px;border-radius:4px}.staff-modal-v3 .agreement-accordion__title-text{display:block;width:100%;font-size:15px;font-weight:600;line-height:1.3;color:var(--ink, #2a2622);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-modal-v3 .agreement-accordion__body,.staff-modal-v3 .employment-agreements-card:has(.custom-select--open),.staff-modal-v3 .agreement-accordion:has(.custom-select--open){overflow:visible}.staff-modal-v3 .agreement-accordion__body .custom-select,.staff-modal-v3 .agreement-accordion__body .custom-select-trigger{min-width:0}.staff-modal-v3 .agreement-accordion__body .custom-select-trigger .custom-select-value,.staff-modal-v3 .agreement-accordion__body .custom-select-trigger .custom-select-placeholder{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-modal-v3 .agreement-accordion__status{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:var(--font-weight-semibold)}.staff-modal-v3 .agreement-accordion__status--active{background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #2d4229)}.staff-modal-v3 .agreement-accordion__status--ended{background:var(--terra-pale, #f5e8e3);color:var(--terra, #c4614a)}.staff-modal-v3 .agreement-accordion__edit{appearance:none;-webkit-appearance:none;width:36px;min-height:36px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:var(--cream, #f7f3ec);color:var(--ink-mid, #6b6259);border:1px solid var(--cream-deeper, #d4c9b8);cursor:pointer;flex-shrink:0}.staff-modal-v3 .agreement-accordion__edit.is-editing{background:var(--sage-pale, #e8f0e4);color:var(--sage-dark, #2d4229);border-color:var(--sage-light, #7a9e6e)}.staff-modal-v3 .agreement-accordion__edit:disabled{opacity:.4;cursor:not-allowed}.staff-modal-v3 .agreement-accordion__body{padding:18px 22px 22px;background:var(--warm-white, #fefcf9);border-radius:0 0 16px 16px;transition:background .15s ease,opacity .15s ease}.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body{background:var(--cream, #f7f3ec)}.staff-modal-v3 .agreement-accordion.is-editing .agreement-accordion__body{background:var(--warm-white, #fefcf9);box-shadow:inset 3px 0 0 var(--sage, #4a6741)}.staff-modal-v3 .agreement-accordion__hint{margin:0 0 18px;color:var(--ink-mid, #6b6259);font-size:12.5px;line-height:1.45;font-weight:600}.staff-modal-v3 .agreement-form-block{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-form-block:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:0}.staff-modal-v3 .agreement-form-block__label{margin:0 0 12px;font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-light, #a89c8e);font-family:inherit}.staff-modal-v3 .agreement-extra-benefits{margin-top:14px}.staff-modal-v3 .agreement-extra-benefits__label{margin:0 0 8px;font-size:.75rem;font-weight:var(--font-weight-semibold);color:var(--ink-mid, #6b6259)}.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body input:not([type=checkbox]):not([type=radio]),.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .custom-select-trigger,.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .date-picker-input,.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .staff-modal-v3-perm-check{background:var(--cream-dark, #ede7dc);color:var(--ink-mid, #6b6259);border-color:var(--cream-deeper, #d4c9b8);pointer-events:none;cursor:default}.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-form-block__label,.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .form-group label:not(.staff-modal-v3-perm-check),.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .staff-modal-v3-field label:not(.staff-modal-v3-perm-check){color:var(--ink-mid, #6b6259);opacity:.85}.staff-modal-v3 .agreement-accordion:not(.is-editing) .agreement-accordion__body .staff-modal-v3-perm-check:hover{background:var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-accordion.is-ended .agreement-accordion__body input:not([type=checkbox]):not([type=radio]),.staff-modal-v3 .agreement-accordion.is-ended .agreement-accordion__body .custom-select-trigger,.staff-modal-v3 .agreement-accordion.is-ended .agreement-accordion__body .date-picker-input,.staff-modal-v3 .agreement-accordion.is-ended .agreement-accordion__body .staff-modal-v3-perm-check{background:var(--cream-dark, #ede7dc);color:var(--ink-mid, #6b6259);pointer-events:none;cursor:default}.staff-modal-v3 .agreement-accordion.is-ended .agreement-accordion__body .staff-modal-v3-perm-check:hover{background:var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-expiry-banner{margin:0 0 14px;padding:10px 12px;border-radius:8px;font-size:.875rem;line-height:1.4;border:1px solid transparent}.staff-modal-v3 .agreement-expiry-banner--warn{background:#fff8e8;border-color:#e8d4a8;color:#6b5420}.staff-modal-v3 .agreement-expiry-banner--urgent{background:#fdecea;border-color:#e8b4ae;color:#7a2e28;font-weight:600}.staff-modal-v3 .agreement-expiry-banner--past{background:#f3f0eb;border-color:#d9d2c6;color:#5c5348}.staff-modal-v3 .agreement-events{margin-top:18px;padding-top:16px;border-top:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .staff-modal-sidebar-card--events{padding-top:12px;padding-bottom:12px}.staff-modal-v3 .staff-modal-sidebar-card--events .agreement-events{margin-top:0;padding-top:0;border-top:0}.staff-modal-v3 .agreement-events__header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.staff-modal-v3 .agreement-events__title,.staff-modal-v3 .staff-modal-sidebar-card--events .agreement-form-block__label{margin:0;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mid, #6b6259)}.staff-modal-v3 .agreement-events__count{font-size:.7rem;font-weight:var(--font-weight-semibold);color:var(--ink-light, #a89c8e)}.staff-modal-v3 .agreement-events__empty{margin:0;font-size:.875rem;color:var(--ink-mid, #6b6259)}.staff-modal-v3 .agreement-events__timeline{list-style:none;margin:0;padding:0 0 0 2px;display:flex;flex-direction:column;position:relative}.staff-modal-v3 .agreement-events__timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:12px;width:2px;border-radius:2px;background:linear-gradient(180deg,var(--sage-light, #7a9e6e),var(--cream-deeper, #d4c9b8))}.staff-modal-v3 .agreement-events__item{position:relative;margin:0;padding:0 0 16px 28px;background:transparent;border:0;border-radius:0}.staff-modal-v3 .agreement-events__item:last-child{padding-bottom:2px}.staff-modal-v3 .agreement-events__dot{position:absolute;left:1px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--warm-white, #fefcf9);border:2px solid var(--sage, #4a6741);box-shadow:0 0 0 3px var(--warm-white, #fefcf9);z-index:1}.staff-modal-v3 .agreement-events__item--terms .agreement-events__dot{border-color:var(--sage, #4a6741);background:var(--sage-pale, #e8f0e4)}.staff-modal-v3 .agreement-events__item--revision .agreement-events__dot{border-color:#6b7a94;background:#eef0f5}.staff-modal-v3 .agreement-events__item--closed .agreement-events__dot{border-color:var(--terra, #c4614a);background:#c4614a1f}.staff-modal-v3 .agreement-events__item--reactivated .agreement-events__dot{border-color:var(--sage, #4a6741);background:var(--sage-pale, #e8f0e4)}.staff-modal-v3 .agreement-events__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.staff-modal-v3 .agreement-events__date{font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--ink, #2c2620);font-variant-numeric:tabular-nums}.staff-modal-v3 .agreement-events__kind{font-size:.7rem;font-weight:var(--font-weight-semibold);padding:2px 8px;border-radius:6px;border:1px solid transparent}.staff-modal-v3 .agreement-events__kind--terms{background:var(--sage-pale, #e8f0e4);border-color:#c5d6c9;color:#2f4a36}.staff-modal-v3 .agreement-events__kind--revision{background:#eef0f5;border-color:#cfd5e0;color:#3a4150}.staff-modal-v3 .agreement-events__kind--closed{background:#c4614a1f;border-color:#c4614a59;color:#8a3d2e}.staff-modal-v3 .agreement-events__kind--reactivated{background:var(--sage-pale, #e8f0e4);border-color:#c5d6c9;color:#2f4a36}.staff-modal-v3 .agreement-events__summary{margin:0 0 8px;font-size:.8125rem;color:var(--ink-mid, #6b6259);line-height:1.35}.staff-modal-v3 .agreement-events__fields{list-style:none;margin:0;padding:8px 10px;border-radius:10px;background:var(--cream, #f7f3ec);border:1px solid var(--cream-dark, #ede7dc);display:flex;flex-direction:column;gap:6px}.staff-modal-v3 .agreement-events__fields li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:baseline;font-size:.8125rem;line-height:1.35}.staff-modal-v3 .agreement-events__field-label{color:var(--ink-mid, #6b6259);font-weight:500;min-width:0}.staff-modal-v3 .agreement-events__field-value{color:var(--ink, #2c2620);font-weight:var(--font-weight-semibold);text-align:right;font-variant-numeric:tabular-nums}.staff-modal-v3 .staff-modal-sidebar-card--events .agreement-events__fields li{grid-template-columns:1fr;gap:2px}.staff-modal-v3 .staff-modal-sidebar-card--events .agreement-events__field-value{text-align:left}.staff-modal-v3 .agreement-accordion__end{display:flex;justify-content:flex-start;margin-top:18px;padding-top:16px;border-top:1px solid var(--cream-dark, #ede7dc)}.staff-modal-v3 .agreement-accordion__save{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:0;border-top:0}.staff-modal-v3 .agreement-accordion__end+.agreement-accordion__save{margin-top:12px}.staff-modal-v3 .employment-agreements-empty{margin:0 16px 18px;padding:22px;border:1px solid var(--cream-dark, #ede7dc);border-radius:16px;color:var(--ink-mid, #6b6259);font-size:14px}@media(max-width:980px){.staff-modal-v3 .employment-agreements-card .staff-modal-v3-card-head{padding-left:14px;padding-right:14px}.staff-modal-v3 .employment-agreements-list{padding:0 12px 14px}.staff-modal-v3 .employment-agreements-card .staff-modal-v3-card-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.staff-modal-v3 .agreement-accordion__trigger{grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"chevron period status edit" "chevron title title title";padding:14px;gap:8px 10px}.staff-modal-v3 .agreement-accordion__chevron{grid-area:chevron;align-self:start;margin-top:2px}.staff-modal-v3 .agreement-accordion__period{grid-area:period;justify-self:start;max-width:100%;white-space:normal;line-height:1.25}.staff-modal-v3 .agreement-accordion__status{grid-area:status}.staff-modal-v3 .agreement-accordion__edit{grid-area:edit}.staff-modal-v3 .agreement-accordion__title{grid-area:title}.staff-modal-v3 .agreement-accordion__body{padding:14px 14px 18px}}@media(max-width:767px){.staff-modal-v3 .employment-agreements-card .staff-modal-v3-card-head{padding-left:12px;padding-right:12px}.staff-modal-v3 .agreement-accordion__trigger{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"chevron period edit" "chevron title title" "chevron status status";padding:12px;gap:8px}.staff-modal-v3 .agreement-accordion__status{justify-self:start}.staff-modal-v3 .agreement-accordion__body{padding:12px 12px 16px}.staff-modal-v3 .agreement-form-block{padding-bottom:14px;margin-bottom:14px}.staff-modal-v3 .agreement-accordion__save{flex-direction:column-reverse;align-items:stretch}.staff-modal-v3 .agreement-accordion__save .puls-btn{width:100%;justify-content:center}.staff-modal-v3 .employment-agreements-empty{padding:16px 12px}}.staff-modal-v3 .employee-absence-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:18px}.staff-modal-v3 .employee-absence-kpi-card{background:var(--sage-pale, #eef4ec);border-radius:var(--radius-md, 12px);padding:14px 16px;border:1px solid rgba(74,103,65,.12)}.staff-modal-v3 .employee-absence-kpi-value{font-family:var(--font-display);font-size:2.375rem;font-weight:var(--font-weight-semibold);color:var(--sage-dark, #2d4229);line-height:1.1}.staff-modal-v3 .employee-absence-kpi-label{font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);color:var(--ink-mid, #6b6259);margin-top:4px;text-transform:uppercase;letter-spacing:.04em}.staff-modal-v3 .employee-absence-kpi-meta{font-size:var(--font-size-xs, .75rem);color:var(--ink-mid, #6b6259);margin-top:3px;opacity:.75}.staff-modal-v3 .employee-modal-subsection-heading{font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--ink-mid, #6b6259);letter-spacing:.05em;text-transform:uppercase;margin:16px 0 8px}.staff-modal-v3 .employee-absence-list{list-style:none;margin:0;padding:0}.staff-modal-v3 .employee-absence-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--cream, #f7f3ec);border:1px solid var(--cream-dark, #ede7dc);margin-bottom:8px;font-size:var(--font-size-sm, .875rem)}.staff-modal-v3 .employee-absence-row:last-child{margin-bottom:0;border-bottom:none}.staff-modal-v3 .employee-absence-type{font-weight:600;color:var(--color-text-heading, #2a2622)}.staff-modal-v3 .employee-absence-dates{font-size:var(--font-size-xs, .75rem);color:var(--ink-mid, #6b6259);margin-top:2px}.staff-modal-v3 .employee-absence-row-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.staff-modal-v3 .employee-absence-days{font-size:var(--font-size-xs, .75rem);color:var(--ink-mid, #6b6259)}.staff-modal-v3 .employee-absence-chip{font-size:.6875rem;padding:2px 8px;border-radius:var(--radius-full, 9999px);font-weight:var(--font-weight-semibold)}.staff-modal-v3 .employee-absence-chip--sick{background:#c4614a1f;color:#8b3b27}.staff-modal-v3 .employee-absence-chip--vab{background:#c4963a1f;color:#7a5a1a}.staff-modal-v3 .employee-absence-chip--vacation{background:#4a67411f;color:#2d4229}.staff-modal-v3 .employee-absence-chip--other{background:#6b62591a;color:#6b6259}.staff-modal-v3 .staff-modal-v3-perm-check{display:flex;align-items:flex-start;gap:9px;min-height:44px;padding:11px 12px;border:1px solid var(--cream-dark, #ede7dc);border-radius:14px;background:var(--warm-white, #fefcf9);font-size:var(--font-size-sm, .875rem);font-weight:600;color:var(--ink-mid, #6b6259);cursor:pointer;transition:background .15s ease,border-color .15s ease;text-transform:none;letter-spacing:normal;box-sizing:border-box}.staff-modal-v3 .staff-modal-v3-perm-check:hover{background:var(--cream, #f7f3ec)}.staff-modal-v3 .staff-modal-v3-perm-check input[type=checkbox]{width:18px;min-height:18px;margin:0;padding:0;border:none;border-radius:0;background:transparent;flex-shrink:0;accent-color:var(--sage, #4a6741);cursor:pointer}.staff-modal-v3 .staff-modal-v3-benefit-active .staff-modal-v3-perm-check{width:100%;min-height:42px;align-items:center}.staff-modal-v3 .staff-modal-v3-perm-check--disabled,.staff-modal-v3 .staff-modal-v3-perm-check:has(input:disabled){opacity:.55;cursor:not-allowed;background:var(--cream, #f7f3ec)}.staff-modal-v3 .staff-modal-v3-perm-check--disabled:hover,.staff-modal-v3 .staff-modal-v3-perm-check:has(input:disabled):hover{background:var(--cream, #f7f3ec)}.staff-modal-v3 .staff-modal-v3-perm-check input[type=checkbox]:disabled{cursor:not-allowed}.staff-modal-v3 .staff-modal-v3-perm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:none;overflow:visible;padding:0;background:transparent;border:none;border-radius:0}.staff-modal-v3 .staff-modal-sidebar-card-value{font-family:var(--font-display);font-size:2.5rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading, #2a2622);line-height:1.1}.staff-modal-v3 .staff-modal-sidebar-card-value--sm{font-size:1rem;font-weight:var(--font-weight-semibold)}.staff-modal-v3 .staff-modal-sidebar-card-link{display:inline-block;margin-top:6px;font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);color:var(--sage, #4a6741);text-decoration:none;background:none;border:none;cursor:pointer;padding:0}.staff-modal-v3 .staff-modal-sidebar-card-link:hover{color:var(--sage-dark, #2d4229);text-decoration:underline}.staff-modal-v3 .staff-modal-sidebar-card-label--muted{color:var(--ink-mid, #6b6259);font-size:var(--font-size-sm, .875rem);text-transform:none;letter-spacing:0;font-weight:500}.staff-modal-v3 .staff-modal-sidebar-card-cta{display:block;width:100%;margin-top:12px}.staff-modal-v3 .staff-modal-sidebar-card--account-actions{margin-top:4px}.staff-modal-v3 .staff-modal-account-actions{width:100%}.staff-modal-v3 .staff-modal-account-actions>summary{list-style:none;cursor:pointer;color:var(--ink-mid, #6b6259);font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.staff-modal-v3 .staff-modal-account-actions>summary::-webkit-details-marker{display:none}.staff-modal-v3 .staff-modal-account-actions>summary:after{content:" ▾";font-size:.7em;opacity:.7}.staff-modal-v3 .staff-modal-account-actions[open]>summary:after{content:" ▴"}.staff-modal-v3 .staff-modal-account-actions__body{display:grid;gap:10px;margin-top:10px}.staff-modal-v3 .staff-modal-account-actions__btn{width:100%;min-height:32px;padding:6px 10px;font-size:.8125rem;font-weight:500;justify-content:center}.staff-modal-v3 .puls-btn i{margin-right:5px;font-size:12px}.staff-modal-v3 .puls-btn i:last-child:not(:only-child){margin-right:0;margin-left:5px}.staff-modal-v3 .staff-modal-v3-invite-seg{margin-bottom:10px}.staff-modal-v3 .staff-modal-v3-invite-seg .staff-modal-v3-seg__option{cursor:default;pointer-events:none}.staff-modal-v3 .staff-modal-v3-st-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.staff-modal-v3 .staff-modal-v3-st-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:var(--cream, #f7f3ec);border:1px solid var(--cream-dark, #ede7dc);font-size:var(--font-size-xs, .75rem)}.staff-modal-v3 .staff-modal-v3-st-pane-btn{background:none;border:none;padding:0;cursor:pointer;font-size:var(--font-size-xs, .75rem);color:var(--sage-dark, #2d4229);text-align:left}.staff-modal-v3 .staff-modal-v3-st-pane-btn:hover{text-decoration:underline}.staff-modal-v3 .staff-modal-v3-st-badge{padding:2px 7px;border-radius:var(--radius-full, 9999px);font-size:.6875rem;font-weight:var(--font-weight-semibold);white-space:nowrap;flex-shrink:0}.staff-modal-v3 .staff-modal-v3-st-ok{background:#4a67411f;color:#2d4229}.staff-modal-v3 .staff-modal-v3-st-dirty{background:#c4963a26;color:#7a5a1a}.staff-modal-v3 .staff-modal-v3-st-na{background:#6b62591a;color:#6b6259}.staff-modal-v3 .staff-modal-v3-card .admin-section{background:transparent;border:none;padding:0;margin:0;box-shadow:none}.staff-unsaved-dialog-footer .dialog-actions{flex-direction:column;align-items:stretch;gap:8px}.staff-unsaved-dialog-footer__row{display:flex;gap:8px}.staff-unsaved-dialog-footer__row .puls-btn{flex:1;min-width:0}.staff-unsaved-dialog-footer .dialog-actions>.puls-btn{width:100%;white-space:normal;text-align:center}.staff{padding-right:200px}.staff-search-container{margin-bottom:var(--spacing-lg)}.staff-search-wrapper{position:relative;max-width:360px}.staff-search-input{width:100%;padding:10px 36px 10px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.9375rem;outline:none;transition:border-color .2s,box-shadow .2s;background:#fefcf9;color:var(--text-color)}.staff-search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb, 0, 123, 255),.1)}.staff-search-input::placeholder{color:var(--text-muted)}.staff-search-results{margin-top:var(--spacing-xs);color:var(--text-secondary);font-size:.875rem}.staff-section{margin-bottom:var(--space-6)}.staff-section:last-child{margin-bottom:0}.staff-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--puls-neutral-800);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--puls-primary-200);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);display:flex;align-items:center;gap:var(--space-2)}.staff-section-title:before{content:"";width:3px;height:18px;background:var(--sage);border-radius:var(--radius-full)}.staff-section-count{font-size:.875rem;font-weight:400;color:var(--text-muted);text-transform:none;letter-spacing:normal}.staff-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3)}@keyframes staffCardFadeIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.staff-card{animation:staffCardFadeIn .4s ease-out both}.staff-card:nth-child(1){animation-delay:.05s}.staff-card:nth-child(2){animation-delay:.1s}.staff-card:nth-child(3){animation-delay:.15s}.staff-card:nth-child(4){animation-delay:.2s}.staff-card:nth-child(5){animation-delay:.25s}.staff-card:nth-child(6){animation-delay:.3s}.staff-card{background:var(--card-bg);border-radius:var(--radius-lg, 12px);padding:var(--space-4);box-shadow:0 2px 8px var(--card-shadow);border:2px solid transparent;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;cursor:pointer;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:0}.staff-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--card-shadow-hover);border-color:var(--puls-primary-200, rgba(74, 103, 65, .4));background:var(--puls-neutral-white)}@media(hover:none){.staff-card:hover{transform:none}}.staff-card-header{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--puls-neutral-100)}.staff-avatar{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:var(--radius-md);background:var(--stats-icon-bg);color:var(--puls-neutral-800);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex-shrink:0;letter-spacing:var(--letter-spacing-tight)}.staff-avatar-admin{background:var(--action-admin-icon-bg);color:var(--action-admin-icon-text)}.staff-card-admin{border-left:4px solid var(--puls-secondary-slate-blue, #6B6259)}.staff-card-inactive{opacity:.65;background:var(--puls-neutral-50, #F7F3EC)}.staff-card-inactive:hover{opacity:.85}.staff-card-info{flex:1;min-width:0}.staff-name{margin:0 0 var(--space-1) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--text-slate-dark, var(--puls-neutral-800));word-wrap:break-word;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight, -.02em)}.staff-admin-badge{display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--puls-secondary-slate-blue);background:var(--puls-lavender-100);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-top:var(--space-2);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);box-shadow:var(--shadow-xs)}.staff-title{margin:0;font-size:var(--font-size-sm);color:var(--puls-neutral-600);font-weight:var(--font-weight-medium)}.staff-card-details{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-2);flex:1;min-width:0}.staff-detail-item{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;overflow:hidden}.staff-detail-label{font-size:.7rem;font-weight:var(--font-weight-semibold);color:var(--text-slate-medium, var(--text-muted));text-transform:uppercase;letter-spacing:var(--letter-spacing-wider, .05em)}.staff-detail-value{font-size:.8125rem;color:var(--text-slate-dark, var(--text-color));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-detail-value.staff-detail-value-empty{color:var(--text-slate-light, var(--text-muted));font-style:italic}.staff-card-link{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:.75rem;color:var(--text-primary, var(--puls-neutral-800));background:var(--action-admin-link-bg, var(--puls-neutral-100));flex-shrink:0;transition:all .3s ease;text-decoration:none;border:none;cursor:pointer;font-family:inherit}.staff-card:hover .staff-card-link{background:var(--action-admin-link-hover, var(--puls-primary-100))}@media(max-width:768px){.staff-cards{grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.staff-card{padding:var(--space-3) var(--space-4)}.staff-avatar{width:36px;height:36px;min-width:36px;min-height:36px;font-size:.75rem}.staff-name{font-size:var(--font-size-sm)}}@media(max-width:480px){.staff-cards{grid-template-columns:1fr}.staff-card{padding:var(--space-3) var(--space-4)}.staff-card-header{gap:var(--space-2);margin-bottom:var(--space-2);padding-bottom:var(--space-2)}.staff-avatar{width:32px;height:32px;min-width:32px;min-height:32px;font-size:.7rem}.staff-detail-label{font-size:.65rem}}.no-staff{text-align:center;color:var(--text-muted);padding:var(--spacing-xl);background:#fefcf9;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.open-shifts-header{margin-bottom:var(--spacing-lg)}.open-shifts-controls{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.week-selector{display:flex;align-items:center;gap:var(--spacing-md);background:#fefcf9;padding:var(--spacing-md);border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.week-display{display:flex;align-items:center;gap:var(--spacing-md);flex:1;justify-content:center;font-weight:600;color:var(--text-color)}.filter-buttons{display:flex;gap:var(--spacing-sm);background:#fefcf9;padding:var(--spacing-md);border-radius:var(--border-radius);box-shadow:var(--box-shadow);flex-wrap:wrap}.open-shifts-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.week-group{background:#fefcf9;padding:var(--spacing-lg);border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.week-group-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-color)}.day-group{margin-bottom:var(--spacing-lg)}.day-group-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light)}.open-shifts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}.open-shift-card{background:#fefcf9;border:1px solid var(--border-light);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--box-shadow);transition:var(--transition)}.open-shift-card:hover{box-shadow:var(--box-shadow-hover);transform:translateY(-2px)}.open-shift-card.fully-staffed{opacity:.7;border-color:var(--success-color, #4A6741)}.open-shift-header{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.shift-type-badge{background-color:var(--color-neutral-gray);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);color:#fff;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.location-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--background-light);border-radius:var(--border-radius);font-size:.875rem;color:var(--text-color)}.positions-progress{width:100%;height:8px;margin-bottom:var(--spacing-xs);border:none;border-radius:4px;overflow:hidden;appearance:none;background:var(--background-light)}.positions-progress::-webkit-progress-bar{background:var(--background-light);border-radius:4px}.positions-progress::-webkit-progress-value{background:var(--primary-color);border-radius:4px}.positions-progress::-moz-progress-bar{background:var(--primary-color);border-radius:4px}.positions-indicator.full .positions-progress::-webkit-progress-value{background:var(--color-success-darker)}.positions-indicator.full .positions-progress::-moz-progress-bar{background:var(--color-success-darker)}.positions-text{font-size:.875rem;color:var(--text-muted);font-weight:500}.open-shift-details{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.detail-row{display:flex;gap:var(--spacing-sm)}.detail-label{font-size:.875rem;color:var(--text-muted);font-weight:500;min-width:80px}.detail-value{font-size:.875rem;color:var(--text-color);flex:1}.open-shift-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.open-shift-actions button{flex:1;min-width:100px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);font-size:.875rem;font-weight:500}.no-shifts{text-align:center;color:var(--text-muted);padding:var(--spacing-xl);background:#fefcf9;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.section-description{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#f5edd8;border-left:4px solid #C4963A;border-radius:var(--border-radius);font-size:.875rem;color:#8b6520}.info-message{padding:var(--spacing-lg);background:#f5edd8;border-left:4px solid #C4963A;border-radius:var(--border-radius);color:#8b6520;text-align:center;font-size:.9375rem}.time-reports-admin{padding:var(--spacing-md)}.time-reports-admin h2{margin-bottom:var(--spacing-lg);color:var(--text-color)}.staff-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--puls-neutral-100)}.staff-header h2{margin:0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--puls-neutral-800)}.staff-search-filters{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:flex-end}.staff-add-action{margin-left:auto;flex-shrink:0}.staff-add-action .btn-primary{white-space:nowrap;background:var(--color-action-green);color:var(--color-white);font-size:var(--font-control-size, var(--font-size-sm, .875rem));font-weight:var(--font-control-weight, var(--font-weight-semibold));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);border:none;border-radius:var(--radius-full, 9999px);min-height:32px;padding:var(--space-2, .5rem) var(--space-3, .75rem);transition:background .2s ease}.staff-add-action .btn-primary:hover:not(:disabled){background:var(--color-action-green-hover)}.staff-add-action .btn-primary:disabled{opacity:.6}.staff-search-wrapper-full{position:relative;flex:1;min-width:240px}.staff-search-clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1rem;color:var(--text-secondary);padding:2px;display:flex;align-items:center;justify-content:center}.staff-search-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:1rem;pointer-events:none}.staff-filter-select{padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.875rem;line-height:1.25;background:#fefcf9;cursor:pointer;width:max-content;min-width:8ch;box-sizing:border-box;flex:0 0 auto;white-space:nowrap}.staff-filter-select-agreement,.staff-filter-select-type{min-width:140px}.staff-filter-select .custom-select-value,.staff-filter-select .custom-select-placeholder{overflow:visible;text-overflow:unset}.staff-filter-buttons .custom-select{width:fit-content}.staff-filter-buttons .custom-select-panel{width:max-content;min-width:100%;right:auto}.staff-clear-filters-btn{padding:.5rem 1rem;background:var(--color-beige-bg);color:var(--color-text-primary);border:none;border-radius:10px;font-weight:600;font-size:.875rem;cursor:pointer;white-space:nowrap;flex:0 0 auto;transition:all .2s}.staff-clear-filters-btn:hover{background:var(--color-beige-hover);transform:translateY(-1px)}.staff-filter-buttons{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;overflow:visible}.staff-filter-checkbox{display:inline-flex;align-items:center;gap:var(--space-1);font-size:.875rem;white-space:nowrap;cursor:pointer}.staff-card-info-flex{flex:1}.staff-badges-container{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:2px}.staff-admin-badge-inline{padding:1px 4px;background:var(--color-info);color:#fff;border-radius:var(--radius-full);font-size:.65rem;font-weight:500}.staff-status-badge{display:inline-flex;align-items:center;gap:2px;padding:1px var(--space-1);border-radius:var(--radius-full);font-size:.65rem;font-weight:var(--font-weight-medium);margin-right:0;margin-top:0;box-shadow:var(--shadow-xs);transition:var(--transition)}.staff-status-badge:hover{transform:scale(1.05)}.staff-status-badge.incomplete{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.staff-status-badge.warning{background:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-border)}.staff-status-badge.success{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.staff-status-badge.pending{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.staff-section-pending .staff-section-title:before{background:var(--puls-warning-dark, #E0A800)}.staff-section-subtitle{font-size:var(--font-size-sm);color:var(--text-muted);margin:calc(-1 * var(--space-2)) 0 var(--space-4) 0}.staff-card-pending{border-left:4px solid var(--puls-warning-dark, #E0A800)}.staff-section-guests .staff-section-title:before{background:var(--color-text-muted, #6B6259)}.staff-card-guest{border-left:4px solid var(--color-text-muted, #6B6259)}.staff-card-pending.staff-card-guest{cursor:pointer}.staff-card-guest .staff-status-badge.guest{background:var(--color-bg-hover);color:var(--text-muted)}.supplementary-info-section{margin-top:30px;padding-top:20px;border-top:2px solid var(--color-border-medium)}.supplementary-info-title{margin-bottom:20px;font-size:1.1rem;font-weight:600}.info-text-box{margin-top:8px;padding:10px;background:var(--color-info-bg-subtle);border:1px solid var(--color-info-border-subtle);border-radius:4px;font-size:.875rem;color:var(--color-info-text)}.agreement-current-info{margin-top:10px;padding:10px;background-color:var(--color-bg-hover);border-radius:4px}.agreement-benefits-section{margin-top:15px;padding:15px;background:var(--color-bg-subtle);border-radius:4px;border:1px solid var(--color-border-medium)}.agreement-benefits-title{margin-top:0;margin-bottom:15px;font-size:1rem}.agreement-benefits-hint{display:block;margin-top:10px;color:var(--color-text-secondary);font-style:italic}.agreement-salary-readonly{margin-top:15px;padding:15px;background:var(--color-bg-subtle);border-radius:4px;border:1px dashed var(--color-border-medium)}.agreement-benefits-readonly{opacity:.95}.salary-info-import-banner{margin:var(--spacing-md, 12px) 0;padding:12px 14px;background:var(--color-bg-subtle, #f5f5f0);border:1px solid var(--color-border-medium, #ddd);border-radius:6px;font-size:.9rem;line-height:1.45;color:var(--color-text-secondary, #444)}.salary-info-import-banner p{margin:0}.agreement-readonly-line{margin:.35rem 0;font-size:.9375rem}.agreement-readonly-label{font-weight:600;color:var(--color-text-secondary)}.form-label-inline{margin-bottom:15px;display:flex;align-items:center;gap:10px}.form-label-inline-bold{font-weight:600}.time-bank-nested{margin-left:30px;margin-top:15px}.form-hint-small{color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--spacing-sm);margin-left:8px;display:inline}.agreement-status-active{color:var(--color-success-darker)}.agreement-status-inactive{color:var(--color-neutral-gray)}.agreement-status-bold{color:var(--color-success-darker);font-weight:var(--font-weight-semibold)}.date-filters{margin-bottom:20px}.salary-summary{margin-bottom:20px;padding:16px;background:var(--color-bg-subtle);border-radius:8px}.admin-settings-page{width:100%;min-width:0;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;padding:0;min-height:0;overflow:visible;background:transparent;animation:none}@keyframes payrollPeriodsFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-settings-page .settings-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-settings-page .settings-tab{flex-shrink:0;padding:var(--space-2) var(--space-5);font-size:.9375rem;font-weight:600;color:var(--color-text-subheading);background:var(--color-bg-white);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);box-shadow:0 2px 8px var(--color-shadow-light);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.admin-settings-page .settings-tab:hover{color:var(--color-text-heading);background:var(--color-bg-white);box-shadow:0 4px 12px var(--color-shadow-light)}.admin-settings-page .settings-tab--active{color:var(--sage);background:var(--color-bg-white);border:1px solid var(--color-border-subtle);border-left:4px solid var(--sage);box-shadow:0 2px 8px var(--color-shadow-light)}.admin-settings-page .settings-tab--active:hover{box-shadow:0 4px 12px var(--color-shadow-light)}.admin-settings-page .header-greeting{margin-bottom:var(--space-3)}.admin-settings-page .header-greeting h1{font-family:var(--font-display);font-size:1.75rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading);letter-spacing:.02em;margin:0}.admin-settings-page .header-greeting p{font-family:var(--font-display);font-size:.9375rem;font-weight:600;color:var(--color-text-subheading);margin-top:var(--space-1)}.admin-settings-page .settings-section .payroll-settings-panel{width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;background:var(--color-bg-white);border-radius:12px;padding:22px 24px;margin-bottom:var(--space-3);border:1px solid var(--color-border-subtle);box-shadow:none}.admin-settings-page .settings-section .payroll-settings-panel__head{display:flex;flex-direction:column;gap:4px;margin-bottom:18px}.admin-settings-page .settings-section .payroll-settings-panel__title{font-size:1.125rem;font-weight:var(--font-weight-semibold);margin:0;color:var(--color-text-heading)}.admin-settings-page .settings-section .payroll-settings-panel__desc{font-size:.8125rem;color:var(--color-text-subheading);margin:0;line-height:1.45;max-width:36rem}.admin-settings-page .settings-section .payroll-settings-hint{margin:6px 0 0;font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.admin-settings-page .settings-section .payroll-period-body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem 1.75rem;align-items:stretch;margin-bottom:1.125rem}.admin-settings-page .settings-section .payroll-settings-preview{background:var(--sage-alpha-8);border:1px solid var(--color-border-subtle);border-radius:var(--radius-base);padding:12px 14px;margin:0;min-width:0;display:flex;flex-direction:column;justify-content:center}.admin-settings-page .settings-section .payroll-settings-preview__label{display:block;font-size:.75rem;font-weight:var(--font-weight-semibold);margin-bottom:4px;color:var(--sage-dark)}.admin-settings-page .settings-section .payroll-settings-preview__text{margin:0;font-size:.8125rem;color:var(--color-text-subheading);line-height:1.45}.admin-settings-page .settings-section .payroll-settings-actions{margin-top:0}.admin-settings-page .settings-section .payroll-period-fields{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem 1.25rem;margin:0}.admin-settings-page .settings-section .payroll-period-field{margin-bottom:0;flex:0 0 auto}.admin-settings-page .settings-section .payroll-period-field label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:6px}.admin-settings-page .settings-section .payroll-period-field .custom-select{width:6.5rem;max-width:100%}.admin-settings-page .settings-section .payroll-period-template-section .template-section-header-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-2)}.admin-settings-page .settings-section .payroll-period-template-section .template-section-title{font-size:1rem;font-weight:600;margin:0;color:var(--color-text-heading)}.admin-settings-page .settings-section .payroll-period-template-section .template-section-description-compact{font-size:.8125rem;color:var(--color-text-subheading);margin:0;line-height:1.5}.admin-settings-page .settings-section .payroll-period-template-section .template-section-example-inline{color:var(--color-text-muted)}.admin-settings-page .settings-section .payroll-period-template-section .template-form-actions-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row .form-group{flex:0 0 auto;margin-bottom:0}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row .form-group label{margin-bottom:var(--space-1)}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row label{font-size:.8125rem}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row select{min-width:4rem;padding:var(--space-1) var(--space-2);font-size:.875rem}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row select:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #4a674126}.admin-settings-page .settings-section .payroll-period-template-section .template-save-wrapper{display:flex;flex-direction:column;align-items:flex-start}.admin-settings-page .settings-section .payroll-period-template-section .template-save-wrapper .template-save-label{display:block;margin-bottom:var(--space-1);font-size:.8125rem;color:transparent;-webkit-user-select:none;user-select:none;line-height:1.2}.admin-settings-page .settings-section .payroll-period-template-section .form-error{background:var(--color-error-bg-subtle);color:var(--color-error-red);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);margin-bottom:var(--space-3);font-size:.8125rem}.admin-settings-page .settings-section .benefit-config-section{background:var(--color-bg-white);border-radius:12px;padding:22px 24px;margin-bottom:var(--space-3);box-shadow:none;border:1px solid var(--color-border-subtle)}.admin-settings-page .settings-section .benefit-config-section .benefit-config-form .form-error{background:var(--color-error-bg-subtle);color:var(--color-error-red);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);margin-bottom:var(--space-2);font-size:.8125rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-2);margin-bottom:18px}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-left{flex:0 1 auto}.admin-settings-page .settings-section .benefit-config-section .benefit-config-title{font-size:1.125rem;font-weight:var(--font-weight-semibold);margin:0;color:var(--color-text-heading)}.admin-settings-page .settings-section .benefit-config-section .benefit-config-description{font-size:.8125rem;color:var(--color-text-subheading);margin:4px 0 0;line-height:1.45;max-width:36rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-right{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-right .form-group{margin-bottom:0}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-right label{font-size:.75rem;margin-bottom:var(--space-1)}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table th{text-align:left;font-weight:600;color:var(--color-text-heading);padding:var(--space-1) var(--space-2) var(--space-1) 0;font-size:.75rem;white-space:nowrap}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table td{padding:var(--space-1) var(--space-2) var(--space-1) 0;vertical-align:middle}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table .benefit-config-label{font-weight:500;color:var(--color-text-heading);min-width:7rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table .benefit-config-empty{color:var(--color-text-muted);font-size:.8125rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table input{width:5rem;max-width:6rem;padding:var(--space-1) var(--space-2);font-size:.875rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table input:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #4a674126}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table .benefit-config-cell-numeric{min-width:5rem;max-width:6rem}.admin-settings-page .settings-section .benefit-config-section .benefit-config-table .benefit-config-value{font-size:.875rem;font-variant-numeric:tabular-nums;color:var(--color-text-heading)}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-empty{font-size:.875rem;color:var(--color-text-subheading);margin:var(--space-2) 0 0}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table-wrap{width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table{width:100%;border-collapse:separate;border-spacing:0}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table thead th{text-align:left;font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-subheading);background:var(--sage-alpha-8);padding:10px 12px;border-bottom:1px solid var(--ink-light, #d4cbbf);white-space:nowrap}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td{padding:12px;border-bottom:1px solid var(--ink-light, #d4cbbf);vertical-align:middle;color:var(--color-text-heading)}.admin-settings-page .settings-section .benefits-catalog-section.payroll-settings-panel{min-width:0}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table{table-layout:fixed;width:100%}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table th,.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table td{overflow:hidden;vertical-align:middle}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--name{width:34%}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--days{width:9%;white-space:nowrap}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--time,.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--comp{width:11%;white-space:nowrap}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--stack{width:14%;white-space:nowrap;text-overflow:ellipsis}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .ob-rules-catalog-col--round{width:12%;white-space:nowrap;text-overflow:ellipsis}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table .benefit-catalog-actions{white-space:nowrap;width:5.5rem}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table tbody tr:last-child td{border-bottom:none}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table tbody tr:hover td{background:#f7f3ec8c}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table .benefit-config-label{font-weight:600}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-actions-col{width:5.5rem}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-actions{text-align:right}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-actions__group{display:inline-flex;gap:6px;justify-content:flex-end;align-items:center;vertical-align:middle}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-base);background:var(--color-bg-white);color:var(--color-text-heading);cursor:pointer}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-icon-btn:hover{background:var(--color-bg-light)}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-icon-btn--danger{color:var(--color-error-red)}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-primary{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;min-width:0;max-width:100%}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-name{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0;max-width:100%}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-name__text{min-width:0;flex:1 1 10rem;white-space:normal;overflow-wrap:anywhere;line-height:1.35}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-name .ob-rule-badge{flex-shrink:0}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-agreement{display:block;min-width:0;max-width:100%;font-size:.75rem;font-weight:var(--font-weight-regular, 400);color:var(--color-text-muted);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.02em;line-height:1.2;white-space:nowrap}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-badge--system{background:var(--sage-alpha-8, rgba(74, 103, 65, .12));border:1px solid var(--sage, #4a6741);color:var(--sage-dark, #2f4529)}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-badge--custom{background:var(--sage, #4a6741);border:1px solid var(--sage-dark, #2f4529);color:#fff}.form-modal-field__hint{margin:.35rem 0 0;font-size:.85rem;color:var(--color-text-muted, #6b7280);line-height:1.35}.form-modal-v2 .ob-rule-time-interval{width:100%}.form-modal-v2 .ob-rule-time-input{width:100%;box-sizing:border-box}.benefit-form-section-bar{margin:16px 0 12px;padding:7px 10px;border-radius:6px;background:var(--sage-alpha-8);border:1px solid var(--color-border-subtle);color:var(--sage-dark);font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}.benefit-form-help{margin:var(--space-1) 0 0;font-size:.75rem;color:var(--color-text-subheading);line-height:1.4}.benefit-form-amount-row{display:flex;align-items:center;gap:var(--space-1)}.benefit-form-amount-row input{max-width:8rem}.benefit-form-amount-suffix{font-size:.875rem;color:var(--color-text-subheading)}.benefit-form-readonly-value{display:block;font-size:.875rem;font-variant-numeric:tabular-nums;color:var(--color-text-heading);padding:var(--space-1) 0}.admin-settings-page .settings-section .schedule-settings-section.payroll-settings-panel{min-width:0}.admin-settings-page .settings-section .schedule-settings-section .form-error{background:var(--color-error-bg-subtle);color:var(--color-error-red);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);margin-bottom:var(--space-3);font-size:.8125rem}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-options{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option{display:flex;flex-direction:column;gap:.35rem;margin:0;padding:14px 16px;border-radius:12px;border:1px solid var(--color-border-subtle);background:var(--cream, #f7f3ec);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option:hover:not(.schedule-settings-option--disabled){border-color:var(--ink-light, #d4cbbf);background:var(--color-bg-white)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option--checked{border-color:var(--sage);background:var(--sage-alpha-8, rgba(74, 103, 65, .08))}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option--disabled{opacity:.55;cursor:not-allowed}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row{display:flex;align-items:center;gap:.65rem;min-width:0}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]{flex-shrink:0;width:1.125rem;height:1.125rem;margin:0;accent-color:var(--sage)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__label{font-size:.875rem;font-weight:var(--font-weight-medium, 500);color:var(--color-text-heading);line-height:1.35}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__hint{display:block;margin:0 0 0 1.775rem;font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-actions{margin-top:0}.admin-settings-page .settings-section .time-settings-form .form-error{background:var(--color-error-bg-subtle);color:var(--color-error-red);padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);margin-bottom:var(--space-3);font-size:.8125rem}.admin-settings-page .settings-section .time-settings-form .time-settings-section{background:var(--color-bg-white);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);box-shadow:0 2px 8px var(--color-shadow-light);border:1px solid var(--color-border-subtle);border-left:4px solid var(--sage)}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-title{font-size:1rem;font-weight:600;margin:0 0 var(--space-1) 0;color:var(--color-text-heading)}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-description{font-size:.8125rem;color:var(--color-text-subheading);margin:0 0 var(--space-3) 0;line-height:1.5}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field label{display:block;font-size:.8125rem;font-weight:500;color:var(--color-text-heading);margin-bottom:var(--space-1)}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field .time-report-time-input,.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field input[type=number]{width:100%;max-width:8rem;min-height:2.5rem;box-sizing:border-box;padding:.55rem .75rem;border:1px solid var(--color-border-input);border-radius:var(--radius-base, 8px);background:var(--color-bg-white);color:var(--color-text-heading);font:inherit;font-size:.875rem;font-variant-numeric:tabular-nums;outline:none}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field .time-report-time-input{max-width:8rem;text-align:left}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field input[type=number]{max-width:5.5rem}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field .time-report-time-input:focus,.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field input[type=number]:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a674126}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field .time-report-time-input:disabled,.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field input[type=number]:disabled{cursor:not-allowed;opacity:.58}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-hint{font-size:.75rem;color:var(--color-text-muted);margin:var(--space-1) 0 0 0;line-height:1.4}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-grid{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-2)}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-row{display:grid;grid-template-columns:max-content auto max-content;align-items:end;justify-content:start;column-gap:1rem;row-gap:var(--space-3)}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-label{display:flex;align-items:center;justify-content:center;min-height:2.5rem;font-size:.875rem;font-weight:600;color:var(--color-text-heading);text-align:center}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-cell{width:max-content;max-width:none;margin-bottom:0}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-cell input[type=number]{width:5.5rem;max-width:5.5rem}.admin-settings-page .settings-section .time-settings-form .time-settings-actions{margin-top:var(--space-3)}.admin-settings-page .settings-work-groups-section.admin-work-groups-page{padding:0;min-height:0;animation:none}@media(max-width:768px){.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-row{grid-template-columns:1fr;max-width:none;gap:var(--space-2)}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-label{justify-content:flex-start;min-height:auto;padding:var(--space-1) 0 0}.admin-settings-page .settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.admin-settings-page .settings-section .payroll-settings-panel{padding:18px 16px}.admin-settings-page .settings-section .payroll-period-body{grid-template-columns:1fr}.admin-settings-page .settings-section .payroll-period-field .custom-select,.admin-settings-page .settings-section .payroll-period-field select{width:6.5rem;max-width:100%}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row{flex-direction:column;align-items:stretch}.admin-settings-page .settings-section .payroll-period-template-section .template-form-row .form-group,.admin-settings-page .settings-section .payroll-period-template-section .template-form-row select{width:100%;min-width:0}.admin-settings-page .settings-section .payroll-period-template-section .template-form-actions-row,.admin-settings-page .settings-section .payroll-period-template-section .template-section-header-row{flex-direction:column;align-items:stretch}}@media(max-width:640px){.admin-settings-page .settings-section .benefit-config-section .benefit-config-header{flex-direction:column;align-items:stretch}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-right{justify-content:stretch}.admin-settings-page .settings-section .benefit-config-section .benefit-config-header-right .puls-btn,.admin-settings-page .settings-section .payroll-settings-actions .puls-btn{width:100%}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table thead{display:none}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table,.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table tbody{display:block;width:100%}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table tr{display:block;margin-bottom:12px;padding:12px;border:1px solid var(--color-border-subtle);border-radius:10px;background:var(--color-bg-white)}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table tbody tr:hover td{background:transparent}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;box-sizing:border-box;padding:10px 0;border-bottom:1px solid var(--ink-light, #d4cbbf)}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td:last-child{border-bottom:none;padding-bottom:0}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td:before{content:attr(data-label);flex:0 0 38%;font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td.benefit-catalog-actions{justify-content:flex-end}.admin-settings-page .settings-section .benefits-catalog-section .benefit-catalog-table td.benefit-catalog-actions:before{margin-right:auto}.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table th,.admin-settings-page .settings-section .benefits-catalog-section .ob-rules-catalog-table td{overflow:visible;width:100%!important;white-space:normal;text-overflow:unset}.admin-settings-page .settings-section .benefits-catalog-section .ob-rule-catalog-agreement{white-space:normal}.benefit-form-amount-row input{max-width:none;width:100%}}.admin-settings-page .settings-section{display:flex;min-width:0;flex-direction:column;gap:.875rem}.settings-segmented-control{display:flex;gap:.25rem;margin-bottom:.875rem;padding:.25rem;border-radius:11px;background:var(--color-bg-hover)}.settings-segmented-control__tab{flex:1;min-height:2.25rem;padding:.5rem .75rem;border:0;border-radius:8px;background:transparent;color:var(--color-text-subheading);font-size:.75rem;font-weight:var(--font-weight-semibold);cursor:pointer}.settings-segmented-control__tab.is-active{background:var(--color-bg-white);color:var(--color-text-heading);box-shadow:0 2px 6px var(--color-shadow-medium)}.settings-segmented-control__tab:focus-visible,.settings-tab-panel:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.settings-tab-count{display:inline-flex;min-width:1.2rem;min-height:1.2rem;align-items:center;justify-content:center;margin-left:.25rem;padding:.1rem .35rem;border-radius:999px;background:var(--color-bg-light);color:var(--color-text-subheading);font-size:.625rem}.settings-tab-count--attention{background:var(--color-warning-bg);color:var(--color-warning-text)}.settings-tab-panel{min-width:0}.admin-settings-page .settings-section .payroll-settings-panel,.admin-settings-page .settings-section .benefit-config-section,.admin-settings-page .settings-section .time-settings-form .time-settings-section{margin:0 0 .875rem;padding:1.25rem 1.375rem;border:1px solid var(--color-border-subtle);border-left:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-white);box-shadow:none}.admin-settings-page .settings-section .payroll-settings-panel__head{margin-bottom:1rem}.admin-settings-page .settings-section .payroll-settings-panel__title,.admin-settings-page .settings-section .benefit-config-section .benefit-config-title{font-size:.9375rem}.admin-settings-page .settings-section .payroll-settings-panel__desc,.admin-settings-page .settings-section .benefit-config-section .benefit-config-description,.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-description{max-width:40rem;color:var(--color-text-subheading);font-size:.75rem}.admin-settings-page .settings-section .payroll-period-body{grid-template-columns:minmax(15rem,.8fr) minmax(18rem,1.2fr);gap:1rem}.admin-settings-page .settings-section .payroll-settings-preview{border-radius:10px}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:.875rem;border-radius:11px;background:var(--color-bg-light)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row{display:contents}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]{position:relative;grid-column:2;grid-row:1 / span 2;width:2.375rem;height:1.375rem;align-self:center;appearance:none;border:0;border-radius:999px;background:var(--color-border-input);cursor:pointer;transition:background-color .15s ease}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:1rem;height:1rem;border-radius:50%;background:var(--color-bg-white);box-shadow:0 1px 3px var(--color-shadow-darker);transition:transform .15s ease}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]:checked{background:var(--sage)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]:checked:after{transform:translate(1rem)}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__row input[type=checkbox]:focus-visible{outline:3px solid var(--sage-alpha-12);outline-offset:2px}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__label{grid-column:1}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option__hint{grid-column:1;margin-left:0}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-title{font-size:.9375rem}.admin-settings-page .settings-section .time-settings-form .time-settings-field{max-width:20rem}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-row{column-gap:1.25rem}.admin-settings-page .settings-section .time-settings-auto-close-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.admin-settings-page .settings-section .time-settings-auto-close-grid .time-settings-field{max-width:none;margin:0}.admin-settings-page .settings-section .time-settings-actions{display:flex;justify-content:flex-end;margin:1.25rem -1.375rem -1.25rem;padding:.875rem 1.375rem}.settings-data-panel{overflow:hidden;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-white)}.settings-data-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.375rem 1rem;border-bottom:1px solid var(--color-border-subtle)}.settings-data-panel__header h2{margin:0;color:var(--color-text-heading);font-size:.9375rem}.settings-data-panel__header p{max-width:40rem;margin:.25rem 0 0;color:var(--color-text-subheading);font-size:.75rem}.settings-data-panel__body{min-width:0}.settings-data-panel__footer{display:flex;justify-content:flex-end;gap:.625rem;padding:.875rem 1.375rem;border-top:1px solid var(--color-border-subtle);background:var(--color-bg-white)}.settings-form-panel__body{padding:1.25rem 1.375rem}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.settings-callout{margin-top:1rem;padding:.75rem .875rem;border-radius:10px;background:var(--color-bg-light);color:var(--color-text-subheading);font-size:.6875rem;line-height:1.45}.settings-callout--sage{background:var(--sage-soft, #e8f0e4);color:var(--sage-dark, #2d4229)}.settings-callout strong{color:inherit;font-size:inherit;font-weight:var(--font-weight-semibold)}.settings-callout p{margin:.25rem 0 0;color:inherit;font-size:inherit}.settings-field-hint{margin:.35rem 0 0;color:var(--color-text-muted);font-size:.625rem;line-height:1.4}.settings-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:999px;background:var(--sage-soft, #e8f0e4);color:var(--sage-dark, #2d4229);font-size:.625rem;font-weight:var(--font-weight-semibold);white-space:nowrap}.settings-badge--gold{background:var(--gold-pale, #f5edd8);color:#795716}.settings-badge--muted{background:var(--color-bg-light);color:var(--color-text-subheading)}.settings-table-wrap{width:100%;min-width:0;overflow-x:auto}.settings-data-table{width:100%;border-collapse:collapse}.settings-data-table th{padding:.625rem .75rem;border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-light);color:var(--color-text-muted);text-align:left;font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.settings-data-table td{padding:.75rem;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-subheading);font-size:.75rem}.settings-data-table tbody tr:last-child td{border-bottom:0}.settings-data-table tbody tr:hover td{background:#f7f3ec8c}.settings-data-table__primary{display:inline-flex;align-items:center;gap:.55rem;color:var(--color-text-heading);font-weight:var(--font-weight-semibold)}.settings-data-table__dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--sage)}.settings-data-table__actions{width:1%;white-space:nowrap;text-align:right}.settings-data-table__actions-group{display:flex;justify-content:flex-end;gap:.375rem}.settings-data-table--catalog .settings-data-table__actions-group{opacity:0;transition:opacity .15s ease}.settings-data-table--catalog tr:hover .settings-data-table__actions-group,.settings-data-table--catalog tr:focus-within .settings-data-table__actions-group{opacity:1}.settings-data-table__actions .puls-btn+.puls-btn{margin-left:.375rem}.settings-catalog-panel.settings-data-panel{padding:0}@media(hover:none),(max-width:768px){.settings-data-table--catalog .settings-data-table__actions-group{opacity:1}}.settings-empty-state{display:grid;min-height:10rem;place-items:center;align-content:center;gap:.75rem;padding:1.5rem;color:var(--color-text-subheading);text-align:center}.settings-empty-state p{margin:0}.settings-state{display:grid;min-height:10rem;place-items:center;align-content:center;gap:.5rem;padding:1.5rem;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-white);color:var(--color-text-subheading);text-align:center}.settings-state__icon{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:10px;background:var(--sage-alpha-8);color:var(--sage-dark)}.settings-state--error .settings-state__icon{background:var(--color-error-bg-subtle);color:var(--color-error-text)}.settings-state strong{color:var(--color-text-heading);font-size:.8125rem}.settings-state p{max-width:28rem;margin:0;font-size:.75rem}.admin-settings-page .settings-section .settings-catalog-panel{overflow:hidden;padding:0}.settings-catalog-panel .benefit-config-header{align-items:flex-start;flex-wrap:nowrap;margin:0;padding:1.25rem 1.375rem 1rem;border-bottom:1px solid var(--color-border-subtle)}.settings-catalog-panel .benefit-config-header-left{flex:1 1 auto;min-width:0}.settings-catalog-panel .benefit-config-header-right{flex:0 0 auto}.settings-catalog-panel .benefit-config-header-right .puls-btn i{margin-right:.3rem}.settings-catalog-panel .settings-state{min-height:12rem;border:0;border-radius:0}.settings-catalog-table-wrap{margin:0;overflow-x:auto;border:0;border-radius:0}.settings-catalog-table{width:100%;min-width:38rem;border-collapse:collapse;table-layout:auto}.settings-catalog-table.ob-rules-catalog-table{min-width:54rem}.settings-catalog-table thead{background:var(--color-bg-light)}.settings-catalog-table thead th{padding:.625rem .75rem;border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-light);color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-align:left;text-transform:uppercase}.settings-catalog-table tbody td{padding:.75rem;border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-white);color:var(--color-text-subheading);font-size:.75rem;vertical-align:middle}.settings-catalog-table tbody tr:last-child td{border-bottom:0}.settings-catalog-table tbody tr:hover td{background:#f7f3ec8c}.settings-catalog-table .benefit-config-label,.settings-catalog-table .ob-rule-catalog-name__text{color:var(--color-text-heading);font-weight:var(--font-weight-semibold)}.settings-catalog-table .ob-rule-catalog-agreement{margin-top:.2rem;color:var(--color-text-muted);font-size:.6875rem}.settings-catalog-table .ob-rule-badge{padding:.18rem .45rem;border:0;border-radius:999px;font-size:.625rem;font-weight:var(--font-weight-semibold)}.settings-catalog-table .ob-rule-badge--system{background:var(--sage-alpha-12);color:var(--sage-dark)}.settings-catalog-table .ob-rule-badge--custom{background:var(--color-warning-bg);color:var(--color-warning-text)}.settings-data-table__actions .puls-btn-danger .fa-trash{font-size:.75rem;line-height:1}@media(max-width:768px){.settings-data-table__actions .puls-btn-tiny{flex:0 0 auto;min-height:var(--control-min-height-mobile, 40px)}.settings-segmented-control{gap:.25rem;margin-bottom:.875rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-segmented-control::-webkit-scrollbar{display:none}.settings-segmented-control__tab{flex:1 1 auto;min-width:max-content;white-space:nowrap}.admin-settings-page .settings-section .payroll-period-body{grid-template-columns:1fr}.admin-settings-page .settings-section .time-settings-form .time-settings-section{padding:1rem}.admin-settings-page .settings-section .time-settings-form .time-settings-field{max-width:none}.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field .time-report-time-input,.admin-settings-page .settings-section .time-settings-form .time-settings-section .time-settings-field input[type=number]{max-width:none;width:100%}.admin-settings-page .settings-section .time-settings-auto-close-grid{grid-template-columns:1fr}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;max-width:none}.admin-settings-page .settings-section .time-settings-form .time-settings-deviation-label{grid-column:1 / -1;grid-row:1;justify-content:flex-start;min-height:auto;color:var(--color-text-heading);font-weight:var(--font-weight-semibold)}.admin-settings-page .settings-section .time-settings-actions{margin-left:-1rem;margin-right:-1rem;margin-bottom:-1rem;padding:.875rem 1rem}.admin-settings-page .settings-section .schedule-settings-section .schedule-settings-option{gap:.75rem;padding:.875rem}.settings-data-panel__header{flex-direction:column;padding:1rem 1rem .875rem}.settings-data-panel__header .puls-btn{width:100%}.settings-form-panel__body{padding:1rem}.settings-form-grid{grid-template-columns:1fr}.settings-data-panel__footer{padding:.875rem 1rem}.settings-data-panel__footer .puls-btn{width:100%}.settings-catalog-panel .benefit-config-header{align-items:stretch;flex-direction:column}.settings-catalog-panel .benefit-config-header-right,.settings-catalog-panel .benefit-config-header-right .puls-btn{width:100%}.settings-catalog-table,.settings-catalog-table.ob-rules-catalog-table{min-width:0}.settings-catalog-table-wrap{overflow:visible;padding:.75rem}.settings-work-groups-section .settings-data-table thead,.settings-catalog-panel .settings-data-table thead{display:none}.settings-work-groups-section .settings-data-table,.settings-work-groups-section .settings-data-table tbody,.settings-catalog-panel .settings-data-table,.settings-catalog-panel .settings-data-table tbody{display:block;width:100%}.settings-work-groups-section .settings-table-wrap,.settings-catalog-panel .settings-table-wrap{overflow:visible;padding:.75rem}.settings-work-groups-section .settings-data-table tr,.settings-catalog-panel .settings-data-table tr{display:block;margin-bottom:.75rem;padding:.75rem;border:1px solid var(--color-border-subtle);border-radius:10px}.settings-work-groups-section .settings-data-table tr:last-child,.settings-catalog-panel .settings-data-table tr:last-child{margin-bottom:0}.settings-work-groups-section .settings-data-table td,.settings-catalog-panel .settings-data-table td{display:flex;width:100%;align-items:flex-start;justify-content:space-between;gap:.75rem;box-sizing:border-box;padding:.625rem 0;text-align:right;white-space:normal}.settings-work-groups-section .settings-data-table td:before,.settings-catalog-panel .settings-data-table td:before{content:attr(data-label);flex:0 0 34%;color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-align:left;text-transform:uppercase}.settings-work-groups-section .settings-data-table__actions,.settings-catalog-panel .settings-data-table__actions{justify-content:flex-end}}.admin-work-groups-page{width:100%;min-width:0;padding:0;animation:none;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-height:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-work-groups-page .header-greeting{margin-bottom:2rem}.admin-work-groups-page .header-greeting h1{font-family:var(--font-display);font-size:2.125rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading);letter-spacing:.02em;margin:0}.admin-work-groups-page .header-greeting p{font-family:var(--font-display);font-size:1.08rem;font-weight:600;color:var(--color-text-subheading);margin-top:.25rem}.admin-work-groups-page .bento-summary-row{display:flex;justify-content:flex-start;margin-bottom:1.5rem}.admin-work-groups-page .bento-summary-row .summary-action{display:flex;align-items:center;justify-content:flex-start}@media(max-width:768px){.admin-work-groups-page .bento-summary-row .summary-action{width:100%}.admin-work-groups-page .bento-summary-row .summary-action .btn-primary{flex:1}}.admin-work-groups-page .summary-action .btn-primary{background:var(--color-action-green);color:var(--color-white);border:none;border-radius:var(--radius-full, 9999px);font-size:var(--font-control-size, var(--font-size-sm, .875rem));font-weight:var(--font-control-weight, var(--font-weight-semibold));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);min-height:32px;padding:var(--space-2, .5rem) var(--space-3, .75rem);transition:background .2s ease}.admin-work-groups-page .summary-action .btn-primary:hover:not(:disabled){background:var(--color-action-green-hover)}.admin-work-groups-page .work-groups-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-5)}@media(max-width:640px){.admin-work-groups-page .work-groups-cards{grid-template-columns:1fr;gap:var(--space-3)}}.admin-work-groups-page .work-group-card{background:var(--card-bg);border-radius:var(--radius-lg, 12px);padding:var(--space-8);box-shadow:0 2px 8px var(--card-shadow);border:2px solid transparent;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:0}.admin-work-groups-page .work-group-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--card-shadow-hover);border-color:var(--puls-primary-200, rgba(74, 103, 65, .4));background:var(--puls-neutral-white, var(--color-bg-white))}@media(hover:none){.admin-work-groups-page .work-group-card:hover{transform:none}}.admin-work-groups-page .work-group-card .card-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-heading, var(--puls-neutral-800));margin-bottom:var(--space-2);line-height:1.3}.admin-work-groups-page .work-group-card .card-description{font-size:var(--font-size-sm);color:var(--color-text-subheading, var(--text-muted));margin-bottom:var(--space-6);flex:1;line-height:1.5}.admin-work-groups-page .work-group-card .card-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:auto}.admin-work-groups-page .empty-message{text-align:center;padding:3rem 2rem;color:var(--color-text-muted);font-size:1rem;margin:0;background:var(--color-bg-white);border-radius:16px;box-shadow:0 2px 8px var(--color-shadow-light)}.admin-work-groups-page .loading{text-align:center;padding:2rem;color:var(--color-text-muted);font-size:1rem}.work-groups-manager-modal__card{padding:1rem 1.1rem}.work-groups-manager__toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.work-groups-manager__toolbar p{margin:0;color:var(--color-text-subheading, var(--ink-mid));font-size:.8125rem;line-height:1.45}@media(max-width:768px){.work-groups-manager__toolbar{flex-direction:column}.work-groups-manager__toolbar .puls-btn{width:100%}.work-groups-manager .settings-data-table thead{display:none}.work-groups-manager .settings-data-table,.work-groups-manager .settings-data-table tbody{display:block;width:100%}.work-groups-manager .settings-data-table tr{display:block;margin-bottom:.75rem;padding:.75rem;border:1px solid var(--color-border-subtle);border-radius:10px}.work-groups-manager .settings-data-table tr:last-child{margin-bottom:0}.work-groups-manager .settings-data-table td{display:flex;width:100%;align-items:flex-start;justify-content:space-between;gap:.75rem;box-sizing:border-box;padding:.625rem 0;text-align:right;white-space:normal}.work-groups-manager .settings-data-table td:before{content:attr(data-label);flex:0 0 34%;color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-align:left;text-transform:uppercase}.work-groups-manager .settings-data-table__actions{justify-content:flex-end}}.schedule-grid-container{overflow-x:hidden;overflow-y:auto;margin-top:.5rem;border-radius:12px;border:1px solid #EDE7DC;background:var(--color-bg-white, #FEFCF9);box-shadow:0 2px 8px #0000000f;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:0 1 auto;height:fit-content;max-height:100%;min-height:0;min-width:0;width:100%}.schedule-grid-container::-webkit-scrollbar{width:0;height:0;display:none}.schedule-grid{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:var(--color-bg-white, #FEFCF9)}.schedule-grid-container--day-focus .schedule-grid .employee-column,.schedule-grid-container--day-focus .schedule-grid .employee-name{width:38%;min-width:7.5rem;max-width:11rem}.schedule-grid-container--day-focus .schedule-grid .day-header,.schedule-grid-container--day-focus .schedule-grid td:not(.employee-name):not(.swimlane-title-cell){min-width:0}.schedule-grid th,.schedule-grid td{box-sizing:border-box;border:0;border-right:1px solid #EDE7DC;border-bottom:1px solid #EDE7DC;padding:6px;vertical-align:top;border-bottom-width:1px}.schedule-grid tr>:first-child{border-left:1px solid #EDE7DC}.schedule-grid thead{position:sticky;top:0;z-index:10;background:var(--sage, #4a6741)}.schedule-grid thead tr:first-child>th{border-top:1px solid var(--sage, #4a6741)}.schedule-grid thead th{background:var(--sage, #4a6741);color:var(--warm-white, #fefcf9);border-right:1px solid var(--sage, #4a6741);border-bottom:1px solid var(--sage, #4a6741);border-left-color:var(--sage, #4a6741);border-top-color:var(--sage, #4a6741);box-shadow:none;padding-left:.55rem;padding-right:.55rem}.schedule-grid thead tr>:first-child{border-left:1px solid var(--sage, #4a6741);padding-left:.75rem;padding-right:.75rem}.schedule-grid thead tr:last-child>th{box-shadow:0 1px 0 0 var(--sage, #4a6741)}.schedule-cell{background:var(--color-bg-white, #FEFCF9);cursor:pointer;transition:background-color .2s ease;vertical-align:top;padding:4px 6px}.cell-content{min-height:44px;display:flex;flex-direction:column;gap:3px}.day-header{background:var(--sage, #4a6741);color:var(--warm-white, #fefcf9);font-weight:600;text-align:center;padding-top:.55rem;padding-bottom:.55rem}.day-header__identity{display:flex;flex-direction:row;align-items:baseline;justify-content:center;gap:.35rem;min-width:0}.schedule-summary-row th{background:var(--sage, #4a6741);color:var(--warm-white, #fefcf9);font-size:.72rem;font-weight:600;padding-top:.35rem;padding-bottom:.35rem;vertical-align:middle;text-align:center}.schedule-summary-label{position:sticky;left:0;z-index:11;text-align:center;background:var(--sage, #4a6741)}.schedule-summary-label__total{display:block;font-size:.8rem;font-weight:700;white-space:nowrap;color:inherit;text-align:center}.schedule-summary-cell{text-align:center;white-space:nowrap}.day-header--red .day-name,.day-header--red .day-date{color:#c4614a}.day-header--today{background:color-mix(in srgb,var(--sage, #4a6741) 82%,#000000);color:var(--warm-white, #fefcf9)}.day-header--today .day-name{font-weight:var(--font-weight-semibold);color:var(--warm-white, #fefcf9)}.day-header--today .day-date{color:var(--warm-white, #fefcf9);opacity:.9}.day-header--today.day-header--red .day-name,.day-header--today.day-header--red .day-date{color:var(--terra, #c4614a)}.day-header--today.day-header--red{background:color-mix(in srgb,var(--terra, #c4614a) 22%,#ffffff);box-shadow:inset 0 -3px 0 var(--terra, #c4614a);color:var(--terra, #c4614a)}.day-name{font-size:.85rem;color:inherit;margin:0;text-transform:uppercase;letter-spacing:.02em}.day-short{font-size:.75rem;color:#a89c8e;text-transform:uppercase;letter-spacing:.5px}.day-date{font-size:.78rem;color:inherit;margin:0;font-weight:500;opacity:.88}.employee-column{background:var(--sage, #4a6741);color:var(--warm-white, #fefcf9);font-weight:600;text-align:center;padding-top:var(--space-3, .75rem);padding-bottom:var(--space-3, .75rem);position:sticky;left:0;z-index:11;min-width:150px}.employee-column .week-info{font-size:.95rem;color:inherit;font-weight:600;margin-bottom:2px;text-align:center}.employee-column .week-date-range{font-size:.85rem;color:inherit;font-weight:500;text-align:center;opacity:.88}.week-summary-compact{display:flex;flex-direction:row;flex-wrap:nowrap;gap:.75rem;margin-top:.35rem;justify-content:center;align-items:center}.week-summary-compact .summary-item{display:inline-flex;flex-direction:row;align-items:center;gap:.35rem;font-size:.75rem;color:inherit;font-weight:600;white-space:nowrap;background:none;border:none;border-radius:0;padding:0;box-shadow:none;transition:none}.week-summary-compact .summary-item:hover{background:none;border-color:transparent;box-shadow:none;transform:none}.employee-row{background:var(--color-bg-white, #FEFCF9)}.employee-row:nth-child(2n){background:var(--color-bg-white, #FEFCF9)}.schedule-grid tbody tr:hover{background:inherit;transform:none;box-shadow:none}.schedule-grid .shift-type-row:nth-child(2n):hover,.schedule-grid .employee-row:nth-child(2n):hover{background:var(--color-bg-white, #FEFCF9)}.employee-name{font-weight:600;padding:6px .75rem;text-align:left;position:sticky;left:0;z-index:6;border-right:1px solid #EDE7DC;min-width:150px;background:var(--color-bg-white, #FEFCF9);color:#2a2622;height:52px;vertical-align:middle}.title-swimlane-header{background:#f7f3ec;border-top:2px solid #EDE7DC;border-bottom:1px solid #EDE7DC}.schedule-grid tbody tr.title-swimlane-header,.schedule-grid tbody tr.title-swimlane-header:nth-child(odd),.schedule-grid tbody tr.title-swimlane-header:nth-child(2n){background:#f7f3ec}.schedule-grid tbody tr.title-swimlane-header:hover{background:#f7f3ec}.swimlane-title-cell{padding:var(--space-3, .75rem) var(--space-4, 1rem);color:#2a2622;font-weight:var(--font-weight-semibold);font-size:.95rem;text-transform:uppercase;letter-spacing:.5px;background:#f7f3ec}.swimlane-count{margin-left:var(--space-2, .5rem);font-weight:400;color:#a89c8e;font-size:.875rem;text-transform:none;letter-spacing:normal}.drag-over{background:#4a67411a!important;border:2px dashed #4A6741!important}.drag-over-invalid{background:#4a67410d!important;border:2px dashed #4A6741!important}.dragging{opacity:.5;cursor:grabbing}.shift-type-row{background:#fefcf9}.shift-type-row:nth-child(2n){background:#fafafa}.shift-type-label{font-weight:600;padding:6px .75rem;text-align:left;position:sticky;left:0;z-index:6;border-right:1px solid #EDE7DC;min-width:140px;background:linear-gradient(to right,#fefcf9,#fafafa);box-shadow:2px 0 4px #00000005;height:52px;vertical-align:middle}.shift-type-header{display:flex;align-items:center;gap:8px}.shift-type-color-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:0 2px 4px #00000040,inset 0 1px 2px #ffffff4d;border:2px solid white}.shift-type-content{flex:1;display:flex;flex-direction:column;gap:3px}.shift-type-name{font-size:.9rem;color:#2a2622;font-weight:var(--font-weight-semibold);line-height:1.2;letter-spacing:-.01em}.shift-type-time{font-size:.8rem;color:#6b6259;font-weight:600;line-height:1.2;font-family:var(--font-body)}.shift-type-name--empty{font-style:italic;color:#a89c8e;font-weight:500}.empty-shift-types-row .shift-type-label{background:linear-gradient(to right,#fafafa,#ede7dc);border-right:1px solid #EDE7DC}.event-block{padding:6px 10px;margin:4px 0;border-radius:8px;color:#fff;font-size:.8rem;font-weight:500;box-shadow:0 2px 6px #00000026;border:1px solid rgba(255,255,255,.2)}.open-shift-block{position:relative;padding:3px 6px;margin:0;border-radius:6px;border:2px dashed #A89C8E;background:#f8fafc;color:#2a2622;transition:all .15s ease;height:42px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:1px;overflow:hidden;flex-shrink:0;font-family:var(--font-body)}.open-shift-block--clickable{cursor:pointer}.open-shift-block:hover{border-color:#4a6741;background:#4a67410d;box-shadow:0 2px 6px #4a67411f}.open-shift-time{font-size:.7rem;font-weight:400;color:#2a2622;display:flex;align-items:center;gap:1px;line-height:1.2;font-family:var(--font-body)}.open-shift-time:before{content:"";display:inline-block;width:11px;height:11px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm.5-13H11v6l5.2 3.2.8-1.3-4.5-2.7V7z'/%3E%3C/svg%3E") no-repeat center;background-size:contain;flex-shrink:0}.open-shift-positions{font-size:.78rem;font-weight:600;color:#4a6741;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.open-shift-location{color:#a89c8e;font-weight:500}.open-shift-organization{color:#a89c8e}.open-shift-assignments{margin-top:.5rem;padding-top:.35rem;font-size:.7rem;color:#2a2622;border-top:none!important}.open-shift-assignments-title{font-weight:var(--font-weight-semibold);margin-bottom:.25rem;color:#2a2622;font-size:.75rem}.open-shift-assignments-list{display:flex;flex-direction:column;gap:.2rem}.open-shift-assignments-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.15rem 0}.open-shift-assignments-name{color:#2a2622;font-weight:500}.application-remove-btn{background:none;border:none;color:#c4614a;cursor:pointer;font-size:1rem;padding:0 .25rem;line-height:1;transition:all .2s ease;opacity:.7}.application-remove-btn:hover{opacity:1;transform:scale(1.2)}.open-shift-block:hover .open-shift-delete-btn,.open-shift-block:focus-within .open-shift-delete-btn{opacity:1;pointer-events:auto}.shift-block{position:relative;padding:3px 6px;margin:0;border-radius:6px;color:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 4px #00000026,inset 0 1px #fff3;border:1px solid rgba(0,0,0,.1);height:42px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:1px;overflow:hidden;flex-shrink:0}.shift-block:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000040,inset 0 1px #ffffff4d;border-color:#ffffff4d}.shift-block:active{transform:translateY(0)}.shift-time{font-size:.7rem;font-weight:400;letter-spacing:.1px;opacity:.95;text-shadow:0 1px 2px rgba(0,0,0,.2);font-family:var(--font-body);display:flex;align-items:center;gap:1px;line-height:1.2;position:relative;z-index:2}.shift-time:before{content:"";display:inline-block;width:12px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm.5-13H11v6l5.2 3.2.8-1.3-4.5-2.7V7z'/%3E%3C/svg%3E") no-repeat center;background-size:contain;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.shift-name{font-size:.78rem;font-weight:600;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;z-index:2}.shift-location{font-size:.7rem;opacity:.9;font-weight:400;display:flex;align-items:center;gap:4px}.shift-location:before{content:"";display:inline-block;width:10px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/%3E%3C/svg%3E") no-repeat center;background-size:contain;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.draft-shift{border:1px dashed rgba(255,255,255,.7);filter:saturate(.65)}.draft-shift:before{content:"";position:absolute;inset:0;border-radius:inherit;background:#ffffff52;z-index:1;pointer-events:none}.draft-shift:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--draft-accent, #FF4500);border-radius:6px 0 0 6px;pointer-events:none;z-index:3}.draft-shift:hover{filter:saturate(.75);box-shadow:0 4px 12px #0003,inset 0 1px #ffffff4d}.draft-label{background:#fbbf24f2;color:#78350f;font-size:.5rem;font-weight:var(--font-weight-semibold);padding:1px 3px 1px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.7px;line-height:1.5;white-space:nowrap;flex-shrink:0;margin-left:3px}.appointment-shift{background:linear-gradient(135deg,#8b5cf6,#a78bfa)!important;border-color:#7c3aed}.appointment-icon{position:absolute;top:6px;left:6px;width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zm0-12H5V6h14v2zm-7 5h5v5h-5z'/%3E%3C/svg%3E") no-repeat center;background-size:contain;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.shift-delete-btn{position:absolute;top:4px;right:4px;background:#c4614ae6;border:1px solid rgba(255,255,255,.3);color:#fff;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:16px;font-weight:var(--font-weight-semibold);line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease;z-index:10;opacity:0;pointer-events:none;box-shadow:0 2px 6px #0000004d}.shift-block:hover .shift-delete-btn{opacity:1;pointer-events:auto}.shift-delete-btn:hover{background:#dc2626;transform:scale(1.15);box-shadow:0 3px 8px #c4614a80}.shift-delete-btn:active{transform:scale(.95)}.shift-selected{z-index:4;overflow:visible;border:2px solid #fff!important;box-shadow:0 0 0 2px #1c2b1a,0 0 0 5px #ffffffeb,0 4px 14px #00000052;transform:translateY(-2px)}.schedule-grid-container--selecting .shift-block:not(.shift-selected){opacity:.5;filter:saturate(.8)}.schedule-grid-container--selecting .shift-block:not(.shift-selected):hover{opacity:.78;filter:saturate(.9)}.dragging{opacity:.4;cursor:grabbing;transform:scale(.98)}.shift-block[style*="background-color: rgb"]{background-image:linear-gradient(135deg,#ffffff1a,#0000000d)!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.schedule-week-view{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:100%;min-width:0;margin:0 auto}.schedule-controls{display:flex;align-items:center;gap:.75rem;width:100%}.controls-left{min-width:158px;flex-shrink:0;display:flex;align-items:center}.controls-center{flex:1;display:flex;justify-content:center;align-items:center}.controls-right{min-width:158px;flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:.5rem}.btn-manage-shift-types{flex-shrink:0;width:auto;white-space:nowrap}.btn-publish-card{display:inline-flex;align-items:center;gap:.35rem;background:#4a6741;color:#fff;padding:.35rem .75rem;border:none;border-radius:8px;font-weight:var(--font-weight-semibold);font-size:.8rem;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 6px #4a67414d;width:100%;justify-content:center;font-family:inherit}.btn-publish-card:hover{background:#4a6741;transform:translateY(-1px);box-shadow:0 4px 12px #4a674159}.btn-publish-card:active{transform:translateY(0)}.draft-count-badge{background:#ffffff40;border-radius:4px;padding:0 .25rem;font-size:.6rem;font-weight:500;line-height:1.2;min-width:14px;text-align:center}.view-mode-toggle-inline{display:flex;gap:0;background:var(--color-bg-white, #FEFCF9);border:1px solid #EDE7DC;border-radius:8px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.view-mode-toggle-inline button{padding:.35rem .75rem;background:transparent;border:none;color:#6b6259;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap}.view-mode-toggle-inline button:hover{background:#4a67410f;color:#4a6741}.view-mode-toggle-inline button.active{background:var(--color-bg-white, #FEFCF9);color:#4a6741;font-weight:var(--font-weight-semibold);box-shadow:0 1px 3px #00000014}.schedule-header{background:var(--color-bg-white, #FEFCF9);border-radius:12px;border:1px solid #EDE7DC;box-shadow:0 2px 8px #00000014;overflow:hidden;margin-bottom:0}.schedule-header .week-toolbar{margin:0;border-radius:0;border:none;border-bottom:1px solid #EDE7DC;box-shadow:none}.view-mode-toggle{display:flex;gap:0;background:#f7f3ec;padding:0;border-bottom:1px solid #EDE7DC}.view-mode-toggle button{flex:1;padding:.85rem 1.5rem;background:transparent;border:none;color:#6b6259;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap;border-radius:0;position:relative}.view-mode-toggle button:hover{background:#4a67410d;color:#4a6741}.view-mode-toggle button.active{background:var(--color-bg-white, #FEFCF9);color:#4a6741;font-weight:var(--font-weight-semibold)}.view-mode-toggle button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:#4a6741}.schedule-grid-wrapper{flex:0 1 auto;display:flex;flex-direction:column;min-height:0;max-height:100%}.schedule-info-banner{background:#f5e8e3;border:1px solid #F5E8E3;border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;color:#4a6741;font-size:.875rem}.schedule-info-banner i{font-size:1.1rem}.schedule-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;background:#fefcf9;border-radius:12px;border:2px dashed #EDE7DC;text-align:center;color:#a89c8e}.schedule-empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.5}.schedule-empty-state h3{margin:0 0 .5rem;color:#2a2622;font-size:1.25rem}.schedule-empty-state p{margin:0;font-size:.95rem}.schedule-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.schedule-loading-spinner{width:48px;height:48px;border:4px solid #EDE7DC;border-top-color:#4a6741;border-radius:50%;animation:spin 1s linear infinite}.schedule-loading-text{color:#a89c8e;font-size:1rem}.schedule-quick-stats{display:flex;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.quick-stat-card{flex:1;min-width:150px;background:#fefcf9;padding:.75rem 1rem;border-radius:8px;border:1px solid #EDE7DC;display:flex;align-items:center;gap:.75rem}.quick-stat-icon{width:40px;height:40px;background:#f7f3ec;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#4a6741;font-size:1.25rem}.quick-stat-content{flex:1}.quick-stat-label{font-size:.8rem;color:#a89c8e;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.quick-stat-value{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:#2a2622;line-height:1.2}.schedule-day-strip{display:none}@media(max-width:768px){.view-mode-toggle{width:100%}.view-mode-toggle button{flex:1;text-align:center}.schedule-quick-stats{flex-direction:column}.quick-stat-card{min-width:auto}.schedule-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;width:100%}.schedule-day-strip__day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:2.75rem;padding:.35rem .2rem;border:1px solid var(--border, rgba(0, 0, 0, .12));border-radius:.75rem;background:var(--cream, #fefcf9);color:var(--ink-mid, #6b7280);font:inherit;cursor:pointer}.schedule-day-strip__day:focus-visible{outline:3px solid color-mix(in srgb,var(--sage, #4a6741) 35%,transparent);outline-offset:2px}.schedule-day-strip__day.is-active{border-color:color-mix(in srgb,var(--sage, #4a6741) 40%,transparent);background:var(--sage-pale, rgba(122, 158, 110, .16));color:var(--ink, #2a2622)}.schedule-day-strip__name{font-size:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.schedule-day-strip__date{font-size:.7rem;font-weight:600}}@media(max-width:480px){.schedule-week-view{gap:.75rem}.view-mode-toggle{padding:.25rem}.view-mode-toggle button{padding:.5rem 1rem;font-size:.85rem}.quick-stat-card{padding:.5rem .75rem}.quick-stat-icon{width:36px;height:36px;font-size:1.1rem}.quick-stat-value{font-size:1.25rem}}@media(min-width:769px){.content>.admin-schedule .schedule-app-container.embedded .schedule-week-view{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}}.custom-select{position:relative;width:100%}.custom-select-trigger{width:100%;padding:.6rem 2.5rem .6rem .85rem;border:1px solid #EDE7DC;border-radius:8px;background:#fefcf9;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;position:relative;font-size:.95rem;font-weight:500;color:#2a2622;text-align:center}.custom-select-trigger:hover:not(.custom-select.disabled .custom-select-trigger){border-color:#4a6741;background-color:#f5e8e3}.custom-select-trigger:focus{outline:none;border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a}.custom-select.open .custom-select-trigger{border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a}.custom-select-trigger .placeholder{color:#a89c8e;font-weight:400}.custom-select-trigger .selected{color:#2a2622;font-weight:500}.custom-select-arrow{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);transition:transform .2s ease;color:#2a2622;pointer-events:none}.custom-select.open .custom-select-arrow{transform:translateY(-50%) rotate(180deg)}.custom-select-options{position:fixed;top:var(--cs-top, 0);left:var(--cs-left, 0);width:var(--cs-width, auto);background:#fefcf9;border:1px solid #EDE7DC;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto;z-index:11000;list-style:none;margin:0;padding:.35rem;animation:dropdownReveal .18s ease-out both}@keyframes dropdownReveal{0%{opacity:0;clip-path:inset(0 0 100% 0 round 8px)}to{opacity:1;clip-path:inset(0 0 0% 0 round 8px)}}.custom-select-option{padding:.65rem 1rem;cursor:pointer;transition:all .15s ease;border-radius:6px;font-size:.9rem;font-weight:500;color:#2a2622;text-align:center;margin-bottom:.25rem}.custom-select-option:last-child{margin-bottom:0}.custom-select-option:hover{background-color:#f5e8e3;color:#4a6741;font-weight:600}.custom-select-option:focus{outline:none;background-color:#f5e8e3;color:#4a6741;font-weight:600}.custom-select-option.selected{background-color:#e6f4ed;color:#4a6741;font-weight:var(--font-weight-semibold)}.custom-select-option.selected:hover{background-color:#d4ede2}.custom-select.disabled .custom-select-trigger{background-color:#ede7dc;color:#9ca3af;cursor:not-allowed;border-color:#ede7dc}.custom-select.disabled .custom-select-arrow{color:#9ca3af}.custom-select-options::-webkit-scrollbar{width:6px}.custom-select-options::-webkit-scrollbar-track{background:#f7fafc;border-radius:3px}.custom-select-options::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.custom-select-options::-webkit-scrollbar-thumb:hover{background:#a0aec0}.shift-form{display:flex;flex-direction:column;gap:.85rem}.modal-body .shift-form{max-height:none;overflow-y:visible}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{display:block;margin-bottom:.35rem;font-weight:600;color:#2a2622;font-size:.9rem}.form-group label:not(:has(input[type=checkbox])){display:block;margin-bottom:.35rem}.form-group label:has(input[type=checkbox]){display:flex!important;align-items:center;justify-content:center;gap:.6rem;padding:.75rem 1rem;background:#f7f3ec;border-radius:8px;border:1px solid #EDE7DC;cursor:pointer;transition:all .2s ease;margin-bottom:0!important;font-weight:500!important;color:#2a2622!important;font-size:.95rem!important}.form-group label:has(input[type=checkbox]):hover{background:#ede7dc;border-color:#d4c9b8}.form-group label:has(input[type=checkbox]) input[type=checkbox]{width:18px;height:18px;margin:0!important;cursor:pointer;accent-color:#4A6741;flex-shrink:0}.form-group label:has(input[type=checkbox]:checked){background:#f5e8e3!important;border-color:#4a6741!important;color:#4a6741!important;font-weight:600!important}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .85rem;border:1px solid #EDE7DC;border-radius:8px;font-size:.95rem;font-family:inherit;transition:all .2s ease;background:#fefcf9;color:#2a2622;font-weight:500}.form-group input[type=time]{text-align:center;font-family:var(--font-body);font-weight:600;letter-spacing:.5px;font-size:1rem}.form-group input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.form-group input[type=time]::-webkit-calendar-picker-indicator:hover{filter:invert(.3);background:#f5e8e3}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23334155' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;padding-right:2.5rem;cursor:pointer;text-align:center;text-align-last:center;color-scheme:light}.form-group select:hover{border-color:#4a6741;background-color:#f5e8e3}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a;background:#fefcf9}.form-group select option[value=""]{color:#a89c8e;font-weight:400;text-align:center;background:#fefcf9}.form-group select option{color:#2a2622;font-weight:500;padding:.75rem 1rem;background:#fefcf9;text-align:center}.form-group select option:hover{background-color:#f5e8e3!important;background:linear-gradient(0deg,#f5e8e3 0% 100%)!important;color:#4a6741!important;font-weight:600}.form-group select option:checked,.form-group select option:focus{background-color:#f5e8e3!important;background:linear-gradient(0deg,#f5e8e3 0% 100%)!important;color:#4a6741!important;font-weight:600}@-moz-document url-prefix(){.form-group select option:hover{background-color:#f5e8e3!important}.form-group select option:checked{background-color:#f5e8e3!important;color:#4a6741!important}}.form-group select option:checked{background:#f5e8e3 linear-gradient(0deg,#f5e8e3 0% 100%)}.form-group select:disabled{background-color:#ede7dc;color:#a89c8e;cursor:not-allowed;border-color:#ede7dc}.form-group textarea{resize:vertical;min-height:70px;line-height:1.5}.form-group input.is-invalid,.form-group select.is-invalid,.form-group textarea.is-invalid{border-color:#c4614a}.form-group input.is-invalid:focus,.form-group select.is-invalid:focus,.form-group textarea.is-invalid:focus{box-shadow:0 0 0 3px #c4614a1a}.form-error{color:#c4614a;font-size:.875rem;margin-top:var(--space-1, .25rem)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.form-hint{color:#a89c8e;font-size:.825rem;margin-top:.25rem;font-style:italic}.form-actions{display:flex;gap:.65rem;justify-content:flex-end;margin-top:0;padding-top:0;border-top:none}.modal-footer .form-actions{margin-top:0;padding-top:0;border-top:none}.form-actions button{padding:.75rem 1.75rem;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;border:none;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:120px}.form-actions button[type=button]{background:#fefcf9;border:2px solid #EDE7DC;color:#6b6259}.form-actions button[type=button]:hover:not(:disabled){background:#f7f3ec;border-color:#d4c9b8;color:#2a2622;transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.form-actions button[type=submit]{background:linear-gradient(135deg,#4a6741,#4a6741);color:#fff;box-shadow:0 2px 8px #4a67414d}.form-actions button[type=submit]:hover:not(:disabled){background:linear-gradient(135deg,#4a6741,#4a6741);transform:translateY(-1px);box-shadow:0 4px 12px #4a674166}.form-actions button:active:not(:disabled){transform:translateY(0)}.form-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.checkbox-group{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 0;background:#f7f3ec;border-radius:8px;border:1px solid #EDE7DC}.checkbox-group input[type=checkbox]{width:auto;margin:0;cursor:pointer;width:18px;height:18px;accent-color:#4A6741}.checkbox-group label{margin:0;cursor:pointer;font-weight:500;color:#2a2622;font-size:.95rem}.color-picker-section{padding:1rem;background:#f7f3ec;border-radius:10px;border:1px solid #EDE7DC;margin-bottom:.75rem}.color-picker-section h4{margin:0 0 .75rem;font-size:.9rem;color:#2a2622;font-weight:600}.color-picker-tabs{display:flex;gap:.4rem;background:#fefcf9;padding:.3rem;border-radius:8px;border:1px solid #EDE7DC;box-shadow:0 2px 4px #0000000a;margin-bottom:1rem}.color-tab{flex:1;padding:.55rem 1.25rem;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#6b6259;font-weight:600;font-size:.9rem;font-family:inherit;white-space:nowrap}.color-tab:hover{background:#f7f3ec;color:#2a2622}.color-tab.active{background:linear-gradient(135deg,#4a6741,#4a6741);color:#fff;box-shadow:0 2px 8px #4a67414d}.recommended-colors{display:flex;flex-direction:column;gap:1rem}.color-category{display:flex;flex-direction:column;gap:.6rem}.color-category-label{font-size:.825rem;font-weight:var(--font-weight-semibold);color:#2a2622;text-transform:uppercase;letter-spacing:.5px;padding-bottom:.4rem;border-bottom:2px solid #EDE7DC}.color-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:.65rem}.color-swatch{width:42px;height:42px;border-radius:8px;cursor:pointer;border:3px solid transparent;transition:all .2s ease;position:relative;box-shadow:0 2px 4px #0000001f;background:none;padding:0}.color-swatch:hover{transform:scale(1.15);box-shadow:0 4px 10px #0003}.color-swatch.selected{border-color:#fbbf24;box-shadow:0 0 0 3px #fbbf244d,0 4px 10px #0003;transform:scale(1.05)}.color-checkmark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:1.1rem;font-weight:var(--font-weight-semibold);text-shadow:0 2px 4px rgba(0,0,0,.5);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.custom-color-picker{display:flex;flex-direction:column;gap:.85rem;background:#fefcf9;padding:1rem;border-radius:8px;border:1px solid #EDE7DC}.color-wheel-container{display:flex;justify-content:center;padding:.85rem;background:#f7f3ec;border-radius:8px}.color-wheel-controls{display:flex;flex-direction:column;gap:.6rem;align-items:center}.hex-input-toggle{padding:.45rem .85rem;background:#ede7dc;border:1px solid #EDE7DC;border-radius:6px;color:#2a2622;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease;font-family:inherit}.hex-input-toggle:hover{background:#ede7dc;border-color:#d4c9b8}.color-hex-input{width:100%;max-width:180px;padding:.55rem .85rem;border:2px solid #EDE7DC;border-radius:6px;font-size:.95rem;font-family:Courier New,monospace;text-align:center;font-weight:600;transition:all .2s ease}.color-hex-input:focus{outline:none;border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a}.color-preview{display:flex;align-items:center;gap:.85rem;padding:.75rem;background:#f7f3ec;border-radius:6px;border:1px solid #EDE7DC}.color-preview span{font-weight:600;color:#2a2622;font-size:.875rem}.color-preview-box{width:50px;height:35px;border-radius:6px;border:2px solid #EDE7DC;box-shadow:0 2px 4px #00000014}.color-hex-value{font-family:Courier New,monospace;font-size:.9rem;color:#6b6259}.selected-color-display{display:flex;align-items:center;gap:.85rem;padding:.65rem .85rem;background:#fefcf9;border-radius:6px;border:1px solid #EDE7DC;margin-top:.75rem}.selected-color-display span{font-weight:600;color:#2a2622;font-size:.875rem}.selected-color-box{width:42px;height:42px;border-radius:8px;border:3px solid #FBBF24;box-shadow:0 0 0 3px #fbbf2433,0 2px 6px #00000026}.btn-add-employee{padding:.55rem 1.25rem;background:linear-gradient(135deg,#4a6741,#4a6741);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;box-shadow:0 2px 6px #4a674140;margin-top:.6rem}.btn-add-employee:hover:not(:disabled){background:linear-gradient(135deg,#4a6741,#4a6741);transform:translateY(-1px);box-shadow:0 4px 10px #4a674159}.btn-add-employee:active:not(:disabled){transform:translateY(0)}.btn-add-employee:disabled{opacity:.5;cursor:not-allowed;background:linear-gradient(135deg,#a89c8e,#6b6259);box-shadow:none}.selected-employees-section{margin-top:1rem;padding:.85rem;background:#f7f3ec;border-radius:8px;border:1px solid #EDE7DC}.selected-employees-section h4{margin:0 0 .6rem;font-size:.9rem;color:#2a2622;font-weight:var(--font-weight-semibold)}.selected-employees-list{display:flex;flex-direction:column;gap:.45rem}.selected-employee-item{display:flex;align-items:center;justify-content:space-between;padding:.55rem .85rem;background:#fefcf9;border-radius:6px;border:1px solid #EDE7DC;transition:all .2s ease}.selected-employee-item:hover{border-color:#d4c9b8;box-shadow:0 2px 4px #0000000d}.selected-employee-item .employee-name{font-weight:600;color:#2a2622;font-size:.9rem}.btn-remove-employee{width:26px;height:26px;border-radius:50%;background:#f5e8e3;border:1px solid #F5E8E3;color:#c4614a;font-size:18px;font-weight:400;line-height:1;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.btn-remove-employee:hover{background:#e8956c;border-color:#e8956c;color:#8b3d2a;transform:rotate(90deg) scale(1.1)}.employee-select-info{display:flex;flex-direction:column;gap:var(--space-2, .5rem);padding:var(--space-3, .75rem);background:#f5e8e3;border:1px solid #F5E8E3;border-radius:var(--radius-md, 8px);margin-top:var(--space-2, .5rem)}.employee-info-item{display:flex;justify-content:space-between;font-size:.875rem}.employee-info-label{color:#2a2622;font-weight:500}.employee-info-value{color:#4a6741;font-weight:600}.time-input-group{display:flex;align-items:center;gap:var(--space-2, .5rem)}.time-input-group input{flex:1}.time-separator{color:#a89c8e;font-weight:600}.positions-input{max-width:120px}.form-loading{text-align:center;padding:var(--space-8, 2rem);color:#a89c8e}.employee-selection-shift{margin:1rem 0;padding:.85rem;background:#f7f3ec;border-radius:8px;border:1px solid #EDE7DC}.employee-selection-label{display:block;font-weight:var(--font-weight-semibold);margin-bottom:.6rem;color:#2a2622;font-size:.9rem}.selected-count-inline{font-weight:400;color:#a89c8e;font-size:.85rem}.employee-selection-controls{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.employee-search-input{width:100%;padding:.55rem .85rem;border:1px solid #EDE7DC;border-radius:8px;font-size:.95rem;font-family:inherit;background:#fefcf9}.employee-search-input:focus{outline:none;border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a}.select-all-controls{display:flex;gap:.5rem}.select-all-button,.deselect-all-button{padding:.4rem .85rem;border:1px solid #EDE7DC;border-radius:6px;background:#fefcf9;color:#2a2622;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.select-all-button:hover:not(:disabled),.deselect-all-button:hover:not(:disabled){background:#f7f3ec;border-color:#4a6741}.select-all-button:disabled,.deselect-all-button:disabled{opacity:.5;cursor:not-allowed}.employee-checkbox-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem;padding:.75rem;background:#fefcf9;border:1px solid #EDE7DC;border-radius:8px}.employee-checkbox-list--require-selection{border-color:#ede7dc}.no-employees-message{padding:.75rem;text-align:center;color:#a89c8e;font-style:italic;margin:0}.employee-required-hint{margin-top:.5rem;margin-bottom:0}.notification-form-label{font-weight:600;color:#2a2622;font-size:.9rem;margin-bottom:.75rem}.notification-employee-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto;padding:.75rem;background:#f7f3ec;border-radius:8px;border:1px solid #EDE7DC}.notification-employee-item{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.65rem 1rem;background:#fefcf9;border-radius:6px;border:1px solid #EDE7DC;cursor:pointer;transition:all .2s ease;margin:0}.notification-employee-item:hover{background:#ede7dc;border-color:#d4c9b8}.notification-employee-checkbox{width:18px;height:18px;margin:0;cursor:pointer;accent-color:#4A6741;flex-shrink:0}.notification-employee-item input:checked~span{color:#4a6741;font-weight:600}.notification-employee-item span{flex:1;text-align:center;font-size:.9rem;color:#2a2622}.notification-form-hint{color:#a89c8e;font-size:.825rem;margin-top:.5rem;font-style:italic;text-align:center}.modal-root__overlay:not(.modal-overlay):has(.shift-modal-v2){background:#2a26228a}.modal-root__panel.shift-modal-v2:not(.modal-content){width:min(760px,calc(100vw - 32px));max-width:760px;max-height:calc(100vh - 32px);padding:0;overflow:hidden;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:28px;background:var(--warm-white, #FEFCF9);box-shadow:0 32px 100px #2a262261}.modal-root__panel.shift-form-modal.shift-modal-v2:not(.modal-content){width:min(480px,calc(100vw - 32px));max-width:480px}.modal-root__panel.edit-open-shift-dialog.shift-modal-v2:not(.modal-content){width:min(560px,calc(100vw - 32px));max-width:560px}.shift-modal-top{flex-shrink:0;padding:22px 24px 20px;background:var(--sage-dark, #2D4229);color:var(--warm-white, #FEFCF9)}.shift-modal-top__row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.shift-modal-top__eyebrow{margin:0 0 5px;color:#fefcf98c;font-size:.65625rem;font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase}.shift-modal-top__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.shift-modal-top__title{margin:0;color:var(--warm-white, #FEFCF9);font-family:var(--font-display);font-size:1.625rem;font-weight:var(--font-weight-semibold);line-height:1.06}.shift-modal-top__meta{margin:7px 0 0;color:#fefcf9b8;font-size:.8125rem;font-weight:500}.shift-modal-top__close{display:grid;flex-shrink:0;width:36px;height:36px;place-items:center;border:1px solid rgba(254,252,249,.22);border-radius:50%;background:#fefcf924;color:var(--warm-white, #FEFCF9);cursor:pointer;transition:background .12s}.shift-modal-top__close:hover:not(:disabled){background:#fefcf942}.shift-modal-top__close:disabled{cursor:not-allowed;opacity:.55}.shift-modal-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:.6875rem;font-weight:var(--font-weight-semibold)}.shift-modal-badge--draft{border:1px solid rgba(232,240,228,.32);background:#e8f0e42e;color:var(--sage-pale, #E8F0E4)}.shift-modal-badge--open{border:1px solid rgba(245,232,227,.45);background:#c4614a33;color:#f8d7cf}.shift-modal-body.modal-root__body{padding:0;background:var(--cream, #F7F3EC)}.shift-modal-body .modal-root__body-scale{display:flex;flex-direction:column;gap:16px;padding:20px 18px 18px}.shift-modal-body .shift-form,.shift-modal-body .edit-open-shift-form,.shift-modal-body .edit-open-shift-form-content{display:flex;flex-direction:column;gap:16px}.shift-modal-body .form-group,.shift-modal-body .employee-selection-shift,.shift-modal-body .notification-selection,.shift-modal-body .open-shift-preview,.shift-modal-body .color-picker-tabs,.shift-modal-body .recommended-colors,.shift-modal-body .custom-color-picker,.shift-modal-body .selected-color-display{margin:0}.shift-modal-notice,.shift-modal-body .draft-indicator,.shift-modal-body .error-message{display:flex;align-items:flex-start;gap:9px;padding:14px 16px;border:1px solid rgba(74,103,65,.2);border-radius:16px;background:var(--sage-pale, #E8F0E4);color:var(--ink-mid, #6B6259);font-size:.8125rem;line-height:1.45}.shift-modal-body .error-message{border-color:#c4614a47;background:var(--terra-pale, #F5E8E3);color:var(--terra, #C4614A)}.shift-modal-body .draft-indicator--open-shift{border-color:#c4614a38;background:var(--terra-pale, #F5E8E3)}.shift-modal-body .form-group,.shift-modal-body .employee-selection-shift,.shift-modal-body .notification-selection,.shift-modal-body .open-shift-preview,.shift-modal-body .form-group:has(.color-picker-tabs){padding:18px;border:1px solid var(--cream-dark, #EDE7DC);border-radius:18px;background:var(--warm-white, #FEFCF9);box-shadow:0 4px 16px #2a26220f}.shift-modal-body .form-row,.shift-modal-time-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.shift-modal-body .form-row .form-group,.shift-modal-time-row .form-group{min-width:0}.shift-modal-body .form-group label,.shift-modal-body .form-label,.shift-modal-body .employee-selection-label,.shift-modal-body .notification-form-label{color:var(--ink-mid, #6B6259);font-size:.71875rem;font-weight:var(--font-weight-semibold);letter-spacing:.03em}.shift-modal-body .form-group input,.shift-modal-body .form-group textarea,.shift-modal-body .employee-search-input,.shift-modal-body .custom-select-trigger{width:100%;min-height:42px;padding:10px 13px;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:12px;background:var(--warm-white, #FEFCF9);color:var(--ink, #2A2622);outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.shift-modal-body .form-group input:focus,.shift-modal-body .form-group textarea:focus,.shift-modal-body .employee-search-input:focus,.shift-modal-body .custom-select-trigger:focus,.shift-modal-body .custom-select-trigger:focus-visible{border-color:var(--sage, #4A6741);background:var(--sage-pale, #E8F0E4);box-shadow:0 0 0 3px #4a674126}.shift-modal-time-input{min-height:46px;font-size:.9375rem;font-weight:var(--font-weight-semibold);text-align:center}.shift-modal-body .employee-selection-controls,.shift-modal-body .select-all-controls{gap:10px}.shift-modal-body .select-all-button,.shift-modal-body .deselect-all-button,.shift-modal-body .hex-input-toggle,.shift-modal-body .clear-color-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 14px;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:12px;background:transparent;color:var(--ink, #2A2622);font-size:.84375rem;font-weight:600;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.shift-modal-body .select-all-button:hover:not(:disabled),.shift-modal-body .deselect-all-button:hover:not(:disabled),.shift-modal-body .hex-input-toggle:hover,.shift-modal-body .clear-color-btn:hover{background:var(--sage-pale, #e8f0e4);border-color:var(--sage-light, #7a9e6e);color:var(--sage-dark, #2d4229)}.shift-modal-body .employee-checkbox-list,.shift-modal-body .notification-employee-list{max-height:220px;border-color:var(--cream-deeper, #D4C9B8);border-radius:14px;background:var(--cream, #F7F3EC)}.shift-modal-body .checkbox-item,.shift-modal-body .notification-employee-item{justify-content:flex-start;border-radius:12px;background:var(--warm-white, #FEFCF9)}.shift-modal-body .checkbox-item span,.shift-modal-body .notification-employee-item span{text-align:left}.shift-modal-body .open-shift-preview{border-color:#4a674133;background:var(--sage-pale, #E8F0E4)}.shift-modal-body .preview-title{margin-bottom:12px;color:var(--sage-dark, #2D4229);font-size:.8125rem;font-weight:var(--font-weight-semibold);letter-spacing:.12em;text-transform:uppercase}.shift-modal-body .preview-item{align-items:baseline;justify-content:space-between;gap:14px}.shift-modal-body .preview-label{min-width:auto;color:var(--ink-light, #A89C8E);font-weight:var(--font-weight-semibold)}.shift-modal-body .preview-value{color:var(--ink, #2A2622);font-weight:var(--font-weight-semibold);text-align:right}.shift-modal-body .color-picker-tabs,.shift-modal-body .color-tab{border-radius:999px}.shift-modal-body .color-tab.active{background:var(--sage, #4A6741)}.shift-modal-body .color-swatches{grid-template-columns:repeat(auto-fill,minmax(34px,1fr))}.shift-modal-body .color-swatch{width:34px;height:34px;border-radius:10px}.shift-modal-footer.modal-root__footer{padding:14px 18px;border-top:1px solid var(--cream-dark, #EDE7DC);background:var(--warm-white, #FEFCF9)}.shift-modal-footer .dialog-actions{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;margin-top:0;padding-top:0;border-top:none}.shift-modal-footer__left{flex:1;min-width:0;color:var(--ink-light, #A89C8E);font-size:.6875rem;font-weight:var(--font-weight-semibold)}.shift-modal-footer__separator{width:1px;height:32px;background:var(--cream-dark, #EDE7DC)}.shift-modal-footer__actions{display:flex;align-items:center;gap:10px}.shift-modal-footer__actions .puls-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:10px 18px;border-radius:12px;font-size:.84375rem;font-weight:600;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.shift-modal-footer__actions .puls-btn-primary{padding-inline:22px;border:0;background:var(--sage, #4A6741);color:var(--warm-white, #FEFCF9)}.shift-modal-footer__actions .puls-btn-primary:hover:not(:disabled){background:var(--sage-dark, #2D4229)}.shift-modal-footer__actions .puls-btn-secondary{border:none;background:var(--cream-dark, #EDE7DC);color:var(--ink, #2A2622);box-shadow:none;transform:none}.shift-modal-footer__actions .puls-btn-secondary:hover:not(:disabled){background:var(--cream-deeper, #D4C9B8);border:none;color:var(--ink, #2A2622)}.shift-form-modal--compact.shift-modal-v2{border-radius:18px}.shift-form-modal--compact .shift-modal-top{padding:14px 16px;background:#4a6741;color:var(--warm-white, #FEFCF9);border-bottom:0}.shift-form-modal--compact .shift-modal-top__heading{display:flex;flex-direction:column;gap:6px;min-width:0}.shift-form-modal--compact .shift-modal-top__title{color:var(--warm-white, #FEFCF9);font-size:1.125rem;line-height:1.2}.shift-form-modal--compact .shift-modal-top__chips{display:flex;flex-wrap:wrap;gap:6px}.shift-form-modal--compact .shift-modal-chip{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid rgba(254,252,249,.28);border-radius:999px;background:#fefcf929;color:var(--warm-white, #FEFCF9);font-size:.6875rem;font-weight:var(--font-weight-semibold)}.shift-form-modal--compact .shift-modal-chip--open{border-color:#f8d7cf73;background:#c4614a47;color:#f8d7cf}.shift-form-modal--compact .shift-modal-top__close{width:32px;height:32px;border:1px solid rgba(254,252,249,.28);background:#fefcf924;color:var(--warm-white, #FEFCF9)}.shift-form-modal--compact .shift-modal-top__close:hover:not(:disabled){background:#fefcf942}.shift-form-modal--compact .shift-modal-body.modal-root__body{background:var(--warm-white, #FEFCF9)}.shift-form-modal--compact .shift-modal-body .modal-root__body-scale{gap:12px;padding:14px 16px}.shift-form-modal--compact .shift-modal-body .shift-form{gap:12px}.shift-form-modal--compact .shift-modal-body .form-group,.shift-form-modal--compact .shift-modal-body .form-group:has(.color-picker-tabs){padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.shift-form-modal--compact .shift-modal-body .form-row{gap:10px}.shift-form-modal--compact .shift-modal-body .form-group label{margin-bottom:4px;font-size:.6875rem}.shift-form-modal--compact .shift-modal-body .form-group input,.shift-form-modal--compact .shift-modal-body .form-group textarea,.shift-form-modal--compact .shift-modal-body .custom-select-trigger{min-height:38px;padding:8px 11px;border-radius:10px}.shift-form-modal--compact .shift-modal-time-input{min-height:38px;font-size:.875rem}.shift-form-modal--compact .shift-modal-body .error-message{padding:10px 12px;border-radius:10px}.shift-form-modal--compact .shift-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--cream-deeper, #D4C9B8);border-radius:12px;background:var(--cream, #F7F3EC)}.shift-form-modal--compact .shift-mode-toggle__btn{min-height:34px;padding:6px 10px;border:0;border-radius:9px;background:transparent;color:var(--ink-mid, #6B6259);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.shift-form-modal--compact .shift-mode-toggle__btn:hover:not(:disabled):not(.is-active){color:var(--ink, #2A2622)}.shift-form-modal--compact .shift-mode-toggle__btn.is-active{background:var(--warm-white, #FEFCF9);color:var(--sage-dark, #2D4229);box-shadow:0 1px 3px #2a262214}.shift-form-modal--compact .shift-mode-toggle__btn:disabled{cursor:default;opacity:.7}.shift-form-modal--compact .shift-form-link{display:inline-flex;align-items:center;align-self:flex-start;padding:0;border:0;background:none;color:var(--sage, #4A6741);font-size:.8125rem;font-weight:600;cursor:pointer}.shift-form-modal--compact .shift-form-link:hover{color:var(--sage-dark, #2D4229);text-decoration:underline}.shift-form-modal--compact .shift-color-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.shift-form-modal--compact .shift-color-header label{margin:0}.shift-form-modal--compact .recommended-colors{gap:8px}.shift-form-modal--compact .color-swatches--compact{display:flex;flex-wrap:wrap;gap:8px}.shift-form-modal--compact .color-swatches--compact .color-swatch{width:28px;height:28px;border-width:2px;border-radius:8px;box-shadow:none}.shift-form-modal--compact .color-swatches--compact .color-swatch:hover{transform:scale(1.08)}.shift-form-modal--compact .color-swatch.selected{border-color:var(--ink, #2A2622)}.shift-form-modal--compact .color-checkmark{font-size:.7rem}.shift-form-modal--compact .shift-form-disclosure{border:1px solid var(--cream-dark, #EDE7DC);border-radius:12px;background:var(--cream, #F7F3EC);overflow:hidden}.shift-form-modal--compact .shift-form-disclosure__toggle{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;width:100%;padding:10px 12px;border:0;background:transparent;color:var(--ink, #2A2622);font-size:.8125rem;font-weight:600;text-align:left;cursor:pointer}.shift-form-modal--compact .shift-form-disclosure__hint{color:var(--ink-light, #A89C8E);font-size:.6875rem;font-weight:500}.shift-form-modal--compact .shift-form-disclosure__body{padding:0 12px 12px}.shift-form-modal--compact .shift-modal-body .notification-employee-list{max-height:160px}.shift-form-modal--compact .shift-modal-footer.modal-root__footer{padding:12px 16px}.shift-form-modal--compact .shift-modal-footer__actions{width:100%;justify-content:flex-end}.shift-form-modal--compact .shift-modal-footer__actions .puls-btn{min-height:38px;padding:8px 16px;font-weight:500}.shift-form-modal--compact .shift-modal-footer__actions .puls-btn-primary{padding-inline:18px}@media(max-width:640px){.modal-root__panel.shift-modal-v2:not(.modal-content),.modal-root__panel.shift-form-modal.shift-modal-v2:not(.modal-content),.modal-root__panel.edit-open-shift-dialog.shift-modal-v2:not(.modal-content){width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:22px}.shift-modal-top{padding:20px 18px 18px}.shift-form-modal--compact .shift-modal-top{padding:12px 14px}.shift-modal-body .modal-root__body-scale{padding:16px 12px}.shift-form-modal--compact .shift-modal-body .modal-root__body-scale{padding:12px 14px}.shift-modal-body .form-row,.shift-modal-time-row{grid-template-columns:1fr}.shift-form-modal--compact .shift-modal-body .form-row{grid-template-columns:1fr 1fr}.shift-modal-footer .dialog-actions{align-items:stretch}.shift-modal-footer__left,.shift-modal-footer__separator{display:none}.shift-modal-footer__actions{flex:1;justify-content:flex-end}.shift-modal-footer__actions .puls-btn{flex:1;min-width:0;padding-inline:12px}}.shift-selection-toolbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4, 1rem);padding:var(--space-3, .75rem) var(--space-5, 1.25rem);margin:0;background:var(--color-surface, #ffffff);color:var(--color-text, #0f172a);border:none;border-bottom:1px solid var(--color-border, #e5e7eb);border-radius:0;box-shadow:0 4px 16px #2a26221f;animation:shiftToolbarSlideIn .28s ease-out}.toolbar-left{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3, .75rem);min-width:0}.toolbar-count{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text, #0f172a);font-weight:var(--font-weight-semibold);font-size:.875rem}.toolbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2, .5rem);justify-content:flex-end}@keyframes shiftToolbarSlideIn{0%{opacity:0;top:-3.5rem}to{opacity:1;top:0}}@media(max-width:768px){.shift-selection-toolbar{inset:auto 0 0;flex-direction:column;align-items:stretch;gap:10px;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;border-bottom:0;border-top:1px solid var(--color-border, #e5e7eb);box-shadow:0 -8px 28px #2a262229;animation:shiftToolbarSlideUp .28s ease-out}.toolbar-left{justify-content:space-between;width:100%}.toolbar-count{font-size:.9375rem}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.toolbar-actions .puls-btn{width:100%}.toolbar-actions .puls-btn-danger{grid-column:1 / -1}}@keyframes shiftToolbarSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-header:has(.open-shifts-header-actions){display:flex;justify-content:space-between;align-items:center}.open-shifts-header-actions{display:flex;align-items:center;gap:1rem}.open-shifts-updating{font-size:.85rem;color:#6b6259;font-style:italic}.open-shifts-controls{padding:1rem 1.5rem;border-bottom:1px solid #EDE7DC;display:flex;flex-direction:column;gap:1rem}.week-selector{display:flex;align-items:center;gap:1rem}.btn-nav{padding:.5rem 1rem;background:#ede7dc;border:1px solid #EDE7DC;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-nav:hover{background:#e0e0e0}.week-display{display:flex;align-items:center;gap:1rem;flex:1;justify-content:center;font-weight:600}.btn-today{padding:.5rem 1rem;background:var(--schedule-primary, #4A6741);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-today:hover{background:var(--schedule-primary-hover, #4A6741)}.filter-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;background:#ede7dc;border:1px solid #EDE7DC;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.filter-btn:hover{background:#e0e0e0}.filter-btn.active{background:var(--schedule-primary, #4A6741);color:#fff;border-color:var(--schedule-primary, #4A6741)}.open-shifts-content{flex:1;overflow-y:auto;padding:1.5rem}.week-group{margin-bottom:2rem}.week-group:last-child{margin-bottom:0}.week-group-title{font-size:1.25rem;font-weight:600;color:#2a2622;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #EDE7DC}.day-group{margin-bottom:1.5rem}.day-group:last-child{margin-bottom:0}.day-group-title{font-size:1.1rem;font-weight:600;color:#2a2622;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #EDE7DC}.open-shifts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.open-shift-card{background:#fefcf9;border:1px solid #EDE7DC;border-radius:8px;padding:1rem;box-shadow:0 2px 4px #0000001a;transition:all .2s}.open-shift-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.open-shift-card.fully-staffed{opacity:.85;border-color:var(--schedule-primary, #4A6741)}.open-shift-header{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #EDE7DC}.shift-type-badge{background-color:#ede7dc;padding:.2rem .5rem;border-radius:4px;color:#343a40;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.location-badge{padding:.2rem .5rem;background:var(--schedule-primary, #4A6741);border-radius:4px;font-size:.75rem;color:#fff;font-weight:500}.positions-indicator{flex:1;min-width:150px}.positions-progress{width:100%;height:8px;margin-bottom:.25rem;border:none;border-radius:4px;overflow:hidden;appearance:none;background:#f0f0f0}.positions-progress::-webkit-progress-bar{background:#f0f0f0;border-radius:4px}.positions-progress::-webkit-progress-value{background:var(--schedule-primary, #4A6741);border-radius:4px}.positions-progress::-moz-progress-bar{background:var(--schedule-primary, #4A6741);border-radius:4px}.positions-indicator.full .positions-progress::-webkit-progress-value{background:var(--schedule-primary, #4A6741)}.positions-indicator.full .positions-progress::-moz-progress-bar{background:var(--schedule-primary, #4A6741)}.positions-text{font-size:.875rem;color:#6b6259;font-weight:500}.applications-badge{display:flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:#f5edd8;border:1px solid #C4963A;border-radius:4px;font-size:.875rem}.badge-count{font-weight:600;color:#8b6520}.badge-label{color:#8b6520}.open-shift-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{display:flex;gap:.5rem}.detail-label{font-size:.875rem;color:#6b6259;font-weight:500;min-width:80px}.detail-value{font-size:.875rem;color:#2a2622;flex:1}.open-shift-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid #EDE7DC}.open-shift-actions button{flex:1;min-width:100px;padding:.5rem;border:1px solid #EDE7DC;border-radius:4px;background:#fefcf9;cursor:pointer;font-size:.875rem;transition:all .2s}.open-shift-actions button:hover:not(:disabled){background:#ede7dc}.open-shift-actions button:disabled{opacity:.5;cursor:not-allowed}.btn-applications{background:var(--schedule-primary, #4A6741);color:#fff;border-color:var(--schedule-primary, #4A6741)}.btn-applications:hover:not(:disabled){background:var(--schedule-primary-hover, #4A6741)}.btn-assign{background:var(--schedule-primary, #4A6741);color:#fff;border-color:var(--schedule-primary, #4A6741)}.btn-assign:hover:not(:disabled){background:var(--schedule-primary-hover, #4A6741)}.btn-convert{background:#f7f3ec;color:var(--schedule-text-body, #334155);border:1px solid var(--schedule-border, #E5E7EB)}.btn-convert:hover:not(:disabled){background:#ede7dc;border-color:var(--schedule-primary, #4A6741)}.btn-edit{background:#fefcf9;color:var(--schedule-primary, #4A6741);border:1px solid var(--schedule-primary, #4A6741)}.btn-edit:hover:not(:disabled){background:#f5e8e3;border-color:var(--schedule-primary-hover, #4A6741)}.btn-delete{background:#c4614a;color:#fff;border-color:#c4614a}.btn-delete:hover:not(:disabled){background:#c4614a}.no-shifts{text-align:center;padding:3rem;color:#6b6259;font-size:1.1rem}.loading{text-align:center;padding:2rem;color:#6b6259}.error-message{padding:1rem;background:#fee;color:#c33;border-radius:4px;margin-bottom:1rem}.btn-open-shifts{padding:.5rem 1rem;background:var(--schedule-primary, #4A6741);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s;margin-left:.5rem}.btn-open-shifts:hover{background:var(--schedule-primary-hover, #4A6741)}.modal-root__panel.form-modal-v2.open-shift-detail-modal:not(.modal-content){width:min(640px,calc(100vw - 32px));max-width:640px}.open-shift-detail-modal .form-modal-body .modal-root__body-scale{gap:12px;padding:14px}.open-shift-detail-modal .open-shift-detail__toolbar{display:flex;justify-content:flex-start}.open-shift-detail-modal .open-shift-detail__views{display:grid;grid-template-areas:"stack";align-items:stretch;min-height:0}.open-shift-detail-modal .open-shift-detail__views>.form-modal-card{grid-area:stack;align-self:stretch;width:100%;height:100%;min-height:100%;box-sizing:border-box;visibility:hidden;pointer-events:none}.open-shift-detail-modal .open-shift-detail__views>.form-modal-card.is-active{visibility:visible;pointer-events:auto;z-index:1}.open-shift-detail-modal .open-shift-detail__panel.form-modal-card,.open-shift-detail-modal .open-shift-detail__edit.form-modal-card{padding:14px}.open-shift-detail-modal .open-shift-detail__panel.form-modal-card{display:flex;flex-direction:column;min-height:100%}.open-shift-detail-modal .open-shift-detail__hero{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem 1rem;margin-bottom:.65rem}.open-shift-detail-modal .open-shift-detail__hero-main{display:flex;flex-direction:column;gap:.35rem;min-width:0}.open-shift-detail-modal .open-shift-detail__type{align-self:flex-start;font-weight:var(--font-weight-semibold, 600);letter-spacing:.01em}.open-shift-detail-modal .open-shift-detail__hero-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.open-shift-detail-modal .open-shift-detail__stat-badge{min-height:1.375rem;padding:.1rem .45rem;font-size:.6875rem;line-height:1.2}.open-shift-detail-modal .open-shift-detail__when{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:0;color:var(--ink, #2a2622);font-size:1rem;font-weight:var(--font-weight-semibold, 600);line-height:1.25;font-variant-numeric:tabular-nums}.open-shift-detail-modal .open-shift-detail__when-sep{color:var(--ink-faint, #9a9188);font-weight:500}.open-shift-detail-modal .open-shift-detail__progress{margin-bottom:.85rem}.open-shift-detail-modal .open-shift-detail__progress-bar{width:100%;height:6px;border:none;border-radius:999px;overflow:hidden;appearance:none;background:var(--cream-dark, #ede7dc)}.open-shift-detail-modal .open-shift-detail__progress-bar::-webkit-progress-bar{background:var(--cream-dark, #ede7dc);border-radius:999px}.open-shift-detail-modal .open-shift-detail__progress-bar::-webkit-progress-value{background:var(--sage, #4a6741);border-radius:999px}.open-shift-detail-modal .open-shift-detail__progress-bar::-moz-progress-bar{background:var(--sage, #4a6741);border-radius:999px}.open-shift-detail-modal .open-shift-detail__progress.is-full .open-shift-detail__progress-bar::-webkit-progress-value,.open-shift-detail-modal .open-shift-detail__progress.is-full .open-shift-detail__progress-bar::-moz-progress-bar{background:var(--sage-dark, #2d4229)}.open-shift-detail-modal .open-shift-detail__split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:.85rem 1rem;align-items:stretch;flex:1 1 auto;min-height:0}.open-shift-detail-modal .open-shift-detail__facts{display:flex;flex-direction:column;gap:.55rem;min-width:0;min-height:100%;padding-right:.85rem;border-right:1px solid var(--cream-dark, #ede7dc)}.open-shift-detail-modal .open-shift-detail__fact{display:flex;flex-direction:column;gap:.15rem}.open-shift-detail-modal .open-shift-detail__fact-label{color:var(--ink-mid, #6b6259);font-size:.6875rem;font-weight:var(--font-weight-semibold, 600);letter-spacing:.02em}.open-shift-detail-modal .open-shift-detail__fact-value{color:var(--ink, #2a2622);font-size:.8125rem;font-weight:500;line-height:1.35}.open-shift-detail-modal .open-shift-detail__hint{margin:auto 0 0;color:var(--ink-mid, #6b6259);font-size:.75rem;line-height:1.35}.open-shift-detail-modal .open-shift-detail__apps-col{display:flex;flex-direction:column;min-width:0;min-height:100%}.open-shift-detail-modal .open-shift-detail__apps-title{margin-bottom:.55rem}.open-shift-detail-modal .open-shift-detail__apps{display:flex;flex:1 1 auto;flex-direction:column;gap:.55rem;min-height:0}.open-shift-detail-modal .open-shift-detail__apps-empty{display:flex;flex:1 1 auto;align-items:center;justify-content:center;margin:0;min-height:7.5rem;padding:1.25rem .85rem;border:1px dashed var(--cream-deeper, #d4c9b8);border-radius:10px;background:var(--cream, #f7f3ec);color:var(--ink-mid, #6b6259);font-size:.8125rem;text-align:center}.open-shift-detail-modal .open-shift-detail__app-list{display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none}.open-shift-detail-modal .open-shift-detail__app-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--cream-dark, #ede7dc);border-radius:10px;background:var(--cream, #f7f3ec)}.open-shift-detail-modal .open-shift-detail__app-name{min-width:0;color:var(--ink, #2a2622);font-size:.8125rem;font-weight:600;line-height:1.3}.open-shift-detail-modal .open-shift-detail__pass-actions,.open-shift-detail-modal .open-shift-detail__edit-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem}.open-shift-detail-modal .open-shift-detail__pass-actions{margin-top:auto;padding-top:.35rem}.open-shift-detail-modal .open-shift-detail__edit-actions{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--cream-dark, #ede7dc)}.open-shift-detail-modal .edit-open-shift-form-content--embedded .error-message{margin-bottom:.75rem;padding:.55rem .7rem;border:1px solid rgba(196,97,74,.28);border-radius:10px;background:var(--terra-pale, #f5e8e3);color:var(--terra, #c4614a);font-size:.8125rem}.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-fields-grid{gap:10px 12px}.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-field input[type=text],.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-field input[type=number],.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-field textarea,.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-field .custom-select-trigger,.open-shift-detail-modal .edit-open-shift-form-content--embedded .form-modal-field .shift-modal-time-input{width:100%;box-sizing:border-box;min-height:38px;padding:8px 10px;border:1px solid var(--cream-dark, #ede7dc);border-radius:10px;background:var(--warm-white, #fefcf9);color:var(--ink, #2a2622);font:inherit}@media(max-width:767px){.modal-root__overlay:has(.open-shifts-modal),.modal-root__overlay:has(.open-shift-detail-modal){align-items:stretch;justify-content:stretch;padding:0}.modal-root__panel.open-shifts-modal.modal-root__panel--fullscreen,.modal-root__panel.open-shift-detail-modal.modal-root__panel--fullscreen{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.modal-root__panel.form-modal-v2.open-shift-detail-modal:not(.modal-content){width:100vw;max-width:100vw}.open-shifts-controls{padding:.75rem 1rem}.week-selector{flex-direction:column;align-items:stretch;gap:.5rem}.week-display{flex-wrap:wrap;justify-content:center}.filter-buttons{display:grid;grid-template-columns:1fr 1fr}.filter-btn{text-align:center}.open-shifts-grid{grid-template-columns:1fr}.open-shift-detail-modal .open-shift-detail__split{grid-template-columns:1fr;gap:.85rem}.open-shift-detail-modal .open-shift-detail__facts{min-height:0;padding-right:0;padding-bottom:.75rem;border-right:0;border-bottom:1px solid var(--cream-dark, #ede7dc)}.open-shift-detail-modal .open-shift-detail__hint{margin-top:.35rem}.open-shift-detail-modal .open-shift-detail__apps-empty{min-height:5.5rem}}.shift-type-manager-modal .shift-type-manager.form-modal-card{padding:14px}.shift-type-manager__loading,.shift-type-manager__empty{margin:0;padding:1.5rem .75rem;color:var(--ink-mid, #6b6259);text-align:center;font-size:.875rem}.shift-type-manager__list{display:flex;flex-direction:column;gap:.5rem}.shift-type-manager__item{display:flex;flex-direction:column;gap:.65rem;padding:.55rem .75rem;border:1px solid var(--cream-dark, #ede7dc);border-radius:10px;background:var(--warm-white, #fefcf9);box-shadow:none}.shift-type-manager__item--editing,.shift-type-manager__item--creating{gap:1rem;padding:1rem 1.1rem;background:var(--warm-white, #fefcf9);border-color:var(--cream-deeper, #d4c9b8)}.shift-type-manager__item--inactive{opacity:.6}.shift-type-manager__item-title{margin:0;padding-bottom:.65rem;border-bottom:1px solid var(--cream-dark, #ede7dc);color:var(--ink, #2a2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);letter-spacing:.01em}.shift-type-manager__item-main{display:flex;align-items:center;gap:.65rem;min-width:0}.shift-type-manager__item-body{display:flex;flex:1;flex-direction:column;gap:.1rem;min-width:0}.shift-type-manager__swatch{flex-shrink:0}.shift-type-manager__item-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0}.shift-type-manager__name{color:var(--ink, #2a2622);font-size:.9375rem;font-weight:var(--font-weight-semibold, 600);line-height:1.25}.shift-type-manager__item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .35rem;min-width:0}.shift-type-manager__work-group,.shift-type-manager__policy{color:var(--ink-mid, #6b6259);font-size:.8125rem;font-weight:500;line-height:1.3}.shift-type-manager__meta-sep{color:var(--ink-faint, #9a9188);font-size:.8125rem;line-height:1.3}.shift-type-manager__missing{color:var(--ink-mid, #6b6259);font-style:italic}.shift-type-manager__item-time{color:var(--ink, #2a2622);font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.3}.shift-type-manager__actions-group{display:inline-flex;flex-shrink:0;align-items:center;gap:6px}.shift-type-manager__text-btn{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:.3rem .7rem;border:1px solid var(--cream-deeper, #d4c9b8);border-radius:8px;background:var(--warm-white, #fefcf9);color:var(--ink, #2a2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);white-space:nowrap;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.shift-type-manager__text-btn:hover:not(:disabled){background:var(--cream, #f7f3ec)}.shift-type-manager__text-btn:disabled{opacity:.5;cursor:not-allowed}.shift-type-manager__text-btn--danger{color:var(--terra, #c4614a);background:var(--terra-pale, #f5e8e3);border-color:color-mix(in srgb,var(--terra, #c4614a) 28%,var(--cream-deeper, #d4c9b8))}.shift-type-manager__text-btn--danger:hover:not(:disabled){background:var(--terra, #c4614a);border-color:var(--terra, #c4614a);color:var(--warm-white, #fefcf9)}.shift-type-manager__warning-badge,.shift-type-manager__inactive-badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:var(--font-weight-semibold, 600);white-space:nowrap}.shift-type-manager__warning-badge{background:color-mix(in srgb,#f5b43c 18%,var(--warm-white, #fefcf9));border:1px solid color-mix(in srgb,#f5b43c 45%,transparent);color:#8a6110}.shift-type-manager__inactive-badge{background:var(--cream, #f7f3ec);border:1px solid var(--cream-deeper, #d4c9b8);color:var(--ink-mid, #6b6259)}.shift-type-manager__fields.form-modal-fields-grid{gap:10px 14px;font-size:.8125rem}.shift-type-manager__item--editing .form-modal-field__label,.shift-type-manager__item--creating .form-modal-field__label{color:var(--ink-mid, #6b6259);font-size:.625rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.shift-type-manager__field-color,.shift-type-manager__field-name{grid-column:span 1}.shift-type-manager__color-input{width:1.5rem;height:1.5rem;padding:0;border:1px solid var(--cream-deeper, #d4c9b8);border-radius:50%;cursor:pointer;background:transparent;overflow:hidden;appearance:none;-webkit-appearance:none}.shift-type-manager__color-input::-webkit-color-swatch-wrapper{padding:0}.shift-type-manager__color-input::-webkit-color-swatch{border:none;border-radius:50%}.shift-type-manager__color-input::-moz-color-swatch{border:none;border-radius:50%}.shift-type-manager__color-input:focus,.shift-type-manager__color-input:focus-visible{outline:none;box-shadow:none;border-color:var(--ink-light, #a89c8e)}.shift-type-manager__fields input.shift-type-manager__text-input,.shift-type-manager__fields input.shift-type-manager__time-input,.form-modal-field input.shift-type-manager__text-input,.form-modal-field input.shift-type-manager__time-input{width:100%;min-height:2rem;height:2rem;box-sizing:border-box;padding:0 .65rem;border:1px solid var(--cream-deeper, #d4c9b8);border-radius:8px;background:var(--cream, #f7f3ec);color:var(--ink, #2a2622);font-size:.8125rem;font-weight:500;line-height:1.3;outline:none;box-shadow:none;transition:border-color .12s,background .12s}.shift-type-manager__fields input.shift-type-manager__text-input:hover:not(:disabled),.shift-type-manager__fields input.shift-type-manager__time-input:hover:not(:disabled),.form-modal-field input.shift-type-manager__text-input:hover:not(:disabled),.form-modal-field input.shift-type-manager__time-input:hover:not(:disabled){background:var(--warm-white, #fefcf9)}.shift-type-manager__fields input.shift-type-manager__text-input:focus,.shift-type-manager__fields input.shift-type-manager__time-input:focus,.form-modal-field input.shift-type-manager__text-input:focus,.form-modal-field input.shift-type-manager__time-input:focus{border-color:var(--ink-light, #a89c8e);background:var(--warm-white, #fefcf9);box-shadow:none}.shift-type-manager__fields input.shift-type-manager__time-input,.form-modal-field input.shift-type-manager__time-input{font-variant-numeric:tabular-nums}.shift-type-manager__wg-select,.shift-type-manager__policy-select{width:100%;max-width:none}.shift-type-manager__wg-select .custom-select-trigger,.shift-type-manager__policy-select .custom-select-trigger{min-height:2rem;height:auto;max-height:none;padding:.35rem 1.75rem .35rem .65rem;border-radius:8px;border-color:var(--cream-deeper, #d4c9b8);background:var(--cream, #f7f3ec);font-size:.8125rem;font-weight:500;justify-content:flex-start;text-align:left;box-shadow:none}.shift-type-manager__wg-select .custom-select-trigger:hover,.shift-type-manager__policy-select .custom-select-trigger:hover{background:var(--warm-white, #fefcf9)}.shift-type-manager__wg-select .custom-select-trigger:focus,.shift-type-manager__wg-select .custom-select-trigger.open,.shift-type-manager__policy-select .custom-select-trigger:focus,.shift-type-manager__policy-select .custom-select-trigger.open{border-color:var(--ink-light, #a89c8e);background:var(--warm-white, #fefcf9);box-shadow:none}.shift-type-manager__wg-select .custom-select-trigger .selected,.shift-type-manager__wg-select .custom-select-trigger .placeholder,.shift-type-manager__policy-select .custom-select-trigger .selected,.shift-type-manager__policy-select .custom-select-trigger .placeholder{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1;text-align:left}.shift-type-manager__item-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.15rem;padding-top:.85rem;border-top:1px solid var(--cream-dark, #ede7dc)}.shift-type-manager__toggle-inactive{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .85rem;border:1px solid var(--cream-deeper, #d4c9b8);border-radius:10px;background:transparent;color:var(--ink, #2a2622);font-size:.8125rem;font-weight:var(--font-weight-semibold, 600);cursor:pointer;transition:background .12s,border-color .12s}.shift-type-manager__toggle-inactive:hover:not(:disabled){background:var(--cream, #f7f3ec)}.shift-type-manager__toggle-inactive:disabled{opacity:.5;cursor:not-allowed}.shift-type-manager__fetching{margin-left:.5rem;font-size:.75rem;color:var(--ink-mid, #6b6259)}.shift-type-manager-modal .form-modal-footer__left{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}@media(min-width:720px){.shift-type-manager-modal .shift-type-manager.form-modal-card{padding:16px}.shift-type-manager__list{gap:.5rem}.shift-type-manager__field-color{grid-column:1;max-width:5.5rem}.shift-type-manager__field-name{grid-column:2}}@media(max-width:640px){.shift-type-manager-modal .form-modal-footer__left,.shift-type-manager-modal .form-modal-footer__separator{display:flex}.shift-type-manager-modal .form-modal-footer__bar{flex-wrap:wrap;justify-content:space-between;gap:.75rem}.shift-type-manager-modal .form-modal-footer__actions,.shift-type-manager-modal .form-modal-footer__actions .puls-btn{flex:0 0 auto}.shift-type-manager__fields.form-modal-fields-grid{grid-template-columns:1fr 1fr}.shift-type-manager__field-color{grid-column:1}.shift-type-manager__field-name{grid-column:2}.shift-type-manager__item-footer .puls-btn{flex:1 1 auto;justify-content:center}}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%);min-width:220px;max-width:500px;padding:12px 12px 12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:12px;z-index:10000;animation:slideDown .3s ease-out;width:fit-content}@keyframes slideDown{0%{transform:translate(-50%,-100%);opacity:0}to{transform:translate(-50%);opacity:1}}.toast__content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.toast__icon{font-size:20px;font-weight:var(--font-weight-semibold);flex-shrink:0}.toast__message{font-size:14px;line-height:1.5}.toast__close{background:#ffffff40;border:none;color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;margin-left:8px;transition:all .2s ease}.toast__close:hover{background:#ffffff73;transform:scale(1.1)}.toast--success{background-color:var(--color-toast-success);color:#fff}.toast--error{background-color:#ef4444;color:#fff}.toast--info{background-color:#3b82f6;color:#fff}.schedule-app-container{padding:var(--space-6, 1.5rem);background:#f7f3ec;min-height:100vh;animation:fadeIn .4s ease-out;display:block;width:100%}.schedule-app-container.embedded{padding:var(--space-6, 1.5rem);min-height:auto;display:block;width:100%;background:var(--color-bg-light, #F7F3EC)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.schedule-app-container .loading{text-align:center;padding:var(--space-8, 2rem);color:#a89c8e;font-size:1.1rem}.schedule-app-container .error-message{text-align:center;padding:var(--space-6, 1.5rem);background:#f5e8e3;color:#c4614a;border-radius:var(--radius-md, 8px);margin:var(--space-4, 1rem) 0}.schedule-container{width:100%;max-width:100%}:root{--schedule-btn-primary: #4A6741;--schedule-btn-primary-hover: #2D4229;--schedule-btn-secondary-bg: #EDE7DC;--schedule-btn-secondary-text: #342F2A;--schedule-btn-secondary-border: transparent;--schedule-btn-secondary-hover-bg: #D4C9B8}.btn-primary{background:var(--schedule-btn-primary);color:#fff;padding:var(--space-3, .75rem) var(--space-6, 1.5rem);border-radius:var(--radius-md, 8px);font-weight:600;border:none;cursor:pointer;transition:all .2s ease;font-size:1rem;font-family:inherit}.btn-primary:hover:not(:disabled){background:var(--schedule-btn-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #4a67414d}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--schedule-btn-secondary-bg);color:var(--schedule-btn-secondary-text);padding:var(--space-3, .75rem) var(--space-6, 1.5rem);border-radius:var(--radius-md, 8px);font-weight:600;border:1px solid var(--schedule-btn-secondary-border);cursor:pointer;transition:all .2s ease;font-size:1rem;font-family:inherit}.btn-secondary:hover:not(:disabled){background:var(--schedule-btn-secondary-hover-bg);border-color:transparent}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-nav{padding:var(--space-2, .5rem) var(--space-4, 1rem);background:#f7f3ec;border:1px solid #EDE7DC;border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .2s ease;color:#2a2622;font-size:.9rem;font-family:inherit}.btn-nav:hover{background:var(--schedule-btn-primary);color:#fff;border-color:var(--schedule-btn-primary)}.btn-today{padding:var(--space-2, .5rem) var(--space-4, 1rem);background:var(--schedule-btn-primary);color:#fff;border:none;border-radius:var(--radius-md, 8px);cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s ease;font-family:inherit}.btn-today:hover{background:var(--schedule-btn-primary-hover);transform:translateY(-1px)}.btn-delete,.btn-danger{background:#c4614a;color:#fff;padding:var(--space-3, .75rem) var(--space-6, 1.5rem);border-radius:var(--radius-md, 8px);font-weight:600;border:none;cursor:pointer;transition:all .2s ease;font-size:1rem;font-family:inherit}.btn-delete:hover:not(:disabled),.btn-danger:hover:not(:disabled){background:#c4614a;transform:translateY(-1px)}.btn-delete:disabled,.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:var(--space-2, .5rem) var(--space-3, .75rem);font-size:.875rem}.btn-icon{width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%}.btn-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#a89c8e;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md, 8px);transition:all .2s ease}.btn-close:hover{background:#ede7dc;color:#2a2622}.button-group{display:flex;gap:var(--space-3, .75rem);align-items:center}:root{--schedule-primary: #4A6741;--schedule-primary-hover: #2D4229;--schedule-border: #EDE7DC;--schedule-text: #2A2622;--schedule-text-body: #2A2622;--schedule-muted: #A89C8E}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:var(--space-4, 1rem);animation:fadeIn .2s ease-out both}.modal-content{background:#fefcf9;border-radius:12px;box-shadow:0 8px 24px #00000026;max-width:600px;width:100%;max-height:90vh;animation:slideUp .3s ease-out both;position:relative;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--schedule-border);flex-shrink:0}.modal-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#CBD5E0 #F7FAFC}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f7fafc;border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.modal-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--schedule-border);flex-shrink:0;background:#fefcf9}.close-button,.modal-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border-radius:50%;background:#ede7dc;border:1px solid var(--schedule-border);color:var(--schedule-muted);font-size:22px;font-weight:400;line-height:1;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;z-index:10}.close-button:hover,.modal-close:hover{background:#f5e8e3;border-color:#f5e8e3;color:#c4614a;transform:rotate(90deg) scale(1.1)}.modal-content--narrow{max-width:500px}.modal-content--wide{max-width:800px}.modal-content--wide .modal-header{padding:1rem 1.5rem .75rem}.modal-content--wide .modal-body{padding:.75rem 1.5rem 1rem}.modal-content--xl{max-width:1200px}.modal-content--scroll{max-height:80vh;overflow-y:auto}.modal-content--compact .modal-header{padding:1rem 1.25rem .75rem}.modal-content--compact .modal-header h2{font-size:1.15rem}.modal-content--compact .modal-body{padding:1rem 1.25rem}.modal-content--compact .modal-body p{margin:0 0 .5rem;font-size:.9375rem}.modal-content--compact .modal-footer{padding:.75rem 1.25rem 1rem;border-top:none}.modal-content h2,.modal-header h2{margin:0;color:var(--schedule-text);font-size:1.35rem;font-weight:var(--font-weight-semibold);padding-right:2.5rem}.modal-content h3{margin:0 0 .75rem;color:var(--schedule-text);font-size:1.15rem;font-weight:600}.modal-content p{margin:0 0 .75rem;color:var(--schedule-text-body);line-height:1.5}.modal-action-row{display:flex;gap:.65rem;justify-content:flex-end}.confirm-actions{display:flex;gap:var(--space-3, .75rem);justify-content:center;margin-top:var(--space-4, 1rem)}.modal-form{margin-top:var(--space-4, 1rem);display:flex;flex-direction:column;gap:var(--space-4, 1rem)}.modal-form-label{display:block;margin-bottom:var(--space-2, .5rem);font-weight:600;color:var(--schedule-text);font-size:.9375rem}.modal-form-row{display:flex;gap:var(--space-2, .5rem);align-items:center}.modal-input{padding:var(--space-2, .5rem) var(--space-3, .75rem);width:100%;border:1px solid var(--schedule-border);border-radius:var(--radius-md, 8px);font-size:1rem;font-family:inherit;transition:all .2s ease}.modal-input:focus{outline:none;border-color:var(--schedule-primary);box-shadow:0 0 0 3px #4a67411a}.modal-input--year{width:80px}.modal-input--week{width:60px}.modal-input--offset{width:100px}.modal-textarea{min-height:80px;resize:vertical}.modal-inline-note{margin-left:var(--space-2, .5rem);color:var(--schedule-muted);font-size:.875rem}.modal-help-text{color:var(--schedule-muted);font-size:.875rem;margin-top:var(--space-1, .25rem)}.modal-list-container{margin-top:var(--space-4, 1rem);max-height:300px;overflow-y:auto;border:1px solid var(--schedule-border);border-radius:var(--radius-md, 8px);padding:var(--space-2, .5rem);background:#f7f3ec}.modal-list-container--small{max-height:200px}.modal-list{list-style:none;padding:0;margin:0}.modal-list-item{padding:var(--space-2, .5rem);border-bottom:1px solid #EDE7DC;font-size:.9rem}.modal-list-item:last-child{border-bottom:none}.modal-list-item--compact{font-size:.85rem;padding:var(--space-1, .25rem) var(--space-2, .5rem)}.modal-list-item--muted{font-style:italic;color:var(--schedule-muted)}.modal-draft-badge{color:var(--schedule-primary);margin-left:var(--space-2, .5rem);font-weight:600}.modal-result{margin-top:var(--space-4, 1rem);padding:var(--space-3, .75rem);border-radius:var(--radius-md, 8px);border:1px solid transparent}.modal-result--success{background-color:#e8f0e4;border-color:#e8f0e4;color:#2d4229}.modal-result--error{background-color:#f5e8e3;border-color:#f5e8e3;color:#8b3d2a}.modal-result--neutral{background-color:#f0f0f0;border-color:#ede7dc;color:var(--schedule-text-body)}.modal-result-title{font-weight:600;margin-bottom:var(--space-2, .5rem)}.modal-button--small{padding:var(--space-2, .5rem) var(--space-3, .75rem);font-size:.85rem}.modal-overlay--top{z-index:3000}.modal-content--small{max-width:400px}.modal-actions{display:flex;gap:.65rem;justify-content:flex-end;margin-top:1rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.floating-toast{position:fixed;padding:var(--space-4, 1rem) var(--space-5, 1.25rem);background:linear-gradient(135deg,#4a6741,#4a6741);color:#fff;border-radius:var(--radius-lg, 12px);box-shadow:0 4px 16px #00000026;z-index:1000;animation:slideIn .3s ease-out;display:flex;flex-direction:column;gap:var(--space-3, .75rem);min-width:280px;max-width:400px}.floating-toast--left{bottom:20px;left:20px}.floating-toast--right{bottom:20px;right:20px}.floating-toast--top-left{top:20px;left:20px}.floating-toast--top-right{top:20px;right:20px}.floating-toast p{margin:0;font-weight:600;font-size:.95rem;line-height:1.4}.floating-toast__button{background:#fff;color:#4a6741;border:none;padding:var(--space-2, .5rem) var(--space-4, 1rem);border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem;width:100%;font-family:inherit}.floating-toast__button:hover{background:#f7f3ec;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.floating-toast .toast-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ffffff4d;border-radius:50%;margin-right:var(--space-2, .5rem)}.floating-toast--closable{padding-right:var(--space-8, 2rem);position:relative}.floating-toast .toast-close{position:absolute;top:var(--space-2, .5rem);right:var(--space-2, .5rem);background:#ffffff4d;border:none;color:#fff;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;transition:all .2s ease}.floating-toast .toast-close:hover{background:#ffffff80;transform:scale(1.1)}.floating-toast--success{background:linear-gradient(135deg,var(--color-toast-success),#2D4229)}.floating-toast--error{background:linear-gradient(135deg,#ef4444,#dc2626)}.floating-toast--warning{background:linear-gradient(135deg,#c4963a,#d97706)}.floating-toast--info{background:linear-gradient(135deg,#3b82f6,#2563eb)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.floating-toast--left,.floating-toast--top-left{animation:slideInLeft .3s ease-out}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.floating-toast--hiding{animation:fadeOut .3s ease-out forwards}.draft-count-badge{display:inline-flex;align-items:center;justify-content:center;background:#ffffff4d;padding:.125rem var(--space-3, .75rem);border-radius:var(--radius-full, 9999px);font-weight:500;font-size:.875rem;margin-right:var(--space-2, .5rem)}.admin-schedule{display:flex;flex-direction:column;gap:1.25rem;width:100%;max-width:var(--layout-page-max-width);margin-left:auto;margin-right:auto;min-width:0}@media(min-width:769px){.content:has(>.admin-schedule){overflow:hidden}.content>.admin-schedule{flex:1 1 auto;width:100%;max-width:var(--layout-page-max-width);min-width:0;min-height:0;overflow:hidden}.content>.admin-schedule .schedule-container{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.content>.admin-schedule .schedule-app-container.embedded{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.content>.admin-schedule .schedule-week-view{overflow:hidden}.content>.admin-schedule .admin-schedule__toolbar,.content>.admin-schedule .schedule-day-strip{flex-shrink:0}.content>.admin-schedule .admin-schedule__grid-card{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.content>.admin-schedule .schedule-grid-wrapper{flex:0 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}.content>.admin-schedule .schedule-grid-container{flex:0 1 auto;height:fit-content;max-height:100%;min-height:0;overflow-x:hidden;overflow-y:auto}}.admin-schedule .schedule-container{margin-top:0;min-width:0}.admin-schedule .schedule-app-container.embedded{padding:0;background:transparent}.admin-schedule .schedule-week-view{max-width:100%;min-width:0;gap:1rem}.admin-schedule__toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-schedule__toolbar-left,.admin-schedule__toolbar-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.admin-schedule__toolbar-summary{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-schedule__grid-card{overflow:hidden;padding:0}.admin-schedule .schedule-grid-wrapper{min-width:0}.admin-schedule .schedule-grid-container{border:0;border-radius:0;box-shadow:none;margin-top:0}.admin-schedule .sg-shift{border-radius:10px;min-height:46px}.admin-schedule .sg-shift--booked{border:1px solid rgba(255,255,255,.28)}.admin-schedule .sg-shift--open{background:var(--color-surface-muted, #f8fafc);border:1px dashed var(--color-border-strong, #94a3b8);color:var(--color-text, #0f172a)}.admin-schedule .sg-shift--draft{border-style:dashed}.admin-schedule .modal-content{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:18px;box-shadow:var(--shadow-lg, 0 20px 45px rgba(15, 23, 42, .18))}.admin-schedule .modal-header,.admin-schedule .modal-footer{background:var(--color-surface, #ffffff);border-color:var(--color-border, #e5e7eb)}.admin-schedule .modal-header h2,.admin-schedule .modal-content h2,.admin-schedule .modal-content h3{color:var(--color-text, #0f172a)}.admin-schedule .modal-body,.admin-schedule .modal-content p{color:var(--color-text-secondary, #475569)}.admin-schedule .modal-close,.admin-schedule .close-button{background:var(--color-surface-muted, #f8fafc);border-color:var(--color-border, #e5e7eb);color:var(--color-text-secondary, #64748b)}.admin-schedule .open-shifts-controls,.admin-schedule .filter-btn,.admin-schedule .btn-nav{border-color:var(--color-border, #e5e7eb);background:var(--color-surface-muted, #f8fafc)}@media(max-width:768px){.content>.admin-schedule,.content>.admin-schedule .schedule-container,.content>.admin-schedule .schedule-app-container.embedded,.content>.admin-schedule .schedule-app-container.embedded .schedule-week-view,.content>.admin-schedule .schedule-grid-wrapper{flex:0 0 auto;min-height:auto;height:auto;overflow:visible}.admin-schedule__grid-card{overflow:visible}.admin-schedule .schedule-grid-container{flex:0 0 auto;min-height:auto;max-height:none;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.admin-schedule__toolbar{align-items:stretch;flex-direction:column}.admin-schedule__toolbar-left,.admin-schedule__toolbar-right{width:100%;justify-content:space-between}}.toast-container{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;align-items:center;gap:10px;width:max-content;max-width:min(420px,calc(100vw - 32px));box-sizing:border-box;pointer-events:none}.toast-container .toast{position:relative;top:0;left:0;transform:none;width:auto;max-width:100%;pointer-events:auto;animation:toast-slide-in .28s ease-out}.toast{box-sizing:border-box;padding:12px 14px;border-radius:16px;border:1px solid rgba(254,252,249,.14);box-shadow:0 8px 28px #2a26222e,0 2px 8px #2a262214;font-size:.875rem;font-weight:600;line-height:1.4}@keyframes toast-slide-in{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideUpStacked{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.toast-container .toast-content,.toast .toast-content{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;width:max-content;max-width:100%}.toast-container .toast-icon,.toast .toast-icon{display:inline-grid;place-items:center;width:28px;height:28px;margin:0;border-radius:999px;background:#fefcf929;font-size:.875rem;line-height:1}.toast-container .toast-message,.toast .toast-message{min-width:0;overflow-wrap:anywhere;word-break:break-word}.toast-container .toast-close,.toast .toast-close{position:static;top:auto;right:auto;flex:none;margin:0;padding:0;width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:999px;background:none;color:inherit;font-size:.875rem;line-height:1;cursor:pointer;opacity:.72;transition:opacity .2s,background .2s;transform:none}.toast-container .toast-close:hover,.toast .toast-close:hover{opacity:1;background:#fefcf924;transform:none}.toast-container .toast-close:focus-visible,.toast .toast-close:focus-visible{outline:2px solid rgba(254,252,249,.7);outline-offset:2px}.toast-success{background-color:var(--color-toast-success);color:#fff}.toast-error{background-color:var(--color-toast-error);color:#fff}.toast-warning{background-color:var(--color-toast-warning);color:#fff}.toast-info{background-color:var(--color-toast-info);color:#fff}:root{--radius-lg: var(--radius-card-lg);--radius-md: var(--radius-card-md);--radius-sm: var(--radius-card-sm)}:root{--color-white: #FEFCF9;--color-black: #2A2622;--sage: #4A6741;--sage-dark: #2D4229;--sage-light: #7A9E6E;--color-gradient-white: #FEFCF9;--color-gradient-light-green: #E8F0E4;--color-gradient-medium-green: #7A9E6E;--color-gradient-green: #4A6741;--color-text-primary: #2A2622;--color-text-heading: #2A2622;--color-text-subheading: #6B6259;--color-text-slate-dark: #2A2622;--color-text-slate-medium: #6B6259;--color-text-slate-light: #A89C8E;--color-text-muted: #A89C8E;--color-bg-white: #FEFCF9;--color-bg-light: #F7F3EC;--color-bg-hover: #EDE7DC;--color-bg-row-hover: #EDE7DC;--color-border-light: #EDE7DC;--color-border-medium: #EDE7DC;--color-border-subtle: #EDE7DC;--color-success-green: #4A6741;--color-warning-orange: #C4963A;--color-error-red: #C4614A;--color-beige-bg: #E8F0E4;--color-beige-hover: #7A9E6E;--color-beige-text: #2D4229;--color-purple-bg: #E8F0E4;--color-purple-hover: #7A9E6E;--color-purple-text: #2D4229;--color-badge-green-start: #4A6741;--color-badge-green-middle: #7A9E6E;--color-badge-green-end: #4A6741;--color-status-approved-bg: #E8F0E4;--color-status-approved-text: #2D4229;--color-status-rejected-bg: #F5E8E3;--color-status-pending-bg: var(--color-warning-bg);--color-status-pending-text: var(--color-warning-text);--sage-alpha-8: rgba(74, 103, 65, .08);--sage-alpha-12: rgba(74, 103, 65, .12);--color-error-red-alpha-8: rgba(196, 97, 74, .08);--color-white-alpha-20: rgba(254, 252, 249, .2);--color-shadow-light: rgba(42, 38, 34, .04);--color-shadow-medium: rgba(42, 38, 34, .06);--color-shadow-dark: rgba(42, 38, 34, .08);--color-shadow-darker: rgba(42, 38, 34, .12);--color-shadow-slate: rgba(42, 38, 34, .1);--color-shadow-overlay: rgba(42, 38, 34, .25);--color-featured-gradient-start: rgba(74, 103, 65, .65);--color-featured-gradient-end: rgba(42, 38, 34, .65);--color-featured-text: #FEFCF9;--color-featured-text-secondary: rgba(254, 252, 249, .9);--color-featured-icon-bg: rgba(254, 252, 249, .3)}:root{--color-success-bg: #E8F0E4;--color-success-bg-alt: #E8F0E4;--color-success-border: #E8F0E4;--color-success-border-alt: #4A6741;--color-success-text: #2D4229;--color-success-text-alt: #2D4229;--color-success-dark: #4A6741;--color-success-darker: #2D4229;--color-error-bg: #F5E8E3;--color-error-bg-subtle: #F5E8E3;--color-error-border: #F5E8E3;--color-error-border-alt: #E8956C;--color-error-text: #8B3D2A;--color-error-dark: #C4614A;--color-error-darker: #8B3D2A;--color-warning-bg: #F5EDD8;--color-warning-border: #F5EDD8;--color-warning-text: #8B6520;--color-warning-text-alt: #8B6520;--color-warning-dark: #C4963A;--color-info: #7A9E6E;--color-info-hover: #4A6741;--color-info-bg: #E8F0E4;--color-info-bg-hover: #E8F0E4;--color-info-bg-subtle: #E8F0E4;--color-info-border: #E8F0E4;--color-info-border-subtle: #E8F0E4;--color-info-text: #2D4229;--color-status-paid: #4A6741;--color-status-paid-dark: #2D4229;--color-status-paid-row-bg: #E8F0E4;--color-action-green: #4A6741;--color-action-green-hover: #2D4229;--color-secondary: #6B6259;--color-secondary-hover: #2A2622;--color-notification-bg: #F5E8E3;--color-notification-text: #8B3D2A;--color-notification-border: #E8956C;--color-bg-subtle: #F7F3EC;--color-neutral-gray: #A89C8E;--color-text-secondary: #6B6259;--color-text-strong: #2A2622;--color-border-input: #D4C9B8;--color-border-legacy: #EDE7DC;--color-toast-success: #4A6741;--color-toast-error: #C4614A;--color-toast-warning: #C4963A;--color-toast-info: #7A9E6E}:root{--dashboard-bg-gradient-start: var(--color-gradient-white);--dashboard-bg-gradient-light: var(--color-gradient-light-green);--dashboard-bg-gradient-medium: var(--color-gradient-medium-green);--dashboard-bg-gradient-end: var(--color-gradient-green);--card-bg: var(--color-bg-white);--card-shadow: var(--color-shadow-light);--card-shadow-hover: var(--color-shadow-dark);--featured-gradient-start: var(--color-featured-gradient-start);--featured-gradient-end: var(--color-featured-gradient-end);--featured-text: var(--color-featured-text);--featured-text-secondary: var(--color-featured-text-secondary);--featured-icon-bg: var(--color-featured-icon-bg);--featured-button-bg: var(--sage);--featured-button-hover: var(--sage-dark);--featured-shadow: var(--color-shadow-medium);--featured-shadow-hover: var(--color-shadow-darker);--text-primary: var(--color-text-primary);--text-heading: var(--color-text-heading);--text-subheading: var(--color-text-subheading);--text-slate-dark: var(--color-text-slate-dark);--text-slate-medium: var(--color-text-slate-medium);--text-slate-light: var(--color-text-slate-light);--stats-icon-bg: var(--color-beige-bg);--stats-icon-text: var(--color-beige-text);--stats-link-bg: var(--color-beige-bg);--stats-link-hover: var(--color-beige-hover);--action-warning-icon-bg: var(--color-beige-bg);--action-warning-icon-text: var(--color-beige-text);--action-warning-link-bg: var(--color-beige-bg);--action-warning-link-hover: var(--color-beige-hover);--action-admin-icon-bg: var(--color-purple-bg);--action-admin-icon-text: var(--color-purple-text);--action-admin-link-bg: var(--color-purple-bg);--action-admin-link-hover: var(--color-purple-hover);--badge-gradient-start: var(--color-badge-green-start);--badge-gradient-middle: var(--color-badge-green-middle);--badge-gradient-end: var(--color-badge-green-end);--badge-solid-bg: var(--color-success-green);--featured-solid-bg: var(--sage);--badge-text: var(--color-white);--badge-green: var(--color-success-green);--badge-orange: var(--color-warning-orange)}:root{--z-index-dropdown: 1000;--z-index-modal: 2000;--z-index-tooltip: 3000;--layout-max-width: 1600px;--sidebar-width: 280px;--sidebar-collapsed-width: 5.5rem;--layout-sticky-offset: 82px}@media(max-width:768px){:root{--layout-sticky-offset: 70px}}input[type=number]{-moz-appearance:textfield;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;appearance:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;min-height:32px;padding:var(--space-2, var(--spacing-sm)) var(--space-3, var(--spacing-md));border:none;border-radius:var(--radius-full, 9999px);font-family:var(--font-body, inherit);font-size:var(--font-control-size, var(--font-size-sm, .875rem));font-weight:var(--font-control-weight, var(--font-weight-medium, 500));letter-spacing:var(--font-control-letter-spacing, -.01em);line-height:var(--font-control-line-height, 1.3);cursor:pointer;transition:var(--transition);text-decoration:none;white-space:nowrap}.btn:focus,.btn:focus-visible{outline:none;box-shadow:none}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-dark);box-shadow:var(--box-shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--box-shadow)}.btn-secondary{background-color:var(--cream-dark, #ede7dc);color:var(--ink, #342f2a);border:none}.btn-secondary:hover:not(:disabled){background-color:var(--cream-deeper, #d4c9b8)}.btn-secondary:active:not(:disabled){background-color:var(--cream-deeper, #d4c9b8)}.btn-success{background-color:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--success-dark);box-shadow:var(--box-shadow-md);transform:translateY(-1px)}.btn-danger{background-color:var(--error-color);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--error-dark);box-shadow:var(--box-shadow-md);transform:translateY(-1px)}.btn-outline{background-color:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover:not(:disabled){background-color:var(--primary-color);color:#fff}.btn-outline-secondary{background-color:transparent;border:2px solid var(--secondary-color);color:var(--secondary-color)}.btn-outline-secondary:hover:not(:disabled){background-color:var(--secondary-color);color:#fff}.btn-sm{min-height:34px;padding:7px 12px;font-size:var(--font-size-xs, .75rem)}.btn-lg{min-height:46px;padding:12px 18px;font-size:var(--font-size-base, 1rem)}.btn-block{width:100%;display:block}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);color:var(--text-color);font-weight:500;font-size:.9rem}.form-group label.required:after{content:" *";color:var(--error-color)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=time],input[type=datetime-local],select,textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid #D4C9B8;border-radius:8px;font-size:1rem;font-family:inherit;background-color:#fefcf9;color:var(--text-color);transition:var(--transition);box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:none;border-color:#4a6741;box-shadow:0 0 0 3px #4a67411a}input:disabled,select:disabled,textarea:disabled{background-color:var(--background-light);cursor:not-allowed;opacity:.6}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--error-color)}.form-group.error label{color:var(--error-color)}.error-text{display:block;margin-top:var(--spacing-xs);color:var(--error-color);font-size:.875rem}.help-text{display:block;margin-top:var(--spacing-xs);color:var(--text-muted);font-size:.875rem}input[type=checkbox],input[type=radio]{width:auto;margin-right:var(--spacing-xs);cursor:pointer}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkbox-group.horizontal,.radio-group.horizontal{flex-direction:row;flex-wrap:wrap}.card{background:#fefcf9;border:1px solid #EDE7DC;border-radius:14px;box-shadow:var(--box-shadow);padding:var(--spacing-lg);transition:var(--transition)}.card:hover{box-shadow:var(--box-shadow-hover);transform:translateY(-2px)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.card-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-color)}.card-body{margin-bottom:var(--spacing-md)}.card-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.table-container{overflow-x:auto;background:var(--puls-neutral-white);border-radius:var(--radius-md);box-shadow:var(--shadow-base);-webkit-overflow-scrolling:touch;border:1px solid var(--puls-neutral-100)}table{width:100%;border-collapse:collapse;background:var(--puls-neutral-white)}thead{background:var(--color-bg-subtle);position:sticky;top:0;z-index:10}th{padding:var(--space-4) var(--space-5);text-align:left;font-weight:var(--font-weight-semibold);color:var(--puls-neutral-700);border-bottom:2px solid var(--puls-primary-200);white-space:nowrap;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}td{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--puls-neutral-100);color:var(--puls-neutral-700);transition:var(--transition-fast)}tbody tr{transition:var(--transition-fast);background:var(--puls-neutral-white)}tbody tr:nth-child(2n){background:var(--puls-neutral-50)}tbody tr:hover{background:var(--color-bg-row-hover, var(--puls-neutral-100))}tbody tr:last-child td{border-bottom:none}.table-mobile-hide{display:table-cell}@media(max-width:768px){.table-mobile-hide{display:none}}.table-striped tbody tr:nth-child(2n){background-color:var(--background-light)}.table-striped tbody tr:nth-child(2n):hover{background-color:var(--color-bg-row-hover)}.loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-muted);gap:var(--spacing-md)}.loading:before{content:"";width:20px;height:20px;border:3px solid var(--border-light);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{padding:var(--spacing-md);background-color:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--border-radius);color:var(--error-color);margin:var(--spacing-md) 0}.error-icon{display:inline-block;margin-right:var(--spacing-xs)}.success{padding:var(--spacing-md);background-color:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--border-radius);color:var(--success-color);margin:var(--spacing-md) 0}.info{padding:var(--spacing-md);background-color:var(--color-info-bg);border:1px solid var(--color-info-border);border-radius:var(--border-radius);color:var(--color-info-text);margin:var(--spacing-md) 0}.warning{padding:var(--spacing-md);background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--border-radius);color:var(--color-warning-text);margin:var(--spacing-md) 0}.error-message-inline{padding:var(--spacing-md);background:var(--color-warning-bg);border:1px solid var(--color-warning-dark);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);color:var(--color-warning-text-alt)}.empty-state{text-align:center;padding:var(--spacing-xxl);color:var(--text-muted)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.empty-state-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-color)}.empty-state-message{color:var(--text-muted);margin-bottom:var(--spacing-md)}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-primary{background-color:var(--primary-color);color:#fff}.badge-success{background-color:var(--success-color);color:#fff}.badge-danger{background-color:var(--error-color);color:#fff}.badge-warning{background-color:var(--warning-color);color:var(--text-color)}.badge-info{background-color:var(--info-color);color:#fff}.badge-secondary{background-color:var(--secondary-color);color:#fff}@media(max-width:1024px){.shifts-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}.stat-card{padding:var(--spacing-md)}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-container table{min-width:600px}th,td{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.filter-group{gap:var(--spacing-sm)}.filter-group label{min-width:120px}.btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm, .875rem)}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base, 1rem)}}@media(max-width:768px){h2{font-size:1.5rem;margin-bottom:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.back-button{width:auto}h3{font-size:1.25rem}.shifts-list{grid-template-columns:1fr;gap:var(--spacing-md)}.card,.stat-card,.shift-card{padding:var(--spacing-md)}.card-title{font-size:1.1rem}.stat-value{font-size:1.75rem}.table-container{margin:0 calc(-1 * var(--spacing-md));border-radius:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-container table{font-size:.85rem;min-width:600px}th,td{padding:var(--spacing-sm);font-size:.85rem}.table-mobile-hide{display:none}.form-group{margin-bottom:var(--spacing-md)}.filter-group{flex-direction:column;gap:var(--spacing-md)}.filter-group label{width:100%;min-width:100%}.date-filters{flex-direction:column;gap:var(--spacing-md)}.date-filters label{width:100%}.form-actions .btn,.dialog-actions .btn,.modal-footer .btn,.filter-group .btn,.open-shift-actions .btn{width:100%;padding:var(--spacing-md);font-size:1rem}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:1.125rem}.puls-page-header__tools,.puls-table-card__tools{width:100%}.puls-table-card__header{align-items:stretch;flex-direction:column}.puls-table-card__tools{justify-content:flex-start}.view-toggle{width:100%;flex-direction:column}.view-toggle button{width:100%}.calendar-header{flex-direction:column;gap:var(--spacing-md)}.days-grid{gap:2px}.day-cell{min-height:80px;padding:2px;font-size:.8rem}.notifications-list{gap:var(--spacing-sm)}.notifications-page .notification-item{padding:var(--spacing-sm) var(--spacing-md)}.messages-list{gap:var(--spacing-sm)}.message-item{padding:var(--spacing-sm) var(--spacing-md)}.empty-state{padding:var(--spacing-xl)}.empty-state-icon{font-size:2.5rem}.empty-state-title{font-size:1.1rem}.reports-list{padding:var(--spacing-md)}.salary-content{gap:var(--spacing-md)}.salary-summary{padding:var(--spacing-md)}.login-box{padding:var(--spacing-lg);margin:var(--spacing-md)}.login-box h1{font-size:1.5rem}.login-box h2{font-size:1.25rem}.vacation-stats{grid-template-columns:1fr}.absence-header,.documents-header,.payslips-header{flex-direction:column;align-items:flex-start;gap:16px}.info-grid{grid-template-columns:1fr}.absence-table,.documents-table,.payslips-table{font-size:12px}.absence-table th,.absence-table td,.documents-table th,.documents-table td,.payslips-table th,.payslips-table td{padding:8px}.toast-container{top:auto;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:calc(16px + env(safe-area-inset-left,0px));right:calc(16px + env(safe-area-inset-right,0px));width:auto;max-width:none;transform:none;align-items:stretch;flex-direction:column-reverse;gap:8px}.toast-container .toast{width:100%;max-width:100%;border-radius:18px;padding:12px 14px;animation:slideUpStacked .28s ease-out}.toast-container .toast-content{width:100%;max-width:100%;align-items:center;column-gap:10px}.toast-container .toast-icon{flex-shrink:0}.toast-container .toast-message{align-self:center}.toast-container .toast-close{position:static;width:36px;height:36px;min-width:36px;min-height:36px;flex-shrink:0;align-self:center}.staff{padding-right:180px}.staff-cards{grid-template-columns:repeat(2,1fr)}.open-shifts-grid{grid-template-columns:1fr}.week-selector{flex-direction:column}.week-display{flex-direction:column;gap:var(--spacing-sm)}.open-shift-actions{flex-direction:column}.open-shift-actions button{width:100%}.form-row{grid-template-columns:1fr}.modal-content{margin:var(--spacing-md);max-height:calc(100vh - 2 * var(--spacing-md))}}@media(max-width:480px){h2{font-size:1.25rem;margin-bottom:var(--spacing-sm)}h3{font-size:1.1rem}.toast-container{bottom:calc(12px + env(safe-area-inset-bottom,0px));left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));gap:8px}.toast-container .toast{padding:11px 12px;font-size:.8125rem;border-radius:16px}.toast-icon{width:26px;height:26px;font-size:.8125rem}.card,.stat-card,.shift-card{padding:var(--spacing-sm)}.stat-value{font-size:1.5rem}.staff{padding-right:var(--space-6)}.staff-cards{grid-template-columns:1fr}th,td{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}input[type=text],input[type=email],input[type=password],input[type=number],input[type=time],select,textarea{padding:var(--spacing-xs) var(--spacing-sm);font-size:.9rem}.btn{min-height:var(--control-min-height-mobile, 40px);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm, .8125rem)}.day-cell{min-height:60px;padding:1px;font-size:.7rem}.calendar-event{font-size:.65rem}.empty-state{padding:var(--spacing-lg)}.empty-state-icon{font-size:2rem}.empty-state-title{font-size:1rem}.empty-state-message{font-size:.9rem}.login-box{padding:var(--spacing-md);margin:var(--spacing-sm)}.login-box h1{font-size:1.25rem}.login-box h2{font-size:1.1rem}.availability-dialog .modal-content{width:95%;padding:var(--spacing-md)}.availability-dialog .dialog-actions{flex-direction:column}.availability-dialog .dialog-actions button{width:100%}}@media(max-width:768px)and (orientation:landscape){.day-cell{min-height:50px}}@media print{.sidebar,.sidebar-backdrop,.topbar,.btn,.view-toggle{display:none}.content{padding:0;max-width:100%}.card,.stat-card{box-shadow:none;border:1px solid var(--border-color);page-break-inside:avoid}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}}html,body{background-color:var(--color-bg-light)}:root{--sage: #4A6741;--sage-light: #7A9E6E;--sage-pale: #E8F0E4;--sage-dark: #2D4229;--terra: #C4614A;--terra-light: #E8956C;--terra-pale: #F5E8E3;--terra-dark: #8B3D2A;--cream: #F7F3EC;--cream-dark: #EDE7DC;--cream-deeper: #D4C9B8;--warm-white: #FEFCF9;--ink: #342F2A;--ink-mid: #72685E;--ink-light: #A89C8E;--gold: #C4963A;--gold-pale: #F5EDD8;--gold-dark: #8B6520;--puls-primary-50: var(--sage-pale);--puls-primary-100: var(--sage-pale);--puls-primary-200: var(--sage-pale);--puls-primary-300: var(--sage-light);--puls-primary-400: var(--sage);--puls-primary-500: var(--sage);--puls-primary-600: var(--sage);--puls-primary-700: var(--sage-dark);--puls-primary-800: var(--sage-dark);--puls-primary-900: var(--sage-dark);--puls-primary-base: var(--sage);--puls-primary-light: var(--sage-light);--puls-primary-dark: var(--sage-dark);--puls-primary-darker: var(--sage-dark);--puls-lavender-50: var(--sage-pale);--puls-lavender-100: var(--cream-dark);--puls-lavender-200: var(--cream-deeper);--puls-lavender-300: var(--cream-deeper);--puls-lavender-400: var(--cream-deeper);--puls-secondary-lavender: var(--cream-dark);--puls-secondary-lavender-light: var(--sage-pale);--puls-secondary-lavender-dark: var(--cream-deeper);--puls-slate-50: var(--sage-pale);--puls-slate-100: var(--sage-light);--puls-slate-200: var(--sage);--puls-slate-300: var(--sage);--puls-slate-400: var(--sage);--puls-slate-500: var(--sage);--puls-secondary-slate-blue: var(--sage);--puls-secondary-slate-blue-light: var(--sage-light);--puls-secondary-slate-blue-dark: var(--sage-dark);--puls-neutral-white: var(--warm-white);--puls-neutral-50: var(--cream);--puls-neutral-100: var(--cream-dark);--puls-neutral-200: var(--cream-deeper);--puls-neutral-300: var(--cream-deeper);--puls-neutral-400: var(--ink-light);--puls-neutral-500: var(--ink-mid);--puls-neutral-600: var(--ink-mid);--puls-neutral-700: var(--ink);--puls-neutral-800: var(--ink);--puls-neutral-900: var(--ink);--puls-neutral-gray: var(--cream-deeper);--puls-neutral-light: var(--cream);--puls-neutral-medium: var(--ink-mid);--puls-neutral-dark: var(--ink);--puls-neutral-black: var(--ink);--puls-success: var(--sage);--puls-success-light: var(--sage-pale);--puls-success-dark: var(--sage-dark);--puls-success-darker: var(--sage-dark);--puls-warning: var(--gold);--puls-warning-light: var(--gold-pale);--puls-warning-dark: var(--gold-dark);--puls-warning-darker: var(--gold-dark);--puls-error: var(--terra);--puls-error-light: var(--terra-pale);--puls-error-dark: var(--terra-dark);--puls-error-darker: var(--terra-dark);--puls-info: var(--sage-light);--puls-info-light: var(--sage-pale);--puls-info-dark: var(--sage);--puls-info-darker: var(--sage-dark);--puls-mint: var(--sage-pale);--puls-mint-light: var(--sage-pale);--puls-mint-dark: var(--sage);--puls-forest: var(--sage);--puls-forest-light: var(--sage-light);--puls-forest-dark: var(--sage-dark);--primary-color: var(--sage);--primary-dark: var(--sage-dark);--primary-light: var(--sage-light);--secondary-color: var(--sage);--secondary-dark: var(--sage-dark);--secondary-light: var(--sage-light);--success-color: var(--sage);--success-dark: var(--sage-dark);--error-color: var(--terra);--error-dark: var(--terra-dark);--danger-color: var(--terra);--warning-color: var(--gold);--warning-dark: var(--gold-dark);--info-color: var(--sage-light);--info-dark: var(--sage);--background-color: var(--warm-white);--background-light: var(--cream);--background-hover: var(--cream-dark);--text-color: var(--ink);--text-muted: var(--ink-mid);--text-light: var(--ink-light);--text-secondary: var(--ink-light);--border-color: var(--cream-dark);--border-light: var(--cream-dark);--puls-primary-rgb: 74, 103, 65;--puls-slate-rgb: 74, 103, 65;--puls-error-rgb: 196, 97, 74;--puls-success-rgb: 74, 103, 65;--puls-gradient-primary: var(--sage);--puls-gradient-card: var(--warm-white);--puls-gradient-hero: var(--sage);--puls-gradient-bg-subtle: var(--cream)}:root{--color-white: #FEFCF9;--color-black: #2A2622;--color-primary-green: #4A6741;--color-primary-green-hover: #2D4229;--color-primary-green-light: #7A9E6E;--color-gradient-white: #FEFCF9;--color-gradient-light-green: #E8F0E4;--color-gradient-medium-green: #7A9E6E;--color-gradient-green: #4A6741;--color-text-primary: #2A2622;--color-text-heading: #2A2622;--color-text-subheading: #6B6259;--color-text-slate-dark: #2A2622;--color-text-slate-medium: #6B6259;--color-text-slate-light: #A89C8E;--color-text-muted: #A89C8E;--color-bg-white: #FEFCF9;--color-bg-light: #F7F3EC;--color-bg-hover: #EDE7DC;--color-bg-row-hover: #EDE7DC;--color-bg-subtle: #F7F3EC;--color-border-light: #EDE7DC;--color-border-medium: #EDE7DC;--color-border-subtle: #EDE7DC;--color-success-green: #4A6741;--color-warning-orange: #C4963A;--color-error-red: #C4614A;--color-shadow-light: rgba(42, 38, 34, .04);--color-shadow-medium: rgba(42, 38, 34, .06);--color-shadow-dark: rgba(42, 38, 34, .08);--color-shadow-darker: rgba(42, 38, 34, .12);--color-featured-gradient-start: rgba(74, 103, 65, .65);--color-featured-gradient-end: rgba(42, 38, 34, .65);--color-featured-text: #FEFCF9;--color-featured-text-secondary: rgba(254, 252, 249, .9);--color-featured-icon-bg: rgba(254, 252, 249, .3)}:root{--color-success-bg: #E8F0E4;--color-success-bg-alt: #E8F0E4;--color-success-border: #E8F0E4;--color-success-text: #2D4229;--color-success-text-alt: #2D4229;--color-success-dark: #4A6741;--color-success-darker: #2D4229;--color-error-bg: #F5E8E3;--color-error-bg-subtle: #F5E8E3;--color-error-border: #F5E8E3;--color-error-text: #8B3D2A;--color-error-dark: #C4614A;--color-error-darker: #8B3D2A;--color-warning-bg: #F5EDD8;--color-warning-border: #F5EDD8;--color-warning-text: #8B6520;--color-warning-text-alt: #8B6520;--color-warning-dark: #C4963A;--color-action-green: #4A6741;--color-action-green-hover: #2D4229}:root{--card-bg: var(--color-bg-white);--card-shadow: var(--color-shadow-light);--card-shadow-hover: var(--color-shadow-dark);--featured-gradient-start: var(--color-featured-gradient-start);--featured-gradient-end: var(--color-featured-gradient-end);--featured-text: var(--color-featured-text);--featured-text-secondary: var(--color-featured-text-secondary);--featured-icon-bg: var(--color-featured-icon-bg);--featured-button-bg: var(--color-primary-green);--featured-button-hover: var(--color-primary-green-hover);--featured-shadow: var(--color-shadow-medium);--featured-shadow-hover: var(--color-shadow-darker);--text-primary: var(--color-text-primary);--text-heading: var(--color-text-heading);--text-subheading: var(--color-text-subheading);--text-slate-dark: var(--color-text-slate-dark);--text-slate-medium: var(--color-text-slate-medium);--text-slate-light: var(--color-text-slate-light)}:root{--font-display: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-base: var(--font-body);--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 600;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em}body{font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,.h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--puls-neutral-800);margin:0}h2,.h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--puls-neutral-800);margin:0}h3,.h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-normal);color:var(--puls-neutral-700);margin:0}h4,.h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-normal);color:var(--puls-neutral-700);margin:0}h5,.h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);color:var(--puls-neutral-700);margin:0}h6,.h6{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wide);color:var(--puls-neutral-600);margin:0;text-transform:uppercase}p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-color);margin:0}.text-sm{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.text-lg{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.text-xl{font-size:var(--font-size-xl);line-height:var(--line-height-relaxed)}label,.label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);color:var(--puls-neutral-700);letter-spacing:var(--letter-spacing-wide)}.caption,small{font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--text-muted)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-primary{color:var(--puls-primary-base)}.text-secondary{color:var(--puls-secondary-slate-blue)}.text-muted{color:var(--text-muted)}.text-light{color:var(--text-light)}.text-success{color:var(--puls-success)}.text-warning{color:var(--puls-warning)}.text-error{color:var(--puls-error)}.text-info{color:var(--puls-info)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}code,.font-mono{font-family:var(--font-family-mono);font-size:.9em}:root{--font-control-size: var(--font-size-sm);--font-control-weight: var(--font-weight-medium);--font-control-letter-spacing: -.01em;--font-control-line-height: 1.3;--font-control-placeholder-weight: var(--font-weight-normal)}.puls-control-type,.puls-page-header__tools,.puls-table-card__tools,.puls-period-control{--_control-font-size: var(--font-control-size);--_control-font-weight: var(--font-control-weight);--_control-letter-spacing: var(--font-control-letter-spacing);--_control-line-height: var(--font-control-line-height)}:is(.puls-control-type,.puls-page-header__tools,.puls-table-card__tools,.puls-period-control) :is(.puls-btn,.puls-btn>span,input[type=search],input[type=text],.custom-select-trigger,.custom-select-value,.custom-select-placeholder,.puls-period-control__today,.puls-period-control__label,button){font-size:var(--_control-font-size);font-weight:var(--_control-font-weight);letter-spacing:var(--_control-letter-spacing);line-height:var(--_control-line-height)}:is(.puls-control-type,.puls-page-header__tools,.puls-table-card__tools,.puls-period-control) :is(input[type=search],input[type=text])::placeholder{font-weight:var(--font-control-placeholder-weight);letter-spacing:var(--_control-letter-spacing);color:var(--ink-mid, var(--color-text-subheading, var(--text-muted)));opacity:1}.puls-period-control .puls-period-control__label{font-weight:var(--font-weight-semibold)}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--spacing-xs: var(--space-1);--spacing-sm: var(--space-2);--spacing-md: var(--space-4);--spacing-lg: var(--space-6);--spacing-xl: var(--space-8);--spacing-xxl: var(--space-12);--radius-none: 0;--radius-sm: .25rem;--radius-base: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--border-radius: var(--radius-base);--border-radius-sm: var(--radius-sm);--border-radius-lg: var(--radius-md)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.m-12{margin:var(--space-12)}.m-16{margin:var(--space-16)}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-12{margin-top:var(--space-12)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.ml-0{margin-left:var(--space-0)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.ml-6{margin-left:var(--space-6)}.ml-8{margin-left:var(--space-8)}.mr-0{margin-right:var(--space-0)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.mr-6{margin-right:var(--space-6)}.mr-8{margin-right:var(--space-8)}.mx-0{margin-left:var(--space-0);margin-right:var(--space-0)}.mx-1{margin-left:var(--space-1);margin-right:var(--space-1)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-3{margin-left:var(--space-3);margin-right:var(--space-3)}.mx-4{margin-left:var(--space-4);margin-right:var(--space-4)}.mx-6{margin-left:var(--space-6);margin-right:var(--space-6)}.mx-8{margin-left:var(--space-8);margin-right:var(--space-8)}.my-0{margin-top:var(--space-0);margin-bottom:var(--space-0)}.my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-12{padding:var(--space-12)}.p-16{padding:var(--space-16)}.pt-0{padding-top:var(--space-0)}.pt-1{padding-top:var(--space-1)}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pt-8{padding-top:var(--space-8)}.pb-0{padding-bottom:var(--space-0)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-4{padding-bottom:var(--space-4)}.pb-6{padding-bottom:var(--space-6)}.pb-8{padding-bottom:var(--space-8)}.pl-0{padding-left:var(--space-0)}.pl-1{padding-left:var(--space-1)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pl-4{padding-left:var(--space-4)}.pl-6{padding-left:var(--space-6)}.pl-8{padding-left:var(--space-8)}.pr-0{padding-right:var(--space-0)}.pr-1{padding-right:var(--space-1)}.pr-2{padding-right:var(--space-2)}.pr-3{padding-right:var(--space-3)}.pr-4{padding-right:var(--space-4)}.pr-6{padding-right:var(--space-6)}.pr-8{padding-right:var(--space-8)}.px-0{padding-left:var(--space-0);padding-right:var(--space-0)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-0{padding-top:var(--space-0);padding-bottom:var(--space-0)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.gap-0{gap:var(--space-0)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}:root{--layout-content-padding: var(--space-8);--layout-content-padding-tablet: var(--space-6);--layout-content-padding-mobile: var(--space-4);--layout-content-padding-mobile-sm: var(--space-3);--layout-topbar-padding-y: 18px;--layout-topbar-padding-x: 28px;--layout-topbar-padding-y-mobile: 12px;--layout-topbar-padding-x-mobile: 16px;--layout-page-header-gap: var(--space-6);--layout-page-header-columns-gap: 22px;--layout-page-description-margin: 14px 0 0;--layout-grid-gap: 20px;--layout-section-gap: 20px;--layout-page-max-width: 1800px;--layout-card-padding: var(--space-6);--layout-card-padding-compact: 18px;--layout-card-header-gap: var(--space-4);--layout-card-footer-gap: var(--space-4);--layout-kpi-gap: var(--space-4);--layout-table-header-padding-y: 22px;--radius-card-lg: 28px;--radius-card-md: 20px;--radius-card-sm: 14px;--shadow-soft: 0 18px 44px var(--cream-dark);--border-soft: 1px solid var(--cream-dark)}@media(max-width:768px){:root{--font-size-xs: .6875rem;--font-size-sm: .8125rem;--font-size-base: 1rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.375rem;--font-size-3xl: 1.6875rem;--font-size-4xl: 2rem;--font-size-5xl: 2.75rem;--layout-content-padding-mobile: var(--space-3);--layout-content-padding-mobile-sm: .625rem;--layout-topbar-padding-y-mobile: 10px;--layout-topbar-padding-x-mobile: 12px;--layout-card-padding: var(--space-4);--layout-card-padding-compact: 14px;--layout-grid-gap: 14px;--layout-section-gap: 14px;--layout-page-header-gap: var(--space-4);--control-min-height-mobile: 40px;--control-min-height-mobile-lg: 44px}}:root{--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-base: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-2xl: 0 30px 60px -12px rgba(0, 0, 0, .3);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .05);--shadow-primary-sm: 0 2px 4px rgba(74, 103, 65, .12);--shadow-primary-md: 0 4px 8px rgba(74, 103, 65, .16);--shadow-primary-lg: 0 8px 16px rgba(74, 103, 65, .2);--shadow-slate-sm: 0 2px 4px rgba(74, 103, 65, .12);--shadow-slate-md: 0 4px 8px rgba(74, 103, 65, .16);--shadow-slate-lg: 0 8px 16px rgba(74, 103, 65, .2);--box-shadow: var(--shadow-base);--box-shadow-md: var(--shadow-md);--box-shadow-lg: var(--shadow-lg);--box-shadow-hover: var(--shadow-md)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-base{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-inner{box-shadow:var(--shadow-inner)}.shadow-primary-sm{box-shadow:var(--shadow-primary-sm)}.shadow-primary-md{box-shadow:var(--shadow-primary-md)}.shadow-primary-lg{box-shadow:var(--shadow-primary-lg)}.shadow-slate-sm{box-shadow:var(--shadow-slate-sm)}.shadow-slate-md{box-shadow:var(--shadow-slate-md)}.shadow-slate-lg{box-shadow:var(--shadow-slate-lg)}.shadow-hover{transition:box-shadow .2s ease}.shadow-hover:hover{box-shadow:var(--shadow-md)}.shadow-hover-lg:hover{box-shadow:var(--shadow-lg)}.puls-gradient-primary{background:linear-gradient(135deg,var(--puls-primary-400),var(--puls-secondary-slate-blue))}.puls-gradient-primary-vertical{background:linear-gradient(180deg,var(--puls-primary-400),var(--puls-secondary-slate-blue))}.puls-gradient-primary-horizontal{background:linear-gradient(90deg,var(--puls-primary-400),var(--puls-secondary-slate-blue))}.puls-gradient-soft{background:linear-gradient(135deg,var(--puls-secondary-lavender),var(--puls-primary-400))}.puls-gradient-soft-vertical{background:linear-gradient(180deg,var(--puls-secondary-lavender),var(--puls-primary-400))}.puls-gradient-hero{background:linear-gradient(135deg,var(--puls-primary-300),var(--puls-primary-600),var(--puls-secondary-slate-blue))}.puls-gradient-hero-vertical{background:linear-gradient(180deg,var(--puls-primary-300),var(--puls-primary-600),var(--puls-secondary-slate-blue))}.puls-gradient-card{background:linear-gradient(135deg,var(--puls-neutral-white),var(--puls-neutral-50))}.puls-gradient-card-elevated{background:linear-gradient(135deg,var(--puls-neutral-white),var(--puls-lavender-50))}.puls-gradient-mint{background:linear-gradient(135deg,var(--puls-mint),var(--puls-primary-300))}.puls-gradient-forest{background:linear-gradient(135deg,var(--puls-forest),var(--puls-forest-dark))}.puls-gradient-success{background:linear-gradient(135deg,var(--puls-success),var(--puls-success-dark))}.puls-gradient-warning{background:linear-gradient(135deg,var(--puls-warning),var(--puls-warning-dark))}.puls-gradient-error{background:linear-gradient(135deg,var(--puls-error),var(--puls-error-dark))}.puls-gradient-info{background:linear-gradient(135deg,var(--puls-info),var(--puls-info-dark))}.puls-gradient-bg-subtle{background:linear-gradient(135deg,var(--puls-neutral-50),var(--puls-lavender-50))}.puls-gradient-bg-warm{background:linear-gradient(135deg,var(--puls-lavender-50),var(--puls-primary-100))}.puls-gradient-text-primary{background:linear-gradient(135deg,var(--puls-primary-400),var(--puls-secondary-slate-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.puls-gradient-text-soft{background:linear-gradient(135deg,var(--puls-secondary-lavender),var(--puls-primary-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.puls-primary{color:var(--puls-primary-base)}.puls-primary-bg{background-color:var(--puls-primary-base)}.puls-primary-border{border-color:var(--puls-primary-base)}.puls-primary-50{color:var(--puls-primary-50)}.puls-primary-50-bg{background-color:var(--puls-primary-50)}.puls-primary-100{color:var(--puls-primary-100)}.puls-primary-100-bg{background-color:var(--puls-primary-100)}.puls-primary-200{color:var(--puls-primary-200)}.puls-primary-200-bg{background-color:var(--puls-primary-200)}.puls-primary-300{color:var(--puls-primary-300)}.puls-primary-300-bg{background-color:var(--puls-primary-300)}.puls-primary-400{color:var(--puls-primary-400)}.puls-primary-400-bg{background-color:var(--puls-primary-400)}.puls-primary-500{color:var(--puls-primary-500)}.puls-primary-500-bg{background-color:var(--puls-primary-500)}.puls-primary-600{color:var(--puls-primary-600)}.puls-primary-600-bg{background-color:var(--puls-primary-600)}.puls-primary-700{color:var(--puls-primary-700)}.puls-primary-700-bg{background-color:var(--puls-primary-700)}.puls-primary-800{color:var(--puls-primary-800)}.puls-primary-800-bg{background-color:var(--puls-primary-800)}.puls-primary-900{color:var(--puls-primary-900)}.puls-primary-900-bg{background-color:var(--puls-primary-900)}.puls-primary-hover:hover{background-color:var(--puls-primary-dark)}.puls-primary-active:active{background-color:var(--puls-primary-darker)}.puls-lavender{color:var(--puls-secondary-lavender)}.puls-lavender-bg{background-color:var(--puls-secondary-lavender)}.puls-lavender-border{border-color:var(--puls-secondary-lavender-dark)}.puls-lavender-50{color:var(--puls-lavender-50)}.puls-lavender-50-bg{background-color:var(--puls-lavender-50)}.puls-lavender-100{color:var(--puls-lavender-100)}.puls-lavender-100-bg{background-color:var(--puls-lavender-100)}.puls-lavender-200{color:var(--puls-lavender-200)}.puls-lavender-200-bg{background-color:var(--puls-lavender-200)}.puls-lavender-300{color:var(--puls-lavender-300)}.puls-lavender-300-bg{background-color:var(--puls-lavender-300)}.puls-lavender-light-bg{background-color:var(--puls-secondary-lavender-light)}.puls-lavender-hover:hover{background-color:var(--puls-secondary-lavender-dark)}.puls-slate-blue{color:var(--puls-secondary-slate-blue)}.puls-slate-blue-bg{background-color:var(--puls-secondary-slate-blue)}.puls-slate-blue-border{border-color:var(--puls-secondary-slate-blue)}.puls-slate-50{color:var(--puls-slate-50)}.puls-slate-50-bg{background-color:var(--puls-slate-50)}.puls-slate-100{color:var(--puls-slate-100)}.puls-slate-100-bg{background-color:var(--puls-slate-100)}.puls-slate-200{color:var(--puls-slate-200)}.puls-slate-200-bg{background-color:var(--puls-slate-200)}.puls-slate-300{color:var(--puls-slate-300)}.puls-slate-300-bg{background-color:var(--puls-slate-300)}.puls-slate-400{color:var(--puls-slate-400)}.puls-slate-400-bg{background-color:var(--puls-slate-400)}.puls-slate-500{color:var(--puls-slate-500)}.puls-slate-500-bg{background-color:var(--puls-slate-500)}.puls-slate-blue-light{color:var(--puls-secondary-slate-blue-light)}.puls-slate-blue-hover:hover{background-color:var(--puls-secondary-slate-blue-dark)}.puls-neutral-white{color:var(--puls-neutral-white)}.puls-neutral-white-bg{background-color:var(--puls-neutral-white)}.puls-neutral-50{color:var(--puls-neutral-50)}.puls-neutral-50-bg{background-color:var(--puls-neutral-50)}.puls-neutral-100{color:var(--puls-neutral-100)}.puls-neutral-100-bg{background-color:var(--puls-neutral-100)}.puls-neutral-200{color:var(--puls-neutral-200)}.puls-neutral-200-bg{background-color:var(--puls-neutral-200)}.puls-neutral-300{color:var(--puls-neutral-300)}.puls-neutral-300-bg{background-color:var(--puls-neutral-300)}.puls-neutral-400{color:var(--puls-neutral-400)}.puls-neutral-400-bg{background-color:var(--puls-neutral-400)}.puls-neutral-500{color:var(--puls-neutral-500)}.puls-neutral-500-bg{background-color:var(--puls-neutral-500)}.puls-neutral-600{color:var(--puls-neutral-600)}.puls-neutral-600-bg{background-color:var(--puls-neutral-600)}.puls-neutral-700{color:var(--puls-neutral-700)}.puls-neutral-700-bg{background-color:var(--puls-neutral-700)}.puls-neutral-800{color:var(--puls-neutral-800)}.puls-neutral-800-bg{background-color:var(--puls-neutral-800)}.puls-neutral-900{color:var(--puls-neutral-900)}.puls-neutral-900-bg{background-color:var(--puls-neutral-900)}.puls-success{color:var(--puls-success)}.puls-success-bg{background-color:var(--puls-success)}.puls-success-light-bg{background-color:var(--puls-success-light)}.puls-success-border{border-color:var(--puls-success)}.puls-success-hover:hover{background-color:var(--puls-success-dark)}.puls-warning{color:var(--puls-warning)}.puls-warning-bg{background-color:var(--puls-warning)}.puls-warning-light-bg{background-color:var(--puls-warning-light)}.puls-warning-border{border-color:var(--puls-warning)}.puls-warning-hover:hover{background-color:var(--puls-warning-dark)}.puls-error{color:var(--puls-error)}.puls-error-bg{background-color:var(--puls-error)}.puls-error-light-bg{background-color:var(--puls-error-light)}.puls-error-border{border-color:var(--puls-error)}.puls-error-hover:hover{background-color:var(--puls-error-dark)}.puls-info{color:var(--puls-info)}.puls-info-bg{background-color:var(--puls-info)}.puls-info-light-bg{background-color:var(--puls-info-light)}.puls-info-border{border-color:var(--puls-info)}.puls-info-hover:hover{background-color:var(--puls-info-dark)}.puls-mint{color:var(--puls-mint)}.puls-mint-bg{background-color:var(--puls-mint)}.puls-mint-light-bg{background-color:var(--puls-mint-light)}.puls-mint-border{border-color:var(--puls-mint)}.puls-mint-hover:hover{background-color:var(--puls-mint-dark)}.puls-forest{color:var(--puls-forest)}.puls-forest-bg{background-color:var(--puls-forest)}.puls-forest-light-bg{background-color:var(--puls-forest-light)}.puls-forest-border{border-color:var(--puls-forest)}.puls-forest-hover:hover{background-color:var(--puls-forest-dark)}.border{border:1px solid var(--border-color)}.border-0{border:0}.border-2{border-width:2px}.border-4{border-width:4px}.border-primary{border-color:var(--puls-primary-base)}.border-secondary{border-color:var(--puls-secondary-slate-blue)}.border-success{border-color:var(--puls-success)}.border-warning{border-color:var(--puls-warning)}.border-error{border-color:var(--puls-error)}.border-info{border-color:var(--puls-info)}.border-radius-sm{border-radius:var(--radius-sm)}.border-radius{border-radius:var(--radius-base)}.border-radius-md{border-radius:var(--radius-md)}.border-radius-lg{border-radius:var(--radius-lg)}.border-radius-xl{border-radius:var(--radius-xl)}.border-radius-full{border-radius:var(--radius-full)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.transition{transition:all .2s ease}.transition-fast{transition:all .15s ease}.transition-slow{transition:all .3s ease}.transition-colors{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.transition-transform{transition:transform .2s ease}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-dropdown{z-index:var(--z-index-dropdown, 1000)}.z-modal{z-index:var(--z-index-modal, 2000)}.z-tooltip{z-index:var(--z-index-tooltip, 3000)}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fade-out{animation:fadeOut .3s ease-out}.animate-slide-in-down{animation:slideInDown .3s ease-out}.animate-slide-in-up{animation:slideInUp .3s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow-x:hidden}#root{height:100%;width:100%}:focus-visible{outline:2px solid var(--terra);outline-offset:2px}::selection{background-color:var(--terra-pale);color:var(--ink)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--puls-neutral-100)}::-webkit-scrollbar-thumb{background:var(--puls-neutral-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--puls-neutral-400)}html{scroll-behavior:smooth}
