/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@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,::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]){appearance:button}::file-selector-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{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--deep:#0e514e;--deep-2:#0a3f3c;--lagoon:#11978a;--lagoon-soft:#d7eee8;--gold:#b7a86f;--sand:#eee5d3;--paper:#f8f5ed;--card:#fff;--ink:#173634;--muted:#6c7d78;--line:#dfe4dd;--danger:#a14e45;--shadow:0 20px 55px #10433d21}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#e9ece7}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#e9ece7;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #11978a47}.guest-shell{background:var(--paper);width:min(100%,1220px);min-height:100vh;margin:0 auto;overflow:hidden;box-shadow:0 0 80px #0e514e24}.guest-header{z-index:40;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a3f3cf7;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;min-height:96px;padding:13px 36px;display:flex;position:sticky;top:0}.brand-button{cursor:pointer;background:0 0;border:0;padding:0;line-height:0}.brand-button img{object-fit:contain;width:185px;height:auto;display:block}.guest-header-actions{align-items:center;gap:13px;display:flex}.language-switcher{border:1px solid #ffffff38;border-radius:999px;gap:3px;padding:4px;display:flex}.language-switcher button{color:#ffffffb3;cursor:pointer;background:0 0;border:0;border-radius:999px;width:38px;height:32px;font-size:9px;font-weight:900}.language-switcher button.active{color:var(--deep);background:#fff}.admin-link{color:#fff;border:1px solid #ffffff4d;border-radius:999px;padding:12px 16px;font-size:9px;font-weight:850;text-decoration:none}.guest-hero{background:radial-gradient(circle at 74% 22%,#11978a29,#0000 24%),linear-gradient(135deg,#fbf8f0 0%,#f1e8d7 100%);border-bottom:1px solid #0e514e1c;grid-template-columns:1.08fr .92fr;align-items:center;gap:18px;min-height:440px;padding:58px 54px 45px 66px;display:grid;position:relative;overflow:hidden}.guest-hero:after{content:"";background:var(--paper);border-radius:50% 50% 0 0;height:62px;position:absolute;bottom:-27px;left:-4%;right:-4%}.hero-copy{z-index:3;position:relative}.eyebrow{color:var(--lagoon);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;font-size:9px;font-weight:900;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:25px;height:1px}.eyebrow.light{color:#dccd98}.hero-copy h1{letter-spacing:-.035em;max-width:590px;color:var(--deep-2);margin:18px 0 16px;font:500 clamp(48px,5.2vw,72px)/.98 Georgia,serif}.hero-copy p{color:#58706a;max-width:590px;margin:0;font-size:13px;line-height:1.7}.hero-art{place-items:center;min-height:320px;display:grid;position:relative}.hero-art img{z-index:2;filter:drop-shadow(0 25px 28px #1c423c2e);width:min(100%,500px);position:relative}.hero-sun{opacity:.62;background:#ded1ad;border-radius:50%;width:280px;height:280px;position:absolute}.hero-sun:before,.hero-sun:after{content:"";border:1px solid #b7a86f73;border-radius:50%;position:absolute;inset:-23px}.hero-sun:after{opacity:.45;inset:-48px}.guest-content{padding:30px 42px 62px}.discovery-bar{justify-content:space-between;align-items:center;gap:20px;display:flex}.search-field{border:1px solid var(--line);min-width:330px;height:50px;color:var(--muted);background:#fff;border-radius:16px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-field span{font-size:24px;transform:rotate(-18deg)}.search-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.filter-pills{gap:7px;display:flex;overflow-x:auto}.filter-pills button{white-space:nowrap;min-height:39px;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:0 14px;font-size:9px;font-weight:850}.filter-pills button.active{color:#fff;border-color:var(--lagoon);background:var(--lagoon)}.section-title{justify-content:space-between;align-items:end;margin:34px 0 16px;display:flex}.section-title h2{margin:7px 0 0;font:500 31px/1 Georgia,serif}.section-title small{color:var(--muted);font-size:9px}.restaurant-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.restaurant-tile{background:#fff;border-radius:21px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 9px 32px #164a4417}.restaurant-tile:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.restaurant-tile>button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.tile-image{background:#dce7e1;height:200px;position:relative;overflow:hidden}.tile-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.restaurant-tile:hover .tile-image img{transform:scale(1.035)}.access-badge{width:max-content;color:var(--deep);letter-spacing:.05em;text-transform:uppercase;background:#ddf4ebf2;border-radius:999px;padding:7px 9px;font-size:7px;font-weight:900;display:inline-flex}.access-badge.free{color:#675a36;background:#f6eed7f5}.tile-image .access-badge{position:absolute;bottom:13px;left:13px}.tile-copy{justify-content:space-between;align-items:center;gap:12px;min-height:96px;padding:17px;display:flex}.tile-copy h3{margin:0 0 7px;font:500 21px/1.08 Georgia,serif}.tile-copy p{color:var(--muted);margin:0;font-size:9px;line-height:1.4}.tile-arrow{width:37px;height:37px;color:var(--deep);background:var(--lagoon-soft);border-radius:50%;flex:0 0 37px;place-items:center;display:grid}.loading-state,.error-state{min-height:320px;color:var(--muted);align-content:center;justify-items:center;font-size:10px;display:grid}.loading-state span,.admin-loading span{border:3px solid var(--line);border-top-color:var(--lagoon);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state b{color:var(--deep);font:500 24px Georgia,serif}.detail-page{background:#fff;grid-template-columns:1.05fr .95fr;min-height:calc(100vh - 96px);display:grid}.detail-visual{background:#d8e3df;min-height:690px;position:relative;overflow:hidden}.detail-visual>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.detail-visual:after{content:"";background:linear-gradient(#04282533,#0000 38%,#042220d1);position:absolute;inset:0}.round-back{z-index:3;width:46px;height:46px;color:var(--deep);cursor:pointer;background:#ffffffeb;border:0;border-radius:50%;font-size:18px;position:absolute;top:24px;left:24px}.detail-overlay{z-index:3;color:#fff;position:absolute;bottom:34px;left:34px;right:34px}.detail-overlay h1{margin:13px 0 7px;font:500 54px/1 Georgia,serif}.detail-overlay p{color:#ffffffbf;margin:0;font-size:11px}.detail-body{flex-direction:column;justify-content:center;padding:48px;display:flex}.detail-lead{color:#314f4a;margin:14px 0 23px;font:500 21px/1.55 Georgia,serif}.detail-info{grid-template-columns:1fr 1fr;gap:10px;display:grid}.detail-info article{border:1px solid var(--line);background:#fbfcf9;border-radius:17px;gap:11px;min-height:125px;padding:16px;display:flex}.detail-info article>span{color:var(--lagoon);font-size:20px}.detail-info b{margin:3px 0 8px;font-size:10px;display:block}.detail-info p{white-space:pre-line;color:var(--muted);margin:0;font-size:9px;line-height:1.55}.menu-list{gap:8px;margin-top:15px;display:grid}.menu-list a{min-height:69px;color:inherit;border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:43px 1fr auto;align-items:center;gap:12px;padding:11px;text-decoration:none;display:grid}.menu-mark{width:43px;height:47px;color:var(--lagoon);background:var(--lagoon-soft);border-radius:9px;place-items:center;font-size:8px;font-weight:900;display:grid}.menu-list b,.menu-list small{display:block}.menu-list b{margin-bottom:5px;font-size:10px}.menu-list small{color:var(--muted);font-size:8px}.menu-list strong{color:var(--lagoon)}.detail-actions{grid-template-columns:1fr 1.2fr;gap:9px;margin-top:22px;display:grid}.button{border:1px solid var(--deep);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:10px 16px;font-size:10px;font-weight:850;text-decoration:none;display:inline-flex}.button.primary{color:#fff;background:var(--deep)}.button.secondary{color:var(--deep);background:0 0}.button:disabled{opacity:.45;cursor:not-allowed}.subpage{background:var(--paper);min-height:calc(100vh - 96px)}.subpage-head{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f5edf5;align-items:center;gap:14px;min-height:98px;padding:17px 34px;display:flex;position:sticky;top:96px}.subpage-head>button{border:1px solid var(--line);width:43px;height:43px;color:var(--deep);cursor:pointer;background:#fff;border-radius:50%;flex:0 0 43px}.subpage-head h1{margin:5px 0 4px;font:500 26px Georgia,serif}.subpage-head p{color:var(--muted);margin:0;font-size:9px}.booking-form{width:min(100%,800px);margin:0 auto;padding:28px 24px 60px}.form-section{border:1px solid var(--line);background:#fff;border-radius:20px;margin-bottom:14px;padding:21px;box-shadow:0 8px 28px #0e514e0d}.form-section>header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.form-section>header>span{color:#fff;background:var(--lagoon);border-radius:50%;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:9px;font-weight:900;display:grid}.form-section h2{margin:0 0 4px;font-size:12px}.form-section header p{white-space:pre-line;color:var(--muted);margin:0;font-size:8px;line-height:1.45}.type-selector{grid-template-columns:1fr 1fr;gap:9px;display:grid}.type-selector button{text-align:left;min-height:68px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fbfcf9;border-radius:15px;padding:12px 14px}.type-selector button.active{color:#fff;border-color:var(--deep);background:var(--deep)}.type-selector b,.type-selector small{display:block}.type-selector b{margin-bottom:5px;font-size:10px}.type-selector small{opacity:.7;font-size:8px}.form-grid{gap:10px;margin-top:13px;display:grid}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1fr 1fr .7fr}.form-grid label,.full-field,.editor-field,.policy-input{color:#58706a;gap:6px;font-size:8px;font-weight:850;display:grid}.form-grid input,.form-grid textarea,.full-field input,.full-field select,.editor-field input,.editor-field select,.editor-field textarea,.policy-input input{width:100%;color:var(--ink);border:1px solid var(--line);background:#fbfcf9;border-radius:11px;outline:0;font-size:10px}.form-grid input,.full-field input,.full-field select,.editor-field input,.editor-field select,.policy-input input{height:45px;padding:0 11px}.form-grid textarea,.editor-field textarea{resize:vertical;min-height:82px;padding:10px 11px}.full-field{margin-top:8px}.field-title{justify-content:space-between;align-items:center;margin:18px 0 9px;display:flex}.field-title h3{margin:0;font-size:10px}.field-title span{color:var(--muted);font-size:8px}.time-options{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.time-options button{min-height:53px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fbfcf9;border-radius:13px}.time-options button b,.time-options button small{display:block}.time-options button b{margin-bottom:3px;font-size:10px}.time-options button small{color:var(--muted);font-size:7px}.time-options button.active{color:#fff;border-color:var(--lagoon);background:var(--lagoon)}.time-options button.active small{color:#ffffffbf}.time-options button:disabled{opacity:.42;cursor:not-allowed}.inline-status{color:var(--muted);text-align:center;background:#f7f8f5;border-radius:12px;padding:13px;font-size:9px}.inline-status.warning{color:#7b6333;background:#f7efd9}.counter-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.guest-counter{border:1px solid var(--line);background:#fbfcf9;border-radius:15px;justify-content:space-between;align-items:center;min-height:68px;padding:12px;display:flex}.guest-counter strong{font-size:9px}.guest-counter>div{align-items:center;gap:10px;display:flex}.guest-counter button{width:31px;height:31px;color:var(--deep);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;font-weight:900}.guest-counter b{text-align:center;min-width:16px;font-size:10px}.booking-summary{color:#fff;background:var(--deep);border-radius:18px;margin-top:18px;padding:18px}.booking-summary h3{margin:0 0 13px;font-size:11px}.booking-summary p{color:#ffffffb3;justify-content:space-between;gap:15px;margin:8px 0;font-size:9px;display:flex}.booking-summary b{color:#fff;text-align:right}.submit-button{width:100%;margin-top:12px}.form-error{color:var(--danger);text-align:center;margin:12px 0 0;font-size:9px}.guest-footer{min-height:72px;color:var(--muted);border-top:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:19px 34px;font-size:8px;display:flex}.guest-footer a{color:var(--deep);font-weight:850;text-decoration:none}.confirmation-backdrop,.editor-backdrop,.reservation-detail-backdrop{z-index:150;background:#052c29ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirmation-card{text-align:center;width:min(100%,420px);box-shadow:var(--shadow);background:#fff;border-radius:25px;padding:30px 25px 23px}.success-icon{width:64px;height:64px;color:var(--deep);background:var(--lagoon-soft);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:28px;display:grid}.confirmation-card h2{margin:10px 0 9px;font:500 29px Georgia,serif}.confirmation-card>p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.reservation-code{background:var(--paper);border-radius:13px;margin:17px 0 12px;padding:12px}.reservation-code small,.reservation-code strong{display:block}.reservation-code small{color:var(--muted);font-size:8px}.reservation-code strong{color:var(--deep);letter-spacing:.07em;margin-top:5px;font-size:18px}.confirmation-details{text-align:left;margin-bottom:14px}.confirmation-details p{border-bottom:1px solid #edf0eb;justify-content:space-between;gap:14px;margin:0;padding:8px 2px;font-size:8px;display:flex}.confirmation-details span{color:var(--muted)}.confirmation-details b{text-align:right}.whatsapp-button{color:#fff;background:#167a51;border-color:#167a51;width:100%}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:13px;font-size:9px;font-weight:800}.admin-login-page{background:var(--paper);grid-template-columns:minmax(360px,.95fr) minmax(440px,1.05fr);min-height:100vh;display:grid}.admin-login-brand{color:#fff;background:linear-gradient(145deg,#083e3af0,#094e49e0),url(https://samoavillaresort.com.br/wp-content/uploads/2024/11/gastronomia.jpg) 50%/cover;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(38px,6vw,78px);display:flex}.login-logo{background:var(--deep);border:1px solid #fff3;border-radius:14px;align-self:flex-start;padding:11px 14px}.login-logo img{width:205px}.admin-login-brand>div{max-width:560px}.admin-login-brand h1{letter-spacing:-.035em;margin:15px 0 17px;font:500 clamp(45px,5vw,70px)/.98 Georgia,serif}.admin-login-brand p{color:#ffffffb8;max-width:480px;margin:0;font-size:11px;line-height:1.7}.admin-login-brand>small{color:#ffffff8c;font-size:8px}.admin-login-panel{place-items:center;padding:30px;display:grid}.admin-login-card{width:min(100%,420px)}.login-lock{width:49px;height:49px;color:var(--deep);background:var(--lagoon-soft);border-radius:14px;place-items:center;margin-bottom:22px;font-size:22px;display:grid}.admin-login-card>small{color:var(--gold);letter-spacing:.15em;font-size:8px;font-weight:900}.admin-login-card h2{margin:8px 0;font:500 38px Georgia,serif}.admin-login-card>p{color:var(--muted);margin:0 0 27px;font-size:10px;line-height:1.6}.admin-login-form{gap:15px;display:grid}.admin-login-form>label{gap:7px;display:grid}.admin-login-form label>span{color:#526c66;font-size:9px;font-weight:850}.admin-login-form input{width:100%;height:51px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:13px;outline:0;padding:0 14px;font-size:10px}.password-field{position:relative}.password-field input{padding-right:76px}.password-field button{height:51px;color:var(--deep);cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:8px;font-weight:850;position:absolute;top:0;right:5px}.login-error{color:var(--danger);margin:0;font-size:9px}.login-submit{width:100%}.back-to-guest{width:max-content;color:var(--muted);margin:21px auto 0;font-size:9px;font-weight:800;text-decoration:none;display:block}.admin-loading{min-height:100vh;color:var(--muted);background:var(--paper);align-content:center;justify-items:center;gap:10px;font-size:10px;display:grid}.admin-shell{background:#f1f3ee;grid-template-columns:230px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#fff;background:var(--deep-2);flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.admin-logo-link{background:#fff;border-radius:14px;align-self:center;width:132px;padding:10px}.admin-logo-link img{width:100%}.sidebar-label{color:#ffffff73;letter-spacing:.12em;margin:24px 10px 9px;font-size:7px;font-weight:900}.admin-sidebar nav{gap:5px;display:grid}.admin-sidebar nav button{color:#ffffffa8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:10px;min-height:45px;padding:0 12px;font-size:9px;font-weight:800;display:flex}.admin-sidebar nav button span{color:#8bd1c6;text-align:center;width:22px;font-size:15px}.admin-sidebar nav button.active{color:#fff;background:#ffffff1a}.admin-user{border-top:1px solid #ffffff1a;margin-top:auto;padding:13px 10px}.admin-user b,.admin-user small{display:block}.admin-user b{font-size:9px}.admin-user small{color:#ffffff73;margin-top:5px;font-size:7px}.sign-out{color:#fff9;cursor:pointer;background:0 0;border:1px solid #ffffff21;border-radius:10px;min-height:38px;font-size:8px;font-weight:800}.admin-main{min-width:0;padding:34px clamp(20px,4vw,48px) 60px}.admin-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.admin-heading h1{margin:7px 0 5px;font:500 36px Georgia,serif}.admin-heading p{color:var(--muted);margin:0;font-size:9px}.admin-heading .button{min-height:42px}.admin-error{color:#7c3f38;background:#f8eae6;border:1px solid #e7cbc4;border-radius:16px;padding:20px}.admin-error p{font-size:9px}.admin-error button{color:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.stat-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:15px;display:grid}.admin-stat{border:1px solid var(--line);background:#fff;border-radius:18px;min-height:120px;padding:18px;box-shadow:0 10px 36px #10433d0d}.admin-stat span,.admin-stat small{color:var(--muted);font-size:8px;display:block}.admin-stat span{font-weight:850}.admin-stat b{color:var(--deep);margin:14px 0 9px;font:500 31px Georgia,serif;display:block}.overview-grid{grid-template-columns:1.45fr .75fr;gap:15px;display:grid}.overview-card{border:1px solid var(--line);background:#fff;border-radius:19px;min-width:0;padding:19px;box-shadow:0 10px 38px #10433d0d}.overview-card>header{justify-content:space-between;align-items:end;gap:14px;margin-bottom:11px;display:flex}.overview-card header small{color:var(--gold);letter-spacing:.12em;font-size:7px;font-weight:900}.overview-card h2{margin:6px 0 0;font:500 22px Georgia,serif}.overview-card header button,.overview-links button{color:var(--deep);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:850}.overview-reservation{width:100%;min-height:59px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #edf0eb;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;padding:10px 0;display:grid}.overview-reservation b,.overview-reservation small{display:block}.overview-reservation b{font-size:9px}.overview-reservation small{color:var(--muted);margin-top:4px;font-size:7px}.service-summary{grid-template-columns:1fr 1fr;gap:8px;display:grid}.service-summary p{background:#f5f7f3;border-radius:13px;flex-direction:column;justify-content:space-between;min-height:82px;margin:0;padding:13px;display:flex}.service-summary span{color:var(--muted);font-size:7px;font-weight:800}.service-summary b{font:500 24px Georgia,serif}.overview-links{gap:12px;margin-top:15px;display:flex}.admin-empty{min-height:210px;color:var(--muted);align-content:center;justify-items:center;gap:6px;font-size:9px;display:grid}.admin-empty.compact{min-height:130px}.admin-empty b{color:var(--ink);font-size:11px}.reservation-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.period-switch{border:1px solid var(--line);background:#fff;border-radius:12px;padding:4px;display:flex}.period-switch button{height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 13px;font-size:8px;font-weight:850}.period-switch button.active{color:#fff;background:var(--deep)}.admin-filters{grid-template-columns:150px 330px;gap:8px;display:grid}.admin-filters select,.admin-search{border:1px solid var(--line);background:#fff;border-radius:11px;height:43px;font-size:8px}.admin-filters select{padding:0 10px}.admin-search{align-items:center;gap:8px;padding:0 11px;display:flex}.admin-search span{font-size:16px}.admin-search input{background:0 0;border:0;outline:0;width:100%;font-size:8px}.reservation-table,.availability-panel{border:1px solid var(--line);background:#fff;border-radius:18px;overflow-x:auto;box-shadow:0 10px 35px #10433d0d}.reservation-row{border-bottom:1px solid #edf0eb;grid-template-columns:1.15fr 1.1fr 1.2fr .5fr .7fr 1.15fr;align-items:center;gap:12px;min-width:920px;padding:13px 16px;font-size:8px;display:grid}.reservation-row:last-child{border:0}.reservation-row b,.reservation-row small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.reservation-row b{font-size:9px}.reservation-row small{color:var(--muted);margin-top:4px;font-size:7px}.reservation-row.table-head{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f6f7f4;font-size:7px;font-weight:900}.reservation-actions{grid-template-columns:auto 1fr;gap:6px;display:grid}.reservation-actions button{height:36px;color:var(--deep);cursor:pointer;background:#eaf3ef;border:1px solid #cbded5;border-radius:9px;padding:0 8px;font-size:7px;font-weight:850}.reservation-actions select,.reservation-detail-card footer select{border:1px solid var(--line);background:#fbfcf9;border-radius:9px;min-width:0;height:36px;padding:0 7px;font-size:7px}.status-pill{background:#eee;border-radius:999px;width:max-content;padding:6px 8px;font-size:7px;font-style:normal;font-weight:850;display:inline-block}.status-pill.confirmed{color:#23634a;background:#dcefe5}.status-pill.seated{color:#2e5872;background:#dfebf2}.status-pill.no_show,.status-pill.cancelled{color:#874841;background:#f1dfdb}.availability-datebar{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:40px 190px 1fr 40px;align-items:center;gap:10px;min-height:66px;margin-bottom:15px;padding:9px 12px;display:grid}.availability-datebar>button{width:40px;height:40px;color:var(--deep);border:1px solid var(--line);cursor:pointer;background:#f4f6f2;border-radius:10px}.availability-datebar label{gap:4px;display:grid}.availability-datebar label span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:7px;font-weight:850}.availability-datebar input{height:34px;color:var(--ink);border:1px solid var(--line);background:#fbfcf9;border-radius:8px;padding:0 8px;font-size:8px}.availability-datebar strong{text-align:center;text-transform:capitalize;font:500 18px Georgia,serif}.availability-head,.availability-row{grid-template-columns:1.2fr .6fr 1.2fr .55fr .55fr .8fr;align-items:center;gap:12px;min-width:880px;padding:13px 16px;display:grid}.availability-head{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f6f7f4;font-size:7px;font-weight:900}.availability-row{border-top:1px solid #edf0eb;min-height:70px;font-size:8px}.availability-row b,.availability-row small{display:block}.availability-row b{font-size:9px}.availability-row small{color:var(--muted);margin-top:4px;font-size:7px}.occupancy-cell i{background:#e8ebe7;border-radius:999px;width:100%;height:6px;margin-top:7px;display:block;overflow:hidden}.occupancy-cell em{background:var(--lagoon);border-radius:inherit;height:100%;display:block}.availability-status{border-radius:999px;width:max-content;padding:6px 8px;font-size:7px;font-style:normal;font-weight:850;display:inline-block}.availability-status.available{color:#236347;background:#dcefe2}.availability-status.limited{color:#7e5c24;background:#f7e7c6}.availability-status.full{color:#84433f;background:#f1dedd}.availability-status.closed{color:#6f665f;background:#ece8e3}.availability-note{color:var(--muted);margin:11px 4px 0;font-size:7px;line-height:1.5}.section-actions{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-actions p{color:var(--muted);margin:0;font-size:8px}.section-actions .button{min-height:42px}.restaurant-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.restaurant-admin-grid article{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 35px #10433d12}.restaurant-admin-image{background:#dde7e2;height:165px;position:relative}.restaurant-admin-image img{object-fit:cover;width:100%;height:100%}.restaurant-admin-image i{color:var(--deep);background:#fff;border-radius:999px;padding:6px 8px;font-size:7px;font-style:normal;font-weight:900;position:absolute;top:11px;right:11px}.restaurant-admin-image i.inactive{color:#7c665d;background:#eee8e2}.restaurant-admin-grid article>div:last-child{padding:17px}.restaurant-admin-grid small{color:var(--gold);letter-spacing:.08em;font-size:7px;font-weight:900}.restaurant-admin-grid h2{margin:6px 0;font:500 22px Georgia,serif}.restaurant-admin-grid p{color:var(--muted);margin:0 0 15px;font-size:8px}.restaurant-card-actions{justify-content:space-between;align-items:center;gap:9px;display:flex}.restaurant-card-actions button{color:var(--deep);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:850}.restaurant-card-actions button.disable,.restaurant-card-actions button.enable{border-radius:8px;padding:7px 8px}.restaurant-card-actions button.disable{color:#8b4e44;background:#f4e7e3}.restaurant-card-actions button.enable{color:#226146;background:#dfeee5}.policy-admin-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.policy-admin-card{border:1px solid var(--line);background:#fff;border-radius:19px;padding:22px;box-shadow:0 10px 36px #10433d0d}.policy-admin-card.wide{grid-column:1/-1}.policy-admin-card>small{color:var(--gold);letter-spacing:.12em;font-size:7px;font-weight:900}.policy-admin-card h2{margin:7px 0;font:500 25px Georgia,serif}.policy-admin-card>p{color:var(--muted);margin:0 0 17px;font-size:8px;line-height:1.55}.policy-input{margin-bottom:10px}.policy-toggle-row{color:#405b54;border-top:1px solid #edf0eb;justify-content:space-between;align-items:center;gap:15px;min-height:48px;font-size:8px;font-weight:800;display:flex}.policy-toggle-row input,.toggle-row input,.operating-days input{accent-color:var(--lagoon)}.policy-restaurant-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.policy-restaurant-list button{min-height:68px;color:inherit;border:1px solid var(--line);text-align:left;cursor:pointer;background:#fbfcf9;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.policy-restaurant-list b,.policy-restaurant-list small{display:block}.policy-restaurant-list b{font-size:9px}.policy-restaurant-list small{color:var(--muted);margin-top:4px;font-size:7px}.policy-restaurant-list strong{color:var(--deep);white-space:nowrap;font-size:7px}.policy-savebar{grid-column:1/-1;justify-content:flex-end;display:flex}.restaurant-editor{background:#f3f5f0;border-radius:22px;grid-template-rows:auto minmax(0,1fr) auto;width:min(860px,100%);max-height:calc(100vh - 40px);display:grid;overflow:hidden;box-shadow:0 30px 90px #0000004d}.restaurant-editor>header,.reservation-detail-card>header{color:#fff;background:var(--deep-2);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.restaurant-editor header small,.reservation-detail-card header small{color:#8fc5bb;letter-spacing:.1em;font-size:7px;font-weight:900}.restaurant-editor header h2,.reservation-detail-card header h2{margin:5px 0 0;font:500 23px Georgia,serif}.restaurant-editor header button,.reservation-detail-card header button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:24px}.editor-scroll{min-height:0;padding:20px 22px;overflow-y:auto}.language-tabs{background:#e4e9e3;border-radius:10px;width:max-content;margin-bottom:14px;padding:4px;display:flex}.language-tabs button{height:33px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 16px;font-size:8px;font-weight:850}.language-tabs button.active{color:var(--deep);background:#fff;box-shadow:0 3px 10px #0000000f}.editor-section{border:1px solid var(--line);background:#fff;border-radius:15px;margin-bottom:12px;padding:17px}.editor-section h3{margin:0 0 12px;font-size:10px}.editor-pair{grid-template-columns:1fr 1fr;gap:9px;display:grid}.editor-field{margin-bottom:9px}.toggle-row{color:#405b54;flex-wrap:wrap;gap:18px;font-size:8px;font-weight:800;display:flex}.toggle-row label{align-items:center;gap:6px;display:flex}.operating-days{flex-wrap:wrap;gap:7px;display:flex}.operating-days label{border:1px solid var(--line);background:#fbfcf9;border-radius:9px;align-items:center;gap:5px;padding:8px 9px;font-size:8px;font-weight:800;display:flex}.section-line{justify-content:space-between;align-items:center;gap:20px;display:flex}.section-line h3{margin-bottom:3px}.section-line p{color:var(--muted);margin:0;font-size:7px}.section-line button{color:var(--deep);cursor:pointer;background:#eaf3ef;border:1px solid #cbded5;border-radius:8px;padding:8px 10px;font-size:7px;font-weight:850}.slot-editor{grid-template-columns:1fr 1fr auto;gap:8px;margin-top:10px;display:grid}.slot-editor input{border:1px solid var(--line);background:#fbfcf9;border-radius:9px;min-width:0;height:40px;padding:0 9px;font-size:8px}.slot-editor button{color:var(--danger);cursor:pointer;background:0 0;border:0;font-size:7px;font-weight:850}.menu-editor{border:1px solid var(--line);background:#f8faf7;border-radius:11px;margin-top:10px;padding:12px}.menu-editor-head{justify-content:space-between;margin-bottom:9px;font-size:8px;display:flex}.menu-editor-head button{color:var(--danger);cursor:pointer;background:0 0;border:0;font-size:7px}.restaurant-editor>footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;gap:9px;padding:13px 22px;display:flex}.reservation-detail-card{background:#f3f5f0;border-radius:22px;grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,100%);max-height:calc(100vh - 40px);display:grid;overflow:hidden;box-shadow:0 30px 90px #0000004d}.reservation-detail-grid{grid-template-columns:1fr 1fr;gap:8px;min-height:0;padding:20px 22px;display:grid;overflow-y:auto}.reservation-detail-grid p{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:64px;margin:0;padding:11px}.reservation-detail-grid span,.reservation-detail-grid b{display:block}.reservation-detail-grid span{color:var(--muted);font-size:7px}.reservation-detail-grid b{margin-top:6px;font-size:9px;line-height:1.4}.reservation-detail-card>footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;gap:9px;padding:12px 22px;display:flex}.admin-toast{z-index:180;color:#fff;background:var(--deep);box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:12px;padding:13px 16px;font-size:8px;position:fixed;bottom:24px;right:24px}@media (width<=1020px){.restaurant-grid,.restaurant-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1fr}.admin-filters{grid-template-columns:140px 250px}}@media (width<=800px){.guest-hero{grid-template-columns:1fr;padding:48px 34px 20px}.hero-art{min-height:260px}.detail-page{grid-template-columns:1fr}.detail-visual{min-height:450px}.admin-login-page{grid-template-columns:1fr}.admin-login-brand{min-height:330px;padding:32px 24px}.admin-login-brand h1{font-size:44px}.admin-login-brand p,.admin-login-brand>small{display:none}.admin-login-panel{padding:45px 20px 60px}.admin-shell{grid-template-columns:1fr}.admin-sidebar{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;height:auto;padding:10px 14px;display:grid;position:static}.admin-logo-link{width:82px;padding:5px}.sidebar-label,.admin-user,.sign-out{display:none}.admin-sidebar nav{justify-content:flex-end;display:flex;overflow-x:auto}.admin-sidebar nav button{flex:none;width:auto;min-height:39px;padding:0 10px}.admin-main{padding:27px 16px 50px}.admin-heading{flex-direction:column;align-items:start}.policy-admin-grid{grid-template-columns:1fr}.policy-admin-card.wide,.policy-savebar{grid-column:auto}}@media (width<=620px){.guest-header{min-height:82px;padding:10px 15px}.brand-button img{width:130px}.admin-link{display:none}.language-switcher button{width:33px;height:29px}.guest-hero{min-height:590px;padding:38px 19px 10px}.hero-copy h1{font-size:43px}.hero-art{min-height:280px}.guest-content{padding:22px 15px 42px}.discovery-bar{flex-direction:column;align-items:stretch}.search-field{width:100%;min-width:0}.filter-pills{width:100%}.restaurant-grid,.restaurant-admin-grid{grid-template-columns:1fr}.tile-image{height:220px}.detail-visual{min-height:390px}.detail-overlay{bottom:22px;left:20px;right:20px}.detail-overlay h1{font-size:40px}.detail-body{padding:28px 17px}.detail-info,.detail-actions{grid-template-columns:1fr}.subpage-head{padding:13px 15px;top:82px}.subpage-head p{display:none}.booking-form{padding:18px 14px 44px}.form-section{padding:16px}.form-grid.two,.form-grid.three,.counter-grid{grid-template-columns:1fr}.time-options{grid-template-columns:repeat(2,1fr)}.guest-footer{padding:18px 15px}.admin-heading .button{width:100%}.reservation-toolbar{flex-direction:column;align-items:stretch}.admin-filters{grid-template-columns:1fr}.period-switch button{flex:1}.availability-datebar{grid-template-columns:37px 1fr 37px}.availability-datebar strong{grid-area:1/1/auto/-1}.availability-datebar>button:first-child,.availability-datebar label,.availability-datebar>button:last-child{grid-row:2}.policy-restaurant-list,.reservation-detail-grid{grid-template-columns:1fr}.editor-backdrop,.reservation-detail-backdrop{padding:0}.restaurant-editor,.reservation-detail-card{border-radius:0;width:100%;height:100vh;max-height:100vh}.editor-pair{grid-template-columns:1fr}.section-line{flex-direction:column;align-items:start}.slot-editor{grid-template-columns:1fr 1fr}.slot-editor button{grid-column:1/-1;justify-self:start}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
