:root{--color-bg:#d9d9d9;--color-text:#000;--color-sub:#242323;--color-muted:#6f6f6f;--border:1px solid #000;--border-strong:2px solid #000;--font-display:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;--font-ui:"Helvetica Neue", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Arial, sans-serif;--content-customer:760px;--content-admin:1440px}*,:before,:after{box-sizing:border-box;border-radius:0}html{min-width:320px;color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%}body{min-height:100vh;color:var(--color-text);background:var(--color-bg);font-family:var(--font-ui);margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{min-height:44px;color:inherit;border:var(--border);box-shadow:none;font:inherit;background:0 0;border-radius:0}button,select{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}input,select,textarea{width:100%;padding:11px 12px;font-size:16px}textarea{resize:vertical;min-height:120px}:focus-visible{outline:2px solid var(--color-text);outline-offset:3px}::selection{color:var(--color-bg);background:var(--color-text)}.customer-shell{width:min(100%, var(--content-customer));min-height:100vh;padding:max(14px, env(safe-area-inset-top)) 18px calc(88px + env(safe-area-inset-bottom));margin:0 auto}.customer-header{border-bottom:var(--border);justify-content:space-between;align-items:center;min-height:70px;margin-bottom:38px;display:flex}.brand-logo{width:72px;height:auto;display:block}.text-link{letter-spacing:.04em;min-height:44px;padding:9px 0;font-size:14px;text-decoration:underline}.customer-header .text-link{text-decoration:none}.page-main{animation:.16s ease-out both page-in}.page-intro{border-bottom:var(--border-strong);margin-bottom:32px;padding-bottom:22px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.4}.display-heading{max-width:650px;font-family:var(--font-display);letter-spacing:.01em;text-wrap:balance;margin:0;font-size:clamp(30px,5vw,40px);font-weight:600;line-height:1.28}.reservation-progress-wrap{margin-bottom:28px}.progress-status{letter-spacing:.1em;text-align:right;margin:0 0 10px;font-size:11px;font-weight:600}.reservation-progress{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.reservation-progress:before{background:var(--color-text);content:"";height:1px;position:absolute;top:17px;left:12.5%;right:12.5%}.reservation-progress li{z-index:1;min-width:0;color:var(--color-text);flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.progress-dot{width:34px;height:34px;color:var(--color-bg);background:var(--color-text);clip-path:circle(50%);place-items:center;font-size:11px;font-weight:700;display:grid}.reservation-progress li:not(.is-done):not(.is-current){color:var(--color-muted)}.reservation-progress li:not(.is-done):not(.is-current) .progress-dot{color:var(--color-bg);background:var(--color-muted)}.reservation-progress .is-current .progress-label{font-weight:700}.progress-label{letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.button{border:var(--border);letter-spacing:.04em;text-align:center;justify-content:center;align-items:center;min-height:52px;padding:12px 22px;font-size:14px;font-weight:500;text-decoration:none;transition:color .12s,background-color .12s,opacity .12s;display:inline-flex}.button-primary{color:var(--color-bg);background:var(--color-text)}.button-primary:hover:not(:disabled){background:var(--color-sub)}.button-secondary:hover:not(:disabled){color:var(--color-bg);background:var(--color-text)}.button-danger{border-width:2px}.button-row{align-items:stretch;gap:12px;display:flex}.button-row>*{flex:1}.sticky-action{z-index:10;border-top:var(--border);background:var(--color-bg);padding:12px max(16px, calc((100vw - var(--content-customer)) / 2 + 16px)) max(12px, env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0}.sticky-action-inner{max-width:calc(var(--content-customer) - 32px);grid-template-columns:minmax(0,1fr) minmax(130px,.7fr);align-items:center;gap:12px;margin:0 auto;display:grid}.sticky-selection{font-family:var(--font-display);margin:0;font-size:17px;line-height:1.45}.loading-screen,.centered-message{flex-direction:column;justify-content:center;width:min(100% - 32px,680px);min-height:78vh;margin:0 auto;display:flex}.centered-message{gap:20px}.centered-message .button{align-self:flex-start}.loading-copy{font-size:clamp(26px,7vw,44px)}.loading-line{background:#0003;width:100%;height:2px;margin-top:36px;display:block;overflow:hidden}.loading-line:after{background:var(--color-text);content:"";width:42%;height:100%;animation:1.2s ease-in-out infinite alternate loading-line;display:block}.error-message{border-top:var(--border-strong);border-bottom:var(--border);padding:16px 0}.error-message strong{font-family:var(--font-display);margin-bottom:4px;font-size:19px;font-weight:600;display:block}.status-message{min-height:24px;margin:16px 0}.section-heading{font-family:var(--font-display);text-wrap:balance;margin:0 0 16px;font-size:23px;font-weight:600;line-height:1.35}.section-eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}.form-section{border-top:var(--border);padding:24px 0}.field{gap:7px;margin-bottom:18px;display:grid}.field label,.field-label{font-size:14px;font-weight:600}.required{margin-left:8px;font-size:11px;font-weight:400}.choice-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.choice-button{border:var(--border);text-align:left;border-right:0;min-height:56px;padding:12px}.choice-button:last-child{border-right:var(--border)}.choice-button.is-selected{color:var(--color-bg);background:var(--color-text)}.check-row{cursor:pointer;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:12px;min-height:44px;padding:10px 0;display:grid}.check-row input{appearance:none;width:20px;height:20px;min-height:20px;margin:2px 0 0;padding:0}.check-row input:checked{background:var(--color-text)}.data-list{margin:0}.data-list>div{border-top:var(--border);grid-template-columns:minmax(90px,.36fr) minmax(0,1fr);gap:20px;padding:14px 0;display:grid}.data-list>div:last-child{border-bottom:var(--border)}.data-list dt{letter-spacing:.08em;font-size:12px;font-weight:600}.data-list dd{margin:0}.muted{opacity:.58}.next-booking-strip{border-top:var(--border);border-bottom:var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 20px;margin-bottom:32px;padding:14px 0 16px;display:grid}.next-booking-strip .section-eyebrow{grid-column:1/-1}.next-booking-strip p{font-family:var(--font-display);margin:0;font-size:18px;font-weight:600}.next-booking-strip p span{font-family:var(--font-ui);margin-top:2px;font-size:13px;display:block}.reservation-config,.calendar-selection{border-top:var(--border);padding-top:24px}.calendar-selection{margin-top:44px}.inline-choice-section{border-top:var(--border);margin-top:24px;padding-top:24px}.duration-summary{font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;flex-shrink:0;margin:0;font-size:11px}.selection-required{border-top:var(--border);border-bottom:var(--border);padding:20px 0}.selection-required p{font-family:var(--font-display);margin:0 0 6px;font-size:19px;font-weight:600}.selection-required span{font-size:13px}.calendar-toolbar,.calendar-nav{justify-content:space-between;align-items:center;display:flex}.calendar-toolbar{margin-bottom:16px}.calendar-month{font-family:var(--font-display);margin:0;font-size:22px;font-weight:600}.calendar-today,.calendar-nav button{text-underline-offset:4px;border:0;min-height:44px;padding:8px 0;text-decoration:underline}.view-switch{grid-template-columns:repeat(2,1fr);display:grid}.view-switch button{border-right:0;min-width:68px}.view-switch button:last-child{border-right:var(--border)}.view-switch .is-selected{color:var(--color-bg);background:var(--color-text)}.calendar-nav{border-top:var(--border);margin-bottom:12px}.week-scroll{border-right:var(--border);border-bottom:var(--border);scrollbar-color:var(--color-text) transparent;width:100%;position:relative;overflow-x:auto}.week-calendar{border-collapse:separate;border-spacing:0;table-layout:fixed;font-variant-numeric:tabular-nums;min-width:544px}.week-calendar th,.week-calendar td{border-top:var(--border);border-left:var(--border);text-align:center;width:64px;height:56px;padding:0}.week-calendar thead th{z-index:2;background:var(--color-bg);height:64px;font-size:15px;font-weight:500;position:sticky;top:0}.week-calendar thead th span{letter-spacing:.08em;font-size:10px;display:block}.week-calendar .is-today{border-bottom:var(--border-strong)}.week-calendar .time-heading{z-index:3;background:var(--color-bg);width:64px;font-size:11px;font-weight:500;position:sticky;left:0}.week-calendar td button{border:0;width:100%;height:100%;min-height:55px;padding:0;font-size:15px}.week-calendar td button.is-selected{color:var(--color-bg);background:var(--color-text);font-size:11px}.calendar-loading{width:max-content;margin:14px;font-size:12px;position:sticky;left:80px}.month-calendar{border-right:var(--border);border-bottom:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-weekday{border-top:var(--border);border-left:var(--border);text-align:center;min-height:40px;padding:8px 2px;font-size:11px}.month-calendar button{text-align:left;border-bottom:0;border-right:0;flex-direction:column;justify-content:space-between;min-width:0;min-height:72px;padding:6px;display:flex}.month-calendar button small{font-size:9px;line-height:1.2;display:block}.month-calendar button:not(:disabled):hover{color:var(--color-bg);background:var(--color-text)}.month-calendar .is-outside{opacity:.24}.empty-state{border-bottom:var(--border);padding:32px 0}.empty-state h2{font-family:var(--font-display);margin:0 0 12px;font-size:22px;font-weight:600}.category-tabs{border-bottom:var(--border);gap:24px;margin-bottom:28px;display:flex;overflow-x:auto}.category-tabs button{white-space:nowrap;border:0;flex:none;min-height:48px;padding:0 0 8px;font-size:12px}.category-tabs .is-selected{border-bottom:var(--border-strong);font-weight:700}.area-first{border-bottom:var(--border-strong);margin-bottom:32px;padding-bottom:32px}.step-guidance{max-width:560px;margin:8px 0 18px;font-size:14px;line-height:1.65}.area-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.area-choice-grid button{border:var(--border);text-align:left;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:10px;min-height:104px;padding:16px;display:flex}.area-choice-grid button span{font-size:13px}.area-choice-grid button strong{font-family:var(--font-display);font-size:23px;font-weight:600}.area-choice-grid button.is-selected{color:var(--color-bg);background:var(--color-text)}.menu-step-placeholder{border-top:var(--border);border-bottom:var(--border);min-height:128px;padding:26px 0}.menu-step-placeholder span,.auto-advance-note{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.menu-step-placeholder p{max-width:420px;font-family:var(--font-display);margin:14px 0 0;font-size:18px;font-weight:600;line-height:1.5}.all-menu-section>.section-title-row{margin-bottom:22px}.auto-advance-note{text-align:right;max-width:140px;margin:0}.menu-group{margin-top:30px}.menu-group h3{border-bottom:var(--border-strong);font-family:var(--font-display);letter-spacing:.02em;margin:0;padding-bottom:10px;font-size:18px;font-weight:600}.menu-list{border-bottom:var(--border)}.menu-list>button{border:0;border-top:var(--border);text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:5px 20px;width:100%;min-height:92px;padding:16px 0;display:grid}.menu-list>button.is-selected{color:var(--color-bg);background:var(--color-text);padding-left:16px;padding-right:16px}.menu-title{font-family:var(--font-display);font-size:19px;font-weight:600}.menu-price{font-variant-numeric:tabular-nums;white-space:nowrap}.menu-description{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;max-width:none;font-size:11px;line-height:1.4;overflow:hidden}.menu-area{letter-spacing:.08em;grid-column:1/-1;font-size:11px;font-weight:600}.flow-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:32px;display:grid}.selection-summary{margin-bottom:28px}.selected-menu-card{border:var(--border-strong);grid-template-columns:82px minmax(0,1fr);display:grid}.selection-summary-label{color:var(--color-bg);background:var(--color-text);letter-spacing:.08em;justify-content:center;align-items:center;margin:0;font-size:12px;font-weight:700;display:flex}.selection-summary-detail{min-width:0;padding:14px 16px}.selection-summary-detail>span,.selection-summary-detail>small{letter-spacing:.06em;font-size:11px;display:block}.selection-summary-detail strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:19px;font-weight:600;display:block;overflow:hidden}.single-step-choice{border:0;border-top:var(--border);border-bottom:var(--border);text-align:left;justify-content:space-between;align-items:center;width:100%;min-height:76px;padding:16px 0;display:flex}.single-step-choice strong{font-size:13px}.option-list{border-bottom:var(--border)}.option-list button{border:0;border-top:var(--border);text-align:left;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:60px;padding:16px 0;display:grid}.option-list button.is-selected{color:var(--color-bg);background:var(--color-text);padding-left:16px;padding-right:16px}.large-options button{min-height:108px}.off-choice-marker{border:var(--border);align-self:start;width:20px;height:20px;margin-top:2px}.large-options button.is-selected .off-choice-marker{border-color:var(--color-bg);background:var(--color-bg)}.off-choice-copy{flex-direction:column;gap:4px;display:flex}.off-choice-copy strong{font-family:var(--font-display);font-size:19px;font-weight:600}.off-choice-copy small{max-width:360px;font-size:12px;line-height:1.5}.off-choice-duration{letter-spacing:.04em;font-size:11px;font-weight:600}.off-choice-price{white-space:nowrap;align-self:start;padding-top:2px;font-size:12px;font-weight:600}.material-step{margin-top:32px}.date-selected-menu-card .selection-summary-detail>small+small{margin-top:3px;font-weight:600}.material-list{border-bottom:var(--border)}.material-list button{border:0;border-top:var(--border);text-align:left;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 0;display:grid}.square-radio{border:var(--border);width:20px;height:20px;display:block}.material-list .is-selected .square-radio{background:var(--color-text)}.confirm-list{border-bottom:var(--border);margin:0}.confirm-page form{padding-left:12px;padding-right:12px}.confirm-page .page-intro{border-bottom:0;margin-bottom:0}.confirm-list>div{border-top:var(--border);grid-template-columns:150px minmax(0,1fr);gap:20px;min-height:104px;padding:18px 80px 18px 0;display:grid;position:relative}.confirm-list dt{letter-spacing:.08em;font-size:12px;font-weight:700}.confirm-list dd{font-family:var(--font-display);margin:0;font-size:18px;font-weight:600}.confirm-list dd span,.confirm-list dd strong{font-family:var(--font-ui);margin-top:4px;font-size:13px;font-weight:400;display:block}.confirm-list dd .confirm-time-range{font-family:var(--font-ui);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin-top:8px;font-size:16px;font-weight:600}.confirm-list dd .confirm-time-note{max-width:34em;color:var(--color-sub);font-family:var(--font-ui);margin-top:6px;font-size:11px;font-weight:400;line-height:1.6;display:block}.confirm-list a{min-height:44px;padding:8px 0;font-size:13px;position:absolute;top:18px;right:0}.confirm-list .confirm-total{min-height:90px;padding-right:0}.confirm-total dd{font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-size:28px}.price-note{margin:10px 0 32px;font-size:13px}.section-title-row{justify-content:space-between;align-items:start;gap:24px;display:flex}.plain-link,.consultation-toggle{text-underline-offset:4px;border:0;min-height:44px;padding:8px 0;text-decoration:underline}.profile-summary{margin:0}.profile-summary>div{border-top:var(--border);grid-template-columns:110px 1fr;padding:10px 0;display:grid}.profile-summary dt{font-size:12px}.profile-summary dd{margin:0}.consultation-toggle{text-align:left;width:100%}.consultation-field{margin-top:20px}.final-action{border-top:var(--border-strong);padding:28px 0}.final-action p{font-size:14px}.final-action .button{width:100%;min-height:60px}.completion{padding-top:24px}.completion-word{letter-spacing:-.03em;margin:0 0 24px;font-size:clamp(40px,11vw,72px);font-weight:600;line-height:1}.completion-details{border-bottom:var(--border);margin:40px 0 32px}.completion-details>div{border-top:var(--border);grid-template-columns:100px minmax(0,1fr);gap:20px;padding:16px 0;display:grid}.completion-details dt{letter-spacing:.08em;font-size:11px}.completion-details dd{font-family:var(--font-display);margin:0;font-size:18px;font-weight:600}.booking-section{border-top:var(--border);padding:30px 0}.booking-list{border-bottom:var(--border)}.booking-list>a{border-top:var(--border);grid-template-columns:minmax(170px,.9fr) minmax(0,1fr) auto;align-items:center;gap:20px;min-height:88px;padding:16px 0;text-decoration:none;display:grid}.booking-list>a.is-next{min-height:116px}.booking-date{font-family:var(--font-display);font-size:18px;font-weight:600}.booking-date strong{font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-size:25px;font-weight:400;display:block}.booking-menu{font-size:15px}.booking-menu small{opacity:.55;margin-top:4px;font-size:11px;display:block}.booking-arrow{text-underline-offset:4px;font-size:12px;text-decoration:underline}.history-list{opacity:.72}.customer-info{margin-top:20px}.booking-status{width:max-content;min-height:36px;color:var(--color-bg);background:var(--color-text);letter-spacing:.05em;margin:0 0 24px;padding:5px 12px;font-size:12px}.cancel-section{border-top:var(--border-strong);border-bottom:var(--border);margin-top:36px;padding:28px 0}.back-link{margin-top:32px;display:inline-flex}.dialog-reason{margin-top:24px}@media (width<=620px){.booking-list>a{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.booking-menu{grid-column:1}.booking-arrow{grid-area:1/2/3}}@media (width<=520px){.flow-actions{grid-template-columns:1fr}.all-menu-section>.section-title-row{display:block}.all-menu-section .section-heading,.auto-advance-note{white-space:nowrap}.auto-advance-note{text-align:left;max-width:none;margin-top:8px}.reservation-progress-wrap{margin-bottom:24px}.progress-dot{width:30px;height:30px}.reservation-progress:before{top:15px}.progress-label{font-size:10px}.area-choice-grid button{min-height:102px;padding:15px}.area-choice-grid button strong{font-size:21px}.date-selection-summary{align-items:start;gap:20px}.confirm-list>div{grid-template-columns:1fr;gap:6px;padding-right:72px}.off-choice-price{grid-area:2/2/auto/-1;padding-top:4px}.confirm-list .confirm-total{padding-right:0}.profile-summary>div{grid-template-columns:1fr}.calendar-page{margin-left:-18px;margin-right:-18px}.calendar-page>.page-intro,.calendar-page>.next-booking-strip,.calendar-page>.reservation-config,.calendar-page>.selected-menu-card,.calendar-page>.calendar-selection,.calendar-page>.calendar-toolbar,.calendar-page>.calendar-nav,.calendar-page>.error-message,.calendar-page>.empty-state{margin-left:18px;margin-right:18px}.week-scroll{width:calc(100% - 18px);margin-left:18px}.calendar-selection .week-scroll{width:100%;margin-left:0}.month-calendar{margin-left:18px;margin-right:18px}.calendar-selection .month-calendar{margin-left:0;margin-right:0}.next-booking-strip{grid-template-columns:1fr}}.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}dialog{width:min(100% - 32px,520px);max-height:calc(100dvh - 32px);color:var(--color-text);background:var(--color-bg);border:var(--border-strong);box-shadow:none;border-radius:0;padding:28px;overflow:auto}dialog::backdrop{background:#00000059}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes loading-line{0%{transform:translate(0)}to{transform:translate(138%)}}@media (width>=720px){.customer-shell{padding-left:32px;padding-right:32px}.customer-header{margin-bottom:46px}.brand-logo{width:82px}}@media (width<=520px){.button-row{flex-direction:column}.sticky-action-inner{grid-template-columns:minmax(0,1fr) 142px}.data-list>div{grid-template-columns:1fr;gap:4px}dialog{width:calc(100% - 16px);min-height:calc(100dvh - 16px);padding:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-shell{width:min(100%, var(--content-admin));min-height:100vh;margin:0 auto;padding:0 24px 40px}.admin-header{min-height:80px;padding-top:max(12px, env(safe-area-inset-top));border-bottom:var(--border);justify-content:space-between;align-items:center;display:flex}.admin-brand,.admin-account{align-items:center;gap:18px;display:flex}.admin-brand img{width:58px;height:auto;display:block}.admin-brand span{letter-spacing:.1em;font-size:11px}.admin-account{font-size:12px}.admin-logout{text-underline-offset:4px;border:0;min-height:44px;padding:8px 0;text-decoration:underline}.admin-grid{grid-template-columns:220px minmax(0,1fr);display:grid}.admin-nav{border-right:var(--border);min-height:calc(100vh - 88px);padding:28px 22px 28px 0}.admin-nav a{border-top:var(--border);grid-template-columns:34px 1fr;align-items:center;min-height:48px;text-decoration:none;display:grid}.admin-nav a[aria-current=page]{border-bottom:3px solid var(--color-text);font-weight:700}.admin-nav a:last-child{border-bottom:var(--border)}.admin-nav span{letter-spacing:.08em;font-size:11px;font-weight:600}.admin-page-header{border-bottom:var(--border-strong);justify-content:space-between;align-items:end;gap:24px;padding-bottom:22px;display:flex}.admin-page-header .display-heading{font-size:clamp(32px,4vw,42px)}.admin-page-header>p{margin:0 0 4px;font-size:13px;font-weight:600}.admin-page-header>.button{white-space:nowrap;flex:none;min-height:44px;padding:9px 16px;font-size:13px}.admin-login{width:min(100% - 32px,560px);margin:0 auto;padding:max(80px,15vh) 0 60px}.admin-login form{border-top:var(--border);margin-top:48px;padding-top:40px}.admin-login .button{width:100%;margin-top:20px}.admin-login-note{border-top:var(--border);margin-top:36px;padding-top:20px;font-size:12px}.admin-table-wrap{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:780px}.admin-table th,.admin-table td{border-bottom:var(--border);text-align:left;vertical-align:top;padding:12px 10px}.admin-table th{letter-spacing:.08em;font-size:11px;font-weight:700}.admin-table td{font-size:14px}.admin-table td:first-child,.admin-table th:first-child{padding-left:0}.admin-table a,.admin-table button{text-underline-offset:4px;border:0;min-height:44px;padding:10px 0;font-size:12px;text-decoration:underline}.admin-toolbar{border-bottom:var(--border);flex-wrap:wrap;gap:12px;padding:20px 0;display:flex}.admin-toolbar>*{width:auto;min-width:160px}.admin-split{grid-template-columns:minmax(380px,1fr) minmax(320px,.7fr);gap:36px;padding-top:28px;display:grid}.admin-panel{min-width:0}.admin-panel>h2{border-bottom:var(--border);font-family:var(--font-display);margin:0;padding-bottom:12px;font-size:22px;font-weight:600;line-height:1.35}.admin-date-control{min-width:180px}.admin-calendar-controls{border-top:var(--border);border-bottom:var(--border);grid-template-columns:auto minmax(300px,1fr) 180px;align-items:center;gap:18px;padding:18px 0;display:grid}.calendar-view-switch{grid-template-columns:repeat(3,minmax(70px,1fr));display:grid}.calendar-view-switch button{border-right:0;min-height:46px;padding:8px 16px;font-size:13px}.calendar-view-switch button:last-child{border-right:var(--border)}.calendar-view-switch .is-selected{color:var(--color-bg);background:var(--color-text)}.calendar-period-nav{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;display:grid}.calendar-period-nav button{border:0;min-width:44px;padding:0;font-size:18px}.calendar-period-nav strong{font-family:var(--font-display);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:600;overflow:hidden}.admin-calendar-summary{border-bottom:var(--border);letter-spacing:.06em;justify-content:space-between;padding:14px 0;font-size:12px;font-weight:600;display:flex}.calendar-loading{border-bottom:var(--border);margin:0;padding:36px 0}.admin-day-calendar{border-bottom:var(--border)}.admin-day-row{border-top:var(--border);grid-template-columns:92px minmax(0,1fr);min-height:62px;display:grid}.admin-day-row>time{border-right:var(--border);font-variant-numeric:tabular-nums;place-items:center start;padding:10px 12px 10px 0;font-size:18px;display:grid}.calendar-booking,.calendar-slot-register,.calendar-slot-blocked,.calendar-slot-empty,.calendar-slot-open{min-width:0}.calendar-booking,.calendar-slot-register{align-content:center;gap:2px;padding:8px 12px;text-decoration:none;display:grid}.calendar-booking{color:var(--color-bg);background:var(--color-text)}.calendar-booking.is-continuation{background:var(--color-sub)}.calendar-booking strong,.calendar-slot-register strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.calendar-booking small,.calendar-slot-register small{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.calendar-slot-register{grid-template-columns:1fr auto;align-items:center}.calendar-slot-register small{text-underline-offset:3px;text-decoration:underline}.calendar-slot-blocked,.calendar-slot-empty,.calendar-slot-open{place-items:center;min-height:100%;padding:8px;font-size:10px;display:grid}.calendar-slot-blocked{color:var(--color-bg);background:var(--color-muted)}.calendar-closed-day{border-top:var(--border);text-align:center;gap:4px;padding:48px 0;display:grid}.calendar-closed-day strong{font-family:var(--font-display);font-size:26px}.calendar-closed-day span{font-size:12px}.admin-week-calendar{border-right:var(--border);border-bottom:var(--border);grid-template-columns:72px repeat(7,minmax(104px,1fr));display:grid}.admin-week-calendar>*{border-top:var(--border);border-left:var(--border);min-width:0}.admin-week-calendar>button,.week-time-heading{text-align:center;background:0 0;border-bottom:0;border-right:0;min-height:58px;padding:8px}.admin-week-calendar>button span{font-size:10px}.admin-week-calendar>button.is-today{color:var(--color-bg);background:var(--color-text)}.week-time-heading,.admin-week-calendar>time{place-items:center;font-size:10px;font-weight:600;display:grid}.admin-week-calendar>time{font-variant-numeric:tabular-nums;min-height:48px;padding:6px}.week-slot-cell{min-height:48px}.week-slot-cell .calendar-booking{height:100%;padding:6px}.week-slot-cell .calendar-booking strong{font-size:10px}.admin-week-agenda{display:none}.admin-month-calendar{border-right:var(--border);border-bottom:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.admin-month-calendar>div{border-top:var(--border);border-left:var(--border);min-width:0;min-height:128px;padding:8px}.admin-month-calendar>.month-weekday{place-items:center;min-height:42px;padding:6px;font-size:11px;font-weight:600;display:grid}.admin-month-calendar>div.is-outside{opacity:.28}.admin-month-calendar>div.is-today{outline:var(--border-strong);outline-offset:-4px}.month-day-button{text-align:left;border:0;justify-content:space-between;width:100%;min-height:34px;padding:0;display:flex}.month-day-button span{font-size:16px}.month-day-button small{font-size:9px}.month-bookings{gap:4px;display:grid}.month-bookings .calendar-booking{min-height:34px;padding:5px 6px}.month-bookings .calendar-booking strong{font-size:10px}.month-no-booking{color:var(--color-muted);font-size:9px}.admin-calendar-legend{flex-wrap:wrap;gap:16px;padding-top:14px;display:flex}.admin-calendar-legend span{align-items:center;gap:6px;font-size:10px;display:inline-flex}.admin-calendar-legend i{border:var(--border);width:12px;height:12px}.admin-calendar-legend .legend-booked{background:var(--color-text)}.admin-calendar-legend .legend-blocked{background:var(--color-muted)}.default-shift-summary{border-right:var(--border-strong);border-bottom:var(--border-strong);grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px;display:grid}.default-shift-summary>div{border-top:var(--border-strong);border-left:var(--border-strong);gap:6px;min-height:112px;padding:18px;display:grid}.default-shift-summary span,.default-shift-summary small{font-size:12px}.default-shift-summary strong{font-family:var(--font-display);align-self:end;font-size:clamp(20px,2.5vw,26px);font-weight:600}.shift-month-nav{border-bottom:var(--border);grid-template-columns:auto 1fr auto;align-items:center;display:grid}.shift-month-nav h2{font-family:var(--font-display);text-align:center;margin:0;font-size:21px;font-weight:600}.shift-month-nav button{text-underline-offset:4px;border:0;min-height:52px;padding:8px 0;font-size:12px;text-decoration:underline}.shift-weekdays,.shift-calendar{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.shift-weekdays{margin-top:16px}.shift-weekdays button{border-right:0;min-width:0;padding:0;font-size:12px}.shift-weekdays button:last-child{border-right:var(--border)}.shift-weekdays button:disabled{cursor:not-allowed;opacity:.35}.shift-calendar{border-right:var(--border);border-bottom:var(--border)}.shift-calendar>div{border-top:var(--border);border-left:var(--border);text-align:center;min-height:38px;padding:8px 2px;font-size:10px}.shift-calendar>button{text-align:left;border-bottom:0;border-right:0;flex-direction:column;justify-content:space-between;min-width:0;min-height:64px;padding:6px;display:flex}.shift-calendar>button small{font-size:10px}.shift-calendar>button.is-outside{opacity:.2}.shift-calendar>button.is-closed{outline:1px dashed var(--color-text);outline-offset:-5px;background:#00000014}.shift-calendar>button.is-partial{border-bottom:5px solid var(--color-text)}.shift-calendar>button.is-sunday{cursor:not-allowed;opacity:.55;background:#00000014}.shift-calendar>button.is-selected{color:var(--color-bg);background:var(--color-text);border-bottom:0;outline:0}.shift-legend{flex-wrap:wrap;gap:14px;margin-top:14px;display:flex}.shift-legend span{align-items:center;gap:6px;font-size:10px;display:inline-flex}.shift-legend i{border:var(--border);width:12px;height:12px}.shift-legend .legend-closed{outline:1px dashed var(--color-text);outline-offset:-3px;background:#0000002e}.shift-legend .legend-partial{border-bottom:4px solid var(--color-text)}.shift-legend .legend-sunday{background:#0000002e}.shift-help{font-size:12px}.shift-setting-block{border-bottom:var(--border);padding:18px 0}.shift-setting-block p{margin-top:0}.shift-setting-block small{font-size:12px}.shift-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.shift-time-grid button{border-bottom:0;border-right:0}.shift-time-grid button:nth-child(2n){border-right:var(--border)}.shift-time-grid button:nth-last-child(-n+2){border-bottom:var(--border)}.shift-time-grid .is-selected{color:var(--color-bg);background:var(--color-text)}.shift-settings>.button{width:100%;margin-top:24px}.simple-shift-settings h2{margin-bottom:0}.shift-action-options{gap:10px;margin-top:22px;display:grid}.shift-action-options button{text-align:left;gap:6px;min-height:84px;padding:14px;display:grid}.shift-action-options button span{font-size:16px;font-weight:700}.shift-action-options button small{font-size:12px}.shift-action-options button.is-selected{color:var(--color-bg);background:var(--color-text)}.shift-time-range{border:var(--border);margin:0;padding:16px}.shift-time-range legend{letter-spacing:.06em;padding:0 8px;font-size:11px;font-weight:700}.shift-time-range>div{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;display:grid}.shift-time-range label{gap:5px;display:grid}.shift-time-range label>span{font-size:11px;font-weight:600}.shift-time-range select{font-variant-numeric:tabular-nums}.shift-time-range>div>span{min-height:44px;padding-top:10px}.shift-time-range p{margin:10px 0 0;font-size:11px}.shift-confirm-dialog{width:min(100% - 32px,680px);min-height:0;padding:0}.shift-confirm-header{z-index:2;background:var(--color-bg);border-bottom:var(--border-strong);justify-content:space-between;align-items:start;gap:20px;padding:20px 24px 14px;display:flex;position:sticky;top:0}.shift-confirm-header .section-heading{margin-bottom:0}.shift-confirm-body{padding:22px 24px 24px}.shift-confirm-summary{border-bottom:var(--border);margin:0 0 22px}.shift-confirm-summary>div{border-top:var(--border);grid-template-columns:100px minmax(0,1fr);gap:16px;padding:11px 0;display:grid}.shift-confirm-summary dt{letter-spacing:.06em;font-size:11px;font-weight:700}.shift-confirm-summary dd{margin:0;font-size:14px}.shift-scope-note{border:var(--border-strong);margin:-8px 0 20px;padding:12px;font-size:12px;font-weight:600;line-height:1.65}.shift-confirm-dialog .preview-counts{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:20px}.shift-confirm-actions{border-top:var(--border);grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:12px;margin-top:20px;padding-top:18px;display:grid}.shift-confirm-actions .button{width:100%;padding-left:12px;padding-right:12px}.preview-counts{border-right:var(--border);border-bottom:var(--border);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:28px;display:grid}.preview-counts>div{border-top:var(--border);border-left:var(--border);min-height:92px;padding:12px}.preview-counts span{font-size:11px;font-weight:600;display:block}.preview-counts strong{font-size:28px;font-weight:400;display:block}.admin-form-wide{padding-top:8px}.admin-form-wide .admin-panel .field{margin-top:24px}.admin-choice-list{border-bottom:var(--border);display:grid}.admin-choice-list button{text-align:left;border-bottom:0;min-height:52px;padding:10px}.admin-choice-list .is-selected{color:var(--color-bg);background:var(--color-text)}.admin-submit{min-width:320px;margin-top:40px}.booking-actions-panel>h2{margin-bottom:0}.admin-action-block{border-bottom:var(--border);padding:18px 0}.admin-action-block .button{width:100%}.booking-actions-panel>.button-danger{width:100%;margin-top:24px}.hard-delete-link{margin-top:24px;font-size:12px}.menu-admin-list,.menu-editor{align-self:start}.menu-admin-list{max-width:960px;padding-top:28px}.admin-panel-heading-row{border-bottom:var(--border);justify-content:space-between;align-items:end;gap:16px;padding-bottom:12px;display:flex}.admin-panel-heading-row h2{font-family:var(--font-display);margin:0;font-size:22px;font-weight:600;line-height:1.35}.admin-panel-heading-row p{letter-spacing:.04em;margin:0 0 2px;font-size:11px}.menu-admin-group{margin-bottom:28px}.menu-admin-group h3{border-bottom:var(--border-strong);letter-spacing:.08em;margin:0;padding:10px 0;font-size:11px;font-weight:500}.menu-admin-group>div{border-bottom:var(--border);grid-template-columns:minmax(0,1fr) auto;display:grid}.menu-admin-group>div.is-inactive{opacity:.48}.menu-admin-select{text-align:left;border:0;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;min-height:58px;padding:10px 0;display:grid}.menu-admin-select:hover:not(:disabled){font-weight:600}.menu-admin-select small{grid-column:1/-1}.menu-order-actions{border-left:var(--border);display:flex}.menu-order-actions button{border:0;width:44px;min-height:44px}.menu-editor form{padding-top:24px}.menu-editor-dialog{width:min(100% - 32px,720px);min-height:0;padding:0}.menu-editor-dialog-header{z-index:2;background:var(--color-bg);border-bottom:var(--border-strong);justify-content:space-between;align-items:start;gap:20px;padding:20px 24px 14px;display:flex;position:sticky;top:0}.menu-editor-dialog-header .section-heading{margin-bottom:0}.dialog-close{border:0;flex:0 0 44px;width:44px;min-height:44px;padding:0;font-size:26px;line-height:1}.menu-editor-dialog>.error-message,.menu-editor-dialog>.menu-editor{margin-left:24px;margin-right:24px}.menu-editor-dialog .menu-editor form{padding-top:20px}.menu-editor-dialog textarea{min-height:88px}.menu-editor-actions{border-top:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:8px;padding-top:16px;display:grid}.menu-editor-actions .button{width:100%}.form-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.plain-fieldset{border:0;border-top:var(--border);border-bottom:var(--border);margin:0 0 20px;padding:16px 0}.plain-fieldset legend{padding:0 8px 0 0;font-size:12px}.menu-editor .button-primary{width:100%}.archive-link{margin-top:20px;font-size:12px}.customer-note-field{margin-top:28px}.customer-booking-history{border-bottom:var(--border)}.customer-booking-history a{border-top:var(--border);gap:2px;padding:14px 0;text-decoration:none;display:grid}.customer-booking-history a:hover{text-underline-offset:4px;text-decoration:underline}.customer-booking-history small{text-transform:uppercase;font-size:10px}.settings-form{max-width:960px}.settings-section{border-bottom:var(--border);padding:32px 0}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;display:grid}.settings-short-field{max-width:360px}.settings-submit{min-width:260px;margin-top:32px}@media (width<=620px){.settings-fields,.form-two-columns{grid-template-columns:1fr}}@media (width<=720px){.preview-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.admin-shell{padding-left:16px;padding-right:16px}.admin-header{min-height:78px}.admin-account>span{display:none}.admin-grid{display:block}.admin-nav{border-right:0;border-bottom:var(--border);scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:24px;min-height:0;padding:0;display:flex;overflow-x:auto}.admin-nav::-webkit-scrollbar{display:none}.admin-nav a{scroll-snap-align:start;border:0;flex:none;gap:8px;min-height:52px;display:flex}.admin-nav a:last-child{border-bottom:0}.admin-content{padding:28px 0 0}.admin-split{grid-template-columns:1fr}.shift-settings{position:static}.admin-calendar-controls{grid-template-columns:minmax(0,1fr) 164px}.calendar-view-switch{grid-column:1/-1}.admin-week-calendar{display:none}.admin-week-agenda{border-bottom:var(--border);display:grid}.admin-week-agenda>div{border-top:var(--border);gap:8px;padding:14px 0;display:grid}.admin-week-agenda>div>button{min-height:36px;font-family:var(--font-display);text-align:left;border:0;padding:0;font-size:17px;font-weight:600}.admin-week-agenda>div.is-today>button{text-underline-offset:5px;text-decoration:underline}.admin-week-agenda .calendar-booking{min-height:54px}.admin-week-agenda p{margin:0;font-size:12px}}@media (width<=560px){.admin-brand span{display:none}.admin-page-header{align-items:end;gap:12px;padding-bottom:18px;display:flex}.admin-page-header>div{min-width:0}.admin-page-header .display-heading{font-size:clamp(29px,9vw,36px)}.admin-page-header>p{margin:0 0 2px}.admin-page-header>.button{padding-left:12px;padding-right:12px;font-size:12px}.admin-date-control{width:146px;min-width:0}.admin-date-control input{text-align:center;padding-left:8px;padding-right:8px;font-size:13px}.admin-calendar-header .display-heading{font-size:clamp(27px,8.5vw,34px)}.admin-calendar-controls{grid-template-columns:minmax(0,1fr) 138px;gap:10px;padding:14px 0}.calendar-view-switch button{min-height:44px;padding:7px 10px}.calendar-period-nav{grid-template-columns:38px minmax(0,1fr) 38px}.calendar-period-nav strong{font-size:14px}.admin-calendar-controls .admin-date-control{width:138px}.admin-calendar-summary{letter-spacing:.03em;gap:12px;font-size:11px}.admin-calendar-summary span:last-child{text-align:right}.admin-day-row{grid-template-columns:62px minmax(0,1fr);min-height:54px}.admin-day-row>time{padding-right:8px;font-size:14px}.calendar-booking,.calendar-slot-register{padding:7px 9px}.calendar-booking strong,.calendar-slot-register strong{font-size:13px}.admin-month-calendar>div{min-height:90px;padding:4px}.admin-month-calendar>.month-weekday{min-height:34px;padding:4px;font-size:10px}.month-day-button{min-height:28px}.month-day-button span{font-size:13px}.month-day-button small{font-size:8px}.month-bookings{gap:2px}.month-bookings .calendar-booking{min-height:30px;padding:3px}.month-bookings .calendar-booking strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:9px;line-height:1.35;display:-webkit-box;overflow:hidden}.month-no-booking{display:none}.menu-admin-list{padding-top:22px}.admin-panel-heading-row p{text-align:right;max-width:120px}.menu-admin-select{min-height:56px;font-size:14px}.menu-admin-select>span:nth-child(2){white-space:nowrap;font-size:13px}.menu-order-actions button{width:40px}.menu-editor-dialog-header{padding:18px 18px 12px}.menu-editor-dialog>.error-message,.menu-editor-dialog>.menu-editor{margin-left:18px;margin-right:18px}.default-shift-summary{grid-template-columns:1fr}.shift-calendar>button{min-height:58px;padding:5px}.shift-time-range{padding:14px}.shift-confirm-header{padding:18px 18px 12px}.shift-confirm-body{padding:18px}.shift-confirm-summary>div{grid-template-columns:74px minmax(0,1fr);gap:10px}.shift-confirm-dialog .preview-counts{grid-template-columns:repeat(3,minmax(0,1fr))}.shift-confirm-dialog .preview-counts>div{min-height:76px;padding:9px}.shift-confirm-dialog .preview-counts strong{font-size:24px}}.menu-table-section{width:100%;max-width:none;padding-top:26px;overflow:hidden}.menu-management-table{min-width:1040px}.menu-management-table th:nth-child(6),.menu-management-table th:nth-child(7),.menu-management-table td:nth-child(6),.menu-management-table td:nth-child(7){font-size:14px;font-weight:700}.menu-management-table tr.is-inactive{color:var(--color-muted)}.menu-table-edit{text-align:left;text-underline-offset:4px;border:0;min-height:44px;padding:8px 0;font-weight:700;text-decoration:underline}.menu-snapshot-notice{border-top:var(--border);border-bottom:var(--border);margin:0 0 18px;padding:14px 0;font-size:11px}.booking-action-heading{border-top:var(--border-strong);letter-spacing:.08em;margin:8px 0 0;padding:16px 0 8px;font-size:12px}.booking-action-heading.is-danger{margin-top:24px}.danger-operation-note{margin:0 0 10px;font-size:11px}.booking-history-section,.customer-next-booking,.customer-history-section{padding-top:36px}.booking-history-section ol{border-bottom:var(--border);margin:0;padding:0;list-style:none}.booking-history-section li{border-top:var(--border);grid-template-columns:180px minmax(0,1fr) 90px;gap:18px;padding:13px 0;display:grid}.booking-history-section time,.booking-history-section span{font-size:11px}.delete-booking-summary{border-bottom:var(--border);margin:20px 0}.delete-booking-summary>div{border-top:var(--border);grid-template-columns:110px minmax(0,1fr);gap:16px;padding:10px 0;display:grid}.delete-booking-summary dt{font-size:11px;font-weight:700}.delete-booking-summary dd{margin:0}.customer-next-booking>a{border-bottom:var(--border);grid-template-columns:minmax(190px,.7fr) minmax(0,1fr) auto;align-items:center;gap:18px;min-height:70px;padding:12px 0;text-decoration:none;display:grid}.customer-history-section .customer-booking-history a{grid-template-columns:minmax(180px,.7fr) minmax(0,1fr) 130px}.settings-description{margin:8px 0 20px;font-size:12px}.settings-fields .field>small{margin-top:6px;font-size:10px}@media (width<=560px){.booking-history-section li,.customer-next-booking>a,.customer-history-section .customer-booking-history a{grid-template-columns:1fr;gap:4px}}@media (width>=901px){.shift-settings{align-self:start;position:sticky;top:20px}}.today-page-header .eyebrow{margin-bottom:6px}.today-metrics{border-right:var(--border-strong);border-bottom:var(--border-strong);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.today-metrics>div{border-top:var(--border-strong);border-left:var(--border-strong);gap:12px;min-height:112px;padding:18px;display:grid}.today-metrics span{letter-spacing:.06em;font-size:11px;font-weight:700}.today-metrics strong{font-family:var(--font-display);align-self:end;font-size:clamp(24px,3vw,34px);font-weight:600;line-height:1.1}.today-metrics small{font-family:var(--font-body);margin-left:4px;font-size:12px}.next-booking-section,.today-timeline-section,.today-attention{padding-top:34px}.admin-section-heading{border-bottom:var(--border-strong);padding-bottom:14px}.admin-section-heading h2{font-family:var(--font-display);margin:2px 0 0;font-size:clamp(24px,3vw,32px);font-weight:600;line-height:1.25}.next-booking-row{border-bottom:var(--border);grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:22px;min-height:92px;padding:15px 0;text-decoration:none;display:grid}.next-booking-row time{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:32px}.next-booking-row div{gap:3px;display:grid}.next-booking-row strong{font-size:17px}.next-booking-row span{font-size:12px}.today-empty-row{border-bottom:var(--border);min-height:64px;margin:0;padding:20px 0;font-size:13px}.timeline-heading-row{justify-content:space-between;align-items:end;gap:24px;display:flex}.timeline-heading-row>p{text-align:right;max-width:320px;margin:0 0 3px;font-size:11px}.today-timeline-desktop{border-right:var(--border);border-bottom:var(--border);border-left:var(--border);min-height:760px;margin-top:18px;margin-left:82px;position:relative}.timeline-mark{z-index:0;border-top:1px dotted var(--color-muted);position:absolute;left:0;right:0}.timeline-mark.is-hour{border-top:var(--border)}.timeline-mark time{font-variant-numeric:tabular-nums;text-align:right;width:64px;font-size:12px;position:absolute;top:-9px;right:calc(100% + 12px)}.timeline-now{z-index:5;pointer-events:none;border-top:2px solid #000;position:absolute;left:-82px;right:0}.timeline-now span{background:var(--color-bg);padding-right:5px;font-size:10px;font-weight:700;position:absolute;top:-11px;left:0}.timeline-interval{z-index:2;border-bottom:var(--border);min-height:30px;position:absolute;left:0;right:0;overflow:hidden}.timeline-interval>button,.timeline-interval>div,.today-booking-block{width:100%;height:100%;min-height:100%}.timeline-interval>button,.timeline-interval>div{text-align:left;border:0;justify-content:space-between;align-items:center;gap:18px;padding:8px 14px;display:flex}.timeline-interval>button span,.timeline-interval>div span{font-size:10px}.timeline-interval.is-open>button:hover,.timeline-interval.is-open>button:focus-visible{color:var(--color-text);outline:var(--border-strong);outline-offset:-3px;background:0 0}.timeline-open-button{cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none}.timeline-interval>.timeline-drag-selection{z-index:4;width:100%;min-height:0;color:var(--color-bg);background:var(--color-text);border-top:var(--border-strong);border-bottom:var(--border-strong);pointer-events:none;padding:5px 10px;font-size:11px;font-weight:700;display:flex;position:absolute;left:0;right:0}.timeline-interval.is-blocked{color:var(--color-bg);background:var(--color-sub)}.timeline-interval.is-unavailable{color:var(--color-muted)}.today-booking-block{color:var(--color-bg);background:var(--color-text);cursor:pointer;text-align:left;border:0;grid-template-columns:90px minmax(150px,.7fr) minmax(180px,1fr);align-content:center;align-items:center;gap:14px;padding:10px 14px;text-decoration:none;display:grid}.today-booking-block:hover,.today-booking-block:focus-visible{color:var(--color-bg);outline:2px solid var(--color-bg);outline-offset:-5px}.today-booking-block>span{font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.today-booking-block>strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.today-booking-block>small{text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.today-timeline-mobile{display:none}.attention-list{border-bottom:var(--border)}.attention-list>a,.attention-list>div{border-top:var(--border);grid-template-columns:minmax(180px,.7fr) minmax(220px,1fr) auto;align-items:center;gap:20px;min-height:64px;padding:12px 0;text-decoration:none;display:grid}.attention-list span,.attention-list small{font-size:11px}.week-overview{border-right:var(--border);border-bottom:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));margin-top:20px;display:grid}.week-overview>section{border-top:var(--border);border-left:var(--border);min-width:0}.week-overview>section.is-today{outline:var(--border-strong);outline-offset:-3px}.week-overview>section>button{border:0;border-bottom:var(--border);text-align:left;gap:4px;width:100%;min-height:64px;padding:9px;display:grid}.week-overview>section>button span{font-size:9px}.week-overview>section>div{gap:1px;min-height:150px;display:grid}.week-overview .today-booking-block{grid-template-columns:1fr;gap:3px;height:auto;min-height:78px;padding:9px;display:grid}.week-overview .today-booking-block>strong{font-size:11px}.week-overview .today-booking-block>small{text-align:left;white-space:normal}.week-overview p{margin:0;padding:12px 9px;font-size:10px}.month-mode-switch{grid-template-columns:repeat(2,minmax(120px,180px));justify-content:end;margin:18px 0;display:grid}.month-mode-switch button{border-right:0;min-height:44px}.month-mode-switch button:last-child{border-right:var(--border)}.month-mode-switch .is-selected{color:var(--color-bg);background:var(--color-text)}.operational-month-calendar .month-day-button{grid-template-columns:1fr auto;align-items:start;gap:2px 8px;display:grid}.operational-month-calendar .month-day-button strong{font-size:11px}.operational-month-calendar .month-day-button small{grid-column:1/-1}.operational-month-calendar .month-bookings a,.operational-month-calendar .month-bookings span,.month-shift-status span,.month-shift-status small{text-overflow:ellipsis;white-space:nowrap;padding-top:4px;font-size:9px;display:block;overflow:hidden}.operational-month-calendar .month-bookings a{min-height:24px;color:var(--color-bg);background:var(--color-text);text-decoration:none}.timeline-action-dialog,.booking-quick-dialog{width:min(100% - 32px,600px)}.timeline-dialog-header{border-bottom:var(--border-strong);justify-content:space-between;align-items:start;gap:20px;padding-bottom:16px;display:flex}.timeline-dialog-header .section-heading{margin-bottom:0}.timeline-selected-date{font-family:var(--font-display);margin:18px 0 10px;font-size:22px;font-weight:600}.timeline-range-picker{border:0;border-top:var(--border);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px;padding:16px 0 0;display:grid}.timeline-range-picker legend{padding:0 0 10px;font-size:12px;font-weight:700}.timeline-range-picker label{gap:5px;display:grid}.timeline-range-picker label span,.timeline-range-help{font-size:11px}.timeline-range-picker>span{min-height:44px;padding-top:12px}.timeline-range-help{margin:10px 0 20px;line-height:1.6}.booking-quick-details{border-bottom:var(--border);margin:18px 0 22px}.booking-quick-details>div{border-top:var(--border);grid-template-columns:108px minmax(0,1fr);gap:16px;padding:11px 0;display:grid}.booking-quick-details dt{font-size:11px;font-weight:700}.booking-quick-details dd{gap:3px;margin:0;font-size:13px;display:grid}.booking-quick-details dd strong{font-variant-numeric:tabular-nums;font-size:16px}.booking-quick-details dd span{font-size:11px}.booking-quick-dialog .button{width:100%}.empty-time-actions{border-top:var(--border);border-bottom:var(--border);gap:18px;padding:22px 0;display:grid}.empty-time-actions>.button{width:100%}.empty-time-actions fieldset{border:0;border-top:var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:14px 0 0;display:grid}.empty-time-actions legend{padding:0 0 10px;font-weight:700}.empty-time-actions fieldset p{margin:0;font-size:12px}.empty-time-actions .field{margin:0}.dialog-cancel-link{min-height:44px;margin-top:14px}@media (width<=900px){.today-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.today-timeline-desktop{display:none}.today-timeline-mobile{border-bottom:var(--border);display:grid}.mobile-time-row{border-top:var(--border);grid-template-columns:118px minmax(0,1fr);min-height:64px;display:grid}.mobile-time-row>time{border-right:var(--border);font-variant-numeric:tabular-nums;align-content:center;padding:12px 10px 12px 0;font-size:12px;display:grid}.mobile-time-row>button,.mobile-time-row>div{text-align:left;border:0;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 12px;display:flex}.mobile-time-row>button span{font-size:10px}.mobile-time-row.is-blocked>div{color:var(--color-bg);background:var(--color-sub)}.mobile-time-row.is-unavailable>div{color:var(--color-muted)}.mobile-time-row .today-booking-block{grid-template-columns:1fr;gap:2px;min-height:76px;padding:10px 12px}.mobile-time-row .today-booking-block>span{display:none}.mobile-time-row .today-booking-block>small{text-align:left}.week-overview{grid-template-columns:1fr}.week-overview>section{grid-template-columns:150px minmax(0,1fr);display:grid}.week-overview>section>button{border-right:var(--border);border-bottom:0;min-height:100%}.week-overview>section>div{min-height:70px}.attention-list>a,.attention-list>div{grid-template-columns:1fr auto;gap:5px 12px}.attention-list span{grid-column:1/-1}}@media (width<=560px){.today-metrics>div{min-height:92px;padding:13px}.today-metrics strong{font-size:clamp(20px,6.8vw,28px)}.next-booking-row{grid-template-columns:76px minmax(0,1fr);gap:10px}.next-booking-row time{font-size:24px}.next-booking-row>span{grid-column:2}.timeline-heading-row{display:block}.timeline-heading-row>p{text-align:left;margin-top:8px}.mobile-time-row{grid-template-columns:92px minmax(0,1fr)}.mobile-time-row>time{padding-right:6px;font-size:10px}.month-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.operational-month-calendar .month-bookings a,.operational-month-calendar .month-bookings span,.month-shift-status span,.month-shift-status small{padding:2px;font-size:8px}.empty-time-actions fieldset{grid-template-columns:1fr}.timeline-range-picker{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.booking-quick-details>div{grid-template-columns:90px minmax(0,1fr)}}.shift-workflow{border-top:var(--border);border-bottom:var(--border);grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 28px;padding:0;list-style:none;display:grid}.shift-workflow li{border-left:var(--border);align-items:center;gap:8px;min-height:50px;padding:8px;font-size:11px;display:flex}.shift-workflow li:last-child{border-right:var(--border)}.shift-workflow span{border:var(--border);place-items:center;width:24px;height:24px;font-size:10px;display:grid}.shift-workflow .is-current,.shift-workflow .is-done span{color:var(--color-bg);background:var(--color-text)}.shift-recurrence{border:0;border-top:var(--border);border-bottom:var(--border);margin:20px 0;padding:18px 0}.shift-recurrence legend{padding:0 0 12px;font-weight:700}.shift-recurrence>p{margin:8px 0 0;font-size:11px}.shift-preview-details{border-bottom:var(--border);gap:0;display:grid}.shift-preview-details>div{border-top:var(--border);grid-template-columns:160px minmax(0,1fr);gap:16px;padding:12px 0;display:grid}.shift-preview-details p{margin:0;font-size:11px}@media (width<=560px){.shift-workflow{grid-template-columns:repeat(5,minmax(0,1fr))}.shift-workflow li{text-align:center;border-right:0;flex-direction:column;justify-content:center;gap:3px;min-height:62px;padding:5px 2px;font-size:9px}.shift-workflow li:last-child{border-right:var(--border)}.shift-workflow span{width:21px;height:21px}.shift-preview-details>div{grid-template-columns:1fr;gap:5px}}@media (width<=900px){.admin-table-wrap,.menu-table-section{max-width:calc(100vw - 32px)}}@media (width<=560px){.admin-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid;overflow:visible}.admin-nav a{border-bottom:var(--border);justify-content:center;min-width:0;min-height:44px;font-size:12px}.admin-nav a:not(:nth-child(3n)){border-right:var(--border)}.admin-nav a:nth-child(n+4){border-bottom:0}.admin-nav a[aria-current=page]{border-bottom:3px solid var(--color-text)}}.admin-shell{grid-template-columns:216px minmax(0,1fr);width:100%;max-width:none;min-height:100vh;padding:0;display:grid}.admin-sidebar{height:100vh;padding:22px 20px max(20px, env(safe-area-inset-bottom));border-right:var(--border);flex-direction:column;display:flex;position:sticky;top:0}.admin-sidebar-brand{border-bottom:var(--border-strong);gap:12px;padding-bottom:22px;text-decoration:none;display:grid}.admin-sidebar-brand img{width:84px;height:auto;display:block}.admin-sidebar-brand span{letter-spacing:.12em;font-size:10px;font-weight:700}.admin-desktop-nav{padding-top:20px;display:grid}.admin-desktop-nav a{border-bottom:var(--border);align-items:center;min-height:48px;font-size:14px;text-decoration:none;display:flex}.admin-desktop-nav a[aria-current=page]{color:var(--color-bg);background:var(--color-text);padding-left:10px;font-weight:700}.admin-sidebar-footer{border-top:var(--border);margin-top:auto;padding-top:16px}.admin-workspace{min-width:0}.admin-topbar{border-bottom:var(--border);justify-content:flex-end;align-items:center;gap:18px;min-height:62px;padding:8px 30px;display:flex}.admin-user-label{margin:0;font-size:12px}.admin-create-booking{min-width:124px;min-height:44px;color:var(--color-bg);background:var(--color-text);place-items:center;font-size:13px;text-decoration:none;display:grid}.admin-mobile-brand,.admin-mobile-nav,.admin-more-dialog{display:none}.admin-content{min-width:0;padding:26px 30px 56px}.admin-content main{width:100%;max-width:none}.admin-page-header{padding-bottom:16px}.admin-page-header .display-heading{font-size:clamp(48px,4vw,56px);line-height:1.08}.admin-page-header .eyebrow{margin-bottom:4px;font-size:11px}.admin-calendar-toolbar{border-bottom:var(--border);grid-template-columns:auto minmax(150px,1fr) auto auto auto auto;align-items:center;gap:0;padding:14px 0;display:grid}.admin-calendar-toolbar>button,.admin-calendar-toolbar>.button{white-space:nowrap;border-right:0;min-height:44px;padding:8px 14px;font-size:13px}.admin-calendar-toolbar>strong{min-width:0;font-family:var(--font-display);text-align:center;padding:0 18px;font-size:21px}.admin-view-switch{grid-template-columns:repeat(3,50px);margin-left:14px;display:grid}.admin-view-switch button{border-right:0;min-height:44px}.admin-view-switch button:last-child{border-right:var(--border)}.admin-view-switch .is-selected{color:var(--color-bg);background:var(--color-text)}.admin-calendar-workspace{grid-template-columns:minmax(0,1fr) 340px;min-height:calc(100vh - 230px);display:grid}.admin-calendar-main{min-width:0;padding:18px 26px 0 0}.admin-calendar-workspace.is-month{grid-template-columns:minmax(0,1fr)}.admin-calendar-workspace.is-month .admin-calendar-main{padding-right:0}.selected-date-panel{border-left:var(--border);min-width:0;padding:24px 0 40px 24px}.selected-date-heading{border-bottom:var(--border-strong);padding-bottom:16px}.selected-date-heading h2{font-family:var(--font-display);margin:2px 0;font-size:28px;line-height:1.25}.selected-date-heading>span{font-size:12px}.selected-next-booking,.selected-booking-list,.selected-attention,.selected-quick-actions{border-bottom:var(--border);padding:18px 0}.selected-date-panel h3{font-family:var(--font-ui);margin:0 0 10px;font-size:13px}.selected-next-booking>button,.selected-booking-list>button{border:0;border-top:var(--border);text-align:left;grid-template-columns:58px minmax(0,1fr);gap:1px 12px;width:100%;min-height:58px;padding:9px 0;display:grid}.selected-next-booking time,.selected-booking-list time{font-variant-numeric:tabular-nums;grid-row:1/3}.selected-next-booking span,.selected-booking-list span,.selected-booking-list p{margin:0;font-size:11px}.selected-attention>a,.selected-attention>div{border-top:var(--border);gap:2px;padding:9px 0;font-size:11px;text-decoration:none;display:grid}.selected-quick-actions{display:grid}.selected-quick-actions a{border-top:var(--border);align-items:center;min-height:44px;font-size:13px;text-decoration:none;display:flex}.month-mode-switch{margin:0 0 12px}.admin-month-calendar-v2{grid-auto-rows:auto}.admin-month-calendar-v2>.month-weekday{min-height:36px}.admin-month-calendar-v2>button{border-bottom:0;border-right:0;border-left:var(--border);text-align:left;grid-template-rows:auto 1fr auto;grid-template-columns:1fr auto;gap:4px 6px;min-width:0;min-height:104px;padding:9px;display:grid;position:relative}.admin-month-calendar-v2>button:nth-last-child(-n+7){border-bottom:0}.admin-month-calendar-v2>button>span{font-variant-numeric:tabular-nums;font-size:18px}.admin-month-calendar-v2>button>em{align-self:center;font-size:9px;font-style:normal;font-weight:700}.admin-month-calendar-v2>button>strong{grid-column:1/-1;align-self:end;font-size:12px}.admin-month-calendar-v2>button>small{grid-column:1/-1;min-height:16px;font-size:9px}.admin-month-calendar-v2>button.is-outside{opacity:.28}.admin-month-calendar-v2>button.is-today{border-top:2px solid var(--color-text)}.admin-month-calendar-v2>button.is-selected{color:var(--color-bg);background:var(--color-text)}.date-bookings-dialog{border:0;border-left:var(--border-strong);width:min(680px,100vw - 216px);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow:hidden}.date-bookings-dialog::backdrop{background:#0000004d}.date-bookings-shell{grid-template-rows:auto auto minmax(0,1fr) auto auto;height:100%;display:grid;overflow:hidden}.date-bookings-header{border-bottom:var(--border-strong);justify-content:space-between;align-items:start;gap:20px;min-height:112px;padding:24px 28px;display:flex}.date-bookings-header h2{font-family:var(--font-display);margin:3px 0 0;font-size:30px;line-height:1.2}.date-bookings-summary{border-bottom:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.date-bookings-summary>div{border-right:var(--border);gap:4px;min-height:76px;padding:14px 18px;display:grid}.date-bookings-summary>div:last-child{border-right:0}.date-bookings-summary span{font-size:10px;font-weight:700}.date-bookings-summary strong{font-variant-numeric:tabular-nums;align-self:end;font-size:17px}.date-bookings-content{grid-row:3;padding:24px 28px;overflow:auto}.date-bookings-section-heading{justify-content:space-between;align-items:baseline;padding-bottom:12px;display:flex}.date-bookings-section-heading h3,.date-bookings-attention h3{font-family:var(--font-display);margin:0;font-size:24px}.date-bookings-section-heading span{font-size:11px}.date-bookings-table{border-top:var(--border-strong)}.date-bookings-table-head,.date-bookings-row{border-bottom:var(--border);grid-template-columns:126px 94px minmax(0,1fr) 58px;align-items:center;gap:12px;min-height:58px;display:grid}.date-bookings-table-head{min-height:40px;font-size:10px;font-weight:700}.date-bookings-row time{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.booking-status{font-size:11px;font-weight:700}.booking-status:before{content:"●";margin-right:5px;display:inline-block}.booking-status.is-cancelled:before,.booking-status.is-no_show:before{content:"×"}.date-bookings-customer{gap:2px;min-width:0;display:grid}.date-bookings-customer strong,.date-bookings-customer small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.date-bookings-customer small{font-size:10px}.date-bookings-row-action>button{width:100%;min-height:44px;padding:6px;font-size:11px}.date-bookings-empty{border-top:var(--border-strong);border-bottom:var(--border);align-content:center;gap:6px;min-height:150px;display:grid}.date-bookings-empty span{font-size:11px}.date-bookings-attention{border-top:var(--border-strong);grid-row:4;padding:18px 28px}.date-bookings-attention>div{border-bottom:var(--border);gap:2px;padding:10px 0;font-size:11px;display:grid}.date-bookings-actions{padding:16px 28px max(16px, env(safe-area-inset-bottom));border-top:var(--border-strong);grid-row:5;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.date-bookings-actions .button{min-height:48px;padding:8px;font-size:12px}.desktop-week-timeline{border-right:var(--border);border-bottom:var(--border);grid-template-columns:54px repeat(7,minmax(90px,1fr));min-width:780px;display:grid}.week-time-axis,.week-day-column{border-left:var(--border);min-width:0;position:relative}.week-time-axis>span,.week-day-column>button{border:0;border-top:var(--border);border-bottom:var(--border);place-items:center;width:100%;height:60px;min-height:60px;padding:5px;display:grid}.week-day-column>button{grid-template-columns:auto auto;gap:0 6px}.week-day-column>button span,.week-day-column>button small{font-size:9px}.week-day-column>button small{grid-column:1/-1}.week-day-column.is-selected>button{color:var(--color-bg);background:var(--color-text)}.week-time-axis time{z-index:2;font-variant-numeric:tabular-nums;font-size:9px;position:absolute;right:8px;transform:translateY(52px)}.week-day-track,.admin-day-track{background-size:100% 27.6px;border-top:0;min-height:560px;margin-top:0;position:relative}.week-day-track:before,.admin-day-track:before{border-top:var(--border);border-bottom:var(--border);content:"";pointer-events:none;position:absolute;inset:0}.calendar-time-block{z-index:1;border-bottom:var(--border);min-height:15px;position:absolute;left:0;right:0;overflow:hidden}.calendar-grid-line{z-index:0;border-top:var(--border);opacity:.18;position:absolute;left:0;right:0}.calendar-time-block>button,.calendar-time-block>div{text-align:left;border:0;width:100%;height:100%;min-height:100%;padding:6px 10px}.calendar-time-block.is-open>button{justify-content:space-between;align-items:center;display:flex}.calendar-time-block.is-open>button span{font-size:10px}.calendar-time-block.is-blocked{color:var(--color-bg);background:var(--color-sub)}.calendar-time-block.is-unavailable{opacity:.36}.calendar-booking-block{color:var(--color-bg);background:var(--color-text);grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:0 8px;display:grid}.calendar-booking-block strong,.calendar-booking-block small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-booking-block strong{font-size:12px}.calendar-booking-block span,.calendar-booking-block small{font-variant-numeric:tabular-nums;font-size:9px}.week-day-track .calendar-booking-block{grid-template-columns:1fr;gap:0;padding:4px}.week-day-track .calendar-booking-block small:last-child,.mobile-week-strip,.mobile-week-timeline{display:none}.admin-day-timeline{border-right:var(--border);border-bottom:var(--border);grid-template-columns:70px minmax(0,1fr);display:grid}.day-time-axis{border-left:var(--border);position:relative}.day-time-axis time{font-variant-numeric:tabular-nums;font-size:11px;position:absolute;right:10px;transform:translateY(-8px)}.admin-day-track{border-left:var(--border)}.admin-day-track .calendar-booking-block{grid-template-columns:minmax(140px,1fr) auto;padding:8px 12px}.booking-search{border-bottom:var(--border);grid-template-columns:minmax(240px,460px) auto auto;gap:10px;padding:18px 0;display:grid}.plain-filter-button{text-underline-offset:4px;border:0;min-height:44px;padding:8px 12px;text-decoration:underline}.booking-filters{border-bottom:var(--border);grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:12px;padding:16px 0;display:grid}.booking-filters label{gap:4px;display:grid}.booking-filters label>span{font-size:11px;font-weight:700}.booking-groups{gap:28px;padding-top:24px;display:grid}.booking-date-heading{border-bottom:var(--border-strong);justify-content:space-between;align-items:end;padding-bottom:8px;display:flex}.booking-date-heading h2{font-family:var(--font-display);margin:0;font-size:24px}.booking-list-head,.booking-list-row{grid-template-columns:150px minmax(150px,.8fr) minmax(180px,1fr) 110px 100px;align-items:center;gap:14px;display:grid}.booking-list-head{border-bottom:var(--border);min-height:38px;padding:6px 12px;font-size:10px;font-weight:700}.booking-list-row{border-bottom:var(--border);min-height:66px;padding:10px 12px;font-size:13px;text-decoration:none}.booking-list-row time{font-variant-numeric:tabular-nums}.booking-list-row>span{display:grid}.booking-list-row small{font-size:10px}.customer-list{padding-top:18px}.customer-list-head,.customer-list-row{grid-template-columns:minmax(180px,1.1fr) 100px minmax(160px,1fr) minmax(130px,.8fr) 90px 100px;align-items:center;gap:14px;display:grid}.customer-list-head{border-top:var(--border-strong);border-bottom:var(--border);min-height:38px;padding:6px 10px;font-size:10px;font-weight:700}.customer-list-row{border-bottom:var(--border);min-height:74px;padding:11px 10px}.customer-list-row>div,.customer-primary{min-width:0;display:grid}.customer-list-row small{display:none}.customer-list-row span,.customer-list-row a{overflow-wrap:anywhere;font-size:12px}.menu-mobile-list{display:none}.menu-table-section .admin-panel-heading-row{align-items:end}.menu-table-section .admin-panel-heading-row p{margin:2px 0 0}.settings-form-v2{padding-bottom:88px}.settings-form-v2 .settings-section{grid-template-columns:minmax(190px,280px) minmax(0,1fr);gap:32px;padding:24px 0;display:grid}.settings-section-title h2{font-family:var(--font-display);margin:2px 0 4px;font-size:26px}.settings-section-title>span{font-size:11px;display:block}.compact-settings-fields{gap:0;display:grid}.compact-settings-fields>label{border-bottom:var(--border);grid-template-columns:minmax(180px,1fr) minmax(190px,auto);align-items:center;gap:18px;min-height:60px;font-size:13px;display:grid}.compact-settings-fields>label:first-child{border-top:var(--border)}.compact-number{justify-content:flex-end;align-items:center;gap:8px;display:flex}.compact-number input{text-align:right;width:120px}.compact-number em{min-width:64px;font-size:12px;font-style:normal}.settings-static-list{border-bottom:var(--border);margin:0}.settings-static-list>div{border-top:var(--border);grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);padding:12px 0;font-size:13px;display:grid}.settings-static-list dd{font-variant-numeric:tabular-nums;margin:0}.sticky-save-bar{z-index:20;min-height:68px;padding:10px 30px max(10px, env(safe-area-inset-bottom));background:var(--color-bg);border-top:var(--border-strong);justify-content:flex-end;align-items:center;gap:18px;display:flex;position:fixed;bottom:0;left:216px;right:0}.sticky-save-bar>span{font-size:11px}.sticky-save-bar .button{min-width:180px}.current-shift-setting{border-top:var(--border);border-bottom:var(--border);grid-template-columns:1fr auto;gap:2px 14px;margin-bottom:14px;padding:12px 0;display:grid}.shift-weekdays{display:none}.current-shift-setting>span,.current-shift-setting>small{font-size:10px}.current-shift-setting>small{grid-column:2}.shift-workflow{grid-template-columns:repeat(4,minmax(0,1fr))}.shift-sticky-action{z-index:4;width:100%;position:sticky;bottom:12px}.report-month-toolbar{border-bottom:var(--border);grid-template-columns:auto minmax(160px,1fr) auto auto;align-items:center;padding:14px 0;display:grid}.report-month-toolbar button{border-right:0}.report-month-toolbar strong{font-family:var(--font-display);text-align:center;font-size:22px}.report-summary{border-bottom:var(--border-strong);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.report-summary>div{border-left:var(--border-strong);gap:10px;min-height:110px;padding:16px;display:grid}.report-summary>div:last-child{border-right:var(--border-strong)}.report-summary span{font-size:11px;font-weight:700}.report-summary strong{font-variant-numeric:tabular-nums;align-self:end;font-size:28px}.report-summary small{margin:0 3px;font-size:11px}.report-section{padding-top:30px}.report-split{border-bottom:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.report-split>div{border-left:var(--border);justify-content:space-between;padding:14px;display:flex}.report-split>div:last-child{border-right:var(--border)}.report-split dd{margin:0;font-weight:700}.report-table>div{border-bottom:var(--border);grid-template-columns:minmax(180px,1fr) 80px 100px 130px;align-items:center;gap:12px;min-height:50px;padding:9px 12px;font-size:13px;display:grid}.report-table-head{font-weight:700;font-size:10px!important}.report-trend{border-bottom:var(--border);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.report-trend>div{border-left:var(--border);gap:5px;min-height:90px;padding:12px;display:grid}.report-trend>div:last-child{border-right:var(--border)}.report-trend time,.report-trend span{font-size:10px}.report-trend strong{overflow-wrap:anywhere;font-size:13px}@media (width<=1100px){.admin-calendar-workspace{grid-template-columns:minmax(0,1fr) 300px}.admin-calendar-main{padding-right:18px}.selected-date-panel{padding-left:18px}.booking-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}.booking-list-head,.booking-list-row{grid-template-columns:130px minmax(120px,.8fr) minmax(150px,1fr) 100px 80px}}@media (width<=900px){.admin-shell{padding:0;display:block}.admin-sidebar{display:none}.admin-topbar{min-height:58px;padding:max(8px, env(safe-area-inset-top)) 16px 8px;justify-content:space-between}.admin-mobile-brand{display:block}.admin-mobile-brand img{width:48px;height:auto;display:block}.admin-user-label{display:none}.admin-create-booking{min-width:104px}.admin-content{padding:20px 16px calc(96px + env(safe-area-inset-bottom));overflow-x:clip}.admin-mobile-nav{z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--color-bg);border-top:var(--border-strong);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.admin-mobile-nav a,.admin-mobile-nav button{border:0;border-right:var(--border);text-align:center;place-items:center;min-width:0;min-height:58px;padding:5px 2px;font-size:10px;text-decoration:none;display:grid}.admin-mobile-nav>:last-child{border-right:0}.admin-mobile-nav a[aria-current=page],.admin-mobile-nav button.is-active{color:var(--color-bg);background:var(--color-text);font-weight:700}.admin-more-dialog[open]{z-index:40;width:100%;max-width:none;max-height:calc(100vh - 70px);padding:20px 18px calc(28px + env(safe-area-inset-bottom));color:var(--color-text);background:var(--color-bg);border:var(--border-strong);margin:0;display:block;position:fixed;inset:auto 0 0}.admin-more-header{border-bottom:var(--border-strong);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.admin-more-header h2{font-family:var(--font-display);margin:0;font-size:30px}.admin-more-header button{width:44px}.admin-more-dialog nav{display:grid}.admin-more-dialog nav a{border-bottom:var(--border);justify-content:space-between;align-items:center;min-height:54px;text-decoration:none;display:flex}.admin-more-dialog .admin-logout{margin-top:18px}.admin-page-header .display-heading{font-size:clamp(36px,10vw,42px)}.admin-calendar-workspace{min-height:0;display:block}.admin-calendar-main{padding:14px 0 0}.selected-date-panel{border-top:var(--border-strong);border-left:0;margin-top:20px;padding:26px 0 0}.date-bookings-dialog{width:min(100%,680px)}.desktop-week-timeline{display:none}.mobile-week-strip{border-right:var(--border);border-bottom:var(--border);grid-template-columns:repeat(7,minmax(50px,1fr));display:grid;overflow-x:auto}.mobile-week-strip button{border-bottom:0;border-right:0;border-left:var(--border);place-items:center;min-width:50px;min-height:58px;padding:4px;display:grid}.mobile-week-strip button span{font-size:9px}.mobile-week-strip button.is-selected{color:var(--color-bg);background:var(--color-text)}.mobile-week-timeline{border-right:var(--border);border-left:var(--border);grid-template-columns:56px minmax(0,1fr);display:grid}.admin-day-track .calendar-booking-block,.mobile-week-timeline .calendar-booking-block{grid-template-columns:minmax(0,1fr) auto}.sticky-save-bar{right:0;bottom:calc(58px + env(safe-area-inset-bottom));min-height:62px;padding:8px 16px;left:0}.settings-form-v2{padding-bottom:126px}.settings-form-v2 .settings-section{grid-template-columns:1fr;gap:14px}}@media (width<=640px){.admin-calendar-toolbar{grid-template-columns:80px minmax(120px,1fr) 68px 80px}.admin-calendar-toolbar>strong{padding:0 5px;font-size:17px}.admin-view-switch{grid-column:1/4;grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0 0}.admin-calendar-toolbar>.button{border-right:var(--border);text-align:center;grid-area:2/4;margin-top:8px}.admin-month-calendar-v2>button{min-height:82px;padding:6px}.admin-month-calendar-v2>button>span{font-size:15px}.admin-month-calendar-v2>button>strong{font-size:9px}.admin-month-calendar-v2>button>small{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.date-bookings-dialog{border-left:0;width:100%}.date-bookings-shell{grid-template-rows:auto auto minmax(0,1fr) auto auto}.date-bookings-header{min-height:92px;padding:max(18px, env(safe-area-inset-top)) 16px 16px}.date-bookings-header h2{font-size:25px}.date-bookings-summary>div{min-height:68px;padding:10px}.date-bookings-summary strong{font-size:14px}.date-bookings-content,.date-bookings-attention{padding:18px 16px}.date-bookings-table-head{display:none}.date-bookings-row{grid-template-columns:92px minmax(0,1fr) 54px;gap:5px 10px;min-height:82px;padding:10px 0}.date-bookings-row time{grid-row:1/3;font-size:11px}.date-bookings-row .booking-status{grid-column:2;font-size:10px}.date-bookings-customer{grid-column:2}.date-bookings-row-action{grid-area:1/3/3}.date-bookings-actions{padding:12px 16px max(12px, env(safe-area-inset-bottom));grid-template-columns:repeat(2,minmax(0,1fr))}.date-bookings-actions>button:last-child{grid-column:1/-1}.booking-search{grid-template-columns:minmax(0,1fr) 72px}.booking-search .plain-filter-button{grid-column:1/-1;justify-self:start}.booking-filters{grid-template-columns:1fr}.booking-list-head{display:none}.booking-list-row{grid-template-columns:106px minmax(0,1fr) 70px;align-items:start;gap:5px 10px;min-height:94px;padding:12px 0}.booking-list-row>strong{font-size:15px}.booking-list-row>span:first-of-type{grid-column:2}.booking-list-row>span:nth-of-type(2){text-align:right;grid-area:1/3}.booking-list-row>span:nth-of-type(3){text-align:right;grid-area:2/3}.customer-list-head{display:none}.customer-list-row{grid-template-columns:minmax(0,1fr) minmax(118px,.7fr);gap:10px 18px;padding:16px 0}.customer-primary{border-bottom:var(--border);grid-column:1/-1;padding-bottom:10px}.customer-primary strong{font-size:17px}.customer-list-row small{font-size:9px;font-weight:700;display:block}.customer-list-row>a{grid-column:1/-1;min-height:44px;padding-top:10px}.menu-desktop-list{display:none}.menu-mobile-list{display:grid}.menu-mobile-list article{border-bottom:var(--border);grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:14px 0;display:grid}.menu-mobile-edit{text-align:left;border:0;gap:2px;min-width:0;min-height:44px;padding:0;display:grid}.menu-mobile-edit strong{overflow-wrap:anywhere;font-size:17px}.menu-mobile-edit span,.menu-mobile-edit small{font-size:10px}.menu-mobile-list article>div:not(.menu-order-actions){justify-items:end;font-size:11px;display:grid}.menu-mobile-list article>.plain-link,.menu-mobile-list article>.menu-order-actions{grid-column:1/-1}.compact-settings-fields>label{grid-template-columns:1fr;gap:6px;padding:10px 0}.compact-number{justify-content:flex-start}.settings-static-list>div{grid-template-columns:1fr;gap:3px}.sticky-save-bar>span{display:none}.sticky-save-bar .button{width:100%}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary>div{border-top:var(--border-strong);min-height:92px;padding:12px}.report-summary strong{font-size:21px}.report-split{grid-template-columns:1fr}.report-split>div{border-right:var(--border)}.report-table>div{grid-template-columns:minmax(110px,1fr) 48px 70px 90px;gap:6px;padding:8px 4px;font-size:11px}.report-trend{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-workflow{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.admin-content *,.admin-more-dialog{scroll-behavior:auto!important;transition:none!important}}.admin-booking-editor-page{border-left:var(--border);margin-left:auto;padding-left:28px;width:min(100%,660px)!important}.booking-editor-steps{border-bottom:var(--border);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:14px 0;list-style:none;display:grid}.booking-editor-steps li{border-left:var(--border);text-align:center;min-height:44px;padding:10px 5px;font-size:10px}.booking-editor-steps li:last-child{border-right:var(--border)}.booking-editor-steps li.is-done,.booking-editor-steps li.is-current{color:var(--color-bg);background:var(--color-text)}.booking-editor-section{padding:22px 0}.booking-editor-section>h2{font-family:var(--font-display);margin:2px 0 14px;font-size:26px}.booking-editor-section .admin-choice-list{grid-template-columns:repeat(4,minmax(0,1fr))}.booking-editor-confirm{z-index:8;background:var(--color-bg);border-top:var(--border-strong);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:12px 0;display:grid;position:sticky;bottom:0}.booking-editor-confirm>div{display:grid}.booking-editor-confirm span{font-size:9px;font-weight:700}.booking-editor-confirm strong{font-variant-numeric:tabular-nums;font-size:12px}.booking-editor-confirm .admin-submit{min-width:210px;margin:0}@media (width<=900px){.admin-booking-editor-page{border-left:0;padding-left:0;width:100%!important}.booking-editor-confirm{bottom:calc(58px + env(safe-area-inset-bottom))}}@media (width<=640px){.booking-editor-steps li{white-space:nowrap;padding:10px 2px;font-size:8px;overflow:hidden}.booking-editor-section .admin-choice-list{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-editor-confirm{grid-template-columns:1fr;gap:6px}.booking-editor-confirm .admin-submit{width:100%}}
