.sidebar{width:var(--sidebar-width);background:var(--color-primary-dark);color:#fff;min-height:100vh;padding:var(--space-5) var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.sidebar__brand{align-items:center;gap:var(--space-2);padding:0 var(--space-2);margin-bottom:var(--space-6);display:flex}.sidebar__brand-mark{border-radius:var(--radius-sm);background:var(--color-accent);width:32px;height:32px;color:var(--color-ink);font-weight:var(--fw-bold);font-size:var(--fs-sm);justify-content:center;align-items:center;display:inline-flex}.sidebar__brand-name{font-weight:var(--fw-semibold);font-size:var(--fs-md);letter-spacing:-.01em}.sidebar__nav{gap:var(--space-1);flex-direction:column;display:flex}.sidebar__link{padding:var(--space-3);border-radius:var(--radius-sm);color:#ffffffb8;font-size:var(--fs-base);font-weight:var(--fw-medium);text-decoration:none;transition:background .12s,color .12s;display:block}.sidebar__link:hover{color:#fff;background:#ffffff14}.sidebar__link--active{background:var(--color-accent);color:var(--color-ink)}.app-layout{min-height:100vh;display:flex}.app-layout__content{flex:1;min-width:0}.topbar{padding:var(--space-6) var(--space-6) var(--space-4)}.topbar__title{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.01em;color:var(--color-ink)}.topbar__subtitle{margin-top:var(--space-1);font-size:var(--fs-base);color:var(--color-ink-soft)}.dashboard-page{background:var(--color-bg);min-height:100vh}.dashboard-page__content{padding:0 var(--space-6) var(--space-6)}.dashboard-page__toolbar{margin:var(--space-5) 0 var(--space-4);justify-content:flex-end;display:flex}.dashboard-page__filter-group{gap:var(--space-3);display:flex}.dashboard-page__filter-group label{gap:var(--space-2);color:var(--color-ink-soft);font-size:var(--fs-sm);flex-direction:column;display:flex}.dashboard-page__filter-group select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);min-width:180px;padding:var(--space-2) var(--space-3);color:var(--color-ink)}.dashboard-page__metrics{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.dashboard-page__metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-card)}.dashboard-page__metric-card--primary{border-left:4px solid var(--color-primary)}.dashboard-page__metric-card--accent{border-left:4px solid var(--color-accent)}.dashboard-page__metric-card--neutral{border-left:4px solid var(--color-neutral)}.dashboard-page__metric-card--success{border-left:4px solid var(--color-success)}.dashboard-page__metric-label{font-size:var(--fs-sm);color:var(--color-ink-soft);margin-bottom:var(--space-2);display:block}.dashboard-page__metric-card strong{font-size:var(--fs-xl);margin-bottom:var(--space-1);display:block}.dashboard-page__metric-card small{color:var(--color-ink-faint)}.dashboard-page__grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-page__panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card)}.dashboard-page__panel--wide{grid-column:1/-1}.dashboard-page__panel-header{margin-bottom:var(--space-4)}.dashboard-page__panel-header h3{font-size:var(--fs-md)}.dashboard-page__availability-wrap{justify-content:space-between;align-items:center;gap:var(--space-5);display:flex}.dashboard-page__donut-chart{flex-shrink:0;width:180px;height:180px;position:relative}.dashboard-page__donut-chart svg{width:100%;height:100%}.dashboard-page__donut-label{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.dashboard-page__donut-label strong{font-size:1.7rem}.dashboard-page__donut-label span{color:var(--color-ink-soft);font-size:var(--fs-sm)}.dashboard-page__legend{gap:var(--space-3);flex-direction:column;flex:1;display:flex}.dashboard-page__legend-item{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);grid-template-columns:12px 1fr auto;align-items:center;display:grid}.dashboard-page__legend-item:last-child{border-bottom:none}.dashboard-page__legend-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.dashboard-page__bar-list{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-page__bar-row{gap:var(--space-2);flex-direction:column;display:flex}.dashboard-page__bar-labels{color:var(--color-ink-soft);font-size:var(--fs-sm);justify-content:space-between;display:flex}.dashboard-page__bar-track{background:var(--color-neutral-soft);border-radius:var(--radius-pill);width:100%;height:10px;overflow:hidden}.dashboard-page__bar-track span{border-radius:inherit;height:100%;display:block}.dashboard-page__ring-wrap{gap:var(--space-4);flex-wrap:wrap;justify-content:space-around;align-items:center;display:flex}.dashboard-page__ring-item{align-items:center;gap:var(--space-2);color:var(--color-ink-soft);flex-direction:column;display:flex}.dashboard-page__mini-donut{width:84px;height:84px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-ink);border-radius:50%;place-items:center;display:grid}.dashboard-page__bed-table{gap:var(--space-2);flex-direction:column;display:flex}.dashboard-page__table-head,.dashboard-page__table-row{gap:var(--space-3);padding:var(--space-2) 0;grid-template-columns:1.6fr 1fr 1fr 1fr;display:grid}.dashboard-page__table-head{color:var(--color-ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-semibold);border-bottom:1px solid var(--color-border)}.dashboard-page__table-row{color:var(--color-ink);font-size:var(--fs-sm);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.dashboard-page__trend-chart{gap:var(--space-3);min-height:200px;padding-top:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;display:grid}.dashboard-page__trend-day{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.dashboard-page__trend-bars{justify-content:center;align-items:flex-end;gap:var(--space-2);width:100%;height:160px;display:flex}.dashboard-page__trend-bar{border-radius:8px 8px 0 0;width:16px;display:block}.dashboard-page__trend-bar--patients{background:var(--color-primary)}.dashboard-page__trend-bar--appointments{background:var(--color-accent)}.dashboard-page__trend-day label{color:var(--color-ink-soft);font-size:var(--fs-sm)}.dashboard-page__pto-list{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-page__pto-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-sunken);border-radius:var(--radius-md);display:flex}.dashboard-page__pto-item strong,.dashboard-page__pto-item span,.dashboard-page__pto-item small{display:block}.dashboard-page__pto-item>div:first-child{flex:1}.dashboard-page__pto-item span{color:var(--color-ink-soft);font-size:var(--fs-sm)}.dashboard-page__pto-meta{align-items:flex-end;gap:var(--space-1);flex-direction:column;display:flex}.dashboard-page__pto-status{border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:4px 8px;display:inline-flex}.dashboard-page__pto-status--approved{background:var(--color-success-soft);color:var(--color-success)}.dashboard-page__pto-status--pending{background:var(--color-warning-soft);color:var(--color-warning)}@media (width<=860px){.dashboard-page__metrics,.dashboard-page__grid{grid-template-columns:1fr}.dashboard-page__filter-group{flex-direction:column}.dashboard-page__availability-wrap{flex-direction:column;align-items:flex-start}.dashboard-page__table-head{display:none}.dashboard-page__table-row{grid-template-columns:1fr 1fr}}.modal-overlay{padding:var(--space-5);z-index:1000;background:#0f201d85;justify-content:center;align-items:center;animation:.16s modal-overlay-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-overlay-fade-in{0%{opacity:0}to{opacity:1}}.modal-panel{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);flex-direction:column;width:100%;max-height:88vh;animation:.18s cubic-bezier(.2,.8,.3,1) modal-panel-pop-in;display:flex}@keyframes modal-panel-pop-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-panel--sm{max-width:400px}.modal-panel--md{max-width:560px}.modal-panel--lg{max-width:720px}.modal-panel__header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-panel__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-ink)}.modal-panel__close{color:var(--color-ink-soft);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-panel__close:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.modal-panel__body{padding:var(--space-5);overflow-y:auto}.appointments-page{background:var(--color-bg);min-height:100vh}.appointments-page__content{padding:0 var(--space-6) var(--space-6)}.appointments-page__toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);margin:var(--space-5) 0 var(--space-4);display:flex}.appointments-page__view-toggle{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-1);box-shadow:var(--shadow-card);display:inline-flex}.appointments-page__view-button{color:var(--color-ink-soft);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);font-weight:var(--fw-medium);background:0 0;border:0}.appointments-page__view-button--active{background:var(--color-primary-soft);color:var(--color-primary-dark)}.appointments-page__add-button,.appointments-page__primary-button,.appointments-page__ghost-button,.appointments-page__inline-add,.appointments-page__day-date-controls button{border-radius:var(--radius-sm);font-weight:var(--fw-semibold);border:none}.appointments-page__add-button,.appointments-page__primary-button{background:var(--color-primary);color:var(--color-surface);padding:var(--space-2) var(--space-4)}.appointments-page__ghost-button{background:var(--color-neutral-soft);color:var(--color-ink);padding:var(--space-2) var(--space-4)}.appointments-page__filters{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.appointments-page__filters input,.appointments-page__filters select,.appointments-page__modal-form input,.appointments-page__modal-form select,.appointments-page__modal-form textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:40px;padding:var(--space-2) var(--space-3);color:var(--color-ink)}.appointments-page__checkbox{justify-content:center;align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:0 var(--space-3);font-size:var(--fs-sm);min-height:40px;display:inline-flex}.appointments-page__summary{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.appointments-page__stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-card)}.appointments-page__stat span{font-size:var(--fs-sm);color:var(--color-ink-soft);margin-bottom:var(--space-2);display:block}.appointments-page__stat strong{font-size:var(--fs-lg);color:var(--color-ink)}.appointments-page__stat--warning{border-color:#b8863a59}.appointments-page__calendar-grid{gap:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.appointments-page__weekday-header{padding:var(--space-2) 0;text-align:center;color:var(--color-ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.appointments-page__day-cell,.appointments-page__week-day{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-3);text-align:left;box-shadow:var(--shadow-card)}.appointments-page__day-cell{min-height:150px}.appointments-page__day-cell--muted{opacity:.45}.appointments-page__day-cell--selected,.appointments-page__week-day--selected{border-color:var(--color-primary);box-shadow:0 0 0 2px #2f6f6324}.appointments-page__day-topline{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-weight:var(--fw-semibold);display:flex}.appointments-page__day-badge{background:var(--color-primary-soft);color:var(--color-primary-dark);border-radius:var(--radius-pill);padding:2px 6px;font-size:10px;display:inline-flex}.appointments-page__day-stack,.appointments-page__task-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.appointments-page__mini-pill,.appointments-page__task-chip,.appointments-page__event-chip{border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-dark);align-items:center;padding:2px 8px;font-size:10px;line-height:1.5;display:inline-flex}.appointments-page__mini-pill--warning,.appointments-page__event-chip--warning,.appointments-page__visit-card--warning{border-color:#b8863a73}.appointments-page__mini-pill--warning,.appointments-page__event-chip--warning{background:var(--color-warning-soft);color:var(--color-warning)}.appointments-page__week-grid{gap:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.appointments-page__week-day{min-height:200px}.appointments-page__week-day-header{margin-bottom:var(--space-2);color:var(--color-ink-soft);justify-content:space-between;align-items:center;display:flex}.appointments-page__week-day-body{gap:var(--space-2);flex-direction:column;display:flex}.appointments-page__empty-text,.appointments-page__empty-card{color:var(--color-ink-faint);font-size:var(--fs-sm)}.appointments-page__day-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card)}.appointments-page__day-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.appointments-page__day-header h3{font-size:var(--fs-lg)}.appointments-page__day-date-controls{align-items:center;gap:var(--space-2);display:flex}.appointments-page__day-date-controls button{background:var(--color-neutral-soft);color:var(--color-ink);padding:var(--space-2) var(--space-3);cursor:pointer}.appointments-page__visit-list{gap:var(--space-3);display:grid}.appointments-page__visit-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-4)}.appointments-page__visit-card--warning{background:linear-gradient(#f6ecdab3,#fff)}.appointments-page__visit-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.appointments-page__visit-card-header h4{font-size:var(--fs-md);margin-bottom:var(--space-1)}.appointments-page__visit-card-header p{color:var(--color-ink-faint);font-size:var(--fs-sm)}.appointments-page__status-pill{border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:4px 8px;display:inline-flex}.appointments-page__status-pill--caregiver-assigned,.appointments-page__status-pill--scheduled{background:var(--color-primary-soft);color:var(--color-primary-dark)}.appointments-page__status-pill--in-progress,.appointments-page__status-pill--completed{background:var(--color-success-soft);color:var(--color-success)}.appointments-page__status-pill--cancelled,.appointments-page__status-pill--missed{background:var(--color-danger-soft);color:var(--color-danger)}.appointments-page__status-pill--no-caregiver-assigned{background:var(--color-warning-soft);color:var(--color-warning)}.appointments-page__visit-meta{gap:var(--space-3);color:var(--color-ink-soft);font-size:var(--fs-sm);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.appointments-page__conflict-banner{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.appointments-page__modal-form{gap:var(--space-4);flex-direction:column;display:flex}.appointments-page__modal-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-field--full{grid-column:1/-1}.appointments-page__autocomplete{gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.appointments-page__suggestion-item{gap:var(--space-2);text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);color:var(--color-ink);grid-template-columns:1.3fr auto auto;align-items:center;display:grid}.appointments-page__suggestion-item span{color:var(--color-ink-soft);font-size:var(--fs-xs)}.appointments-page__task-editor{gap:var(--space-2);flex-direction:column;display:flex}.appointments-page__task-row{gap:var(--space-2);display:flex}.appointments-page__task-row button{border-radius:var(--radius-sm);background:var(--color-danger-soft);width:38px;color:var(--color-danger);cursor:pointer;border:none;font-size:20px}.appointments-page__inline-add{background:var(--color-primary-soft);color:var(--color-primary-dark);padding:var(--space-2) var(--space-3);align-self:flex-start}.appointments-page__modal-actions{justify-content:flex-end;gap:var(--space-3);display:flex}@media (width<=980px){.appointments-page__filters,.appointments-page__modal-grid{grid-template-columns:1fr 1fr}}@media (width<=720px){.appointments-page__content{padding:0 var(--space-4) var(--space-4)}.appointments-page__toolbar,.appointments-page__day-header,.appointments-page__filters,.appointments-page__modal-grid,.appointments-page__summary{grid-template-columns:1fr;display:grid}.appointments-page__view-toggle{justify-content:space-between}.appointments-page__calendar-grid,.appointments-page__week-grid{grid-template-columns:1fr}}.new-caregiver-btn{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:background .12s}.new-caregiver-btn:hover{background:var(--color-primary-dark)}.pto-request-btn{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);transition:background .12s,border-color .12s}.pto-request-btn:hover{background:var(--color-surface-sunken);border-color:var(--color-ink-faint)}.availability-update-btn{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);transition:background .12s,border-color .12s}.availability-update-btn:hover{background:var(--color-surface-sunken);border-color:var(--color-ink-faint)}.caregiver-action-bar{align-items:center;gap:var(--space-2);display:flex}.caregiver-filters{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.caregiver-filters__row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.caregiver-filters__search{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:200px;padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);color:var(--color-ink);flex:240px}.caregiver-filters__search::placeholder{color:var(--color-ink-faint)}.caregiver-filters__select{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);color:var(--color-ink)}.caregiver-filters__reset{color:var(--color-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:var(--space-2) var(--space-2);background:0 0;border:none;text-decoration:underline}.caregiver-filters__count{font-size:var(--fs-xs);color:var(--color-ink-soft)}.status-pill{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;display:inline-flex}.status-pill--available{background:var(--color-success-soft);color:var(--color-success)}.status-pill--on-duty{background:var(--color-primary-soft);color:var(--color-primary-dark)}.status-pill--off-duty{background:var(--color-neutral-soft);color:var(--color-neutral)}.status-pill--on-leave{background:var(--color-warning-soft);color:var(--color-warning)}.status-pill--neutral{background:var(--color-neutral-soft);color:var(--color-neutral)}.caregiver-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden}.caregiver-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.caregiver-table thead th{text-align:left;padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);color:var(--color-ink-soft);font-weight:var(--fw-semibold);font-size:var(--fs-xs);border-bottom:1px solid var(--color-border)}.caregiver-table tbody td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-ink)}.caregiver-table tbody tr:last-child td{border-bottom:none}.caregiver-table tbody tr:hover{background:var(--color-surface-sunken)}.caregiver-table__id{color:var(--color-ink-soft)}.caregiver-table__actions{text-align:right}.caregiver-table__see-more{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--color-primary-dark);background:0 0}.caregiver-table__see-more:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.caregiver-table__empty{background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-7);text-align:center;color:var(--color-ink-soft);font-size:var(--fs-sm)}.wizard-progress{margin-bottom:var(--space-5);align-items:center;display:flex}.wizard-progress__item{flex:1;align-items:center;display:flex}.wizard-progress__item:last-child{flex:0}.wizard-progress__dot{width:26px;height:26px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);background:var(--color-surface-sunken);color:var(--color-ink-faint);border:1px solid var(--color-border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.wizard-progress__dot--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.wizard-progress__dot--complete{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-dark)}.wizard-progress__label{margin-left:var(--space-2);font-size:var(--fs-xs);color:var(--color-ink-faint);white-space:nowrap}.wizard-progress__label--active{color:var(--color-ink);font-weight:var(--fw-semibold)}.wizard-progress__connector{background:var(--color-border-strong);height:1px;margin:0 var(--space-3);flex:1}.wizard-progress__connector--complete{background:var(--color-primary)}@media (width<=560px){.wizard-progress__label{display:none}}.language-tag-input{gap:var(--space-3);flex-direction:column;display:flex}.language-tag-input__chips{gap:var(--space-2);flex-wrap:wrap;min-height:32px;display:flex}.language-tag-input__placeholder{font-size:var(--fs-sm);color:var(--color-ink-faint);padding:var(--space-1) 0}.language-tag-input__chip{align-items:center;gap:var(--space-1);background:var(--color-primary-soft);color:var(--color-primary-dark);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);font-size:var(--fs-sm);font-weight:var(--fw-medium);display:inline-flex}.language-tag-input__chip-remove{color:var(--color-primary-dark);padding:var(--space-1);background:0 0;border:none;border-radius:50%;font-size:1rem;line-height:1;display:inline-flex}.language-tag-input__chip-remove:hover{background:#1f4e4529}.language-tag-input__controls{gap:var(--space-3);flex-wrap:wrap;display:flex}.language-tag-input__preset-select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);color:var(--color-ink);background:var(--color-surface)}.language-tag-input__custom{gap:var(--space-2);display:flex}.language-tag-input__custom input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);min-width:160px}.language-tag-input__custom button{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-ink)}.language-tag-input__custom button:hover:not(:disabled){background:var(--color-surface-sunken)}.language-tag-input__custom button:disabled{opacity:.5;cursor:not-allowed}.caregiver-details-step__radio-row,.assignment-reporting-step__radio-row{gap:var(--space-5);display:flex}.new-caregiver-modal__step-viewport{min-height:260px;position:relative;overflow:hidden}.new-caregiver-modal__step{animation-duration:.22s;animation-timing-function:cubic-bezier(.22,.8,.3,1);animation-fill-mode:both}.new-caregiver-modal__step--forward{animation-name:swoop-in-from-right}.new-caregiver-modal__step--back{animation-name:swoop-in-from-left}@keyframes swoop-in-from-right{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}@keyframes swoop-in-from-left{0%{opacity:0;transform:translate(-48px)}to{opacity:1;transform:translate(0)}}.new-caregiver-modal__footer{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.new-caregiver-modal__btn{border-radius:var(--radius-sm);padding:var(--space-2) var(--space-5);font-size:var(--fs-sm);font-weight:var(--fw-semibold);border:1px solid #0000}.new-caregiver-modal__btn--ghost{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-ink)}.new-caregiver-modal__btn--ghost:hover{background:var(--color-surface-sunken)}.new-caregiver-modal__btn--primary{background:var(--color-primary);color:#fff}.new-caregiver-modal__btn--primary:hover:not(:disabled){background:var(--color-primary-dark)}.new-caregiver-modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.new-caregiver-modal__step{animation:none}}.caregiver-detail-modal__section{margin-bottom:var(--space-5)}.caregiver-detail-modal__section:last-child{margin-bottom:0}.caregiver-detail-modal__section h3{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-soft);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.caregiver-detail-modal__row{justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;font-size:var(--fs-sm);display:flex}.caregiver-detail-modal__label{color:var(--color-ink-soft);flex-shrink:0}.caregiver-detail-modal__value{color:var(--color-ink);text-align:right;word-break:break-word}.caregivers-page__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.caregivers-page__actions{padding-top:var(--space-6);padding-right:var(--space-6)}.caregivers-page__body{padding:0 var(--space-6) var(--space-6)}.caregivers-page__loading{color:var(--color-ink-soft);font-size:var(--fs-sm);padding:var(--space-5) 0}.placeholder-page__body{padding:0 var(--space-6) var(--space-6);color:var(--color-ink-soft);font-size:var(--fs-sm)}:root{--color-bg:#f4f7f6;--color-surface:#fff;--color-surface-sunken:#eef3f1;--color-ink:#16302b;--color-ink-soft:#4e635f;--color-ink-faint:#7c8c88;--color-border:#dce6e2;--color-border-strong:#c3d2cc;--color-primary:#2f6f63;--color-primary-dark:#1f4e45;--color-primary-soft:#e4efec;--color-accent:#c97a3d;--color-accent-dark:#a6602a;--color-accent-soft:#f6e9db;--color-danger:#b5484b;--color-danger-soft:#f7e4e3;--color-success:#2f7a4f;--color-success-soft:#e4f1e8;--color-warning:#b8863a;--color-warning-soft:#f6ecda;--color-neutral:#64767a;--color-neutral-soft:#e9edee;--font-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.9375rem;--fs-md:1.0625rem;--fs-lg:1.375rem;--fs-xl:1.75rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--shadow-card:0 1px 2px #1029240f, 0 1px 1px #1029240a;--shadow-popover:0 8px 24px #10292424;--sidebar-width:232px;--topbar-height:64px}.form-field{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.form-field label,.form-field__label{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-ink)}.form-field input[type=text],.form-field input[type=number],.form-field select,.form-field textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);color:var(--color-ink);background:var(--color-surface);font-family:var(--font-ui)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.form-field input[readonly]{background:var(--color-surface-sunken);color:var(--color-ink-soft)}.form-field textarea{resize:vertical;min-height:88px}.form-field__hint{font-size:var(--fs-xs);color:var(--color-ink-faint)}.radio-option{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--color-ink);font-weight:var(--fw-regular);cursor:pointer;display:inline-flex}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-ui);font-size:var(--fs-base);color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased}#root{min-height:100vh}h1,h2,h3,h4,p{margin:0}button{cursor:pointer;font-family:inherit}input,select{font-family:inherit}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
