@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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size: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;--radius-lg:.5rem;--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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.block{display:block}.hidden{display:none}.table{display:table}.text-wrap{text-wrap:wrap}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--paper:#f3efe5;--paper-warm:#e8e1d4;--moss:#66705a;--forest:#3f493b;--amber:#c88a48;--wood:#8a6b50;--ink:#292a26;--muted:#74736c;--line:#3f493b29;--shadow:0 18px 48px #302a2214;--radius-lg:28px;--content:1120px;--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-display:"Ma Shan Zheng", "FZKai-Z03", "STKaiti", "KaiTi", "Songti SC", "STSong", serif;--font-literary:"Songti SC", "STSong", "SimSun", "Noto Serif CJK SC", serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);overflow-x:hidden}body{background:radial-gradient(circle at 7% 12%, #292a260b, transparent 20rem), radial-gradient(circle at 94% 42%, #66705a0d, transparent 24rem), linear-gradient(90deg, #433d3405 1px, transparent 1px), var(--paper);min-height:100dvh;font-family:var(--font-ui);text-rendering:optimizelegibility;background-size:auto,auto,5px 5px,auto;margin:0;line-height:1.65}h1,h2,h3,.mini-brand,.brand-mark,.admin-brand{font-family:var(--font-display);font-synthesis:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--amber);outline-offset:3px}.app-shell{min-height:100dvh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.page-content{width:min(100% - 36px, var(--content));padding:max(28px, env(safe-area-inset-top)) 0 48px;margin-inline:auto;position:relative}.page-content:before{content:"";z-index:-1;filter:blur(18px);pointer-events:none;background:radial-gradient(#292a260e,#0000 68%);border-radius:50%;width:28rem;height:18rem;position:fixed;top:10vh;right:-10rem;transform:rotate(-12deg)}.eyebrow{color:#75564a;font-family:var(--font-literary);letter-spacing:.22em;margin:0 0 6px;font-size:.68rem;font-weight:700}.eyebrow:before{content:"";vertical-align:-2px;width:13px;height:13px;box-shadow:inset 0 0 0 2px var(--paper);background:#8743321f;border:1px solid #874332ad;margin-right:8px;display:inline-block}.welcome{padding:22px 0 30px;display:block}.welcome__heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.welcome h1,.centered-page h1{max-width:700px;font-family:var(--font-display);letter-spacing:.035em;margin:0;font-size:clamp(2rem,8vw,4.4rem);font-weight:500;line-height:1.3}.welcome__copy{max-width:550px;color:var(--muted);margin:18px 0 0}.brand-mark{aspect-ratio:1;color:#824c3d;border:1px solid #824c3d;border-radius:3px;flex:none;place-items:center;width:56px;display:grid;transform:rotate(-3deg)}.brand-mark span{border:1px solid;border-radius:1px;width:31px;height:36px;transform:none}.brand-mark span:before{content:"溪南";writing-mode:vertical-rl;place-items:center;height:100%;font-size:.75rem;line-height:1.05;display:grid}.welcome__visual{background:var(--paper-warm);border-radius:2px 36px 2px 2px;height:clamp(260px,50vw,560px);margin:30px 0 0;position:relative;overflow:hidden}.welcome__visual img{object-fit:cover;filter:saturate(.72)contrast(.94)sepia(.08)}.welcome__visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 58%,#14181280);position:absolute;inset:0}.welcome__visual figcaption{z-index:1;color:#f7f1e6;letter-spacing:.08em;justify-content:space-between;gap:12px;font-size:.68rem;display:flex;position:absolute;bottom:14px;left:18px;right:18px}.weather-card{border:1px solid var(--line);background:radial-gradient(circle at 100% 0,#66705a29,#0000 47%),linear-gradient(145deg,#ffffff75,#e8e1d4b8);border-radius:2px 30px 2px 2px;gap:20px;margin-top:8px;padding:25px 22px 20px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 55px #302a2217}.weather-card:after{content:"";pointer-events:none;border:1px solid #3f493b14;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-72px;right:-56px;box-shadow:0 0 0 24px #3f493b06,0 0 0 50px #3f493b05}.weather-card__header{z-index:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid;position:relative}.weather-card__place>span{color:var(--wood);letter-spacing:.18em;font-family:Georgia,serif;font-size:.7rem;font-weight:700;display:block}.weather-card__place h2{font-family:var(--font-display);letter-spacing:.045em;margin:4px 0 1px;font-size:clamp(1.75rem,7vw,2.7rem);font-weight:400;line-height:1.25}.weather-card__place p{color:var(--muted);margin:0;font-size:.82rem}.weather-card__temperature{min-width:104px;color:var(--forest);grid-template-columns:auto auto;justify-content:end;align-items:start;display:grid}.weather-card__temperature svg{color:var(--wood);margin:12px 4px 0 0}.weather-card__temperature strong{letter-spacing:-.08em;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.7rem,15vw,5.5rem);font-weight:400;line-height:.92}.weather-card__temperature sup{letter-spacing:0;margin-left:.06em;font-size:.42em;position:relative;top:.08em}.weather-card__advice{z-index:1;border-left:3px solid var(--moss);background:#f3efe5a6;padding:15px 17px;position:relative}.weather-card__advice span,.weather-card__advice strong{display:block}.weather-card__advice span{color:var(--muted);letter-spacing:.08em;font-size:.76rem}.weather-card__advice strong{color:var(--forest);font-family:var(--font-literary);margin-top:2px;font-size:clamp(1rem,3.6vw,1.22rem);font-weight:650}.weather-card__metrics{z-index:1;border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:relative}.weather-card__metrics article{min-width:0;padding:17px 10px 3px}.weather-card__metrics article+article{border-left:1px solid var(--line)}.weather-card__metrics svg,.weather-card__metrics span,.weather-card__metrics strong,.weather-card__metrics small{display:block}.weather-card__metrics svg{color:var(--wood);margin-bottom:8px}.weather-card__metrics span{color:var(--muted);font-size:.76rem}.weather-card__metrics strong{color:var(--ink);font-family:Georgia, var(--font-literary);margin:2px 0;font-size:clamp(1.15rem,4.5vw,1.55rem);font-weight:600;line-height:1.3}.weather-card__metrics small,.weather-card__source{color:var(--muted);font-size:.7rem;line-height:1.45}.weather-card__source{z-index:1;text-align:right;position:relative}.weather-card__weather-mark{border:1px solid var(--line);width:74px;height:74px;color:var(--forest);border-radius:50%;place-items:center;display:grid}.weather-card__offline-copy{z-index:1;background:#f3efe5ad;padding:18px;position:relative}.weather-card__offline-copy span,.weather-card__offline-copy strong{display:block}.weather-card__offline-copy span{color:var(--muted);font-size:.78rem}.weather-card__offline-copy strong{font-family:var(--font-literary);margin-top:4px;font-size:1.15rem}.weather-card__offline-copy p{color:var(--muted);margin:12px 0 0;font-size:.85rem}.today{padding:54px 0}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:20px;display:flex}.section-heading h2,.concierge h2{margin:0;font-family:Georgia,Songti SC,serif;font-size:clamp(1.55rem,5vw,2.25rem);font-weight:500}.section-heading>span{color:var(--muted);font-size:.76rem}.today-grid{gap:16px;display:grid}.feature-card{border-radius:var(--radius-lg);min-height:300px;box-shadow:var(--shadow);padding:26px;position:relative;overflow:hidden}.feature-card--breakfast{background:#ded7c8}.feature-card--music{background:var(--forest);color:#f5f0e5}.feature-card h3{max-width:360px;margin:38px 0 9px;font-family:Georgia,Songti SC,serif;font-size:1.6rem;font-weight:500;line-height:1.35}.feature-card p:not(.card-kicker){opacity:.75;max-width:410px;margin:0;font-size:.9rem}.card-kicker{letter-spacing:.08em;text-transform:uppercase;margin:18px 0 0;font-size:.72rem}.round-icon,.vinyl{border:1px solid;border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.vinyl{background:var(--ink);border:10px double #f3efe540}.feature-card button,.status-label,.card-action{min-height:42px;color:inherit;background:0 0;border:1px solid;border-radius:999px;padding:9px 16px;font-size:.8rem;position:absolute;bottom:24px;right:24px}.feature-card button:disabled{cursor:not-allowed;opacity:.6}.public-spaces{padding:34px 0 76px;position:relative}.public-spaces:before{content:"";z-index:-1;filter:blur(24px);pointer-events:none;background:radial-gradient(circle,#66705a14,#0000 68%);border-radius:50%;width:42vw;height:42vw;position:absolute;top:12%;left:-15vw}.public-spaces__heading{gap:16px;margin-bottom:34px;display:grid}.public-spaces__heading h2{font-family:var(--font-display);letter-spacing:.04em;margin:0;font-size:clamp(2rem,7vw,4rem);font-weight:500;line-height:1.2}.public-spaces__heading>p{max-width:610px;color:var(--muted);font-family:var(--font-literary);margin:0;font-size:clamp(.92rem,2vw,1.08rem);line-height:1.9}.public-spaces__grid{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-auto-columns:min(82vw,320px);grid-auto-flow:column;gap:18px;margin-inline:-18px;padding:2px 18px 22px;scroll-padding-inline:18px;display:grid;overflow-x:auto}.public-spaces__grid::-webkit-scrollbar{display:none}.public-space-card{scroll-snap-align:start;min-width:0}.public-space-card__image{aspect-ratio:4/5;background:var(--paper-warm);border-radius:2px 38px 2px 2px;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 60px #292a261f}.public-space-card:nth-child(2n) .public-space-card__image{border-radius:38px 2px 2px}.public-space-card__image:after{content:"";pointer-events:none;background:linear-gradient(#0000 62%,#191c1794),linear-gradient(105deg,#f3efe51a,#0000 35%);position:absolute;inset:0}.public-space-card__image img{object-fit:cover;filter:saturate(.76)contrast(.96)sepia(.04);transition:transform .7s cubic-bezier(.22,1,.36,1)}.public-space-card__image figcaption,.public-space-card__image>span{z-index:1;color:#f7f2e7;position:absolute;bottom:15px}.public-space-card__image figcaption{font-family:var(--font-literary);letter-spacing:.12em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff75;border-radius:999px;padding:5px 10px;font-size:.74rem;left:16px}.public-space-card__image>span{letter-spacing:.08em;font-family:Georgia,serif;font-size:1.05rem;right:17px}.public-space-card__body{padding:20px 6px 0}.public-space-card__body>p:first-child{color:var(--wood);letter-spacing:.16em;margin:0 0 5px;font-family:Georgia,serif;font-size:.68rem}.public-space-card__body h3{font-family:var(--font-display);letter-spacing:.04em;margin:0;font-size:clamp(1.6rem,5vw,2.35rem);font-weight:500;line-height:1.35}.public-space-card__body>p:nth-child(3){max-width:560px;color:var(--muted);margin:11px 0 17px;font-size:.9rem;line-height:1.85}.public-space-card__body a{width:fit-content;min-height:44px;color:var(--forest);border-bottom:1px solid;align-items:center;gap:7px;font-size:.84rem;font-weight:650;display:inline-flex}.public-space-card--field .public-space-card__body a{color:#75564a}.public-spaces__footnote{color:var(--muted);font-family:var(--font-literary);text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:30px;font-size:.74rem;display:grid}.public-spaces__footnote i{background:var(--amber);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 6px #c88a481a}.concierge{border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:auto 1fr;gap:18px;padding:28px 24px;display:grid}.concierge p{color:var(--muted);margin:7px 0 0;font-size:.9rem}.concierge a{background:var(--forest);min-height:48px;color:var(--paper);border-radius:14px;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 18px;font-weight:650;display:flex}.bottom-nav{z-index:20;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f3efe5f0;position:fixed;bottom:0;left:0;right:0}.bottom-nav__inner{grid-template-columns:repeat(4,1fr);width:min(100%,620px);min-height:72px;margin:auto;display:grid}.bottom-nav__item{min-width:0;min-height:58px;color:var(--muted);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.72rem;display:flex;position:relative}.bottom-nav__item:before{content:"";z-index:-1;opacity:0;background:#3f493b1f;border-radius:20px 20px 13px 13px;width:58px;height:36px;position:absolute;top:7px;transform:scale(.72)}.bottom-nav__icon{border-radius:50%;place-items:center;width:31px;height:28px;display:grid}.bottom-nav__label{line-height:1.15}.bottom-nav__item[aria-current=page]{color:var(--forest);font-weight:700}.bottom-nav__item[aria-current=page]:before{opacity:1;transform:scale(1)}.bottom-nav__item[aria-current=page] .bottom-nav__icon{transform:translateY(-4px)scale(1.08)}.bottom-nav__item[aria-current=page] .bottom-nav__label{transform:translateY(-2px)}.centered-page{flex-direction:column;justify-content:center;align-items:flex-start;width:min(100% - 40px,720px);min-height:calc(100dvh - 100px);margin:auto;display:flex}.centered-page p:not(.eyebrow){max-width:560px;color:var(--muted)}.primary-link{background:var(--forest);min-height:48px;color:var(--paper);border-radius:14px;margin-top:16px;padding:11px 18px}.page-header{padding:max(22px, env(safe-area-inset-top)) 0 48px;position:relative}.page-header:after{content:"";clip-path:polygon(0 46%,25% 46%,34% 10%,43% 46%,58% 46%,68% 22%,78% 46%,100% 46%,100% 55%,0 55%);opacity:.7;background:#292a2657;border-top:1px solid #292a266b;width:min(220px,58vw);height:24px;margin-top:28px;display:block}.page-header h1{max-width:750px;font-family:var(--font-display);letter-spacing:.045em;margin:6px 0 12px;font-size:clamp(2.2rem,9vw,5rem);font-weight:500;line-height:1.25}.page-header>p:last-child{max-width:600px;color:var(--muted);margin:0}.mini-brand{width:fit-content;min-height:44px;font-family:var(--font-display);letter-spacing:.1em;align-items:center;gap:8px;margin-bottom:40px;display:flex}.mini-brand svg{color:#824c3d}.filter-row{scrollbar-width:none;gap:8px;width:100%;margin:-4px 0 18px;padding:4px 2px 8px;display:flex;overflow-x:auto}.filter-row::-webkit-scrollbar{display:none}.filter-row button{border:1px solid var(--line);min-height:38px;color:var(--muted);background:0 0;border-radius:999px;flex:none;padding:7px 14px}.filter-row button[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:var(--paper)}.explore-guide{border:1px solid var(--line);background:radial-gradient(circle at 82% 20%,#66705a1c,#0000 34%),#e8e1d494;border-radius:2px 28px 2px 2px;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);align-items:center;gap:8px;padding:22px 16px;display:grid}.explore-guide__store{text-align:center;min-width:0}.explore-guide__store>span{width:35px;height:35px;color:var(--wood);border:1px solid;border-radius:50%;place-items:center;margin:0 auto 8px;font-family:Georgia,serif;font-size:.68rem;display:grid}.explore-guide__store small,.explore-guide__store strong,.explore-guide__store em{display:block}.explore-guide__store small{color:var(--muted);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,serif;font-size:.56rem;overflow:hidden}.explore-guide__store strong{font-family:var(--font-display);letter-spacing:.06em;margin:1px 0;font-size:clamp(1.35rem,6vw,2rem);font-weight:400}.explore-guide__store em{color:var(--muted);font-size:.68rem;font-style:normal}.explore-guide__store--field>span{color:var(--moss)}.explore-guide__path{min-width:0;height:78px;position:relative}.explore-guide__path svg{width:100%;height:48px;overflow:visible}.explore-guide__path path{fill:none;stroke:var(--wood);stroke-width:1.4px;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}.explore-guide__path span{width:max-content;color:var(--muted);align-items:center;gap:4px;font-size:.62rem;display:flex;position:absolute;bottom:0;right:50%;transform:translate(50%)}.place-directory__heading{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:24px 0 10px;font-size:.78rem;display:flex}.place-directory__heading p{margin:0}.place-directory__heading span{flex:none}.place-directory{gap:9px;display:grid}.place-directory__item{border:1px solid var(--line);width:100%;min-height:82px;color:var(--ink);text-align:left;background:#ffffff38;border-radius:3px 18px 3px 3px;grid-template-columns:32px 25px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.place-directory__item[data-selected=true]{background:#66705a1a;border-color:#3f493b80}.place-directory__item>svg{color:var(--moss)}.place-directory__number{color:var(--wood);font-family:Georgia,serif;font-size:.72rem}.place-directory__copy{min-width:0}.place-directory__copy small,.place-directory__copy strong,.place-directory__copy em{display:block}.place-directory__copy small{color:var(--muted);font-size:.68rem}.place-directory__copy strong{font-family:var(--font-literary);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.place-directory__copy em{color:var(--muted);font-size:.72rem;font-style:normal}.place-directory__item:active{transform:scale(.985)}.place-sheet{z-index:30;background:#f8f4ebf7;border-radius:25px;width:100%;margin:16px auto 0;padding:24px;position:relative;box-shadow:0 20px 60px #2a261f29}.place-sheet h3{margin:0;font-family:Georgia,Songti SC,serif;font-size:1.65rem;font-weight:500}.place-sheet p:not(.eyebrow){color:var(--muted);margin:6px 0 18px}.sheet-close{z-index:2;width:42px;height:42px;color:var(--ink);background:#e8e1d4cc;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.place-sheet dl{gap:10px;margin:0;display:grid}.place-sheet dl div{grid-template-columns:74px 1fr;gap:12px;font-size:.8rem;display:grid}.place-sheet dt{color:var(--muted)}.place-sheet dd{margin:0}.sheet-actions{grid-template-columns:1fr 1.4fr;gap:10px;margin-top:20px;display:grid}.sheet-actions button,.sheet-actions a{border:1px solid var(--forest);min-height:48px;color:var(--forest);background:0 0;border-radius:14px;justify-content:center;align-items:center;gap:7px;display:flex}.sheet-actions a{background:var(--forest);color:var(--paper)}.routes-section{padding:68px 0 30px}.route-list{gap:14px;display:grid}.route-card{border:1px solid var(--line);background:#ffffff2e;border-radius:4px 28px;padding:26px;position:relative;overflow:hidden}.route-number{color:#3f493b1f;font-family:Georgia,serif;font-size:4.4rem;line-height:1;position:absolute;top:12px;right:20px}.route-card h3{margin:0 0 14px;font-family:Georgia,Songti SC,serif;font-size:1.4rem;font-weight:500;position:relative}.route-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:.76rem;display:flex}.route-meta span{align-items:center;gap:5px;display:flex}.route-card ol{counter-reset:stop;flex-wrap:wrap;gap:7px;margin:22px 0;padding:0;list-style:none;display:flex}.route-card li{counter-increment:stop;align-items:center;gap:5px;font-size:.8rem;display:flex}.route-card li:before{content:counter(stop);border:1px solid var(--moss);width:20px;height:20px;color:var(--moss);border-radius:50%;place-items:center;font-size:.6rem;display:grid}.route-card a{min-height:44px;color:var(--forest);align-items:center;gap:7px;font-weight:650;display:flex}.route-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.route-actions button{border:1px solid var(--line);min-height:42px;color:var(--moss);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.7rem;display:flex}.service-group{margin-bottom:42px}.service-group h2{margin:0 0 16px;font-family:Georgia,Songti SC,serif;font-size:1.45rem;font-weight:500}.service-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.service-card{border:1px solid var(--line);min-height:180px;color:var(--ink);text-align:left;background:#fff3;border-radius:22px 5px;flex-direction:column;align-items:flex-start;padding:18px;display:flex}.service-card:active{background:var(--paper-warm);transform:scale(.98)}.service-icon{background:var(--paper-warm);width:40px;height:40px;color:var(--forest);border-radius:50%;place-items:center;margin-bottom:20px;display:grid}.service-card strong{font-family:Georgia,Songti SC,serif;font-size:1.05rem;font-weight:600}.service-card small{color:var(--muted);margin-top:5px;line-height:1.5}.service-card em{color:var(--wood);margin-top:auto;padding-top:12px;font-size:.7rem;font-style:normal}.butler-call{background:var(--forest);min-height:76px;color:var(--paper);border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:18px 0 40px;padding:14px 17px;display:grid}.butler-call>span{border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.butler-call strong,.butler-call small{display:block}.butler-call small{opacity:.68}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b1d196b;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.service-modal{width:min(100%,620px);max-height:calc(100dvh - max(18px, env(safe-area-inset-top)));padding:32px 24px calc(26px + env(safe-area-inset-bottom));background:var(--paper);border-radius:30px 30px 0 0;animation:.3s both sheet-in;position:relative;overflow-y:auto;box-shadow:0 -20px 60px #00000026}@keyframes sheet-in{0%{opacity:.7;transform:translateY(20%)}}.service-modal h2,.success-state h2{margin:3px 0 8px;font-family:Georgia,Songti SC,serif;font-size:1.8rem;font-weight:500}.service-modal form>p:not(.eyebrow),.success-state>p:not(.eyebrow){color:var(--muted)}.price-note{background:var(--paper-warm);border-radius:14px;grid-template-columns:1fr auto;margin:22px 0;padding:15px;display:grid}.price-note span{font-size:.78rem}.price-note small{color:var(--muted);grid-column:1/-1;margin-top:4px}.service-modal label{gap:6px;margin-top:16px;font-size:.82rem;font-weight:650;display:grid}.service-modal select,.service-modal textarea{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff6;border-radius:12px;padding:11px 12px}.submit-service,.success-state button{background:var(--forest);width:100%;min-height:50px;color:var(--paper);border:0;border-radius:14px;margin-top:22px;font-weight:700}.success-state{text-align:center;padding:34px 0 8px}.success-state>span{background:var(--forest);width:58px;height:58px;color:var(--paper);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.music-hero{color:#fff;border-radius:4px 40px 4px 4px;min-height:500px;margin-bottom:22px;position:relative;overflow:hidden}.music-hero img{object-fit:cover;filter:saturate(.68)contrast(.96)sepia(.06)}.music-hero:after{content:"";background:linear-gradient(#0000 35%,#161914d1);position:absolute;inset:0}.music-hero>div{z-index:1;position:absolute;bottom:24px;left:24px;right:24px}.music-hero h2,.playlist-panel h2,.event-section h2,.field-sounds h2,.stay-login h2{font-family:var(--font-display);margin:3px 0 7px;font-size:1.8rem;font-weight:500}.music-hero p:last-child{opacity:.76;max-width:500px;margin:0}.playlist-panel{background:var(--forest);color:var(--paper);border-radius:28px 5px;gap:26px;padding:28px 22px;display:grid}.playlist-collection{gap:18px;display:grid}.playlist-disc{background:#252821;border:32px double #f3efe51f;border-radius:50%;place-items:center;width:160px;height:160px;margin:auto;display:grid;box-shadow:inset 0 0 0 1px #ffffff2b,0 18px 35px #0003}.playlist-disc span{background:var(--amber);width:52px;height:52px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.playlist-panel>div>p:not(.eyebrow){opacity:.7}.playlist-panel ol{margin:22px 0;padding:0;list-style:none}.playlist-panel li{border-bottom:1px solid #ffffff1f;grid-template-columns:32px 1fr auto;padding:9px 0;font-size:.83rem;display:grid}.playlist-panel li span,.playlist-panel li small{opacity:.55}.playlist-panel button{min-height:44px;color:inherit;opacity:.65;background:0 0;border:1px solid #ffffff59;border-radius:999px;align-items:center;gap:8px;padding:8px 15px;display:flex}.playlist-panel .audio-track-list li{padding:0;display:block}.audio-track-player{width:100%}.audio-track-player__summary.audio-track-player__summary{width:100%;min-height:72px;color:inherit;text-align:left;opacity:1;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto 24px;align-items:center;gap:12px;padding:12px 2px;display:grid}.audio-track-player__index{color:#f3efe594;font-family:Georgia,serif;font-size:1rem}.audio-track-player__identity strong,.audio-track-player__identity small{display:block}.audio-track-player__identity strong{color:var(--paper);font-family:var(--font-ui);font-size:1.12rem;font-weight:650;line-height:1.35}.audio-track-player__identity small{color:#f3efe5ad;margin-top:5px;font-size:.9rem}.audio-track-player__playing{color:#e2ae70;white-space:nowrap;font-size:.82rem}.audio-track-player__chevron{color:#f3efe5a8;width:20px;transition:transform .22s}.audio-track-player.is-expanded .audio-track-player__chevron{transform:rotate(180deg)}.custom-audio-player[hidden]{display:none}.custom-audio-player{background:#f3efe512;border:1px solid #f3efe524;border-radius:18px 4px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;margin:2px 0 16px 52px;padding:16px;display:grid}.custom-audio-player__toggle.custom-audio-player__toggle{background:var(--amber);width:56px;min-height:56px;color:var(--ink);opacity:1;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.custom-audio-player__toggle svg{fill:currentColor;width:24px;height:24px}.custom-audio-player__timeline{min-width:0}.custom-audio-player__timeline input,.custom-audio-player__volume input{width:100%;height:24px;accent-color:var(--amber);cursor:pointer;margin:0}.custom-audio-player__timeline input{background:linear-gradient(to right, var(--amber) var(--audio-progress), #f3efe540 var(--audio-progress))}.custom-audio-player__timeline span{color:#f3efe5bd;font-variant-numeric:tabular-nums;margin-top:2px;font-size:.88rem;display:block}.custom-audio-player__timeline i{opacity:.48;padding:0 4px;font-style:normal}.custom-audio-player__volume{align-items:center;gap:8px;width:120px;display:flex}.custom-audio-player__volume button{opacity:.76;border:0;min-height:44px;padding:8px}.custom-audio-player__volume svg{width:22px;height:22px}@media (max-width:560px){.audio-track-player__summary.audio-track-player__summary{grid-template-columns:30px minmax(0,1fr) auto 20px;gap:9px;min-height:76px}.custom-audio-player{grid-template-columns:54px minmax(0,1fr);gap:12px;margin-left:0}.custom-audio-player__volume{grid-column:1/-1;width:100%}}.audio-unavailable{color:#f3efe59e;font-size:.76rem;margin:8px 0 0!important}.playlist-rights-note{margin:0;font-size:.72rem}.event-section{padding:60px 0 30px}.event-list{border-top:1px solid var(--line)}.event-list article{border-bottom:1px solid var(--line);grid-template-columns:62px 1fr auto;align-items:center;gap:13px;padding:20px 0;display:grid}.event-date strong,.event-date span{display:block}.event-date strong{font-family:Georgia,serif}.event-date span{color:var(--wood);font-size:.74rem}.event-list h3{margin:0;font-family:Georgia,Songti SC,serif;font-size:1.1rem;font-weight:500}.event-list p{color:var(--muted);margin:2px 0 0;font-size:.75rem}.event-list button{border:1px solid var(--forest);min-height:40px;color:var(--forest);background:0 0;border-radius:999px;padding:7px 11px;font-size:.7rem}.field-sounds{border:1px solid var(--line);border-radius:24px;grid-template-columns:auto 1fr;gap:16px;margin:12px 0 32px;padding:24px;display:grid}.field-sounds p:last-child{color:var(--muted);margin:4px 0 0}.stay-login{background:var(--paper-warm);border-radius:28px 5px;grid-template-columns:auto 1fr;gap:16px;padding:26px 22px;display:grid}.stay-login>span{background:var(--forest);width:46px;height:46px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.stay-login p:not(.eyebrow){color:var(--muted);margin:4px 0 0}.stay-login form{grid-column:1/-1}.stay-login label{margin-bottom:6px;font-size:.78rem;font-weight:650;display:block}.stay-login form>div{grid-template-columns:1fr auto;display:grid}.stay-login input{border:1px solid var(--line);text-transform:uppercase;background:#ffffff6b;border-radius:14px 0 0 14px;min-width:0;min-height:50px;padding:10px 13px}.stay-login form button{background:var(--forest);min-height:50px;color:var(--paper);border:0;border-radius:0 14px 14px 0;padding:8px 17px}.stay-login>a{min-height:44px;color:var(--forest);grid-column:1/-1;justify-content:center;align-items:center;gap:7px;font-size:.78rem;display:flex}.profile-links{border-top:1px solid var(--line);margin:24px 0}.profile-service-entry{background:var(--forest);min-height:108px;color:var(--paper);border-radius:2px 24px 2px 2px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;margin:2px 0 26px;padding:20px 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #2a322729}.profile-service-entry:after{content:"";pointer-events:none;border:1px solid #f3efe51f;border-radius:50%;width:150px;height:150px;position:absolute;right:-48px;box-shadow:0 0 0 24px #f3efe509}.profile-service-entry__icon{border:1px solid #f3efe559;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.profile-service-entry small,.profile-service-entry strong,.profile-service-entry em{z-index:1;display:block;position:relative}.profile-service-entry small{opacity:.62;letter-spacing:.13em;font-family:Georgia,serif;font-size:.65rem}.profile-service-entry strong{font-family:var(--font-display);letter-spacing:.05em;margin:1px 0;font-size:1.55rem;font-weight:400}.profile-service-entry em{opacity:.72;font-size:.75rem;font-style:normal}.profile-links a{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:10px;min-height:80px;padding:14px 3px;display:grid}.profile-links strong,.profile-links small{display:block}.profile-links strong{font-family:Georgia,Songti SC,serif;font-weight:600}.profile-links small{color:var(--muted);margin-top:2px}.privacy-note{color:var(--muted);text-align:center;margin:20px 0 40px;font-size:.72rem}.auth-page{width:min(100% - 36px,1080px);min-height:100dvh;padding:max(30px, env(safe-area-inset-top)) 0 max(30px, env(safe-area-inset-bottom));align-content:center;gap:44px;margin:auto;display:grid}.auth-intro h1{letter-spacing:-.035em;margin:7px 0 15px;font-family:Georgia,Songti SC,serif;font-size:clamp(2.4rem,9vw,5.4rem);font-weight:500;line-height:1.1}.auth-intro>p:last-child{max-width:500px;color:var(--muted)}.auth-intro>a{align-items:center;min-height:44px;margin-bottom:46px;display:flex}.auth-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffff3d;border-radius:30px 5px;padding:26px 22px}.auth-card>p{color:var(--muted);text-align:center;margin:20px 0 0;font-size:.78rem}.auth-card>p a{color:var(--forest);text-decoration:underline}.auth-form{gap:7px;display:grid}.auth-form label{margin-top:8px;font-size:.78rem;font-weight:700}.auth-form input{border:1px solid var(--line);background:var(--paper);min-height:52px;color:var(--ink);border-radius:13px;padding:11px 13px}.auth-form button{background:var(--forest);min-height:52px;color:var(--paper);border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;margin-top:14px;font-weight:700;display:flex}.auth-form button:disabled{opacity:.65}.form-error{color:#8a332d;margin:6px 0 0;font-size:.78rem}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-shell{width:min(100% - 36px,1180px);margin:auto;padding:38px 0 70px}.admin-top{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.admin-top h1{margin:0;font-family:Georgia,Songti SC,serif;font-size:clamp(2rem,6vw,4rem);font-weight:500}.admin-top button{border:1px solid var(--line);min-height:44px;color:var(--ink);background:0 0;border-radius:999px;padding:8px 15px}.metric-grid{grid-template-columns:1fr 1fr;gap:12px;margin:40px 0 24px;display:grid}.metric-grid article{border:1px solid var(--line);border-radius:20px 4px;flex-direction:column;min-height:150px;padding:20px;display:flex}.metric-grid span{color:var(--muted);font-size:.76rem}.metric-grid strong{margin:auto 0;font-family:Georgia,serif;font-size:2.4rem;font-weight:500}.metric-grid small{color:var(--muted)}.admin-note{background:var(--forest);color:var(--paper);border-radius:24px;padding:28px}.admin-note h2{margin:0;font-family:Georgia,Songti SC,serif;font-weight:500}.admin-note p:last-child{opacity:.7;margin-bottom:0}.profile-login-link{background:var(--forest);min-height:50px;color:var(--paper);border-radius:14px;grid-column:1/-1;place-items:center;font-weight:700;display:grid}.room-pass{background:var(--forest);color:var(--paper);border-radius:30px 5px;padding:28px 24px}.room-pass h2{margin:0;font-family:Georgia,Songti SC,serif;font-size:2.2rem;font-weight:500}.room-pass>div>p:last-child{opacity:.7;margin:4px 0 22px}.room-pass dl{border-top:1px solid #ffffff29;grid-template-columns:repeat(3,1fr);margin:0;display:grid}.room-pass dl div{min-width:0;padding:16px 4px 0}.room-pass dt{opacity:.55;margin-top:4px;font-size:.63rem}.room-pass dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.76rem;overflow:hidden}.my-section{padding:52px 0 0}.my-section .section-heading>a{min-height:44px;color:var(--forest);align-items:center;font-size:.78rem;display:flex}.status-list{border-top:1px solid var(--line)}.status-list article{border-bottom:1px solid var(--line);grid-template-columns:22px 1fr auto;align-items:center;gap:9px;min-height:70px;display:grid}.status-list strong,.status-list small{display:block}.status-list small{color:var(--muted)}.status-list em{color:var(--wood);font-size:.72rem;font-style:normal}.status-dot{background:var(--amber);border-radius:50%;width:9px;height:9px}.status-dot--completed{background:var(--moss)}.status-dot--cancelled{background:var(--muted)}.empty-state{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:18px;padding:28px 20px}.logout-form button{border:1px solid var(--line);width:100%;min-height:48px;color:var(--muted);background:0 0;border-radius:14px;margin:8px 0 30px}.form-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.access-code-result{border:1px solid var(--moss);background:#e4e8de;border-radius:12px;gap:2px;padding:16px;display:grid}.access-code-result span,.access-code-result small{color:var(--muted);font-size:.7rem}.access-code-result strong{letter-spacing:.14em;font-family:ui-monospace,monospace;font-size:1.7rem}.inline-status-form{align-items:center;gap:5px;display:flex}.inline-status-form select{border:1px solid var(--line);background:0 0;border-radius:8px;min-width:0;min-height:38px}.inline-status-form button{background:var(--forest);min-height:38px;color:var(--paper);border:0;border-radius:8px;padding:4px 8px;font-size:.68rem}.admin-list-spaced{margin-top:28px}.admin-content-stack{gap:56px;display:grid}.admin-form fieldset{border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px 10px;display:grid}.admin-form legend{padding:0 5px;font-size:.72rem;font-weight:700}.checkbox-label{grid-template-columns:auto 1fr;align-items:center;min-height:36px;gap:6px!important;font-weight:400!important;display:flex!important}.checkbox-label input{min-height:0}.memory-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.memory-grid figure{background:var(--paper-warm);border-radius:4px 18px 4px 4px;margin:0;overflow:hidden}.memory-grid img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.memory-grid figcaption{color:var(--muted);padding:9px 10px;font-size:.68rem}.memory-upload{border:1px solid var(--line);border-radius:22px;gap:13px;margin-top:16px;padding:20px;display:grid}.photo-picker{border:1px dashed var(--moss);min-height:72px;color:var(--forest);cursor:pointer;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;padding:12px;gap:11px!important;display:grid!important}.photo-picker strong,.photo-picker small{display:block}.photo-picker small{color:var(--muted);font-weight:400}.photo-picker input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.memory-upload>label:not(.photo-picker){gap:5px;font-size:.76rem;font-weight:700;display:grid}.memory-upload textarea{border:1px solid var(--line);background:#ffffff4d;border-radius:11px;padding:10px 11px}.memory-upload>button{background:var(--forest);min-height:48px;color:var(--paper);border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:flex}.upload-success{color:var(--forest);align-items:center;gap:6px;margin:0;font-size:.76rem;display:flex}.memory-privacy{color:var(--muted);text-align:center;font-size:.68rem}.room-detail-link{min-height:48px;color:var(--paper);border-top:1px solid #ffffff29;justify-content:space-between;align-items:center;margin-top:18px;font-size:.78rem;display:flex}.status-dot--completed{color:#fff;place-items:center;width:23px;height:23px;display:grid}.status-list article.service-status-completed{background:#66705a14;border-radius:3px 14px 3px 3px;padding-inline:8px}.service-status-completed .status-actions em{color:var(--forest);font-weight:700}.achievement-entry{color:#30342d;background:radial-gradient(circle at 91% 12%,#fffaed80,#0000 31%),linear-gradient(145deg,#dfd2ba,#cdbb9e);border:1px solid #6e52332e;border-radius:4px 32px 4px 4px;margin:24px 0 34px;padding:24px;display:block;position:relative;overflow:hidden;box-shadow:0 22px 50px #4a3d2b24}.achievement-entry:after{content:"";pointer-events:none;border:1px solid #3f493b1f;border-radius:50%;width:220px;height:220px;position:absolute;top:-78px;right:-55px;box-shadow:0 0 0 26px #3f493b06}.achievement-entry__label{z-index:2;background:var(--forest);width:fit-content;min-height:30px;color:var(--paper);letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.8rem;font-weight:700;display:flex;position:relative}.achievement-entry__hero{z-index:1;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:16px;margin:18px 0 20px;display:grid;position:relative}.achievement-entry__disc{color:#e8d1a8;background:repeating-radial-gradient(circle,#0000 0 4px,#ffffff0e 5px 6px),#30382f;border:13px double #f3efe51c;border-radius:50%;place-items:center;width:82px;height:82px;animation:12s linear infinite record-entry-spin;display:grid;position:relative;box-shadow:0 12px 24px #2e302833}.achievement-entry__disc:after{content:"";background:var(--forest);border:3px solid #e8d1a8;border-radius:50%;width:9px;height:9px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.achievement-entry__story small,.achievement-entry__story strong,.achievement-entry__story em{display:block}.achievement-entry__story small{color:#7b5b3d;letter-spacing:.08em;font-size:.8rem!important}.achievement-entry__story strong{font-family:var(--font-literary);margin:5px 0 4px;font-size:clamp(1.35rem,5.8vw,1.8rem);font-weight:650;line-height:1.25}.achievement-entry__story em{color:#30342db8;font-size:.86rem;font-style:normal;line-height:1.65}.achievement-entry__progress-row{border-top:1px solid #3f493b26;border-bottom:1px solid #3f493b26;grid-template-columns:auto minmax(70px,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:10px 0;display:grid}.achievement-entry__progress-row>span:first-child{align-items:baseline;gap:5px;display:flex}.achievement-entry__progress-row>span:first-child strong{font-family:Georgia,serif;font-size:1.65rem;font-weight:500}.achievement-entry__progress-row em,.achievement-entry__progress-row small{color:#30342da3;font-size:.8rem;font-style:normal}.achievement-entry__progress{background:#3f493b21;border-radius:999px;height:6px;overflow:hidden}.achievement-entry__progress i{border-radius:inherit;background:var(--forest);height:100%;transition:width .6s;display:block}.achievement-entry__next{min-height:82px;color:var(--forest);grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:15px 0 10px;display:grid}.achievement-entry__next>span small,.achievement-entry__next>span strong,.achievement-entry__next>span em{display:block}.achievement-entry__next small{color:#7b5b3d;font-size:.78rem!important}.achievement-entry__next strong{margin:1px 0;font-size:1rem}.achievement-entry__next em{color:#30342da6;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-style:normal;overflow:hidden}.achievement-entry__cta{background:var(--forest);min-height:48px;color:var(--paper);border-radius:3px 15px 3px 3px;justify-content:space-between;align-items:center;margin-top:14px;padding:10px 14px;font-size:.9rem;font-weight:700;display:flex}.achievement-entry:active{transform:scale(.99)}@keyframes record-entry-spin{to{transform:rotate(360deg)}}@keyframes achievement-label-glow{0%,to{box-shadow:0 0 #3f493b29}50%{box-shadow:0 0 0 7px #3f493b00}}.achievement-entry__label{animation:2.8s ease-in-out infinite achievement-label-glow}@media (max-width:350px){.achievement-entry{padding:20px}.achievement-entry__hero{grid-template-columns:68px 1fr;gap:12px}.achievement-entry__disc{width:68px;height:68px}}@media (prefers-reduced-motion:reduce){.achievement-entry__disc,.achievement-entry__label{animation:none}.achievement-entry__progress i{transition:none}}.expense-list{border-top:1px solid var(--line)}.expense-list article{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 56px;align-items:center;gap:8px;min-height:67px;display:grid}.expense-list strong,.expense-list small{display:block}.expense-list small{color:var(--muted)}.expense-list em{color:var(--muted);text-align:right;font-size:.68rem;font-style:normal}.rebook-panel{background:var(--paper-warm);border-radius:28px 5px;margin:58px 0 28px;padding:28px 24px}.rebook-panel h2{margin:0;font-family:Georgia,Songti SC,serif;font-size:1.8rem;font-weight:500}.rebook-panel>p:not(.eyebrow){color:var(--muted)}.rebook-panel>div{grid-template-columns:1fr 1fr;gap:9px;display:grid}.rebook-panel a,.rebook-panel button{border:1px solid var(--forest);min-height:48px;color:var(--forest);background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;font-size:.74rem;display:flex}.rebook-panel a{background:var(--forest);color:var(--paper)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;overflow:hidden;position:absolute!important}.status-actions{justify-items:end;gap:3px;display:grid}.small-cancel{border:1px solid var(--line);min-height:32px;color:var(--muted);background:0 0;border-radius:999px;padding:3px 7px;font-size:.62rem}.network-toast{z-index:100;top:max(14px, env(safe-area-inset-top));background:var(--ink);min-height:42px;color:var(--paper);box-shadow:var(--shadow);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.75rem;display:flex;position:fixed;left:50%;transform:translate(-50%)}.network-toast--online{background:var(--forest)}.event-list article>a{border:1px solid var(--forest);min-height:40px;color:var(--forest);border-radius:999px;place-items:center;padding:7px 11px;font-size:.7rem;display:grid}.admin-layout{min-height:100dvh}.admin-sidebar{z-index:30;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f3efe5f2;position:fixed;bottom:0;left:0;right:0}.admin-brand,.admin-sidebar>form{display:none}.admin-sidebar nav{min-height:66px;display:flex;overflow-x:auto}.admin-sidebar nav a{min-height:60px;color:var(--muted);flex-direction:column;flex:0 0 78px;justify-content:center;align-items:center;gap:3px;font-size:.65rem;display:flex;position:relative}.admin-sidebar nav a.has-admin-alert{color:#8b4036;font-weight:700}.admin-nav-badge{border:2px solid var(--paper);color:#fff;background:#a84439;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-family:sans-serif;font-size:.66rem;line-height:1;display:grid;position:absolute;top:5px;right:14px}.admin-main{width:min(100% - 28px,1320px);padding:max(30px, env(safe-area-inset-top)) 0 calc(100px + env(safe-area-inset-bottom));margin:auto}.admin-page-header h1{margin:0;font-family:Georgia,Songti SC,serif;font-size:clamp(2.6rem,7vw,5rem);font-weight:500}.room-status-summary{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.room-status-summary span{border:1px solid #ffffff38;border-radius:999px;padding:6px 10px;font-size:.72rem}.admin-success{color:var(--forest);background:#dfe6d8;border-radius:12px;padding:13px 15px}.admin-error{color:#7c3028;background:#f2ded8;border-radius:12px;padding:13px 15px}.admin-two-columns{gap:24px;display:grid}.admin-form{border:1px solid var(--line);border-radius:24px 5px;gap:12px;padding:24px;display:grid}.admin-form h2,.admin-list h2{margin:0 0 10px;font-family:Georgia,Songti SC,serif;font-weight:500}.admin-form label{gap:5px;font-size:.9rem;font-weight:700;display:grid}.admin-form input,.admin-form select,.admin-form textarea,.admin-order-list input{border:1px solid var(--line);min-height:46px;color:var(--ink);background:#ffffff47;border-radius:10px;padding:9px 11px}.admin-form button{background:var(--forest);min-height:48px;color:var(--paper);border:0;border-radius:11px;margin-top:8px;font-weight:700}.guest-phone-lookup{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.admin-form .guest-phone-lookup button{background:var(--wood);white-space:nowrap;min-height:46px;margin:0;padding:8px 14px}.guest-identity-note{color:var(--moss);margin:-2px 0 2px;font-size:.82rem}.guest-identity-note--warning{color:#8b3f32}.guest-identity-card{border-left:4px solid var(--moss);background:var(--moss);border-radius:4px 16px 16px 4px;gap:3px;padding:16px 17px;display:grid}@supports (color:color-mix(in lab, red, red)){.guest-identity-card{background:color-mix(in srgb, var(--moss) 11%, var(--paper))}}.guest-identity-card>span,.guest-identity-card>small{color:var(--muted);font-size:.78rem}.guest-identity-card>strong{font-family:var(--font-display);font-size:1.5rem;font-weight:500}.guest-identity-card>p{margin:0;font-size:.86rem}.guest-identity-card .guest-identity-card__warning{color:#8b3f32;margin-top:5px}.admin-list{align-content:start;gap:10px;display:grid}.admin-list article{border:1px solid var(--line);border-radius:15px;gap:2px;padding:16px;display:grid}.admin-list article span,.admin-list article small{color:var(--muted);font-size:.82rem}.admin-edit-details{border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.admin-edit-details summary{cursor:pointer;color:var(--forest);font-size:.78rem}.compact-admin-form{background:var(--paper);margin-top:12px;padding:12px}@supports (color:color-mix(in lab, red, red)){.compact-admin-form{background:color-mix(in srgb, var(--paper) 85%, white)}}.admin-order-list{gap:20px;display:grid}.admin-order-list>article{border:1px solid var(--line);border-radius:22px 5px;padding:28px;position:relative}.admin-order-list article>header{justify-content:space-between;gap:10px;display:flex}.admin-order-list h2{margin:0;font-family:Georgia,Songti SC,serif;font-size:1.55rem;font-weight:600}.admin-order-list header>span{background:var(--paper-warm);border-radius:999px;height:fit-content;padding:5px 9px;font-size:.82rem;font-weight:700}.admin-order-list dl{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-order-list dt{color:var(--muted);font-size:.78rem}.admin-order-list dd{margin:0;font-size:.96rem}.admin-order-list form label{gap:5px;font-size:.84rem;display:grid}.admin-order-list form>div{gap:8px;margin-top:10px;display:flex}.admin-order-list form button{border:0;border-radius:11px;min-height:42px;padding:7px 13px;font-weight:700}.admin-table{border-top:1px solid var(--line)}.admin-table-row{border-bottom:1px solid var(--line);grid-template-columns:1.1fr .8fr 1fr;align-items:center;gap:8px;min-height:78px;padding:14px 10px;font-size:.9rem;display:grid}.admin-table-row strong,.admin-table-row small{display:block}.admin-table-row small{color:var(--muted)}.admin-table-head{min-height:44px;color:var(--muted);font-size:.78rem;font-weight:700}.admin-view-tabs,.admin-filter-row{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.admin-search-form{border:1px solid var(--line);background:#ffffff42;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:9px;margin:4px 0 24px;padding:14px;display:grid}.admin-search-form label{grid-column:1/-1;font-size:.82rem;font-weight:700}.admin-search-form input,.admin-search-form button,.admin-search-form a,.service-assignee-form select,.service-assignee-form button{border:1px solid var(--line);min-height:46px;color:var(--ink);background:#fff;border-radius:10px;padding:9px 12px}.admin-search-form button,.service-assignee-form button{border-color:var(--forest);background:var(--forest);color:#fff;font-weight:700}.admin-search-form a{place-items:center;display:grid}.service-assignee-form{background:#fff6;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-top:14px;padding:13px;display:grid!important}.service-assignee-form label{font-size:.84rem!important}.admin-view-tabs a,.admin-filter-row a{border:1px solid var(--line);min-height:48px;color:var(--muted);background:#ffffff52;border-radius:13px;align-items:center;gap:8px;padding:10px 17px;font-size:.92rem;font-weight:700;display:inline-flex}.admin-view-tabs a.is-active,.admin-filter-row a.is-active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.admin-view-tabs strong{background:#ffffff29;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 6px;display:grid}.store-village{--store-accent:#6f765d;--store-soft:#e3e5d9}.store-field{--store-accent:#9a6847;--store-soft:#eee0d3}.admin-filter-row .store-village,.admin-filter-row .store-field{border-color:var(--store-accent)}@supports (color:color-mix(in lab, red, red)){.admin-filter-row .store-village,.admin-filter-row .store-field{border-color:color-mix(in srgb, var(--store-accent) 45%, transparent)}}.admin-filter-row .store-village,.admin-filter-row .store-field{color:var(--store-accent)}.admin-filter-row .store-village.is-active,.admin-filter-row .store-field.is-active{background:var(--store-accent);color:#fff}.admin-order-card{background:linear-gradient(120deg, var(--store-soft), #ffffff4d 42%);border-left:6px solid var(--store-accent)!important}.store-ribbon{background:var(--store-accent);color:#fff;border-radius:6px;width:fit-content;margin:8px 0 2px;padding:5px 10px;font-size:.78rem;font-weight:700}.status-badge,.room-status-select{border:1px solid #0000}.status-submitted{color:#705c22!important;background:#ece5d2!important}.status-accepted,.status-clean{color:#315f78!important;background:#dce8ef!important}.status-processing,.status-cleaning{color:#8b5520!important;background:#f4dfc5!important}.status-completed,.status-available{color:#3c693e!important;background:#dce8d8!important}.status-cancelled,.status-disabled{color:#68635e!important;background:#e8e5e1!important}.status-occupied{color:#3d5572!important;background:#d9e1ec!important}.status-dirty,.status-maintenance{color:#8b4036!important;background:#efd8d3!important}.status-action{justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 15px;display:inline-flex;color:#fff!important}.status-action--accepted{background:#397896!important}.status-action--processing{background:#b66b2e!important}.status-action--completed{background:#4f7c50!important}.status-action--cancelled{background:#8e4a43!important}.status-action--submitted{background:#6d6557!important}.status-action:disabled{cursor:default;opacity:.58}.room-status-control{position:relative}.room-status-control .inline-error{color:#8b4036;grid-column:1/-1;font-size:.72rem}.room-today-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.room-today-summary>div{background:var(--paper-warm);border-radius:17px 5px;align-content:center;min-height:82px;padding:15px 17px;display:grid}.room-today-summary span{color:var(--muted);font-size:.76rem}.room-today-summary strong{font-size:1.8rem;line-height:1.1}.room-today-summary .needs-attention{color:#863c2d;background:#eddccf}.room-filter-bar{border:1px solid var(--line);background:#ffffff38;border-radius:16px;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(116px,.7fr)) auto auto;gap:8px;margin-bottom:20px;padding:12px;display:grid}.room-filter-bar input,.room-filter-bar select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:10px}.room-search-field{align-items:center;display:flex;position:relative}.room-search-field svg{color:var(--muted);position:absolute;left:12px}.room-search-field input{padding:8px 10px 8px 37px}.room-filter-bar select{padding:7px 9px}.room-filter-bar>button,.room-filter-bar>a{border:0;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:8px 15px;font-weight:700;display:inline-flex}.room-filter-bar>button{background:var(--forest);color:var(--paper)}.room-filter-bar>a{color:var(--moss)}.room-calendar{border:1px solid var(--line);background:#ffffff29;border-radius:20px 6px;margin-bottom:28px;overflow:hidden}.room-calendar>summary{cursor:pointer;background:var(--paper-warm);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:14px 18px;list-style:none;display:flex}.room-calendar>summary::-webkit-details-marker{display:none}.room-calendar>summary span{font-family:var(--font-display);align-items:center;gap:8px;font-size:1.35rem;display:flex}.room-calendar>summary small{color:var(--muted)}.room-calendar-scroll{overscroll-behavior-inline:contain;overflow-x:auto}.room-calendar-grid{border-top:1px solid var(--line);grid-template-columns:92px repeat(7,minmax(82px,1fr));min-width:760px;display:grid}.room-calendar-grid>*{border-right:1px solid var(--line);justify-content:center;align-items:center;min-height:39px;padding:7px 8px;font-size:.72rem;display:flex}.room-calendar-grid>:first-child{z-index:1;background:var(--paper);color:var(--forest);justify-content:flex-start;font-weight:700;position:sticky;left:0}.room-calendar-grid>:last-child{border-right:0}.room-calendar-head{color:var(--muted);font-weight:700}.room-calendar-head>span{flex-direction:column;gap:0}.room-calendar-head small{font-size:.62rem;font-weight:400}.room-calendar-grid .has-stay{min-height:31px;color:var(--forest);background:#ccd5c4;border:0;border-radius:8px;margin:4px;padding:4px;font-weight:700}.room-calendar-grid .stay-upcoming{color:#785633;background:#eadbc6}.room-ops-sections{gap:30px}.room-ops-sections .admin-store-header>strong{color:var(--store-accent);font-size:.9rem}.room-ops-list{display:grid}.room-ops-card{border-top:1px solid var(--line);scroll-margin-top:20px}.room-ops-main{grid-template-columns:minmax(105px,.8fr) minmax(190px,1.05fr) minmax(170px,1fr);align-items:center;gap:18px;min-height:104px;padding:17px 20px;display:grid}.room-identity>span,.room-current-guest>span{color:var(--muted);font-size:.7rem}.room-identity h3{margin:1px 0 5px;font-size:1.45rem}.room-today-tags{flex-wrap:wrap;gap:4px;display:flex}.room-today-tags mark{color:#7a5030;background:#eadbc6;border-radius:999px;padding:3px 7px;font-size:.64rem}.room-today-tags mark:nth-child(n+2){color:#813f34;background:#e7d3cc}.room-current-guest{align-content:center;min-width:0;display:grid}.room-current-guest strong{margin:1px 0;font-size:1rem}.room-current-guest a{width:fit-content;color:var(--forest);font-size:.82rem;font-weight:700}.room-current-guest small{color:var(--muted);margin-top:3px;font-size:.7rem}.room-operations-panel{padding:0 20px 15px}.room-primary-actions{flex-wrap:wrap;gap:7px;display:flex}.room-primary-actions form{display:contents}.room-primary-actions>a,.room-primary-actions>button,.room-action{border:0;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:39px;padding:7px 12px;font-size:.76rem;font-weight:700;display:inline-flex}.room-primary-actions>a,.room-primary-actions>button{background:var(--paper-warm);color:var(--forest)}.room-action--check-in,.room-action--create{color:#fff;background:#58734f}.room-action--check-out{color:#fff;background:#9b5545}.room-action--warning{color:#fff;background:#b47738}.room-action--secondary{color:#fff;background:#6c7464}.room-action:disabled{opacity:.55}.room-more-details{border-top:1px dashed var(--line);margin-top:10px}.room-more-details>summary{cursor:pointer;min-height:46px;color:var(--moss);align-items:center;gap:6px;font-size:.78rem;font-weight:700;list-style:none;display:flex}.room-more-details>summary::-webkit-details-marker{display:none}.room-more-details>summary span{color:#865c31;background:#e9dbca;border-radius:99px;margin-left:auto;padding:3px 7px;font-size:.64rem}.room-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:5px 0 8px;display:grid}.room-detail-grid>section{background:var(--paper-warm);border-radius:14px;min-width:0;padding:16px}@supports (color:color-mix(in lab, red, red)){.room-detail-grid>section{background:color-mix(in srgb, var(--paper-warm) 72%, white)}}.room-detail-grid h4{margin:0 0 11px;font-size:.94rem}.room-mini-form,.room-note-form,.room-task-create{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;margin-top:8px;display:grid}.room-detail-grid label{color:var(--muted);gap:4px;font-size:.68rem;font-weight:700;display:grid}.room-detail-grid input,.room-detail-grid select,.room-detail-grid textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:40px;color:var(--ink);border-radius:8px;padding:7px 9px}.room-note-form{grid-template-columns:1fr}.room-note-form textarea{resize:vertical;min-height:76px}.room-note-form .room-action{justify-self:start}.room-task-create{grid-template-columns:repeat(3,minmax(0,1fr))}.room-task-note{grid-column:1/-1}.room-task-create .room-action{grid-column:1/-1;justify-self:start}.room-task-list{gap:7px;margin-top:13px;display:grid}.room-task-list>p{color:var(--muted);font-size:.75rem}.room-task-list form{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 118px auto;align-items:end;gap:7px;padding-top:9px;display:grid}.room-task-list form>div{min-width:0;display:grid}.room-task-list strong{font-size:.78rem}.room-task-list small,.room-task-list p{color:var(--muted);margin:1px 0 0;font-size:.66rem}.room-log-section{grid-column:1/-1}.room-log-section ol{margin:0;padding:0;list-style:none;display:grid}.room-log-section li{border-top:1px solid var(--line);justify-content:space-between;gap:14px;padding:8px 0;font-size:.74rem;display:flex}.room-log-section small{color:var(--muted);flex:none}.room-operation-success,.room-operation-error{margin:6px 0 0;font-size:.72rem}.room-operation-success{color:var(--moss)}.room-operation-error{color:#8b4036}.room-empty-state{text-align:center;color:var(--muted);justify-items:center;padding:50px 20px;display:grid}.room-empty-state h2{color:var(--ink);margin:10px 0 2px}.room-empty-state p{margin:0 0 12px}.room-empty-state a{color:var(--forest);align-items:center;font-weight:700;display:inline-flex}@media (max-width:900px){.room-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.room-search-field{grid-column:1/-1}.room-ops-main{grid-template-columns:minmax(95px,.7fr) minmax(180px,1fr) minmax(150px,1fr);gap:12px}}@media (max-width:680px){.room-today-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.room-today-summary>div{min-height:72px}.room-filter-bar{grid-template-columns:1fr 1fr}.room-filter-bar select[name=today]{grid-column:1/-1}.room-ops-main{grid-template-columns:1fr;gap:12px}.room-current-guest{border-top:1px solid var(--line);padding-top:10px}.room-detail-grid{grid-template-columns:1fr}.room-log-section{grid-column:auto}.room-task-create{grid-template-columns:1fr}.room-task-note,.room-task-create .room-action{grid-column:auto}.room-task-list form{grid-template-columns:1fr}.room-log-section li{gap:2px;display:grid}}.admin-store-sections{gap:34px;display:grid}.dashboard-store-grid{margin:38px 0}.admin-section-heading{align-items:center}.admin-section-heading>div>h2{font-size:1.8rem}.admin-section-heading>a{min-height:44px;color:var(--forest);align-items:center;gap:6px;font-size:.82rem;font-weight:700;display:inline-flex}.dashboard-store-grid>div:last-child{gap:15px;display:grid}.dashboard-store-grid article{border-top:5px solid var(--store-accent);background:var(--store-soft);border-radius:18px 6px;padding:24px}.dashboard-store-grid article header,.dashboard-store-grid article header>div,.dashboard-store-grid article dl,.dashboard-store-grid article dl div{display:flex}.dashboard-store-grid article header{color:var(--store-accent);align-items:center;gap:11px}.dashboard-store-grid article header>div,.dashboard-store-grid article dl div{flex-direction:column}.dashboard-store-grid article h3{margin:0;font-size:1.5rem}.dashboard-store-grid article p{color:var(--muted);margin:0;font-size:.8rem}.dashboard-store-grid article dl{justify-content:space-between;gap:10px;margin:22px 0}.dashboard-store-grid article dt{color:var(--muted);font-size:.72rem}.dashboard-store-grid article dd{margin:1px 0 0;font-size:1.35rem;font-weight:700}.dashboard-store-grid article>a{color:var(--store-accent);align-items:center;gap:5px;font-size:.84rem;font-weight:700;display:inline-flex}.admin-store-section{border:1px solid var(--store-accent);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.admin-store-section{border:1px solid color-mix(in srgb, var(--store-accent) 32%, transparent)}}.admin-store-section{background:#fff3;border-radius:24px 7px}.admin-store-header{background:var(--store-soft);justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.admin-store-header>div,.admin-store-header dl,.admin-store-header dl div{align-items:center;display:flex}.admin-store-header>div{color:var(--store-accent);gap:13px}.admin-store-header h2{margin:0;font-size:1.65rem}.admin-store-header p{color:var(--muted);margin:2px 0 0;font-size:.86rem}.admin-store-header dl{gap:22px;margin:0}.admin-store-header dl div{flex-direction:column}.admin-store-header dt{color:var(--muted);font-size:.72rem}.admin-store-header dd{margin:0;font-size:1.45rem;font-weight:700}.admin-store-section .admin-table{padding:0 18px 14px}.report-toolbar{flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:24px;display:flex}.report-toolbar .admin-view-tabs{margin:0}.report-toolbar form{align-items:end;gap:8px;display:flex}.report-toolbar label{gap:4px;font-size:.8rem;font-weight:700;display:grid}.report-toolbar input,.report-toolbar button{border:1px solid var(--line);min-height:48px;color:var(--ink);background:#fff;border-radius:11px;padding:9px 14px}.report-toolbar form button{background:var(--forest);color:#fff}.print-button{align-items:center;gap:7px;display:inline-flex}.report-download{border:1px solid var(--forest);min-height:48px;color:var(--forest);border-radius:11px;align-items:center;gap:7px;padding:9px 14px;font-size:.84rem;font-weight:700;display:inline-flex}.report-sheet{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffff59;border-radius:28px 6px;padding:clamp(22px,4vw,46px)}.report-heading,.report-heading>div{justify-content:space-between;align-items:center;gap:14px;display:flex}.report-heading p{color:var(--muted);letter-spacing:.14em;margin:0;font-size:.8rem}.report-heading h2{margin:2px 0 0;font-size:clamp(1.8rem,5vw,3rem)}.report-heading>span{font-size:1rem;font-weight:700}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:34px 0;display:grid}.report-kpis article{background:var(--paper-warm);border-radius:16px;padding:20px}.report-kpis span,.report-kpis strong,.report-kpis small{display:block}.report-kpis span{color:var(--muted);font-size:.8rem}.report-kpis strong{margin:6px 0;font-size:clamp(1.8rem,5vw,2.8rem)}.report-kpis small{color:var(--muted);font-size:.74rem}.store-comparison h3,.report-table-wrap h3{margin:30px 0 15px;font-size:1.4rem}.comparison-grid{gap:14px;display:grid}.comparison-grid>article{border-top:5px solid var(--store-accent);background:var(--store-soft);border-radius:16px;padding:22px}.comparison-grid header{justify-content:space-between;align-items:center;gap:10px;display:flex}.comparison-grid h4{margin:0;font-size:1.3rem}.comparison-grid header span{color:var(--muted);font-size:.8rem}.comparison-bars{gap:13px;margin-top:18px;display:grid}.comparison-bars div{grid-template-columns:80px 1fr 30px;align-items:center;gap:9px;font-size:.8rem;display:grid}.comparison-bars i{background:var(--store-accent);border-radius:999px;min-width:3px;height:9px}.comparison-bars strong{text-align:right}.report-table-wrap{overflow-x:auto}.report-table{border-collapse:collapse;width:100%;min-width:760px;font-size:.86rem}.report-table th,.report-table td{border-bottom:1px solid var(--line);text-align:right;padding:13px 10px}.report-table th:first-child{text-align:left}.report-table thead th{color:var(--muted);font-size:.76rem}.report-total{background:var(--paper-warm);font-weight:700}.report-footer{color:var(--muted);text-align:right;margin-top:24px;font-size:.72rem}.admin-music-intro{background:var(--forest);color:var(--paper);border-radius:26px 7px;align-items:center;gap:18px;margin-bottom:24px;padding:clamp(20px,4vw,34px);display:flex}.admin-music-intro h2,.admin-music-intro p{margin:0}.admin-music-intro h2{font-family:var(--font-display);font-size:clamp(1.6rem,4vw,2.35rem);font-weight:500}.admin-music-intro p{color:#f3efe5b8;max-width:720px;margin-top:5px;font-size:.86rem}.admin-music-forms{margin-bottom:46px}.admin-form-title{align-items:center;gap:9px;display:flex}.admin-form-title h2{margin:0}.admin-form label>small{color:var(--muted);font-size:.72rem;font-weight:400}.admin-form input[type=file]{padding:7px}.admin-form input[type=file]::file-selector-button{background:var(--paper-warm);min-height:32px;color:var(--forest);border:0;border-radius:7px;margin-right:10px;padding:5px 10px;font-weight:700}.admin-audio-library>.section-heading{margin-bottom:18px}.admin-audio-library>.section-heading>span{color:var(--muted);font-size:.86rem}.admin-playlist-groups{gap:18px;display:grid}.admin-playlist-group{border:1px solid var(--line);background:#ffffff3d;border-radius:24px 6px;overflow:hidden}.admin-playlist-group>header{background:var(--paper-warm);justify-content:space-between;align-items:start;gap:18px;padding:22px;display:flex}.admin-playlist-group h3{font-family:var(--font-display);margin:8px 0 3px;font-size:1.65rem;font-weight:500}.admin-playlist-group header p{max-width:720px;color:var(--muted);margin:0;font-size:.84rem}.admin-playlist-group header>strong{white-space:nowrap;color:var(--forest);font-size:.86rem}.content-status{color:var(--forest);background:#e0e5da;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:700}.content-status--draft,.content-status--archived{color:var(--muted);background:#e6e1d8}.admin-audio-empty{color:var(--muted);margin:0;padding:24px}.admin-audio-track{border-top:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 22px;display:grid}.admin-track-index{color:var(--muted);font-family:Georgia,serif;font-size:.78rem}.admin-audio-track>div>strong,.admin-audio-track>div>small{display:block}.admin-audio-track>div>small{color:var(--muted);margin:3px 0 9px;font-size:.74rem}.admin-audio-track audio{width:min(100%,520px);height:38px;display:block}.admin-audio-delete{color:#8a382f;background:0 0;border:1px solid #a44b40;border-radius:10px;align-items:center;gap:6px;min-height:42px;padding:8px 12px;font-weight:700;display:inline-flex}@media (min-width:760px){.report-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.comparison-grid,.dashboard-store-grid>div:last-child{grid-template-columns:1fr 1fr}}@media (max-width:640px){.form-pair{grid-template-columns:1fr}.admin-playlist-group>header{flex-direction:column}.admin-audio-track{grid-template-columns:26px minmax(0,1fr)}.admin-audio-track>form{grid-column:2}.admin-store-header{flex-direction:column;align-items:flex-start}.admin-store-header dl{justify-content:space-between;width:100%}.admin-order-list dl{grid-template-columns:1fr}.report-heading{flex-direction:column;align-items:flex-start}.report-toolbar form{width:100%}.report-toolbar label{flex:1}.admin-search-form,.service-assignee-form{grid-template-columns:1fr}}@media print{.admin-sidebar,.admin-page-header,.no-print{display:none!important}.admin-main{width:100%;padding:0}.report-sheet{box-shadow:none;background:#fff;border:0}body{background:#fff}}.service-reminder-toast{z-index:80;right:18px;bottom:calc(82px + env(safe-area-inset-bottom));color:#713a34;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fff9f0f7;border:1px solid #8b403647;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:min(360px,100vw - 36px);padding:16px;display:grid;position:fixed;box-shadow:0 18px 55px #3f261f33}.service-reminder-toast strong,.service-reminder-toast span{display:block}.service-reminder-toast strong{font-size:.92rem}.service-reminder-toast span{color:var(--muted);margin-top:2px;font-size:.76rem}.service-reminder-toast a{color:#fff;background:#8b4036;border-radius:9px;padding:8px 10px;font-size:.76rem;font-weight:700}.admin-reminder-backdrop{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1d1b187a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-reminder-dialog{background:var(--paper);border-radius:28px 7px;width:min(100%,500px);padding:clamp(26px,5vw,40px);box-shadow:0 32px 90px #14100d57}.reminder-icon{color:#8b4036;background:#efd8d3;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:18px;display:grid}.admin-reminder-dialog h2{margin:5px 0 10px;font-size:2rem}.admin-reminder-dialog>p:not(.eyebrow){color:var(--muted);font-size:1rem}.reminder-order{background:var(--paper-warm);border-radius:10px;align-items:center;gap:8px;margin:20px 0;padding:12px;font-weight:700;display:flex}.reminder-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.reminder-actions button,.reminder-actions a{text-align:center;border:1px solid #8b4036;border-radius:11px;place-items:center;min-height:50px;padding:10px;font-size:.82rem;display:grid}.reminder-actions button{color:#8b4036;background:0 0}.reminder-actions a{color:#fff;background:#8b4036}@media (min-width:1024px){.service-reminder-toast{bottom:20px}}@media (max-width:460px){.service-reminder-toast{grid-template-columns:auto 1fr}.service-reminder-toast a{text-align:center;grid-column:1/-1}.reminder-actions{grid-template-columns:1fr}}.event-detail{width:min(100% - 36px,820px);min-height:100dvh;padding:max(26px, env(safe-area-inset-top)) 0 max(40px, env(safe-area-inset-bottom));margin:auto}.event-detail>a{min-height:44px;color:var(--forest);align-items:center;gap:7px;display:flex}.event-detail header{padding:54px 0 34px}.event-detail h1{margin:6px 0 14px;font-family:Georgia,Songti SC,serif;font-size:clamp(2.5rem,10vw,5.2rem);font-weight:500;line-height:1.1}.event-detail header>p:last-child{max-width:620px;color:var(--muted)}.event-detail dl{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:0;display:grid}.event-detail dl div{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;padding:18px 10px 18px 0;display:grid}.event-detail dl svg{color:var(--moss);grid-row:1/3;margin-top:4px}.event-detail dt{color:var(--muted);font-size:.7rem}.event-detail dd{margin:0;font-size:.9rem}.event-artist{background:var(--paper-warm);border-radius:24px 5px;margin:36px 0 24px;padding:26px}.event-artist h2{margin:0;font-family:Georgia,Songti SC,serif;font-size:1.6rem;font-weight:500}.event-artist p:last-child{color:var(--muted);margin-bottom:0}.reservation-form{border:1px solid var(--line);border-radius:24px;gap:14px;padding:25px;display:grid}.reservation-form label{gap:6px;font-size:.78rem;font-weight:700;display:grid}.reservation-form select,.reservation-form textarea{border:1px solid var(--line);min-height:48px;color:var(--ink);background:#ffffff47;border-radius:12px;padding:10px 12px}.reservation-form button{background:var(--forest);min-height:50px;color:var(--paper);border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;font-weight:700;display:flex}.reservation-success{background:var(--forest);min-height:80px;color:var(--paper);border-radius:18px;align-items:center;gap:13px;padding:18px;display:flex}.reservation-success strong,.reservation-success span{display:block}.reservation-success span{opacity:.7;font-size:.76rem}.calendar-download{border:1px solid var(--forest);border-radius:999px;align-items:center;gap:7px;width:fit-content;min-height:44px;margin-top:14px;padding:7px 13px;font-size:.76rem;display:flex!important}.stories-section{padding:62px 0 30px}.story-grid{gap:12px;display:grid}.story-grid>a{border:1px solid var(--line);border-radius:26px 4px;min-height:230px;padding:24px;position:relative;overflow:hidden}.story-grid>a>span{color:#3f493b1a;font-family:Georgia,serif;font-size:5rem;position:absolute;top:8px;right:18px}.story-grid h3{margin:8px 0;font-family:Georgia,Songti SC,serif;font-size:1.45rem;font-weight:500;position:relative}.story-grid p:not(.eyebrow){color:var(--muted);margin:0;font-size:.84rem;position:relative}.story-grid svg{position:absolute;bottom:20px;right:20px}.story-page{width:min(100% - 36px,760px);padding:max(24px, env(safe-area-inset-top)) 0 70px;margin:auto}.story-page>a{min-height:44px;color:var(--forest);align-items:center;gap:7px;display:flex}.story-page header{padding:70px 0 45px}.story-page h1{margin:8px 0 16px;font-family:Georgia,Songti SC,serif;font-size:clamp(2.7rem,11vw,5.5rem);font-weight:500;line-height:1.1}.story-page header>p:last-child{color:var(--muted);font-size:1.05rem}.story-body{font-family:Georgia,Songti SC,serif;font-size:1.05rem;line-height:2}.story-body blockquote{border-left:2px solid var(--moss);color:var(--forest);margin:40px 0;padding:20px 0 20px 24px;font-size:1.3rem}.story-page>button{border:1px solid var(--line);min-height:46px;color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:7px;margin-top:35px;padding:8px 14px;display:flex}.room-page{min-height:100dvh}.room-hero{color:#fff;min-height:min(78dvh,760px);position:relative}.room-hero img{object-fit:cover}.room-hero:after{content:"";background:linear-gradient(#1416123d,#0000 35%,#141612bf);position:absolute;inset:0}.room-hero>a{z-index:2;top:max(18px, env(safe-area-inset-top));left:max(18px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1f221c73;border-radius:999px;align-items:center;gap:7px;min-height:44px;padding:8px 12px;display:flex;position:absolute}.room-hero>div{z-index:2;position:absolute;bottom:35px;left:24px;right:24px}.room-hero h1{margin:4px 0;font-family:Georgia,Songti SC,serif;font-size:clamp(3.5rem,15vw,7rem);font-weight:500}.room-hero p:last-child{opacity:.78;margin:0}.room-facts{grid-template-columns:repeat(3,1fr);width:min(100% - 36px,760px);margin:-1px auto 0;display:grid}.room-facts>div{text-align:center;min-width:0;padding:22px 8px}.room-facts svg{color:var(--moss)}.room-facts span,.room-facts strong{display:block}.room-facts span{color:var(--muted);font-size:.65rem}.room-facts strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-copy{width:min(100% - 36px,760px);margin:35px auto 80px}.room-copy h2{margin:4px 0 14px;font-family:Georgia,Songti SC,serif;font-size:2rem;font-weight:500}.room-copy>p:not(.eyebrow){color:var(--muted)}.room-copy h3{margin-top:38px;font-family:Georgia,Songti SC,serif;font-weight:500}.room-copy ul{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.room-copy li{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:.75rem}.room-private-info{background:var(--paper-warm);border-radius:16px;grid-template-columns:30px 1fr;min-height:80px;margin-top:12px;padding:15px;display:grid}.room-private-info span,.room-private-info strong,.room-private-info small{display:block}.room-private-info span,.room-private-info small{color:var(--muted);font-size:.68rem}@media (min-width:700px){.weather-card{gap:24px;padding:34px 36px 25px}.weather-card__metrics article{padding:20px 20px 5px}.explore-guide{grid-template-columns:minmax(190px,.75fr) minmax(220px,1.4fr) minmax(190px,.75fr);padding:32px 40px}.place-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.place-sheet{grid-template-columns:minmax(0,1fr) 250px;align-items:end;gap:24px;padding:30px;display:grid}.today-grid{grid-template-columns:1fr 1fr}.public-spaces__heading{grid-template-columns:minmax(300px,.9fr) minmax(320px,1.1fr);align-items:end;margin-bottom:56px}.public-spaces__grid{scroll-snap-type:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:68px 26px;margin-inline:0;padding:0;overflow:visible}.public-space-card:nth-child(2n){margin-top:72px}.public-space-card:last-child{grid-column:1/-1;width:min(74%,700px);margin:0 auto}.concierge{grid-template-columns:auto 1fr auto;align-items:center}.concierge a{grid-column:auto;min-width:180px}.route-list{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(4,1fr)}.playlist-panel{grid-template-columns:250px 1fr;align-items:center;padding:40px}.playlist-disc{width:220px;height:220px}.auth-page{grid-template-columns:1.25fr .75fr;align-items:center}.auth-card{padding:34px}.metric-grid{grid-template-columns:repeat(4,1fr)}.admin-two-columns{grid-template-columns:.9fr 1.1fr}.admin-table-row{grid-template-columns:1.1fr .9fr 1fr}.story-grid{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.public-spaces{padding-top:60px;padding-bottom:110px}.public-spaces__grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:86px 30px}.public-space-card:first-child{grid-column:1/8}.public-space-card:first-child .public-space-card__image,.public-space-card:nth-child(4) .public-space-card__image{aspect-ratio:7/5}.public-space-card:nth-child(2){grid-column:8/13;margin-top:128px}.public-space-card:nth-child(3){grid-column:1/6;margin-top:60px}.public-space-card:nth-child(4){grid-column:6/13;margin-top:0}.public-space-card:last-child{grid-column:2/12;grid-template-columns:1.25fr .75fr;align-items:end;gap:34px;width:100%;margin:26px 0 0;display:grid}.public-space-card:last-child .public-space-card__image{aspect-ratio:6/5}.public-space-card:last-child .public-space-card__body{padding-bottom:28px}.admin-layout{grid-template-columns:220px 1fr;display:grid}.admin-sidebar{border-top:0;border-right:1px solid var(--line);background:var(--paper);flex-direction:column;height:100dvh;padding:28px 18px;display:flex;position:sticky;top:0}.admin-brand{margin:0 10px 35px;font-family:Georgia,Songti SC,serif;font-size:1.3rem;display:block}.admin-brand small{color:var(--muted);letter-spacing:.16em;font-family:sans-serif;font-size:.55rem;display:block}.admin-sidebar nav{align-content:start;gap:4px;display:grid;overflow:visible}.admin-sidebar nav a{border-radius:10px;flex-direction:row;justify-content:flex-start;min-height:46px;padding:8px 10px;font-size:.78rem}.admin-sidebar nav a:hover{background:var(--paper-warm);color:var(--forest)}.admin-sidebar>form{margin-top:auto;display:block}.admin-sidebar>form button{border:1px solid var(--line);width:100%;min-height:44px;color:var(--muted);background:0 0;border-radius:10px}.admin-main{padding-bottom:70px}}@media (max-width:350px){.page-content{width:min(100% - 24px, var(--content))}.public-spaces__grid{margin-inline:-12px;padding-inline:12px}.feature-card{padding:20px}.brand-mark{width:44px}}@media (prefers-reduced-motion:no-preference){.feature-card{animation:.35s both enter}.feature-card:nth-child(2){animation-delay:50ms}.public-space-card:hover .public-space-card__image img{transform:scale(1.025)}.bottom-nav__item:before,.bottom-nav__icon,.bottom-nav__label{transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .24s}.bottom-nav__item[aria-current=page] .bottom-nav__icon{animation:.38s cubic-bezier(.22,1,.36,1) both nav-ink-arrive}@keyframes nav-ink-arrive{0%{opacity:.45;transform:translateY(3px)scale(.82)}to{opacity:1;transform:translateY(-4px)scale(1.08)}}@keyframes enter{0%{transform:translateY(8px)}}}body{-webkit-text-size-adjust:100%;font-size:1rem}h1,h2,h3{font-family:var(--font-ui);font-synthesis:none;line-break:strict;overflow-wrap:break-word;text-wrap:balance}p,li,dt,dd,figcaption,blockquote{line-break:strict;text-wrap:pretty}.welcome h1,.page-header h1,.auth-intro h1,.story-page h1,.room-hero h1,.record-book-hero h1,.collect-state h1,.achievement-card h3,.achievement-reveal-card h2,.record-route-card h2,.mini-brand,.brand-mark{font-family:var(--font-display)}.section-heading h2,.public-spaces__heading h2,.concierge h2,.service-group h2,.music-hero h2,.playlist-panel h2,.field-sounds h2,.room-copy h2,.stay-record-summary h2,.stay-history .section-heading h2{font-family:var(--font-literary);letter-spacing:.01em;font-weight:600}.welcome h1,.centered-page h1{letter-spacing:.025em;font-size:clamp(1.9rem,7.4vw,3.7rem);line-height:1.36}.welcome h1 span{display:inline-block}.page-header{padding-bottom:40px}.page-header h1{letter-spacing:.025em;max-width:820px;font-size:clamp(1.72rem,7.25vw,3.75rem);line-height:1.34}.page-header:after{margin-top:22px}.mini-brand{margin-bottom:30px}.record-book-hero h1{font-size:clamp(2.5rem,10.5vw,4.6rem);line-height:1.2}.story-page h1{font-size:clamp(2.25rem,8vw,4.2rem);line-height:1.25}.room-hero h1{font-size:clamp(2.7rem,10.5vw,5.2rem);line-height:1.16}.auth-intro h1{font-size:clamp(2.25rem,7vw,4.2rem);line-height:1.25}.section-heading h2,.public-spaces__heading h2,.concierge h2{font-size:clamp(1.45rem,5vw,2rem);line-height:1.35}.welcome__visual figcaption,.card-kicker,.public-space-card__image figcaption,.public-space-card__body>p:first-child,.public-spaces__footnote,.bottom-nav__item,.explore-guide__store>span,.explore-guide__store small,.explore-guide__store em,.explore-guide__path span,.place-directory__number,.place-directory__copy small,.place-directory__copy em,.playlist-rights-note,.event-date span,.event-list p,.profile-service-entry small,.profile-service-entry em,.privacy-note,.room-pass dt,.status-list em,.inline-status-form button,.memory-grid figcaption,.memory-privacy,.expense-list em,.rebook-panel a,.rebook-panel button,.small-cancel,.network-toast,.room-facts span,.room-copy li,.room-private-info span,.room-private-info small,.achievement-entry small,.achievement-wall .section-heading>span,.achievement-number,.achievement-material,.achievement-card p,.achievement-card time,.form-feedback,.record-lifetime-count,.stay-history__index span,.stay-history__body time,.stay-history__body small,.achievement-reveal-material,.achievement-reveal-card time{font-size:.8rem;line-height:1.6}.bottom-nav__label{font-family:var(--font-ui);font-size:.8rem}.admin-layout,.admin-layout h1,.admin-layout h2,.admin-layout h3,.admin-layout button,.admin-layout input,.admin-layout textarea,.admin-layout select{font-family:var(--font-ui)}.admin-brand>span{font-family:var(--font-display)}.admin-page-header{padding:12px 0 32px}.admin-page-header h1{max-width:980px;font-family:var(--font-ui);letter-spacing:-.045em;font-size:clamp(2rem,3.4vw,3.25rem);font-weight:650;line-height:1.14}.admin-form h2,.admin-list h2,.admin-order-list h2,.admin-store-header h2,.admin-section-heading>div>h2,.admin-music-intro h2,.admin-playlist-group h3,.admin-checkpoint-grid h3,.report-sheet h2,.report-sheet h3{font-family:var(--font-ui);letter-spacing:-.02em;font-weight:650;line-height:1.3}.admin-form h2,.admin-list h2,.admin-order-list h2{font-size:1.35rem}.admin-section-heading>div>h2,.admin-store-header h2,.admin-music-intro h2,.report-sheet h2{font-size:clamp(1.55rem,2.4vw,2rem)}.admin-sidebar nav a{font-size:.84rem}.room-calendar>summary span{font-family:var(--font-ui);letter-spacing:-.01em;font-size:1.2rem;font-weight:650}.admin-brand small,.admin-nav-badge,.admin-form legend,.room-status-summary span,.room-status-control .inline-error,.room-calendar-grid>*,.room-calendar-head small,.room-today-tags mark,.room-more-details>summary span,.room-detail-grid label,.room-task-list>p,.room-task-list small,.room-task-list p,.room-log-section li,.room-operation-success,.room-operation-error,.dashboard-store-grid article dt,.admin-store-header dt,.report-kpis small,.report-footer,.admin-form label>small,.content-status,.admin-audio-track>div>small,.admin-badge-list small,.admin-badge-list p,.admin-checkpoint-grid header span,.admin-checkpoint-grid code{font-size:.82rem;line-height:1.55}@media (max-width:699px){.admin-page-header{padding-bottom:26px}.admin-sidebar nav a{font-size:.76rem}}@media (prefers-reduced-motion:reduce){.achievement-reveal-overlay,.achievement-reveal-card,.achievement-reveal-stage,.achievement-reveal-seal,.achievement-reveal-needle,.achievement-reveal-sheen{animation:none!important}}.room-pass{border-radius:4px 34px 4px 4px;padding:30px 26px 25px;position:relative;overflow:hidden;box-shadow:0 24px 55px #27302433}.room-pass:after{content:"";pointer-events:none;border:1px solid #f3efe51f;border-radius:50%;width:250px;height:250px;position:absolute;top:-100px;right:-90px;box-shadow:0 0 0 30px #f3efe506}.room-pass h2{z-index:1;font-family:var(--font-display);letter-spacing:.05em;font-size:clamp(2.45rem,10vw,3.65rem);font-weight:400;line-height:1.08;position:relative}.room-pass>div>p:last-child{max-width:460px;margin:7px 0 21px;font-size:1rem;line-height:1.7}.room-pass__wifi{z-index:1;background:#f3efe51a;border:1px solid #f3efe53d;border-radius:3px 22px 3px 3px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px 12px;min-height:0;padding:16px 17px 15px;display:grid;position:relative}.room-pass__wifi-icon{border:1px solid #f3efe552;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.room-pass__wifi small,.room-pass__wifi strong{display:block}.room-pass__wifi small{opacity:.62;letter-spacing:.09em;font-size:.8rem!important}.room-pass__wifi strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:1rem;overflow:hidden}.room-pass__wifi-password{border-top:1px solid #f3efe529;grid-column:1/-1;padding:13px 0 0 54px}.room-pass__wifi-password code{font-family:Georgia, var(--font-ui);letter-spacing:.1em;margin-top:3px;font-size:clamp(1.7rem,7.2vw,2.2rem);font-weight:650;line-height:1.2;display:block}.room-pass__wifi button{min-height:42px;color:var(--paper);background:0 0;border:1px solid #f3efe54d;border-radius:999px;grid-area:1/3;align-items:center;gap:5px;padding:7px 12px;display:flex}.room-pass dl{z-index:1;margin-top:18px;position:relative}.room-pass dl div{padding:17px 8px 3px}.room-pass dt{opacity:.66;font-size:.86rem}.room-pass dd{margin-top:5px;font-size:1rem;font-weight:650}.room-detail-link{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.achievement-entry{color:var(--ink);background:#ded8ca;border-radius:28px 7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;margin:20px 0 30px;padding:22px;display:grid;box-shadow:0 14px 34px #292a2614}.achievement-entry__disc{background:var(--forest);width:60px;height:60px;color:var(--paper);border:8px double #f3efe533;border-radius:50%;place-items:center;display:grid}.achievement-entry small,.achievement-entry strong,.achievement-entry em{display:block}.achievement-entry small{color:var(--wood);letter-spacing:.11em;font-size:.66rem}.achievement-entry strong{font-family:var(--font-display);margin:4px 0;font-size:clamp(1.25rem,4vw,1.65rem);font-weight:500}.achievement-entry em{color:var(--muted);font-size:.78rem;font-style:normal}.achievement-entry--compact{margin-top:26px}.record-back{min-height:44px;color:var(--muted);align-items:center;gap:7px;font-size:.82rem;display:inline-flex}.record-book-hero{text-align:center;padding:38px 20px 50px}.record-book-hero__disc{background:var(--forest);width:116px;height:116px;color:var(--paper);border:25px double #f3efe51c;border-radius:50%;place-items:center;margin:0 auto 22px;display:grid;box-shadow:0 18px 40px #292a2633}.record-book-hero h1{margin:5px 0 6px;font-size:clamp(3.2rem,13vw,6rem);font-weight:400}.record-book-hero>p:last-of-type{color:var(--muted);margin:0}.record-count{justify-content:center;align-items:baseline;gap:8px;margin-top:22px;display:flex}.record-count strong{font-family:Georgia,serif;font-size:3.3rem;font-weight:400}.record-count span{color:var(--muted)}.record-route-card{background:var(--forest);color:var(--paper);border-radius:26px 6px;grid-template-columns:auto 1fr;gap:15px;margin-bottom:44px;padding:24px;display:grid}.record-route-card h2{margin:2px 0;font-size:1.8rem;font-weight:500}.record-route-card p{color:#f3efe5b3;margin:2px 0}.record-route-card .route-progress{grid-column:1/-1}.route-progress{background:#8b8a8240;border-radius:999px;height:7px;margin-top:14px;position:relative;overflow:hidden}.route-progress>span{border-radius:inherit;background:var(--amber);height:100%;display:block}.route-progress>strong{margin-top:13px;font-size:.78rem;display:block}.achievement-wall{padding:10px 0 50px}.achievement-wall .section-heading>span{color:var(--muted);font-size:.75rem}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;display:grid}.achievement-card{text-align:center;background:#e8e1d49e;border-radius:42% 42% 18px 18px/20% 20% 18px 18px;min-width:0;padding:19px 14px 18px;transition:transform .28s,background .28s,box-shadow .28s;position:relative}.achievement-card--locked{color:var(--muted);background:#e8e1d44d}.achievement-card--from-previous-stay{background:var(--paper-warm)}@supports (color:color-mix(in lab, red, red)){.achievement-card--from-previous-stay{background:color-mix(in srgb, var(--paper-warm) 72%, var(--moss) 7%)}}.achievement-number{color:var(--muted);font-family:Georgia,serif;font-size:.68rem;position:absolute;top:13px;left:14px}.achievement-seal{aspect-ratio:1;background:radial-gradient(circle,#e8e1d4a3 0 54%,#e8e1d400 74%);place-items:center;width:min(116px,86%);margin:2px auto 10px;display:grid}.achievement-seal img{object-fit:contain;filter:drop-shadow(0 9px 9px #292a2621);width:100%;height:100%}.achievement-seal--苔青{background:radial-gradient(circle,#cbd2c3b8 0 52%,#0000 74%)}.achievement-seal--陶赭{background:radial-gradient(circle,#dfc2a8ad 0 52%,#0000 74%)}.achievement-seal--旧金{background:radial-gradient(circle,#d8c59fa8 0 52%,#0000 74%)}.achievement-seal--月白{background:radial-gradient(circle,#e6e8e2bd 0 52%,#0000 74%)}.achievement-card--locked .achievement-seal{filter:grayscale(.72)sepia(.1);opacity:.56}.achievement-material{color:var(--wood);background:#ffffff61;border-radius:999px;padding:3px 7px;font-size:.62rem}.achievement-card h3{margin:8px 0 4px;font-size:1.35rem;font-weight:500}.achievement-card p{color:var(--muted);margin:0;font-size:.73rem;line-height:1.65}.achievement-card time{color:var(--moss);margin-top:9px;font-size:.65rem;display:block}.achievement-card__trigger{z-index:2;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;position:absolute;inset:0}.achievement-card__trigger:focus-visible{outline:3px solid var(--amber)}@supports (color:color-mix(in lab, red, red)){.achievement-card__trigger:focus-visible{outline:3px solid color-mix(in srgb, var(--amber) 72%, white)}}.achievement-card__trigger:focus-visible{outline-offset:3px}@media (hover:hover){.achievement-card:hover{background:#eee8dcd6;transform:translateY(-4px);box-shadow:0 14px 28px #292a2614}.achievement-card:hover .achievement-seal img{transform:scale(1.035)rotate(-1.5deg)}}.achievement-seal img{transition:transform .32s cubic-bezier(.22,1,.36,1)}.record-actions{gap:16px;margin:10px 0 48px;display:grid}.record-note-form{background:var(--paper-warm);border-radius:24px 6px;grid-template-columns:auto 1fr;gap:12px;padding:22px;display:grid}.record-note-form>div strong{font-family:var(--font-display);font-size:1.45rem;font-weight:500}.record-note-form>div p{color:var(--muted);margin:2px 0 6px;font-size:.78rem}.record-note-form label{grid-column:1/-1;gap:5px;font-size:.78rem;font-weight:700;display:grid}.record-note-form input{border:1px solid var(--line);background:#fff6;border-radius:10px;min-height:46px;padding:9px 11px}.record-note-form button{background:var(--forest);min-height:46px;color:var(--paper);border:0;border-radius:11px;grid-column:1/-1;font-weight:700}.form-feedback{color:var(--wood);grid-column:1/-1;margin:0;font-size:.75rem}.stay-record-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;margin-bottom:50px;padding:30px}.stay-record-summary h2{margin:4px 0 10px;font-size:2rem;font-weight:500}.stay-record-summary p:not(.eyebrow){color:var(--muted);line-height:1.8}.record-lifetime-count{color:var(--paper);margin:10px 0 0}@supports (color:color-mix(in lab, red, red)){.record-lifetime-count{color:color-mix(in srgb, var(--paper) 82%, transparent)}}.record-lifetime-count{font-size:.74rem}.stay-history{margin-bottom:54px}.stay-history .section-heading{align-items:flex-end}.stay-history__intro{max-width:560px;color:var(--muted);margin:-6px 0 20px;font-size:.82rem;line-height:1.75}.stay-history__list{gap:13px;display:grid}.stay-history__list article{background:var(--paper-warm);border-radius:22px 6px;grid-template-columns:92px minmax(0,1fr);gap:15px;padding:18px;display:grid}.stay-history__index{border-right:1px solid var(--line);align-content:start;gap:5px;padding-right:13px;display:grid}.stay-history__index span{color:var(--moss);letter-spacing:.08em;font-size:.68rem}.stay-history__index strong{font-family:var(--font-display);font-size:1.25rem;font-weight:500}.stay-history__body h3{margin:0 0 2px;font-size:1.15rem;font-weight:600}.stay-history__body time,.stay-history__body small{color:var(--muted);font-size:.72rem}.stay-history__body p{color:var(--ink);margin:8px 0 4px;font-size:.78rem}.stay-history__body small{line-height:1.55}@media (max-width:360px){.stay-history__list article{grid-template-columns:76px minmax(0,1fr);gap:11px;padding:15px}.guest-phone-lookup{grid-template-columns:1fr}}.collect-page{min-height:100dvh;padding:max(30px, env(safe-area-inset-top)) 20px max(30px, env(safe-area-inset-bottom));background:var(--paper);place-items:center;display:grid}.collect-state{text-align:center;width:min(100%,520px);padding:40px 24px}.collect-state h1{margin:10px 0;font-size:clamp(2.3rem,10vw,4rem);font-weight:400}.collect-state>p{color:var(--muted)}.collect-state>a,.collect-state>button{background:var(--forest);min-height:46px;color:var(--paper);border:0;border-radius:999px;justify-content:center;align-items:center;gap:7px;margin:10px 4px 0;padding:10px 16px;display:inline-flex}.collect-state .collect-retry{color:var(--muted);background:0 0}.achievement-reveal-overlay{z-index:120;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px)saturate(.78);backdrop-filter:blur(8px)saturate(.78);background:#21231fb3;place-items:center;display:grid;position:fixed;inset:0}.achievement-reveal-card{isolation:isolate;background:var(--paper);text-align:center;border-radius:34px 8px;width:min(100%,410px);max-height:calc(100dvh - 32px);padding:26px 25px 24px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000047}.achievement-reveal-card:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 50% 24%,#c88a482b,#0000 34%),linear-gradient(120deg,#0000 0 46%,#ffffff57 50%,#0000 55%);position:absolute;inset:0}.achievement-reveal-close{z-index:5;width:42px;height:42px;color:var(--forest);cursor:pointer;background:#f3efe5d1;border:1px solid #3f493b29;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.achievement-reveal-stage{aspect-ratio:1;place-items:center;width:min(214px,70vw);margin:0 auto 12px;display:grid;position:relative}.achievement-reveal-bloom,.achievement-reveal-groove,.achievement-reveal-sheen,.achievement-reveal-needle{pointer-events:none;position:absolute}.achievement-reveal-bloom{filter:blur(8px);background:radial-gradient(circle,#c88a4857,#c88a480d 45%,#0000 69%);border-radius:50%;inset:13%}.achievement-reveal-groove{border:1px solid #3f493b33;border-radius:50%}.achievement-reveal-groove--outer{inset:2%;box-shadow:inset 0 0 0 7px #3f493b06,inset 0 0 0 18px #3f493b05}.achievement-reveal-groove--inner{opacity:.65;border-style:dashed;inset:13%}.achievement-reveal-seal{z-index:2;aspect-ratio:1;background:radial-gradient(circle,#e8e1d4bd 0 52%,#0000 74%);border-radius:50%;place-items:center;width:82%;display:grid;position:relative}.achievement-reveal-seal img{object-fit:contain;filter:drop-shadow(0 14px 14px #292a2633);width:100%;height:100%}.achievement-reveal-card--locked .achievement-reveal-seal{opacity:.62;filter:grayscale(.76)sepia(.08)}.achievement-reveal-card--locked .achievement-reveal-bloom{opacity:.24}.achievement-reveal-needle{z-index:4;transform-origin:50% 8px;background:linear-gradient(90deg,#8a6b50,#d5b779 46%,#68523e);border-radius:8px;width:5px;height:96px;top:4px;right:16px;box-shadow:0 5px 9px #292a2638}.achievement-reveal-needle:before,.achievement-reveal-needle:after{content:"";background:#8a6b50;border-radius:50%;position:absolute;left:50%;transform:translate(-50%)}.achievement-reveal-needle:before{width:18px;height:18px;top:-5px;box-shadow:inset 0 0 0 4px #cdb27b}.achievement-reveal-needle:after{width:10px;height:10px;bottom:-5px}.achievement-reveal-sheen{z-index:3;opacity:0;filter:blur(3px);background:linear-gradient(90deg,#0000,#fffae2b3,#0000);width:34%;top:19%;bottom:19%;left:4%;transform:skew(-18deg)}.achievement-reveal-card>.eyebrow{color:var(--wood);margin-bottom:2px}.achievement-reveal-intro{color:var(--muted);margin:4px 0;font-size:.83rem}.achievement-reveal-card h2{margin:6px 0;font-size:clamp(2.25rem,10vw,3.15rem);font-weight:400}.achievement-reveal-material{color:var(--wood);background:#c88a481c;border-radius:999px;padding:4px 10px;font-size:.68rem;display:inline-flex}.achievement-reveal-description{color:var(--muted);margin:14px auto 6px;line-height:1.7}.achievement-reveal-card blockquote{color:var(--muted);font-family:var(--font-display);background:#e8e1d480;border:0;border-radius:18px 5px;margin:12px 0 8px;padding:14px 12px;font-size:1.15rem;line-height:1.6}.achievement-reveal-card time{color:var(--muted);font-size:.72rem;display:block}.achievement-reveal-confirm{background:var(--forest);width:100%;min-height:48px;color:var(--paper);cursor:pointer;border:0;border-radius:999px;margin-top:18px;font-weight:700}.achievement-reveal-close:focus-visible,.achievement-reveal-confirm:focus-visible{outline:3px solid var(--amber)}@supports (color:color-mix(in lab, red, red)){.achievement-reveal-close:focus-visible,.achievement-reveal-confirm:focus-visible{outline:3px solid color-mix(in srgb, var(--amber) 72%, white)}}.achievement-reveal-close:focus-visible,.achievement-reveal-confirm:focus-visible{outline-offset:3px}.achievement-reveal-confirm:active{transform:scale(.985)}.admin-achievement-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:34px;display:grid}.admin-achievement-kpis article{background:var(--paper-warm);border-radius:18px;gap:5px;padding:20px;display:grid}.admin-achievement-kpis span{color:var(--muted);font-size:.78rem}.admin-achievement-kpis strong{font-size:1.8rem}.admin-achievement-section{margin-bottom:46px}.admin-badge-list{gap:9px;display:grid}.admin-badge-list article{border-bottom:1px solid var(--line);grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;display:grid}.admin-badge-list small,.admin-badge-list p{color:var(--muted);margin:2px 0;font-size:.75rem;display:block}.admin-badge-list button,.checkpoint-danger-actions button,.admin-list .action-danger{border:0;border-radius:9px;min-height:38px;padding:7px 11px;font-weight:700}.action-success{color:var(--forest);background:#dce6d6}.action-warning{color:#785b2d;background:#ede1c9}.action-danger{color:#84372e;background:#efddd8}.admin-checkpoint-grid{gap:14px;display:grid}.admin-checkpoint-grid>article{border:1px solid var(--line);border-radius:20px 5px;padding:21px}.admin-checkpoint-grid header,.checkpoint-actions,.checkpoint-danger-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-checkpoint-grid header span{color:var(--wood);font-size:.68rem}.admin-checkpoint-grid h3{margin:2px 0;font-size:1.35rem}.admin-checkpoint-grid p{color:var(--muted)}.admin-checkpoint-grid code{overflow-wrap:anywhere;background:var(--paper-warm);border-radius:8px;padding:9px;font-size:.72rem;display:block}.checkpoint-actions{margin:13px 0}.checkpoint-actions button,.checkpoint-actions a{border:1px solid var(--forest);min-height:40px;color:var(--forest);background:0 0;border-radius:9px;align-items:center;gap:6px;padding:7px 11px;display:inline-flex}@media (min-width:700px){.achievement-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.record-actions,.admin-checkpoint-grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.achievement-reveal-card{padding:22px 20px 20px}.achievement-reveal-stage{width:min(196px,62vw)}.admin-achievement-kpis{grid-template-columns:1fr}.admin-badge-list article{grid-template-columns:54px minmax(0,1fr)}.admin-badge-list form{grid-column:2}}@media (prefers-reduced-motion:no-preference){.achievement-card{animation:.46s cubic-bezier(.22,1,.36,1) both achievement-card-arrive}.achievement-reveal-overlay{animation:.26s both achievement-overlay-in}.achievement-reveal-card{animation:.55s cubic-bezier(.22,1,.36,1) both achievement-dialog-in}.achievement-reveal-card--unlocked .achievement-reveal-bloom{animation:1.8s ease-out both achievement-bloom}.achievement-reveal-card--unlocked .achievement-reveal-groove--outer{animation:1.35s cubic-bezier(.22,1,.36,1) .12s both achievement-groove}.achievement-reveal-card--unlocked .achievement-reveal-groove--inner{animation:1.15s cubic-bezier(.22,1,.36,1) .24s both achievement-groove}.achievement-reveal-card--unlock .achievement-reveal-seal{animation:1.55s cubic-bezier(.16,1,.3,1) .12s both achievement-seal-unlock}.achievement-reveal-card--view .achievement-reveal-seal{animation:.72s cubic-bezier(.22,1,.36,1) 80ms both achievement-seal-view}.achievement-reveal-needle{animation:1.45s cubic-bezier(.16,1,.3,1) .18s both achievement-needle-drop}.achievement-reveal-sheen{animation:1.25s ease-out .58s both achievement-sheen}.achievement-reveal-card>.eyebrow,.achievement-reveal-intro,.achievement-reveal-card h2,.achievement-reveal-material,.achievement-reveal-description,.achievement-reveal-card blockquote,.achievement-reveal-card time,.achievement-reveal-confirm{animation:.5s ease-out .48s both achievement-copy-in}@keyframes achievement-card-arrive{0%{opacity:0;transform:translateY(8px)}}@keyframes achievement-overlay-in{0%{opacity:0}}@keyframes achievement-dialog-in{0%{opacity:0;transform:translateY(18px)scale(.965)}}@keyframes achievement-bloom{0%{opacity:0;transform:scale(.42)}45%{opacity:1;transform:scale(1.24)}to{opacity:.58;transform:scale(1)}}@keyframes achievement-groove{0%{opacity:0;transform:scale(.62)rotate(-14deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes achievement-seal-unlock{0%{opacity:0;filter:blur(9px);transform:rotate(-10deg)scale(.64)}58%{opacity:1;filter:blur();transform:rotate(1.5deg)scale(1.08)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes achievement-seal-view{0%{opacity:0;transform:rotate(-3deg)scale(.88)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes achievement-needle-drop{0%{opacity:0;transform:rotate(-38deg)translateY(-6px)}55%{opacity:1;transform:rotate(8deg)translateY(0)}to{opacity:1;transform:rotate(4deg)translateY(0)}}@keyframes achievement-sheen{0%{opacity:0;left:3%}28%{opacity:.8}to{opacity:0;left:66%}}@keyframes achievement-copy-in{0%{opacity:0;transform:translateY(7px)}}}.record-book-hero h1{font-family:var(--font-display);text-wrap:balance;font-size:clamp(2.5rem,10.5vw,4.6rem);line-height:1.2}.record-route-card h2,.achievement-card h3,.achievement-reveal-card h2{font-family:var(--font-display);text-wrap:balance}.achievement-card h3{font-size:clamp(1.22rem,4.8vw,1.45rem);line-height:1.35}.achievement-reveal-card h2{font-size:clamp(2.1rem,9vw,2.9rem);line-height:1.22}.achievement-entry small,.achievement-wall .section-heading>span,.achievement-number,.achievement-material,.achievement-card p,.achievement-card time,.form-feedback,.record-lifetime-count,.stay-history__index span,.stay-history__body time,.stay-history__body small,.achievement-reveal-material,.achievement-reveal-card time{font-size:.8rem;line-height:1.6}.admin-badge-list small,.admin-badge-list p,.admin-checkpoint-grid header span,.admin-checkpoint-grid code{font-family:var(--font-ui);font-size:.82rem;line-height:1.55}.admin-checkpoint-grid h3{font-family:var(--font-ui);letter-spacing:-.02em;font-weight:650}small{line-height:1.5;font-size:.82rem!important}.eyebrow{letter-spacing:.16em;font-size:.8rem}.weather-card__place>span,.weather-card__advice span,.weather-card__metrics span,.weather-card__metrics small,.weather-card__source,.service-card em,.route-meta,.route-actions button,.room-pass dt,.room-pass dd,.status-list em,.section-heading>span,.audio-unavailable,.achievement-entry em{font-size:.82rem;line-height:1.55}.admin-layout small{font-size:.84rem!important}.place-directory__heading p,.place-directory__heading span,.section-heading>a,.record-note-form p,.stay-history__body p{font-size:.82rem;line-height:1.6}.metric-grid span,.room-today-summary span,.room-identity>span,.room-current-guest>span,.room-action,.report-table thead th,.admin-achievement-kpis span,.admin-edit-details summary{font-family:var(--font-ui);font-size:.84rem;line-height:1.5}.guest-identity-card>strong,.service-card strong,.place-directory__copy strong,.route-card h3,.event-list h3,.audio-track-heading strong,.status-list strong,.expense-list strong{font-family:var(--font-ui);letter-spacing:0;font-weight:650}.profile-login-link,.record-auth-actions a{font-size:.84rem}.achievement-entry.achievement-entry{color:#30342d;background:radial-gradient(circle at 91% 12%,#fffaed80,#0000 31%),linear-gradient(145deg,#dfd2ba,#cdbb9e);border:1px solid #6e52332e;border-radius:4px 32px 4px 4px;margin:24px 0 34px;padding:24px;display:block;position:relative;overflow:hidden;box-shadow:0 22px 50px #4a3d2b24}.achievement-entry .achievement-entry__disc{color:#e8d1a8;background:repeating-radial-gradient(circle,#0000 0 4px,#ffffff0e 5px 6px),#30382f;border:13px double #f3efe51c;border-radius:50%;place-items:center;width:82px;height:82px;display:grid;box-shadow:0 12px 24px #2e302833}.explore-moment-card{background:var(--forest);min-height:210px;color:var(--paper);border-radius:3px 30px 3px 3px;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:26px 24px 22px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 46px #2a322724}.explore-moment-card:after{content:"";border:1px solid #f3efe524;border-radius:48% 52% 44% 56%;width:220px;height:220px;position:absolute;bottom:-82px;right:-50px;box-shadow:0 0 0 30px #f3efe506}.explore-moment-card__icon{border:1px solid #f3efe561;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.explore-moment-card p{opacity:.68;letter-spacing:.08em;margin:0 0 7px;font-size:.82rem}.explore-moment-card h2{font-family:var(--font-literary);margin:0 0 6px;font-size:clamp(1.48rem,6vw,2.15rem);font-weight:550}.explore-moment-card div>span{opacity:.72;font-size:.9rem;line-height:1.7}.explore-moment-card>a{z-index:1;border-bottom:1px solid #f3efe57a;grid-column:2;align-items:center;gap:7px;width:fit-content;min-height:44px;margin-top:9px;font-weight:650;display:flex;position:relative}.explore-quick-stories{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.explore-quick-stories a{border:1px solid var(--line);min-height:88px;color:var(--forest);background:#fff3;border-radius:3px 18px 3px 3px;grid-template-columns:30px 1fr;align-items:center;gap:8px;padding:15px;display:grid}.explore-quick-stories small,.explore-quick-stories strong{display:block}.explore-quick-stories small{color:var(--muted);font-size:.8rem!important}.explore-quick-stories strong{margin-top:2px;font-size:.98rem}.watercolor-map-card{background:#e9e6d5;border:1px solid #5057462e;border-radius:3px 30px 3px 3px;overflow:hidden;box-shadow:0 24px 55px #373c2f1c}.watercolor-map-card__heading{background:#f8f5ebeb;justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:14px 16px;display:flex}.watercolor-map-card__heading span,.watercolor-map-card__heading strong{display:block}.watercolor-map-card__heading span{color:var(--wood);letter-spacing:.1em;font-size:.8rem}.watercolor-map-card__heading strong{font-family:var(--font-literary);margin-top:3px;font-size:1rem;font-weight:550}.watercolor-map-card__heading button{border:1px solid var(--line);min-height:44px;color:var(--forest);background:0 0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 11px;display:flex}.watercolor-map{aspect-ratio:16/9;background:#e7e5d5;width:100%;position:relative;overflow:hidden}.watercolor-map>img{object-fit:cover}.watercolor-map__wash{pointer-events:none;background:linear-gradient(#ffffff14,#0000 48%,#292a260d);position:absolute;inset:0}.watercolor-map__marker{z-index:2;background:var(--forest);min-width:34px;min-height:34px;color:var(--paper);border:2px solid #f8f4ebf2;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 12px #23282047}.watercolor-map__marker span{font-family:Georgia,serif;font-size:.7rem}.watercolor-map__marker em{width:max-content;max-width:92px;color:var(--ink);background:#f8f4ebe6;border-radius:2px;padding:2px 5px;font-size:.72rem;font-style:normal;font-weight:650;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.watercolor-map__marker[data-selected=true]{background:var(--amber);transform:translate(-50%,-50%)scale(1.12)}.watercolor-map-card footer{min-height:58px;color:var(--muted);background:#f8f5ebe6;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 14px;font-size:.8rem;display:flex}.watercolor-map-card footer span{align-items:center;gap:5px;display:flex}.watercolor-map-card footer small{margin-left:auto}.map-legend-dot{background:var(--wood);border-radius:50%;width:8px;height:8px}.map-legend-dot--field{background:var(--moss)}.explore-filter-row{margin:18px 0 10px}.map-dialog{z-index:110;padding:max(14px, env(safe-area-inset-top)) 0 max(14px, env(safe-area-inset-bottom));background:var(--paper);flex-direction:column;display:flex;position:fixed;inset:0}.map-dialog__bar{justify-content:space-between;align-items:center;min-height:58px;padding:0 18px;display:flex}.map-dialog__bar strong{font-family:var(--font-literary);font-size:1.2rem}.map-dialog__bar button{background:var(--paper-warm);border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.map-dialog__scroll{flex:1;align-items:center;display:flex;overflow:auto}.watercolor-map--expanded{flex:none;width:max(900px,100vw)}.map-dialog>p{color:var(--muted);text-align:center;margin:10px 18px 0;font-size:.84rem}.place-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.place-directory__item{grid-template-columns:25px minmax(0,1fr) auto;min-height:92px}.place-directory__item>svg,.watercolor-map__marker em{display:none}.watercolor-map__marker[data-selected=true] em,.watercolor-map__marker:focus-visible em{display:block}.routes-section{scroll-margin-top:20px}.route-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.route-selector button{border:1px solid var(--line);min-height:104px;color:var(--ink);text-align:left;background:#ffffff2e;border-radius:3px 16px 3px 3px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:4px;padding:12px 9px;display:flex}.route-selector button[aria-selected=true]{border-color:var(--forest);background:var(--forest);color:var(--paper)}.route-selector small{opacity:.66}.route-selector strong{font-size:.92rem;line-height:1.35}.route-selector span{opacity:.72;font-size:.8rem}.route-card--featured{background:#ffffff47;min-height:300px}.route-card__best{color:var(--wood);margin:0 0 5px;font-size:.82rem}.stay-login{border:1px solid #3f493b24;position:relative;box-shadow:0 18px 44px #34372d14}.stay-login .profile-login-link{place-items:initial;background:var(--forest);min-height:86px;color:var(--paper);border:2px solid #f3efe5b8;border-radius:4px 20px 4px 4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 15px;animation:2.8s ease-in-out infinite guest-login-breathe;display:grid;position:relative;box-shadow:0 14px 28px #2d372a2e}.profile-login-link__cue{background:var(--amber);color:#fffaf1;border-radius:999px;align-items:center;gap:4px;min-height:26px;padding:3px 9px;font-size:.78rem;font-weight:700;animation:1.8s ease-in-out infinite guest-login-cue;display:flex;position:absolute;top:-13px;left:15px}.profile-login-link>span:not(.profile-login-link__cue){min-width:0}.profile-login-link strong,.profile-login-link em{display:block}.profile-login-link strong{font-family:var(--font-ui);letter-spacing:0;font-size:1.08rem}.profile-login-link em{opacity:.72;margin-top:3px;font-size:.82rem;font-style:normal;font-weight:400}.stay-login>a.stay-login__help{color:var(--forest);box-shadow:none;background:0 0;margin-top:-5px}@keyframes guest-login-breathe{0%,to{box-shadow:0 14px 28px #2d372a29,0 0 #66705a2e}50%{box-shadow:0 18px 34px #2d372a33,0 0 0 8px #66705a00}}@keyframes guest-login-cue{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@media (max-width:380px){.explore-quick-stories,.place-directory{grid-template-columns:1fr}.route-selector{grid-template-columns:1fr 1fr 1fr;overflow-x:auto}.route-selector button{min-width:112px}.watercolor-map__marker em{display:none}}@media (min-width:768px){.explore-highlights{grid-template-columns:1.5fr 1fr;gap:12px;display:grid}.explore-quick-stories{grid-template-columns:1fr;margin-top:0}.watercolor-map-card__heading{padding-inline:22px}}@media (prefers-reduced-motion:reduce){.stay-login .profile-login-link,.profile-login-link__cue{animation:none}}.welcome__greeting{color:var(--wood);font-family:var(--font-literary);letter-spacing:.08em;margin:0 0 8px;font-size:.92rem}.welcome h1 span{text-wrap:balance;display:block}.home-today-layout{gap:0;display:grid}.home-today-layout .today{padding-bottom:28px}.explore-map-section{scroll-margin-top:20px}.explore-highlights{margin:28px 0 8px}.explore-moment-card{min-height:176px}.explore-moment-card>a{text-underline-offset:5px;border-bottom:0;-webkit-text-decoration:underline #f3efe573;text-decoration:underline #f3efe573}.routes-section{padding-top:48px}@media (min-width:900px){.home-today-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:stretch;gap:22px;margin-top:12px}.home-today-layout .weather-card{height:100%;margin-top:0}.home-today-layout .today{padding:0}.home-today-layout .section-heading{min-height:48px;margin-bottom:12px}.home-today-layout .today-grid{grid-template-columns:1fr 1fr;height:calc(100% - 60px)}.home-today-layout .feature-card{height:100%;min-height:0;padding:22px}.home-today-layout .feature-card h3{margin-top:26px;font-size:1.35rem}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
