.navigation{margin-left:auto}.navigation-toggle{display:none}.main-navigation{align-items:center;gap:.375rem;display:flex}.navigation-link{color:#ffffffb8;white-space:nowrap;border-radius:999px;padding:.75rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:color .16s,background-color .16s}.navigation-link:hover{color:var(--color-white);background:#ffffff14}.navigation-link-active,.navigation-link-active:hover{color:var(--color-dark-grey);background:var(--color-earth-beige)}@media (width<=64rem){.navigation{width:100%;margin-left:0}.main-navigation{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0;display:grid}.navigation-link{text-align:center}}@media (width<=42rem){.navigation{width:auto}.navigation-toggle{aspect-ratio:1;width:2.75rem;color:var(--color-white);cursor:pointer;background:0 0;border:1px solid #ffffff47;border-radius:.5rem;place-content:center;gap:.28rem;padding:.7rem;display:grid}.navigation-toggle:hover{background:#ffffff14}.navigation-toggle span{background:currentColor;border-radius:999px;width:1.25rem;height:.125rem;transition:transform .16s,opacity .16s}.navigation-toggle[aria-expanded=true] span:first-child{transform:translateY(.405rem)rotate(45deg)}.navigation-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.navigation-toggle[aria-expanded=true] span:last-child{transform:translateY(-.405rem)rotate(-45deg)}.main-navigation{z-index:10;background:var(--color-dark-grey);grid-template-columns:1fr;gap:.25rem;padding:.75rem 1.25rem 1.25rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 1rem 2rem #0f0d0e33}.main-navigation-open{display:grid}.navigation-link{text-align:left;white-space:normal;padding:.875rem 1rem}}.auth-button{min-height:2.75rem;color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean);cursor:pointer;white-space:nowrap;border-radius:.5rem;padding:.65rem 1rem;font-size:.8rem;font-weight:700}.auth-button:hover{background:var(--color-earth-beige);border-color:var(--color-earth-beige);color:var(--color-dark-grey)}#root{min-height:100vh}.app-shell{background:radial-gradient(circle at 100% 0%, #c29e3c2e, transparent 28rem), var(--color-dark-grey);min-height:100vh;padding:0}.app-layout{background:var(--color-white);width:100%;min-height:100vh;margin:0 auto;overflow:hidden}.app-header{color:var(--color-white);background:var(--color-dark-grey);justify-content:space-between;align-items:center;gap:2rem;padding:1.25rem clamp(1.25rem,4vw,2.5rem);display:flex;position:relative}.brand{flex-shrink:0;align-items:center;gap:.875rem;display:flex}.brand-mark{aspect-ratio:1;border:.5rem solid var(--color-earth-beige);border-radius:50%;width:2.25rem}.brand-name{letter-spacing:-.02em;max-width:12rem;font-size:.875rem;font-weight:800;line-height:1.1}.app-content{min-height:clamp(28rem,65vh,44rem);padding:clamp(1.5rem,3vw,3rem)}@media (width<=64rem){.app-header{flex-direction:column;align-items:stretch}}@media (width<=42rem){.app-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.app-shell{padding:0}.app-layout{border-radius:0;min-height:100vh}.app-content{min-height:auto;padding-block:4rem}}.pagination-container{justify-items:center;gap:.75rem;margin-top:2rem;display:grid}.pagination-page-size{color:var(--color-text-muted);align-items:center;gap:.6rem;font-size:.72rem;font-weight:700;display:flex}.pagination-page-size select{min-width:4.5rem;height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .65rem}.pagination{justify-content:center;align-items:center;gap:.75rem;display:flex}.pagination button{min-width:2.75rem;min-height:2.75rem;color:var(--color-dark-grey);background:var(--color-white);cursor:pointer;border:1px solid #2e282c2e;border-radius:.5rem;padding:.6rem .9rem;font-size:.78rem;font-weight:700}.pagination button:hover:not(:disabled){background:var(--color-earth-beige)}.pagination button:disabled{cursor:not-allowed;opacity:.4}.pagination-page-numbers{gap:.4rem;display:flex}.pagination .pagination-page-number-active{color:var(--color-white);background:var(--color-blue-ocean);border-color:var(--color-blue-ocean)}.pagination-summary{color:var(--color-text-muted);text-align:center;margin:0;font-size:.72rem}@media (width<=42rem){.pagination{gap:.4rem}.pagination button{min-width:2.5rem;padding-inline:.65rem}}.customers-page{width:100%}.customers-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(2rem,5vw,3.5rem);display:flex}.customers-eyebrow{color:var(--color-blue-ocean);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.75rem;font-weight:700}.customers-heading h1{color:var(--color-dark-grey);letter-spacing:-.05em;margin:0;font-size:clamp(2.75rem,7vw,5rem);font-weight:800;line-height:.95}.customers-heading p:last-child{max-width:42rem;color:var(--color-text-muted);margin:1rem 0 0;line-height:1.6}.customers-count{color:var(--color-dark-grey);background:var(--color-earth-beige);border-radius:999px;flex-shrink:0;padding:.75rem 1rem;font-size:.8rem;font-weight:700}.customers-error{color:#a12f24;background:#fde8e5;border-radius:.75rem;padding:1rem}.customers-filters{background:var(--color-canvas);border:1px solid #2e282c1a;border-radius:.875rem;grid-template-columns:minmax(15rem,2fr) minmax(12rem,1fr);gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.customers-filters label{gap:.4rem;display:grid}.customers-filters label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.customers-filters input{width:100%;min-width:0;height:2.75rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .8rem;font-size:.82rem}.customers-filter-empty{min-height:14rem;color:var(--color-text-muted);background:var(--color-canvas);text-align:center;border-radius:.875rem;place-content:center;justify-items:center;gap:.5rem;display:grid}.customers-filter-empty strong{color:var(--color-dark-grey)}.customers-filter-empty p{margin:0}.customers-grid{gap:1rem;display:grid}.customer-card{background:var(--color-white);border:1px solid #2e282c1f;border-radius:.875rem;grid-template-columns:auto minmax(12rem,1fr) auto auto auto auto;align-items:center;gap:1rem;padding:1.25rem;display:grid;box-shadow:0 .5rem 1.5rem #2e282c0f}.customer-color-preview{border:.2rem solid var(--color-white);border-radius:50%;width:2.75rem;height:2.75rem;box-shadow:0 0 0 1px #2e282c2e}.customer-card h2,.customer-card p{margin:0}.customer-card h2{color:var(--color-dark-grey);font-size:1rem}.customer-card p{color:var(--color-text-muted);margin-top:.3rem;font-size:.8rem}.customer-card label{color:var(--color-text-muted);align-items:center;gap:.65rem;font-size:.8rem;font-weight:700;display:flex}.customer-card input[type=color]{background:var(--color-white);cursor:pointer;border:1px solid #2e282c2e;border-radius:.5rem;width:3rem;height:2.5rem;padding:.2rem}.customer-abbreviation-input{width:6rem;height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);text-transform:uppercase;border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .65rem;font-weight:700}.customer-card button{min-height:2.5rem;color:var(--color-dark-grey);background:var(--color-earth-beige);cursor:pointer;border:0;border-radius:.5rem;padding:.5rem .8rem;font-weight:700}@media (width<=48rem){.customers-heading,.customer-card{align-items:stretch}.customers-heading{flex-direction:column}.customers-filters{grid-template-columns:1fr}.customer-card{grid-template-columns:auto 1fr}.customer-card label,.customer-card button{grid-column:1/-1}}.employee-form{background:var(--color-canvas);border:1px solid #2e282c1f;border-radius:.875rem;margin-bottom:1rem;padding:clamp(1.25rem,3vw,2rem)}.employee-form-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.employee-form-heading h2,.employee-form-heading p{margin:0}.employee-form-heading h2{color:var(--color-dark-grey);font-size:1.35rem}.employee-form-heading p{color:var(--color-text-muted);margin-top:.35rem;font-size:.82rem}.employee-form-close{aspect-ratio:1;width:2.25rem;color:var(--color-dark-grey);background:var(--color-white);cursor:pointer;border:1px solid #2e282c29;border-radius:50%;place-items:center;padding:0;font-size:1.35rem;display:grid}.employee-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.employee-source{border:0;gap:1.25rem;margin:0 0 1rem;padding:0;display:flex}.employee-source legend{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem;font-size:.68rem;font-weight:700}.employee-source label{color:var(--color-dark-grey);cursor:pointer;align-items:center;gap:.45rem;font-size:.8rem;display:flex}.employee-source input{margin:0}.employee-timechimp-user{grid-column:1/-1}.employee-timechimp-preview{color:var(--color-text-muted);gap:.15rem;font-size:.75rem;display:grid}.employee-timechimp-preview strong{color:var(--color-dark-grey)}.employee-form-fields label{align-content:start;gap:.4rem;display:grid}.employee-form-fields label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.employee-form-fields input,.employee-form-fields select{width:100%;height:2.75rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .8rem}.employee-form-fields input[aria-invalid=true]{border-color:var(--color-signal-red)}.employee-form-fields small,.employee-form-error{color:var(--color-signal-red);font-size:.7rem}.employee-form-relations{gap:1rem;margin-top:1.5rem;display:grid}.employee-work-schedule{background:var(--color-white);border:1px solid #2e282c1f;border-radius:.65rem;min-width:0;margin:1.5rem 0 0;padding:1rem}.employee-work-schedule legend{color:var(--color-dark-grey);padding:0 .35rem;font-size:.82rem;font-weight:700}.employee-work-schedule>p{color:var(--color-text-muted);margin:0 0 .85rem;font-size:.72rem}.employee-work-schedule>small{color:var(--color-signal-red);margin-top:.5rem;font-size:.7rem;display:block}.employee-availability{background:var(--color-white);border:1px solid #2e282c1f;border-radius:.65rem;min-width:0;margin:1rem 0 0;padding:1rem}.employee-availability-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.employee-availability-heading legend{color:var(--color-dark-grey);padding:0;font-size:.82rem;font-weight:700}.employee-availability-heading p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.72rem}.employee-availability-heading button,.availability-remove{cursor:pointer;border-radius:.4rem;min-height:2.25rem;padding:.4rem .7rem;font-size:.7rem;font-weight:700}.employee-availability-heading button{color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean)}.availability-list{gap:.6rem;margin-top:.85rem;display:grid}.availability-row{background:var(--color-canvas);border-radius:.5rem;grid-template-columns:minmax(8rem,1fr) minmax(8rem,1fr) repeat(5,minmax(6rem,.75fr)) minmax(8rem,1fr) auto;align-items:end;gap:.5rem;padding:.65rem;display:grid}.availability-row label{gap:.3rem;min-width:0;display:grid}.availability-row label>span{color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.6rem;font-weight:700}.availability-row input,.availability-row select{width:100%;min-width:0;height:2.25rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c29;border-radius:.4rem;padding:0 .5rem;font-size:.7rem}.availability-remove{color:var(--color-signal-red);background:var(--color-white);border:1px solid #d04e3f4d}.availability-empty{color:var(--color-text-muted);font-size:.72rem;font-style:italic}.schedule-grid{grid-template-columns:4rem repeat(5,minmax(3.5rem,1fr));align-items:center;gap:.45rem;display:grid}.schedule-grid strong{color:var(--color-text-muted);text-align:center;font-size:.68rem}.schedule-grid>span{color:var(--color-dark-grey);font-size:.72rem;font-weight:700}.schedule-grid input{width:100%;min-width:0;height:2.35rem;color:var(--color-dark-grey);background:var(--color-canvas);text-align:center;border:1px solid #2e282c29;border-radius:.4rem;padding:0 .4rem}.employee-form-relations fieldset{background:var(--color-white);border:1px solid #2e282c1f;border-radius:.65rem;min-width:0;margin:0;padding:1rem}.employee-form-relations legend{color:var(--color-dark-grey);padding:0 .35rem;font-size:.82rem;font-weight:700}.employee-form-relations fieldset>p{color:var(--color-text-muted);margin:0 0 .85rem;font-size:.72rem}.employee-form-options{flex-wrap:wrap;gap:.5rem;display:flex}.employee-form-options label{cursor:pointer;position:relative}.employee-form-options input{opacity:0;width:1px;height:1px;position:absolute}.employee-form-options span{color:var(--color-dark-grey);background:var(--color-canvas);border:1px solid #2e282c24;border-radius:999px;padding:.45rem .7rem;font-size:.72rem;font-weight:700;display:block}.employee-form-options input:checked+span{color:var(--color-white);background:var(--color-blue-ocean);border-color:var(--color-blue-ocean)}.employee-form-options input:focus-visible+span{outline:2px solid var(--color-blue-ocean);outline-offset:2px}.employee-form-error{margin:1rem 0 0;font-weight:700}.employee-form-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.employee-form-actions button{cursor:pointer;border-radius:.5rem;min-height:2.75rem;padding:.65rem 1rem;font-size:.8rem;font-weight:700}.employee-form-actions button:disabled,.employee-form-close:disabled{cursor:wait;opacity:.6}.employee-form-secondary{color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e}.employee-form-primary{color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean)}@media (width<=42rem){.employee-form-fields,.employee-form-relations{grid-template-columns:1fr}.employee-work-schedule{overflow-x:auto}.schedule-grid{min-width:28rem}.employee-availability-heading{flex-direction:column;align-items:flex-start}.availability-row{grid-template-columns:1fr}.employee-form-actions{flex-direction:column-reverse;align-items:stretch}}.employees-page{width:100%}.employees-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(2rem,5vw,3.5rem);display:flex}.employees-eyebrow{color:var(--color-blue-ocean);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.75rem;font-weight:700}.employees-heading h1{color:var(--color-dark-grey);letter-spacing:-.05em;margin:0;font-size:clamp(2.75rem,7vw,5rem);font-weight:800;line-height:.95}.employees-heading p:last-child{max-width:42rem;color:var(--color-text-muted);margin:1rem 0 0;line-height:1.6}.employees-count{color:var(--color-dark-grey);background:var(--color-earth-beige);border-radius:999px;flex-shrink:0;padding:.75rem 1rem;font-size:.8rem;font-weight:700}.employees-heading-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.add-employee-button{min-height:2.75rem;color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean);cursor:pointer;border-radius:.5rem;padding:.65rem 1rem;font-size:.8rem;font-weight:700}.add-employee-button:hover{background:var(--color-dark-grey);border-color:var(--color-dark-grey)}.employee-success-message{color:var(--color-dark-grey);border-left:.25rem solid var(--color-good-gold);background:#c29e3c2e;border-radius:.5rem;margin:0 0 1rem;padding:.85rem 1rem;font-size:.8rem;font-weight:700}.employees-filters{background:var(--color-canvas);border:1px solid #2e282c1a;border-radius:.875rem;grid-template-columns:minmax(15rem,2fr) minmax(12rem,1fr);gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.employees-filters label{gap:.4rem;display:grid}.employees-filters label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.employees-filters input,.employees-filters select{width:100%;min-width:0;height:2.75rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .8rem;font-size:.82rem}.employees-filter-empty{min-height:14rem;color:var(--color-text-muted);background:var(--color-canvas);text-align:center;border-radius:.875rem;place-content:center;justify-items:center;gap:.5rem;display:grid}.employees-filter-empty strong{color:var(--color-dark-grey)}.employees-filter-empty p{margin:0}.employees-grid{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.employee-card{background:var(--color-white);border:1px solid #2e282c1f;border-radius:.875rem;grid-template-columns:auto minmax(11rem,.8fr) minmax(18rem,1.2fr) auto;align-items:center;gap:1rem;min-width:0;padding:1.25rem;display:grid;box-shadow:0 .5rem 1.5rem #2e282c0f}.employee-card-expanded{align-items:start}.employee-card-avatar{aspect-ratio:1;width:3rem;color:var(--color-white);background:var(--color-blue-ocean);text-transform:uppercase;border-radius:50%;place-items:center;font-size:.75rem;font-weight:800;display:grid}.employee-card-details{min-width:0}.employee-card-details h2{color:var(--color-dark-grey);margin:0;font-size:1rem}.employee-card-details a{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.35rem;font-size:.78rem;display:block;overflow:hidden}.employee-card-details a:hover{color:var(--color-blue-ocean)}.employee-card-expertise{border-left:1px solid #2e282c1f;border-right:1px solid #2e282c1f;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0;padding:0 1rem;display:grid}.employee-expertise-group{min-width:0}.employee-expertise-label{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.4rem;font-size:.62rem;font-weight:700;display:block}.employee-expertise-tags{flex-wrap:wrap;gap:.35rem;display:flex}.employee-expertise-tag{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;padding:.3rem .55rem;font-size:.68rem;font-weight:700;overflow:hidden}.employee-skill-tag{color:var(--color-white);background:var(--color-blue-ocean)}.employee-customer-tag{color:var(--color-dark-grey);background:var(--color-earth-beige)}.employee-expertise-empty{color:var(--color-text-muted);font-size:.68rem;font-style:italic}.employee-card-capacity{justify-items:end;display:grid}.employee-card-capacity strong{color:var(--color-dark-grey);font-size:1.15rem}.employee-card-capacity span{color:var(--color-text-muted);margin-top:.15rem;font-size:.68rem}.employee-card-actions{gap:.4rem;margin-top:.55rem;display:flex}.employee-card-actions button{width:2rem;height:2rem;color:var(--color-blue-ocean);cursor:pointer;background:0 0;border:1px solid #4c788859;border-radius:.4rem;place-items:center;padding:.4rem;display:grid}.employee-card-actions svg{fill:currentColor;width:1rem;height:1rem}.employee-card-actions button:hover:not(:disabled){color:var(--color-white);background:var(--color-blue-ocean)}.employee-card-actions .delete-employee-button{color:var(--color-signal-red);border-color:#d04e3f59}.employee-card-actions .delete-employee-button:hover:not(:disabled){color:var(--color-white);background:var(--color-signal-red)}.employee-card-actions button:disabled{cursor:wait;opacity:.65}.hours-comparison{border-top:1px solid #2e282c1f;grid-column:1/-1;min-width:0;padding-top:1.25rem}.hours-comparison-heading h3,.hours-comparison-heading p{margin:0}.hours-comparison-heading h3{color:var(--color-dark-grey);font-size:1rem}.hours-comparison-heading p{color:var(--color-text-muted);margin-top:.3rem;font-size:.75rem}.hours-comparison-controls{grid-template-columns:repeat(3,minmax(10rem,1fr)) auto;align-items:end;gap:.75rem;margin-top:1rem;display:grid}.hours-comparison-controls label{gap:.4rem;display:grid}.hours-comparison-controls label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.hours-comparison-controls label>small{max-width:18rem;color:var(--color-signal-red);font-size:.65rem}.hours-comparison-controls input,.hours-comparison-controls select{width:100%;height:2.75rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .8rem}.hours-comparison-controls select:disabled{cursor:not-allowed;opacity:.65}.hours-comparison-controls button{min-height:2.75rem;color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean);cursor:pointer;border-radius:.5rem;padding:.65rem 1rem;font-size:.8rem;font-weight:700}.hours-comparison-controls button:hover:not(:disabled){background:var(--color-dark-grey);border-color:var(--color-dark-grey)}.hours-comparison-controls button:disabled{cursor:wait;opacity:.65}.hours-comparison-state{min-height:8rem;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;gap:.4rem;display:grid}.hours-comparison-state strong{color:var(--color-dark-grey)}.hours-comparison-state p{margin:0;font-size:.75rem}.hours-comparison-state .employees-loading-indicator{width:2rem;margin-bottom:.2rem}.hours-comparison-error strong{color:var(--color-signal-red)}.hours-comparison-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.hours-comparison-summary>div{background:var(--color-canvas);border:1px solid #2e282c1a;border-radius:.65rem;gap:.25rem;padding:1rem;display:grid}.hours-comparison-summary span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.65rem;font-weight:700}.hours-comparison-summary strong{color:var(--color-dark-grey);font-size:1.5rem}.hours-comparison-status{flex-wrap:wrap;align-items:center;gap:.35rem .55rem;width:fit-content;display:inline-flex}.hours-comparison-status-value{color:var(--color-dark-grey);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:800}.hours-comparison-status-label{border:1px solid;border-radius:999px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.65rem;font-weight:700;display:inline-flex}.hours-comparison-match .hours-comparison-status-label{color:var(--color-blue-ocean);background:#4c78881a}.hours-comparison-fewer .hours-comparison-status-label{color:var(--color-signal-red);background:#d04e3f1a}.hours-comparison-more .hours-comparison-status-label{color:#785f18;background:#c29e3c29}.hours-comparison-summary .hours-comparison-status{flex-direction:column;align-items:flex-start}.hours-comparison-summary .hours-comparison-status-value{font-size:1.5rem}.hours-comparison-table-wrapper{border:1px solid #2e282c1f;border-radius:.65rem;margin-top:1rem;overflow-x:auto}.hours-comparison-table{border-collapse:collapse;text-align:left;width:100%;font-size:.75rem}.hours-comparison-table th,.hours-comparison-table td{white-space:nowrap;border-bottom:1px solid #2e282c1a;padding:.75rem}.hours-comparison-table thead th{color:var(--color-text-muted);background:var(--color-canvas);letter-spacing:.06em;text-transform:uppercase;font-size:.65rem}.hours-comparison-table tbody tr:last-child th,.hours-comparison-table tbody tr:last-child td{border-bottom:0}.employees-state{min-height:28rem;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;gap:.6rem;display:grid}.employees-state strong{color:var(--color-dark-grey);font-size:1.25rem}.employees-state p{margin:0}.employees-state-error strong{color:var(--color-signal-red)}.employees-loading-indicator{aspect-ratio:1;border:.35rem solid #4c788833;border-top-color:var(--color-blue-ocean);border-radius:50%;width:2.5rem;margin-bottom:.5rem;animation:.8s linear infinite employees-loading}@keyframes employees-loading{to{transform:rotate(360deg)}}@media (width<=42rem){.employees-heading{flex-direction:column;align-items:flex-start}.employees-heading-actions{flex-direction:column;align-items:stretch;width:100%}.employees-count{text-align:center}.employees-filters{grid-template-columns:1fr}.employee-card{grid-template-columns:auto minmax(0,1fr)}.employee-card-expertise{border-top:1px solid #2e282c1f;border-left:0;border-right:0;grid-column:1/-1;grid-template-columns:1fr;padding:.75rem 0 0}.employee-card-capacity{border-top:1px solid #2e282c1f;border-left:0;grid-column:1/-1;justify-items:start;padding-top:.75rem;padding-left:0}.hours-comparison-controls,.hours-comparison-summary{grid-template-columns:1fr}}.page-placeholder{max-width:48rem;position:relative}.page-placeholder:after{aspect-ratio:1;border:clamp(.8rem, 2vw, 1.4rem) solid var(--color-earth-beige);content:"";border-radius:50%;width:clamp(4rem,10vw,7rem);position:absolute;top:50%;left:min(68vw,44rem);transform:translateY(-50%)}.eyebrow{color:var(--color-blue-ocean);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.75rem;font-weight:700}.page-title{max-width:12ch;color:var(--color-dark-grey);letter-spacing:-.05em;margin:0;font-size:clamp(2.75rem,8vw,5.75rem);font-weight:800;line-height:.9}.intro{max-width:34rem;color:var(--color-text-muted);margin:clamp(1.75rem,4vw,2.5rem) 0 0;font-size:clamp(1rem,2vw,1.2rem);line-height:1.6}@media (width<=64rem){.page-placeholder:after{display:none}}.resource-manager-dashboard{width:100%;max-width:92rem;margin:0 auto}.dashboard-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.75rem;display:flex}.dashboard-eyebrow{color:var(--color-blue-ocean);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .35rem;font-size:.7rem;font-weight:700}.dashboard-heading h1{color:var(--color-dark-grey);letter-spacing:-.055em;margin:0;font-size:clamp(2.25rem,5vw,3.75rem);font-weight:800;line-height:.95}.dashboard-intro{color:var(--color-text-muted);margin:.65rem 0 0;font-size:.9rem}.dashboard-today{color:var(--color-dark-grey);text-align:right;text-transform:capitalize;background:#ffffff9e;border:1px solid #2e282c14;border-radius:.75rem;margin:0;padding:.7rem .9rem;font-size:.8rem;font-weight:600;line-height:1.25}.dashboard-today span{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.15rem;font-size:.62rem;font-weight:700;display:block}.dashboard-error{color:#a12f24;border-left:.25rem solid var(--color-signal-red);background:#fde8e5;border-radius:.5rem;margin:0 0 1rem;padding:.8rem 1rem}.dashboard-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.dashboard-card{background:linear-gradient(135deg,#fffffffa,#ffffffd1);border:1px solid #2e282c14;border-radius:1rem;justify-content:space-between;align-items:flex-end;gap:1rem;min-width:0;min-height:7.5rem;padding:1.15rem 1.25rem;display:flex;position:relative;overflow:hidden;box-shadow:0 .75rem 2rem #2e282c0f}.dashboard-card:before{content:"";width:100%;height:.25rem;position:absolute;top:0;left:0}.dashboard-card:after{content:"";opacity:.06;background:currentColor;border-radius:50%;width:8rem;height:8rem;position:absolute;bottom:-3rem;right:-1.75rem}.dashboard-card--gold{color:var(--color-good-gold)}.dashboard-card--gold:before{background:var(--color-good-gold)}.dashboard-card--red{color:var(--color-signal-red)}.dashboard-card--red:before{background:var(--color-signal-red)}.dashboard-card--blue{color:var(--color-blue-ocean)}.dashboard-card--blue:before{background:var(--color-blue-ocean)}.dashboard-card-copy{z-index:1;position:relative}.dashboard-card h2{color:var(--color-dark-grey);margin:0;font-size:.9rem;line-height:1.3}.dashboard-card-copy span{color:var(--color-text-muted);margin-top:.35rem;font-size:.72rem;display:block}.dashboard-card>p{z-index:1;color:var(--color-dark-grey);letter-spacing:-.07em;margin:0;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800;line-height:1;position:relative}.dashboard-card>p.is-loading{color:var(--color-earth-beige)}.dashboard-table-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;margin-top:1.25rem;display:grid}.dashboard-panel{background:var(--color-white);border:1px solid #2e282c14;border-radius:1rem;min-width:0;overflow:hidden;box-shadow:0 .75rem 2rem #2e282c0e}.dashboard-panel-heading{border-bottom:1px solid #2e282c14;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.dashboard-panel-heading p{color:var(--color-blue-ocean);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .2rem;font-size:.62rem;font-weight:700}.dashboard-panel-heading h2{color:var(--color-dark-grey);margin:0;font-size:1rem}.dashboard-panel-heading>span{width:1.9rem;height:1.9rem;color:var(--color-blue-ocean);background:#4c78881a;border-radius:50%;place-items:center;font-size:.75rem;font-weight:800;display:grid}.dashboard-table-wrapper{overflow-x:auto}.dashboard-table{border-collapse:collapse;width:100%;font-size:.8rem}.dashboard-table th,.dashboard-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #2e282c12;padding:.7rem .75rem}.dashboard-table th{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;background:#f5f2ed8c;font-size:.62rem}.dashboard-table th:first-child,.dashboard-table td:first-child{padding-left:1.25rem}.dashboard-table th:last-child,.dashboard-table td:last-child{padding-right:1.25rem}.dashboard-action-cell{z-index:1;background:var(--color-white);position:sticky;right:0;box-shadow:-.5rem 0 .75rem #2e282c09}.dashboard-table th.dashboard-action-cell{z-index:2;background:#faf8f5}.dashboard-table tbody tr:hover .dashboard-action-cell{background:#f8faf9}.dashboard-table tbody tr{transition:background-color .12s}.dashboard-table tbody tr:hover{background:#4c78880b}.dashboard-table tbody tr:last-child td{border-bottom:0}.dashboard-assignment-name{color:var(--color-dark-grey);font-weight:700}.dashboard-person{align-items:center;gap:.45rem;display:inline-flex}.dashboard-avatar{width:1.6rem;height:1.6rem;color:var(--color-blue-ocean);background:#4c78881c;border-radius:50%;flex:none;place-items:center;font-size:.55rem;font-weight:800;display:grid}.dashboard-avatar--owner{color:#826918;background:#c29e3c29}.dashboard-date,.dashboard-priority{border-radius:999px;align-items:center;min-height:1.5rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.dashboard-date{color:var(--color-text-muted);background:var(--color-canvas)}.dashboard-date--deadline{color:#9c3b31;background:#d04e3f1a}.dashboard-priority--0{color:var(--color-text-muted);background:#6861651a}.dashboard-priority--1{color:var(--color-blue-ocean);background:#4c78881a}.dashboard-priority--2{color:#826918;background:#c29e3c29}.dashboard-priority--3{color:#9c3b31;background:#d04e3f1f}.dashboard-approve-button{min-width:5.5rem;color:var(--color-white);background:var(--color-blue-ocean);border:1px solid var(--color-blue-ocean);cursor:pointer;font:inherit;border-radius:.5rem;padding:.45rem .75rem;font-size:.72rem;font-weight:700;transition:background-color .12s,border-color .12s,transform .12s}.dashboard-approve-button:hover:not(:disabled){background:var(--color-dark-grey);border-color:var(--color-dark-grey);transform:translateY(-.0625rem)}.dashboard-approve-button:disabled{cursor:wait;opacity:.55}.dashboard-approve-button:focus-visible{outline:.1875rem solid var(--color-good-gold);outline-offset:.125rem}.dashboard-empty{color:var(--color-text-muted);text-align:center;margin:0;padding:2.5rem 1.25rem;font-size:.85rem}.dashboard-panel--chart{flex-direction:column;display:flex}.dashboard-chart{flex:1;grid-template-columns:repeat(7,minmax(2.25rem,1fr));gap:.65rem;min-height:15rem;padding:1.25rem 1.25rem 1rem;display:grid}.dashboard-chart-column{text-align:center;grid-template-rows:1.25rem minmax(8rem,1fr) auto auto;gap:.3rem;min-width:0;display:grid}.dashboard-chart-value{color:var(--color-dark-grey);font-size:.72rem;font-weight:800}.dashboard-chart-track{background:#4c788812;border-radius:.4rem .4rem .2rem .2rem;position:relative;overflow:hidden}.dashboard-chart-bar{background:linear-gradient(180deg, var(--color-good-gold), var(--color-signal-red));border-radius:.4rem .4rem .2rem .2rem;min-height:.2rem;transition:height .24s;position:absolute;bottom:0;left:0;right:0}.dashboard-chart-day{color:var(--color-text-muted);text-transform:uppercase;font-size:.62rem;font-weight:700}.dashboard-chart-date{color:var(--color-dark-grey);font-size:.75rem;font-weight:800}@media (width<=64rem){.dashboard-table-grid{grid-template-columns:1fr}}@media (width<=48rem){.dashboard-heading{align-items:flex-start}.dashboard-card-grid{grid-template-columns:1fr}}@media (width<=34rem){.dashboard-heading{display:block}.dashboard-today{text-align:left;margin-top:1rem;display:inline-block}.dashboard-card{min-height:6.5rem}.dashboard-chart{gap:.35rem;padding-inline:.75rem}}.resource-planning{width:100%;min-width:0}.app-content:has(>.resource-planning){padding-block:clamp(1rem,2vw,1.5rem)}.planning-state{min-height:28rem;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;gap:.6rem;display:grid}.planning-state strong{color:var(--color-dark-grey);font-size:1.25rem}.planning-state p{max-width:32rem;margin:0}.planning-state-error strong{color:var(--color-signal-red)}.loading-indicator{aspect-ratio:1;border:.35rem solid #4c788833;border-top-color:var(--color-blue-ocean);border-radius:50%;width:2.5rem;margin-bottom:.5rem;animation:.8s linear infinite planning-loading}@keyframes planning-loading{to{transform:rotate(360deg)}}.resource-planning-heading{z-index:10;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.625rem;display:flex;position:relative}.planning-meta{flex-shrink:0;align-items:center;gap:.65rem;display:flex}.planning-abbreviation-legend{color:var(--color-text-muted);white-space:nowrap;background:#2e282c0a;border:1px solid #2e282c1a;border-radius:.5rem;gap:.2rem;padding:.3rem .5rem;font-size:.62rem;display:grid}.planning-abbreviation-group{align-items:center;gap:.35rem;display:flex}.planning-abbreviation-group>strong{width:2.8rem;color:var(--color-dark-grey);text-transform:uppercase;font-size:.6rem}.planning-abbreviation-group>span{align-items:center;gap:.2rem;display:inline-flex}.planning-legend{color:var(--color-text-muted);gap:.65rem;font-size:.75rem;display:flex}.planning-legend span{align-items:center;gap:.4rem;display:flex}.legend-dot{aspect-ratio:1;border-radius:50%;width:.625rem}.legend-dot-planned{background:var(--color-blue-ocean)}.legend-dot-overbooked{background:var(--color-signal-red)}.legend-dot-temporary{border:2px dashed var(--color-blue-ocean);background:0 0}.legend-dot-confirmed{background:var(--color-white);border:2px solid var(--color-blue-ocean)}.planning-period{color:var(--color-dark-grey);background:var(--color-earth-beige);border-radius:999px;margin:0;padding:.5rem .75rem;font-size:.875rem;font-weight:700}.assignment-planner{background:var(--color-white);border:1px solid #2e282c24;border-radius:.875rem;gap:.85rem;margin-bottom:1rem;padding:1rem;display:grid;box-shadow:0 .5rem 1.5rem #2e282c0d}.assignment-planner-inline{display:contents}.assignment-planner-popover{z-index:50;width:min(44rem,100vw - 1rem);max-height:calc(100vh - 1rem);position:fixed;overflow-y:auto}.assignment-planner-compact{grid-template-columns:minmax(0,1fr);margin:0;padding:.85rem;box-shadow:0 .75rem 2rem #171b1d38}.assignment-planner-compact .assignment-planner-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.assignment-planner-compact .assignment-date-fields{display:contents}.assignment-planner-compact .assignment-planner-actions{grid-column:1/-1;justify-content:flex-end}.assignment-planner-compact .other-assignment-field{grid-template-columns:minmax(0,1fr)}.assignment-planner-modal-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.assignment-planner-modal-header h2{margin:0;font-size:1.1rem}.assignment-planner-modal-header div>span{color:var(--color-text-muted);margin-top:.15rem;font-size:.72rem;font-weight:700;display:block}.assignment-planner-modal-header button{width:2rem;height:2rem;color:var(--color-dark-grey);background:var(--color-earth-beige);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:1.25rem;display:grid}.assignment-planner-fields label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.assignment-capacity{color:var(--color-text-muted);background:#4c78881a;border-radius:.5rem;align-items:center;gap:1rem;padding:.55rem .75rem;font-size:.72rem;display:flex}.assignment-capacity strong{color:var(--color-dark-grey)}.assignment-capacity-unavailable{color:var(--color-signal-red);background:#d04e3f1a}.assignment-capacity-unavailable strong{color:var(--color-signal-red)}.assignment-planner-fields{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:.85rem .75rem;display:grid}.assignment-planner-fields label{gap:.4rem;min-width:0;display:grid}.assignment-date-fields{display:contents}.assignment-field-employee,.assignment-field-owner{grid-column:span 2}.assignment-field-work-item{grid-column:span 4}.assignment-field-planning,.assignment-field-priority,.assignment-field-date,.assignment-field-deadline{grid-column:span 2}.assignment-field-hours{grid-column:span 1}.assignment-field-slot{grid-column:span 2}.assignment-planner-fields input,.assignment-planner-fields select{width:100%;min-width:0;height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .7rem;font-size:.78rem}.assignment-description-field{gap:.4rem;display:grid}.assignment-description-field>span{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:700}.assignment-description-field textarea{resize:vertical;border:1px solid var(--color-border);width:100%;min-height:4.5rem;font:inherit;border-radius:.5rem;padding:.65rem .75rem}.assignment-planner-fields button{height:2.5rem;color:var(--color-white);background:var(--color-blue-ocean);cursor:pointer;border:0;border-radius:.5rem;padding:0 1rem;font-weight:700}.assignment-planner-fields button:disabled{cursor:not-allowed;opacity:.5}.assignment-planner-actions{grid-column:-6/-1;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.assignment-planner-actions button{min-width:6.75rem}.assignment-planner-compact .assignment-planner-fields>label,.assignment-planner-compact .assignment-date-fields>label,.assignment-planner-compact .assignment-planner-actions{grid-column:auto}.assignment-planner-fields .assignment-field-priority{align-self:end}.assignment-priority-toggle{cursor:pointer;background:#2e282c09;border:1px solid #2e282c24;border-radius:.55rem;align-items:center;min-height:2.5rem;padding:.42rem .65rem;transition:background-color .12s,border-color .12s,box-shadow .12s;color:var(--color-text-muted)!important;gap:.6rem!important;display:flex!important}.assignment-priority-toggle:hover{background:#d04e3f0f;border-color:#d04e3f61}.assignment-priority-toggle:has(input:focus-visible){outline:0;box-shadow:0 0 0 .18rem #d04e3f29}.assignment-priority-toggle:has(input:checked){background:#d04e3f1a;border-color:#d04e3f75;color:#9c3b31!important}.assignment-priority-toggle:has(input:disabled){cursor:not-allowed;opacity:.58}.assignment-priority-toggle input[type=checkbox]{appearance:none;cursor:pointer;flex:none;min-height:0;margin:0;transition:background-color .12s;position:relative;background:#2e282c33!important;border:0!important;border-radius:999px!important;width:2rem!important;height:1.15rem!important;padding:0!important}.assignment-priority-toggle input[type=checkbox]:after{background:var(--color-white);content:"";border-radius:50%;width:.85rem;height:.85rem;transition:transform .12s;position:absolute;top:.15rem;left:.15rem;box-shadow:0 .08rem .2rem #2e282c47}.assignment-priority-toggle input[type=checkbox]:checked{background:var(--color-signal-red)!important}.assignment-priority-toggle input[type=checkbox]:checked:after{transform:translate(.85rem)}.assignment-priority-toggle-copy{gap:.05rem;min-width:0;line-height:1.1;display:grid}.assignment-priority-toggle-copy strong{letter-spacing:.045em;text-transform:uppercase;font-weight:800;color:inherit!important;font-size:.7rem!important}.assignment-priority-toggle-copy small{color:var(--color-text-muted);letter-spacing:0;text-transform:none;font-size:.62rem;font-weight:500}.assignment-planner-compact .assignment-field-planning,.assignment-planner-compact .assignment-field-slot{grid-column:span 2}.assignment-planner-compact .assignment-field-work-item,.assignment-planner-compact .assignment-planner-actions{grid-column:1/-1}.assignment-planner-actions .assignment-close-button{color:var(--color-dark-grey);background:var(--color-earth-beige)}.assignment-planner-hint,.assignment-planner-error,.assignment-planner-success{margin:0;font-size:.75rem}.assignment-planner-hint{color:var(--color-text-muted)}.other-assignment-field{grid-template-columns:minmax(8rem,.25fr) minmax(16rem,1fr);align-items:center;gap:.65rem;display:grid}.other-assignment-field span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.other-assignment-field input{width:100%;height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .7rem}.assignment-planner-error{color:var(--color-signal-red)}.assignment-planner-success{color:#2f6f4e}.planning-action-selector{position:relative}.planning-action-selector summary{min-height:2.25rem;color:var(--color-white);background:var(--color-blue-ocean);cursor:pointer;border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem .75rem;font-size:.82rem;font-weight:700;list-style:none;display:flex}.planning-action-selector summary::-webkit-details-marker{display:none}.planning-action-selector summary:hover{background:var(--color-dark-grey)}.planning-action-selector[open] summary span{transform:rotate(180deg)}.planning-action-options{z-index:2;background:var(--color-white);border:1px solid #2e282c24;border-radius:.875rem;width:min(22rem,100vw - 3rem);padding:.35rem;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 .75rem 2rem #2e282c24}.planning-action-options>button{width:100%;color:var(--color-dark-grey);background:var(--color-white);cursor:pointer;text-align:left;border:0;border-radius:.5rem;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;padding:.5rem .75rem;display:grid}.planning-action-options>button:hover,.planning-action-options>button:focus-visible{background:#4c788814}.planning-action-options>button>span:nth-child(2){gap:.2rem;display:grid}.planning-action-options strong{font-size:.9rem}.planning-action-options small{color:var(--color-text-muted);font-size:.72rem}.planning-action-icon{width:1.875rem;height:1.875rem;color:var(--color-white);background:var(--color-blue-ocean);border-radius:50%;place-items:center;font-size:1.35rem;font-weight:700;display:grid}.planning-action-icon-temporary{color:var(--color-blue-ocean);background:#4c78881f}.temporary-planner-fields{gap:1rem;display:grid}.temporary-period-fields{grid-template-columns:minmax(14rem,2fr) repeat(2,minmax(9rem,1fr)) minmax(14rem,1.3fr);gap:.65rem;display:grid}.temporary-planner-fields .temporary-project-type-fields{grid-template-columns:none;align-items:center;gap:1rem;display:flex}.temporary-project-type-fields label{align-items:center;gap:.4rem;font-weight:600;display:flex}.temporary-project-type-fields input{margin:0}.temporary-period-fields>label{gap:.4rem;min-width:0;display:grid}.temporary-planner-fields fieldset{border:0;gap:.65rem;min-width:0;margin:0;padding:0;display:grid}.temporary-period-fields>label>span,.temporary-planner-fields legend{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.temporary-period-fields>label>input,.temporary-period-fields>label>select,.temporary-period-fields>label>textarea{width:100%;height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .7rem}.temporary-period-fields>label>textarea{resize:vertical;height:auto;min-height:2.5rem;padding-top:.55rem}.temporary-planner-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.temporary-planner-actions button{height:2.5rem;color:var(--color-white);background:var(--color-blue-ocean);cursor:pointer;border:0;border-radius:.5rem;padding:0 1rem;font-weight:700}.temporary-planner-actions button:disabled{cursor:not-allowed;opacity:.5}.temporary-planner-actions .temporary-cancel-button{color:var(--color-dark-grey);background:var(--color-earth-beige)}.temporary-planner-actions .temporary-confirm-button{background:var(--color-green-mint,#2e7d32)}.temporary-planner-actions .temporary-delete-button{background:var(--color-signal-red)}.temporary-planner-status{color:var(--color-dark-grey);font-weight:600}.temporary-employee-options{z-index:10;background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;gap:.25rem;max-height:14rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 .5rem 1rem #2e282c24}.temporary-employee-options label{background:var(--color-canvas);border-radius:.35rem;align-items:center;gap:.3rem;padding:.25rem .4rem;font-size:.68rem;display:flex}.temporary-employee-options input{margin:0}.temporary-employee-hours{background:var(--color-canvas);border-radius:.5rem;grid-template-columns:minmax(0,1fr) 5rem 4rem 2rem;align-items:center;gap:.75rem;padding:.45rem .7rem;font-size:.78rem;display:grid}.temporary-employee-hours .temporary-remove-employee-button{width:2rem;height:2rem;color:var(--color-signal-red);cursor:pointer;font:inherit;background:0 0;border:1px solid;border-radius:.35rem;place-items:center;padding:0;font-size:1.1rem;font-weight:700;display:grid}.temporary-employee-hours .temporary-remove-employee-button:disabled{cursor:not-allowed;opacity:.4}.temporary-employee-hours input{width:100%;min-width:0;height:2rem;color:var(--color-dark-grey);background:var(--color-white);font:inherit;border:1px solid #2e282c2e;border-radius:.35rem;padding:0 .4rem}.temporary-employee-hours>span:nth-child(3){color:var(--color-text-muted)}.temporary-selected-employees{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.35rem;display:grid}.temporary-employee-dropdown{width:100%;position:relative}.temporary-employee-dropdown summary{height:2.5rem;color:var(--color-dark-grey);background:var(--color-white);cursor:pointer;border:1px solid #2e282c2e;border-radius:.5rem;align-items:center;padding:0 .7rem;font-size:.78rem;list-style-position:inside;display:flex}.week-navigation{gap:.4rem;display:flex}.week-navigation button{aspect-ratio:1;width:2.125rem;color:var(--color-white);background:var(--color-dark-grey);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:1.15rem;transition:color .14s,background-color .14s;display:grid}.week-navigation button:hover{color:var(--color-dark-grey);background:var(--color-earth-beige)}.planning-filters{background:var(--color-canvas);border:1px solid #2e282c1a;border-radius:.875rem;grid-template-columns:minmax(15rem,2fr) repeat(2,minmax(10rem,1fr)) auto;align-items:end;gap:.625rem;margin-bottom:.625rem;padding:.625rem;display:grid}.planning-filters label{gap:.25rem;min-width:0;display:grid}.planning-filters label>span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.planning-filters input,.planning-filters select{width:100%;min-width:0;height:2.25rem;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .8rem;font-size:.82rem}.planning-filters input::placeholder{color:#686165b3}.filter-summary{height:2.25rem;color:var(--color-white);background:var(--color-blue-ocean);border-radius:.5rem;justify-content:center;align-items:center;gap:.35rem;padding:0 .9rem;display:flex}.filter-summary strong{font-size:1rem}.filter-summary span{font-size:.72rem}.planning-board-wrapper{overscroll-behavior-inline:contain;scroll-behavior:smooth;scrollbar-color:var(--color-earth-beige) var(--color-canvas);scrollbar-width:thin;border:1px solid #2e282c24;border-radius:.875rem;width:100%;overflow-x:auto;box-shadow:0 .75rem 2.5rem #2e282c14}.planning-board{background:var(--color-white);min-width:max-content;display:grid}.board-corner,.week-heading{z-index:3;color:var(--color-white);background:var(--color-dark-grey);border-bottom:1px solid #ffffff24;border-right:1px solid #ffffff24;position:sticky;top:0}.board-corner{z-index:6;flex-direction:column;justify-content:center;padding:1rem 1.25rem;display:flex;left:0}.board-corner span{font-size:.85rem;font-weight:800}.board-corner small{color:#ffffff9e;margin-top:.25rem}.week-heading-title{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.week-heading-title strong{font-size:.85rem}.week-heading-title span{color:#ffffffad;font-size:.72rem}.weekday-grid,.day-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.week-columns-heading{border-top:1px solid #ffffff24;grid-template-columns:minmax(0,1fr) 3.7rem;display:grid}.weekday-grid span{color:#ffffff94;text-align:center;border-right:1px solid #ffffff1a;padding:.4rem;font-size:.65rem}.weekday-grid span:last-child{border-right:0}.week-totals-heading{color:#ffffff94;border-left:1px solid #ffffff1a;place-items:center;font-size:.58rem;display:grid}.employee-lane{display:contents}.planning-empty-state{min-height:6rem;color:var(--color-text-muted);background:var(--color-white);text-align:center;grid-column:1/-1;place-content:center;gap:.4rem;display:grid;position:sticky;left:0}.planning-empty-state strong{color:var(--color-dark-grey)}.planning-empty-state span{font-size:.8rem}.employee-details{z-index:5;background:var(--color-canvas);border-bottom:1px solid #2e282c1f;border-right:1px solid #2e282c1f;align-items:center;gap:.5rem;min-height:2.75rem;padding:.3rem .6rem;display:flex;position:sticky;left:0}.employee-details:hover,.employee-details:focus,.employee-details:focus-within{z-index:7}.employee-capacity-tooltip{z-index:5;min-width:10rem;color:var(--color-white);background:var(--color-dark-grey);border-radius:.4rem;padding:.55rem;font-size:.68rem;display:none;position:absolute;top:calc(100% - .2rem);left:2.9rem;box-shadow:0 .4rem 1rem #2e282c33}.employee-details:hover .employee-capacity-tooltip,.employee-details:focus .employee-capacity-tooltip,.employee-details:focus-within .employee-capacity-tooltip{gap:.5rem;display:grid}.employee-capacity-week{gap:.15rem;display:grid}.employee-capacity-week+.employee-capacity-week{border-top:1px solid #fff3;padding-top:.5rem}.employee-capacity-week strong{margin-bottom:.1rem;font-size:.68rem}.employee-avatar{aspect-ratio:1;width:1.8rem;color:var(--color-white);background:var(--color-blue-ocean);border-radius:50%;flex-shrink:0;place-items:center;font-size:.6rem;font-weight:800;display:grid}.employee-details strong{font-size:.78rem;display:block}.employee-report-button{min-width:0;color:var(--color-dark-grey);cursor:pointer;text-align:left;text-overflow:ellipsis;text-underline-offset:.2rem;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;overflow:hidden}.employee-report-button:hover{color:var(--color-blue-ocean);text-decoration-color:currentColor}.employee-hours-report-backdrop{z-index:50;background:#2e282c94;place-items:center;padding:clamp(1rem,4vw,3rem);display:grid;position:fixed;inset:0}.employee-hours-report-dialog{background:var(--color-white);border-radius:.875rem;width:min(70rem,100%);max-height:calc(100vh - 2rem);padding:clamp(1.25rem,3vw,2rem);overflow-y:auto;box-shadow:0 1.5rem 4rem #2e282c47}.employee-hours-report-header{border-bottom:1px solid #2e282c1f;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1.25rem;display:flex}.employee-hours-report-header span{color:var(--color-blue-ocean);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:700}.employee-hours-report-header h2{color:var(--color-dark-grey);margin:.25rem 0 0;font-size:clamp(1.5rem,4vw,2.25rem)}.employee-hours-report-header p{color:var(--color-text-muted);margin:.4rem 0 0;font-size:.8rem}.employee-hours-report-header button{aspect-ratio:1;width:2.25rem;color:var(--color-dark-grey);background:var(--color-canvas);cursor:pointer;border:1px solid #2e282c29;border-radius:50%;flex-shrink:0;place-items:center;padding:0;font-size:1.4rem;display:grid}.employee-hours-report-dialog .hours-comparison{border-top:0;padding-top:1.25rem}.week-lane{background:#fbfaf8;border-bottom:1px solid #2e282c1f;border-right:1px solid #2e282c1f;min-height:2.75rem;padding:.2rem 4.1rem .2rem .4rem;transition:background-color .14s,box-shadow .14s;position:relative;overflow:hidden}.week-lane-active{box-shadow:inset 0 0 0 .1875rem var(--color-blue-ocean);background:#4c78881f}.week-lane-overbooked{background:#d04e3f0f}.day-grid{pointer-events:none;position:absolute;inset:0 3.7rem 0 0}.day-drop-grid{z-index:3;pointer-events:none;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:absolute;inset:0 3.7rem 0 0}.assignment-create-target-grid{z-index:1;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:absolute;inset:0 3.7rem 0 0}.assignment-create-target-grid button{cursor:cell;background:0 0;border:0;border-right:1px solid #0000;padding:0}.assignment-create-target-grid button:not(:disabled):hover,.assignment-create-target-grid button:not(:disabled):focus-visible{background:#4c788814;box-shadow:inset 0 0 0 .0625rem #4c788859}.assignment-create-target-grid button:disabled{cursor:not-allowed}.assignment-copy-target-grid{z-index:4;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:absolute;inset:0 3.7rem 0 0}.assignment-copy-target-grid button{cursor:copy;background:0 0;border:0;border-right:1px solid #0000;padding:0}.assignment-copy-target-grid button:hover{background:#4c788814;box-shadow:inset 0 0 0 .0625rem #4c788859}.assignment-copy-target-grid .assignment-copy-target-selected{box-shadow:inset 0 0 0 .125rem var(--color-blue-ocean);background:#4c788829}.day-drop-grid>div{border:.125rem dashed #0000;transition:background-color .12s,border-color .12s;position:relative}.day-drop-grid>div:after{color:var(--color-text-muted);content:"Plaats hier";opacity:.6;place-items:center;font-size:.55rem;font-weight:700;display:grid;position:absolute;inset:.2rem}.day-drop-grid .day-drop-zone-active{border-color:var(--color-blue-ocean);background:#4c788829}.day-drop-grid .day-drop-zone-unavailable:after{content:""}.day-grid span{color:#2e282c80;border-right:1px solid #2e282c0f;place-items:center;font-size:.58rem;font-weight:800;display:grid}.day-grid span:last-child{border-right:0}.day-grid .day-unavailable{background:repeating-linear-gradient(-45deg,#2e282c0a,#2e282c0a .25rem,#2e282c1a .25rem .5rem)}.day-grid .day-absence{color:var(--color-signal-red);background-color:#d04e3f14}.allocation-stack{z-index:1;pointer-events:none;min-height:1.5rem;position:relative}.temporary-planning-stack{z-index:2;pointer-events:none;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:1.5rem;gap:.2rem 0;margin-left:-.4rem;margin-right:-.4rem;display:grid;position:relative}.temporary-planning-bar{pointer-events:auto;min-width:0;height:1rem;color:var(--color-dark-grey);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#ffffffe6;border:.125rem dashed;border-radius:.25rem;align-items:center;gap:.3rem;margin:0 .2rem;padding:0 .35rem;font-size:.58rem;font-weight:800;line-height:1;display:flex;overflow:hidden}.temporary-planning-bar span{aspect-ratio:1;width:.75rem;color:var(--color-white);background:var(--color-blue-ocean);border-radius:50%;flex-shrink:0;place-items:center;font-size:.5rem;display:grid}.temporary-planning-bar:not(.temporary-planning-bar-confirmed){opacity:.8;background:repeating-linear-gradient(135deg,#ffffffe6 0 .3rem,#0000000f .3rem .6rem);font-style:italic}.temporary-planning-bar-confirmed{height:1.5rem;color:var(--color-white);border-style:solid;box-shadow:0 .125rem .3rem #2e282c24}.temporary-planning-bar-confirmed span{background:var(--color-green-mint,#2e7d32)}.temporary-planning-bar-confirmed strong{margin-left:auto;font-size:.75rem}.project-bar{pointer-events:auto;min-width:0;height:1.5rem;color:var(--color-white);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:.25rem;justify-content:space-between;align-items:center;gap:.1rem;padding:0 .25rem;font-size:.62rem;line-height:1;display:flex;position:absolute;overflow:hidden;box-shadow:0 .125rem .3rem #2e282c24}.project-bar:active{cursor:grabbing;opacity:.72}.project-bar:not([draggable=true]){cursor:default}.project-bar-draggable:hover{filter:brightness(.94)}.assignment-drag-handle{letter-spacing:-.2rem;flex-shrink:0;font-size:.7rem;font-weight:900}.fixed-assignment-marker{margin-right:.2rem;font-size:.65rem;font-weight:900}.confirmed-planning-marker{width:.85rem;height:.85rem;color:var(--color-white);background:var(--color-green-mint,#2e7d32);border-radius:50%;place-items:center;margin-right:.2rem;font-size:.55rem;font-weight:900;display:inline-grid}.project-bar-overbooked{outline:.125rem solid var(--color-signal-red);outline-offset:-.125rem}.project-bar-overdue{background-color:var(--color-signal-red)!important}.project-bar-due-soon{background-color:#e67e22!important}.project-bar span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-bar strong{flex-shrink:0}.project-bar small{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.55rem;overflow:hidden}.project-bar-editing{outline:.125rem solid var(--color-white);outline-offset:-.25rem}.assignment-status-badge{width:fit-content;color:var(--color-white);border-radius:999px;justify-content:center;align-items:center;padding:.2rem .5rem;font-size:.65rem;font-weight:800;line-height:1;display:inline-flex}.assignment-status-badge-compact{flex:none;min-width:.85rem;height:.85rem;margin-right:.15rem;padding:0 .15rem;font-size:.55rem}.assignment-status-1{background:#2563eb}.assignment-status-2{background:#2e7d32}.assignment-priority-badge{width:fit-content;color:var(--color-white);border-radius:999px;justify-content:center;align-items:center;padding:.2rem .5rem;font-size:.65rem;font-weight:800;line-height:1;display:inline-flex}.assignment-priority-badge-compact{flex:0 0 .85rem;width:.85rem;height:.85rem;margin-right:.15rem;padding:0;font-size:.55rem}.assignment-priority-2{background:#b91c1c}.assignment-deadline-icon{flex:none;margin-right:.15rem;font-size:.7rem;line-height:1}.project-bar-copied{box-shadow:0 0 0 .1875rem var(--color-white), 0 0 0 .375rem var(--color-blue-ocean)}.assignment-copy-status{z-index:30;max-width:min(28rem,100vw - 2rem);color:var(--color-white);background:var(--color-blue-ocean);border:1px solid #ffffff47;border-radius:.5rem;align-items:center;gap:.25rem;margin:0;padding:.55rem .75rem;font-size:.78rem;display:flex;position:fixed;top:1rem;right:1rem;box-shadow:0 .5rem 1.5rem #2e282c3d}.hours-editor-popover{z-index:20;box-sizing:border-box;background:var(--color-white);border:1px solid #2e282c24;border-radius:.625rem;min-width:13rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - 2rem);padding:.75rem;position:fixed;overflow-y:auto;box-shadow:0 .5rem 1.5rem #2e282c2e}.hours-editor-popover-above{transform:translateY(-100%)}.hours-editor-popover form{gap:.5rem;display:grid}.hours-editor-popover strong{color:var(--color-dark-grey);font-size:.75rem}.hours-editor-popover label{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.hours-editor-popover input,.hours-editor-popover select,.hours-editor-popover textarea{width:100%;color:var(--color-dark-grey);background:var(--color-white);border:1px solid #2e282c2e;border-radius:.5rem;padding:0 .6rem;font-size:.8rem}.hours-editor-popover input,.hours-editor-popover select{height:2.25rem}.hours-editor-popover textarea{resize:vertical;min-height:4rem;padding-block:.5rem}.hours-editor-error{color:var(--color-signal-red);font-size:.7rem}.hours-editor-readonly{max-width:18rem;color:var(--color-text-muted);font-size:.72rem;line-height:1.35}.hours-editor-actions{justify-content:flex-end;gap:.5rem;display:flex}.hours-editor-actions button{height:2.1rem;color:var(--color-white);background:var(--color-blue-ocean);cursor:pointer;border:0;border-radius:.5rem;padding:0 .9rem;font-size:.72rem;font-weight:700}.hours-editor-actions button[type=button]{color:var(--color-dark-grey);background:var(--color-earth-beige)}.hours-editor-actions button.hours-editor-delete{color:var(--color-white);background:var(--color-signal-red);margin-right:auto}.hours-editor-actions button:disabled{cursor:not-allowed;opacity:.5}.assignment-workflow-action{min-height:2.25rem;color:var(--color-white);cursor:pointer;border:0;border-radius:.5rem;padding:.45rem .75rem;font-size:.75rem;font-weight:800}.assignment-workflow-action:disabled{cursor:not-allowed;opacity:.5}.assignment-approve{background:#2e7d32}.assignment-lock{background:#dc2626}.week-totals{z-index:2;width:3.7rem;color:var(--color-text-muted);text-align:center;background:#ffffffb8;border-left:1px solid #2e282c1a;place-content:center;gap:.15rem;font-size:.58rem;font-weight:700;display:grid;position:absolute;top:0;bottom:0;right:0}.empty-week{pointer-events:none;color:var(--color-text-muted);border:1px dashed #2e282c38;border-radius:.5rem;place-items:center;font-size:.65rem;display:grid;position:absolute;inset:0 2.6rem 0 0}@media (width<=64rem){.planning-meta{flex-wrap:wrap}.planning-filters,.assignment-planner-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-planner-compact .assignment-planner-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.assignment-planner-fields>label,.assignment-planner-actions{grid-column:auto}.assignment-field-work-item,.assignment-planner-actions{grid-column:1/-1}.temporary-period-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-summary{justify-content:flex-start}}@media (width<=42rem){.resource-planning-heading{flex-direction:column;align-items:flex-start}.planning-meta{align-items:flex-start;width:100%}.planning-legend{flex-wrap:wrap}.planning-filters{grid-template-columns:1fr}.assignment-capacity{flex-direction:column;align-items:flex-start;gap:.35rem}.assignment-planner-fields,.assignment-planner-compact .assignment-planner-fields{grid-template-columns:1fr}.assignment-planner-fields>label,.assignment-field-work-item,.assignment-planner-actions{grid-column:1}.assignment-planner-actions{justify-content:stretch}.assignment-planner-actions button{flex:1}.temporary-period-fields{grid-template-columns:1fr}.temporary-planner-actions{flex-wrap:wrap;justify-content:flex-start}}:root{color:#2e282c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-white:#fff;--color-dark-grey:#2e282c;--color-earth-beige:#c8baa5;--color-good-gold:#c29e3c;--color-blue-ocean:#4c7888;--color-signal-red:#d04e3f;--color-canvas:#f5f2ed;--color-text-muted:#686165;--content-width:80rem;--page-padding:clamp(1rem, 4vw, 3rem);--section-spacing:clamp(2rem, 5vw, 4rem);--border-radius:1.25rem;background:#f5f2ed;font-family:Open Sans,Arial,sans-serif}*,:before,:after{box-sizing:border-box}html{min-width:20rem;min-height:100%}body{background:var(--color-canvas);min-width:20rem;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%;display:block}:focus-visible{outline:.1875rem solid var(--color-good-gold);outline-offset:.1875rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
