/* Drawer ownership migrated from styles.css; late refinements remain last. */
.drawer-edge{position:fixed;z-index:29;inset:0 auto 0 0;width:28px;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.drawer-open .drawer-edge{pointer-events:none}
.drawer { position:fixed; z-index:31; inset:0 auto 0 0; width:min(86vw,390px); padding:calc(34px + env(safe-area-inset-top)) 24px 24px; background:rgba(var(--glass-rgb),.88); backdrop-filter:blur(34px); transform:translateX(-104%); transition:transform .32s cubic-bezier(.2,.8,.2,1); box-shadow:30px 0 80px rgba(0,0,0,.25); }.drawer.is-open{transform:none}.drawer__people{display:flex;align-items:center;gap:12px}.drawer__people div:last-child{display:flex;flex-direction:column}.drawer__people small{color:var(--muted)}.drawer__close{position:absolute;right:18px;top:calc(20px + env(safe-area-inset-top));border:0;background:none;font-size:30px}.drawer nav{display:grid;margin-top:50px}.drawer nav button{text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:18px 2px}.drawer nav span{font:500 28px "Cormorant Garamond",serif}.drawer nav small{display:block;color:var(--muted);margin-top:5px}.drawer>p{position:absolute;bottom:24px;color:var(--muted);font-size:10px}
.drawer{overflow:hidden;background:linear-gradient(160deg,rgba(var(--glass-rgb),.94),rgba(var(--glass-rgb),.78));border-right:1px solid var(--line)}.drawer:before{content:"";position:absolute;left:-90px;top:70px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent-2) 16%,transparent),transparent 68%);pointer-events:none}.drawer__kicker{position:relative;display:block;padding:9px 0 18px;color:var(--accent);font:8px system-ui;letter-spacing:.24em}.drawer__tide-mark{position:relative;display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:9px;margin:17px 0 10px}.drawer__tide-mark>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--accent);font:italic 14px "Cormorant Garamond",serif;background:rgba(var(--glass-rgb),.22)}.drawer__tide-mark svg{width:100%;overflow:visible}.drawer__tide-mark path{fill:none;stroke:var(--accent);stroke-width:1;opacity:.65}.drawer__tide-mark path+path{stroke:var(--accent-2);stroke-dasharray:3 4}.drawer__names{display:grid;justify-items:center;gap:3px;padding-bottom:25px;border-bottom:1px solid var(--line)}.drawer__names strong{font:italic 23px "Cormorant Garamond","Noto Serif SC",serif}.drawer__names i{color:var(--muted);font:normal 9px "Noto Serif SC",serif}.drawer nav{position:relative;margin-top:16px}.drawer nav button{display:grid;grid-template-columns:1fr auto;padding:12px 3px}.drawer nav button:after{content:"·";align-self:center;color:var(--accent)}.drawer nav span{font-size:22px}.drawer nav small{font:9px "Noto Serif SC",serif}.drawer>p{letter-spacing:.16em;opacity:.55}
.drawer.is-dragging{transition:none!important;will-change:transform;touch-action:none}
.drawer{padding-inline:27px!important}.drawer__names{padding-bottom:18px!important}.drawer__rooms{display:block!important;margin-top:12px!important;overflow:auto;max-height:calc(100dvh - 250px)}.drawer__rooms section{padding:15px 0 12px;border-top:1px solid var(--line)}.drawer__rooms section>small{display:block;margin:0 0 9px!important;color:var(--muted);font:7px/1.5 system-ui,sans-serif!important;letter-spacing:.19em}.drawer__rooms button{display:grid!important;grid-template-columns:26px 1fr!important;align-items:center!important;width:100%;padding:9px 3px!important;border:0!important;background:none!important;color:var(--ink);text-align:left}.drawer__rooms button::after{display:none!important}.drawer__rooms button i{display:grid;place-items:center;width:21px;height:21px;color:var(--accent);font:normal 13px/1 "Cormorant Garamond",serif}.drawer__rooms button span{font:italic 17px/1.2 "Cormorant Garamond","Noto Serif SC",serif!important}.drawer__rooms button:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent)!important}.drawer__rooms button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.drawer>p{font-size:7px!important}
@media(prefers-reduced-motion:reduce){.drawer__rooms button{transition:none!important}}
#openDrawer{width:34px!important;height:34px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:transparent!important;font-size:0!important;overflow:visible}#openDrawer::before,#openDrawer::after{left:7px!important;width:20px!important;height:1px!important;background:color-mix(in srgb,var(--ink) 86%,transparent)!important;box-shadow:0 6px 0 color-mix(in srgb,var(--ink) 86%,transparent)!important}#openDrawer::before{top:10px!important}#openDrawer::after{top:22px!important;box-shadow:none!important;width:15px!important}#openDrawer:hover{transform:translateX(1px)!important;background:transparent!important;box-shadow:none!important}#openDrawer:focus-visible{outline:1px solid var(--accent);outline-offset:3px}
.drawer__kicker{padding-top:4px!important;padding-bottom:18px!important}.drawer__rooms{margin-top:18px!important;max-height:calc(100dvh - 126px)!important}.drawer__rooms section:first-child{border-top-color:color-mix(in srgb,var(--accent) 34%,var(--line))}

/* Shared mobile drawer refinements extracted from final-polish.css. */

/* Mobile drawer: preserve a clear strip of the current page without changing its rhythm. */
@media(max-width:600px){
  .drawer{width:clamp(248px,72vw,300px)!important}
}
/* DRAWER SCROLLBAR GUARD — local, low-risk compatibility rule. */
.drawer__rooms{scrollbar-width:none;-ms-overflow-style:none}.drawer__rooms::-webkit-scrollbar{display:none}
