:root{--color-bg:#f4f6fa;--color-surface:#fff;--color-surface-2:#eef1f6;--color-border:#e0e4ec;--color-primary:#4f8cff;--color-primary-dark:#3567d6;--color-accent:#e08e00;--color-success:#1fa85c;--color-danger:#e6493f;--color-text:#1a1d24;--color-text-dim:#6b7280;--shadow-card:0 1px 2px #1018280a, 0 1px 3px #1018280f;--radius:20px;--radius-sm:12px;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--color-bg);height:100%;color:var(--color-text);margin:0}body{-webkit-user-select:none;user-select:none;overflow:hidden}.kiosk-screen{-webkit-overflow-scrolling:touch;flex-direction:column;width:100vw;height:100dvh;padding:22px 36px 24px;display:flex;overflow-y:auto}.kiosk-inner{flex-direction:column;flex:1;width:100%;max-width:1200px;min-height:0;margin:0 auto;display:flex}.kiosk-header{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.kiosk-header .brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:22px;font-weight:700;display:flex}.kiosk-header .brand .dot{background:var(--color-primary);width:10px;height:10px;box-shadow:0 0 12px var(--color-primary);border-radius:50%}.kiosk-header .clock{font-variant-numeric:tabular-nums;color:var(--color-text-dim);font-size:16px}.back-btn{color:#1a1d24;cursor:pointer;background:#c3cbdb;border:1px solid #a7b1c6;border-radius:999px;align-items:center;gap:6px;padding:12px 22px;font-size:15px;display:inline-flex}.step-indicator{flex-shrink:0;gap:8px;margin-bottom:16px;display:flex}.step-indicator .step{background:var(--color-surface-2);border-radius:4px;flex:1;height:6px}.step-indicator .step.active{background:var(--color-primary)}.step-indicator .step.done{background:var(--color-primary-dark)}.kiosk-body{flex-direction:column;flex:1;min-height:0;display:flex}.title-block{margin-bottom:16px}.title-block h1{letter-spacing:-.02em;margin:0 0 6px;font-size:27px;font-weight:800}.title-block p{color:var(--color-text-dim);margin:0;font-size:15px}.big-button{border-radius:var(--radius);background:var(--color-primary);color:#fff;cursor:pointer;border:none;width:100%;padding:20px;font-size:20px;font-weight:700;transition:transform 80ms,background .15s}.big-button:active{background:var(--color-primary-dark);transform:scale(.98)}.big-button:disabled{background:var(--color-surface-2);color:var(--color-text-dim);cursor:not-allowed}.secondary-button{border-radius:var(--radius);border:1px solid var(--color-border);width:100%;color:var(--color-text);cursor:pointer;background:0 0;padding:22px;font-size:18px;font-weight:600}.keypad{grid-template-columns:repeat(3,1fr);gap:14px;max-width:420px;margin:0 auto;display:grid}.keypad button{aspect-ratio:1.4;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-card);font-size:26px;font-weight:700}.keypad button:active{background:var(--color-surface-2)}.keypad button.wide{color:var(--color-text-dim);grid-column:span 1;font-size:16px}.phone-display{text-align:center;letter-spacing:.08em;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);justify-content:center;align-items:center;min-height:88px;margin-bottom:28px;padding:24px;font-size:40px;font-weight:800;display:flex}.phone-display.placeholder{color:var(--color-text-dim);font-size:22px;font-weight:500}.otp-boxes{justify-content:center;gap:14px;margin-bottom:28px;display:flex}.otp-boxes .box{border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border);width:56px;height:68px;box-shadow:var(--shadow-card);justify-content:center;align-items:center;font-size:28px;font-weight:800;display:flex}.otp-boxes .box.filled{border-color:var(--color-primary)}.seat-zone-title{color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.06em;margin:12px 0 7px;font-size:15px;font-weight:700}.seat-zone-title:first-child{margin-top:0}.seat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.seat-card{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:left;cursor:pointer;color:var(--color-text);padding:18px 16px;position:relative}.seat-card .num{margin-bottom:4px;font-size:24px;font-weight:800}.seat-card .type{color:var(--color-text-dim);margin-bottom:10px;font-size:13px}.seat-card .price{color:var(--color-accent);font-size:15px;font-weight:700}.seat-card .status-dot{border-radius:50%;width:10px;height:10px;position:absolute;top:16px;right:16px}.seat-card.selected{border-color:var(--color-primary);background:#4f8cff1f}.seat-card.disabled{opacity:.4;cursor:not-allowed}.status-idle{background:var(--color-success)}.status-in_use,.status-error{background:var(--color-danger)}.status-offline{background:var(--color-text-dim)}.slot-row{flex-wrap:wrap;gap:12px;display:flex}.slot-row button{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);min-width:84px;color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-card);flex:calc(25% - 12px);padding:13px;font-size:17px;font-weight:700}.slot-row button.selected{border-color:var(--color-primary);background:#4f8cff1f}.time-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.time-grid button{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-card);padding:14px 6px;font-size:15px;font-weight:700}.time-grid button.selected{border-color:var(--color-primary);background:#4f8cff1f}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:var(--radius);margin-top:20px;padding:20px 22px}.summary-row{color:var(--color-text-dim);justify-content:space-between;padding:8px 0;font-size:16px;display:flex}.summary-row.total{border-top:1px solid var(--color-border);color:var(--color-text);margin-top:6px;padding-top:14px;font-size:20px;font-weight:800}.footer-actions{flex-shrink:0;gap:14px;padding-top:14px;display:flex}.footer-actions .big-button{flex:2}.footer-actions .secondary-button{flex:1}.pay-method-list{flex-direction:column;gap:14px;display:flex}.pay-method-card{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;box-shadow:var(--shadow-card);align-items:center;gap:16px;padding:20px 22px;display:flex}.pay-method-card.selected{border-color:var(--color-primary);background:#4f8cff1f}.pay-method-card .icon{font-size:26px}.pay-method-card .label{font-size:18px;font-weight:700}.center-stage{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;display:flex}.spinner{border:6px solid var(--color-surface-2);border-top-color:var(--color-primary);border-radius:50%;width:64px;height:64px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-badge{width:88px;height:88px;color:var(--color-success);background:#2ecc7126;border-radius:50%;justify-content:center;align-items:center;font-size:44px;display:flex}.qr-box{border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fff;padding:24px}.welcome-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.welcome-hero h1{letter-spacing:-.03em;text-wrap:balance;max-width:640px;margin:0;font-size:36px;font-weight:900}.welcome-hero p{color:var(--color-text-dim);margin:0 0 20px;font-size:18px}.welcome-hero .big-button{max-width:380px}@media (width>=700px){.welcome-hero h1{font-size:44px}}.idle-warning{z-index:50;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.idle-warning .card{background:var(--color-surface);border-radius:var(--radius);text-align:center;max-width:420px;padding:40px;box-shadow:0 8px 24px #1018282e}.idle-warning h2{margin:0 0 12px;font-size:24px}.idle-warning p{color:var(--color-text-dim);margin-bottom:24px}.error-text{color:var(--color-danger);text-align:center;margin-top:-10px;margin-bottom:16px;font-size:15px}.brand-branch{color:var(--color-text-dim);background:var(--color-surface-2);border-radius:999px;margin-left:2px;padding:4px 10px;font-size:14px;font-weight:600}.hint-text{color:var(--color-text-dim);margin:10px 0;font-size:14px}.loading-block{text-align:center;color:var(--color-text-dim);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:28px;font-size:15px}.date-tab-row{-webkit-overflow-scrolling:touch;gap:10px;margin-bottom:4px;padding-bottom:4px;display:flex;overflow-x:auto}.date-tab{border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-card);border-radius:999px;flex-shrink:0;padding:9px 16px;font-size:15px;font-weight:700}.date-tab.selected{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.anchor-row{align-items:center;gap:8px;margin-bottom:14px;display:flex;overflow-x:auto}.anchor-row-label{color:var(--color-text-dim);flex-shrink:0;margin-right:2px;font-size:13px;font-weight:700}.anchor-btn{border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:700}.anchor-btn:active{background:var(--color-border)}.legend-row{color:var(--color-text-dim);flex-wrap:wrap;gap:14px;margin-bottom:8px;font-size:12px;display:flex}.legend-row span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:4px;width:12px;height:12px;display:inline-block}.legend-dot.available{background:#fef3d7;border:1px solid #f0d999}.legend-dot.selected{background:var(--color-primary)}.legend-dot.booked{background:#e9e2d8}.legend-dot.past{background:var(--color-surface-2);border:1px solid var(--color-border)}.rooms-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-card);overflow-x:auto}.rooms-table{flex-direction:column;width:max-content;min-width:100%;display:flex}.room-row{border-bottom:1px solid var(--color-border);align-items:stretch;display:flex}.room-row:last-child{border-bottom:none}.room-row-label{z-index:2;background:var(--color-surface);border-right:1px solid var(--color-border);flex-flow:wrap;flex-shrink:0;align-items:center;gap:6px;width:168px;padding:8px 14px;display:flex;position:sticky;left:0}.room-badge{letter-spacing:.02em;border-radius:999px;align-self:flex-start;margin-bottom:0;padding:2px 7px;font-size:10px;font-weight:800}.badge-standard{color:#3567d6;background:#e6edf7}.badge-premium{color:#7c3aed;background:#eae2fb}.badge-superb{color:#d6336c;background:#ffe3ee}.room-name{font-size:15px;font-weight:800}.room-model{color:var(--color-text-dim);font-size:12px}.room-price{color:var(--color-accent);width:100%;margin-top:0;font-size:11px;font-weight:700}.room-row-slots{flex:1;align-items:center;gap:3px;padding:8px;display:flex}.slot-btn{cursor:pointer;border:none;border-radius:6px;flex-shrink:0;width:28px;height:40px;padding:0}.slot-btn.available{background:#fef3d7}.slot-btn.available:hover{background:#fce6ae}.slot-btn.tight{background:var(--color-surface-2);cursor:not-allowed}.slot-btn.booked{cursor:not-allowed;background:#e9e2d8}.slot-btn.past{background:var(--color-surface-2);opacity:.5;cursor:not-allowed}.slot-btn.selected{background:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-dark) inset}.room-row-slots{gap:14px}.hour-group{flex:1 1 0;gap:4px;min-width:246px;display:flex}.hour-head-row{background:var(--color-surface-2);border-bottom:1px solid var(--color-border)}.hour-head-row .room-row-label{background:var(--color-surface-2)}.hour-head-row .room-row-slots{padding-top:8px;padding-bottom:8px}.hour-group-head{color:var(--color-text-dim);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:13px;font-weight:800;display:block}.slot-btn.wide{width:auto;min-width:0;height:40px;color:var(--color-text-dim);font-variant-numeric:tabular-nums;flex:1 1 0;font-size:14px;font-weight:700}.slot-btn.wide.selected{color:#fff}.slot-btn.wide.booked,.slot-btn.wide.past{color:#b9b3aa}.branch-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.branch-chip{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-card);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 16px;display:flex}.branch-chip .branch-name{font-size:16px;font-weight:800}.branch-chip .branch-sub{color:var(--color-text-dim);font-size:12px;font-weight:600}.branch-chip.selected{border-color:var(--color-accent);background:#e08e001a}.branch-chip.selected .branch-sub{color:var(--color-accent)}.branch-chip.coming-soon{background:var(--color-surface-2);opacity:.7;cursor:not-allowed;box-shadow:none;border-style:dashed}.branch-chip.coming-soon .branch-name{color:var(--color-text-dim)}.branch-chip.coming-soon .branch-sub{color:var(--color-danger)}.mode-toggle{gap:10px;margin-bottom:12px;display:flex}.mode-toggle button{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-card);text-align:left;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:11px 16px;display:flex}.mode-toggle button b{font-size:17px;font-weight:800}.mode-toggle button span{color:var(--color-text-dim);font-size:13px}.mode-toggle button.active{border-color:var(--color-primary);background:#4f8cff1f}.mode-toggle button.active span{color:var(--color-primary-dark)}.hour-tab-row{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.hour-tab{border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-surface);min-width:58px;color:var(--color-text);cursor:pointer;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-card);flex:none;padding:8px 10px;font-size:15px;font-weight:700}.hour-tab.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.hour-tab:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.room-unavailable{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:700}.seat-card .room-badge{margin-bottom:8px}@media (width<=640px){.kiosk-screen{padding:16px 16px 20px}.kiosk-header{margin-bottom:16px}.kiosk-header .brand{gap:6px;font-size:17px}.kiosk-header .brand .dot{width:8px;height:8px}.brand-branch{padding:3px 8px;font-size:12px}.kiosk-header .clock{font-size:12px}.back-btn{padding:9px 16px;font-size:13px;margin-bottom:10px!important}.step-indicator,.title-block{margin-bottom:18px}.title-block h1{margin-bottom:6px;font-size:22px}.title-block p{font-size:14px}.big-button{border-radius:var(--radius-sm);padding:18px;font-size:17px}.secondary-button{border-radius:var(--radius-sm);padding:16px;font-size:15px}.keypad{gap:10px;max-width:340px}.keypad button{font-size:22px}.phone-display{min-height:60px;margin-bottom:18px;padding:16px;font-size:26px}.phone-display.placeholder{font-size:16px}.otp-boxes{gap:8px;margin-bottom:18px}.otp-boxes .box{width:42px;height:52px;font-size:20px}.seat-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.seat-card{padding:14px 12px}.seat-card .num{font-size:20px}.slot-row{gap:6px}.slot-row button{flex:calc(25% - 6px);min-width:0;padding:11px 4px;font-size:14px}.date-tab-row{gap:8px}.date-tab{padding:10px 14px;font-size:13px}.legend-row{gap:10px;margin-bottom:10px;font-size:11px}.legend-dot{width:10px;height:10px}.room-row-label{gap:1px;width:118px;padding:10px}.room-badge{padding:2px 7px;font-size:10px}.room-name{font-size:14px}.room-model{font-size:10px}.room-price{margin-top:2px;font-size:10px}.room-row-slots{gap:8px;padding:6px}.slot-btn{width:24px;height:36px}.slot-btn.wide{height:42px;font-size:12px}.hour-group{gap:3px;min-width:158px}.hour-group-head{font-size:11px}.room-row-label{width:96px;padding:10px 8px}.branch-row{gap:8px;margin-bottom:14px}.branch-chip{flex:calc(50% - 4px);padding:10px 14px}.branch-chip .branch-name{font-size:14px}.branch-chip .branch-sub{font-size:11px}.mode-toggle{gap:8px;margin-bottom:16px}.mode-toggle button{padding:12px 13px}.mode-toggle button b{font-size:14px}.mode-toggle button span{font-size:11px}.hour-tab-row{gap:4px}.hour-tab{min-width:0;box-shadow:none;border-width:1px;flex:calc(16.666% - 4px);padding:9px 2px;font-size:12px}.summary-card{margin-top:16px;padding:16px}.summary-row{padding:6px 0;font-size:14px}.summary-row.total{font-size:17px}.footer-actions{gap:10px;padding-top:14px}.pay-method-card{gap:12px;padding:16px}.pay-method-card .icon{font-size:22px}.pay-method-card .label{font-size:15px}.welcome-hero h1{font-size:24px}.welcome-hero p{margin-bottom:14px;font-size:14px}.qr-box{padding:16px}.idle-warning .card{max-width:320px;padding:24px}.idle-warning h2{font-size:19px}}.back-btn.bottom{border-radius:var(--radius);text-align:center;width:100%;margin:14px 0 4px;padding:20px;font-size:20px;font-weight:700;display:block}.back-btn.bottom:active{background:#aeb8cb}.room-sub-name{opacity:.75;margin-top:2px;font-size:.6em;font-weight:600;line-height:1.3;display:block}.seat-card-wrap{display:flex;position:relative}.seat-card-wrap>.seat-card{flex:1}.room-info-btn{border:1px solid var(--color-border,#d7dce2);color:#4f8cff;cursor:pointer;z-index:2;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-style:italic;font-weight:800;line-height:1;display:flex;position:absolute;top:8px;right:8px}.room-info-btn:hover{background:#eef3ff}.room-name-row{align-items:center;gap:6px;display:flex}.room-info-btn.inline{width:22px;height:22px;font-size:12px;position:static}.room-info-overlay{z-index:60;background:#0f141e8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.room-info-modal{background:#fff;border-radius:16px;width:100%;max-width:460px;max-height:88vh;position:relative;overflow-y:auto;box-shadow:0 18px 50px #00000040}.room-info-close{cursor:pointer;z-index:2;background:#ffffffe6;border:none;border-radius:50%;width:34px;height:34px;font-size:15px;position:absolute;top:10px;right:10px}.room-info-photo{object-fit:cover;border-radius:16px 16px 0 0;width:100%;max-height:300px;display:block}.room-info-body{padding:18px 20px 22px}.room-info-title{margin-bottom:8px;font-size:19px;font-weight:800}.room-info-desc{color:#45505d;white-space:pre-wrap;margin:0 0 12px;font-size:15px;line-height:1.65}.room-info-price{color:#4f8cff;font-size:14px;font-weight:700}.auth-stage .phone-display,.auth-stage .keypad,.auth-stage .footer-actions{width:100%;max-width:420px;margin-left:auto;margin-right:auto}.auth-stage .phone-display{white-space:nowrap;height:88px;min-height:88px;margin-bottom:28px;font-size:34px}.auth-stage .footer-actions{margin-top:28px}.auth-stage .footer-actions.auth-stack{flex-direction:column;gap:28px;padding-top:0}.auth-stage .footer-actions.auth-stack .big-button{flex:none}.auth-stage .footer-actions.auth-stack .back-btn.bottom{margin:0}.kiosk-screen.step-auth .back-btn.bottom{max-width:420px;margin-left:auto;margin-right:auto}@media (width<=640px){.auth-stage .phone-display{height:62px;min-height:62px;margin-bottom:16px;padding:12px;font-size:30px}.auth-stage .phone-display.placeholder{font-size:19px}.auth-stage .keypad{gap:9px}.auth-stage .keypad button{aspect-ratio:2.2;box-shadow:none;font-size:22px}.auth-stage .footer-actions{margin-top:16px}.auth-stage .footer-actions.auth-stack{gap:16px}.auth-stage .big-button{padding:15px;font-size:17px}.auth-stage .otp-boxes{gap:9px;margin-bottom:16px}.auth-stage .otp-boxes .box{width:44px;height:54px}}.door-guide{border-radius:var(--radius);text-align:center;background:#4f8cff1a;border:1px solid #4f8cff59;width:100%;max-width:380px;padding:22px 20px}.door-guide-icon{margin-bottom:10px;font-size:34px;line-height:1}.door-guide-title{color:var(--color-text);margin:0 0 8px;font-size:18px;font-weight:700}.door-guide-title b{color:var(--color-primary-dark)}.door-guide-text{color:var(--color-text-dim);margin:0;font-size:14.5px;line-height:1.6}@media (width<=640px){.door-guide{padding:18px 16px}.door-guide-icon{font-size:28px}.door-guide-title{font-size:16px}.door-guide-text{font-size:13.5px}}.coupon-box{margin-bottom:14px}.coupon-toggle{border-radius:var(--radius-sm);border:1px dashed var(--color-primary);width:100%;color:var(--color-primary-dark);cursor:pointer;background:#4f8cff0f;align-items:center;gap:8px;padding:16px 18px;font-family:inherit;font-size:16px;font-weight:700;display:flex}.coupon-count{background:var(--color-primary);color:#fff;border-radius:999px;padding:1px 9px;font-size:13px}.coupon-arrow{margin-left:auto;font-size:12px}.coupon-panel{border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border);margin-top:10px;padding:14px}.coupon-list{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.coupon-item{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;display:flex}.coupon-item:active{background:var(--color-surface-2)}.coupon-item-name{color:var(--color-text);font-size:15px;font-weight:700}.coupon-item-code{color:var(--color-text-dim);letter-spacing:.04em;font-size:13px}.coupon-input-row{gap:8px;display:flex}.coupon-input-row input{letter-spacing:.06em;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);min-width:0;color:var(--color-text);flex:1;padding:14px;font-family:inherit;font-size:16px}.coupon-input-row button{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;border:none;padding:0 22px;font-family:inherit;font-size:16px;font-weight:700}.coupon-input-row button:disabled{background:var(--color-surface-2);color:var(--color-text-dim)}.coupon-applied{border-radius:var(--radius-sm);background:#1fa85c1a;border:1px solid #1fa85c59;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.coupon-applied-name{color:var(--color-text);font-size:16px;font-weight:700}.coupon-applied-code{color:var(--color-text-dim);letter-spacing:.04em;margin-top:2px;font-size:13px}.coupon-remove{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-dim);cursor:pointer;flex-shrink:0;padding:10px 14px;font-family:inherit;font-size:14px}.coupon-error{color:var(--color-danger);margin-top:10px;font-size:14px;font-weight:600}.summary-row.discount span:last-child{color:var(--color-success);font-weight:700}@media (width<=640px){.coupon-toggle{padding:14px;font-size:15px}.coupon-item{padding:12px 14px}.coupon-item-name{font-size:14px}.coupon-input-row input{padding:12px;font-size:15px}}.branch-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;width:100%;display:grid}.branch-card{text-align:left;border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:18px;flex-direction:column;align-items:flex-start;gap:8px;min-height:148px;padding:28px 26px;transition:border-color .15s,transform .15s;display:flex}.branch-card:hover:not(:disabled),.branch-card:active:not(:disabled){border-color:var(--color-accent);transform:translateY(-2px)}.branch-card-name{font-size:26px;font-weight:800}.branch-card-address{color:var(--color-text-dim);font-size:15px;font-weight:600}.branch-card-rooms{color:var(--color-accent);margin-top:auto;font-size:16px;font-weight:700}.branch-card.coming-soon{opacity:.55;cursor:not-allowed}.branch-card.coming-soon .branch-card-rooms{color:var(--color-text-dim)}.branch-empty{text-align:center;color:var(--color-text-dim);padding:40px 0;font-size:18px;font-weight:600}.branch-bar{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;align-items:center;gap:12px;margin-bottom:18px;padding:14px 18px;display:flex}.branch-bar-label{color:var(--color-text-dim);font-size:13px;font-weight:700}.branch-bar-name{font-size:20px;font-weight:800}.branch-bar-change{border:1px solid var(--color-border);color:var(--color-text-dim);cursor:pointer;background:0 0;border-radius:10px;margin-left:auto;padding:8px 16px;font-size:14px;font-weight:700}.branch-bar-change:hover{color:var(--color-accent);border-color:var(--color-accent)}@media (width<=720px){.branch-grid{grid-template-columns:1fr;gap:12px}.branch-card{min-height:0;padding:20px}.branch-card-name{font-size:22px}}.phone-summary{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:4px;width:100%;max-width:520px;margin:0 auto 18px;padding:14px 18px;display:flex}.phone-summary span:first-child{font-size:19px;font-weight:800}.phone-summary span:last-child{color:var(--color-text-dim);font-size:15px;font-weight:600}.phone-hint{text-align:center;max-width:520px;color:var(--color-text-dim);margin:14px auto 0;font-size:14px;font-weight:600}@media (width<=720px){.phone-summary{margin-bottom:12px;padding:11px 14px}.phone-summary span:first-child{font-size:16px}.phone-summary span:last-child{font-size:13px}.phone-hint{margin-top:10px;font-size:12.5px}}
