:root{--bg:#f6f8f7;--surface:#fff;--surface2:#eef4f2;--surface3:#dce9e5;--border:#17201d1f;--text:#17201d;--muted:#596661;--dim:#7a8782;--accent:#0f766e;--red:#d64545;--green:#168a4a;--yellow:#b7791f;--violet:#6d5bd0;--slot-height:96px;--gutter-width:72px}::view-transition-old(root){animation:.2s ease-out both vt-slide-out}::view-transition-new(root){animation:.2s ease-out both vt-slide-in}[data-nav-direction=forward]::view-transition-old(root){animation-name:vt-slide-out-left}[data-nav-direction=forward]::view-transition-new(root){animation-name:vt-slide-in-right}[data-nav-direction=back]::view-transition-old(root){animation-name:vt-slide-out-right}[data-nav-direction=back]::view-transition-new(root){animation-name:vt-slide-in-left}@keyframes vt-slide-out-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}@keyframes vt-slide-in-right{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes vt-slide-out-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}@keyframes vt-slide-in-left{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes vt-slide-out{0%{opacity:1}to{opacity:0}}@keyframes vt-slide-in{0%{opacity:0}to{opacity:1}}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg);width:100%;height:100%;color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,system-ui,sans-serif;overflow:hidden}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.calendar-body{flex:1;position:relative;overflow:hidden}.calendar-body:focus{outline:none}.app :is(button,[role=button],select,input,textarea,[tabindex]):focus-visible,.app .event-block:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header{background:var(--surface);border-bottom:.5px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:10px 16px;display:flex}.logo{color:var(--accent);letter-spacing:0;white-space:nowrap;font-size:20px;font-weight:800}.logo-sub{color:var(--text);font-weight:600}.runtime-mode-badge{border:1px solid var(--border);background:var(--surface2);max-width:280px;min-height:28px;color:var(--dim);border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex}.runtime-mode-dot{background:var(--muted);border-radius:50%;flex:none;width:7px;height:7px}.runtime-mode-label,.runtime-mode-warning{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.runtime-mode-badge[data-runtime-mode=real]{color:var(--text);border-color:#30d15873}.runtime-mode-badge[data-runtime-mode=real] .runtime-mode-dot{background:#30d158}.runtime-mode-warning{color:#ffd60a}.surface-switcher{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.surface-link{border:1px solid var(--border);background:var(--surface2);min-height:30px;color:var(--dim);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:6px 9px;font-size:12px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.surface-link:hover,.surface-link.active{border-color:var(--accent);color:var(--text)}.runtime-truth-gate{background:var(--bg);min-height:100vh;color:var(--text);place-items:center;padding:24px;display:grid}.runtime-truth-gate-panel{background:var(--surface);border:1px solid #ff453a73;border-radius:8px;gap:14px;width:min(760px,100%);padding:22px;display:grid;box-shadow:0 18px 50px #0000003d}.runtime-truth-gate-panel h1{font-size:26px;line-height:1.15}.runtime-truth-gate-panel p,.runtime-truth-gate-panel li{color:var(--dim);line-height:1.45}.runtime-truth-gate-eyebrow{color:#ff453a;text-transform:uppercase;font-size:12px;font-weight:800}.runtime-truth-gate-missing,.runtime-truth-gate-contract{border:1px solid var(--border);background:var(--surface2);border-radius:8px;gap:8px;padding:12px;display:grid}.runtime-truth-gate-missing ul{gap:6px;padding-left:18px;display:grid}.runtime-truth-gate-panel code{overflow-wrap:anywhere;color:var(--text)}.runtime-truth-gate-note{font-size:13px}.runtime-truth-gate-actions{flex-wrap:wrap;gap:10px;display:flex}.runtime-truth-gate-actions button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:40px;padding:8px 14px;font-weight:800}.clerk-user-menu{z-index:160;border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:8px;align-items:center;gap:10px;max-width:min(520px,100vw - 24px);padding:8px 10px;display:flex;position:fixed;top:10px;right:12px;box-shadow:0 12px 32px #0000003d}.clerk-user-menu-copy{min-width:0;color:var(--dim);gap:2px;font-size:11px;line-height:1.2;display:grid}.clerk-user-menu-copy code,.clerk-user-menu-copy small{text-overflow:ellipsis;white-space:nowrap;max-width:360px;overflow:hidden}.clerk-user-menu-copy code{color:var(--text);font-size:11px}.clerk-user-menu-copy small{color:var(--muted)}.internal-alpha-tester{background:var(--bg);height:100%;padding:20px;overflow:auto}.internal-alpha-tester-header{grid-template-columns:minmax(0,1fr) minmax(240px,340px);align-items:start;gap:16px;margin-bottom:16px;display:grid}.internal-alpha-tester-header h2{margin-top:4px;margin-bottom:8px;font-size:22px}.internal-alpha-tester-header p{color:var(--dim);line-height:1.45}.internal-alpha-eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:800}.internal-alpha-runtime-box{border:1px solid var(--border);background:var(--surface);color:var(--dim);border-radius:8px;gap:6px;padding:12px;display:grid}.internal-alpha-runtime-box strong{color:var(--text)}.internal-alpha-runtime-box[data-real-mode=true]{border-color:#30d15873}.internal-alpha-family-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-bottom:16px;display:grid}.internal-alpha-family,.internal-alpha-action{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;gap:4px;padding:10px;display:grid}.internal-alpha-family.active,.internal-alpha-action.active{border-color:var(--accent);background:var(--surface2)}.internal-alpha-family small,.internal-alpha-action small{color:var(--dim);line-height:1.3}.internal-alpha-workbench{grid-template-columns:280px minmax(0,1fr);gap:16px;min-height:0;display:grid}.internal-alpha-actions,.internal-alpha-detail{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-height:0;padding:14px}.internal-alpha-actions{align-content:start;gap:8px;display:grid}.internal-alpha-actions h3,.internal-alpha-detail h3{font-size:15px}.internal-alpha-action[data-supported=false]{border-style:dashed}.internal-alpha-route-summary,.internal-alpha-contract,.internal-alpha-result{gap:8px;margin-bottom:14px;display:grid}.internal-alpha-route-summary>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.internal-alpha-route-summary code{overflow-wrap:anywhere;color:var(--text)}.internal-alpha-route-summary p,.internal-alpha-contract p,.internal-alpha-run-row span,.internal-alpha-result p{color:var(--dim);line-height:1.4}.internal-alpha-chip{background:var(--surface3);color:var(--text);border-radius:7px;padding:4px 7px;font-size:12px;font-weight:800}.internal-alpha-path-params{gap:8px;margin-bottom:14px;display:grid}.internal-alpha-path-params label,.internal-alpha-payload-grid label{color:var(--dim);gap:6px;font-size:12px;font-weight:700;display:grid}.internal-alpha-path-params input,.internal-alpha-payload-grid textarea{border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);border-radius:8px;font:12px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.internal-alpha-path-params input{min-height:34px;padding:8px}.internal-alpha-payload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.internal-alpha-payload-grid textarea{resize:vertical;min-height:220px;padding:10px;line-height:1.35}.internal-alpha-run-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.internal-alpha-run-row button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:36px;padding:7px 12px;font-weight:800}.internal-alpha-run-row button:disabled{background:var(--surface3);color:var(--dim);cursor:not-allowed}.internal-alpha-result pre{border:1px solid var(--border);background:var(--surface2);min-height:140px;color:var(--text);white-space:pre-wrap;border-radius:8px;padding:10px;font:12px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.settings-view{background:var(--bg);height:100%;padding:20px;overflow:auto}.settings-header{grid-template-columns:minmax(0,1fr) minmax(250px,360px);align-items:start;gap:16px;margin-bottom:16px;display:grid}.settings-header h2{margin-top:4px;margin-bottom:8px;font-size:22px}.settings-header p,.settings-panel p,.settings-list p{color:var(--dim);line-height:1.45}.settings-eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:800}.settings-runtime-box,.settings-status,.settings-panel,.settings-inventory{border:1px solid var(--border);background:var(--surface);border-radius:8px}.settings-runtime-box{color:var(--dim);gap:8px;padding:12px;display:grid}.settings-runtime-box strong,.settings-status strong{color:var(--text)}.settings-runtime-box[data-real-mode=true]{border-color:#30d15873}.settings-runtime-box button,.settings-panel button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:36px;padding:7px 12px;font-weight:800}.settings-runtime-box button:disabled,.settings-panel button:disabled{background:var(--surface3);color:var(--dim);cursor:not-allowed}.settings-action-reason{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.settings-status{color:var(--dim);flex-wrap:wrap;justify-content:space-between;gap:8px 14px;margin-bottom:16px;padding:12px;display:flex}.settings-status[data-status=error]{border-color:#ff453a8c}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.settings-panel{align-content:start;gap:10px;min-width:0;padding:14px;display:grid}.settings-panel-wide{grid-column:1/-1}.settings-panel h3,.settings-inventory h3{font-size:17px}.settings-panel label{color:var(--dim);gap:6px;font-size:12px;font-weight:800;display:grid}.settings-panel input,.settings-panel select{border:1px solid var(--border);background:var(--surface2);width:100%;min-height:36px;color:var(--text);font:inherit;border-radius:8px;padding:8px 10px}.settings-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settings-checkbox{grid-template-columns:auto minmax(0,1fr);align-items:center}.settings-checkbox input{width:18px;min-height:18px}.settings-inventory{gap:12px;padding:14px;display:grid}.settings-inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.settings-list{gap:8px;min-width:0;display:grid}.settings-list h4{color:var(--text);font-size:13px}.settings-list ul{gap:8px;list-style:none;display:grid}.settings-list li{border:1px solid var(--border);background:var(--surface2);border-radius:8px;gap:3px;min-width:0;padding:9px;display:grid}.settings-list strong,.settings-list span,.settings-list code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-list span{color:var(--dim);font-size:12px}.settings-list code{color:var(--muted);font-size:11px}.admin-console{background:var(--bg);height:100%;padding:20px;overflow:auto}.admin-console>.settings-view{height:auto;padding:0;overflow:visible}.admin-console-header{grid-template-columns:minmax(0,1fr) minmax(250px,360px);align-items:start;gap:16px;margin-bottom:16px;display:grid}.admin-console-header h2{margin-top:4px;margin-bottom:8px;font-size:22px}.admin-console-header p,.admin-console-panel span,.admin-console-status span,.admin-console-panel dd{color:var(--dim);line-height:1.45}.admin-console-status,.admin-console-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px}.admin-console-status{gap:6px;padding:12px;display:grid}.admin-console-status[data-real-mode=true]{border-color:#30d15873}.admin-console-status strong,.admin-console-panel strong,.admin-console-panel dt{color:var(--text)}.admin-console-grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:16px;margin-bottom:16px;display:grid}.platform-admin{gap:16px;margin-bottom:16px;display:grid}.platform-admin-header{grid-template-columns:minmax(0,1fr) minmax(250px,360px);align-items:start;gap:16px;display:grid}.platform-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.platform-admin-actions{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.platform-admin-ledger-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-console-panel{gap:12px;padding:14px;display:grid}.admin-console-surface-matrix{margin-bottom:16px}.surface-readiness-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.surface-readiness-item{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:6px;padding:12px;display:grid}.surface-readiness-item em{color:var(--accent);font-size:12px;font-style:normal;font-weight:800;line-height:1.4}.admin-console-panel ol{gap:10px;padding-left:18px;display:grid}.admin-console-panel li{padding-left:4px}.admin-console-panel li strong{margin-bottom:2px;display:block}.admin-console-panel dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-console-panel dt{text-transform:uppercase;font-size:12px;font-weight:800}.public-booking-shell{background:var(--bg);height:100%;min-height:100%;color:var(--text);overflow:auto}.public-booking-shell :is(button,select,input,textarea,a):focus-visible{outline:3px solid var(--accent);outline-offset:2px}.public-booking-topbar{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;justify-content:space-between;align-items:center;gap:18px;padding:14px max(18px,50vw - 572px);display:flex;position:sticky;top:0}.public-booking-brand{min-width:0;color:var(--text);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.public-booking-brand span{background:var(--accent);color:#fff;border-radius:8px;place-items:center;width:32px;height:32px;font-weight:900;display:inline-grid}.public-booking-brand strong{letter-spacing:0;white-space:nowrap;font-size:15px}.public-booking-topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:inline-flex}.public-booking-topbar nav a{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.public-booking-workspace{width:min(1180px,100%);margin:0 auto;padding:26px 18px 44px}.public-booking-heading{grid-template-columns:minmax(0,1fr) minmax(260px,420px);align-items:stretch;gap:16px;margin-bottom:18px;display:grid}.public-booking-heading h1{letter-spacing:0;margin-top:4px;font-size:40px;line-height:1.1}.public-booking-eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:800}.public-booking-summary,.public-booking-service-card,.public-booking-checkout-summary,.public-booking-token-box,.public-booking-empty-state,.public-booking-loading{border:1px solid var(--border);background:var(--surface);border-radius:8px}.public-booking-summary{align-content:center;gap:8px;padding:16px;display:grid}.public-booking-summary span,.public-booking-checkout-summary span,.public-booking-token-box span{color:var(--dim);text-transform:uppercase;font-size:12px;font-weight:900}.public-booking-summary strong{line-height:1.35}.public-booking-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;list-style:none;display:grid}.public-booking-steps li{border:1px solid var(--border);background:var(--surface);min-height:52px;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.public-booking-steps li span{background:var(--surface2);width:28px;height:28px;color:var(--muted);border-radius:8px;place-items:center;font-weight:900;display:inline-grid}.public-booking-steps li[data-complete=true]{color:var(--text);border-color:#0f766e73}.public-booking-steps li[data-complete=true] span{background:var(--accent);color:#fff}.public-booking-staff-link,.public-booking-manage button,.public-booking-primary{cursor:pointer;border:0;border-radius:8px;min-height:44px;font-weight:800}.public-booking-staff-link{background:var(--surface2);color:var(--text);white-space:nowrap;justify-content:center;align-items:center;padding:10px 14px;text-decoration:none;display:inline-flex}.public-booking-alert{color:var(--text);background:#d645451a;border:1px solid #d645458c;border-radius:8px;margin-bottom:14px;padding:12px;line-height:1.4}.public-booking-grid{grid-template-columns:minmax(270px,340px) minmax(330px,1fr) minmax(270px,340px);align-items:start;gap:14px;display:grid}.public-booking-panel,.public-booking-confirmation,.public-booking-manage{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:12px;padding:14px;display:grid;box-shadow:0 14px 40px #17201d12}.public-booking-panel-heading{gap:4px;display:grid}.public-booking-panel h2,.public-booking-confirmation h2,.public-booking-manage h2{font-size:18px;line-height:1.2}.public-booking-panel label,.public-booking-manage label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.public-booking-panel input,.public-booking-panel select,.public-booking-panel textarea,.public-booking-manage input{border:1px solid var(--border);width:100%;min-height:46px;color:var(--text);font:inherit;text-transform:none;background:#fff;border-radius:8px;padding:10px 12px}.public-booking-panel input:disabled,.public-booking-panel select:disabled,.public-booking-panel textarea:disabled,.public-booking-manage input:disabled{background:var(--surface2);color:var(--dim)}.public-booking-panel textarea{resize:vertical;min-height:96px}.public-booking-service-card{background:var(--surface2);gap:4px;padding:12px;display:grid}.public-booking-service-card span{color:var(--muted)}.public-booking-inline-fields{grid-template-columns:minmax(0,1fr) minmax(110px,140px);gap:10px;display:grid}.public-booking-slots-panel{min-height:360px}.public-booking-slot-list{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px;display:grid}.public-booking-slot-list-compact{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.public-booking-slot{border:1px solid var(--border);min-height:70px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:4px;padding:10px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.public-booking-slot:hover{border-color:#0f766e73;box-shadow:0 8px 20px #17201d14}.public-booking-slot[data-selected=true]{border-color:var(--accent);background:#0f766e1a;box-shadow:0 0 0 3px #0f766e24}.public-booking-slot span{font-weight:800}.public-booking-slot small,.public-booking-muted{color:var(--muted);line-height:1.4}.public-booking-primary{background:var(--accent);color:#fff;width:100%}.public-booking-primary:disabled,.public-booking-manage button:disabled,.public-booking-slot:disabled{background:var(--surface3);color:var(--dim);cursor:not-allowed;box-shadow:none}.public-booking-confirmation{background:#168a4a14;border-color:#168a4a73;margin-top:14px}.public-booking-confirmation h2{color:var(--green)}.public-booking-manage{margin-top:14px}.public-booking-manage form{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;gap:10px;display:grid}.public-booking-manage button{background:var(--text);color:var(--text);padding:10px 14px}.public-booking-manage button:not(:disabled){color:#fff}.public-booking-managed-result{border-top:1px solid var(--border);gap:12px;padding-top:10px;display:grid}.public-booking-managed-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.public-booking-managed-result span{color:var(--muted)}.public-booking-reschedule{gap:10px;display:grid}.public-booking-managed-actions{flex-wrap:wrap;gap:10px;display:flex}.public-booking-managed-actions button{flex:180px}.public-booking-details-group{border:1px solid var(--border);background:var(--surface2);border-radius:8px;gap:10px;padding:10px;display:grid}.public-booking-details-group summary{cursor:pointer;color:var(--text);font-weight:900}.public-booking-checkout-summary{background:var(--surface2);gap:4px;padding:12px;display:grid}.public-booking-checkout-summary strong{font-size:22px}.public-booking-checkout-summary small{color:var(--muted)}.public-booking-action-note{border:1px solid var(--border);background:var(--surface2);min-height:42px;color:var(--muted);border-radius:8px;padding:10px 12px;line-height:1.35}.public-booking-token-box{gap:6px;padding:12px;display:grid}.public-booking-token-box code{overflow-wrap:anywhere;color:var(--text)}.public-booking-empty-state,.public-booking-loading{background:var(--surface2);gap:6px;padding:18px;display:grid}.public-booking-empty-state p,.public-booking-loading p{color:var(--muted)}.public-booking-loading{grid-template-columns:auto minmax(0,1fr);align-items:center}.public-booking-loading span{border:3px solid var(--surface3);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.9s linear infinite public-booking-spin}@keyframes public-booking-spin{to{transform:rotate(360deg)}}.view-switcher{background:var(--surface2);border-radius:8px;padding:2px;display:flex}.view-btn{color:var(--dim);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s}.view-btn.active{background:var(--surface3);color:var(--text)}.date-nav{align-items:center;gap:8px;display:flex}.date-nav-btn{background:var(--surface2);width:32px;height:32px;color:var(--muted);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:background .15s;display:flex}.date-nav-btn:hover{background:var(--surface3)}.today-btn{background:var(--surface2);color:var(--red);cursor:pointer;border:none;border-radius:7px;padding:5px 12px;font-size:13px;font-weight:700;transition:background .15s}.today-btn:hover{background:var(--surface3)}.date-range-label{color:var(--text);white-space:nowrap;font-size:15px;font-weight:700}.view-mode-toggle{background:var(--surface2);border-radius:8px;margin-left:auto;padding:2px;display:flex}.mode-btn{color:var(--dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.mode-btn.active{background:var(--surface3);color:var(--text)}.sync-status-badge{border:1px solid var(--border);min-height:26px;color:var(--dim);background:var(--surface2);border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.sync-status-dot{background:var(--muted);border-radius:50%;width:7px;height:7px}.sync-status-badge[data-sync-state=synced] .sync-status-dot{background:#30d158}.sync-status-badge[data-sync-state=pending] .sync-status-dot,.sync-status-badge[data-sync-state=retrying] .sync-status-dot{background:#ffd60a}.sync-status-badge[data-sync-state=conflict] .sync-status-dot,.sync-status-badge[data-sync-state=dead-letter] .sync-status-dot,.sync-status-badge[data-sync-state=offline] .sync-status-dot{background:var(--red)}.filters{background:var(--surface);border-bottom:.5px solid var(--border);flex-shrink:0;padding:8px 16px;overflow-x:auto}.filter-group{white-space:nowrap;align-items:center;gap:6px;display:flex}.filter-label{color:var(--dim);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.chip{background:var(--surface2);color:var(--muted);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.chip.active{border-color:var(--accent);color:var(--accent);background:#0a84ff26}.chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.filter-divider{background:var(--border);width:1px;height:20px;margin:0 6px}.time-grid{flex-direction:column;height:100%;display:flex;position:relative}.time-grid-loading-bar{z-index:50;background:var(--accent);height:2px;animation:1.2s ease-in-out infinite loading-slide;position:absolute;top:0;left:0;right:0}@keyframes loading-slide{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}.time-grid-skeleton{padding:16px 0 0 var(--gutter-width);flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.skeleton-row{border-bottom:.5px solid var(--border);gap:2px;height:96px;display:flex}.skeleton-gutter{flex-shrink:0;width:0}.skeleton-cell{border-left:.5px solid var(--border);flex:1;padding:4px}.skeleton-block{background:#ffffff0a;border-radius:6px;animation:1.4s ease-in-out infinite skeleton-pulse}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.time-grid-header{border-bottom:.5px solid var(--border);background:var(--surface);flex-shrink:0;display:flex}.time-grid-header-gutter{width:var(--gutter-width);background:var(--surface);flex-shrink:0}.time-grid-header-columns{flex:1;min-width:0;display:flex}.day-header{text-align:center;border-left:.5px solid var(--border);flex:1;min-width:0;padding:8px 4px}.day-header-name{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.day-header-num{color:var(--text);font-size:22px;font-weight:700;line-height:1.2}.day-header.is-today .day-header-num{color:var(--red)}.resource-header{text-align:center;border-left:.5px solid var(--border);color:var(--muted);flex:1;min-width:0;padding:4px;font-size:11px;font-weight:600}.time-grid-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;display:flex;overflow:hidden auto}.time-grid-body::-webkit-scrollbar{width:6px}.time-grid-body::-webkit-scrollbar-track{background:0 0}.time-grid-body::-webkit-scrollbar-thumb{background:var(--surface3);border-radius:3px}.time-gutter{width:var(--gutter-width);flex-shrink:0;position:relative}.gutter-label{color:var(--dim);white-space:nowrap;font-size:10px;font-weight:500;position:absolute;right:8px;transform:translateY(-50%)}.time-columns-container{flex:1;min-width:0;display:flex;position:relative}.time-column{border-left:.5px solid var(--border);min-width:0;height:calc(var(--slot-height) * 14);touch-action:pan-y;contain:layout style paint;flex:1;position:relative}.hour-slot{height:var(--slot-height);border-bottom:.5px solid var(--border);position:relative}.hour-slot-half{border-top:.5px solid #ffffff08;position:absolute;top:50%;left:0;right:0}.time-column.is-today{background:#0a84ff08}.time-column--pressing{background:#0a84ff0d}.event-block{cursor:pointer;z-index:1;touch-action:manipulation;border-radius:6px;padding:3px 6px;transition:opacity .15s,transform .2s ease-out,border-color .2s ease-out;position:absolute;inset:0;overflow:hidden}.event-block:hover{filter:brightness(1.1)}.availability-band-wrapper .event-block:hover{filter:none}.event-block:focus-visible{outline-offset:1px;outline:3px solid #ffffff8c}.event-block--with-grip{padding-right:30px}.event-block--pending{opacity:.6;background-image:repeating-linear-gradient(45deg,#0000,#0000 6px,#ffffff0d 6px 12px);border:1.5px dashed #ffffff73;animation:1.5s ease-in-out infinite event-pending-pulse}.event-block--rolling-back{opacity:0;transition:opacity .2s ease-out,transform .2s ease-out;transform:translate(-20px)}.event-block[data-item-kind=availability]{opacity:.28;-webkit-backdrop-filter:saturate(.9);backdrop-filter:saturate(.9);background-image:repeating-linear-gradient(135deg,#ffffff24,#ffffff24 8px,#0000 8px 16px);border:1px dashed #ffffff2e}.event-block[data-item-kind=availability] .event-title,.event-block[data-item-kind=availability] .event-member,.event-block[data-item-kind=availability] .event-time{color:#ffffffd6}.event-block[data-item-kind=hold]{opacity:.88;border:1px dashed #ffffff61;box-shadow:inset 0 0 0 1px #ffffff14}.event-block[data-item-kind=travel_window]{opacity:.74;border:1px solid #ffffff29;box-shadow:inset 0 0 0 1px #ffffff0f}.event-block[data-item-kind=travel_window] .event-title{text-transform:uppercase;letter-spacing:.06em;font-size:11px}@keyframes event-pending-pulse{0%,to{opacity:.6}50%{opacity:.8}}.event-title{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.3;overflow:hidden}.event-member{color:#fffc;font-size:10px;line-height:1.3}.event-time{color:#ffffffb3;font-size:10px;line-height:1.3}.event-state-label{color:#fff;background:#00000038;border:1px solid #ffffff52;border-radius:8px;margin-top:2px;padding:1px 5px;font-size:9px;font-weight:700;line-height:12px;display:inline-block}.event-drag-grip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);touch-action:none;background:#ffffff29;border-radius:8px;align-items:center;gap:3px;min-width:24px;min-height:24px;padding:6px;display:inline-flex;position:absolute;top:6px;right:6px}.event-drag-grip span{background:#ffffffeb;border-radius:50%;width:3px;height:3px}.current-time-line{background:var(--red);z-index:5;pointer-events:none;height:2px;position:absolute;left:0;right:0}.current-time-dot{background:var(--red);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-5px}.month-grid{grid-template-columns:repeat(7,1fr);height:100%;display:grid}.month-grid-header{background:var(--surface);border-bottom:.5px solid var(--border);flex-shrink:0;grid-template-columns:repeat(7,1fr);display:grid}.month-weekday{text-align:center;color:var(--muted);text-transform:uppercase;padding:8px 0;font-size:11px;font-weight:600}.month-grid-body{flex:1;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.month-day-cell{border-right:.5px solid var(--border);border-bottom:.5px solid var(--border);cursor:pointer;min-height:0;padding:4px;overflow:hidden}.month-day-cell:hover{background:#ffffff05}.month-day-cell:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.month-day-cell.other-month{opacity:.3}.month-day-num{color:var(--text);margin-bottom:2px;font-size:13px;font-weight:600}.month-day-cell.is-today .month-day-num{background:var(--red);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.month-event-badge{color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:3px;margin-bottom:1px;padding:1px 4px;font-size:10px;font-weight:600;display:block;overflow:hidden}.month-event-badge[data-item-kind=hold]{border:1px dashed #ffffff73}.month-event-badge[data-item-kind=travel_window]{opacity:.76}.month-more{color:var(--muted);padding:1px 4px;font-size:10px;font-weight:600}@media (prefers-reduced-motion:reduce){::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}.view-btn,.date-nav-btn,.today-btn,.mode-btn,.chip,.event-block,.event-block--pending,.event-block--rolling-back,.draggable-event-wrapper.event--tentative-pos,.gesture-time-label,.resize-handle-pill{transition:none!important;animation:none!important}}.drop-indicator{pointer-events:none;z-index:0;background:#0a84ff1f;border:1px dashed #0a84ff59;border-radius:4px;position:absolute;left:2px;right:2px}.drag-layer{pointer-events:none;z-index:100;width:100%;height:100%;position:fixed;top:0;left:0}.event-block.is-dragging{opacity:.3;filter:saturate(.4)}.draggable-event-wrapper.is-dragging{z-index:-1!important}.draggable-event-wrapper.is-resizing .event-block,.draggable-event-wrapper.is-moving .event-block{transition:none;box-shadow:0 12px 30px #00000042}.draggable-event-wrapper.is-resizing .event-block{transform:scale(1.01)}.draggable-event-wrapper.is-dragging .event-block{transition:none}.draggable-event-wrapper.is-resizing{top:var(--gesture-top)!important;height:var(--gesture-height)!important}.draggable-event-wrapper.event--tentative-pos{transition:top .12s ease-out,height .12s ease-out,left .12s ease-out,width .12s ease-out;top:var(--tentative-top)!important;height:var(--tentative-height)!important;left:var(--tentative-left)!important;width:var(--tentative-width)!important}.draggable-event-wrapper.is-moving{z-index:8!important}.draggable-event-wrapper.is-moving .event-block{opacity:.96;transform:scale(1.02)}.gesture-time-label{background:var(--accent);color:#fff;white-space:nowrap;pointer-events:none;z-index:10;opacity:0;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;transition:opacity 80ms ease-out;position:absolute;right:-2px;transform:translate(100%)}.gesture-time-label.visible{opacity:1}.resize-handle{cursor:ns-resize;z-index:2;justify-content:center;align-items:center;height:8px;display:flex;position:absolute;left:0;right:0}.resize-handle-top{top:0}.resize-handle-bottom{bottom:0}.resize-handle-pill{opacity:0;background:#fff6;border-radius:2px;width:24px;height:3px;transition:opacity .15s}.draggable-event-wrapper:hover .resize-handle-pill{opacity:1}.overflow-badge{z-index:4;pointer-events:auto;justify-content:center;align-items:flex-start;width:28px;padding-top:3px;display:flex;position:absolute;right:2px}.overflow-badge-content{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:3px 4px;display:flex}.overflow-badge-count{color:var(--muted);font-size:10px;font-weight:800;line-height:1}.overflow-badge-dots{flex-wrap:wrap;justify-content:center;gap:2px;max-width:20px;display:flex}.overflow-badge-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.slot-selection{border:1px solid var(--accent);z-index:3;pointer-events:none;background:#0a84ff26;border-radius:4px;position:absolute;left:2px;right:2px}.mobile-hold-indicator{z-index:3;pointer-events:none;background:#0f766e24;border:1px solid #0f766e85;border-radius:8px;position:absolute;left:6px;right:6px;box-shadow:0 0 0 1px #0f766e14,0 12px 24px #0f766e1f}.sheet-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:120;background:#04070e6b;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.create-sheet{background:var(--surface);border:1px solid var(--border);width:min(560px,100%);padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px));border-radius:8px;box-shadow:0 24px 80px #17201d33}.create-sheet-handle{background:var(--surface3);border-radius:8px;width:42px;height:5px;margin:0 auto 14px}.create-sheet-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.create-sheet-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-bottom:6px;font-size:11px}.create-sheet-title{letter-spacing:0;color:var(--text);font-size:24px;font-weight:800}.create-sheet-meta{color:var(--dim);margin-top:8px;font-size:13px;line-height:1.4}.sheet-close-btn,.sheet-secondary-btn,.sheet-primary-btn,.sheet-stepper-btn{cursor:pointer;border:none}.sheet-close-btn{background:var(--surface2);min-height:40px;color:var(--muted);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700}.create-sheet-form{flex-direction:column;gap:14px;display:flex}.sheet-field{flex-direction:column;gap:8px;display:flex}.sheet-label{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.sheet-input,.sheet-select{border:1px solid var(--border);background:var(--surface2);width:100%;min-height:52px;color:var(--text);border-radius:8px;outline:none;padding:0 16px;font-size:16px}.sheet-input::placeholder{color:var(--dim)}.sheet-input:focus,.sheet-select:focus{border-color:#0a84ffb3;box-shadow:0 0 0 4px #0a84ff26}.sheet-time-card{background:var(--surface2);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:14px;padding:14px 16px;display:flex}.sheet-empty-state{color:var(--dim);background:#ffffff0d;border:1px solid #ffffff14;border-radius:8px;gap:10px;padding:14px 16px;line-height:1.4;display:grid}.sheet-empty-state a{background:var(--accent);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:fit-content;min-height:38px;padding:8px 12px;font-weight:800;text-decoration:none;display:inline-flex}.sheet-disabled-reason{color:var(--dim);font-size:13px;line-height:1.4}.sheet-provider-actions{gap:8px;display:grid}.sheet-danger-btn{width:100%;min-height:44px;color:var(--red);background:#ff453a24;border:1px solid #ff453a73;border-radius:8px;font-weight:800}.sheet-danger-btn:disabled{border-color:var(--border);background:var(--surface2);color:var(--dim);cursor:not-allowed}.sheet-time-row{color:var(--text);justify-content:space-between;gap:12px;font-size:15px;font-weight:600;display:flex}.sheet-duration-stepper{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-stepper-btn{background:var(--surface3);width:44px;height:44px;color:var(--text);border-radius:8px;font-size:24px;line-height:1}.sheet-duration-value{text-align:center;color:var(--text);flex:1;font-size:16px;font-weight:700}.sheet-actions{gap:10px;margin-top:6px;display:flex}.sheet-secondary-btn,.sheet-primary-btn{border-radius:8px;flex:1;min-height:52px;font-size:15px;font-weight:800}.sheet-secondary-btn{background:var(--surface2);color:var(--text)}.sheet-primary-btn{background:var(--accent);color:#fff}.sheet-primary-btn:disabled{opacity:.45;cursor:not-allowed}@media (width<=768px){.internal-alpha-tester-header,.internal-alpha-workbench,.internal-alpha-payload-grid,.admin-console-header,.admin-console-grid,.surface-readiness-grid,.admin-console-panel dl,.platform-admin-header,.platform-admin-grid,.platform-admin-ledger-grid,.settings-header,.settings-grid,.settings-form-grid,.settings-inventory-grid,.public-booking-heading,.public-booking-steps,.public-booking-grid,.public-booking-manage form,.public-booking-inline-fields{grid-template-columns:1fr}.internal-alpha-tester,.admin-console,.settings-view,.public-booking-workspace{padding:12px}.public-booking-heading{align-items:stretch}.public-booking-heading h1{font-size:26px}.public-booking-topbar{flex-direction:column;align-items:stretch;padding:12px;position:static}.public-booking-topbar nav{justify-content:stretch}.public-booking-topbar nav a{flex:auto}.header{align-items:center;gap:8px;padding:8px 10px}.logo{width:auto;margin-right:auto;font-size:16px}.runtime-mode-badge{order:2;max-width:100%}.surface-switcher{order:3;width:100%}.surface-link{min-height:34px;padding:7px 9px}.view-switcher,.view-mode-toggle{justify-content:flex-start;width:auto}.view-btn,.mode-btn,.today-btn,.date-nav-btn,.chip{min-height:36px}.view-btn{flex:none;padding:6px 9px;font-size:12px}.mode-btn{flex:none;padding:6px 9px;font-size:11px}.date-nav{flex-wrap:wrap;justify-content:flex-start;gap:8px;width:auto}.today-btn{padding:6px 10px;font-size:12px}.date-nav-btn{border-radius:8px;width:36px;height:36px;font-size:16px}.date-range-label{width:auto;font-size:14px}.filters{padding:8px 12px}.filter-group{gap:8px}.chip{padding:7px 12px;font-size:12px}.day-header{padding:10px 4px}.day-header-num{font-size:20px}.event-block{border-radius:8px;padding:6px 8px}.event-block--with-grip{padding-right:38px}.event-title{font-size:12px}.event-member,.event-time{font-size:11px}.event-drag-grip{min-width:30px;min-height:30px;padding:7px;top:8px;right:8px}.resize-handle{height:22px}.resize-handle-pill{opacity:1;width:28px;height:4px}.resize-handle--compact{height:10px}.sheet-backdrop{align-items:flex-end;padding:12px 12px 0}.create-sheet{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));border-bottom-right-radius:0;border-bottom-left-radius:0}.sheet-time-row{flex-direction:column;align-items:flex-start}}.app[dir=rtl] .header,.app[dir=rtl] .view-switcher,.app[dir=rtl] .date-nav,.app[dir=rtl] .view-mode-toggle,.app[dir=rtl] .filters{direction:rtl}.app[dir=rtl] .time-gutter,.app[dir=rtl] .gutter-label{text-align:end;direction:ltr}.app[dir=rtl] [data-calendar-view=split],.app[dir=rtl] [data-calendar-view=resource],.app[dir=rtl] [data-calendar-view=team],.app[dir=rtl] [data-calendar-view=freebusy]{direction:rtl}.app[dir=rtl] [data-calendar-view=resource] button,.app[dir=rtl] [data-calendar-view=team] button,.app[dir=rtl] [data-calendar-view=freebusy] button,.app[dir=rtl] [data-calendar-view=queue] button{text-align:right!important}
