.absence-row{display:flex;justify-content:space-between;gap:var(--space-2);padding:var(--space-3)}.profile-hero{display:flex;gap:var(--space-3);align-items:center}.profile-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;color:var(--text-inverse);font-weight:var(--weight-bold)}.profile-details,.profile-form,.profile-hero>div{display:grid;gap:var(--space-2)}.profile-form label,.profile-services{display:grid;gap:var(--space-1)}.profile-services{padding:var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md)}.profile-services label{display:flex;align-items:center;min-height:var(--touch-min);gap:var(--space-2)}@media (max-width:620px){.team-week{padding-inline:var(--space-3)}}.chip-list{display:flex;gap:var(--space-2);flex-wrap:wrap}.chip-list span{padding:2px 8px;border-radius:var(--radius-pill);background:var(--accent-soft);font-size:var(--text-xs);font-style:normal}.ctag.mine{background:var(--status-success-soft);color:var(--status-success)}.team-page{display:grid;min-width:0;gap:var(--space-5)}.team-page .team-week>.surface-title{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-size:20px;font-weight:400}.team-page .team-birthdays>h2.sect-t{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.week-nav{display:flex;gap:4px}.week-nav button{min-width:36px;min-height:36px;padding:0 var(--space-3);border:1px solid var(--secondary-border);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--action-primary);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:400;letter-spacing:0;text-transform:none}.week-nav button:hover{background:var(--surface-sunken)}@media (max-width:759px){.week-nav button{min-width:var(--touch-min);min-height:var(--touch-min)}}.table-scroll{max-width:100%;overflow-x:auto}.coverage{width:100%;border-collapse:separate;border-spacing:2px;font-size:var(--text-sm)}.coverage-days{display:none;gap:12px;margin:0;padding:0;list-style:none}.coverage-days>li{display:grid;gap:4px}.coverage-days>li>b{color:var(--text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.coverage-days>li.today>b{color:var(--accent-strong)}.coverage-days ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.coverage-days ul button,.coverage-days ul div{display:flex;width:100%;min-height:var(--touch-min);align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border:0;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-default);font-size:var(--text-sm);text-align:left}.coverage-days ul span{display:inline-flex;align-items:center;gap:6px}.coverage-days ul em{font-style:normal;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.coverage-days .source-absence em,.coverage-days .source-closed em{color:var(--text-subtle)}.coverage-days .source-override button{box-shadow:inset 2px 0 0 var(--accent-strong)}.coverage-days .dot{width:8px;height:8px;border-radius:50%}@media (max-width:759px){.coverage-days{display:grid}.team-week .coverage-grid{display:none}.team-week h2{flex-wrap:wrap;gap:8px}}.coverage th{color:var(--text-muted);font-weight:var(--weight-medium);text-align:left}.coverage th[scope=row]{min-width:96px;color:var(--text-default);white-space:nowrap;vertical-align:middle}.coverage th[scope=row] .dot{display:inline-block;margin-right:6px}.coverage th.today{color:var(--accent-strong)}.coverage td{min-width:88px;padding:0}.coverage td button,.coverage td span{display:block;width:100%;min-height:var(--touch-min);padding:var(--space-1) var(--space-2);border:0;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-default);font-size:var(--text-sm);text-align:left}.coverage td button:hover{background:var(--accent-faint)}.coverage td.source-override button{box-shadow:inset 2px 0 0 var(--accent-strong)}.coverage td.source-absence button,.coverage td.source-absence span,.coverage td.source-closed button,.coverage td.source-closed span{color:var(--text-subtle)}.coverage td.today button,.coverage td.today span{outline:1px solid var(--accent-soft)}.coverage .dot{width:8px;height:8px;border-radius:50%}.team-birthdays ul{display:grid;gap:2px;margin:0;padding:0;color:var(--text-muted);font-size:var(--text-sm);list-style:none}@media (max-width:1100px){.team-week{min-width:0}}.team-page>.team-week{padding:24px;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-elevated);box-shadow:var(--shadow-card)}.members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.member-card{align-content:start;gap:10px}.member-person{display:flex;align-items:center;gap:14px;margin-bottom:14px}.member-person h2{font-family:var(--font-display);font-size:24px;font-weight:500}.member-person p{color:var(--text-muted);font-size:var(--text-sm)}.member-person :is(.rs-badge,.status-badge){margin-left:auto}.member-avatar{display:grid;flex:0 0 auto;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--avatar-tint-background);color:var(--accent-strong);font-family:var(--font-display);font-size:22px}:root[data-theme=dark] .member-avatar{background:linear-gradient(145deg,var(--accent-tint),var(--accent-soft))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .member-avatar{background:linear-gradient(145deg,var(--accent-tint),var(--accent-soft))}}.member-contact{display:flex;flex-wrap:wrap;align-items:center;gap:4px;color:var(--text-muted)}.member-contact>span{margin-right:auto}.member-empty,.member-languages,.member-next{color:var(--text-muted);font-size:var(--text-sm)}.member-card h3{margin-top:14px;font-size:var(--text-base);font-weight:700}.member-hours{display:grid;margin:0}.member-hours>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--table-line)}.member-hours dd{margin:0;font-weight:700}.member-services{display:flex;flex-wrap:wrap;gap:6px}.member-edit{justify-content:center;width:100%;margin-top:18px}.member-me{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.member-me .member-person{margin:0}@media (max-width:900px){.members{grid-template-columns:1fr}}.member-person>div{min-width:0}.member-person h2{overflow-wrap:anywhere}.member-person :is(.rs-badge,.status-badge){flex:0 0 auto}.member-hours dd{text-align:right}@media (max-width:759px){.member-person{gap:12px;flex-wrap:wrap}.member-person h2{font-size:24px}.member-person>div{flex:1 1}.member-card .member-person>div{flex:1 0 max-content;max-width:calc(100% - 56px)}.member-person :is(.rs-badge,.status-badge){max-width:100%}}.member-contact .icon-btn:disabled{opacity:.45;cursor:not-allowed}.schedule-minute-input{display:inline-flex;align-items:center;width:100%;min-width:0;border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface-elevated)}.schedule-minute-input:focus-within{outline:2px solid var(--accent-strong);outline-offset:2px}.interval-cell .schedule-minute-input input,.interval-inputs .schedule-minute-input input,.schedule-minute-input input{flex:1 1;min-width:0;min-height:var(--touch-min);padding:0 6px;border:0;background:transparent;color:var(--text-default);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.interval-cell .schedule-minute-input{width:148px}.schedule-minute-picker{position:relative;flex:0 0 var(--touch-min);width:var(--touch-min);height:var(--touch-min)}.schedule-minute-picker select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.schedule-minute-picker>svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;color:var(--text-muted)}.schedule-minute-input:has(:disabled){opacity:.6}.schedule-minute-picker select:disabled{cursor:not-allowed}.schedule-minute-picker:focus-within{outline:2px solid var(--accent-strong);outline-offset:-2px;border-radius:var(--radius-sm)}.schedule-quick-dismiss{position:fixed;inset:0;z-index:150}.schedule-quick-popover{position:fixed;top:96px;left:50%;transform:translateX(-50%);display:grid;gap:var(--space-3);width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 108px);overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.schedule-quick-popover>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.schedule-quick-popover h2{font-family:var(--font-ui);font-size:var(--text-md)}.schedule-quick-popover .icon-btn{min-width:var(--touch-min);min-height:var(--touch-min)}.schedule-quick-day{display:grid;gap:12px}.quick-day-until fieldset{display:flex;align-items:end;gap:8px;padding:0;border:0}.quick-day-until label{display:grid;flex:1 1;min-width:0;gap:4px}.quick-day-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.quick-day-chips>*{min-height:var(--touch-min)}.schedule-quick-day .danger-link{min-height:var(--touch-min);border:0;background:transparent;color:var(--status-error);text-align:left}@media (max-width:759px){.schedule-table td .interval-cell{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.schedule-table .interval-cell>.icon-btn{grid-column:1/-1;justify-self:end}.interval-cell .schedule-minute-input{width:100%}}@media (max-width:379px){.schedule-table td .interval-cell{grid-template-columns:minmax(0,1fr)}.schedule-table td .interval-cell>span[aria-hidden=true]{justify-self:center}}.schedule-page>.alert{margin:0 var(--page-gutter) 16px}.toolbar-select{min-width:min(100%,280px)}.schedule-summary{color:var(--text-muted);font-size:var(--text-sm)}.schedule-template{display:grid;gap:12px}.schedule-table td{vertical-align:middle}.interval-cell{display:inline-flex;align-items:center;gap:8px}.interval-cell input{min-height:40px;padding:0 10px;border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-default)}.status-switch{display:inline-flex;align-items:center;gap:10px}.schedule-exceptions,.schedule-tools{display:flex;flex-wrap:wrap;gap:16px}.schedule-exceptions{align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid var(--table-line)}.schedule-exceptions p{margin-top:4px;color:var(--text-muted);font-size:var(--text-sm)}.schedule-card{min-width:0;padding:24px;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-elevated);box-shadow:var(--shadow-card)}.schedule-card h2{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3);font-family:var(--font-ui);font-size:var(--text-md);font-weight:700}.schedule-card .emptybox{padding:var(--space-4)}.days-scroll{min-width:0;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:4px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent)}.days-scroll.at-end{-webkit-mask-image:none;mask-image:none}.schedule-main>.toolbar{align-items:flex-end}.schedule-main .toolbar-select{flex:1 1 280px;max-width:520px}.schedule-main .toolbar-select select{width:100%}.status-switch .sw:disabled{opacity:.45;cursor:not-allowed}.days-strip{display:flex;gap:var(--space-2);padding-bottom:var(--space-2)}.day-card{position:relative;display:grid;flex:0 0 118px;gap:2px;padding:var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface);color:var(--text-default);scroll-snap-align:start;text-align:left}.day-card:hover{border-color:var(--accent-soft);background:var(--accent-faint)}.day-card b{color:var(--text-muted);font-size:var(--text-2xs);font-weight:var(--weight-medium);text-transform:uppercase}.day-card em{font-size:var(--text-md);font-style:normal;font-weight:var(--weight-bold)}.day-card span{font-size:var(--text-xs)}.day-card small{color:var(--text-subtle);font-size:var(--text-2xs)}.day-card.today{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent-strong)}.day-card.source-absence,.day-card.source-closed{background:var(--surface-sunken);color:var(--text-muted)}.day-card .dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--accent-strong)}.schedule-legend{margin-top:var(--space-2);color:var(--text-subtle);font-size:var(--text-2xs)}.interval-inputs,.interval-inputs>div{display:grid;gap:var(--space-1)}.interval-inputs label{display:grid;gap:2px;font-size:var(--text-2xs)}.interval-inputs input{min-height:var(--touch-min);padding:0 var(--space-1);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-default);font-size:var(--text-xs)}.interval-inputs>button{min-height:28px;border:0;background:none;color:var(--accent-strong);font-size:var(--text-2xs);text-align:left}.absence-list{display:grid;gap:2px}.absence-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);min-height:48px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--surface-sunken);font-size:var(--text-sm)}.absence-row>.absence-info,.absence-row>span{display:grid;min-width:0}.absence-row small{color:var(--text-muted);font-size:var(--text-2xs)}.absence-past summary{margin-top:var(--space-3);color:var(--text-muted);font-size:var(--text-xs)}.absence-past .absence-row{grid-template-columns:minmax(0,1fr) auto}.absence-past .absence-row>a{grid-column:2;display:flex;align-items:center;min-height:var(--touch-min)}@media (max-width:759px){.absence-past .absence-row{grid-template-columns:minmax(0,1fr);row-gap:0;padding-top:var(--space-2)}.absence-past .absence-row>a{grid-column:1}}.radio-stack{display:grid;gap:var(--space-2)}.radio-stack label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}@media (max-width:759px){.schedule-card{padding:20px}.schedule-main>.toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.schedule-main .toolbar-select{min-width:0}.schedule-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.schedule-table,.schedule-table tbody{display:grid;gap:10px;width:100%}.schedule-template .data-table-wrap{overflow:visible;border:0}.schedule-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:12px 14px;border:1px solid var(--table-line);border-radius:var(--radius-md);background:var(--surface-elevated)}.schedule-table td{padding:0;border:0;white-space:normal}.schedule-table td:first-child{font-weight:600}.schedule-table td:nth-child(4){grid-row:1;grid-column:2;justify-self:end}.schedule-table td:nth-child(2),.schedule-table td:nth-child(3){grid-column:1/-1}.schedule-table tr.off td:nth-child(2),.schedule-table tr.off td:nth-child(3){display:none}.schedule-table .interval-cell{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;width:100%}.schedule-table .interval-cell input{min-width:0;min-height:var(--touch-min)}.schedule-table td .lnk{min-height:var(--touch-min)}.schedule-template .table-footer{flex-direction:column;align-items:stretch;padding:14px 0 0}.schedule-tools{display:grid;gap:8px}.schedule-tools .lnk{min-height:var(--touch-min);padding:0 14px;border:1px solid var(--secondary-border);border-radius:var(--radius-md);background:var(--surface-elevated);text-align:center;text-decoration:none}.schedule-exceptions .btn{width:100%}}.schedule-main{display:grid;gap:16px}.schedule-main>.toolbar{display:flex;flex-wrap:wrap;gap:12px}.schedule-main>.toolbar>.btn{margin-left:auto}.schedule-main .schedule-table .interval-cell input{width:100%;min-height:var(--touch-min)}.schedule-page .absence-row .btn{margin-block:8px}@media (max-width:759px){.schedule-main>.toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto}.schedule-location{grid-column:1/-1}.schedule-main .toolbar-select{max-width:none}.schedule-main .schedule-table .interval-cell input{width:100%}}.schedule-location[data-resolved=true]:has(option:only-child){display:none}.schedule-upcoming-actions,.schedule-upcoming-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.schedule-upcoming-head{justify-content:space-between;margin-bottom:12px}.schedule-upcoming-head h2{margin:0}.schedule-upcoming-actions{position:relative;margin-left:auto}.schedule-options{position:relative}.schedule-options>summary{list-style:none;cursor:pointer}.schedule-options>summary::-webkit-details-marker{display:none}.schedule-options-panel{position:absolute;z-index:2;top:100%;right:0;display:grid;gap:12px;width:260px;max-width:calc(100vw - 32px);padding:12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);box-shadow:var(--shadow-sm)}.schedule-options-panel input{min-width:0;width:100%;min-height:var(--touch-min)}@media (max-width:759px){.schedule-page .title-actions{position:relative}.schedule-options{position:static}.schedule-options-panel{left:0;right:auto}.schedule-upcoming-actions,.schedule-upcoming-head{gap:4px}}.appointments-table td{vertical-align:middle}.appt-time{display:grid;gap:2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.appt-time small{display:block;color:var(--text-muted);font-size:11px;font-weight:400}.appointments-table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.appointments-table td b{font-weight:400}.appt-row.status-cancelled td,.appt-row.status-noshow td{color:var(--text-muted)}.appt-row.status-cancelled b{text-decoration:line-through}@media (max-width:760px){.appointments-table td,.appointments-table th{padding:12px 10px}}.appointments-view .toolbar-end .seg{gap:6px;background:none}.appointments-view .toolbar-end .seg>[aria-pressed]{padding:0 16px;border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-default);box-shadow:none}.appointments-view .toolbar-end .seg>[aria-pressed=true]{border-color:var(--accent-strong);background:var(--accent-strong);color:var(--on-accent)}.appt-date-pick{position:relative;display:inline-flex;align-items:center;min-height:var(--touch-min);padding:0 14px;border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-default);font-size:14px;white-space:nowrap;cursor:pointer}.appt-date-pick:before{content:"▦";margin-right:8px;color:var(--accent-strong)}.appt-date-pick.is-active{border-color:var(--accent-strong);color:var(--accent-strong)}.appt-date-pick:focus-within{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.appt-date-pick input{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer}.appointments-view .toolbar-search input.search-input{padding:10px 12px;border-color:var(--control-border);font-size:14px;line-height:var(--line-base)}.appointments-table td{padding-block:12px}@media (max-width:760px){.appointments-view .toolbar-end{width:100%}.appointments-view .toolbar-end .seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.appointments-view .toolbar-end .seg>[aria-pressed]{padding:0 8px}.appointments-view .toolbar-end>.appt-date-pick,.appointments-view .toolbar-end>select{flex:1 1;min-width:0}.appointments-view .toolbar-search input.search-input{font-size:16px}}.appointments-view .appointments-table{table-layout:fixed}.appointments-table .directory-time-column{width:72px}.appointments-table .directory-client-column{width:100px}.appointments-table .directory-service-column{width:118px}.appointments-table .directory-staff-column{width:110px}.appointments-table .directory-status-column{width:140px}.appointments-table .directory-quote-column{width:128px}.appointments-table .directory-actions-column{width:184px}@media (min-width:1200px){.appointments-table .directory-time-column{width:10.8%}.appointments-table .directory-client-column{width:14.3%}.appointments-table .directory-service-column{width:16.4%}.appointments-table .directory-staff-column{width:11.6%}.appointments-table .directory-status-column{width:14.1%}.appointments-table .directory-quote-column{width:12.7%}.appointments-table .directory-actions-column{width:auto}}.appointments-table .cell-sub,.appointments-table td{overflow-wrap:anywhere;white-space:normal}.appointments-view .data-table-wrap{min-width:0}.appointments-view .pager button{min-width:var(--touch-min);min-height:var(--touch-min)}@media (min-width:761px) and (pointer:fine){.appointments-view .pager{gap:12px}.appointments-view .pager button{position:relative;min-width:32px;min-height:32px;padding:0}.appointments-view .pager button:after{position:absolute;content:"";inset:-6px}}.directory-cancelled{display:inline-flex;align-items:center;gap:8px;min-height:var(--touch-min);color:var(--text-muted);font-size:var(--text-sm)}.directory-cancelled input{width:18px;min-height:18px}.directory-journal{display:grid;gap:8px;margin:12px 0;padding:0;list-style:none}.directory-journal .lnk{min-height:var(--touch-min)}.appointments-view .row-actions [role=alert]{max-width:260px;white-space:normal}@media (max-width:760px){.appointments-view .appointments-table{width:724px;min-width:0;table-layout:auto}.appointments-view .appointments-table :is(th,td){padding-inline:10px}.appointments-view .appointments-table :is(th,td,.cell-sub){white-space:nowrap;overflow-wrap:normal}.appointments-view .appointments-table:has(.directory-quote-column){width:852px}.appointments-view .toolbar-search{flex-basis:100%;max-width:none}.appointments-view .toolbar-end>.directory-location{flex-basis:100%}.appointments-view .table-footer{position:sticky;left:0;width:calc(100vw - 76px);max-width:100%;flex-wrap:wrap}.appointments-view .table-footer .pager{justify-content:center;width:100%}}