/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.block{display:block}.table{display:table}}:root{--paper:#f5f1ea;--ink:#29332f;--muted:#778078;--line:#d6d5ca;--sage:#9db4a5;--sage-deep:#5a7566;--white:#fbfaf7}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}button,input{font:inherit}button{cursor:pointer}.site-shell{min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:20px 48px;display:flex}.brand-lockup{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--sage-deep);width:35px;height:35px;color:var(--sage-deep);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:19px;font-style:italic;display:grid}.brand-name,.brand-subtitle{display:block}.brand-name{letter-spacing:.15em;font-size:15px}.brand-subtitle{color:var(--muted);letter-spacing:.08em;margin-top:3px;font-size:9px}.header-contact{color:var(--sage-deep);letter-spacing:.05em;flex-direction:column;align-items:flex-end;gap:4px;font-size:11px;display:flex}.header-contact a{color:var(--ink);letter-spacing:.08em;font-size:12px;text-decoration:none}.booking-trust-bar{border-bottom:1px solid var(--line);max-width:930px;color:var(--muted);justify-content:space-between;gap:20px;margin:0 auto;padding:15px 32px;font-size:11px;line-height:1.7;display:flex}.booking-trust-bar div{flex-wrap:wrap;gap:5px 15px;display:flex}.booking-trust-bar strong{color:var(--ink);font-weight:600}.booking-trust-bar address{text-align:right;font-style:normal}.header-note{color:var(--sage-deep);letter-spacing:.13em;font-size:11px}.hero-section{grid-template-columns:minmax(0,1fr) minmax(280px,440px);max-width:1240px;margin:0 auto;padding:80px 48px 104px;display:grid}.hero-copy{padding:25px 4vw 0 0}.eyebrow{color:var(--sage-deep);letter-spacing:.21em;margin:0 0 18px;font-size:10px}h1,h2,p{margin-top:0}h1{letter-spacing:-.045em;max-width:700px;margin-bottom:26px;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,7vw,92px);font-weight:400;line-height:.99}h1 em{color:var(--sage-deep);font-style:italic}.hero-lede{max-width:430px;color:var(--muted);margin-bottom:30px;font-size:13px;line-height:2}.hero-details{color:var(--ink);letter-spacing:.08em;flex-wrap:wrap;gap:12px 25px;font-size:11px;display:flex}.hero-details span+span:before{color:var(--line);content:"/";margin-right:25px}.hero-visual{background:linear-gradient(155deg,#a8baa8 0%,#d7d4c3 55%,#eadaca 100%);border-radius:210px 210px 0 0;min-height:385px;position:relative;overflow:hidden}.sun-disc{opacity:.86;background:#f4e8cd;border-radius:50%;width:145px;height:145px;position:absolute;top:17%;left:21%}.line-art{border:1px solid #29332f6e;border-radius:50%;position:absolute;transform:rotate(-27deg)}.line-art-one{width:80%;height:91%;top:14%;right:-16%}.line-art-two{border-color:#ffffff73;width:66%;height:76%;top:30%;right:10%}.vertical-label{color:#29332fa8;letter-spacing:.22em;writing-mode:vertical-rl;font-size:9px;position:absolute;bottom:28px;right:21px}.booking-section{max-width:930px;margin:0 auto;padding:0 32px 100px}.section-heading{margin-bottom:32px}.section-heading h2,.date-panel h2{letter-spacing:-.03em;margin-bottom:7px;font-family:Georgia,Times New Roman,serif;font-size:34px;font-weight:400}.section-heading p:last-child,.date-panel p:last-child{color:var(--muted);font-size:12px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.menu-card{border:1px solid var(--line);min-height:150px;color:var(--ink);text-align:left;background:0 0;padding:25px;transition:border-color .2s,background .2s,transform .2s;position:relative}.menu-card:hover{border-color:var(--sage-deep);transform:translateY(-2px)}.menu-card.is-selected{border-color:var(--sage-deep);background:var(--white);box-shadow:0 14px 30px #39494014}.menu-card-top{justify-content:space-between;align-items:baseline;font-family:Georgia,Times New Roman,serif;font-size:25px;display:flex}.menu-card-top span:last-child{color:var(--sage-deep);font-family:inherit;font-size:18px}.menu-card-note{color:var(--muted);margin-top:27px;font-size:11px;display:block}.menu-card-price{color:var(--sage-deep);letter-spacing:.03em;margin-top:12px;font-size:14px;display:block}.menu-card-check{color:var(--sage-deep);font-size:18px;position:absolute;bottom:18px;right:20px}.date-panel{border-top:1px solid var(--line);grid-template-columns:1fr 180px;align-items:end;gap:25px 50px;margin-top:80px;padding-top:45px;display:grid}.date-panel-copy{grid-column:1/-1}.date-field{color:var(--muted);letter-spacing:.08em;flex-direction:column;gap:9px;font-size:10px;display:flex}.date-field input{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);border-radius:0;padding:14px 12px}.availability-preview{color:var(--sage-deep);padding-bottom:14px;font-size:11px}.status-dot{background:var(--sage);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.site-footer{border-top:1px solid var(--line);max-width:1240px;color:var(--muted);letter-spacing:.07em;justify-content:space-between;margin:0 auto;padding:22px 48px 35px;font-size:10px;display:flex}@media (max-width:700px){.site-header{padding:16px 20px}.header-contact{align-items:flex-end;font-size:10px}.header-contact a{font-size:11px}.booking-trust-bar{padding:13px 20px;font-size:10px;display:block}.booking-trust-bar address{text-align:left;margin-top:5px}.header-note{display:none}.hero-section{padding:55px 20px 66px;display:block}.hero-copy{padding:0}h1{font-size:54px}.hero-visual{min-height:275px;margin-top:44px}.booking-section{padding-inline:20px}.menu-grid{grid-template-columns:1fr}.date-panel{margin-top:60px;display:block}.date-field{margin-top:25px}.availability-preview{padding:18px 0}.site-footer{padding:22px 20px 30px;display:block}.site-footer span{margin-top:8px;display:block}}.booking-app .site-footer a{color:var(--sage-deep);text-decoration:none}.schedule-note{color:var(--sage-deep);padding-bottom:14px;font-size:11px}.slot-panel{border:1px solid var(--line);background:#fbfaf773;margin-top:28px;padding:25px}.slot-panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:18px;display:flex}.slot-date-label,.slot-menu-label{display:block}.slot-date-label{font-family:Georgia,serif;font-size:20px}.slot-menu-label{color:var(--sage-deep);margin-top:5px;font-size:11px}.slot-help{color:var(--muted);letter-spacing:.08em;font-size:10px}.slot-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding-top:18px;display:grid}.slot-button{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:13px 5px;font-size:12px;transition:border-color .2s,background .2s,color .2s}.slot-button:hover,.slot-button.is-selected{border-color:var(--sage-deep);background:var(--sage-deep);color:#fff}.slot-loading,.empty-slots{color:var(--muted);text-align:center;padding:35px 10px;font-size:12px}.empty-slots strong,.empty-slots span{display:block}.empty-slots strong{color:var(--ink);margin-bottom:8px;font-weight:500}.guest-form{border-top:1px solid var(--line);margin-top:72px;padding-top:46px;scroll-margin-top:20px}.form-heading{margin-bottom:28px}.form-heading h2{margin-bottom:7px;font-family:Georgia,serif;font-size:34px;font-weight:400}.form-heading p:last-child{color:var(--muted);font-size:12px}.form-summary{border-left:3px solid var(--sage-deep);background:var(--white);justify-content:space-between;gap:12px;margin-bottom:25px;padding:17px 18px;font-size:12px;display:flex}.form-summary span{color:var(--muted)}.form-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;display:grid}.form-fields label,.settings-form label,.drawer-fields label{color:var(--muted);letter-spacing:.08em;flex-direction:column;gap:9px;font-size:10px;display:flex}.form-fields label span b{color:var(--sage-deep);letter-spacing:0;margin-left:8px;font-size:9px;font-weight:400}.form-fields input,.form-fields textarea,.settings-form input,.drawer-fields input,.drawer-fields select,.admin-key-card input{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);letter-spacing:0;border-radius:0;outline:none;padding:13px 12px;font-size:13px}.form-fields input:focus,.form-fields textarea:focus,.settings-form input:focus,.drawer-fields input:focus,.drawer-fields select:focus{border-color:var(--sage-deep)}.form-fields textarea{resize:vertical;line-height:1.7}.field-wide{grid-column:1/-1}.privacy-note{color:var(--muted);align-items:flex-start;gap:8px;margin:24px 0 14px;font-size:10px;line-height:1.7;display:flex}.privacy-note span{color:var(--sage-deep);font-size:16px;line-height:1}.form-error,.admin-error{color:#873d2c;background:#f5e8e1;border-left:3px solid #b46b56;margin:15px 0;padding:12px 14px;font-size:12px}.primary-button{border:1px solid var(--sage-deep);background:var(--sage-deep);color:#fff;letter-spacing:.08em;justify-content:center;align-items:center;gap:30px;min-width:220px;padding:15px 21px;font-size:11px;transition:background .2s,transform .2s;display:inline-flex}.primary-button:hover{background:#456353;transform:translateY(-1px)}.primary-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.primary-button span{font-size:17px;line-height:1}.booking-stepper{max-width:930px;margin:0 auto;padding:30px 32px 0}.booking-stepper ol{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.booking-stepper li{border-top:2px solid var(--line);min-width:0;color:var(--muted)}.booking-stepper li.is-current,.booking-stepper li.is-complete{border-color:var(--sage-deep);color:var(--sage-deep)}.booking-stepper button,.stepper-finish{width:100%;color:inherit;text-align:left;background:0 0;border:0;flex-direction:column;gap:6px;padding:11px 4px 0;display:flex}.booking-stepper button:disabled{cursor:default}.booking-stepper button span,.stepper-finish{font-family:Georgia,serif;font-size:12px}.booking-stepper strong{letter-spacing:.06em;font-size:10px;font-weight:400}.booking-step{min-height:480px}.step-actions{justify-content:space-between;align-items:center;gap:15px;margin-top:36px;display:flex}.step-actions-end{justify-content:flex-end}.secondary-button{border:1px solid var(--line);min-width:170px;color:var(--sage-deep);letter-spacing:.06em;background:0 0;justify-content:center;align-items:center;padding:14px 18px;font-size:11px;display:inline-flex}.secondary-button:hover{border-color:var(--sage-deep);background:var(--white)}.booking-step .guest-form{border-top:0;margin-top:0;padding-top:0}.confirmation-wrap{place-items:center;min-height:calc(100vh - 140px);padding:80px 20px;display:grid}.confirmation-card{border:1px solid var(--line);background:var(--white);text-align:center;width:min(620px,100%);padding:54px clamp(25px,7vw,75px)}.confirmation-icon{border:1px solid var(--sage-deep);width:46px;height:46px;color:var(--sage-deep);border-radius:50%;place-items:center;margin:0 auto 25px;font-size:20px;display:grid}.confirmation-card h1{margin:0 auto 20px;font-size:clamp(36px,5vw,55px)}.confirmation-lede{color:var(--muted);font-size:12px;line-height:1.8}.confirmation-details{border-top:1px solid var(--line);text-align:left;margin:33px 0 25px}.confirmation-details>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:14px 0;font-size:12px;display:flex}.confirmation-details span{color:var(--muted)}.confirmation-details strong{text-align:right;font-weight:500}.booking-id{font-family:monospace;font-size:10px}.confirmation-note{color:var(--muted);font-size:10px;line-height:1.7}.confirmation-actions{flex-direction:column;align-items:center;gap:13px;margin-top:25px;display:flex}.questionnaire-link{width:min(100%,320px);text-decoration:none}.confirmation-actions .text-button{margin-top:0}.text-button{color:var(--sage-deep);letter-spacing:.08em;background:0 0;border:0;margin-top:25px;padding:8px 0;font-size:11px}.text-button span{margin-left:12px;font-size:17px}.admin-shell{min-height:100vh;color:var(--ink);background:#efeee8}.admin-header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;padding:22px clamp(20px,5vw,68px);display:flex}.admin-header-actions{color:var(--muted);letter-spacing:.07em;align-items:center;gap:18px;font-size:10px;display:flex}.admin-live-dot{background:var(--sage-deep);border-radius:50%;width:7px;height:7px}.admin-public-link{color:var(--sage-deep);text-decoration:none}.admin-body{grid-template-columns:260px minmax(0,1fr);max-width:1440px;margin:0 auto;display:grid}.admin-sidebar{border-right:1px solid var(--line);min-height:calc(100vh - 85px);padding:55px 35px 30px}.admin-kicker{color:var(--sage-deep);letter-spacing:.2em;margin:0 0 16px;font-size:9px}.admin-sidebar h1{letter-spacing:-.03em;margin:0 0 14px;font-family:Georgia,serif;font-size:34px;font-weight:400}.admin-side-copy{color:var(--muted);margin:0;font-size:11px;line-height:1.9}.admin-nav{flex-direction:column;gap:5px;margin-top:55px;display:flex}.admin-nav button{color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:15px;padding:14px 12px;font-size:12px;display:flex}.admin-nav button span{color:#aaafa9;font-family:Georgia,serif;font-size:11px}.admin-nav button.is-active{background:var(--white);color:var(--ink);box-shadow:0 6px 20px #3949400d}.admin-nav button.is-active span{color:var(--sage-deep)}.admin-side-foot{color:var(--sage-deep);margin-top:80px;font-size:11px;line-height:1.7}.admin-side-foot small{color:var(--muted);font-size:9px}.admin-content{min-width:0;padding:58px clamp(22px,5vw,72px) 100px}.admin-page-heading{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:38px;display:flex}.admin-page-heading h2{letter-spacing:-.045em;margin:0 0 9px;font-family:Georgia,serif;font-size:45px;font-weight:400}.admin-page-heading p:last-child{max-width:620px;color:var(--muted);margin:0;font-size:11px;line-height:1.8}.refresh-button{border:1px solid var(--line);color:var(--sage-deep);background:0 0;padding:9px 12px;font-size:10px}.admin-warning{color:#725a28;background:#f4ecd9;border-left:3px solid #b28c50;margin:-20px 0 28px;padding:13px 16px;font-size:11px;line-height:1.6}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:42px;display:grid}.admin-stats>div{border:1px solid var(--line);background:var(--white);padding:19px 20px}.admin-stats span,.admin-stats strong{display:block}.admin-stats span{color:var(--muted);font-size:10px}.admin-stats strong{margin-top:8px;font-family:Georgia,serif;font-size:32px;font-weight:400}.admin-stats strong small{color:var(--muted);margin-left:4px;font-family:inherit;font-size:12px}.admin-dashboard-heading{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:22px;display:flex}.admin-dashboard-heading h2{letter-spacing:-.03em;margin:0 0 8px;font-family:Georgia,serif;font-size:clamp(30px,4vw,42px);font-weight:400}.admin-dashboard-heading p:not(.admin-kicker){color:var(--muted);margin:0;font-size:11px;line-height:1.7}.daily-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.daily-summary{border:1px solid var(--line);background:var(--white);min-width:0;padding:21px}.daily-summary.is-today{border-top:3px solid var(--sage-deep)}.daily-summary.is-tomorrow{border-top:3px solid #b39b68}.daily-summary-header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.daily-summary-header h3{margin:0 0 5px;font-family:Georgia,serif;font-size:25px;font-weight:400}.daily-summary-header span{color:var(--muted);font-size:10px}.daily-summary-count{color:var(--sage-deep);font-family:Georgia,serif;font-size:38px;font-weight:400;line-height:1}.daily-summary-count small{color:var(--muted);margin-left:3px;font-family:inherit;font-size:11px}.daily-summary-empty{border-top:1px solid var(--line);color:var(--muted);margin:25px 0 2px;padding:19px 0 4px;font-size:11px}.daily-reservation-list,.schedule-reservation-list{flex-direction:column;gap:9px;margin-top:20px;display:flex}.daily-reservation-card{border:1px solid var(--line);background:var(--paper);padding:13px 14px}.daily-reservation-card.is-cancelled{opacity:.58}.daily-reservation-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.daily-reservation-top>strong{color:var(--sage-deep);font-size:15px;font-weight:500}.daily-reservation-name{margin-top:9px;font-size:14px;font-weight:500}.daily-reservation-details{grid-template-columns:minmax(105px,.8fr) minmax(130px,1fr);gap:10px 16px;margin-top:11px;display:grid}.daily-reservation-details div{min-width:0}.daily-reservation-details span,.daily-reservation-details strong{display:block}.daily-reservation-details span{color:var(--muted);letter-spacing:.05em;font-size:9px}.daily-reservation-details strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;font-weight:500;overflow:hidden}.daily-reservation-details .daily-reservation-symptom{grid-column:1/-1}.schedule-panel{border:1px solid var(--line);background:var(--white);margin-bottom:40px;padding:21px}.schedule-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:17px;display:flex}.schedule-toolbar h3{margin:0 0 4px;font-family:Georgia,serif;font-size:25px;font-weight:400}.schedule-toolbar>div:first-child>span{color:var(--muted);font-size:10px}.schedule-navigation{align-items:center;gap:5px;display:flex}.schedule-navigation button{border:1px solid var(--line);background:var(--paper);min-width:34px;height:34px;color:var(--sage-deep);font-size:13px}.schedule-navigation .schedule-today-button{padding-inline:10px;font-size:10px}.schedule-navigation input{border:1px solid var(--line);background:var(--paper);width:140px;height:34px;color:var(--ink);padding:7px 9px;font-size:11px}.schedule-empty{color:var(--muted);text-align:center;padding:28px 0 7px;font-size:11px}.list-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.filter-pills{gap:5px;display:flex}.filter-pills button{color:var(--muted);background:0 0;border:1px solid #0000;padding:8px 12px;font-size:10px}.filter-pills button.is-active{border-color:var(--sage-deep);background:var(--white);color:var(--sage-deep)}.list-count{color:var(--muted);font-size:10px}.reservation-list{border-top:1px solid var(--line)}.reservation-row{border-bottom:1px solid var(--line);background:var(--white);grid-template-columns:75px 92px minmax(130px,1.05fr) minmax(130px,1.4fr) minmax(120px,.9fr);align-items:center;gap:16px;padding:20px 12px;display:grid}.reservation-row.is-cancelled{opacity:.56}.reservation-date strong,.reservation-date span,.reservation-time strong,.reservation-time span,.reservation-customer strong,.reservation-customer span,.reservation-menu .symptom-preview{display:block}.reservation-date strong{font-family:Georgia,serif;font-size:21px;font-weight:400}.reservation-date span,.reservation-time span,.reservation-customer span,.symptom-preview{color:var(--muted);margin-top:4px;font-size:10px}.reservation-time strong{font-size:15px;font-weight:500}.reservation-customer strong{font-size:13px;font-weight:500}.symptom-preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-tag,.status-pill{letter-spacing:.04em;padding:5px 8px;font-size:9px;display:inline-block}.menu-tag.initial{color:var(--sage-deep);background:#e7eee9}.menu-tag.repeat{color:#7e755b;background:#eeece1}.status-pill.confirmed{color:#42644b;background:#dce9de}.status-pill.cancelled{color:#865849;background:#eee5e0}.reservation-status{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.reservation-status small{color:var(--muted);font-size:9px}.row-actions{gap:8px;display:flex}.row-actions button{color:var(--sage-deep);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:10px;text-decoration:underline}.admin-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:70px 20px;font-size:11px;display:flex}.admin-empty strong{color:var(--ink);font-weight:500}.edit-drawer{z-index:3;border:1px solid var(--line);background:var(--white);width:min(520px,100vw - 40px);padding:25px;position:fixed;bottom:20px;right:20px;box-shadow:0 20px 70px #2330292e}.drawer-heading{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.drawer-heading h3{margin:0;font-family:Georgia,serif;font-size:24px;font-weight:400}.drawer-heading button{color:var(--muted);background:0 0;border:0;font-size:24px;line-height:1}.drawer-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.drawer-note,.settings-help{color:var(--muted);font-size:10px;line-height:1.7}.edit-drawer .primary-button{margin-top:10px}.privacy-banner{color:var(--sage-deep);background:#e8eee8;align-items:flex-start;gap:15px;margin-bottom:25px;padding:18px 20px;display:flex}.privacy-banner>span{font-size:22px}.privacy-banner strong,.privacy-banner p{display:block}.privacy-banner strong{font-size:11px;font-weight:500}.privacy-banner p{color:var(--muted);margin:5px 0 0;font-size:10px}.customer-table-wrap{border-top:1px solid var(--line);overflow-x:auto}.customer-table{border-collapse:collapse;background:var(--white);width:100%;min-width:650px;font-size:11px}.customer-table th,.customer-table td{border-bottom:1px solid var(--line);text-align:left;padding:15px 14px}.customer-table th{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:400}.customer-table td strong{font-weight:500}.customer-table td{color:var(--ink)}.settings-form{max-width:720px}.settings-block{border-bottom:1px solid var(--line);margin-bottom:42px;padding-bottom:35px}.settings-label{color:var(--sage-deep);letter-spacing:.16em;margin:0 0 18px;font-size:10px}.weekday-toggle{flex-wrap:wrap;gap:7px;display:flex}.weekday-toggle button{border:1px solid var(--line);background:var(--white);width:57px;height:57px;color:var(--muted);font-size:16px}.weekday-toggle button.is-selected{border-color:var(--sage-deep);background:var(--sage-deep);color:#fff}.weekday-toggle small{font-size:8px;display:block}.time-range{align-items:end;gap:13px;display:flex}.time-range>span{color:var(--muted);padding-bottom:14px}.time-range label{width:150px}.notification-status{background:#f7f1e5;border:1px solid #dfd7c7;align-items:flex-start;gap:11px;margin-top:19px;padding:15px;display:flex}.notification-status.is-ready{background:#e8f0e9;border-color:#c2d6c4}.notification-status strong,.notification-status p,.notification-status small{display:block}.notification-status strong{font-size:11px;font-weight:500}.notification-status p{color:var(--muted);margin:5px 0 4px;font-size:10px}.notification-status small{color:#886b35;font-size:10px;line-height:1.7}.settings-actions{justify-content:space-between;align-items:center;gap:20px;display:flex}.settings-privacy{max-width:340px;color:var(--muted);font-size:9px;line-height:1.7}.availability-admin-panel{border:1px solid var(--line);background:var(--white);max-width:850px;padding:25px}.availability-date-picker{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:25px;padding-bottom:23px;display:flex}.availability-date-picker label{min-width:180px;color:var(--muted);letter-spacing:.08em;flex-direction:column;gap:9px;font-size:10px;display:flex}.availability-date-picker input{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);letter-spacing:0;border-radius:0;outline:none;padding:13px 12px;font-size:13px}.availability-date-picker strong{font-family:Georgia,serif;font-size:22px;font-weight:400;display:block}.availability-date-picker p{color:var(--muted);margin:7px 0 0;font-size:10px}.availability-legend{color:var(--muted);gap:18px;margin:22px 0 14px;font-size:10px;display:flex}.availability-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{background:var(--line);border-radius:50%;width:8px;height:8px;display:inline-block}.legend-dot.is-normal{background:var(--sage)}.legend-dot.is-open{background:var(--sage-deep)}.legend-dot.is-closed{background:#b9b2a5}.availability-slot-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.availability-slot{border:1px solid var(--line);min-height:62px;color:var(--muted);text-align:center;background:#f0eee8;flex-direction:column;justify-content:center;gap:5px;padding:8px 4px;transition:border-color .2s,background .2s,color .2s,transform .2s;display:flex}.availability-slot.is-open{color:var(--sage-deep);background:#e8f0e9;border-color:#b6cdb9}.availability-slot.is-open.is-open{border-color:var(--sage-deep)}.availability-slot.is-closed.is-closed{background:#f0eee8}.availability-slot.is-open:hover,.availability-slot.is-closed:hover{border-color:var(--sage-deep);transform:translateY(-1px)}.availability-slot strong{font-size:13px;font-weight:500}.availability-slot small{letter-spacing:.06em;font-size:9px}.availability-help{color:var(--muted);margin:18px 0 0;font-size:10px;line-height:1.7}.admin-key-card{background:#fbf5e3;border:1px solid #d7c89f;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px;padding:22px;display:flex}.admin-key-card h2{margin:0 0 6px;font-family:Georgia,serif;font-size:24px;font-weight:400}.admin-key-card p{color:#776e5b;max-width:500px;margin:0;font-size:10px;line-height:1.7}.admin-key-card form{gap:8px;min-width:270px;display:flex}.admin-key-card .primary-button{min-width:95px;padding:12px}code{background:#0000000f;padding:1px 4px;font-family:monospace;font-size:10px}@media (max-width:900px){.admin-body{display:block}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:28px 24px 20px}.admin-nav{flex-direction:row;gap:3px;margin-top:25px}.admin-nav button{flex:1;justify-content:center;padding:11px 6px;font-size:10px}.admin-side-copy,.admin-side-foot{display:none}.admin-content{padding:40px 24px 70px}}@media (max-width:700px){.slot-panel{padding:18px 14px}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.slot-panel-heading{display:block}.slot-help{margin-top:12px;display:block}.form-summary{display:block}.form-summary strong{margin-top:6px;display:block}.form-fields{grid-template-columns:1fr}.field-wide{grid-column:auto}.confirmation-details>div{display:block}.confirmation-details strong{text-align:left;margin-top:5px;display:block}.admin-header{display:block}.admin-header-actions{flex-wrap:wrap;margin-top:17px}.admin-page-heading{display:block}.admin-page-heading .refresh-button{margin-top:18px}.admin-stats{gap:6px}.admin-stats>div{padding:13px 10px}.admin-stats strong{font-size:26px}.reservation-row{grid-template-columns:64px 76px minmax(110px,1fr);gap:12px}.reservation-menu{grid-column:1/3;margin-top:-8px;padding-left:76px}.reservation-status{grid-area:1/3/3}.symptom-preview{max-width:120px}.drawer-fields{grid-template-columns:1fr}.settings-actions{display:block}.settings-actions .primary-button{width:100%;margin-top:15px}.admin-key-card{display:block}.admin-key-card form{min-width:0;margin-top:18px}}.booking-app .date-panel{margin-top:80px;display:block}.booking-app .date-panel-copy{margin-bottom:25px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.date-card{border:1px solid var(--line);min-height:126px;color:var(--ink);text-align:left;background:#fbfaf773;flex-direction:column;align-items:flex-start;padding:15px 14px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:flex;position:relative}.date-card.is-available{border-color:var(--sage);background:var(--white)}.date-card.is-available:hover{border-color:var(--sage-deep);transform:translateY(-2px);box-shadow:0 10px 20px #39494014}.date-card.is-selected{border-color:var(--sage-deep);box-shadow:inset 0 0 0 1px var(--sage-deep);background:#edf3ee}.date-card:disabled{cursor:not-allowed}.date-card-month,.date-card-weekday{color:var(--muted);font-size:10px}.date-card-day{margin-top:6px;font-family:Georgia,Times New Roman,serif;font-size:31px;font-weight:400;line-height:1}.date-card-weekday{margin-top:7px}.date-card-mark{color:var(--muted);font-family:Georgia,Times New Roman,serif;font-size:27px;line-height:1;position:absolute;bottom:9px;right:12px}.date-card.is-available .date-card-mark{color:var(--sage-deep)}.date-card.is-unavailable .date-card-mark{color:#a49e91}@media (max-width:700px){.booking-stepper{padding:24px 20px 0}.booking-stepper ol{gap:3px}.booking-stepper button,.stepper-finish{padding-top:8px}.booking-stepper strong{letter-spacing:0;font-size:8px}.booking-step{min-height:0}.step-actions{flex-direction:column-reverse;align-items:stretch}.step-actions .primary-button,.step-actions .secondary-button{width:100%}.step-actions-end{align-items:stretch}.booking-app .date-panel{margin-top:60px}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.date-card{min-height:112px;padding:12px 10px}.date-card-day{font-size:27px}.date-card-mark{font-size:24px;bottom:8px;right:9px}}@media (max-width:420px){.calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.admin-dashboard-heading{display:block}.admin-dashboard-heading .refresh-button{margin-top:17px}.daily-dashboard{grid-template-columns:1fr;gap:10px}.daily-summary,.schedule-panel{padding:17px}.schedule-toolbar{display:block}.schedule-navigation{margin-top:14px}.schedule-navigation input{flex:1;width:auto}}
