.hub-body{background:var(--hub-bg,#d2e9f6);color:var(--c-ink);font-family:var(--ui-font-body);margin:0}.hub,.hub-body{min-height:100vh}.hub{--hub-bg:#d2e9f6;--hub-surface:var(--c-white);--hub-tint:var(--c-surface);--hub-line:#b9d6e8;--hub-ink-soft:var(--c-ink-soft);--hub-ink-subtle:var(--c-subtle);--hub-brand:var(--c-primary);--hub-brand-dark:var(--c-primary-dark);--hub-navy:var(--c-dark);--hub-ok:#1c7f58;--hub-ok-bg:#ddf0e7;--hub-error:#b8443a;--hub-error-bg:#f8e3e0;--hub-radius:var(--ui-radius);--hub-shadow:0 1px 2px rgba(13,58,92,.06),0 12px 32px -18px rgba(13,58,92,.35);align-items:center;display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(1.5rem,6vh,4rem) clamp(1rem,5vw,3rem)}.hub,.hub *,.hub :after,.hub :before{box-sizing:border-box}.hub :focus-visible{border-radius:6px;outline:2px solid var(--hub-brand);outline-offset:2px}.hub-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow);max-width:46rem;padding:clamp(1.5rem,5vw,2.5rem);width:100%}.hub-card--narrow{max-width:26rem}.hub-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem 1rem;justify-content:space-between}.hub-eyebrow{color:var(--hub-brand-dark);font-size:.72rem;font-weight:600;letter-spacing:.14em;margin:0 0 .6rem;text-transform:uppercase}.hub-eyebrow,.hub-title{font-family:var(--ui-font-display)}.hub-title{color:var(--hub-navy);font-size:clamp(1.4rem,5vw,1.9rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .75rem;text-wrap:balance}.hub-lede{color:var(--hub-ink-soft);line-height:1.6;margin:0}.hub-meta{font-size:.88rem;margin:1.25rem 0 0}.hub-link{color:var(--hub-brand-dark);text-decoration:underline;text-underline-offset:.18em}.hub-link:focus-visible,.hub-link:hover{color:var(--hub-navy)}.hub-foot{font-size:.88rem;margin:1.5rem 0 0}.hub-notice{border-radius:10px;font-size:.92rem;margin:0 0 1.25rem;padding:.8rem 1rem}.hub-notice--ok{background:var(--hub-ok-bg);color:var(--hub-ok)}.hub-notice--error{background:var(--hub-error-bg);color:var(--hub-error)}.hub-empty{background:var(--hub-tint);border-radius:10px;color:var(--hub-ink-subtle);font-size:.92rem;margin:1.5rem 0 0;padding:1rem 1.15rem}.hub-form{margin-top:.5rem}.hub-field{margin:0 0 1rem}.hub-field__label{color:var(--hub-navy);display:block;font-family:var(--ui-font-display);font-size:.88rem;font-weight:600;margin-bottom:.35rem}.hub-field__input{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:10px;font:inherit;font-size:max(1rem,16px);min-height:44px;padding:.55rem .8rem;width:100%}.hub-field__input:focus-visible{border-color:var(--hub-brand)}.hub-check{font-size:.92rem;margin:0 0 1.25rem}.hub-check label{align-items:center;cursor:pointer;display:inline-flex;gap:.5rem}.hub-check input{accent-color:var(--hub-brand-dark);height:1.1rem;width:1.1rem}.hub-form__submit{margin:0}.hub-actions{margin:1.5rem 0 0}.hub-btn{align-items:center;background:var(--hub-brand);border:0;border-radius:10px;color:#06312c;cursor:pointer;display:inline-flex;font-family:var(--ui-font-display);font-size:.95rem;font-weight:600;justify-content:center;min-height:44px;padding:.55rem 1.2rem;text-decoration:none}.hub-btn:focus-visible,.hub-btn:hover{background:var(--hub-brand-dark);color:#06312c}.hub-btn--ghost{background:transparent;border:1px solid var(--hub-line);color:var(--hub-navy)}.hub-btn--ghost:focus-visible,.hub-btn--ghost:hover{background:var(--hub-tint);color:var(--hub-navy)}.hub-btn--small{font-size:.85rem;min-height:36px;padding:.35rem .85rem}.hub-form .hub-btn{width:100%}.hub-apps{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));list-style:none;margin:1.5rem 0 0;padding:0}.hub-app__link{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:12px;color:inherit;display:flex;flex-direction:column;gap:.3rem;height:100%;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,background-color .15s}.hub-app__link:focus-visible,.hub-app__link:hover{background:var(--hub-tint);border-color:var(--hub-brand)}.hub-app__label{color:var(--hub-navy);font-family:var(--ui-font-display);font-weight:700}.hub-app__description{color:var(--hub-ink-subtle);font-size:.88rem;line-height:1.45}.hub--wide{align-items:stretch;padding:clamp(1rem,3vh,1.75rem) clamp(.75rem,2.5vw,1.75rem)}.hub--wide .hub-foot{align-self:center}.hub-section{margin:0 auto;max-width:var(--ui-maxw-wide,100%);width:100%}.hub-bar{align-items:center;font-size:.88rem;gap:.5rem 1.5rem;justify-content:space-between;margin-bottom:1rem}.hub-bar,.hub-crumbs ol{display:flex;flex-wrap:wrap}.hub-crumbs ol{gap:.25rem;list-style:none;margin:0;padding:0}.hub-crumbs ol li+li:before{color:var(--hub-ink-subtle);content:"›";margin-right:.25rem}.hub-crumbs ol [aria-current=page]{color:var(--hub-navy);font-weight:600}.hub-account{color:var(--hub-ink-soft);gap:.75rem;margin:0}.hub-account,.hub-pager{align-items:center;display:flex}.hub-pager{flex-wrap:wrap;font-size:.92rem;gap:.5rem;justify-content:center;margin:1.75rem 0 0}.hub-pager__pages{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}.hub-pager__page,.hub-pager__step{align-items:center;border:1px solid var(--hub-line);border-radius:10px;color:var(--hub-navy);display:inline-flex;justify-content:center;min-height:40px;min-width:40px;padding:0 .75rem;text-decoration:none}.hub-pager__page:focus-visible,.hub-pager__page:hover,.hub-pager__step:focus-visible,.hub-pager__step:hover{background:var(--hub-tint)}.hub-pager__page.is-current{background:var(--hub-brand);border-color:var(--hub-brand);color:#06312c;font-weight:600}.hub-pager__step.is-disabled{opacity:.4;pointer-events:none}.hub-pager__gap{align-self:center;color:var(--hub-ink-subtle);padding:0 .25rem}@media(max-width:560px){.hub-pager__step{flex:1 1 40%}.hub-pager__pages{justify-content:center;order:3;width:100%}}.hub-media__preview{margin:.35rem 0}.hub-media__preview img{border:1px solid var(--hub-line);border-radius:10px;display:block;height:auto;max-width:min(100%,320px)}.hub-media__preview a{color:var(--hub-navy);word-break:break-all}.hub-media__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.35rem 0}.attendance-body{background:var(--attendance-bg);color:var(--c-ink);font-family:var(--ui-font-body);margin:0;min-height:100vh}.attendance{--attendance-bg:#d2e9f6;--attendance-surface:var(--c-white);--attendance-tint:var(--c-surface);--attendance-line:#b9d6e8;--attendance-ink-soft:var(--c-ink-soft);--attendance-ink-subtle:var(--c-subtle);--attendance-brand:var(--c-primary);--attendance-brand-dark:var(--c-primary-dark);--attendance-navy:var(--c-dark);--attendance-yes:#1c7f58;--attendance-yes-bg:#ddf0e7;--attendance-no:#b8443a;--attendance-no-bg:#f8e3e0;--attendance-pending:#a85f10;--attendance-pending-bg:#faebd5;--attendance-radius:var(--ui-radius);--attendance-shadow:0 1px 2px rgba(13,58,92,.06),0 12px 32px -18px rgba(13,58,92,.35);align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:clamp(1rem,5vw,3rem)}.attendance,.attendance *,.attendance :after,.attendance :before{box-sizing:border-box}.attendance :focus-visible{border-radius:6px;outline:2px solid var(--attendance-brand);outline-offset:2px}.attendance:has(.attendance-card--large){justify-content:flex-start;padding-top:clamp(1.5rem,6vh,4rem)}.attendance-card{background:var(--attendance-surface);border:1px solid var(--attendance-line);border-radius:var(--attendance-radius);box-shadow:var(--attendance-shadow);max-width:32rem;padding:clamp(1.5rem,5vw,2.5rem);width:100%}.attendance-card--message{text-align:center}.attendance-card--large{max-width:46rem}.attendance-eyebrow{color:var(--attendance-brand-dark);font-family:var(--ui-font-display);font-size:.72rem;font-weight:600;letter-spacing:.14em;margin:0 0 .6rem;text-transform:uppercase}.attendance-title{color:var(--attendance-navy);font-family:var(--ui-font-display);font-size:clamp(1.4rem,5vw,1.9rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .75rem;text-wrap:balance}.attendance-lede{color:var(--attendance-ink-soft);font-size:1rem;line-height:1.6;margin:0}.attendance-meta{color:var(--attendance-ink-subtle);font-size:.85rem;margin:1.25rem 0 0}.attendance-link{color:var(--attendance-brand-dark);text-decoration:underline;text-underline-offset:.18em}.attendance-link:focus-visible,.attendance-link:hover{color:var(--attendance-navy)}.attendance-note{color:var(--attendance-ink-subtle);font-size:.85rem}.attendance-note--footer{border-top:1px solid var(--attendance-line);display:block;margin-top:1.25rem;padding-top:1rem}.attendance-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.25rem}.attendance-btn{align-items:center;background:var(--attendance-brand);border-radius:10px;color:#06312c;display:inline-flex;font-family:var(--ui-font-display);font-size:.92rem;font-weight:600;min-height:44px;padding:.55rem 1.1rem;text-decoration:none}.attendance-btn:focus-visible,.attendance-btn:hover{background:var(--attendance-brand-dark);color:#06312c}.attendance-empty{background:var(--attendance-pending-bg);border-radius:10px;color:var(--attendance-pending);font-size:.92rem;margin-top:1.5rem;padding:1rem 1.15rem}.attendance-tag{border-radius:5px;font-family:var(--ui-font-display);font-size:.68rem;font-weight:600;letter-spacing:.05em;padding:.18rem .45rem;text-transform:uppercase;white-space:nowrap}.attendance-tag--ok{background:var(--attendance-yes-bg);color:var(--attendance-yes)}.attendance-tag--pending{background:var(--attendance-pending-bg);color:var(--attendance-pending)}.attendance-tag--no{background:var(--attendance-no-bg);color:var(--attendance-no)}.attendance-tag--muted{background:var(--attendance-tint);color:var(--attendance-ink-subtle)}.attendance-list{display:flex;flex-direction:column;list-style:none;margin:1.5rem 0 0;padding:0}.attendance-list__item{align-items:center;border-bottom:1px solid var(--attendance-line);display:flex;flex-wrap:wrap;gap:.5rem .9rem;padding:.7rem 0}.attendance-list__item:last-child{border-bottom:0}.attendance-list__item.is-inactive .attendance-list__name{color:var(--attendance-ink-subtle)}.attendance-list__name{flex:1 1 9rem;font-family:var(--ui-font-display);font-weight:600;min-width:0;overflow-wrap:anywhere}.attendance-list__status{display:flex;flex-wrap:wrap;gap:.35rem}.attendance-list__link{color:var(--attendance-brand-dark);font-size:.88rem;text-decoration:underline;text-underline-offset:.18em;white-space:nowrap}.attendance-notice{border-radius:10px;font-size:.92rem;margin-top:1.25rem;padding:.8rem 1rem}.attendance-notice--ok{background:var(--attendance-yes-bg);color:var(--attendance-yes)}.attendance-notice--error{background:var(--attendance-no-bg);color:var(--attendance-no)}.attendance-handoff{background:var(--attendance-tint);border:1px solid var(--attendance-brand);border-radius:var(--attendance-radius);margin-top:1rem;padding:1rem 1.15rem}.attendance-handoff__label{color:var(--attendance-brand-dark);font-family:var(--ui-font-display);font-size:.72rem;font-weight:600;letter-spacing:.12em;margin:0 0 .5rem;text-transform:uppercase}.attendance-handoff__value{background:var(--attendance-surface);border:1px solid var(--attendance-line);border-radius:8px;color:var(--c-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;padding:.6rem .75rem;width:100%}.attendance-handoff__hint{color:var(--attendance-ink-subtle);font-size:.82rem;margin:.6rem 0 0}.attendance-form{display:inline;margin:0}.attendance-mini{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--attendance-surface);border:1px solid var(--attendance-line);border-radius:7px;color:var(--attendance-brand-dark);cursor:pointer;font-family:var(--ui-font-display);font-size:.8rem;font-weight:600;min-height:32px;padding:.25rem .65rem}.attendance-mini:focus-visible,.attendance-mini:hover{background:var(--attendance-tint);border-color:var(--attendance-brand)}.attendance-list__actions{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem .75rem}.attendance-days{margin-top:.9rem}.attendance-days,.attendance-slots{display:flex;flex-wrap:wrap;gap:.5rem}.attendance-slots{margin-top:1.1rem}.attendance-slot{background:var(--attendance-surface);border:1px solid var(--attendance-line);border-radius:10px;color:var(--c-ink);display:flex;flex-direction:column;gap:.1rem;padding:.5rem .8rem;text-decoration:none}.attendance-slot__time{font-family:var(--ui-font-display);font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:600}.attendance-slot__groups{color:var(--attendance-ink-subtle);font-size:.76rem}.attendance-slot.is-current{background:var(--attendance-tint);border-color:var(--attendance-brand)}.attendance-session{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem .9rem;margin-top:1.25rem}.attendance-session__time{color:var(--attendance-navy);font-family:var(--ui-font-display);font-size:1.15rem;font-variant-numeric:tabular-nums;font-weight:700}.attendance-session__groups{color:var(--attendance-ink-subtle);font-size:.9rem}.attendance-counts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.attendance-count{background:var(--attendance-tint);border-radius:9px;color:var(--attendance-ink-subtle);font-size:.84rem;padding:.4rem .75rem}.attendance-count b{color:var(--c-ink);font-family:var(--ui-font-display);font-size:1.05rem;font-variant-numeric:tabular-nums}.attendance-count--yes{background:var(--attendance-yes-bg)}.attendance-count--yes b{color:var(--attendance-yes)}.attendance-count--no{background:var(--attendance-no-bg)}.attendance-count--no b{color:var(--attendance-no)}.attendance-roll{margin-top:1.25rem}.attendance-roll__list{list-style:none;margin:0;padding:0}.attendance-roll__row{align-items:center;border-bottom:1px solid var(--attendance-line);display:flex;flex-wrap:wrap;gap:.6rem .9rem;justify-content:space-between;padding:.7rem 0}.attendance-roll__who{display:flex;flex:1 1 9rem;flex-direction:column;gap:.2rem;min-width:0}.attendance-roll__name{font-family:var(--ui-font-display);font-size:1rem;font-weight:600;overflow-wrap:anywhere}.attendance-roll__submit{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.25rem}.attendance-choice{display:grid;gap:.4rem;grid-template-columns:1fr 1fr;width:clamp(12rem,46vw,15rem)}.attendance-choice__option{align-items:center;background:var(--attendance-surface);border:1.5px solid var(--attendance-line);border-radius:10px;color:var(--attendance-ink-subtle);cursor:pointer;display:flex;font-family:var(--ui-font-display);font-size:.86rem;font-weight:600;justify-content:center;min-height:46px;padding:.4rem .5rem}.attendance-choice__option input{opacity:0;pointer-events:none;position:absolute}.attendance-choice__option:hover{border-color:var(--attendance-ink-subtle)}.attendance-choice__option--yes:has(input:checked){background:var(--attendance-yes-bg);border-color:var(--attendance-yes);color:var(--attendance-yes)}.attendance-choice__option--no:has(input:checked){background:var(--attendance-no-bg);border-color:var(--attendance-no);color:var(--attendance-no)}.attendance-choice__option:has(input:focus-visible){outline:2px solid var(--attendance-brand);outline-offset:2px}.attendance-week{display:grid;gap:1rem;max-width:62rem;width:100%}@media(min-width:900px){.attendance-week{align-items:start;grid-template-columns:minmax(0,1fr) 17rem}}.attendance-week__main{max-width:none}.attendance-week__side{display:flex;flex-direction:column;gap:1rem}.attendance-week__side .attendance-card{max-width:none;padding:1.25rem}.attendance-week__private{margin:0;padding:0 .25rem}.attendance:has(.attendance-week){justify-content:flex-start;padding-top:clamp(1.5rem,6vh,4rem)}.attendance-weeknav{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-top:1.25rem}.attendance-weeknav__label{color:var(--attendance-navy);font-family:var(--ui-font-display);font-weight:600;text-align:center}@media(max-width:520px){.attendance-weeknav__label{flex-basis:100%;order:-1}}.attendance-weeknav__back{font-size:.88rem;margin:.6rem 0 0}.attendance-progress{margin-top:1.25rem}.attendance-progress__text{color:var(--attendance-ink-subtle);font-size:.88rem;margin:0 0 .4rem}.attendance-progress__text b{color:var(--c-ink);font-family:var(--ui-font-display);font-size:1.05rem}.attendance-progress__bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--attendance-tint);border:0;border-radius:99px;display:block;height:8px;overflow:hidden;width:100%}.attendance-progress__bar::-webkit-progress-bar{background:var(--attendance-tint)}.attendance-progress__bar::-webkit-progress-value{background:var(--attendance-brand);border-radius:99px}.attendance-progress__bar::-moz-progress-bar{background:var(--attendance-brand);border-radius:99px}.attendance-answers{margin-top:1.25rem}.attendance-answers__list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.attendance-answer{align-items:center;background:var(--attendance-surface);border:1px solid var(--attendance-line);border-left-width:4px;border-radius:12px;display:grid;gap:.5rem 1rem;grid-template-columns:minmax(0,1fr) auto;padding:1rem 1.1rem;scroll-margin-top:1.5rem}.attendance-answer--pending{border-left-color:var(--attendance-pending)}.attendance-answer--yes{border-left-color:var(--attendance-yes)}.attendance-answer--no{border-left-color:var(--attendance-no)}.attendance-answer.is-today{background:var(--attendance-tint)}.attendance-answer.is-locked{opacity:.85}.attendance-answer:target{box-shadow:0 0 0 2px var(--attendance-brand)}@media(max-width:520px){.attendance-answer{grid-template-columns:minmax(0,1fr)}.attendance-answer .attendance-choice{width:100%}}.attendance-answer__when{display:flex;flex-direction:column;gap:.1rem;min-width:0}.attendance-answer__day{color:var(--attendance-navy);font-family:var(--ui-font-display);font-weight:600}.attendance-answer__day:first-letter{text-transform:uppercase}.attendance-answer__time{font-family:var(--ui-font-display);font-size:1.1rem;font-variant-numeric:tabular-nums;font-weight:700}.attendance-answer__groups{color:var(--attendance-ink-subtle);font-size:.8rem}.attendance-answer__saved,.attendance-answer__status{margin:0}.attendance-answer__saved{color:var(--attendance-ink-subtle);font-size:.8rem;grid-column:1/-1}.attendance-answer__deadline{color:var(--attendance-ink-subtle);display:block;margin-top:.15rem}.attendance-answer--yes .attendance-answer__saved{color:var(--attendance-yes)}.attendance-answer--no .attendance-answer__saved{color:var(--attendance-no)}button.attendance-choice__option{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--ui-font-display);line-height:1.2;min-height:50px}button.attendance-choice__option.attendance-choice__option--yes.is-selected{background:var(--attendance-yes-bg);border-color:var(--attendance-yes);color:var(--attendance-yes)}button.attendance-choice__option.attendance-choice__option--no.is-selected{background:var(--attendance-no-bg);border-color:var(--attendance-no);color:var(--attendance-no)}.attendance-stat__title{color:var(--attendance-navy);font-family:var(--ui-font-display);font-size:.95rem;font-weight:700;margin:0 0 .5rem}.attendance-stat__figure{color:var(--attendance-ink-soft);font-size:.88rem;margin:0 0 .5rem}.attendance-stat__figure b{color:var(--attendance-brand-dark);display:block;font-family:var(--ui-font-display);font-size:2rem;line-height:1.1}.attendance-stat .attendance-note{margin:0}.attendance-btn--ghost{background:var(--attendance-surface);border:1px solid var(--attendance-brand);color:var(--attendance-brand-dark)}.attendance-btn--ghost:focus-visible,.attendance-btn--ghost:hover{background:var(--attendance-tint);color:var(--attendance-navy)}.attendance-report.attendance-card--large{max-width:72rem}.attendance-report__nav{justify-content:flex-start}.attendance-report__zero{color:var(--attendance-pending);margin:1rem 0 0}.attendance-kpis{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));margin-top:1.25rem}.attendance-kpi{background:var(--attendance-tint);border-radius:10px;padding:.8rem .9rem}.attendance-kpi b{color:var(--attendance-navy);display:block;font-family:var(--ui-font-display);font-size:1.6rem;font-variant-numeric:tabular-nums;line-height:1.1}.attendance-kpi span{color:var(--attendance-ink-subtle);font-size:.8rem}.attendance-kpi--warn{background:var(--attendance-pending-bg)}.attendance-kpi--warn b{color:var(--attendance-pending)}.attendance-grid{--attendance-zebra:#f4f9fc;--attendance-hover:#e6f2f9;--attendance-name-width:9rem;--attendance-total-width:3.5rem;--attendance-hours-width:3.75rem;--attendance-session-min:3rem;border:1px solid var(--attendance-line);border-radius:10px;margin-top:1.25rem;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.attendance-grid__table{border-collapse:separate;border-spacing:0;font-size:.84rem;font-variant-numeric:tabular-nums;min-width:100%;width:-moz-max-content;width:max-content}.attendance-grid td,.attendance-grid th{background:var(--attendance-surface);border-bottom:1px solid var(--attendance-line);padding:.45rem .35rem;text-align:center;white-space:nowrap}.attendance-grid tbody tr:nth-child(2n)>*{background:var(--attendance-zebra)}.attendance-grid tbody tr:hover>*{background:var(--attendance-hover)}.attendance-grid tbody tr:last-child>*{border-bottom:0}.attendance-grid thead th{background:var(--attendance-tint);color:var(--attendance-ink-subtle);font-family:var(--ui-font-display);font-size:.72rem;font-weight:600;vertical-align:bottom}.attendance-grid tfoot td,.attendance-grid tfoot th{background:var(--attendance-tint);border-bottom:0;border-top:2px solid var(--attendance-line);font-weight:600}.attendance-grid__name{box-shadow:1px 0 0 var(--attendance-line),6px 0 8px -6px rgba(13,58,92,.25);color:var(--c-ink);font-family:var(--ui-font-display);font-weight:600;left:0;max-width:var(--attendance-name-width);min-width:var(--attendance-name-width);overflow:hidden;padding-left:.75rem!important;position:sticky;text-align:left!important;text-overflow:ellipsis;width:var(--attendance-name-width);z-index:2}tfoot .attendance-grid__name,thead .attendance-grid__name{background:var(--attendance-tint)}.attendance-grid__session{line-height:1.25;min-width:var(--attendance-session-min)}.attendance-grid__session a{color:inherit;display:flex;flex-direction:column;text-decoration:none}.attendance-grid__session a:focus-visible,.attendance-grid__session a:hover{color:var(--attendance-brand-dark)}.attendance-grid__session.is-unpointed{opacity:.55}.attendance-grid__day:first-letter{text-transform:uppercase}.attendance-grid__hour{font-weight:400}.attendance-grid__cell{font-weight:700;min-width:var(--attendance-session-min)}.attendance-grid__cell--yes{color:var(--attendance-yes)}.attendance-grid__cell--no{color:var(--attendance-no)}.attendance-grid__cell--pending{color:var(--attendance-ink-subtle);font-weight:400}.attendance-grid__cell.is-broken{box-shadow:inset 0 -2px 0 rgba(184,68,58,.55)}tfoot .attendance-grid__cell.is-below{background:var(--attendance-pending-bg);color:var(--attendance-pending)}.attendance-grid th.is-below{box-shadow:inset 0 3px 0 var(--attendance-pending)}.attendance-grid__total{border-left:1px solid var(--attendance-line);max-width:var(--attendance-total-width);min-width:var(--attendance-total-width);width:var(--attendance-total-width)}.attendance-grid__total--hours,.attendance-grid__total--present{position:sticky;z-index:1}.attendance-grid__total--hours{max-width:var(--attendance-hours-width);min-width:var(--attendance-hours-width);right:0;width:var(--attendance-hours-width)}.attendance-grid__total--present{box-shadow:-6px 0 8px -6px rgba(13,58,92,.25);right:var(--attendance-hours-width)}.attendance-grid tr.is-idle td,.attendance-grid tr.is-idle th,.attendance-grid__hint,.attendance-grid__total--kept{color:var(--attendance-ink-subtle)}.attendance-grid__hint{display:none;font-size:.78rem;margin:1.25rem 0 0}@media(max-width:720px){.attendance-grid{border-inline:0;border-radius:0;margin-top:.4rem;margin-inline:calc(clamp(1.5rem,5vw,2.5rem)*-1);--attendance-name-width:6.5rem;--attendance-total-width:2.75rem;--attendance-session-min:2.5rem}.attendance-grid__table{font-size:.78rem}.attendance-grid__name{padding-left:.5rem!important}.attendance-grid__total--hours,.attendance-grid__total--kept{display:none}.attendance-grid__total--present{right:-1px}.attendance-grid__hint{display:block}}.attendance-legend{color:var(--attendance-ink-subtle);display:flex;flex-wrap:wrap;font-size:.8rem;gap:.4rem 1rem;margin:.8rem 0 0}.attendance-legend b{display:inline-block;min-width:1.1rem;text-align:center}.attendance-legend__below{background:var(--attendance-pending-bg);border-radius:3px;height:.8rem;vertical-align:middle;width:1rem}@media print{.attendance-body{background:#fff}.attendance{min-height:0;padding:0}.attendance-report{border:0;box-shadow:none;padding:0}.attendance-report .attendance-meta,.attendance-report .attendance-note:not(.attendance-report__zero),.attendance-report .attendance-report__nav{display:none}.attendance-grid{border:0;overflow:visible}.attendance-grid__table{font-size:8pt}.attendance-grid__name,.attendance-grid__total--hours,.attendance-grid__total--present{box-shadow:none;position:static}.attendance-grid__total--hours,.attendance-grid__total--kept{display:table-cell}.attendance-grid__hint{display:none}}.attendance-back{font-size:.88rem;margin:0 0 .75rem}.attendance-board{margin-top:1.5rem}.attendance-board__day{align-items:center;color:var(--attendance-navy);display:flex;font-family:var(--ui-font-display);font-size:1rem;font-weight:700;gap:.5rem;margin:0 0 .4rem}.attendance-board__day:first-letter{text-transform:uppercase}.attendance-board__list{border:1px solid var(--attendance-line);border-radius:10px;list-style:none;margin:0;overflow:hidden;padding:0}.attendance-board__row{border-bottom:1px solid var(--attendance-line)}.attendance-board__row:last-child{border-bottom:0}.attendance-board__row.is-short{box-shadow:inset 3px 0 0 var(--attendance-no)}.attendance-board__link{align-items:center;color:inherit;display:grid;gap:.35rem .9rem;grid-template-areas:"when   figure" "status status";grid-template-columns:minmax(0,1fr) auto;padding:.7rem .9rem;text-decoration:none}.attendance-board__link:focus-visible,.attendance-board__link:hover{background:var(--attendance-tint)}.attendance-board__when{display:flex;flex-wrap:wrap;gap:.15rem .6rem;grid-area:when;min-width:0}.attendance-board__time{font-family:var(--ui-font-display);font-variant-numeric:tabular-nums;font-weight:600}.attendance-board__groups{color:var(--attendance-ink-subtle);font-size:.88rem;overflow-wrap:anywhere}.attendance-board__figure{color:var(--attendance-ink-subtle);font-size:.82rem;grid-area:figure;text-align:right;white-space:nowrap}.attendance-board__figure b{color:var(--attendance-navy);font-family:var(--ui-font-display);font-size:1.15rem;font-variant-numeric:tabular-nums}.attendance-board__status{display:flex;flex-wrap:wrap;gap:.35rem;grid-area:status}@media(min-width:720px){.attendance-board__link{grid-template-areas:"when figure status";grid-template-columns:minmax(0,1fr) auto 11rem}.attendance-board__status{justify-content:flex-end}}.stage-form,.stage-list,.stage-overview{max-width:52rem}.stage-list__heading{color:var(--hub-ink-subtle);font-family:var(--ui-font-display);font-size:.8rem;font-weight:700;letter-spacing:.12em;margin:1.75rem 0 .75rem;text-transform:uppercase}.stage-list__items{display:grid;gap:.5rem;list-style:none;margin:0;padding:0}.stage-list__items--past .stage-item__link{padding-block:.6rem}.stage-item__link{border:1px solid var(--hub-line);border-radius:12px;color:inherit;display:grid;gap:.2rem;padding:.85rem 1rem;text-decoration:none}.stage-item__link:focus-visible,.stage-item__link:hover{background:var(--hub-tint);border-color:var(--hub-brand)}.stage-item__title{color:var(--hub-navy);font-weight:700}.stage-item__dates{color:var(--hub-ink-soft);font-size:.9rem}.stage-item__meta{color:var(--hub-ink-subtle);display:flex;flex-wrap:wrap;font-size:.82rem;gap:.25rem 1rem}.stage-item__state{color:var(--hub-navy);font-weight:700}.stage-item__state--draft{color:#9a5b00}.stage-item__state--publish{color:var(--hub-ok)}.stage-form__group{border:0;border-top:1px solid var(--hub-line);margin:1.5rem 0 0;padding:1.25rem 0 0}.stage-form__group legend{color:var(--hub-navy);font-family:var(--ui-font-display);font-weight:700;padding:0 0 .5rem}.stage-form__pair{display:grid;gap:0 1rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.stage-form__hint{color:var(--hub-ink-subtle);display:block;font-size:.82rem;margin:.3rem 0 0}.stage-form__cited{color:var(--hub-ink-subtle);font-size:.78rem;margin-inline-start:.35rem}.stage-form__error{color:var(--hub-error);display:block;font-size:.85rem;font-weight:600;margin-top:.3rem}.stage-form [aria-invalid=true]{border-color:var(--hub-error)}.stage-form__checks{display:grid;gap:.25rem 1rem;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));list-style:none;margin:.75rem 0 0;padding:0}.stage-overview__facts{display:grid;gap:.4rem 1.25rem;grid-template-columns:max-content 1fr;margin:1.25rem 0}.stage-overview__facts dt{color:var(--hub-navy);font-weight:700}.stage-overview__facts dd{color:var(--hub-ink-soft);margin:0}.stage-board{--stage-line:#e3eaf1;--stage-muted:#5f6f80;display:grid;gap:1rem}.stage-board__head{max-width:none}.stage-board__head .hub-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.stage-board__weeks .ui-tabs-nav{margin-block-end:1rem}.stage-week+.stage-week{margin-block-start:2.5rem}.stage-week__title{color:var(--hub-navy);font-family:var(--ui-font-display);font-size:1.1rem;margin:0 0 .75rem}.stage-week__layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem}.stage-week__scroll{background:var(--hub-surface);border:1px solid var(--stage-line);border-radius:16px;flex:999 1 44rem;min-width:0;overflow-x:auto}.stage-grid{display:grid;grid-template-columns:3rem repeat(7,minmax(7.5rem,1fr));grid-template-rows:auto calc(var(--grid-height)*1px);min-width:58rem}.stage-grid__corner,.stage-grid__head{background:#f5f8fb;border-bottom:1px solid var(--stage-line)}.stage-grid__head{border-left:1px solid var(--stage-line);padding:.5rem .25rem;text-align:center}.stage-grid__head span{color:var(--stage-muted);display:block;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.stage-grid__head b{color:var(--hub-navy);display:block;font-family:var(--ui-font-display);font-size:1.15rem}.stage-grid__head.is-off{opacity:.45}.stage-grid__hours{position:relative}.stage-grid__hours span{color:var(--stage-muted);font-size:.68rem;font-weight:600;position:absolute;right:.4rem;top:calc(var(--top)*1px);transform:translateY(-50%)}.stage-grid__col{background-image:linear-gradient(var(--stage-line) 1px,transparent 1px);background-size:100% 60px;border-left:1px solid var(--stage-line);position:relative}.stage-grid__col.is-off{background-color:#f7f9fb;background-image:repeating-linear-gradient(135deg,#f1f4f7 0 2px,transparent 2px 8px)}.stage-card{background:color-mix(in srgb,var(--c) 11%,#fff);border:1px solid color-mix(in srgb,var(--c) 30%,#fff);border-radius:7px;box-sizing:border-box;color:var(--hub-navy);font-size:.68rem;height:max(var(--height)*1px - 2px,1.1rem);left:calc(var(--left) + 2px);line-height:1.25;overflow:hidden;padding:2px 5px 2px 9px;position:absolute;top:calc(var(--top)*1px);transition:opacity .12s;width:calc(var(--width) - 4px)}.stage-card.is-common{border-style:dashed}.stage-card.is-dim{opacity:.15}.stage-card__stripe{inset:0 auto 0 0;position:absolute;width:4px}.stage-card__time{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.stage-card__type{background:#fff;border:1px solid #d5dee8;border-radius:999px;display:inline-block;font-size:.6rem;font-weight:700;margin-left:.25rem;padding:0 .35rem}.stage-card__badges{display:flex;margin-top:1px}.stage-card.is-compact{align-items:flex-start;display:flex;gap:.25rem}.stage-card.is-compact .stage-card__badges{flex-wrap:nowrap;margin:0 0 0 auto;overflow:hidden}.stage-card.is-compact .ui-badge{font-size:.55rem}.stage-card.is-compact .stage-card__audience{display:none}.stage-card__audience{color:var(--hub-ink-soft);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-week__side{display:grid;flex:1 1 18rem;gap:.75rem;max-width:22rem}.stage-box{background:var(--hub-surface);border:1px solid var(--stage-line);border-radius:14px;padding:1rem}.stage-box__title{color:var(--stage-muted);font-size:.7rem;font-weight:700;letter-spacing:.14em;margin:0 0 .5rem;text-transform:uppercase}.stage-box__empty,.stage-box__note{color:var(--stage-muted);font-size:.82rem;margin:.5rem 0 0}.stage-box__ok{color:var(--hub-ok);font-size:.85rem;margin:0}.stage-box__warnings{color:#9a4a00;font-size:.85rem;margin:0;padding-left:1rem}.stage-summary{display:grid;gap:2px;list-style:none;margin:0;padding:0}.stage-summary__item{align-items:center;background:transparent;border:0;border-radius:10px;color:inherit;display:flex;font:inherit;gap:.6rem;min-height:44px;padding:.35rem .5rem;text-align:left;width:100%}.stage-summary__item:not(:disabled){cursor:pointer}.stage-summary__item:not(:disabled):hover{background:#f5f8fb}.stage-summary__item[aria-pressed=true]{background:#eaf2fa;box-shadow:inset 0 0 0 1px #b9d3ea}.stage-summary__item.is-empty .stage-summary__name small{color:#9a4a00}.stage-summary__dot{background:var(--c);border-radius:4px;flex:none;height:12px;width:12px}.stage-summary__badge{flex:none;justify-content:center;min-width:2.6em}.stage-summary__name{color:var(--hub-navy);flex:1;font-size:.88rem;font-weight:700}.stage-summary__name small{color:var(--stage-muted);display:block;font-size:.75rem;font-weight:500}.stage-summary__hours{color:var(--hub-navy);font-family:var(--ui-font-display);font-variant-numeric:tabular-nums;font-weight:800}.stage-week__tools{align-items:center;color:var(--stage-muted);display:flex;flex-wrap:wrap;font-size:.85rem;gap:.5rem 1rem;justify-content:space-between;margin-block-end:.75rem}.stage-week__hint{margin:0}.stage-week__copy{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.stage-week__copy .hub-field__input{padding-block:.35rem;width:auto}.stage-grid__head{position:relative}.stage-grid__add{background:#fff;border:1px dashed #9fb2c6;border-radius:50%;color:var(--hub-navy);cursor:pointer;font:700 1rem/1 var(--ui-font-body);height:1.75rem;position:absolute;right:.35rem;top:.35rem;width:1.75rem}.stage-grid__add:focus-visible,.stage-grid__add:hover:not(:disabled){background:var(--hub-navy);border-style:solid;color:#fff}.stage-grid__add:disabled{display:none}button.stage-card{font:inherit;font-size:.68rem;text-align:left}button.stage-card:not(:disabled){cursor:pointer}button.stage-card:not(:disabled):focus-visible,button.stage-card:not(:disabled):hover{box-shadow:0 4px 14px rgba(15,58,95,.2);z-index:5}button.stage-card:disabled{color:var(--hub-navy);opacity:1}.stage-panel{background:var(--hub-surface,#fff);box-shadow:-10px 0 40px rgba(15,58,95,.2);inset:0 0 0 auto;overflow-y:auto;position:fixed;width:min(28rem,100%);z-index:50}.stage-panel[hidden]{display:none}.stage-panel__form{display:flex;flex-direction:column;min-height:100%}.stage-panel__head{align-items:flex-start;border-bottom:1px solid var(--stage-line);display:flex;gap:1rem;justify-content:space-between;padding:1.25rem 1.25rem .75rem}.stage-panel__head .hub-eyebrow{margin:0}.stage-panel__title{color:var(--hub-navy);font-family:var(--ui-font-display);font-size:1.3rem;margin:.35rem 0 0}.stage-panel__close{background:#fff;border:1px solid var(--stage-line);border-radius:50%;color:var(--stage-muted);cursor:pointer;font-size:1.3rem;height:2.5rem;width:2.5rem}.stage-panel__body{flex:1;padding:.5rem 1.25rem 1rem}.stage-panel__pair{display:grid;gap:0 .75rem;grid-template-columns:1fr 1fr}.stage-panel__group{border:0;border-top:1px solid var(--stage-line);margin:.75rem 0 0;padding:.75rem 0 0}.stage-panel__group legend{color:var(--hub-navy);font-size:.85rem;font-weight:700;padding:0 0 .4rem}.stage-pills{display:flex;flex-wrap:wrap;gap:.35rem}.stage-pill{position:relative}.stage-pill input{opacity:0;pointer-events:none;position:absolute}.stage-pill span{align-items:center;background:#fff;border:1px solid #d5dee8;border-radius:999px;color:var(--hub-navy);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;min-height:2.25rem;padding:0 .8rem}.stage-pill input:checked+span{background:var(--hub-navy);border-color:var(--hub-navy);color:#fff}.stage-pill input:focus-visible+span{outline:2px solid var(--hub-brand);outline-offset:2px}.stage-pill input:disabled+span{cursor:not-allowed;opacity:.35}.stage-pill--day span{justify-content:center;min-width:2.75rem;padding:0}.stage-panel__link{background:none;border:0;border-bottom:2px solid #f2b705;color:var(--hub-navy);cursor:pointer;font:700 .8rem var(--ui-font-body);margin:0 0 .5rem;padding:.25rem 0}.stage-panel__link[hidden]{display:none}.stage-publics{display:grid;gap:.15rem;list-style:none;margin:0;padding:0}.stage-publics label{align-items:center;cursor:pointer;display:inline-flex;gap:.45rem;min-height:2rem}.stage-publics input{accent-color:var(--hub-navy);height:1.05rem;margin:0;width:1.05rem}.stage-publics__whole{color:var(--hub-navy);font-size:.88rem;font-weight:600}.stage-publics__subs{display:flex;flex-wrap:wrap;font-size:.82rem;gap:0 1rem;padding-left:1.5rem}.stage-panel__foot{background:var(--hub-surface,#fff);border-top:1px solid var(--stage-line);bottom:0;display:flex;flex-wrap:wrap;gap:.5rem;padding:.9rem 1.25rem;position:sticky}.stage-panel__delete{color:var(--hub-error);margin-right:auto;order:-1}.stage-panel__delete[hidden]{display:none}.stage-grid__col[data-stage-day]{cursor:cell}.stage-ghost{background:rgba(15,58,95,.08);border:2px dashed var(--hub-navy);border-radius:7px;box-sizing:border-box;color:var(--hub-navy);font-size:.7rem;font-weight:700;left:2px;padding:2px 6px;pointer-events:none;position:absolute;right:2px;z-index:6}.stage-box__add{border-top:1px solid var(--stage-line);margin-top:.75rem;padding-top:.75rem}.stage-box__add .hub-field__label{font-size:.8rem}.stage-box__add-row{display:flex;gap:.4rem}.stage-box__add-row .hub-field__input{flex:1;font-size:.9rem;min-height:2.5rem;min-width:0;padding-block:.3rem}.stage-form__group legend,.stage-panel__group legend{float:none;width:auto}.stage-publics{clear:both}.stage-head__bar{align-items:center;border-bottom:1px solid var(--hub-line);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-top:1rem}.stage-tabs{display:flex;gap:.25rem}.stage-tabs__link{border-bottom:3px solid transparent;color:var(--hub-ink-soft);font-family:var(--ui-font-display);font-weight:600;padding:.55rem 1rem;text-decoration:none}.stage-tabs__link:focus-visible,.stage-tabs__link:hover{color:var(--hub-navy)}.stage-tabs__link[aria-current=page]{border-bottom-color:var(--hub-brand);color:var(--hub-navy)}.stage-head__publish{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:.5rem;position:relative}.stage-head__trash summary{list-style:none}.stage-head__trash summary::-webkit-details-marker{display:none}.stage-head__trash[open] summary{background:var(--hub-tint)}.stage-head__confirm{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);inset-inline-end:0;padding:.9rem 1rem;position:absolute;top:calc(100% - .25rem);width:min(22rem,90vw);z-index:5}.stage-head__confirm p{font-size:.85rem;margin:0 0 .75rem}.hub-btn.stage-head__danger{background:var(--hub-error);color:#fff}.hub-btn.stage-head__danger:focus-visible,.hub-btn.stage-head__danger:hover{background:#93352d;color:#fff}.stage-head__note{color:var(--hub-ink-subtle);font-size:.82rem;margin:0;padding-bottom:.5rem}.stage-sheet .stage-form{max-width:52rem}.stage-prices__hint{color:var(--hub-ink-subtle);font-size:.85rem;margin:0 0 .75rem}.stage-prices__cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,26rem),1fr));margin-bottom:1rem}.stage-price{border-top:4px solid var(--c);margin:0;min-width:0}.stage-price legend{float:none;width:auto}.stage-price [hidden]{display:none}.stage-price__title{font-family:var(--ui-font-display);font-size:1.05rem;font-weight:700;margin-bottom:.5rem;padding:0}.stage-price__modes{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:.75rem}.stage-price__block{border-top:1px dashed var(--hub-line);margin-bottom:.75rem;padding-top:.75rem}.stage-price__field{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin:0 0 .5rem}.stage-price__field label{font-weight:600}.stage-price__range{color:var(--hub-ink-subtle);font-size:.85rem;font-weight:400}.stage-price__amount{align-items:center;display:inline-flex;gap:.35rem;white-space:nowrap}.stage-price__amount input{text-align:right;width:6.5rem}.stage-price__week{margin-bottom:.6rem}.stage-price__week-label{color:var(--hub-ink-soft);display:block;font-size:.8rem;font-weight:700;letter-spacing:.04em;margin-bottom:.3rem;text-transform:uppercase}.stage-price__days{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.stage-price__day{display:grid;font-size:.8rem;gap:.2rem;width:5.5rem}.stage-price__day input{min-height:36px;padding:.25rem .5rem;text-align:right}.stage-price__included{color:var(--hub-ok);display:none;font-size:.75rem;font-weight:600}.stage-price__day.is-included .stage-price__included{display:block}.stage-price [aria-invalid=true]{border-color:var(--hub-error);box-shadow:0 0 0 2px var(--hub-error-bg)}.stage-price__warnings{background:var(--hub-error-bg);border-radius:8px;color:var(--hub-error);font-size:.82rem;margin:.5rem 0 0;padding:.6rem .8rem .6rem 1.8rem}.event-openings__list{display:grid;gap:.75rem;margin:.5rem 0}.event-opening{border:1px solid var(--hub-line);border-radius:12px;padding:.75rem 1rem}.event-opening .stage-form__checks{margin-bottom:.5rem}.event-opening__days{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr))}.result-hub{--rh-soft-line:#e3eef5;--rh-draft:#f3fbfa;--rh-pill:#e9f4fa;--rh-gold:#f6e3a1;--rh-silver:#e3e7ec;--rh-bronze:#efd2b8;--rh-create:#0f7f74}.result-hub__grid{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem}.result-hub__panel,.result-hub__trials{display:flex;flex-direction:column;gap:.65rem;margin:0;max-width:none;padding:1rem}.result-hub__trials{flex:1 1 17.5rem;max-width:100%}.result-hub__panel{flex:999 1 40rem;gap:.75rem;min-width:0;padding-inline:1.25rem}.result-hub__panel-head,.result-hub__trials-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem .75rem;justify-content:space-between}.result-hub__panel-head{align-items:center}.result-hub__heading,.result-hub__title{color:var(--hub-navy);font-family:var(--ui-font-display);font-size:1rem;margin:0}.result-hub__heading{font-size:1.25rem}.result-hub__muted{color:var(--hub-ink-subtle);font-size:.82rem}.result-hub__cards{display:flex;flex-direction:column;gap:.5rem}.result-hub__card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:12px;color:var(--hub-navy);cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:.4rem;padding:.65rem .75rem;text-align:left}.result-hub__card:hover{border-color:var(--hub-brand)}.result-hub__card.is-current{background:var(--rh-draft);border:2px solid var(--hub-brand);padding:calc(.65rem - 1px) calc(.75rem - 1px)}.result-hub__card.is-orphan{border-style:dashed}.result-hub__card-top{align-items:baseline;display:flex;gap:.5rem;justify-content:space-between}.result-hub__card-label{font-weight:600}.result-hub__pills{display:flex;flex-wrap:wrap;gap:.35rem}.result-hub__pill{background:var(--rh-pill);border-radius:999px;color:var(--hub-navy);font-size:.75rem;padding:.1rem .5rem}.result-hub__pill.is-todo{background:var(--hub-error-bg);color:var(--hub-error)}.result-hub__add{background:var(--hub-surface);border:1px dashed var(--hub-brand);border-radius:12px;color:var(--rh-create);cursor:pointer;font:inherit;font-weight:600;min-height:2.75rem}.result-hub__link{background:transparent;border:0;color:var(--hub-navy);cursor:pointer;font:inherit;font-size:.875rem;min-height:2.5rem;text-decoration:underline}.result-hub__link.is-danger{color:var(--hub-error)}.result-hub__form{background:var(--rh-draft);border:1px dashed var(--hub-brand);border-radius:12px;display:flex;flex-direction:column;gap:.65rem;padding:.75rem}.result-hub__field{display:flex;flex-direction:column;font-size:.82rem;gap:.25rem;position:relative}.result-hub__field input,.result-hub__field select{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:8px;font:inherit;font-size:.9rem;min-height:2.5rem;padding:0 .6rem}.result-hub__field-error{color:var(--hub-error)}.result-hub__toggle{border:1px solid var(--hub-line);border-radius:8px;display:flex;overflow:hidden}.result-hub__toggle button{background:var(--hub-surface);border:0;color:var(--hub-navy);cursor:pointer;flex:1 1 0;font:inherit;font-size:.9rem;min-height:2.5rem}.result-hub__toggle button[aria-pressed=true]{background:var(--hub-navy);color:var(--c-white,#fff)}.result-hub__small{width:6rem}.result-hub__warning{background:var(--hub-error-bg);border-radius:8px;color:var(--hub-error);font-size:.82rem;margin:0;padding:.5rem .65rem}.result-hub__actions{display:flex;flex-wrap:wrap;gap:.5rem}.result-hub__danger{border-top:1px solid var(--rh-soft-line);padding-top:.5rem}.result-hub__combo{position:relative}.result-hub__menu{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.result-hub__menu.is-floating{border-radius:10px;box-shadow:0 12px 28px -14px rgba(13,58,92,.45);inset-inline:.35rem;position:absolute;top:calc(100% - .2rem);z-index:3}.result-hub__option{background:transparent;border:0;color:var(--hub-navy);cursor:pointer;font:inherit;font-size:.9rem;padding:.5rem .65rem;text-align:left}.result-hub__option.is-active,.result-hub__option:hover{background:var(--rh-pill)}.result-hub__option.is-create{color:var(--rh-create)}.result-hub__create{border-top:1px solid var(--rh-soft-line);display:flex;flex-direction:column}.result-hub__check{align-items:center;display:flex;font-size:.82rem;gap:.4rem;padding:0 .65rem .5rem}.result-hub__panel-tools{align-items:center;display:flex;flex-wrap:wrap;font-size:.875rem;gap:.65rem}.result-hub__inline{align-items:center;display:flex;gap:.4rem}.result-hub__inline input{border:1px solid var(--hub-line);border-radius:8px;font:inherit;min-height:2.25rem;padding:0 .5rem;width:4.5rem}.result-hub__scroll{overflow-x:auto}.result-hub__table{border-collapse:collapse;font-size:.875rem;min-width:40rem;width:100%}.result-hub__table th[scope=col]{border-bottom:1px solid var(--hub-line);color:var(--hub-ink-subtle);font-size:.75rem;font-weight:600;letter-spacing:.06em;padding:.5rem .35rem;text-align:left;text-transform:uppercase}.result-hub__table th[scope=col]:first-child{width:30%}.result-hub__table td,.result-hub__table th[scope=row]{padding:.3rem .35rem;vertical-align:middle}.result-hub__table input,.result-hub__table select{background:transparent;border:1px solid transparent;border-radius:8px;color:inherit;font:inherit;min-height:2.25rem;padding:0 .4rem}.result-hub__table input:hover:not(:disabled),.result-hub__table select:hover:not(:disabled){border-color:var(--hub-line)}.result-hub__table input:focus,.result-hub__table select:focus{background:var(--hub-surface);border-color:var(--hub-brand)}.result-hub__table input:disabled,.result-hub__table select:disabled{color:var(--hub-ink-subtle)}.result-hub__row{border-bottom:1px solid var(--rh-soft-line)}.result-hub__row.has-error{background:var(--hub-error-bg)}.result-hub__row.is-podium-1 .result-hub__place .result-hub__rank{background:var(--rh-gold);font-weight:600}.result-hub__row.is-podium-2 .result-hub__place .result-hub__rank{background:var(--rh-silver);font-weight:600}.result-hub__row.is-podium-3 .result-hub__place .result-hub__rank{background:var(--rh-bronze);font-weight:600}.result-hub__who{font-weight:500;text-align:left}.result-hub__who>*+*{margin-inline-start:.4rem}.result-hub__detail{font-size:.75rem}.result-hub__pair{display:flex;gap:.25rem}.result-hub__rank{text-align:center;width:3.25rem}.result-hub__score{width:4.75rem}.result-hub__note{min-width:8rem;width:100%}.result-hub__of{color:var(--hub-ink-subtle);font-size:.8rem;margin-inline-start:.2rem;white-space:nowrap}.result-hub__total{align-items:center;display:inline-flex;font-weight:600;min-height:2.25rem}.result-hub__status{font-size:.8rem;white-space:nowrap;width:8.5rem}.result-hub__state{color:var(--hub-ink-subtle)}.result-hub__state.is-saved{color:var(--hub-ok)}.result-hub__state.is-dirty{color:var(--hub-ink-soft)}.result-hub__state.is-error{color:var(--hub-error);font-weight:600}.result-hub__remove{background:transparent;border:0;border-radius:6px;color:var(--hub-error);cursor:pointer;font:inherit;font-size:1rem;margin-inline-start:.35rem;min-height:1.75rem;min-width:1.75rem}.result-hub__remove.is-armed{background:var(--hub-error);color:var(--c-white,#fff);font-size:.8rem;padding:0 .45rem}.result-hub__draft{background:var(--rh-draft)}.result-hub__draft td{padding-block:.5rem;vertical-align:top}.result-hub__draft input,.result-hub__draft select{background:var(--hub-surface);border-color:var(--hub-line);min-height:2.5rem}.result-hub__draft [data-draft=query]{border-color:var(--hub-brand);width:100%}.result-hub__error{background:var(--hub-error-bg);border-radius:8px;color:var(--hub-error);font-size:.875rem;margin:0;padding:.5rem .75rem}.result-hub__keys{border-top:1px solid var(--rh-soft-line);color:var(--hub-ink-soft);display:flex;flex-wrap:wrap;font-size:.8rem;gap:.5rem 1.1rem;padding-top:.35rem}.result-hub__keys kbd{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:4px;box-shadow:none;color:var(--hub-navy);font-family:inherit;font-size:.8rem;font-weight:600;padding:.05rem .4rem}.result-hub__place{white-space:nowrap}.result-hub__row.is-locked{background:var(--rh-draft)}.result-hub__row.is-locked .result-hub__who{font-weight:600}.result-hub__locked{color:var(--rh-create);font-size:.8rem;margin-inline-start:.35rem}.result-hub__open{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:8px;color:var(--hub-navy);cursor:pointer;font:inherit;font-size:.8rem;margin-inline-start:.35rem;min-height:1.9rem;padding:0 .55rem}.result-hub__open:hover{border-color:var(--hub-brand)}.result-hub__drawer{background:var(--hub-surface);border-inline-start:1px solid var(--hub-line);box-shadow:-18px 0 40px -24px rgba(13,58,92,.55);color:var(--hub-navy);display:flex;flex-direction:column;gap:.9rem;inset-block:0;inset-inline-end:0;overflow-y:auto;padding:1.1rem;position:fixed;width:min(30rem,100vw);z-index:40}.result-hub__drawer,.result-hub__drawer *,.result-hub__drawer :after,.result-hub__drawer :before{box-sizing:border-box}.result-hub__drawer-head{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.result-hub__drawer-head>div{display:flex;flex-direction:column;gap:.15rem}.result-hub__eyebrow{color:var(--rh-create);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.result-hub__close{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:999px;color:var(--hub-navy);cursor:pointer;font-size:1.1rem;min-height:2.5rem;min-width:2.5rem}.result-hub__block{display:flex;flex-direction:column;gap:.5rem}.result-hub__chips{display:flex;flex-wrap:wrap;gap:.4rem}.result-hub__chip{align-items:center;background:var(--rh-pill);border-radius:999px;display:inline-flex;font-size:.875rem;gap:.25rem;padding:.25rem .3rem .25rem .65rem}.result-hub__chip button{background:transparent;border:0;border-radius:999px;color:var(--hub-error);cursor:pointer;min-height:1.75rem;min-width:1.75rem}.result-hub__drawer [data-partner]{border:1px dashed var(--hub-brand);border-radius:8px;font:inherit;font-size:.9rem;min-height:2.5rem;padding:0 .65rem;width:100%}.result-hub__segment{border:1px solid var(--hub-line);border-radius:12px;display:flex;flex-direction:column;gap:.65rem;padding:.75rem}.result-hub__segment.is-detail{background:#f9fcfe}.result-hub__seg-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.65rem}.result-hub__seg-row .result-hub__rank{width:4rem}.result-hub__seg-row .result-hub__score{width:5.5rem}.result-hub__seg-row .result-hub__check{font-size:.875rem;min-height:2.5rem;padding:0}.result-hub__seg-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(5.75rem,1fr))}.result-hub__seg-grid input{min-width:0}.result-hub__calc{align-items:center;background:var(--rh-pill);border-radius:8px;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.5rem;justify-content:space-between;padding:.5rem .65rem}.result-hub__calc.is-ok{background:var(--hub-ok-bg);color:var(--hub-ok)}.result-hub__calc.is-bad{background:var(--hub-error-bg);color:var(--hub-error)}.result-hub__calc.is-bad .result-hub__link{color:inherit}.result-hub__sum{background:var(--rh-pill);border-radius:10px;display:flex;font-size:.9rem;gap:.65rem;justify-content:space-between;padding:.65rem .75rem}.planning{--planning-navy:var(--c-dark);--planning-ink:var(--c-dark);--planning-text:var(--c-ink);--planning-muted:var(--c-ink-subtle);--planning-line:#e3eaf1;--planning-surface:#f5f8fb;--planning-yellow:#f2b705;--planning-orange:#d97a0b;color:var(--planning-text);display:block;font-family:var(--ui-font-body);font-size:14px;margin:0;max-width:100%;padding:clamp(1rem,3vw,2rem) clamp(.75rem,2vw,1.5rem) 3rem}.planning *,.planning :after,.planning :before{box-sizing:border-box}.planning a:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.planning-body{background:#eef3f8;margin:0;min-height:100vh}.planning__back{font-size:13px;margin:0 0 .25rem}.planning__back a{color:var(--planning-muted);text-decoration:none}.planning__back a:hover,.planning__today{color:var(--planning-navy)}.planning__today{border-bottom:2px solid var(--planning-yellow);font-size:12.5px;font-weight:600;text-decoration:none}.planning__denied{background:#fff;border:1px solid var(--planning-line);border-radius:14px;margin:10vh auto;max-width:32rem;padding:2rem;text-align:center}.planning__title{color:var(--planning-ink);font-family:var(--ui-font-display);font-size:24px;font-weight:700;margin:8px 0 14px}.planning__toolbar{align-items:center;background:#fff;border:1px solid var(--planning-line);border-radius:14px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px;padding:10px 14px}.planning__arrow{background:#fff;border:1px solid var(--planning-line);border-radius:50%;color:var(--planning-ink);display:grid;font-size:18px;height:32px;line-height:1;place-items:center;text-decoration:none;width:32px}.planning__arrow:focus,.planning__arrow:hover{border-color:var(--planning-navy);color:var(--planning-navy)}.planning__week{color:var(--planning-ink);font-size:16px;min-width:220px;text-align:center}.planning__spacer{flex:1}.planning__stat{background:var(--planning-surface);border-radius:10px;color:var(--planning-muted);font-size:12.5px;padding:6px 12px}.planning__stat b{color:var(--planning-ink);font-size:15px;margin-right:2px}.planning__stat.is-warning b{color:var(--planning-orange)}.planning__stat.is-jump{background:#fff5e8;border:1px solid #f3d2a6;color:#8a4d05;cursor:pointer;font:inherit;font-size:12.5px}.planning__stat.is-jump:focus-visible,.planning__stat.is-jump:hover{border-color:var(--planning-orange)}.planning__stat.is-done b{color:#1c7f58}.planning__state.is-done{background:#ddf0e7;color:#1c7f58}.planning__hint{color:var(--planning-muted);font-size:12.5px;margin:0 0 12px}.planning__layout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 280px}@media(max-width:1280px){.planning__layout{grid-template-columns:minmax(0,1fr)}}.planning__board{background:#fff;border:1px solid var(--planning-line);border-radius:14px;overflow:hidden}.planning__scroll{overflow-x:auto}.planning__grid{display:grid;grid-template-columns:46px repeat(7,minmax(140px,1fr));min-width:1050px}.planning__corner,.planning__head{background:var(--planning-surface);border-bottom:1px solid var(--planning-line)}.planning__head{border-left:1px solid var(--planning-line);padding:8px 4px;text-align:center}.planning__head span{color:var(--planning-muted);display:block;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.planning__head b{color:var(--planning-ink);display:block;font-size:15px}.planning__head small{color:var(--planning-muted);display:block;font-size:10.5px;margin-top:2px}.planning__head.is-closing small,.planning__head.is-holiday small{color:#b23b2a}.planning__corner--bands{align-items:center;background:#fff;color:var(--planning-muted);display:flex;font-size:9.5px;font-weight:600;justify-content:center;letter-spacing:.08em;text-transform:uppercase;transform:rotate(180deg);writing-mode:vertical-rl}.planning__bands{background:linear-gradient(90deg,transparent calc(100% - 1px),var(--planning-line) 0) 0 0/14.2857142857% 100%;border-bottom:1px solid var(--planning-line);display:grid;gap:4px 0;grid-auto-rows:minmax(30px,auto);grid-column:2/-1;grid-template-columns:repeat(7,minmax(0,1fr));padding:5px 0}.planning__band{background:#fff6dc;border:1px solid #f2c96b;border-radius:8px;color:var(--planning-ink);display:flex;flex-direction:column;font:inherit;font-size:11px;gap:3px;justify-content:center;line-height:1.2;margin:0 4px;min-width:0;padding:4px 9px;position:relative;text-align:left}.planning__band[hidden]{display:none}.planning__band.is-before{border-bottom-left-radius:0;border-left-style:dashed;border-top-left-radius:0;margin-left:0}.planning__band.is-after{border-bottom-right-radius:0;border-right-style:dashed;border-top-right-radius:0;margin-right:0}.planning__band.is-after:after,.planning__band.is-before:before{color:var(--planning-muted);font-size:12px;position:absolute;top:50%;transform:translateY(-50%)}.planning__band.is-before:before{content:"‹";left:2px}.planning__band.is-after:after{content:"›";right:2px}.planning__band.is-todo{background:repeating-linear-gradient(135deg,#f7f9fb 0 4px,#fff 4px 9px);border:1px dashed #b9c6d3;color:var(--planning-muted)}.planning__band.is-todo .planning__band-status{color:var(--planning-orange);font-weight:700}.planning__band.is-programme,.planning__band.is-range{background:#eef4fa;border-color:#c9d8e6}.planning__band.is-flat{background:#fff3d1;border-color:#f2c96b}.planning__band.is-off{background:#fff;border-style:dotted;opacity:.55}.planning__band.is-mine{box-shadow:0 0 0 2px var(--planning-navy)}.planning__band.is-flash{animation:planning-flash 1.6s ease-out 1}button.planning__band{cursor:pointer}button.planning__band:hover{box-shadow:0 2px 8px rgba(15,58,95,.15);filter:brightness(.97)}button.planning__band:focus-visible{outline:2px solid var(--c-primary);outline-offset:1px}.planning__band-head{align-items:baseline;display:flex;gap:8px;min-width:0}.planning__band-title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning__band-status{color:var(--planning-muted);flex:none;font-size:10.5px;font-weight:600;white-space:nowrap}.planning__band-days{display:grid;grid-template-columns:repeat(var(--span,1),minmax(0,1fr))}.planning__band-day{display:flex;flex-wrap:wrap;gap:2px 6px;min-height:17px}.planning__band-person{align-items:center;display:inline-flex;font-size:10px;font-variant-numeric:tabular-nums;font-weight:700;gap:3px}.planning__menu{background:#fff;border:1px solid var(--planning-line);border-radius:12px;box-shadow:0 10px 30px rgba(15,58,95,.2);padding:6px;position:fixed;width:260px;z-index:40}.planning__menu[hidden]{display:none}.planning__menu form{margin:0}.planning__menu-title{color:var(--planning-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin:4px 8px 6px;text-transform:uppercase}.planning__menu-item{background:none;border:0;border-radius:8px;color:var(--planning-ink);cursor:pointer;display:block;font:600 13px var(--ui-font-body);padding:7px 10px;text-align:left;width:100%}.planning__menu-item small{color:var(--planning-muted);display:block;font-size:11px;font-weight:400}.planning__menu-item:focus-visible,.planning__menu-item:hover{background:var(--planning-surface);outline:none}.planning__menu-item:disabled{cursor:not-allowed;opacity:.45}.planning__hours{position:relative}.planning__hours span{color:var(--planning-muted);font-size:10.5px;font-weight:600;position:absolute;right:6px;transform:translateY(-6px)}.planning__column{border-left:1px solid var(--planning-line);position:relative}.planning__column.is-off{background:repeating-linear-gradient(135deg,#f6f8fa 0 2px,#fff 2px 8px)}.planning__rule{border-top:1px solid var(--planning-line);left:0;position:absolute;right:0}.planning__rule.is-half{border-color:#eef2f6;border-top-style:dotted}.planning__off{background:#fff;border:1px dashed var(--planning-line);border-radius:10px;color:var(--planning-muted);font-size:11px;font-weight:600;left:6px;padding:10px 4px;position:absolute;right:6px;text-align:center;top:40%}.planning__slot{background:#f3f6fa;border-left:3px solid #5b7a99;border-radius:7px;box-sizing:border-box;color:var(--planning-ink);font-size:10.5px;line-height:1.2;overflow:hidden;padding:3px 18px 3px 5px;position:absolute}.planning__slot:hover{box-shadow:0 4px 14px rgba(15,58,95,.2);height:auto!important;min-height:22px;overflow:visible;z-index:5}.planning__slot.is-empty{background:#fff8ee;border-left-color:var(--planning-orange);box-shadow:inset 0 0 0 1px #f1c48c}.planning__slot.is-event{background:#fffaf0;border-left-color:var(--planning-yellow)}.planning__time{color:var(--planning-muted);font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.planning__line{border-top:1px dotted rgba(15,58,95,.2);font-weight:600;line-height:1.25;margin-top:3px;overflow-wrap:anywhere;padding-top:3px}.planning__time+.planning__line{border-top:0;padding-top:0}.planning__hour{font-variant-numeric:tabular-nums;margin-right:3px;white-space:nowrap}.planning__badges .ui-badge{font-size:9.5px}.planning__detail{color:var(--planning-muted);display:block;font-size:10px;font-weight:400}.planning__line.is-off-ice .planning__detail{font-style:italic}.planning__todo{border:1px dashed var(--planning-orange);border-radius:50%;color:var(--planning-orange);font-size:11px;font-weight:700;height:13px;line-height:12px;position:absolute;right:3px;text-align:center;top:3px;width:13px}.planning__aside{display:flex;flex-direction:column;gap:12px}.planning__box{background:#fff;border:1px solid var(--planning-line);border-radius:14px;padding:12px 14px}.planning__label{color:var(--planning-muted);font-size:10.5px;font-weight:700;letter-spacing:.14em;margin:0 0 8px;padding:0;text-transform:uppercase}.planning__type{color:var(--planning-ink);font-size:12px;margin:10px 0 4px}.planning__people{list-style:none;margin:0;padding:0}.planning__person{align-items:center;display:flex;font-size:12.5px;gap:7px;margin:0 0 4px}.planning__person:before{background:var(--c,#5b7a99);border-radius:50%;content:"";height:9px;width:9px}.planning__settings{display:grid;font-size:12px;gap:4px 10px;grid-template-columns:1fr auto;margin:0}.planning__settings dt{color:var(--planning-muted)}.planning__settings dd{color:var(--planning-ink);font-weight:600;margin:0;text-align:right}.planning__slot{cursor:pointer}.planning__slot:focus-visible{outline:2px solid var(--c-primary);outline-offset:1px;z-index:6}.planning__slot.is-selected{box-shadow:0 0 0 2px var(--planning-navy);z-index:6}.planning__slot.is-flash{animation:planning-flash 1.6s ease-out 1}@keyframes planning-flash{0%{box-shadow:0 0 0 3px var(--planning-yellow)}to{box-shadow:0 0 0 0 transparent}}.planning__slot:not(.is-empty){padding-right:5px}.planning__crew{display:flex;flex-wrap:wrap;gap:2px;margin:2px 0 1px}.planning__chip{background:var(--c,#5b7a99);border-radius:50%;color:#fff;display:inline-grid;flex:none;font-size:7.5px;font-style:normal;font-weight:800;height:17px;letter-spacing:-.02em;place-items:center;width:17px}.planning__chip.is-own{box-shadow:0 0 0 1.5px #fff,0 0 0 2.5px var(--c,#5b7a99)}.planning__state{background:var(--planning-surface);border-radius:999px;color:var(--planning-muted);font-size:11.5px;font-weight:600;padding:4px 10px}.planning__state.is-draft{background:#fff4dd;color:#8a5a00}.planning__state.is-validated{background:#ddf0e7;color:#1c7f58}.planning__notice{background:#ddf0e7;border-radius:10px;color:#1c5f43;font-size:13px;margin:0 0 10px;padding:8px 12px}.planning__notice.is-error{background:#f8e3e0;color:#8f3128}.planning-is-open{overflow:hidden}.planning__overlay{background:rgba(15,40,70,.35);inset:0;position:fixed;z-index:50}.planning__drawer{background:#fff;bottom:0;box-shadow:-10px 0 40px rgba(15,58,95,.2);max-width:100%;position:fixed;right:0;top:0;width:460px;z-index:60}.planning__drawer[hidden]{display:none}.planning__form{display:flex;flex-direction:column;height:100%}.planning__drawer-head{border-bottom:1px solid var(--planning-line);padding:16px 20px 12px;position:relative}.planning__close{background:none;border:0;color:var(--planning-muted);cursor:pointer;font-size:24px;line-height:1;position:absolute;right:12px;top:10px}.planning__drawer-title{color:var(--planning-ink);font-family:var(--ui-font-display);font-size:20px;margin:2px 0 6px}.planning__drawer-lines{color:var(--planning-text);font-size:12.5px;line-height:1.4;list-style:none;margin:0;padding:0}.planning__drawer-body{flex:1;overflow:auto;padding:12px 20px}.planning__drawer-body>.planning__label{margin-top:12px}.planning__drawer-body>.planning__label:first-child{margin-top:0}.planning__row{border:1px solid var(--planning-line);border-radius:12px;margin-bottom:6px}.planning__row.is-on{border-color:var(--c);box-shadow:0 0 0 1px var(--c)}.planning__who{align-items:center;color:var(--planning-ink);cursor:pointer;display:flex;font-size:13.5px;font-weight:600;gap:9px;padding:8px 12px}.planning__who input{accent-color:var(--planning-navy);height:17px;width:17px}.planning__who .planning__chip{font-size:9.5px;height:24px;width:24px}.planning__who>span{flex:1}.planning__busy{color:var(--planning-orange);font-size:11px;font-weight:600}.planning__extras{color:var(--planning-ink);display:none;flex-wrap:wrap;font-size:12.5px;gap:8px 14px;padding:0 12px 12px 38px}.is-on>.planning__extras{display:flex}.planning__extras label{align-items:center;display:inline-flex;gap:5px}.planning__extras input[type=checkbox]{accent-color:var(--planning-navy)}.planning__extras input[type=number],.planning__extras input[type=text],.planning__extras input[type=time]{border:1px solid var(--planning-line);border-radius:6px;font:inherit;padding:3px 6px}.planning__extras input[type=number]{width:64px}.planning__note{flex-basis:100%}.planning__note input{flex:1}.planning__drawer-foot{align-items:center;border-top:1px solid var(--planning-line);display:flex;gap:8px;padding:12px 20px}.planning__sum{color:var(--planning-muted);flex:1;font-size:12.5px}.planning__button{background:var(--planning-surface);border:1px solid var(--planning-line);border-radius:999px;color:var(--planning-navy);cursor:pointer;font:600 13px var(--ui-font-body);padding:8px 16px}.planning__button.is-primary{background:var(--planning-navy);border-color:var(--planning-navy);color:#fff}.planning__state.is-locked{background:#eef1f4;color:var(--planning-muted)}.planning__slot.is-dim{opacity:.22}.planning__orphans p,.planning__orphans ul{margin:0}.planning__orphans ul{margin-top:4px;padding-left:1.1em}.planning__inline{display:inline;margin:0}.planning__link{background:none;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:700;padding:0 2px;text-decoration:underline}.planning__coach{border-top:1px solid var(--planning-line);padding:9px 0}.planning__coach:first-of-type{border-top:0}.planning__coach.is-on{background:var(--planning-surface);margin:0 -14px;padding:9px 14px}.planning__coach-head{align-items:center;background:none;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:8px;padding:0;text-align:left;width:100%}.planning__coach-head .planning__chip{font-size:9.5px;height:26px;width:26px}.planning__coach-name{color:var(--planning-ink);flex:1;font-size:13px;font-weight:700}.planning__coach-name small{color:var(--planning-muted);display:block;font-size:11px;font-weight:400}.planning__coach-total{color:var(--planning-ink);font-size:15px;font-variant-numeric:tabular-nums}.planning__figures{display:grid;font-size:11.5px;gap:1px 8px;grid-template-columns:1fr auto;margin:6px 0 0 34px}.planning__figures dt{color:var(--planning-muted)}.planning__figures dd{color:var(--planning-ink);font-variant-numeric:tabular-nums;font-weight:600;margin:0;text-align:right}.planning__figures .is-apart{color:var(--planning-muted);font-style:italic}.planning__entries{font-size:11.5px;list-style:none;margin:6px 0 0 34px;max-height:9.5rem;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 0 0}.planning__entries li{border:1px dashed var(--planning-line);border-radius:7px;display:flex;gap:6px;justify-content:space-between;margin-top:3px;padding:3px 6px}.planning__add{font-size:12px;margin:6px 0 0 34px}.planning__add summary{align-items:center;color:var(--planning-navy);cursor:pointer;display:inline-flex;gap:5px;list-style:none}.planning__add summary:before{border-bottom:1.5px solid;border-right:1.5px solid;content:"";height:6px;transform:rotate(-45deg);transition:transform .15s ease;width:6px}.planning__add summary:hover{text-decoration:underline}.planning__add[open] summary:before{transform:rotate(45deg) translate(-1px,-1px)}.planning__add summary::-webkit-details-marker{display:none}.planning__add form{display:grid;gap:6px;margin-top:8px}.planning__add input,.planning__add select{border:1px solid var(--planning-line);border-radius:6px;font:inherit;padding:4px 6px;width:100%}.planning__add label{color:var(--planning-muted);display:grid;gap:2px}.planning__add label[hidden]{display:none}.planning__entry-help{color:var(--planning-muted);font-size:11px;line-height:1.35;margin-top:-2px}.planning__team{border-top:2px solid var(--planning-line);color:var(--planning-ink);display:flex;font-size:13px;font-weight:700;justify-content:space-between;margin:6px 0 0;padding-top:8px}.planning__team-detail{color:var(--planning-muted);font-size:11px;margin:2px 0 0}.planning__slot.is-mine{background:#fff;box-shadow:0 0 0 2px var(--planning-navy)}.planning__link-box{color:var(--planning-muted);font-size:11.5px;margin:6px 0 0 34px}.planning__link-box .planning__link{color:var(--planning-navy);margin-left:6px}.planning__issued{background:#fff8e6;border:1px solid #f5dd9a;border-radius:8px;color:var(--planning-ink);display:grid;gap:4px;margin:0 0 6px;padding:8px}.planning__issued input{border:1px solid var(--planning-line);border-radius:6px;font:11px ui-monospace,monospace;padding:4px 6px;width:100%}.planning__issued .planning__button{justify-self:start;padding:4px 12px}.planning__drawer.is-coach .planning__drawer-body>.planning__label,.planning__drawer.is-coach .planning__row.is-on:not(.is-self) .planning__extras,.planning__drawer.is-coach .planning__row:not(.is-on){display:none}.planning__switch,.planning__tabs{background:#fff;border:1px solid var(--planning-line);border-radius:999px;display:inline-flex;gap:2px;padding:3px}.planning__tabs{margin:0 0 10px}.planning__tab{border-radius:999px;color:var(--planning-navy);font-size:12.5px;font-weight:600;padding:6px 14px;text-decoration:none}.planning__tab:hover{background:var(--planning-surface)}.planning__tab.is-current{background:var(--planning-navy);color:#fff}a.planning__button{display:inline-block;text-decoration:none}.planning__report{margin-bottom:20px}.planning__table{border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums;width:100%}.planning__table td,.planning__table th{border-bottom:1px solid var(--planning-line);padding:7px 10px;text-align:right;white-space:nowrap}.planning__table thead th{background:var(--planning-surface);color:var(--planning-muted);font-size:11px;font-weight:700}.planning__table thead th a{color:inherit;text-decoration:none}.planning__table thead th a:hover{color:var(--planning-navy);text-decoration:underline}.planning__table tfoot td,.planning__table tfoot th{border-bottom:0;border-top:2px solid var(--planning-line);color:var(--planning-ink);font-weight:700}.planning__table .is-total{background:#fbfcfe;color:var(--planning-ink);font-weight:800}.planning__table .is-detail{color:var(--planning-muted)}.planning__table .is-apart{font-style:italic}.planning__table-name{align-items:center;color:var(--planning-ink);display:flex;font-weight:700;gap:8px;text-align:left!important}.planning__table-name small{color:var(--planning-muted);display:block;font-size:10.5px;font-weight:400}.planning__table-name .planning__chip{font-size:9px;height:24px;width:24px}.planning__cell{background:none;border:0;border-radius:6px;color:var(--planning-ink);cursor:pointer;font:inherit;font-weight:600;padding:3px 8px}.planning__cell:focus-visible,.planning__cell:hover{background:var(--planning-surface);box-shadow:inset 0 0 0 1px var(--c,var(--planning-navy))}.planning__cell.is-empty{color:var(--planning-muted);cursor:default}.planning__detail-list{font-size:13px;list-style:none;margin:0 0 12px;padding:0}.planning__detail-list li{border-bottom:1px dotted var(--planning-line);padding:7px 0}.planning__detail-list b,.planning__detail-list small{display:block}.planning__detail-list small{color:var(--planning-muted);font-size:11.5px}.planning__detail-day{color:var(--planning-muted);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.planning__detail-note{font-style:italic}.planning__side .planning__figures{font-size:12.5px;margin-left:0}.planning__drawer--event{width:560px}.planning__modes{border:0;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0}.planning__modes legend{margin-bottom:6px}.planning__mode{cursor:pointer;position:relative}.planning__mode input{opacity:0;pointer-events:none;position:absolute}.planning__mode span{background:var(--planning-surface);border:1px solid var(--planning-line);border-radius:999px;color:var(--planning-ink);display:inline-block;font-size:12.5px;font-weight:600;padding:6px 12px}.planning__mode input:checked+span{background:var(--planning-navy);border-color:var(--planning-navy);color:#fff}.planning__mode input:focus-visible+span{outline:2px solid var(--c-primary);outline-offset:2px}.planning__mode input:disabled+span{cursor:not-allowed;opacity:.4}.planning__section[hidden]{display:none}.planning__hint.is-warning{color:#8f3128}.planning__range{display:flex;gap:14px;margin-bottom:10px}.planning__range label{font-size:12.5px;font-weight:600}.planning__days input[type=time],.planning__flat select,.planning__range input{border:1px solid var(--planning-line);border-radius:7px;font:inherit;margin-left:4px;padding:4px 6px}.planning__crew-table,.planning__days{border-collapse:collapse;font-size:12.5px;width:100%}.planning__crew-table td,.planning__crew-table th,.planning__days td,.planning__days th{border-bottom:1px solid var(--planning-line);padding:4px 6px;text-align:left}.planning__crew-table thead th,.planning__days thead th{color:var(--planning-muted);font-size:11px;font-weight:600}.planning__days tr.is-none th{color:var(--planning-muted);text-decoration:line-through}.planning__flat{display:block;font-size:12.5px;font-weight:600;margin-bottom:8px}.planning__crew-table td{text-align:center}.planning__crew-table td select{background:#fff;border:1px solid var(--planning-line);border-radius:7px;color:var(--planning-muted);font:inherit;font-size:12px;padding:3px 4px;width:76px}.planning__crew-table td select.is-set{border-color:var(--planning-navy);color:var(--planning-ink);font-weight:700}.planning__crew-table td.is-busy{background:repeating-linear-gradient(135deg,#f6f8fa 0 2px,#fff 2px 6px)}.planning__crew-table tbody th{font-weight:600;white-space:nowrap}.planning__crew-table .planning__chip{font-size:8px;height:20px;vertical-align:middle;width:20px}.planning__crew-table .planning__crew-group th{color:var(--planning-muted);font-size:10.5px;font-weight:600;letter-spacing:.08em;padding-top:10px;text-transform:uppercase}.planning__activity{color:var(--planning-navy);font-weight:700;margin-left:3px}.planning__activity.is-off-ice{font-style:italic}.planning__page:has(#planning-annex) .planning__column{cursor:copy}.planning__slot.is-annex{background:color-mix(in srgb,var(--a,#8a99a8) 14%,#fff);border-left-color:var(--a,#8a99a8);cursor:default;font-size:9.5px;padding:1px 4px}.planning__slot.is-annex[data-annex]{cursor:pointer}.planning__slot.is-annex .planning__time{color:var(--planning-ink);display:inline}.planning__slot.is-annex .planning__activity{color:color-mix(in srgb,var(--a,#8a99a8) 70%,#000)}.planning__slot.is-annex .planning__crew{display:inline-flex;margin:0 0 0 3px;vertical-align:middle}.planning__slot.is-annex .planning__chip{font-size:6px;height:13px;width:13px}.planning__slot.is-annex.is-mine{box-shadow:0 0 0 2px var(--a,#8a99a8)}.planning__swatch{background:var(--a,#8a99a8);border-radius:2px;display:inline-block;height:9px;margin-right:5px;vertical-align:baseline;width:9px}.planning__legacy{color:var(--planning-muted);flex-basis:100%;font-size:11px;font-style:italic}.planning__annex-fields{display:grid;gap:10px 12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.planning__annex-fields label{color:var(--planning-muted);display:grid;font-size:12px;font-weight:600;gap:4px}.planning__annex-fields .planning__note{grid-column:1/-1}.planning__annex-fields input,.planning__annex-fields select{border:1px solid var(--planning-line);border-radius:8px;font:500 13px var(--ui-font-body);padding:6px 8px}.planning__drawer--annex .planning__who{align-items:center;display:flex;gap:8px;padding:4px 0}.planning__button.is-danger{border-color:#e7b4b4;color:#a33}