*{box-sizing:border-box}body,html{margin:0;padding:0;background:#f1eadf;color:#292722;font-family:Arial,Noto Sans TC,sans-serif}body{min-height:100vh}button,input,select,textarea{font:inherit}.page{width:min(680px,100%);margin:0 auto;padding:48px 20px 80px}.hero{text-align:center;padding:20px 0 28px}.eyebrow{font-size:11px;letter-spacing:4px;color:#746f66;margin-bottom:18px}.admin-header h1,.admin-login h1,.hero h1,.success h1{font-family:"Noto Serif TC",serif;font-size:34px;margin:0 0 10px;font-weight:600}.admin-login p,.hero p,.success p{color:#746f66;margin:0}.waiting-entry{display:inline-block;margin-top:16px;padding:12px 20px;border:1px solid #725540;border-radius:12px;color:#4b3729;background:#faf7f0;text-decoration:none;font-size:16px;font-weight:700}.waiting-entry:focus-visible,.waiting-entry:hover{background:#efe5d9;outline-offset:3px}.admin-card,.card,.notice{background:#faf7f0;border:1px solid rgba(70,60,50,.12);border-radius:18px;box-shadow:0 10px 35px rgba(60,49,37,.06)}.notice{padding:26px 28px;margin-bottom:18px}.notice h2{font-family:"Noto Serif TC",serif;font-size:20px;margin:0 0 18px}.notice ul{margin:0;padding-left:20px}.notice li{margin:0 0 13px;line-height:1.7;font-size:14px}.notice li:last-child{margin-bottom:0}.notice .accent{color:#8a2e24}.form{padding:28px;display:grid;grid-gap:18px;gap:18px}.admin-card label,.field-title,.form label{font-size:13px;color:#5e5951}.admin-login label,.admin-toolbar label,.form label{display:grid;grid-gap:8px;gap:8px}.admin-card input,.admin-card select,.admin-login input,.form input,.form select,.form textarea{width:100%;border:1px solid #d8d0c4;border-radius:10px;background:#fffdf9;padding:13px 14px;color:#292722;outline:none}.admin-card input:focus,.admin-card select:focus,.admin-login input:focus,.form input:focus,.form select:focus,.form textarea:focus{border-color:#9a9083;box-shadow:0 0 0 3px rgba(120,105,90,.08)}.form textarea{min-height:90px;resize:vertical}.admin-login button,.form button,.success button{border:0;border-radius:10px;background:#292722;color:#fff;padding:14px;font-size:15px;cursor:pointer}.form button:disabled{opacity:.45;cursor:not-allowed}.calendar{background:#fffdf9;border:1px solid #d8d0c4;border-radius:12px;padding:16px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:#403b34}.month-nav{width:34px;height:34px;padding:0!important;background:transparent!important;color:#403b34!important;border:1px solid #d8d0c4!important;font-size:22px!important;line-height:1}.month-nav:disabled{opacity:.25!important;cursor:not-allowed!important}.calendar-grid,.calendar-week{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.calendar-week{margin-bottom:6px}.calendar-week span{text-align:center;font-size:12px;color:#8a8378;padding:5px 0}.day{border:1px solid transparent!important;background:transparent!important;color:#403b34!important;border-radius:9px!important;padding:10px 0!important;font-size:14px!important}.day:hover:not(:disabled){background:#eee6da!important}.day.selected{background:#292722!important;color:#fff!important}.day.closed-day{color:#c1bbb2!important;text-decoration:line-through}.day:disabled{cursor:not-allowed!important}.calendar-note{font-size:12px;color:#8a8378;text-align:center;margin-top:12px}.error{padding:11px 13px;border-radius:9px;font-size:13px;background:#f4e0dc;color:#8a2e24}.success{text-align:center;padding:48px 28px}.summary{display:grid;grid-gap:8px;gap:8px;margin:28px 0;padding:20px;background:#f1eadf;border-radius:12px}.summary b,.summary span{font-size:15px}.admin-page{width:min(1000px,100%);margin:0 auto;padding:40px 22px 70px}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.admin-header h1{margin:0}.admin-header .eyebrow{margin-bottom:8px}.admin-card{padding:22px}.admin-login{width:min(440px,100%);margin:10vh auto;display:grid;grid-gap:16px;gap:16px}.admin-login h1{margin:0}.admin-login p{margin-top:-8px;margin-bottom:6px}.admin-toolbar{display:grid;grid-template-columns:180px 1fr;grid-gap:24px;gap:24px;align-items:end;margin-bottom:18px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.admin-stats div{background:#f1eadf;border-radius:12px;padding:14px;text-align:center}.admin-stats b{display:block;font-size:28px;font-weight:600}.admin-stats span{font-size:12px;color:#746f66}.admin-message{margin:12px 0;padding:11px 13px;background:#eee6da;border-radius:9px;font-size:13px}.reservation-list{padding:0;overflow:hidden}.reservation-row{display:grid;grid-template-columns:90px 1fr 150px;grid-gap:18px;gap:18px;align-items:center;padding:18px 22px;border-bottom:1px solid rgba(70,60,50,.1)}.reservation-row:last-child{border-bottom:0}.reservation-time{font-size:24px;font-weight:600}.reservation-main{display:grid;grid-gap:4px;gap:4px}.reservation-main strong{font-size:17px}.reservation-main small,.reservation-main span{color:#746f66;font-size:13px}.reservation-row select{padding:10px;border-radius:9px;border:1px solid #d8d0c4;background:#fffdf9}.empty{text-align:center;padding:45px;color:#746f66}.secondary{border:1px solid #d8d0c4;border-radius:10px;background:#fffdf9;padding:10px 15px;color:#403b34;cursor:pointer}.settings-card{margin-bottom:18px}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.settings-heading h2{font-family:"Noto Serif TC",serif;font-size:22px;margin:5px 0 0}.settings-heading>span{font-size:12px;color:#8a8378}.settings-section{display:grid;grid-gap:12px;gap:12px}.settings-section strong{font-size:14px;color:#403b34}.settings-help{margin:0;color:#746f66;font-size:12px;line-height:1.6}.weekday-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:8px;gap:8px}.weekday-option{display:flex!important;align-items:center;justify-content:center;gap:7px;padding:12px 8px;background:#f1eadf;border:1px solid transparent;border-radius:10px;cursor:pointer}.weekday-option:has(input:checked){background:#292722;color:#fff}.weekday-option input{width:auto!important;margin:0}.settings-save{justify-self:start;border:0;border-radius:9px;background:#292722;color:#fff;padding:11px 16px;cursor:pointer}.closed-date-form button:disabled,.danger-button:disabled,.settings-save:disabled{opacity:.45;cursor:not-allowed}.settings-divider{height:1px;background:rgba(70,60,50,.1);margin:22px 0}.closed-date-form{display:grid;grid-template-columns:180px 1fr auto;grid-gap:8px;gap:8px}.closed-date-form input{min-width:0}.closed-date-form button{border:0;border-radius:9px;background:#292722;color:#fff;padding:11px 16px;cursor:pointer}.closed-date-list{display:grid;border:1px solid #d8d0c4;border-radius:10px;overflow:hidden}.closed-date-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#fffdf9;border-bottom:1px solid rgba(70,60,50,.08)}.closed-date-row:last-child{border-bottom:0}.closed-date-row>div{display:grid;grid-gap:3px;gap:3px}.closed-date-row span{font-size:12px;color:#746f66}.danger-button{border:1px solid #d8d0c4;border-radius:8px;background:#fffdf9;color:#8a2e24;padding:8px 10px;cursor:pointer}.settings-empty{padding:15px;border-radius:9px;background:#f1eadf;color:#8a8378;font-size:12px;text-align:center}.success-actions{display:grid;grid-gap:10px;gap:10px}.form .secondary,.success-actions .secondary{border:1px solid #d8d0c4;border-radius:10px;background:#fffdf9;color:#403b34;padding:14px;font-size:15px;cursor:pointer}.slot-card{margin-bottom:18px}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.slot-control{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;background:#fffdf9;border:1px solid #d8d0c4;border-radius:12px}.slot-control.slot-closed{background:#f6ece8;border-color:#dfc5bf}.slot-control-main{display:grid;grid-gap:4px;gap:4px;min-width:0}.slot-control-main strong{font-size:20px;color:#292722}.slot-control-main span{font-size:11px;color:#8a8378;white-space:nowrap}.slot-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #d8d0c4;border-radius:999px;padding:8px 10px;background:#fffdf9;color:#746f66;font-size:11px;white-space:nowrap;cursor:pointer}.slot-toggle.is-open{background:#292722;border-color:#292722;color:#fff}.slot-toggle.is-closed{color:#8a2e24;background:#fff7f4;border-color:#dfc5bf}.slot-toggle:disabled{opacity:.5;cursor:not-allowed}.slot-toggle-dot{width:7px;height:7px;border-radius:50%;background:#bdb5aa}.slot-toggle.is-open .slot-toggle-dot{background:#fff}.slot-toggle.is-closed .slot-toggle-dot{background:#b65a4d}.slot-day-closed{display:grid;grid-gap:5px;gap:5px;padding:16px;border-radius:10px;background:#f1eadf;color:#746f66}.slot-day-closed strong{color:#403b34;font-size:14px}.slot-day-closed span{font-size:12px}.slot-help{margin-top:12px}.waiting-status{text-align:center;padding:42px 28px}.queue-number{font-size:52px;font-weight:700;letter-spacing:3px;margin:20px 0 8px}.queue-status{font-size:18px;color:#746f66}.position-box{display:grid;grid-gap:7px;gap:7px;margin:24px 0;padding:22px;background:#f1eadf;border-radius:14px}.position-box b{font-size:26px}.position-box span{font-size:13px;color:#746f66}.waiting-status.ready{border-color:#b9a08b}.waiting-status.ready .queue-status{color:#8a2e24;font-weight:600}.ready-message{padding:13px 15px;border-radius:10px;background:#f4e0dc;color:#8a2e24!important}.waiting-note{font-size:12px;color:#8a8378;line-height:1.6;margin:0}.waiting-status .summary{margin:18px 0}.waiting-status .secondary{width:100%}@media(max-width:700px){.admin-page{padding:26px 14px 60px}.admin-toolbar{grid-template-columns:1fr}.admin-stats{grid-template-columns:repeat(2,1fr)}.reservation-row{grid-template-columns:70px 1fr}.reservation-row select{grid-column:1/-1}.reservation-time{font-size:21px}.settings-heading{display:grid;grid-gap:6px;gap:6px}.weekday-grid{grid-template-columns:repeat(4,1fr)}.closed-date-form{grid-template-columns:1fr}.closed-date-form button{width:100%}.slot-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.page{padding:28px 14px 60px}.hero h1{font-size:30px}.form,.notice{padding:22px}.notice li{font-size:13px}.calendar{padding:12px}.day{padding:9px 0!important}.slot-grid{grid-template-columns:1fr}.slot-control{padding:13px 12px}.queue-number{font-size:44px}}.incident-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:18px 0}.incident-form input,.incident-form select{min-width:0;padding:12px;border:1px solid #dcd2c7;border-radius:9px;background:#fff;font:inherit}.incident-form button{grid-column:1/-1}.incident-list{display:grid;grid-gap:9px;gap:9px}.incident-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:13px;border:1px solid #e8e0d7;border-radius:10px}.incident-row>div{display:grid;grid-gap:4px;gap:4px;min-width:0}.incident-row span{font-size:13px;color:#746a61}.incident-row b{white-space:nowrap;font-size:13px}.incident-blocked{color:#a23d3d}.incident-watch{color:#9a6b32}.incident-row button{white-space:nowrap}@media(max-width:680px){.incident-form{grid-template-columns:1fr}.incident-row{flex-wrap:wrap}.incident-row>div{flex-basis:100%}}.vip-page{text-align:center}.vip-card{padding:32px 26px;display:grid;grid-gap:16px;gap:16px}.vip-card h2{font-family:"Noto Serif TC",serif;margin:0;font-size:25px}.vip-card p{margin:0;line-height:1.7}.vip-card p,.vip-card small{color:#746f66}.vip-button{display:block;background:#292722;color:white;padding:14px;border-radius:10px;text-decoration:none;font-weight:700}.vip-status{margin:12px 0!important}.vip-logout{border:0;background:transparent;color:#746f66;text-decoration:underline;cursor:pointer}.vip-back{display:inline-block;margin-top:22px;color:#403b34}.vip-admin{margin-bottom:18px}.vip-admin-options{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}.vip-admin-options button{cursor:pointer;border:1px solid #d8d0c4;border-radius:9px;padding:11px 15px}.vip-admin-options .vip-selected{background:#292722;color:white}.vip-admin h3{font-size:16px}.vip-member{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e6ddd3}.vip-member>div{display:grid;grid-gap:5px;gap:5px}.vip-member small{color:#746f66}.vip-member button{white-space:nowrap}.vip-binding-form{display:grid;grid-gap:16px;gap:16px;margin-top:24px;text-align:left}.vip-binding-form label{display:grid;grid-gap:8px;gap:8px}.vip-binding-form input{width:100%;box-sizing:border-box}.vip-binding-form .vip-button{border:0;cursor:pointer;font:inherit}.vip-admin details{margin-top:24px}.vip-admin summary{cursor:pointer}.vip-member small{overflow-wrap:anywhere}.vip-member button:disabled{opacity:.5;cursor:not-allowed}.live-seating{margin:0 0 18px;padding:13px 2px 12px;border-bottom:1px solid #d8d1c5;text-align:right;color:#373c33;--live-tone:#969c97;--live-halo:rgba(150,156,151,.25)}.live-line{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.live-line h2{margin:0;font-family:"Noto Serif TC",serif;font-size:14px;font-weight:500;letter-spacing:1.5px;flex-shrink:0}.live-status{display:flex;align-items:center;gap:9px;font-size:14px;line-height:1.5;letter-spacing:.5px}.live-dot{flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:var(--live-tone);box-shadow:0 0 0 2px #fffdf7,0 0 0 4px var(--live-halo),0 0 12px 1px var(--live-halo)}.live-caption{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:3px 14px;margin-top:7px;font-size:10px;line-height:1.5;color:#817e75}.live-green{--live-tone:#38c66c;--live-halo:rgba(56,198,108,.27)}.live-orange{--live-tone:#ffb032;--live-halo:rgba(255,176,50,.29)}.live-red{--live-tone:#f3665f;--live-halo:rgba(243,102,95,.29)}@media(max-width:360px){.live-line{gap:6px}.live-line h2,.live-status{font-size:13px}}.vip-admin-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:420px}.vip-admin-options .seating-option{display:flex;align-items:center;gap:10px;text-align:left;min-height:44px;padding:10px 14px;border-radius:8px;border:1px solid #ddd8cf;background:#fcfaf5;color:#4c463f;font-size:14px;font-weight:400}.vip-admin-options .seating-option.is-selected{background:#ece9e1;border-color:#92867a;font-weight:500}.seating-dot{width:12px;height:12px;flex:0 0 12px;border-radius:50%;background:var(--seat-tone,#969c97);box-shadow:0 0 0 2px #fffdf7,0 0 9px 2px var(--seat-halo,rgba(150,156,151,.25))}.seating-available{--seat-tone:#38c66c;--seat-halo:rgba(56,198,108,.36)}.seating-busy{--seat-tone:#ffb032;--seat-halo:rgba(255,176,50,.36)}.seating-full{--seat-tone:#f3665f;--seat-halo:rgba(243,102,95,.36)}.seating-option:disabled{opacity:.55;cursor:wait}.seating-option:focus-visible{outline:2px solid #92867a;outline-offset:2px}.vip-member-pass{padding:26px 24px;text-align:left;border-radius:14px;background:linear-gradient(135deg,#343b32,#242a25);color:#f8f2e7;overflow-wrap:anywhere}.vip-pass-footer,.vip-pass-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.vip-pass-top{margin-bottom:28px;font-size:11px;letter-spacing:3px}.vip-pass-badge{border:1px solid #aaa28b;border-radius:30px;padding:6px 10px;letter-spacing:1px;white-space:nowrap}.vip-member-pass small{color:#c9c5b8}.vip-member-pass h2{margin:8px 0 12px;font-size:27px}.vip-member-pass p{color:#d1cabb;font-size:13px;letter-spacing:2px}.vip-pass-footer{margin-top:28px;padding-top:15px;border-top:1px solid #62685a;font-size:11px;color:#d1cabb}.vip-live-detail{margin:4px 0 0;padding:18px 0}.vip-live-detail .live-line{align-items:flex-end;gap:8px}.vip-live-detail .live-line h2{font-size:16px}.vip-live-detail .live-status{font-size:18px;font-weight:600}.vip-card .vip-live-description{margin-top:12px;color:#403b34;font-size:16px}.vip-card .vip-live-note{margin-top:12px;color:#746f66;font-size:11px}.vip-member-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.vip-member-actions .vip-button{padding:18px 10px;font-size:16px}.vip-member-actions span{display:block;font-size:11px;font-weight:400;margin-top:7px}.vip-member-actions .vip-action-light{background:#eee8dd;color:#403b34;border:1px solid #d8d0c4}.vip-visit-note{text-align:left;padding:16px;background:#f1eadf;border-radius:10px}.vip-visit-note h3{font-size:14px;margin:0 0 8px}.vip-visit-note p{font-size:12px}.vip-member-actions a:focus-visible{outline:2px solid #725540;outline-offset:3px}@media(max-width:520px){.vip-card{padding:20px 16px}.vip-member-pass{padding:22px 18px}}.vip-reservations{text-align:left;margin:6px 0}.vip-reservations-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.vip-reservations-heading h3{margin:0;font-size:18px;font-family:"Noto Serif TC",serif}.vip-reservations-heading>span{font-size:11px;color:#817e75}.vip-reservation{padding:18px;border:1px solid #d8d0c4;border-radius:12px;background:#fffdf8;margin-top:10px}.vip-reservation:first-of-type{border-color:#a6ad99;background:#f3f4ed}.vip-reservation-bottom,.vip-reservation-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.vip-reservation-top{font-size:12px;color:#676d5d;margin-bottom:13px}.vip-reservation-status{background:#e5e9dd;border-radius:20px;padding:5px 9px;white-space:nowrap}.vip-reservation-date{display:block;font-size:20px;font-weight:600;line-height:1.5}.vip-reservation-bottom{margin-top:12px}.vip-reservation-bottom p{font-size:14px;overflow-wrap:anywhere}.vip-cancel-button{border:1px solid #cfc5b8;background:transparent;color:#665b4e;border-radius:8px;padding:10px 12px;min-height:44px;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer}.vip-cancel-confirm{margin-top:16px;padding-top:16px;border-top:1px solid #d8d0c4}.vip-cancel-confirm h4{font-size:15px;margin:0 0 8px}.vip-cancel-confirm p{font-size:12px}.vip-cancel-confirm>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:12px}.vip-cancel-confirm button{font:inherit;font-size:13px;border-radius:8px;padding:12px 8px;min-height:44px;cursor:pointer}.vip-confirm-cancel{border:1px solid #8b6253;background:#8b6253;color:#fff}.vip-cancel-button:disabled,.vip-cancel-confirm button:disabled{opacity:.5;cursor:wait}.vip-cancel-button:focus-visible,.vip-cancel-confirm button:focus-visible{outline:2px solid #725540;outline-offset:3px}.vip-reservations-empty{padding:22px 14px;background:#f3efe6;border-radius:10px;text-align:center}.vip-reservations-empty p{font-size:14px}.vip-reservations-empty small{display:block;font-size:11px;margin-top:8px}.vip-card .vip-reservation-message{font-size:13px;color:#52634b;margin-bottom:12px}.vip-card .vip-refresh-warning{font-size:12px;color:#8b6253}.vip-prefill-note{font-size:12px;color:#66715c;margin:0;line-height:1.7}.vip-prefill-note a{color:inherit}@media(max-width:360px){.vip-reservation{padding:14px}.vip-reservation-date{font-size:18px}.vip-reservations-heading>span{font-size:10px}}.waiting-cancel{display:grid;grid-gap:10px;gap:10px;margin:18px 0}.waiting-cancel .secondary{color:#8a2e24}.waiting-cancel button:disabled{opacity:.5;cursor:wait}.manage-entry{display:block;text-align:center;text-decoration:none;padding:14px;font-size:15px}.manage-form{margin-bottom:16px;grid-template-columns:minmax(0,1fr)}.manage-form input[type=date],.manage-form label{min-width:0;max-width:100%}.manage-form h2,.manage-matches h2{margin:0;font-family:"Noto Serif TC",serif;font-size:22px}.manage-form .manage-help{margin:0;font-size:13px;color:#746f66;line-height:1.6}.manage-matches{display:grid;grid-gap:10px;gap:10px;padding:24px;margin-bottom:16px}.manage-matches .secondary{text-align:left}.vip-reservation-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.vip-reservation-actions a{display:inline-flex;align-items:center;text-decoration:none}@media(max-width:520px){.vip-reservation-bottom{align-items:flex-start}.vip-reservation-actions{max-width:125px}}.duplicate-booking-notice{padding:16px;border:1px solid #d8cbb4;border-radius:12px;background:#f7f2e7;color:#514432;line-height:1.6}.duplicate-booking-notice strong{font-size:15px}.duplicate-booking-notice p{margin:6px 0 12px;font-size:14px}.duplicate-manage-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border-radius:8px;background:#514b40;color:#fff;text-decoration:none;font-size:14px;font-weight:600}.duplicate-manage-link:focus-visible{outline:3px solid #b08d56;outline-offset:3px}.waiting-push-card{text-align:left;padding:16px;margin:20px 0;border:1px solid #d8cbb5;border-radius:12px;background:#f7f3e9}.waiting-push-card h2{font-size:17px;margin:0 0 8px}.waiting-push-card li,.waiting-push-card p{font-size:13px;line-height:1.7;color:#665a49}.waiting-push-card ol{padding-left:22px;margin:10px 0 16px}.waiting-push-card button{width:100%;min-height:44px}.waiting-push-card .waiting-note{margin-bottom:0}.booking-line-entry{padding:22px 24px;margin-bottom:18px}.booking-line-heading{display:flex;gap:12px;align-items:flex-start}.booking-line-badge{flex:none;background:#187b48;color:#fff;border-radius:9px;padding:9px 7px;font-size:12px;font-weight:800;letter-spacing:.4px}.booking-line-heading h2{font-size:18px;margin:0 0 6px}.booking-line-heading p,.booking-line-help{font-size:13px;line-height:1.65;color:#746f66;margin:0}.booking-line-button{display:block;text-align:center;background:#187b48;color:#fff;padding:13px 16px;margin-top:16px;border-radius:11px;font-size:16px;font-weight:700;text-decoration:none}.booking-line-button:focus-visible,.booking-line-button:hover{background:#126139;outline-offset:3px}.booking-line-help{margin-top:12px}.booking-line-account{font-size:14px;margin:14px 0 0;color:#386149}.booking-line-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:13px;font-size:13px}.booking-line-links a{color:#725540;text-underline-offset:3px}.booking-notification-choice{border:0;padding:0;margin:16px 0 0;font-size:13px;color:#5e5951}.booking-notification-choice legend{margin-bottom:9px}.booking-notification-choice>div{display:flex;gap:12px 20px;flex-wrap:wrap}.booking-notification-choice label{display:flex;gap:7px;align-items:center}.booking-notification-choice input{width:16px;height:16px;margin:0;accent-color:#187b48}.booking-line-confirmation{margin-top:14px!important;color:#187b48!important;font-size:14px}#reservation-form{scroll-margin-top:16px}@media(max-width:420px){.booking-line-entry{padding:19px 18px}.booking-line-heading h2{font-size:17px}}.booking-method-panel{margin:2px 0 8px;padding:18px;border:1px solid #e5e4dc;border-radius:14px;background:#fafbf8}.booking-method-panel .booking-line-heading h2{font-size:17px}.booking-method-panel .booking-line-heading p{font-size:13px}.booking-method-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.booking-method-actions .booking-line-button,.booking-phone-button{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:10px 8px;margin:0;border-radius:10px;font-size:14px;font-weight:700;text-decoration:none}.booking-phone-button{color:#34443b;border:1px solid #bfc9bf;background:#fff}.booking-method-disabled{opacity:.45}#reservation-contact{scroll-margin-top:20px}@media (max-width:420px){.booking-method-panel{padding:16px 12px}.booking-method-actions{gap:8px}.booking-method-actions .booking-line-button,.booking-phone-button{font-size:13px}}.line-entry-card{max-width:460px;margin:8vh auto;padding:28px}.line-entry-card h1{font-size:24px}.line-entry-card p{line-height:1.7}.line-entry-card .secondary{display:block;width:100%;margin-top:14px;padding:12px;text-align:center;border-radius:10px}.line-launch-help{margin-top:16px;padding-top:14px;border-top:1px solid #e5e2d9;font-size:13px;color:#746f66}.line-launch-help summary{cursor:pointer;color:#386149;font-weight:700}.line-launch-help p{margin:12px 0 0}.form .line-friend-check{display:inline-block;width:auto;min-height:36px;margin:0 0 0 10px;padding:7px 10px;border:1px solid #c4cdbf;border-radius:8px;background:#fff;color:#34443b;font-size:13px;box-shadow:none}.manage-account-summary{padding:22px}.success .vip-back{display:block;margin:14px 0}.booking-choice-field{display:grid;grid-gap:10px;gap:10px}.booking-guests-grid,.booking-times-grid{display:grid;grid-gap:8px;gap:8px;min-width:0}.booking-guests-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.booking-times-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form .booking-option{display:flex;align-items:center;justify-content:center;min-width:0;min-height:46px;padding:11px 6px;border:1px solid #d8d0c4;border-radius:9px;background:#fffdf9;color:#403b34;font-size:14px;line-height:1.4;cursor:pointer}.form .booking-option:hover:not(:disabled){background:#eee6da;border-color:#9a9083}.form .booking-option.is-selected{background:#292722;border-color:#292722;color:#fff;font-weight:600}.form .booking-option.is-selected:hover:not(:disabled){background:#403b34}.form .booking-option:focus-visible{outline:2px solid #725540;outline-offset:3px}.form .booking-time-option{flex-direction:column;gap:2px;min-height:48px;padding:6px}.booking-time-label{font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.booking-option-note{font-size:11px;line-height:1.4;overflow-wrap:anywhere}.form .booking-option:disabled{opacity:1;background:#f1eee8;border-color:#e5dfd5;color:#a29b8f;cursor:not-allowed}@media(max-width:360px){.booking-guests-grid,.booking-times-grid{gap:6px}.form .booking-option{font-size:13px}.booking-time-label{font-size:15px}.booking-option-note{font-size:10px}}