:root{color-scheme:dark;--bg:#101110;--gold:#d6b879;--text:#f1ede5;--muted:#a8a59c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;-webkit-tap-highlight-color:transparent}.page{max-width:500px;margin:auto;padding:34px 22px max(24px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 0,rgba(164,129,63,.09),transparent 43%)}.brand{text-align:center;padding:0 0 32px}.brand-line{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:16px}.brand-line span{height:1px;width:39px;background:#665436}.brand-line svg{width:22px;height:26px;fill:var(--gold)}.eyebrow{font-size:9px;letter-spacing:2.6px;font-weight:600;color:var(--gold);margin:0 0 12px}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:1px;font-size:37px;line-height:1.1;margin:0;white-space:nowrap}h1 span{color:var(--gold)}.brand-ko{font-size:10px;letter-spacing:5px;color:var(--muted);margin:12px 0 0;padding-left:5px}.services{border-top:1px solid #353127;padding-top:25px}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:9px}h2{font-size:20px;font-weight:600;letter-spacing:-.8px;margin:0}.section-mark{color:var(--gold);font-size:27px;font-weight:300}.intro{font-size:12px;color:var(--muted);margin:10px 0 22px}.menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.menu-item{font:inherit;appearance:none;text-decoration:none;color:var(--text);background:linear-gradient(130deg,#20211e,#191a18);border:1px solid #3d392e;border-radius:12px;min-height:106px;padding:14px 10px 12px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;cursor:pointer;justify-content:center;gap:10px;min-width:0}.menu-item svg{width:24px;height:24px;stroke:var(--gold);stroke-width:1.55;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.menu-item .label{font-size:13px;line-height:1.5;font-weight:600;letter-spacing:-.45px;overflow-wrap:anywhere}.menu-item .arrow{position:absolute;right:12px;top:14px;color:#777263;font-size:14px}.menu-item .pending{position:absolute;right:10px;bottom:9px;font-size:8px;color:#aaa18c;letter-spacing:0}.menu-item:focus-visible{outline:3px solid #f5d793;outline-offset:3px}.menu-item:active{background:#2d2b23}.menu-item.reservation{grid-column:1/-1;min-height:82px;margin-top:8px;flex-direction:row;align-items:center;justify-content:flex-start;gap:13px;padding:18px 16px;background:linear-gradient(110deg,#ebd09a,#cba561);color:#1c1a14;border-color:#e2c489}.reservation svg{stroke:#282217;width:26px;height:26px}.reservation .label{font-size:15px;font-weight:700;padding-right:22px}.reservation .arrow{color:#3a3020;top:24px;font-size:22px}.reservation .pending{color:#514328;bottom:7px;right:15px}.reservation-note{color:#aaa397;font-size:10px;text-align:center;line-height:1.6;margin:13px 0 0}footer{text-align:center;padding-top:29px}footer .footer-rule{width:25px;height:1px;background:#786340;margin:0 auto 16px}footer p{font-size:8px;letter-spacing:2px;color:#b3a58a;margin:0 0 8px}footer span{display:block;font-size:10px;color:#928e83}footer small{display:block;font-size:8px;color:#79776f;letter-spacing:2px;margin-top:17px}.toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);border:1px solid #74613b;border-radius:12px;background:#2a271ff5;color:#fff0d2;padding:14px 18px;font-size:13px;line-height:1.6;box-shadow:0 8px 30px #0008;opacity:0;pointer-events:none}.toast.visible{opacity:1}.fallback{font-size:14px;color:var(--gold)}@media(min-width:410px){.menu-item{padding-left:15px}.menu-item .label{font-size:14px}.page{padding-left:26px;padding-right:26px}}@media(max-width:350px){.page{padding-left:16px;padding-right:16px}h1{font-size:31px}.menu-item .label{font-size:11.5px}.reservation .label{font-size:13px}}@media(prefers-reduced-motion:no-preference){.menu-item{transition:background .15s,border-color .15s}.menu-item:hover{border-color:#a38954}}

#wifi-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:390px;margin:auto;padding:24px;border:1px solid #897044;border-radius:18px;background:#1b1c19;color:var(--text);box-shadow:0 20px 80px #0009;max-height:calc(100dvh - 32px);overflow:auto}#wifi-dialog::backdrop{background:#000b}.wifi-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.wifi-head h2{font-size:20px}#wifi-close{font:inherit;font-size:25px;width:44px;height:44px;flex-shrink:0;border:1px solid #59503d;border-radius:50%;color:var(--gold);background:transparent;cursor:pointer}#wifi-help,.wifi-note{font-size:13px;line-height:1.7;color:#bcb6a9}#wifi-dialog label{display:block;color:var(--gold);font-size:12px;margin:20px 0 9px}#wifi-dialog input{display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid #534935;border-radius:8px;background:#101110;color:#f5efe3;font:inherit;font-size:18px;padding:13px 12px;user-select:text;-webkit-user-select:text}.wifi-copy{width:100%;min-height:50px;margin-top:20px;border:0;border-radius:9px;background:var(--gold);color:#201b12;font:inherit;font-size:15px;font-weight:700;cursor:pointer}#wifi-copy-status{font-size:13px;color:#e9cd92;line-height:1.7;min-height:22px;margin-bottom:0}#wifi-dialog button:focus-visible,#wifi-dialog input:focus-visible{outline:3px solid #f5d793;outline-offset:3px}

/* 예약 CTA 전체가 하나의 터치 영역으로 동작합니다. */
.menu-item.reservation{position:relative;z-index:1;pointer-events:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none}.menu-item.reservation>*{pointer-events:none}

/* Five-row service menu */
.page{padding-top:24px}.brand{padding-bottom:22px}.brand-line{margin-bottom:10px}.brand-ko{margin-top:9px}.services{padding-top:18px}.intro{margin-bottom:16px}.menu{gap:10px}.menu-item{min-height:72px;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:16px}.menu-item .arrow{top:24px}.menu-item.wide{grid-column:1/-1;min-height:66px}.menu-item.wide .arrow{top:22px}.menu-item.reservation{margin-top:0;min-height:70px}.reservation .arrow{top:21px}footer{padding-top:22px}
#service-dialog{width:calc(100% - 32px);max-width:440px;max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:22px;border:1px solid #897044;border-radius:18px;background:#1b1c19;color:var(--text);box-shadow:0 20px 80px #0009}#service-dialog::backdrop{background:#000b}.group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.group-close{width:44px;height:44px;border:1px solid #59503d;border-radius:50%;background:transparent;color:var(--gold);font:inherit;font-size:25px;cursor:pointer}.group-menu{grid-template-columns:1fr}.group-menu .menu-item{min-height:72px}.group-close:focus-visible{outline:3px solid #f5d793;outline-offset:3px}

.table-bar{display:flex;align-items:center;gap:14px;margin:0 0 16px}.table-bar label{font-size:13px;color:var(--gold)}.table-bar select{flex:1;min-width:0;min-height:44px;padding:10px 12px;background:#1b1c19;color:var(--text);border:1px solid #74613b;border-radius:9px;font:inherit;font-size:14px}.table-bar select:focus-visible{outline:3px solid #f5d793;outline-offset:2px}

.bank-panel p{font-size:14px;line-height:1.7;color:var(--text)}.bank-panel .bank-name{font-size:20px;font-weight:700;color:var(--gold);margin-top:0}.bank-panel label{display:block;font-size:12px;color:var(--muted);margin:20px 0 8px}.bank-panel input{box-sizing:border-box;width:100%;min-width:0;padding:14px 12px;border:1px solid #74613b;border-radius:9px;background:#101110;color:#fff;font:inherit;font-size:22px;letter-spacing:1px}.bank-panel .bank-status{font-size:13px;color:var(--gold);min-height:22px}

.table-bar>span,.fixed-table{font-size:14px;color:var(--gold);font-weight:600}.fixed-table{margin:0 0 22px}

.menu-item{align-items:center;text-align:center}.menu-item .label{white-space:pre-line;text-align:center}.menu-item.reservation{justify-content:center}.section-heading{justify-content:center;position:relative;text-align:center}.section-mark{position:absolute;right:0}.group-head{position:relative;justify-content:center;min-height:44px;padding:0 44px}.group-head h2{text-align:center;white-space:pre-line}.group-close{position:absolute;right:0}.services h2,h1{text-align:center}
.menu-item.wide{justify-content:center;padding-left:52px;padding-right:52px}.menu-item.wide .label{width:100%;text-align:center}.menu-item.wide>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%)}

.legal-footer-link{display:inline-flex;align-items:center;justify-content:center;margin:15px auto 18px;padding:10px 24px;border:1px solid #b99860;border-radius:999px;color:#e6c996;text-decoration:none;font-size:14px;letter-spacing:.03em}.legal-footer-link:hover,.legal-footer-link:focus-visible{background:#b99860;color:#111}
