:root{--paper:#f7f4ef;--paper-2:#f1ece4;--surface:#fff;--ink:#211d1a;--ink-soft:#5f574f;--muted:#938a80;--line:#e6ddd2;--line-strong:#d8cdbe;--accent:#a24e5b;--accent-ink:#7d3a45;--accent-tint:#f4e7e9;--accent-tint-2:#ecd7db;--ok:#3f7d5b;--ok-tint:#e5f0e9;--warn:#b26a2b;--warn-tint:#f7ead9;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px rgba(33,29,26,.04),0 8px 24px -12px rgba(33,29,26,.18);--shadow-sm:0 1px 2px rgba(33,29,26,.05);--font-display:var(--font-fraunces),Georgia,serif;--font-body:var(--font-hanken),system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;max-width:100%;overflow-x:clip}body{background:var(--paper);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-image:radial-gradient(1200px 600px at 100% -10%,var(--accent-tint) 0,transparent 55%);background-attachment:fixed}body,h1,h2,h3{color:var(--ink)}h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;border-right:1px solid var(--line);background:hsla(0,0%,100%,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:26px 18px;display:flex;flex-direction:column;gap:6px}.brand{display:flex;align-items:baseline;gap:8px;padding:4px 10px 22px}.brand-mark{font-family:var(--font-display);font-size:22px;letter-spacing:-.02em}.brand-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;margin-left:-2px}.brand-tenant{font-size:12px;color:var(--muted);letter-spacing:.02em}.brand-tenant-logo{display:block;max-width:140px;max-height:40px;width:auto;height:auto;object-fit:contain}.nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding:14px 12px 6px}.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--ink-soft);font-weight:500;transition:background .15s,color .15s}.nav-item:hover{background:var(--paper-2);color:var(--ink)}.nav-item:active{background:var(--accent-tint-2)}.nav-item:focus-visible{outline:none;color:var(--ink);box-shadow:0 0 0 3px var(--accent-tint)}.nav-item[data-active=true]{background:var(--accent-tint);color:var(--accent-ink)}.nav-item svg{width:18px;height:18px;flex:none}.sidebar-foot{margin-top:auto;padding:12px;font-size:12px;color:var(--muted)}.main{padding:40px clamp(24px,5vw,64px) 80px;max-width:1120px;width:100%}.mobscrim,.mobtop{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}.page-head h1{font-size:clamp(28px,4vw,38px);line-height:1.05}.page-head-compact{margin-bottom:16px}.page-head-compact h1{font-size:clamp(22px,3vw,28px)}.page-head-compact .page-sub{margin-top:2px;font-size:13.5px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent-ink);margin-bottom:8px}.page-sub{color:var(--ink-soft);margin-top:8px;max-width:52ch}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:22px}.stack{display:flex;flex-direction:column;gap:16px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:16px;gap:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .05s}.btn:hover{background:var(--paper-2)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-ink)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--paper-2)}.btn-danger{color:var(--accent-ink);border-color:var(--accent-tint-2);background:var(--accent-tint)}.btn-danger:hover{background:var(--accent-tint-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.btn[data-busy=true]{cursor:progress}.btn[data-busy=true]:before{content:"";width:13px;height:13px;flex:none;border-radius:50%;border:2px solid;border-top:2px solid transparent;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.btn-sm{padding:7px 12px;font-size:13px}.field{display:flex;flex-direction:column;gap:6px}.field label,.label{font-size:13px;font-weight:600;color:var(--ink-soft)}.hint{font-size:12px;color:var(--muted)}input[type=date],input[type=email],input[type=number],input[type=tel],input[type=text],input[type=time],select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:16px;gap:16px}.svc{position:relative}.svc-trigger{width:100%;display:grid;grid-template-columns:1fr 5.5rem 5rem 16px;align-items:center;grid-gap:14px;gap:14px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.svc-trigger:hover{background:var(--paper-2)}.svc-trigger:focus-visible,.svc[data-open=true] .svc-trigger{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.svc-trigger[data-placeholder=true] .svc-name{color:var(--ink-soft)}.svc-chev{color:var(--muted);transition:transform .18s ease}.svc[data-open=true] .svc-chev{transform:rotate(180deg)}.svc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svc-dur{text-align:right;color:var(--ink-soft);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-price{text-align:right;color:var(--accent-ink);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-inactive{color:var(--muted);font-weight:400}.svc-menu{position:absolute;z-index:40;top:calc(100% + 6px);left:0;right:0;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:320px;overflow-y:auto;animation:svc-pop .14s ease}@keyframes svc-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.svc-opt{width:100%;display:grid;grid-template-columns:1fr 5.5rem 5rem;align-items:center;grid-gap:14px;gap:14px;padding:9px 10px;border-radius:8px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;transition:background .12s}.svc-opt-empty{grid-template-columns:1fr;color:var(--ink-soft)}.svc-opt[data-active=true]{background:var(--paper-2)}.svc-opt[data-selected=true]{background:var(--accent-tint)}.svc-opt[data-selected=true] .svc-dur,.svc-opt[data-selected=true] .svc-name{color:var(--accent-ink)}.bbsel{position:relative;width:100%}.bbsel-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.bbsel-trigger:hover{background:var(--paper-2)}.bbsel-trigger:focus-visible,.bbsel[data-open=true] .bbsel-trigger{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.bbsel-trigger:disabled{opacity:.6;cursor:not-allowed}.bbsel-trigger[data-placeholder=true] .bbsel-value{color:var(--muted)}.bbsel-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bbsel-chev{color:var(--muted);flex:none;transition:transform .18s ease}.bbsel[data-open=true] .bbsel-chev{transform:rotate(180deg)}.bbsel-menu{position:absolute;z-index:55;top:calc(100% + 6px);left:0;right:0;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:320px;overflow-y:auto;animation:svc-pop .14s ease}.bbsel-opt{width:100%;display:block;padding:9px 10px;border-radius:8px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;transition:background .12s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bbsel-opt[data-active=true]{background:var(--paper-2)}.bbsel-opt[data-selected=true]{background:var(--accent-tint);color:var(--accent-ink)}.bbsel-sm .bbsel-trigger{padding:5px 8px;font-size:12px;font-weight:400;color:var(--muted);border-color:var(--line)}.bbsel-sm .bbsel-opt{font-size:13px}.toggle{position:relative;width:44px;height:26px;border-radius:999px;background:var(--line-strong);border:none;cursor:pointer;transition:background .18s;flex:none}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .18s}.toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-tint)}.toggle[data-on=true]{background:var(--accent)}.toggle[data-on=true]:after{transform:translateX(18px)}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.01em}.badge-online{background:var(--paper-2);color:var(--ink-soft)}.badge-walkin{background:var(--accent-tint);color:var(--accent-ink)}.badge-phone{background:#e7edf2;color:#375a72}.badge-overrule,.badge-pending{background:var(--warn-tint);color:var(--warn)}.badge-noshow{background:var(--accent-tint-2);color:var(--accent-ink)}.badge-new{background:var(--accent);color:#fff;box-shadow:0 1px 2px rgba(33,29,26,.12)}.badge-new-dot{width:6px;height:6px;border-radius:999px;background:#fff;animation:new-pulse 1.6s ease-in-out infinite}@keyframes new-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@media (prefers-reduced-motion:reduce){.badge-new-dot{animation:none}}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.new-banner{display:flex;align-items:center;gap:12px;padding:13px 16px;margin-bottom:20px;border:1px solid var(--accent-tint-2);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-tint);color:var(--accent-ink)}.new-banner-dot{width:9px;height:9px;flex:none;border-radius:999px;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent);animation:new-pulse 1.6s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.new-banner-dot{animation:none}}.new-banner-text{flex:1 1;min-width:0;font-size:14px}.new-banner-actions{flex:none;display:flex;align-items:center;gap:8px}.new-banner-btn{flex:none;background:var(--surface);border-color:var(--accent-tint-2);color:var(--accent-ink)}.new-banner-btn:hover{background:#fff;border-color:var(--accent)}.appt-new{border-color:var(--accent-tint-2);border-left:3px solid var(--accent);background:linear-gradient(to right,color-mix(in srgb,var(--accent) 6%,var(--surface)),var(--surface) 40%)}.appt-new:hover{border-color:var(--accent)}.day-group{margin-bottom:26px}.day-head{display:flex;align-items:baseline;gap:10px;padding:0 4px 10px;border-bottom:1px solid var(--line);margin-bottom:12px}.day-head h2{font-size:20px;text-transform:capitalize}.day-count{font-size:13px;color:var(--muted)}.appt{display:grid;grid-template-columns:118px 1fr auto;grid-gap:16px;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:8px;transition:border-color .15s,box-shadow .15s}.appt:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.appt-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}.appt-time small{display:block;font-weight:500;color:var(--muted);font-size:12px}.appt-main{min-width:0}.appt-name{font-weight:600}.appt-meta{font-size:13px;color:var(--ink-soft);gap:8px;flex-wrap:wrap;margin-top:3px}.appt-meta,.appt-side{display:flex;align-items:center}.appt-side{gap:10px}.appt-noshow{opacity:.68}.appt-noshow .appt-name{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.appt-menu{position:relative}.appt-menu-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:172px;padding:6px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md,0 8px 24px rgba(0,0,0,.12));display:flex;flex-direction:column;gap:2px}.appt-menu-item{display:flex;align-items:center;width:100%;padding:9px 11px;border:none;background:transparent;border-radius:8px;font:inherit;font-weight:600;color:var(--ink);text-align:left;cursor:pointer}.appt-menu-item:hover{background:var(--paper-2)}.appt-menu-item.is-danger{color:var(--accent-ink)}.appt-menu-item.is-danger:hover{background:var(--accent-tint)}.agenda-bar{justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 18px}.agenda-bar,.agenda-bar-mid{display:flex;align-items:center}.agenda-bar-mid{flex-direction:column;gap:2px;text-align:center;flex:1 1;min-width:160px}.agenda-range{font-family:var(--font-display);font-size:18px;text-transform:capitalize}.agenda-jump{width:auto;padding:7px 10px!important;font-size:13px}.agenda-staff-filter{display:flex;align-items:center;gap:10px;margin-top:12px;min-width:0}.agenda-staff-filter-lbl{flex-shrink:0}.agenda-staff-scroll{display:flex;align-items:flex-start;gap:6px;overflow-x:auto;padding-bottom:4px;min-width:0;scrollbar-width:thin}.staff-chip{display:flex;flex-direction:column;align-items:center;gap:4px;width:60px;flex-shrink:0;padding:4px 2px;border:none;background:none;cursor:pointer;color:var(--ink-soft)}.staff-chip-av{border:2px solid transparent;transition:border-color .12s ease,opacity .12s ease;opacity:.65}.staff-avatar.staff-chip-all{display:flex;align-items:center;justify-content:center;background:var(--paper-2);color:var(--ink-soft)}.staff-chip-all svg{width:18px;height:18px}.staff-chip:hover .staff-chip-av{opacity:1;border-color:var(--line-strong)}.staff-chip-on .staff-chip-av{opacity:1;border-color:var(--accent)}.staff-chip-name{max-width:100%;font-size:11px;line-height:1.2;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-chip-on .staff-chip-name{color:var(--accent);font-weight:600}.day-avail{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:-2px 0 10px;font-size:13px;color:var(--ink-soft)}.day-avail-name{font-weight:600;color:var(--accent)}.appt-clickable{cursor:pointer}.appt-clickable:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.agenda-empty-day{padding:12px 16px;margin-bottom:8px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--muted);font-size:13.5px}.tl-scroll{max-height:70vh;overflow-y:auto;overscroll-behavior:contain;border-radius:12px}.tl{display:grid;grid-template-columns:58px 1fr;grid-gap:8px;gap:8px}.tl-axis{position:relative}.tl-axis-hour{position:absolute;right:8px;transform:translateY(-50%);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.tl-track{position:relative;border-left:1px solid var(--line)}.tl-line{position:absolute;left:0;right:0;border-top:1px solid var(--line);pointer-events:none}.tl-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13.5px}.tl-track[data-avail-mode]{background:var(--paper-2)}.tl-avail{left:0;right:0;background:var(--paper);box-shadow:inset 3px 0 0 var(--accent)}.tl-avail,.tl-avail-label{position:absolute;pointer-events:none}.tl-avail-label{top:3px;left:10px;font-size:11px;font-weight:600;color:var(--accent)}.tl-now{position:absolute;left:0;right:0;border-top:2px solid var(--accent);pointer-events:none;z-index:4}.tl-now-dot{position:absolute;left:-5px;top:-5px;width:8px;height:8px;border-radius:999px;background:var(--accent)}.tl-appt{position:absolute;overflow:visible;display:flex;gap:8px;padding:7px 10px;border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}.tl-appt:hover{border-color:var(--line-strong);box-shadow:var(--shadow);z-index:6}.tl-appt.appt-clickable:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.tl-appt-body{min-width:0;flex:1 1;display:flex;flex-direction:column;gap:2px;overflow:hidden}.tl-appt-time{font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-soft)}.tl-appt-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-appt .appt-side{flex:none;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;gap:6px}.tl-appt-compact{padding:4px 10px;align-items:center}.tl-appt-compact .tl-appt-body{flex-direction:row;align-items:baseline;gap:8px}.tl-appt-compact .tl-appt-time{font-size:11px}@media (max-width:560px){.tl{grid-template-columns:44px 1fr;gap:4px}.tl-axis-hour{right:4px;font-size:11px}.tl-appt{padding:6px 8px}.tl-appt .appt-side{gap:4px}}.tl-week{overflow:auto}.tl-week-hint{display:none;margin:0 0 8px;font-size:12.5px;color:var(--muted)}.tl-week-grid{min-width:calc(58px + 7 * 116px)}.tl-week-body,.tl-week-head{display:grid;grid-template-columns:58px repeat(7,minmax(116px,1fr));grid-gap:8px;gap:8px}.tl-week-head{position:-webkit-sticky;position:sticky;top:0;z-index:7;background:var(--surface);padding-bottom:6px;border-bottom:1px solid var(--line)}.tl-week-colhead{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:4px 8px;border-radius:var(--radius-sm)}.tl-week-colhead.is-today{background:var(--accent-tint)}.tl-week-day{font-size:12px;font-weight:600;color:var(--muted);text-transform:capitalize}.tl-week-colhead.is-today .tl-week-day{color:var(--accent)}.tl-week-date{font-size:13px;font-weight:600;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tl-week-count{font-size:11px;font-weight:600;color:var(--muted)}.tl-week-body .tl-axis{border:none}.tl-week-col{border-left:1px solid var(--line)}.tl-week-col.is-today,.tl-week-col.is-today[data-avail-mode]{background:var(--accent-tint)}.tl-week-col .tl-appt{padding:5px 8px}.tl-week-col .tl-appt .appt-side{display:none}.modal-overlay{position:fixed;inset:0;background:rgba(33,29,26,.38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;z-index:50;animation:overlay-in .15s ease}@keyframes overlay-in{0%{opacity:0}}.modal{width:100%;max-width:620px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);animation:modal-in .16s ease;display:flex;flex-direction:column;max-height:calc(100dvh - 80px)}.modal-foot,.modal-head{flex:none}.modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:22px}.modal-body{padding:22px}.modal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-top:1px solid var(--line);background:var(--paper);border-radius:0 0 var(--radius) var(--radius)}.check-row{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.check-row input[type=checkbox]{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--accent);cursor:pointer}.check-row>span{font-weight:600;color:var(--ink)}.check-row small{display:block;font-weight:500;font-size:12.5px;color:var(--ink-soft);margin-top:2px}.slots{display:flex;flex-wrap:wrap;gap:8px}.slot{padding:8px 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;transition:all .12s}.slot:hover{border-color:var(--accent);color:var(--accent-ink)}.slot:active{transform:translateY(1px)}.slot:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.slot[data-active=true]{background:var(--accent);border-color:var(--accent);color:#fff}.alert{display:flex;gap:10px;padding:11px 14px;border-radius:var(--radius-sm);font-size:13.5px;border:1px solid transparent}.alert-warn{background:var(--warn-tint);color:#7a4a1c;border-color:#ecc9a0}.alert-info{background:var(--accent-tint);color:var(--accent-ink);border-color:var(--accent-tint-2)}.alert-ok{background:var(--ok-tint);color:#2c5a41;border-color:#b9d9c7}.row{display:grid;align-items:center;grid-gap:14px;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:none}.row-services{grid-template-columns:1fr 90px 100px 100px 168px}.row-services-nodep{grid-template-columns:1fr 90px 100px 168px}.row-head{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-manage-list .row-services,.svc-manage-list .row-services-nodep{padding:16px 20px;transition:background .15s}.svc-manage-list .row-services-nodep:not(.row-head):hover,.svc-manage-list .row-services:not(.row-head):hover{background:var(--paper)}.svc-manage-list .row-head{padding-top:14px;padding-bottom:12px}.svc-manage-list .svc-row{border-bottom:1px solid var(--line)}.svc-manage-list .svc-row .row-services,.svc-manage-list .svc-row .row-services-nodep,.svc-manage-list .svc-row:last-child{border-bottom:none}.svc-save-bar{display:flex;justify-content:flex-end;padding:0 20px 14px}.svc-manage-list .row-head .col-name{padding-left:11px}.svc-manage-list .row-head .col-num{text-align:right;padding-right:11px}.svc-manage-list .row-head .col-actief{text-align:right}.svc-manage-list input.num,.svc-manage-list input[type=text]{border-color:var(--line);background:var(--surface);padding:8px 10px;transition:border-color .15s,box-shadow .15s,background .15s}.svc-manage-list input[type=text]{font-weight:600}.svc-manage-list input.num{color:var(--ink-soft);text-align:right}.svc-manage-list input:hover{border-color:var(--line-strong);background:var(--surface)}.svc-manage-list input:focus{border-color:var(--accent);background:var(--surface)}.extras-manage input.num::-webkit-inner-spin-button,.extras-manage input.num::-webkit-outer-spin-button,.svc-manage-list input.num::-webkit-inner-spin-button,.svc-manage-list input.num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.extras-manage input.num[type=number],.svc-manage-list input.num[type=number]{-moz-appearance:textfield}.extras-manage input.num{text-align:right}.svc-new-head .col-name{padding-left:13px}.svc-new-head .col-num{text-align:right;padding-right:13px}.svc-new input.num{text-align:right}.svc-new input.num::-webkit-inner-spin-button,.svc-new input.num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.svc-new input.num[type=number]{-moz-appearance:textfield}.extra-field{display:flex;flex-direction:column;gap:4px;min-width:0}.field-mini{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.field-mini-soft{text-transform:none;letter-spacing:0;font-weight:400;opacity:.8}.svc-name-cell{display:flex;flex-direction:column;gap:4px;min-width:0}.svc-cat-input,.svc-cat-select,.svc-manage-list input.svc-cat-input{font-weight:400;font-size:12px;color:var(--muted)}.svc-cat-select{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:4px 8px;max-width:100%}.svc-cat-select:focus{border-color:var(--accent);outline:none}.svc-group-head{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:14px 20px 6px}.svc-group-empty{font-size:13px;color:var(--muted);padding:4px 20px 12px}.cat-row{display:flex;align-items:center;gap:8px}.svc-move{display:inline-flex;gap:2px}.svc-move-btn{min-width:26px;padding-left:6px;padding-right:6px;font-size:14px;line-height:1}.staff-head,.staff-head-main{display:flex;align-items:center;gap:8px}.staff-head-main{flex:1 1;min-width:0}.staff-head-actions,.staff-newrow{display:flex;align-items:center;gap:8px}.svc-cell{min-width:0}.svc-num-cap{display:none}.fin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 18px}.seg{display:inline-flex;background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:3px;gap:2px}.seg button{padding:7px 14px;border:none;background:transparent;border-radius:999px;font-weight:600;font-size:13px;color:var(--ink-soft);cursor:pointer;transition:background .15s,color .15s}.seg button:hover{color:var(--ink)}.seg button[data-active=true]{background:var(--surface);color:var(--accent-ink);box-shadow:var(--shadow-sm)}.seg button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-tint)}.fin-nav{display:flex;align-items:center;gap:10px}.fin-period{font-family:var(--font-display);font-size:18px;text-transform:capitalize;min-width:210px;text-align:center}.icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;color:var(--ink-soft);transition:background .15s,color .15s}.icon-btn:hover{background:var(--paper-2);color:var(--ink)}.icon-btn:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:16px;gap:16px}.kpi{padding:20px 22px}.kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600}.kpi-value{font-family:var(--font-display);font-size:30px;line-height:1.1;margin-top:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-sub{font-size:12.5px;color:var(--ink-soft);margin-top:5px}.row-fin{grid-template-columns:1fr 90px 130px}.row-fin .num{text-align:right}.fin-notcounted{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px 24px;gap:16px 24px}.fin-cat[data-open=true]{grid-column:1/-1}.fin-cat-head{display:block;width:100%;text-align:left;background:none;border:0;padding:0;cursor:pointer;color:inherit}.fin-cat-head:disabled{cursor:default}.fin-cat-toggle{display:inline-block;margin-left:8px;font-weight:600;color:var(--accent-ink)}.fin-cat-list{list-style:none;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;grid-gap:6px;gap:6px}.fin-cat-list li{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}.fin-cat-name{font-weight:500}.fin-cat-time{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.fin-disclaimer{margin:4px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--muted)}.fin-disclaimer strong{font-weight:600;color:var(--ink-soft)}.empty{text-align:center;padding:48px 20px;color:var(--muted)}.empty strong{display:block;color:var(--ink-soft);font-family:var(--font-display);font-size:19px;margin-bottom:6px}.day-hours{display:grid;grid-template-columns:120px auto 1fr;align-items:start;grid-gap:14px;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.day-hours:last-child{border-bottom:none}.day-hours .day-name,.day-hours .toggle{margin-top:6px}.day-hours .day-name{font-weight:600;text-transform:capitalize}.day-blocks{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.day-block-row{display:flex;align-items:center;gap:8px;color:var(--ink-soft)}.day-block-row input[type=time]{width:108px}.block-remove{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.block-remove:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.block-remove:disabled{opacity:.35;cursor:not-allowed}.block-add{align-self:flex-start;margin-top:2px;padding:2px 0;background:none;border:none;color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.block-add:hover{text-decoration:underline}.day-closed{margin-top:6px;color:var(--muted);font-style:italic}.rooster{display:flex;flex-direction:column;gap:10px}.rooster-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rooster-body{display:grid;grid-template-columns:minmax(0,1fr) 288px;align-items:start;grid-gap:14px;gap:14px}.rooster-cal{min-width:0}.rooster-cal-wd{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;margin-bottom:4px}.rooster-cal-wd span{text-align:center;font-size:11px;color:var(--muted)}.rooster-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.rooster-cal-grid[data-loading]{opacity:.5;pointer-events:none}.rooster-cal-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:36px;padding:2px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;transition:border-color .12s ease,background .12s ease}.rooster-cal-day:hover{border-color:var(--line-strong)}.rooster-cal-day[data-working]{background:var(--paper-2);color:var(--ink)}.rooster-cal-day[data-today]{font-weight:700}.rooster-cal-day[data-today]:before{content:"";position:absolute;inset:0;border-radius:8px;box-shadow:inset 0 0 0 1px var(--line-strong)}.rooster-cal-day[data-selected]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--ink)}.rooster-cal-day[data-anchor]{background:var(--accent-tint)}.rooster-cal-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.rooster-cal-day[data-dirty] .rooster-cal-dot{background:var(--muted)}.rooster-panel{position:-webkit-sticky;position:sticky;top:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:14px;min-height:120px}.rooster-panel-empty{color:var(--muted);font-size:13px}.rooster-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rooster-panel-close{display:none;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer}.rooster-panel-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px}.rooster-saved{font-size:13px;font-weight:600;color:var(--ok)}.rooster-panel .day-blocks{align-items:stretch}.rooster-panel .day-block-row{display:grid;grid-template-columns:minmax(0,132px) minmax(0,132px) auto;grid-gap:10px;gap:10px;width:100%;align-items:end}.block-field{display:flex;flex-direction:column;gap:3px;flex:1 1;min-width:0}.block-field-label{font-size:11px;color:var(--muted)}.block-field input[type=time]{width:100%;min-width:0}.rooster-panel .block-remove{flex:0 0 auto}.pauze-strip{display:flex;justify-content:space-between;gap:8px;width:100%;padding:5px 4px 5px 10px;border-radius:8px;background:var(--paper-2);font-size:12px}.pauze-remove,.pauze-strip{align-items:center;color:var(--muted)}.pauze-remove{display:inline-flex;justify-content:center;width:24px;height:24px;border-radius:7px;border:1px solid transparent;background:transparent;font-size:16px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.pauze-remove:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.pauze-form{display:flex;align-items:flex-end;gap:8px;width:100%;margin-top:8px;padding:8px;border:1px dashed var(--line-strong);border-radius:8px}.pauze-form .block-field{flex:0 1 auto}.pauze-form .block-field input[type=time]{width:112px;min-width:112px}.pauze-form .btn{flex:0 0 auto}.rooster-copy summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--ink-soft)}.rooster-backdrop{display:none}@media (max-width:640px){.rooster-body{grid-template-columns:1fr}.rooster-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:40}.rooster-backdrop[data-open]{opacity:1;pointer-events:auto}.rooster-panel{position:fixed;left:0;right:0;bottom:0;top:auto;border:none;border-radius:16px 16px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.18);transform:translateY(100%);transition:transform .25s ease;z-index:41;max-height:80vh;overflow-y:auto}.rooster-panel[data-open]{transform:translateY(0)}.rooster-panel-close{display:inline-flex}.rooster-panel .day-block-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;grid-gap:8px;gap:8px}.rooster-panel .day-block-row .block-field{min-width:0}.rooster-panel .block-remove{margin-bottom:1px}}.savebar{position:static;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px;padding:12px 18px;background:var(--ink);color:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.savebar .btn{background:#fff;color:var(--ink);border-color:#fff}.flash{animation:flash 1.4s ease}@keyframes flash{0%{background:var(--accent-tint)}to{background:var(--surface)}}.spread{justify-content:space-between;gap:12px}.inline,.spread{display:flex;align-items:center}.inline{gap:10px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.loading-inline{display:flex;align-items:center;gap:8px;padding:6px 0;color:var(--muted);font-size:13px}.loading-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:dot-pulse 1s ease-in-out infinite}.loading-dot:nth-child(2){animation-delay:.15s}.loading-dot:nth-child(3){animation-delay:.3s}@keyframes dot-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width:860px){.shell{grid-template-columns:1fr;overflow-x:clip;max-width:100%}.mobtop{justify-content:space-between;gap:10px;position:fixed;top:0;left:0;right:0;z-index:100;height:58px;padding:0 16px;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.mobtop,.mobtop-brandlink{display:flex;align-items:center}.mobtop-brandlink{gap:9px;min-width:0}.mobtop-logo{display:block;max-height:30px;max-width:120px;width:auto;height:auto;object-fit:contain}.mobtop-name{font-family:var(--font-display);font-size:17px;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobtop-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer}.burger-ico{position:relative;display:block;width:20px;height:14px}.burger-ico span{position:absolute;left:0;width:100%;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease,top .2s ease}.burger-ico span:first-child{top:0}.burger-ico span:nth-child(2){top:6px}.burger-ico span:nth-child(3){top:12px}.burger-ico.is-open span:first-child{top:6px;transform:rotate(45deg)}.burger-ico.is-open span:nth-child(2){opacity:0}.burger-ico.is-open span:nth-child(3){top:6px;transform:rotate(-45deg)}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:120;width:280px;max-width:84vw;height:100dvh;padding:22px 16px calc(22px + env(safe-area-inset-bottom));background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-right:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,.22);overflow-y:auto;transform:translateX(-100%);transition:transform .26s cubic-bezier(.32,.72,0,1)}.sidebar.sidebar-open{transform:translateX(0)}.mobscrim{display:block;position:fixed;inset:0;z-index:110;background:rgba(20,12,10,0);pointer-events:none;transition:background .26s ease}.mobscrim.is-open{background:rgba(20,12,10,.42);pointer-events:auto}.main{padding-top:calc(58px + 26px);overflow-x:clip;max-width:100%}.tl-week-hint{display:block}.tl-week{max-width:100%;max-height:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-left:58px;-webkit-overflow-scrolling:touch}.tl-week-body,.tl-week-head{grid-template-columns:58px repeat(7,minmax(88px,1fr))}.tl-week-grid{min-width:calc(58px + 7 * 88px)}.tl-week-col,.tl-week-colhead{scroll-snap-align:start}.appt{grid-template-columns:96px 1fr}.appt-side{grid-column:1/-1;justify-content:flex-start}.modal-overlay{padding:16px 12px}.modal{max-height:calc(100dvh - 32px)}.modal-foot{flex-wrap:wrap}.modal-foot .inline{flex:1 1 auto;justify-content:flex-end}.mobtop-brandlink,.modal-foot .inline .btn{flex:1 1 auto}.mobtop-new{display:inline-flex;align-items:center;gap:6px;flex:none;height:42px;padding:0 14px;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-weight:600;font-size:14px;line-height:1;white-space:nowrap}.mobtop-new-sm{display:none}@media (max-width:420px){.mobtop-new{padding:0 11px}.mobtop-new-lg{display:none}.mobtop-new-sm{display:inline}}.staff-head{flex-direction:column;align-items:stretch}.staff-head-actions{justify-content:flex-end;flex-wrap:wrap}.staff-head-actions .btn{min-height:40px}.staff-newrow{flex-direction:column;align-items:stretch}.svc-manage-list .row-head,.svc-new-head{display:none}.svc-manage-list .row-services-nodep:not(.row-head),.svc-manage-list .row-services:not(.row-head),.svc-new .row-services-nodep:not(.row-head),.svc-new .row-services:not(.row-head){display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:14px 16px}.svc-name-cell{flex:1 1 100%}.svc-cell{flex:1 1 80px;display:flex;flex-direction:column}.svc-num-cap{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.svc-manage-list .row-services-nodep>.inline,.svc-manage-list .row-services>.inline,.svc-new .row-services-nodep>.inline,.svc-new .row-services>.inline{flex:1 1 100%;justify-content:flex-end}.cat-row .btn{min-height:40px}}.account-box{margin-top:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.account-email{font-size:12px;color:var(--ink-soft);word-break:break-all}.account-role{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-ink);background:var(--accent-tint);border-radius:6px;padding:2px 6px;margin-left:6px}.logout-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:var(--radius-sm);padding:8px 10px;font-family:inherit;font-size:13px;cursor:pointer}.logout-btn:hover{background:var(--paper-2)}.logout-btn:disabled{opacity:.6;cursor:not-allowed}.sec-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px;max-width:520px}.sec-status{font-weight:600;margin:0 0 8px}.sec-on{color:var(--ok)}.sec-off{color:var(--warn)}.sec-muted{color:var(--ink-soft);margin:8px 0}.sec-qr{width:200px;height:200px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;padding:8px;display:block;margin:12px 0}.sec-secret{display:inline-block;margin-top:6px;padding:4px 8px;background:var(--paper-2);border-radius:6px;font-size:13px;letter-spacing:1px}.sec-code{width:160px;padding:10px 12px;font-size:20px;letter-spacing:6px;text-align:center;border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-family:inherit;margin:8px 0}.sec-actions{display:flex;gap:10px;margin-top:8px}.sec-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:var(--accent);color:#fff;border-radius:var(--radius-sm);padding:10px 16px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}.sec-btn:hover{background:var(--accent-ink)}.sec-btn:disabled{opacity:.6;cursor:not-allowed}.sec-ghost{background:var(--surface);color:var(--ink-soft);border:1px solid var(--line-strong)}.sec-ghost:hover{background:var(--paper-2)}.sec-danger{background:var(--warn)}.sec-danger:hover{background:#925621}.sec-error{background:#fdecec;color:#a12d2d;border:1px solid #f5c9c9;border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;margin-bottom:16px}.admin-wrap{max-width:920px;margin:0 auto;padding:40px 28px 80px}.admin-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.admin-top-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.field>span:first-child{font-size:13px;font-weight:600;color:var(--ink-soft)}.admin-branche-group{display:flex;flex-direction:column;gap:10px}.admin-branche-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.admin-branche-head .admin-section-title{margin:0}.admin-tenant-list{display:flex;flex-direction:column;gap:8px}.admin-tenant-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);text-decoration:none;color:inherit;transition:border-color .15s,background .15s}.admin-tenant-row:hover{border-color:var(--line-strong);background:var(--paper-2)}.admin-row-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;display:grid;place-items:center;background:var(--accent,#a24e5b);color:#fff;font-weight:700;font-size:14px}.admin-row-avatar img{width:100%;height:100%;object-fit:cover}.admin-row-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.admin-row-name{font-weight:600;color:var(--ink)}.admin-row-name,.admin-row-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-row-sub{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--muted)}.admin-row-sub code{font-size:12px}.admin-row-go{flex-shrink:0;font-size:13px;font-weight:600;color:var(--muted)}.admin-back-link{color:var(--muted);text-decoration:none}.admin-back-link:hover{color:var(--ink)}.admin-section-title{font-size:16px;margin:8px 0 12px}.admin-card{padding:20px}.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-card-links{display:flex;align-items:center;gap:8px;flex-shrink:0}.admin-preview{display:inline-flex;align-items:center;gap:12px;padding:8px 16px 8px 8px;border-radius:999px;background:var(--accent-tint);border:1px solid var(--accent);min-width:0}.admin-preview-logo{object-fit:cover;background:#fff}.admin-preview-fallback,.admin-preview-logo{width:36px;height:36px;border-radius:50%;flex-shrink:0}.admin-preview-fallback{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-weight:700;font-size:14px}.staff-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0;display:block}.staff-avatar img{width:100%;height:100%;object-fit:cover;display:block}.staff-avatar-btn{position:relative;padding:0;border:1px solid var(--line-strong,rgba(0,0,0,.12));background:var(--paper-2,#f3f0ec);cursor:pointer}.staff-avatar-btn:hover{border-color:var(--accent,#a24e5b)}.staff-avatar-btn[data-busy=true]{opacity:.6;cursor:default}.staff-avatar-cam{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;border-radius:50%;background:var(--accent,#a24e5b);color:#fff;display:flex;align-items:center;justify-content:center;border:2px solid var(--surface,#fff)}.staff-avatar-cam svg{width:9px;height:9px}.staff-avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--accent,#a24e5b);color:#fff;font-weight:700;font-size:13px}.admin-preview-name{font-weight:600;color:var(--accent-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-preview-stack{flex-direction:column;align-items:flex-start;gap:8px;padding:4px 2px;border-radius:0;background:transparent;border:none}.brand-preview-stack .admin-preview-logo{width:auto;height:auto;max-width:140px;max-height:40px;border-radius:0;object-fit:contain;background:transparent}.brand-preview-stack .admin-preview-name{color:var(--ink);font-size:15px}.admin-slug{margin-top:12px;font-size:12px;color:var(--muted)}.admin-slug code{background:var(--paper-2);padding:2px 6px;border-radius:5px;font-size:12px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.admin-col-full{grid-column:1/-1}.admin-color{display:flex;align-items:center;gap:10px}.admin-swatch{width:44px;height:40px;padding:2px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex-shrink:0}.admin-hex{flex:1 1;min-width:0;text-transform:uppercase;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-logo-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-font-select{cursor:pointer}.admin-font-preview{margin-top:4px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-2);font-size:20px;font-weight:600;line-height:1.2;color:var(--ink);display:flex;flex-direction:column;gap:4px}.admin-font-preview-sub{font-size:13px;font-weight:400;color:var(--ink-soft)}.admin-flag{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-2)}.admin-flag-title{font-weight:600;color:var(--ink-soft);margin-bottom:2px}.admin-scarcity-opts{display:flex;gap:6px;flex:none}@media (max-width:560px){.admin-wrap{padding:28px 16px 64px}.admin-grid{grid-template-columns:1fr}.admin-card-head{align-items:flex-start}.admin-flag{flex-direction:column;align-items:stretch}.admin-scarcity-opts{flex-wrap:wrap;flex:1 1 auto}.admin-scarcity-opts .btn{flex:1 1 auto}}.brand-tenant-head{align-items:center;min-height:40px}.brand-tenant-head .brand-mark{font-size:20px;line-height:1.15;overflow-wrap:anywhere}.brand-tenant-head-logo{flex-direction:column;align-items:flex-start;gap:6px}.brand-tenant-name{font-family:var(--font-display);font-size:15px;line-height:1.15;letter-spacing:-.01em;color:var(--ink);overflow-wrap:anywhere}.admin-portal-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-soft);padding:6px 0}.admin-portal-link:hover{color:var(--accent-ink)}.viewbanner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:26px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--warn-tint);border:1px solid #ecc9a0;color:#7a4a1c;font-size:13.5px}.viewbanner-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #d9a866;background:#fff;color:#7a4a1c;border-radius:var(--radius-sm);padding:7px 12px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0}.viewbanner-btn:hover{background:var(--warn-tint)}.viewbanner-btn:disabled{opacity:.6;cursor:not-allowed}.badge-active{background:var(--ok-tint);color:#2c5a41}.badge-disabled{background:var(--accent-tint-2);color:var(--accent-ink)}.login-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.login-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface)}.login-row:last-child{border-bottom:none}.login-main{min-width:0}.login-email{font-weight:600;word-break:break-all}.login-meta{gap:10px;margin-top:4px}.login-actions,.login-meta{display:flex;align-items:center;flex-wrap:wrap}.login-actions{gap:6px;flex-shrink:0}