/* GAME CLUB · Calm, readable operations UI. */
:root{--gc-focus:#635bee;--gc-surface:#fff;--gc-border:#e6e9ee;--gc-muted:#747c89}
html{scroll-padding-top:96px;scrollbar-gutter:stable}
body{overscroll-behavior-y:none}
button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:not-allowed;opacity:.5}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bdb7ff;outline-offset:3px}
input,select,textarea{scroll-margin:96px 0 120px}
.head h1,.reception-v5-titleline h1{letter-spacing:-.045em}
.head p,.reception-v5-brand p{line-height:1.7}
.top{z-index:60!important}
.nav button{white-space:nowrap;transition:background .16s ease,color .16s ease}
.card,.kpi,.manager-center-card{box-shadow:0 2px 7px #18223403!important}
.reception-v5-room{transition:border-color .16s ease,background .16s ease,transform .16s ease!important}
.reception-v5-room:hover{border-color:#c6cbd4!important;transform:translateY(-1px)}
.reception-v5-room:active{transform:translateY(0)}
.manager-v5 .reception-v5-roomtop b{font-size:17px!important;font-variant-numeric:tabular-nums}
.manager-v5 .reception-v5-roomtop span,.manager-v5 .reception-v5-room small{font-size:11px!important;line-height:1.5;color:#737b87}
.manager-v5 .reception-v5-room>strong{font-size:13px!important;line-height:1.5}
.manager-v5 .reception-v5-sectionhead b{font-size:15px!important}
.manager-v5 .reception-v5-sectionhead span{font-size:11px!important;line-height:1.6}
.manager-v5 .reception-order-main b{font-size:13px!important}
.manager-v5 .reception-order-main>span{font-size:11px!important;line-height:1.6}
.manager-v5 .btn,.manager-mode #content.manager-v52-page .btn{min-height:36px;font-size:12px!important}
.manager-mode #content.manager-v52-page .main b{font-size:13px!important}
.manager-mode #content.manager-v52-page .main span{font-size:11px!important;line-height:1.6}
.manager-center-scroll,.calwrap{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d5dae3 transparent}
.manager-center-scroll{overflow-anchor:none}
.manager-center-card{overflow:hidden}
.manager-center-type-cell strong{font-size:13px!important}
.manager-center-type-cell span,.manager-center-day span{font-size:10px!important}
.manager-center-detail,.reception-v5-tasks{scroll-margin-top:90px}
.manager-center-card [aria-busy="true"]{pointer-events:none}
#managerInventoryCenter.is-loading{opacity:.75;transition:opacity .16s ease}
.gc-ux-modal-lock{overflow:hidden}
.modalbg{z-index:210!important;background:rgba(18,23,34,.35);backdrop-filter:blur(5px)}
.modalbg .modal{max-height:calc(100dvh - 48px);overscroll-behavior:contain;animation:gcUxDialogIn .18s ease-out;outline:none}
.modalhead{position:sticky;top:-24px;z-index:8;background:#fff;padding:12px 0;margin:-12px 0 12px;border-bottom:1px solid #f0f1f4}
.modalhead .close{min-height:40px;min-width:40px}
.modalbg .field label{font-size:12px}
.modalbg .field input,.modalbg .field select,.modalbg .field textarea{font-size:15px}
.modalbg .primary{min-height:46px}
.gc870-overlay{z-index:220!important;backdrop-filter:blur(5px)}
.gc870-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 40px)!important;animation:gcUxDialogIn .18s ease-out;outline:none}
.gc870-head{background:#fff!important}
.gc870-head p{font-size:12px!important;color:#737b87!important}
.gc870-section-title em,.gc870-plan-head span{font-size:11px!important;line-height:1.5}
.gc870-transfer-hint{font-size:11px!important;line-height:1.7!important}
.gc870-field>span{font-size:12px!important}
.gc870-field input,.gc870-field select,.gc870-field textarea{min-height:42px;font-size:14px!important}
.gc870-confirm-bar{bottom:0!important;background:rgba(255,255,255,.98)!important;border-top:1px solid #e6e9ee!important;box-shadow:0 -8px 24px #1c233407;z-index:10}
.gc870-draftbar{display:flex;align-items:center;gap:12px;justify-content:space-between;background:#f6f5ff;border:1px solid #e6e3ff;border-radius:12px;padding:10px 13px;margin:0 24px 12px;font-size:12px;color:#615a88}
.gc870-draftbar[hidden]{display:none}
.gc870-draftbar button{border:0;background:none;padding:7px;color:#635bee;font-size:12px;font-weight:700;white-space:nowrap}
.gc870-dialog[inert],#gcBooking870Form[inert]{opacity:.75}
.gc870-error:not(:empty){border:1px solid #efcbd1;background:#fff4f5;padding:12px 14px;border-radius:12px;scroll-margin:100px}
.gc-ux-status{position:fixed;left:50%;top:88px;transform:translateX(-50%);z-index:150;background:rgba(255,255,255,.97);border:1px solid #e6e9ee;box-shadow:0 4px 20px #1822340b;border-radius:999px;padding:9px 16px;font-size:12px;color:#747c89;pointer-events:none}
.gc-ux-status[hidden]{display:none}
.gc-ux-status.sync:before{content:'';display:inline-block;width:10px;height:10px;margin-right:8px;border:2px solid #dedbf9;border-top-color:#635bee;border-radius:50%;animation:gcUxSpin .8s linear infinite;vertical-align:-1px}
.gc-ux-update{position:fixed;right:20px;bottom:24px;z-index:190;display:flex;align-items:center;gap:14px;padding:11px 14px;background:#fff;border:1px solid #dddfe8;box-shadow:0 8px 24px #18223413;border-radius:14px;font-size:12px;color:#5e6571}
.gc-ux-update button{border:0;background:#191b22;color:#fff;padding:9px 12px;border-radius:9px;font-size:12px}
.toast,#gc870Toast{z-index:350!important;max-width:calc(100vw - 32px);width:max-content;white-space:normal;line-height:1.6;text-align:center}
.gc-ux-error{padding:32px;text-align:center}
.gc-ux-error h2{font-size:19px}.gc-ux-error p{color:#747c89;font-size:13px;line-height:1.7}
@keyframes gcUxDialogIn{from{opacity:.7;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes gcUxSpin{to{transform:rotate(360deg)}}
@media(max-width:760px){
 html .top,html.manager-mode .top{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;transform:none!important;perspective:none!important;min-height:62px!important}
 html #nav,html.manager-mode #nav{margin:0!important;width:auto!important;min-width:0!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(9px + env(safe-area-inset-bottom))!important}
 html #nav button,html.manager-mode #nav button{height:44px!important;font-size:11px!important;padding:0 11px!important;border-radius:11px!important}
 html #nav button.on,html.manager-mode #nav button.on{background:#191b22!important;color:#fff!important}
 .reception-v5-shell{grid-template-columns:minmax(0,1fr)!important}
 .reception-v5-primary{grid-template-columns:minmax(0,1fr)!important}
 .reception-v5-primary>.card,.reception-v5-primary,.reception-v5-aside{min-width:0!important;max-width:100%!important}
 html #content.wrap{width:calc(100% - 28px)!important;padding-bottom:calc(108px + env(safe-area-inset-bottom))!important}
 .reception-v5-overview .reception-v5-kpi{grid-column:auto!important}
 html{scroll-padding-top:78px}
 .top,.manager-mode .top{height:62px!important;padding:0 14px!important}
 .nav,.manager-mode .nav{position:fixed!important;left:10px!important;right:10px!important;bottom:calc(9px + env(safe-area-inset-bottom))!important;top:auto!important;display:flex!important;gap:4px!important;grid-template-columns:none!important;align-items:center;height:58px!important;padding:5px!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;border:1px solid #e1e4eb!important;border-radius:17px!important;background:rgba(251,251,252,.98)!important;box-shadow:0 8px 30px #1a223416!important;max-width:none!important;z-index:60!important}
 .nav::-webkit-scrollbar{display:none}
 .nav button,.manager-mode .nav button{flex:1 0 auto!important;min-width:59px!important;height:44px!important;min-height:44px!important;font-size:11px!important;padding:0 11px!important;border-radius:11px!important;white-space:nowrap!important}
 .nav button.on,.manager-mode .nav button.on{background:#191b22!important;color:#fff!important}
 .wrap,.manager-mode .wrap{width:calc(100% - 28px)!important;padding:22px 0 calc(108px + env(safe-area-inset-bottom))!important}
 .manager-mode #content.manager-v52-page .btn{min-height:42px!important}
 .manager-mode #content.manager-v52-page .btn.sm{font-size:11px!important;min-height:38px!important;padding:0 10px!important}
 .reception-v5-tools{gap:8px!important}.reception-v5-tools>.btn{min-height:42px!important}
 .reception-v5-titleline h1{font-size:27px!important}
 .reception-v5-brand p{font-size:11px!important}
 .reception-v5-date button,.manager-center-nav button{min-height:40px!important;min-width:34px!important}
 .reception-v5-tabs button{min-height:40px!important;font-size:12px!important}
 .reception-v5-roomgrid{gap:9px!important}.reception-v5-room{padding:13px!important;min-height:104px!important}
 .reception-v5-kpi small{font-size:11px!important}.reception-v5-kpi span{font-size:10px!important;line-height:1.5}
 .modalbg{padding:12px!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important}
 .modalbg .modal{width:100%!important;max-height:calc(100dvh - 24px)!important;padding:18px!important;border-radius:20px!important}
 .modalhead{top:-18px}
 .drawerbg{align-items:end!important;justify-items:stretch!important}
 .drawerbg .modal.drawer{height:auto!important;max-height:calc(100dvh - 28px)!important;border-radius:20px!important}
 .modalbg input,.modalbg select,.modalbg textarea,.searchinput,.order-date{font-size:16px!important}
 .gc870-overlay{padding:8px!important;align-items:end!important}
 .gc870-dialog{width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:20px!important}
 .gc870-head{padding:18px!important}.gc870-head h2{font-size:23px!important}
 .gc870-section{padding-left:16px!important;padding-right:16px!important}
 .gc870-section-title{flex-wrap:wrap!important;row-gap:5px!important}.gc870-section-title em{flex-basis:100%;padding-left:25px}
 .gc870-field input,.gc870-field select,.gc870-field textarea{font-size:16px!important;min-height:44px!important}
 .gc870-confirm-bar{padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;gap:10px!important}
 .gc870-actions{display:flex;width:100%!important;gap:8px!important}.gc870-actions button{min-height:46px!important}
 .gc870-actions .gc870-primary{flex:1!important}.gc870-draftbar{margin:0 16px 10px}
 .gc-ux-status{top:72px;max-width:calc(100vw - 30px);white-space:nowrap}
 .gc-ux-update{left:14px;right:14px;bottom:calc(82px + env(safe-area-inset-bottom));justify-content:space-between}
 .toast,#gc870Toast{bottom:calc(84px + env(safe-area-inset-bottom))!important}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
