:root{--color-bg:#f7f5f0;--color-surface:#fff;--color-text:#1f2a2b;--color-muted:#56676a;--color-border:#d6dede;--color-brand:#4f8a8b;--color-accent:#e8836b;--color-primary:#3e6e6f;--color-primary-hover:#335b5c;--color-on-primary:#fff;--color-danger:#a8321f;--color-danger-bg:#fbeae6;--color-success:#1d6b37;--color-success-bg:#e5f4ea;--color-info-bg:#e8f1f1;--color-focus:#c25d44;--radius:10px;--space:1rem;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html{font-family:var(--font);color:var(--color-text);background:var(--color-bg)}body{margin:0;line-height:1.5}h1{margin:0 0 var(--space);font-size:1.6rem}h2{margin:1.5rem 0 .5rem;font-size:1.2rem}a{color:var(--color-primary)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.skip-link{background:var(--color-surface);padding:.5rem 1rem;position:absolute;top:0;left:-999px}.skip-link:focus{z-index:10;left:.5rem}.auth-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:32rem;padding:1.5rem}.brand{margin-bottom:1rem;line-height:0}.logo{max-width:100%;height:auto;display:block}.sidebar .brand{border-bottom:2px solid var(--color-accent);width:fit-content;margin:0 .6rem;padding-bottom:.75rem}form{gap:1rem;display:grid}fieldset{border:0;gap:1rem;margin:0;padding:0;display:grid}legend{margin-bottom:.5rem;font-weight:600}label{gap:.25rem;font-weight:500;display:grid}.hint{color:var(--color-muted);font-size:.875rem;font-weight:400}input[type=text],input[type=search],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=date],input[type=time],input[type=number],textarea,select{font:inherit;border:1px solid var(--color-border);color:inherit;background:#fff;border-radius:8px;padding:.6rem .7rem}input[type=text],input[type=search],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=date],input[type=time],input[type=number],select{box-sizing:border-box;height:calc(1.5em + 1.2rem + 2px);line-height:1.5}.check{grid-template-columns:auto 1fr;align-items:start;gap:.6rem;font-weight:400;display:grid}.check input{width:1.1rem;height:1.1rem;margin-top:.3rem}button,.button{font:inherit;cursor:pointer;background:var(--color-primary);color:var(--color-on-primary);text-align:center;border:0;border-radius:8px;padding:.65rem 1rem;font-weight:600;text-decoration:none;display:inline-block}button:hover,.button:hover{background:var(--color-primary-hover)}button.secondary{color:var(--color-primary);border:1px solid var(--color-border);background:0 0}button:disabled{opacity:.6;cursor:wait}.alert{border-radius:8px;padding:.75rem 1rem}.alert.error{background:var(--color-danger-bg);color:var(--color-danger)}.alert.info{background:var(--color-info-bg)}.alert.success{background:var(--color-success-bg);color:var(--color-success)}.state{border-radius:6px;padding:.15rem .6rem;font-weight:600;display:inline-block}.state.ok{background:var(--color-success-bg);color:var(--color-success)}.state.error{background:var(--color-danger-bg);color:var(--color-danger)}.alert.warn{color:#6b4a00;background:#fdf0d5}.shell{grid-template-columns:15rem 1fr;min-height:100vh;display:grid}.topbar{display:none}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;gap:1rem;height:100dvh;padding:1.25rem 1rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.practice{padding:0 .6rem;font-weight:600;line-height:1.35;position:relative}.practice.is-large{white-space:nowrap;font-size:1.2em}.practice-probe{visibility:hidden;pointer-events:none;white-space:nowrap;width:0;height:0;font-size:1.2rem;position:absolute;top:0;left:0;overflow:hidden}.practice-probe:before{content:attr(data-name)}.sidebar nav ul,.account-menu ul{gap:.125rem;margin:0;padding:0;list-style:none;display:grid}.main-nav a{color:var(--color-text);border-radius:6px;padding:.45rem .6rem;font-weight:500;text-decoration:none;display:block}.main-nav a:hover{background:var(--color-bg)}.main-nav a[aria-current]{background:var(--color-info-bg);color:var(--color-primary-hover);box-shadow:inset 3px 0 0 var(--color-brand);font-weight:600}.main-nav .nav-secondary{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.75rem}.nav-setup:after{content:"";background:var(--color-accent);vertical-align:middle;border-radius:50%;width:.45rem;height:.45rem;margin-left:.5rem;display:inline-block}.account{margin-top:auto;position:relative}button.account-toggle{text-align:left;width:100%;color:var(--color-text);border:1px solid var(--color-border);background:0 0;border-radius:8px;gap:.1rem;padding:.6rem 2rem .6rem .6rem;display:grid;position:relative}button.account-toggle:hover,button.account-toggle[aria-expanded=true]{background:var(--color-bg)}button.account-toggle:after{content:"";border-left:2px solid var(--color-muted);border-top:2px solid var(--color-muted);width:.45rem;height:.45rem;position:absolute;top:50%;right:.85rem;transform:translateY(-25%)rotate(45deg)}button.account-toggle[aria-expanded=true]:after{transform:translateY(-75%)rotate(225deg)}.account-name,.account-detail{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-detail{color:var(--color-muted);font-size:.8rem;font-weight:400}.account-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;gap:.125rem;padding:.35rem;display:grid;position:absolute;bottom:calc(100% + .4rem);left:0;right:0;box-shadow:0 8px 24px #1f2a2b24}.account-menu[hidden]{display:none}.account-menu a,.account-menu button.account-logout{text-align:left;width:100%;color:var(--color-text);background:0 0;border-radius:6px;padding:.45rem .6rem;font-weight:400;text-decoration:none;display:block}.account-menu a:hover,.account-menu button.account-logout:hover{background:var(--color-bg)}.account-menu form{border-top:1px solid var(--color-border);padding-top:.125rem;display:block}.content{min-width:0;max-width:70rem;padding:2rem}.content:has(.calendar-toolbar){max-width:none}.main-nav .nav-topics{border-left:1px solid var(--color-border);margin:.125rem 0 .25rem .9rem;padding-left:.5rem}.main-nav .nav-topics a{padding:.3rem .6rem;font-weight:400}.main-nav .nav-topics a[aria-current]{font-weight:600}.main-nav a[aria-current]:has(+.nav-topics){box-shadow:none;background:0 0}.tabs{border-bottom:1px solid var(--color-border);scrollbar-width:none;margin-bottom:1.5rem;position:relative;overflow-x:auto}.tabs ul{gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.tabs a{white-space:nowrap;color:var(--color-muted);border-bottom:3px solid #0000;padding:.5rem .1rem .6rem;font-weight:500;text-decoration:none;display:block}.tabs a:hover{color:var(--color-text)}.tabs a[aria-current]{color:var(--color-primary-hover);border-bottom-color:var(--color-brand);font-weight:600}@media (max-width:48rem){.shell{grid-template-rows:auto 1fr;grid-template-columns:1fr}.topbar{z-index:20;background:var(--color-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;height:3.5rem;padding:0 1rem;display:flex;position:sticky;top:0}.topbar .brand{margin:0}.topbar .logo{width:104px}button.menu-toggle{color:var(--color-text);border:1px solid var(--color-border);background:0 0;align-items:center;gap:.5rem;padding:.4rem .75rem;display:inline-flex}button.menu-toggle:hover{background:var(--color-bg)}.menu-icon,.menu-icon:before,.menu-icon:after{background:currentColor;border-radius:1px;width:1rem;height:2px;display:block}.menu-icon{position:relative}.menu-icon:before,.menu-icon:after{content:"";position:absolute;left:0}.menu-icon:before{top:-5px}.menu-icon:after{top:5px}.sidebar,.sidebar .brand{display:none}.shell[data-menu=open] .sidebar{z-index:30;width:min(20rem,85vw);height:auto;padding-top:1rem;display:flex;position:fixed;top:3.5rem;bottom:0;left:0;box-shadow:8px 0 24px #1f2a2b2e}.shell[data-menu=open]:after{content:"";z-index:25;background:#1f2a2b59;position:fixed;inset:3.5rem 0 0}.content{padding:1.25rem 1rem}}table{border-collapse:collapse;background:var(--color-surface);width:100%}th,td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:.6rem}dl{grid-template-columns:max-content 1fr;gap:.25rem 1rem;display:grid}dt{color:var(--color-muted)}dd{margin:0}.codes{grid-template-columns:repeat(2,max-content);gap:.25rem 1.5rem;font-family:ui-monospace,monospace;display:grid}.inline-form{align-items:center;gap:.5rem;display:flex}h3{margin:.75rem 0 .25rem;font-size:1rem}textarea{resize:vertical}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.page-head h1{margin:0}.content form+table{margin-top:1.5rem}.content form>fieldset{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.25rem 1.25rem}.content fieldset fieldset{border:0;padding:0}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.25rem}.stack{gap:.5rem;margin-bottom:1rem;display:grid}.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:40rem){.grid-2,.grid-3{grid-template-columns:1fr}}.checks{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.checks.check-grid{grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));display:grid}.rows{gap:.75rem;display:grid}.row{flex-wrap:wrap;align-items:start;gap:.75rem;display:flex}.align-end{align-self:end}.field-error{color:var(--color-danger);font-size:.875rem;font-weight:500}[aria-invalid=true]{border-color:var(--color-danger)!important}button.link{color:var(--color-primary);background:0 0;padding:.2rem .3rem;font-weight:500;text-decoration:underline}button.link:hover{color:var(--color-primary-hover);background:0 0}button.danger{background:var(--color-danger)}button.danger:hover{background:#86281a}.muted{color:var(--color-muted)}.badge{background:var(--color-info-bg);border-radius:999px;padding:.1rem .5rem;font-size:.8rem;display:inline-block}.badge.after{white-space:nowrap;margin-inline-start:.5rem}.badge.warn{color:#6b4a00;background:#fdf0d5}.color-dot{vertical-align:middle;border-radius:50%;width:.8rem;height:.8rem;display:inline-block}.colors{flex-wrap:wrap;gap:.5rem;display:flex}.color-choice{cursor:pointer;align-items:center;gap:.25rem;display:inline-flex}.color-choice .color-dot{width:1.4rem;height:1.4rem}.week{width:auto}.week th,.week td{padding:.4rem .6rem}.breaks{gap:.35rem;display:grid}.break{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.list{gap:.25rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem .75rem;display:flex}.inline-form.wrap{flex-wrap:wrap;align-items:end}details>summary{cursor:pointer;margin:.5rem 0;font-weight:600}.steps{flex-wrap:wrap;gap:.5rem 1.5rem;padding-left:1.25rem;display:flex}.steps [aria-current=step] a{color:var(--color-text);font-weight:700;text-decoration:none}input.narrow{width:6.5rem}code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:.2rem .4rem}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-bottom:1rem;display:flex}.calendar-title{margin-left:.5rem}.button.secondary-link{color:var(--color-primary);border:1px solid var(--color-border);background:0 0;padding:.45rem .8rem}.button.secondary-link:hover{background:var(--color-info-bg)}.segmented{border:1px solid var(--color-border);border-radius:8px;display:inline-flex;overflow:hidden}.segmented a{color:var(--color-text);border-right:1px solid var(--color-border);padding:.45rem .8rem;text-decoration:none}.segmented a:last-child{border-right:0}.segmented a[aria-current=page]{background:var(--color-primary);color:var(--color-on-primary)}.segmented button{border:0;border-right:1px solid var(--color-border);color:var(--color-text);background:0 0;border-radius:0;padding:.45rem .8rem}.segmented button:last-child{border-right:0}.segmented button[aria-pressed=true]{background:var(--color-primary);color:var(--color-on-primary)}.time-grid{--hours-width:3.5rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);overflow-x:auto}.time-grid.busy{cursor:progress;opacity:.8}.tg-head,.tg-body{grid-template-columns:var(--hours-width) repeat(var(--columns), minmax(7.5rem, 1fr));min-width:calc(var(--hours-width) + var(--columns) * 7.5rem);display:grid}.tg-head{z-index:3;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.tg-col-head{border-left:1px solid var(--color-border);gap:.15rem;padding:.4rem .5rem;font-weight:600;display:grid}.tg-body,.tg-hours{position:relative}.tg-hour{color:var(--color-muted);font-size:.75rem;position:absolute;right:.4rem;transform:translateY(-.5em)}.tg-hour:first-child{transform:none}.tg-col{border-left:1px solid var(--color-border);touch-action:pan-y;position:relative}.tg-col.holiday,.month td.holiday{background:repeating-linear-gradient(45deg,#f4f1e6,#f4f1e6 6px,#fbf9f2 6px 12px)}.tg-col.drop-target:after{content:"";box-shadow:inset 0 0 0 2px var(--color-primary);pointer-events:none;background:#4f8a8b1f;position:absolute;inset:0}.tg-line{pointer-events:none;border-top:1px solid #ecf0f0;position:absolute;left:0;right:0}.tg-shade{color:var(--color-muted);pointer-events:none;padding:.15rem .3rem;font-size:.75rem;position:absolute;left:0;right:0;overflow:hidden}.tg-shade.absence{background:repeating-linear-gradient(135deg,#eceeed,#eceeed 5px,#f6f7f6 5px 10px)}.tg-shade.blocker{background:repeating-linear-gradient(135deg,#f9e9d9,#f9e9d9 5px,#fdf5ec 5px 10px)}.tg-shade.external{background:repeating-linear-gradient(45deg,#e4e6e5,#e4e6e5 4px,#f1f2f1 4px 8px)}.tg-shade.pending{z-index:1;pointer-events:auto;color:var(--color-text);border:2px dashed var(--color-muted);background:var(--color-surface);border-radius:4px;text-decoration:none}.tg-pending{margin-right:.25rem;font-weight:600}.task-bell{float:right;margin:0 0 .5rem .5rem;position:relative}.task-bell-button{align-items:center;gap:.25rem;display:inline-flex}.task-bell-count{color:#fff;background:var(--color-danger,#b3261e);border-radius:999px;min-width:1.25rem;padding:0 .3rem;font-size:.75rem;font-weight:700}.task-bell-list{z-index:20;width:min(24rem,90vw);margin-top:.25rem;position:absolute;right:0}.tg-event{z-index:1;color:var(--color-text);background:var(--color-info-bg);border:1px solid #c5d9d9;border-left:4px solid var(--color-brand);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;padding:.2rem .35rem;font-size:.8rem;line-height:1.25;text-decoration:none;position:absolute;overflow:hidden}.tg-event:hover{background:#d9e8e8}.tg-ghost{z-index:3;width:max-content;min-width:calc(100% - 4px);color:var(--color-primary);border:1px dashed var(--color-primary);pointer-events:none;white-space:nowrap;background:#eef5f5;border-radius:6px;flex-direction:column;padding:.15rem .4rem;font-size:.8rem;line-height:1.2;display:flex;position:absolute;left:2px;box-shadow:0 2px 6px #00000014}.tg-ghost.end{left:auto;right:2px}.tg-ghost strong{font-size:.9rem}.tg-order{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;background:var(--color-surface);border:1px solid #c5d9d9;border-radius:999px;max-width:100%;padding:0 .3rem;font-size:.72rem;line-height:1.15;display:inline-block;overflow:hidden}.tg-was{color:var(--color-muted);font-size:.75rem;display:block}.tg-event.dragging{z-index:20;white-space:normal;pointer-events:none;opacity:.95;cursor:grabbing;overflow:visible;box-shadow:0 4px 14px #0000002e}.tg-event.status-completed{opacity:.7}.tg-event.status-no_show{background:var(--color-danger-bg)}.tg-preview{background:var(--color-primary);color:var(--color-on-primary);white-space:nowrap;margin:-.2rem -.35rem .15rem;padding:.15rem .35rem;display:block}.tg-services{color:var(--color-muted);display:block}.month{table-layout:fixed}.month td{border:1px solid var(--color-border);height:6.5rem}.month-day{font-weight:600;text-decoration:none}.month-list{margin:.25rem 0 0;padding:0;font-size:.8rem;list-style:none}.month-list li{border-left:3px solid var(--color-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.15rem;padding-left:.3rem;overflow:hidden}.plain{margin:0;padding-left:1.1rem}.pre-line{white-space:pre-line}.filters{flex-wrap:wrap;align-items:end;gap:.75rem 1rem;margin-bottom:.5rem;display:flex}.filters label:has(>input[type=search]){flex:24rem;max-width:40rem}.filters input[type=search]{width:100%;min-width:0}.alert.important{border-left:4px solid var(--color-accent);font-weight:600}.snippet{align-items:flex-start;gap:.5rem;display:flex}.snippet textarea{resize:vertical;flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}.widget-preview{margin:0}.widget-preview-page{color:#1d2626;background:#fff;border:1px solid #d5dddd;border-top:4px solid;border-radius:10px;gap:.75rem;padding:1rem;display:grid}.widget-preview-card{border:1px solid;border-radius:10px;padding:.6rem .75rem;font-weight:600}.widget-preview-slots{gap:.5rem;display:flex}.widget-preview-slots span{border:1px solid;border-radius:8px;padding:.35rem .7rem;font-weight:600}.widget-preview-button{border-radius:8px;justify-self:start;padding:.55rem 1rem;font-weight:600}.field{gap:.25rem;margin-bottom:.75rem;display:grid}.table-scroll{overflow-x:auto}.content form[data-dirty]:not([data-unsaved=leave]) button[type=submit]:not(.secondary):not(.danger):not(.link){box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px var(--color-accent)}.unsaved-bar{z-index:15;background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;max-width:66rem;padding:.7rem .9rem .7rem 1.1rem;display:flex;position:fixed;bottom:1rem;left:17rem;right:2rem;box-shadow:0 8px 24px #1f2a2b29}.unsaved-bar p{align-items:center;gap:.6rem;margin:0;font-weight:600;display:flex}.unsaved-dot{background:var(--color-accent);border-radius:50%;width:.55rem;height:.55rem}.unsaved-actions{gap:.5rem;display:flex}.shell:has(.unsaved-bar) .content{padding-bottom:6rem}@media (max-width:48rem){.unsaved-bar{bottom:.75rem;left:.75rem;right:.75rem}}@media (prefers-reduced-motion:no-preference){.unsaved-bar{animation:.16s ease-out unsaved-in}@keyframes unsaved-in{0%{opacity:0;transform:translateY(.75rem)}}}.gift-page{max-width:40rem;margin:2rem auto;padding:0 1rem}.gift-card{border:2px solid var(--color-primary);text-align:center;background:var(--color-surface,#fff);border-radius:16px;padding:2rem}.gift-practice{color:var(--color-primary);font-weight:600}.gift-card h1{margin:.25rem 0 1rem}.gift-for,.gift-name{font-size:1.25rem}.gift-message{max-width:28rem;margin:1rem auto;font-style:italic}.gift-facts{text-align:left;grid-template-columns:max-content max-content;justify-content:center;gap:.25rem 1rem;display:grid}.gift-facts dd{margin:0}.gift-code{letter-spacing:.08em;font-size:1.4rem}@media print{.sidebar,.topbar,.tabs,.unsaved-bar,.no-print{display:none!important}.shell{display:block}.content{max-width:none;padding:0}html,body{background:#fff}}.tg-event.tg-session{background:repeating-linear-gradient(135deg, var(--color-info-bg), var(--color-info-bg) 8px, var(--color-surface) 8px, var(--color-surface) 16px);border-left-color:var(--color-accent);cursor:pointer}.kpis{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.75rem;margin:0;display:grid}.kpis>div{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem}.kpis dt{font-weight:600}.kpis dd{margin:0}.kpis .kpi{font-variant-numeric:tabular-nums;font-size:1.6rem}:root{--color-chart:#00918f;--color-chart-active:#00706e;--color-chart-grid:#e6ebeb}.chart{background:var(--color-surface);gap:.25rem;padding:.6rem;display:grid}.chart-plot{height:13rem;position:relative}.chart-grid,.chart-bars{position:absolute;inset:1.25rem 0 0 4.5rem}.chart-tick{border-top:1px solid var(--color-chart-grid);position:absolute;left:0;right:0}.chart-tick span{color:var(--color-muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-right:.4rem;font-size:.75rem;position:absolute;right:100%;transform:translateY(-50%)}.chart-bars{display:flex}.chart-slot{flex:1 1 0;min-width:0;display:flex;position:relative}.chart-slot.is-now:before{content:"";border-left:1px solid var(--color-muted);position:absolute;top:-1.25rem;bottom:0;left:0}.chart-now{color:var(--color-muted);white-space:nowrap;font-size:.7rem;position:absolute;top:-1.25rem;left:.25rem}button.chart-hit,button.chart-hit:hover{color:inherit;font-weight:inherit;cursor:default;background:0 0;border:0;border-radius:0;flex:1;justify-content:center;align-items:flex-end;margin:0;padding:0 1px;display:flex}.chart-hit:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.chart-bar{background:var(--color-chart);border-radius:4px 4px 0 0;width:min(24px,100%);display:block;position:relative}.chart-hit.is-active .chart-bar{background:var(--color-chart-active)}.chart-peak{color:var(--color-text);white-space:nowrap;padding-bottom:2px;font-size:.75rem;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.chart-tooltip{z-index:2;background:var(--color-surface);border:1px solid var(--color-border);white-space:nowrap;pointer-events:none;border-radius:6px;gap:.1rem;padding:.4rem .6rem;font-size:.8rem;display:grid;position:absolute;top:0;left:50%;box-shadow:0 2px 8px #0000001f}.chart-tooltip.is-left{left:auto;right:50%}.chart-tooltip span{color:var(--color-muted)}.chart-axis{color:var(--color-muted);margin-left:4.5rem;font-size:.75rem;display:flex}.chart-axis span{text-align:center;white-space:nowrap;flex:1 1 0;min-width:0;overflow:visible}.review-page{max-width:40rem;margin:2rem auto;padding:0 1rem}.review-card{border:1px solid var(--color-border,#d0d7de);background:var(--color-surface,#fff);border-radius:16px;padding:1.5rem}.connect-providers{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.connect-providers .hint{margin-block:.35rem 0}.review-stars{border:0;gap:.25rem;padding:0;display:flex}.review-stars legend{margin-bottom:.5rem}.review-stars label{cursor:pointer;color:#c8ccd0;font-size:2rem;line-height:1}.review-stars label.on{color:#e0a100}.review-stars input{opacity:0;width:1px;height:1px;position:absolute}.review-stars label:focus-within{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}.review-optout{margin-top:1.5rem}.review-list{padding:0;list-style:none}.review-item{border-top:1px solid var(--color-border,#d0d7de);padding:.75rem 0}.review-item strong{color:#e0a100}.review-empty{color:#c8ccd0}.review-actions{gap:.5rem;display:flex}.embed-preview{border:1px dashed var(--color-border);border-radius:8px;min-height:2rem;padding:.75rem 1rem}.roster{border-collapse:collapse;font-size:.85rem}.roster th,.roster td{border:1px solid var(--color-border,#d0d7de);vertical-align:top;padding:.25rem}.roster th[scope=row]{white-space:nowrap;text-align:left}.roster-week td{min-width:7.5rem}.roster-month td{min-width:2.75rem}.roster-cell{position:relative}.roster-holiday{background:var(--color-surface-muted,#f1f3f2)}.roster-absent{background-image:repeating-linear-gradient(135deg,#0000 0 6px,#0000000f 6px 12px)}.roster .roster-button,.roster .roster-button:hover,.roster .roster-button[aria-disabled=true]{text-align:left;width:100%;min-height:2rem;font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:6px;flex-wrap:wrap;gap:.2rem;padding:.15rem;display:flex}.roster .roster-button:hover,.roster .roster-button:focus-visible,.roster .roster-button[aria-expanded=true]{border-color:var(--color-primary);box-shadow:none}.roster-shift{color:#fff;border-radius:999px;padding:0 .35rem;font-weight:600;display:inline-block}.roster-chip{cursor:grab}.roster-override{color:var(--color-muted);font-style:italic}.roster-regular{color:var(--color-muted)}.roster-absence{font-size:.75rem}.roster-closed{color:var(--color-danger,#a03f3f)}.roster-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.roster-menu{background:var(--color-surface,#fff);border:1px solid var(--color-border,#d0d7de);border-radius:8px;flex-direction:column;gap:.25rem;min-width:10rem;margin-top:.25rem;padding:.4rem;display:flex;box-shadow:0 4px 14px #0000001f}.roster-menu button{text-align:left}
