:root{--adm-radius-s: 4px;--adm-radius-m: 8px;--adm-radius-l: 12px;--adm-font-size-1: 9px;--adm-font-size-2: 10px;--adm-font-size-3: 11px;--adm-font-size-4: 12px;--adm-font-size-5: 13px;--adm-font-size-6: 14px;--adm-font-size-7: 15px;--adm-font-size-8: 16px;--adm-font-size-9: 17px;--adm-font-size-10: 18px;--adm-color-primary: #1677ff;--adm-color-success: #00b578;--adm-color-warning: #ff8f1f;--adm-color-danger: #ff3141;--adm-color-yellow: #ff9f18;--adm-color-orange: #ff6430;--adm-color-wathet: #e7f1ff;--adm-color-text: #333333;--adm-color-text-secondary: #666666;--adm-color-weak: #999999;--adm-color-light: #cccccc;--adm-color-border: #eeeeee;--adm-color-background: #ffffff;--adm-color-highlight: var(--adm-color-danger);--adm-color-white: #ffffff;--adm-color-box: #f5f5f5;--adm-color-text-light-solid: var(--adm-color-white);--adm-color-text-dark-solid: #000000;--adm-color-fill-content: var(--adm-color-box);--adm-font-size-main: var(--adm-font-size-5);--adm-font-family: -apple-system, blinkmacsystemfont, "Helvetica Neue", helvetica, segoe ui, arial, roboto, "PingFang SC", "miui", "Hiragino Sans GB", "Microsoft Yahei", sans-serif;--adm-border-color: var(--adm-color-border)}html[data-prefers-color-scheme=dark]{--adm-color-primary: #3086ff;--adm-color-success: #34b368;--adm-color-warning: #ffa930;--adm-color-danger: #ff4a58;--adm-color-yellow: #ffa930;--adm-color-orange: #e65a2b;--adm-color-wathet: #0d2543;--adm-color-text: #e6e6e6;--adm-color-text-secondary: #b3b3b3;--adm-color-weak: #808080;--adm-color-light: #4d4d4d;--adm-color-border: #2b2b2b;--adm-color-box: #0a0a0a;--adm-color-background: #1a1a1a;--adm-color-background-body: var(--adm-color-background);--adm-border-color: var(--adm-color-border)}:root{-webkit-tap-highlight-color:rgba(0,0,0,0)}html{background-color:var(--adm-color-background-body)}body{color:var(--adm-color-text);font-size:var(--adm-font-size-main);font-family:var(--adm-font-family)}a,button{cursor:pointer}a{color:var(--adm-color-primary);transition:opacity ease-in-out .2s}a:active{opacity:.8}.adm-plain-anchor{color:unset;transition:none}.adm-plain-anchor:active{opacity:unset}body.adm-overflow-hidden{overflow:hidden!important}div.adm-px-tester{--size: 1;height:calc(var(--size) / 2 * 2px);width:0;position:fixed;left:-100vw;top:-100vh;-webkit-user-select:none;user-select:none;pointer-events:none}.adm-popup{--z-index: var(--adm-popup-z-index, 1000);position:fixed;z-index:var(--z-index)}.adm-popup-body{position:fixed;background-color:var(--adm-color-background);z-index:calc(var(--z-index) + 10)}.adm-popup-body .adm-popup-close-icon{position:absolute;z-index:100}.adm-popup-body-position-bottom{width:100%;bottom:0;left:0}.adm-popup-body-position-bottom .adm-popup-close-icon{right:8px;top:8px}.adm-popup-body-position-top{width:100%;top:0;left:0}.adm-popup-body-position-top .adm-popup-close-icon{right:8px;bottom:8px}.adm-popup-body-position-left{height:100%;top:0;left:0}.adm-popup-body-position-left .adm-popup-close-icon{right:8px;top:8px}.adm-popup-body-position-right{height:100%;top:0;right:0}.adm-popup-body-position-right .adm-popup-close-icon{left:8px;top:8px}.adm-popup-close-icon{cursor:pointer;padding:4px;font-size:18px;line-height:1;color:var(--adm-color-weak)}.adm-mask{--z-index: var(--adm-mask-z-index, 1000);position:fixed;top:0;left:0;z-index:var(--z-index);display:block;width:100%;height:100%}.adm-mask-aria-button{position:absolute;top:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.adm-mask-content{z-index:1}.adm-safe-area{--multiple: var(--adm-safe-area-multiple, 1);display:block;width:100%}.adm-safe-area-position-top{padding-top:calc(env(safe-area-inset-top) * var(--multiple))}.adm-safe-area-position-bottom{padding-bottom:calc(env(safe-area-inset-bottom) * var(--multiple))}.adm-auto-center{display:flex;justify-content:center}.adm-auto-center-content{flex:0 1 auto}.adm-image{--width: var(--adm-image-width, auto);--height: var(--adm-image-height, auto);width:var(--width);height:var(--height);display:block;overflow:hidden}.adm-image-img{width:100%;height:100%}.adm-image-tip{position:relative;background-color:var(--adm-color-fill-content);height:100%;min-height:24px;min-width:24px}.adm-image-tip>svg{width:24px;height:24px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--adm-color-weak)}.adm-button{--color: var(--adm-color-text-light-solid);--text-color: var(--adm-button-text-color, var(--adm-color-text));--background-color: var(--adm-button-background-color, var(--adm-color-background));--border-radius: var(--adm-button-border-radius, 4px);--border-width: var(--adm-button-border-width, 1px);--border-style: var(--adm-button-border-style, solid);--border-color: var(--adm-button-border-color, var(--adm-color-border));color:var(--text-color);background-color:var(--background-color);position:relative;display:inline-block;box-sizing:border-box;height:auto;padding:7px 12px;margin:0;font-size:var(--adm-font-size-9);line-height:1.4;text-align:center;border:var(--border-width) var(--border-style) var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:opacity ease .15s;-webkit-user-select:none;user-select:none}.adm-button:focus{outline:none}.adm-button:before{position:absolute;top:0;left:0;transform:translate(calc(var(--border-width) * -1),calc(var(--border-width) * -1));width:100%;height:100%;background-color:var(--adm-color-text-dark-solid);border:var(--border-width) var(--border-style) var(--adm-color-text-dark-solid);border-radius:var(--border-radius);opacity:0;content:" ";box-sizing:content-box}.adm-button:active:before{opacity:.08}.adm-button-default.adm-button-fill-outline{--background-color: transparent;--border-color: var(--adm-color-text)}.adm-button-default.adm-button-fill-none{--background-color: transparent;--border-width: 0px}.adm-button:not(.adm-button-default){--text-color: var(--adm-color-text-light-solid);--background-color: var(--color);--border-color: var(--color)}.adm-button:not(.adm-button-default).adm-button-fill-outline{--text-color: var(--color);--background-color: transparent}.adm-button:not(.adm-button-default).adm-button-fill-none{--text-color: var(--color);--background-color: transparent;--border-width: 0px}.adm-button-primary{--color: var(--adm-color-primary)}.adm-button-success{--color: var(--adm-color-success)}.adm-button-danger{--color: var(--adm-color-danger)}.adm-button-warning{--color: var(--adm-color-warning)}.adm-button-block{display:block;width:100%}.adm-button-disabled{cursor:not-allowed;opacity:.4}.adm-button-disabled:active:before{display:none}.adm-button.adm-button-mini{padding-top:3px;padding-bottom:3px;font-size:var(--adm-font-size-main)}.adm-button.adm-button-mini.adm-button-shape-rounded{padding-left:9px;padding-right:9px}.adm-button.adm-button-small{padding-top:3px;padding-bottom:3px;font-size:var(--adm-font-size-7)}.adm-button.adm-button-large{padding-top:11px;padding-bottom:11px;font-size:var(--adm-font-size-10)}.adm-button.adm-button-shape-rounded{--border-radius: 1000px}.adm-button.adm-button-shape-rectangular{--border-radius: 0}.adm-button-loading{vertical-align:bottom}.adm-button-loading-wrapper{display:flex;height:1.4em;align-items:center;justify-content:center}.adm-button-loading-wrapper>.adm-loading{opacity:.6}.adm-dot-loading{display:inline-block}.adm-picker{--header-button-font-size: var(--adm-font-size-7);--title-font-size: var(--adm-font-size-7);--item-font-size: var(--adm-font-size-8);--item-height: 34px;width:100%;height:300px;overflow:hidden;position:relative;display:flex;flex-direction:column;---item-font-size: var(--item-font-size);---item-height: var(--item-height)}.adm-picker .adm-picker-view.adm-picker-view{--item-font-size: var(---item-font-size);--item-height: var(---item-height)}.adm-picker-header{flex-shrink:0;border-bottom:solid 1px var(--adm-color-border);display:flex;justify-content:space-between;align-items:center;padding:4px}.adm-picker-header-button{font-size:var(--header-button-font-size);display:inline-block;padding:8px}.adm-picker-header-button-disabled,.adm-picker-header-button-disabled:active{opacity:.4;cursor:not-allowed}.adm-picker-header-title{padding:4px;font-size:var(--title-font-size);color:var(--adm-color-text);text-align:center;flex:1}.adm-picker-body{flex:1;width:100%;height:100%}.adm-picker-body>.adm-picker-view{--height: 100%}.adm-picker-popup .adm-popup-body{border-top-left-radius:8px;border-top-right-radius:8px}.adm-spin-loading{--color: var(--adm-color-weak);--size: 32px;width:var(--size);height:var(--size)}.adm-spin-loading-svg{width:100%;height:100%;animation:adm-spin-loading-rotate .8s infinite linear}.adm-spin-loading-svg>.adm-spin-loading-fill{stroke:var(--color)}@keyframes adm-spin-loading-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.adm-picker-view{--height: 240px;--item-height: 34px;--item-font-size: var(--adm-font-size-8);height:var(--height);width:100%;display:flex;position:relative;overflow:hidden;background:var(--adm-color-background)}.adm-picker-view-column{height:100%;flex:1;-webkit-user-select:none;user-select:none;touch-action:none;position:relative;z-index:0}.adm-picker-view-column-wheel{width:100%;cursor:-webkit-grab;cursor:grab;position:absolute;top:calc(50% - var(--item-height) / 2);left:0}.adm-picker-view-column-wheel:before{content:" ";display:block;position:absolute;width:100%;height:100vh;top:-100vh}.adm-picker-view-column-wheel:after{content:" ";display:block;position:absolute;width:100%;height:100vh;bottom:-100vh}.adm-picker-view-column-item{font-size:var(--item-font-size);padding:0 6px;height:var(--item-height);display:flex;justify-content:center;align-items:center}.adm-picker-view-column-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-picker-view-column-accessible{width:100%;height:100%;pointer-events:none;opacity:0;display:flex;flex-direction:column;position:relative;top:calc(var(--item-height) * -1);z-index:0;padding-bottom:1px}.adm-picker-view-column-accessible>*{flex:1;text-overflow:ellipsis}.adm-picker-view-column-accessible-current{position:absolute;width:100%;height:100%}.adm-picker-view-column-accessible-button{width:100%;height:100%}.adm-picker-view-mask{position:absolute;z-index:10000;left:0;top:0;width:100%;height:100%;display:flex;flex-direction:column;pointer-events:none}.adm-picker-view-mask-top,.adm-picker-view-mask-bottom{flex:auto}.adm-picker-view-mask-middle{height:var(--item-height);box-sizing:border-box;flex:none;border-top:solid 1px var(--adm-color-border);border-bottom:solid 1px var(--adm-color-border)}.adm-picker-view-mask-top{background:var(--adm-color-background);-webkit-mask:linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.8) 50%,#000000 100%);mask:linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.8) 50%,#000000 100%)}.adm-picker-view-mask-bottom{background:var(--adm-color-background);-webkit-mask:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.8) 50%,#000000 100%);mask:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.8) 50%,#000000 100%)}.adm-picker-view-loading-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.adm-picker-view-item-height-measure{position:relative;left:0;top:0;height:var(--item-height);width:0;pointer-events:none}.adm-tabs{--title-font-size: var(--adm-font-size-9);--content-padding: 12px;--active-line-height: 2px;--active-line-border-radius: var(--active-line-height);--active-line-color: var(--adm-color-primary);--active-title-color: var(--adm-color-primary);position:relative;min-width:0}.adm-tabs-header{position:relative;border-bottom:solid 1px var(--adm-color-border)}.adm-tabs-tab-list{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;position:relative;overflow-x:scroll;scrollbar-width:none}.adm-tabs-tab-list::-webkit-scrollbar{display:none}.adm-tabs-tab-wrapper{padding:0 12px}.adm-tabs-tab-wrapper-stretch{flex:auto}.adm-tabs-tab{white-space:nowrap;padding:8px 0 10px;width:-webkit-min-content;width:min-content;margin:0 auto;font-size:var(--title-font-size);position:relative;cursor:pointer}.adm-tabs-tab-active{color:var(--active-title-color)}.adm-tabs-tab-disabled{opacity:.5;cursor:not-allowed}.adm-tabs-tab-line{position:absolute;bottom:0;height:var(--active-line-height);background:var(--active-line-color);border-radius:var(--active-line-border-radius)}.adm-tabs-content{padding:var(--content-padding)}.adm-tabs-header-mask{position:absolute;top:0;bottom:0;z-index:1;width:30px;height:100%;pointer-events:none}.adm-tabs-header-mask-left{left:0;background:linear-gradient(to right,var(--adm-color-background),rgba(255,255,255,0))}.adm-tabs-header-mask-right{right:0;background:linear-gradient(to left,var(--adm-color-background),rgba(255,255,255,0))}.adm-list{--header-font-size: var(--adm-font-size-7);--prefix-width: "auto";--prefix-padding-right: 12px;--align-items: center;--active-background-color: var(--adm-color-border);--border-inner: solid 1px var(--adm-color-border);--border-top: solid 1px var(--adm-color-border);--border-bottom: solid 1px var(--adm-color-border);--padding-left: 12px;--padding-right: 12px;--font-size: var(--adm-font-size-9);--extra-max-width: 70%}.adm-list-header{color:var(--adm-color-weak);font-size:var(--header-font-size);padding:8px var(--padding-right) 8px var(--padding-left)}.adm-list-body{background-color:var(--adm-color-background);overflow:hidden;font-size:var(--font-size)}.adm-list-body-inner{margin-top:-1px}.adm-list-default .adm-list-body{border-top:var(--border-top);border-bottom:var(--border-bottom)}.adm-list-card{margin:12px}.adm-list-card .adm-list-body{border-radius:8px}.adm-list-card .adm-list-header{padding-left:0}.adm-list-item{display:block;padding-left:var(--padding-left);position:relative;background-color:var(--adm-color-background);line-height:1.5}.adm-list-item-title,.adm-list-item-description{color:var(--adm-color-weak);font-size:var(--adm-font-size-main)}.adm-list-item-content{display:flex;align-items:var(--align-items);justify-content:flex-start;border-top:var(--border-inner);padding-right:var(--padding-right)}.adm-list-item-content-prefix{width:var(--prefix-width);flex:none;padding-right:var(--prefix-padding-right)}.adm-list-item-content-main{flex:auto;padding:12px 0}.adm-list-item-content-extra{flex:none;padding-left:12px;font-size:var(--adm-font-size-7);color:var(--adm-color-weak);max-width:var(--extra-max-width)}.adm-list-item-content-arrow{flex:none;display:flex;align-items:center;margin-left:4px;color:var(--adm-color-light);font-size:19px}.adm-list-item-disabled{cursor:not-allowed}.adm-list-item-disabled.adm-list-item-disabled>.adm-list-item-content>*{opacity:.4;pointer-events:none}a.adm-list-item:active:not(.adm-list-item-disabled){background-color:var(--active-background-color)}a.adm-list-item:active:not(.adm-list-item-disabled):after{content:" ";display:block;position:absolute;width:100%;bottom:-1px;left:0;border-bottom:var(--border-inner)}.adm-center-popup{--background-color: var(--adm-center-popup-background-color, var(--adm-color-background));--border-radius: var(--adm-center-popup-border-radius, 8px);--max-width: var(--adm-center-popup-max-width, 75vw);--min-width: var(--adm-center-popup-min-width, 280px);--z-index: var(--adm-center-popup-z-index, 1000);position:fixed;z-index:var(--z-index)}.adm-center-popup .adm-center-popup-mask{z-index:0}.adm-center-popup-wrap{position:fixed;z-index:1;top:50%;left:50%;width:auto;min-width:var(--min-width);max-width:var(--max-width);transform:translate(-50%,-50%)}.adm-center-popup-body{background-color:var(--background-color);border-radius:var(--border-radius)}.adm-center-popup-close{position:absolute;z-index:100;right:8px;top:8px;cursor:pointer;padding:4px;font-size:18px;color:var(--adm-color-weak)}.adm-dialog{--z-index: var(--adm-dialog-z-index, 1000);---z-index: var(--z-index)}.adm-dialog .adm-center-popup{--z-index: var(---z-index)}.adm-dialog-body{width:100%;max-height:70vh;font-size:var(--adm-font-size-6);overflow:hidden;display:flex;flex-direction:column}.adm-dialog-body>*{flex:none}.adm-dialog-body>.adm-dialog-content{flex:auto}.adm-dialog-body:not(.adm-dialog-with-image){padding-top:20px}.adm-dialog-image-container{margin-bottom:12px;max-height:40vh}.adm-dialog-header{margin-bottom:8px;padding:0 12px}.adm-dialog-title{margin-bottom:8px;padding:0 12px;font-weight:700;font-size:var(--adm-font-size-10);line-height:25px;text-align:center}.adm-dialog-content{padding:0 12px 20px;max-height:70vh;overflow-x:hidden;overflow-y:auto;font-size:var(--adm-font-size-7);line-height:1.4;color:var(--adm-color-text)}.adm-dialog-content-empty{padding:0;height:12px}.adm-dialog-footer{-webkit-user-select:none;user-select:none}.adm-dialog-footer .adm-dialog-action-row{display:flex;align-items:stretch;border-top:.5px solid var(--adm-color-border)}.adm-dialog-footer .adm-dialog-action-row>*{flex:1}.adm-dialog-footer .adm-dialog-action-row>.adm-dialog-button{padding:10px;font-size:var(--adm-font-size-10);line-height:25px;border-radius:0;border-right:solid .5px var(--adm-color-border)}.adm-dialog-footer .adm-dialog-action-row>.adm-dialog-button-bold{font-weight:700}.adm-dialog-footer .adm-dialog-action-row>.adm-dialog-button:last-child{border-right:none}.adm-dialog-image-container{overflow-y:auto}.adm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 0}.adm-empty-image-container{display:flex;justify-content:center}.adm-empty-image-container .adm-empty-image{width:64px;height:intrinsic}.adm-empty-description{margin-top:8px;font-size:var(--adm-font-size-6);color:var(--adm-color-light)}.adm-form{--border-inner: solid 1px var(--adm-border-color);--border-top: solid 1px var(--adm-border-color);--border-bottom: solid 1px var(--adm-border-color);--prefix-width: 6.8em;---border-inner: var(--border-inner);---border-top: var(--border-top);---border-bottom: var(--border-bottom);---prefix-width: var(--prefix-width)}.adm-form .adm-list.adm-list{--padding-left: 16px;--padding-right: 12px;--border-inner: var(---border-inner);--border-top: var(---border-top);--border-bottom: var(---border-bottom)}.adm-form .adm-form-footer{padding:20px 12px}.adm-form .adm-form-item-horizontal.adm-list-item{--prefix-width: var(---prefix-width)}.adm-form-list-operation{text-align:center;color:var(--adm-color-primary)}.adm-form-item+.adm-form-item{border-top:none}.adm-form-item-label{display:block;height:100%;line-height:1.5;box-sizing:border-box;position:relative;color:var(--adm-color-text-secondary)}.adm-form-item-label .adm-form-item-required-asterisk{position:absolute;left:-.6em;top:0;font-family:SimSun,sans-serif;color:var(--adm-color-danger);-webkit-user-select:none;user-select:none}.adm-form-item-label .adm-form-item-required-text{margin-left:4px;color:var(--adm-color-weak)}.adm-form-item-label-help{margin-left:4px;cursor:pointer}.adm-form-item-child{display:flex}.adm-form-item-child-position-normal{justify-content:normal}.adm-form-item-child-position-normal>*{flex:auto}.adm-form-item-child-position-right{justify-content:flex-end}.adm-form-item-child-position-right>*{flex:none}.adm-form-item-feedback-error{color:var(--adm-color-danger);margin-top:4px}.adm-form-item-feedback-warning{color:var(--adm-color-warning);margin-top:4px}.adm-form-item.adm-form-item-hidden{display:none}.adm-form-item.adm-form-item-horizontal.adm-list-item{--align-items: stretch}.adm-form-item.adm-form-item-horizontal .adm-list-item-content-prefix{padding-top:12px;padding-bottom:12px}.adm-form-item.adm-form-item-horizontal .adm-list-item-content-extra{align-self:center}.adm-form-item.adm-form-item-vertical .adm-form-item-label{font-size:var(--adm-font-size-7);margin-bottom:4px}.adm-popover{--z-index: var(--adm-popover-z-index, 1030);--background: #ffffff;--arrow-size: 8px;--content-padding: 8px 12px;color:var(--adm-color-text);position:absolute;top:0;left:0;z-index:var(--z-index);white-space:normal;text-align:left;cursor:auto;-webkit-user-select:text;user-select:text;animation:none}.adm-popover.adm-popover-dark{--background: rgba(0, 0, 0, .75);--adm-color-text: #ffffff;color:#fff}.adm-popover.adm-popover-dark .adm-popover-inner{box-shadow:none}.adm-popover:after{position:absolute;background:#ffffff03;content:""}.adm-popover-hidden{display:none}.adm-popover-inner{background-color:var(--background);background-clip:padding-box;border-radius:8px;box-shadow:0 0 30px #3333;font-size:var(--adm-font-size-7);width:-webkit-max-content;width:max-content;min-width:32px;max-width:calc(100vw - 24px);overflow-y:hidden}.adm-popover-inner-content{padding:var(--content-padding)}.adm-popover-arrow{position:absolute;display:block;height:var(--arrow-size);width:var(--arrow-size);overflow:visible;background:transparent}.adm-popover-arrow-icon{display:block;height:var(--arrow-size);width:calc(var(--arrow-size) / 8 * 15);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(var(--arrow-icon-rotate))}.adm-popover .adm-popover-arrow{color:var(--background)}.adm-popover-menu{--border-color: var(--adm-color-border)}.adm-popover-menu.adm-popover{--content-padding: 0}.adm-popover-menu-list{overflow:hidden;min-width:120px}.adm-popover-menu-list-inner{margin-top:-1px}.adm-popover-menu-list-scroll{padding-right:2px;overflow-y:scroll;-webkit-overflow-scrolling:auto}.adm-popover-menu-list-scroll::-webkit-scrollbar{-webkit-appearance:none;width:4px}.adm-popover-menu-list-scroll::-webkit-scrollbar-thumb{border-radius:4px;background-color:#ddd}.adm-popover-menu-item{display:flex;padding-left:20px;justify-content:flex-start;align-items:center;position:relative}.adm-popover-menu-item-icon{flex:none;padding-right:8px;font-size:20px}.adm-popover-menu-item-text{flex:auto;padding:14px 20px 14px 0;border-top:solid 1px var(--border-color)}.adm-popover-menu-item-disabled{cursor:not-allowed}.adm-popover-menu-item-disabled>*{opacity:.4}.adm-popover-menu-item:active:not(.adm-popover-menu-item-disabled){background-color:var(--border-color)}.adm-popover-menu-item:active:not(.adm-popover-menu-item-disabled):after{content:" ";display:block;position:absolute;width:100%;bottom:-1px;left:0;border-bottom:solid 1px var(--border-color)}.adm-popover.adm-popover-dark.adm-popover-menu{--border-color: var(--adm-color-text);--background: rgba(0, 0, 0, .9)}.adm-input{--font-size: var(--adm-font-size-9);--color: var(--adm-color-text);--placeholder-color: var(--adm-color-light);--text-align: left;--background-color: transparent;display:flex;justify-content:flex-start;align-items:center;width:100%;max-width:100%;max-height:100%;min-height:24px;background-color:var(--background-color)}.adm-input-disabled{opacity:.4;cursor:not-allowed}.adm-input-element{flex:auto;display:inline-block;box-sizing:border-box;width:100%;max-width:100%;max-height:100%;padding:0;margin:0;color:var(--color);font-size:var(--font-size);line-height:1.5;background:transparent;border:0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:1.5em;text-align:var(--text-align)}.adm-input-element::-webkit-input-placeholder{color:var(--placeholder-color);font-family:inherit}.adm-input-element::placeholder{color:var(--placeholder-color);font-family:inherit}.adm-input-element:-webkit-autofill{background-color:transparent}.adm-input-element:read-only{cursor:default}.adm-input-element:invalid{box-shadow:none}.adm-input-element::-ms-clear{display:none}.adm-input-element::-ms-reveal{display:none}.adm-input-element::-webkit-search-cancel-button{display:none}.adm-input-element::-webkit-search-decoration{display:none}.adm-input-element:disabled{opacity:1}.adm-input-element[type=date],.adm-input-element[type=time],.adm-input-element[type=datetime-local]{min-height:1.5em}.adm-input-element[type=search]{-webkit-appearance:none}.adm-input-element[readonly]{pointer-events:none}.adm-input-clear{flex:none;margin-left:8px;color:var(--adm-color-light);padding:4px;cursor:pointer}.adm-input-clear:active{color:var(--adm-color-weak)}.adm-input-clear .antd-mobile-icon{display:block;font-size:var(--adm-font-size-7)}.adm-notice-bar{--background-color: var(--adm-color-weak);--border-color: var(--adm-color-weak);--text-color: var(--adm-color-text-light-solid);--font-size: var(--adm-font-size-7);--icon-font-size: var(--adm-font-size-10);--height: 40px;--adm-notice-bar-border-radius: 4px;--adm-notice-bar-border-width: 1px;height:var(--height);box-sizing:border-box;font-size:var(--font-size);padding:0 12px;display:flex;align-items:center;justify-content:space-between;border:solid var(--adm-notice-bar-border-width) var(--border-color);border-left-width:0;border-right-width:0;background-color:var(--background-color);color:var(--text-color)}.adm-notice-bar>span[role=img]{color:var(--text-color)}.adm-notice-bar.adm-notice-bar-alert{--background-color: #fff9ed;--border-color: #fff3e9;--text-color: var(--adm-color-orange)}.adm-notice-bar.adm-notice-bar-error{--background-color: var(--adm-color-danger);--border-color: #d9281e;--text-color: #fff}.adm-notice-bar.adm-notice-bar-info{--background-color: #d0e4ff;--border-color: #bcd8ff;--text-color: var(--adm-color-primary)}.adm-notice-bar.adm-notice-bar-success{--background-color: #d1fff0;--border-color: #a8f0d8;--text-color: var(--adm-color-success)}.adm-notice-bar .adm-notice-bar-left{flex-shrink:0;margin-right:8px;font-size:var(--icon-font-size)}.adm-notice-bar .adm-notice-bar-content{flex:1;overflow:hidden;position:relative;height:100%;display:flex;align-items:center}.adm-notice-bar .adm-notice-bar-content .adm-notice-bar-content-inner{width:auto;transition-timing-function:linear;white-space:nowrap}.adm-notice-bar-wrap.adm-notice-bar .adm-notice-bar-content .adm-notice-bar-content-inner{white-space:normal}.adm-notice-bar .adm-notice-bar-right{display:flex;align-items:center;flex-shrink:0;margin-left:12px}.adm-notice-bar-close{width:24px;height:24px;margin-right:-3px;display:flex;align-items:center;justify-content:center;font-size:var(--adm-font-size-10)}.adm-notice-bar-wrap{height:auto;align-items:flex-start;padding-top:8px;padding-bottom:8px;line-height:22px}.adm-notice-bar-neutral{border-radius:var(--adm-notice-bar-border-radius)}.adm-notice-bar-rounded{border-radius:1000px}.adm-notice-bar-bordered{border-left-width:var(--adm-notice-bar-border-width);border-right-width:var(--adm-notice-bar-border-width)}.adm-notice-bar-without-border{border-top-width:0;border-bottom-width:0}.adm-search-bar{--height: 32px;--padding-left: 8px;--background: var(--adm-color-fill-content);--border-radius: 6px;--placeholder-color: var(--adm-color-weak);---placeholder-color: var(--placeholder-color);display:flex;justify-content:center;align-items:center;height:var(--height)}.adm-search-bar .adm-search-bar-input-box{flex:auto;background:var(--background);border-radius:var(--border-radius);border:solid 1px transparent;display:flex;justify-content:center;align-items:center;padding-left:var(--padding-left)}.adm-search-bar .adm-search-bar-input-box .adm-search-bar-input-box-icon{flex:none;color:var(--adm-color-light);font-size:var(--adm-font-size-8)}.adm-search-bar .adm-search-bar-input-box .adm-search-bar-input{flex:auto;padding:4px 8px 4px 4px;height:calc(var(--height) - 2px);box-sizing:border-box}.adm-search-bar .adm-search-bar-input-box .adm-search-bar-input.adm-input{--placeholder-color: var(---placeholder-color);--font-size: var(--adm-font-size-7)}.adm-search-bar .adm-search-bar-input-box .adm-search-bar-input .adm-input-element{line-height:19px}.adm-search-bar .adm-search-bar-input-box .adm-search-bar-input.adm-search-bar-input-without-icon{padding-left:8px}.adm-search-bar .adm-search-bar-suffix{flex:none;margin-left:4px}.adm-search-bar .adm-search-bar-cancel-button.adm-button{padding:3px 12px}.adm-search-bar-active .adm-input.adm-input.adm-input{--placeholder-color: var(--adm-color-light)}.adm-search-bar-active .adm-search-bar-input-box{border-color:var(--adm-color-primary);background:var(--adm-color-background)}.adm-toast-mask .adm-toast-wrap{position:fixed;top:0;left:0;width:100%;height:100%;text-align:center}.adm-toast-mask .adm-toast-main{display:inline-block;position:relative;top:50%;transform:translateY(-50%);width:auto;max-width:204px;max-height:70%;overflow:auto;color:#fff;word-break:break-all;background-color:#000000b3;border-radius:8px;pointer-events:all;font-size:var(--adm-font-size-7);line-height:1.5;box-sizing:border-box;text-align:initial}.adm-toast-mask .adm-toast-main-text{padding:12px;min-width:0}.adm-toast-mask .adm-toast-main-icon{padding:35px 12px;min-width:150px}.adm-toast-mask .adm-toast-main-icon .adm-toast-icon{text-align:center;margin-bottom:8px;font-size:36px;line-height:1}.adm-toast-loading{--size: 48px;margin:0 auto 8px}.inbox-trigger{position:relative;flex:0 0 auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:0;border:none;background:none;color:var(--color-ink-2);cursor:pointer;border-radius:8px;transition:background var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard)}.inbox-trigger:hover{background:var(--color-fill);color:var(--color-ink-1)}.inbox-trigger:active{background:var(--color-lake-wash)}.inbox-trigger:focus-visible{outline:2px solid var(--color-lake);outline-offset:1px}.inbox-dot{position:absolute;top:4px;right:3px;min-width:17px;height:17px;padding:0 4px;border-radius:var(--radius-lg);background:var(--color-lake);color:#fff;font-size:10px;font-weight:600;line-height:17px;text-align:center;box-shadow:0 0 0 2px var(--color-paper)}.inbox-popup{width:min(400px,100vw);height:100%;display:flex;flex-direction:column;background:var(--color-paper)}.inbox{display:flex;flex-direction:column;height:100%;min-height:0}.inbox-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 10px;border-bottom:1px solid var(--color-border)}.inbox-head-main{display:flex;align-items:baseline;gap:8px;min-width:0}.inbox-title{margin:0;font-size:17px;font-weight:600;line-height:1.3;color:var(--color-ink-1)}.inbox-count{font-size:var(--font-minor);color:var(--color-lake);font-weight:500}.inbox-head-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.inbox-link{min-height:44px;padding:0 8px;border:none;background:none;font-family:inherit;font-size:var(--font-caption);color:var(--color-lake);cursor:pointer;border-radius:6px;transition:background var(--duration-tap) var(--ease-standard)}.inbox-link:hover:not(:disabled){background:var(--color-lake-wash)}.inbox-link:disabled{color:var(--color-ink-dis, var(--color-ink-3));cursor:not-allowed;opacity:.6}.inbox-close{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:none;color:var(--color-ink-3);cursor:pointer;border-radius:8px;transition:background var(--duration-tap) var(--ease-standard)}.inbox-close:hover{background:var(--color-fill);color:var(--color-ink-1)}.inbox-tabs{flex:0 0 auto;display:flex;gap:4px;padding:10px 16px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--color-border)}.inbox-tabs::-webkit-scrollbar{display:none}.inbox-tab{flex:0 0 auto;min-height:34px;padding:0 12px;border:1px solid transparent;background:var(--color-fill);color:var(--color-ink-2);font-family:inherit;font-size:var(--font-caption);border-radius:999px;cursor:pointer;transition:background var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard)}.inbox-tab:hover{color:var(--color-ink-1)}.inbox-tab.is-on{background:var(--color-surface);border-color:var(--color-border);color:var(--color-ink-1);font-weight:600;box-shadow:var(--shadow-hair, 0 1px 6px rgba(43, 38, 32, .05))}.inbox-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.inbox-list{list-style:none;margin:0;padding:8px 12px 16px;display:flex;flex-direction:column;gap:8px}.inbox-item{position:relative;width:100%;min-height:64px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px 12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:left;font-family:inherit;cursor:pointer;transition:border-color var(--duration-tap) var(--ease-standard),background var(--duration-tap) var(--ease-standard)}.inbox-item:hover{border-color:var(--color-border-strong, var(--color-ink-3))}.inbox-item:focus-visible{outline:2px solid var(--color-lake);outline-offset:1px}.inbox-item.is-unread{background:var(--color-lake-wash);border-color:var(--color-lake-wash)}.inbox-item.is-unread:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--color-lake)}.inbox-item-top{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.inbox-tag{flex:0 0 auto;padding:1px 6px;border-radius:4px;font-size:11px;line-height:17px;font-weight:500;background:var(--color-fill);color:var(--color-ink-2)}.inbox-tag.tag-refund{background:var(--color-accent-wash);color:var(--color-accent)}.inbox-tag.tag-alert{background:var(--color-danger-wash);color:var(--color-danger)}.inbox-tag.tag-order{background:var(--color-lake-wash);color:var(--color-lake-deep, var(--color-lake))}.inbox-item-title{flex:1 1 auto;min-width:0;font-size:var(--font-body-sm);font-weight:500;color:var(--color-ink-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-item-when{flex:0 0 auto;font-size:11px;color:var(--color-ink-3);font-variant-numeric:tabular-nums}.inbox-item.is-unread .inbox-item-when{margin-right:12px}.inbox-item-content{font-size:var(--font-minor);line-height:1.5;color:var(--color-ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inbox-item-go{font-size:var(--font-minor);color:var(--color-lake);font-weight:500}.inbox-unread-dot{position:absolute;top:14px;right:12px;width:7px;height:7px;border-radius:50%;background:var(--color-lake)}.inbox-skeleton{padding:16px;display:flex;flex-direction:column;gap:12px}.inbox-skeleton-row{padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.sk-line{height:10px;border-radius:4px;background:var(--color-fill);animation:inbox-pulse 1.4s ease-in-out infinite}.sk-line-1{width:62%;margin-bottom:8px}.sk-line-2{width:88%}@keyframes inbox-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion: reduce){.sk-line{animation:none}}.inbox-state{padding:48px 24px;text-align:center}.inbox-state-title{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-1);margin-bottom:8px}.inbox-state-desc{margin:0;font-size:var(--font-minor);line-height:1.6;color:var(--color-ink-3)}.inbox-state-hint{margin:6px 0 0;font-size:var(--font-minor);line-height:1.6;color:var(--color-ink-2)}.inbox-state-error{text-align:left;margin:16px;padding:16px;border:1px solid var(--color-border);border-left:3px solid var(--color-danger);border-radius:var(--radius-lg);background:var(--color-surface)}.inbox-state-error .inbox-state-title{color:var(--color-danger)}.inbox-retry{margin-top:12px;min-height:44px;padding:0 20px;border:1px solid var(--color-lake);border-radius:8px;background:var(--color-surface);color:var(--color-lake);font-family:inherit;font-size:var(--font-caption);font-weight:500;cursor:pointer;transition:background var(--duration-tap) var(--ease-standard)}.inbox-retry:hover{background:var(--color-lake-wash)}.inbox-foot{flex:0 0 auto;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);font-size:11px;line-height:1.5;color:var(--color-ink-3);text-align:center}@media (min-width: 1024px){.layout-topbar .density-toggle{margin-left:8px}}.layout{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:750px;margin:0 auto;background-color:var(--color-paper)}.layout-content{flex:1;padding:16px;padding-bottom:calc(60px + env(safe-area-inset-bottom))}.layout-tabbar{position:fixed;bottom:0;left:0;right:0;max-width:750px;margin:0 auto;height:58px;background-color:var(--color-surface);border-top:1px solid var(--color-border);display:flex;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom);z-index:100}.tabbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:color var(--duration-tap) var(--ease-standard);color:var(--color-ink-3)}.tabbar-icon{flex:0 0 auto}.tabbar-label{font-size:var(--font-minor);line-height:1.2}.tabbar-item.active{color:var(--color-lake)}.tabbar-item.active .tabbar-label{font-weight:600}.layout-topbar{flex:0 0 auto;min-height:46px;display:flex;align-items:center;padding:0 16px;background-color:var(--color-paper);border-bottom:1px solid var(--color-border)}.topbar-crumb{display:flex;align-items:center;gap:6px;min-height:20px;font-size:var(--font-body-sm)}.crumb-group{color:var(--color-ink-3)}.crumb-sep{color:var(--color-ink-dis)}.crumb-page{color:var(--color-ink-1);font-weight:600}.layout-side{display:none}@media (min-width: 1024px){.layout{flex-direction:row;max-width:none;margin:0}.layout-side{display:flex;flex-direction:column;width:224px;flex:0 0 224px;height:100vh;position:sticky;top:0;background:var(--color-fill);border-right:1px solid var(--color-border);overflow:hidden}.side-brand{display:flex;align-items:center;gap:10px;padding:14px 14px 13px;border-bottom:1px solid var(--color-border);flex:0 0 auto}.side-mark{flex:0 0 28px;width:28px;height:28px;border-radius:var(--radius-md);background:var(--color-lake);color:#fff;display:flex;align-items:center;justify-content:center}.side-brand-text{min-width:0;display:flex;flex-direction:column}.side-brand-name{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-1);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-brand-sub{font-size:var(--font-minor);color:var(--color-ink-3);line-height:1.3}.side-nav{flex:1 1 auto;overflow-y:auto;padding:10px 8px 24px}.side-group{margin-bottom:18px}.side-group-title{font-size:var(--font-minor);color:var(--color-ink-3);padding:6px 10px 5px;letter-spacing:.5px}.side-item{position:relative;display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:6px;font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer;transition:background var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard)}.side-icon{flex:0 0 20px;color:var(--color-ink-3);transition:color var(--duration-tap) var(--ease-standard)}.side-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-item:hover{background:var(--color-surface);color:var(--color-ink-1)}.side-item.active{background:var(--color-lake-wash);color:var(--color-ink-1);font-weight:600}.side-item.active .side-icon{color:var(--color-lake)}.side-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--color-lake)}.side-foot{flex:0 0 auto;display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--color-border)}.side-lang{flex:1;padding:6px 0;font-size:var(--font-caption);font-family:inherit;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-ink-2);cursor:pointer;transition:border-color var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard)}.side-lang.on{border-color:var(--color-lake);color:var(--color-lake);font-weight:600}.layout-main{flex:1;min-width:0;display:flex;flex-direction:column}.layout-tabbar{display:none}.layout-topbar{position:sticky;top:0;z-index:20;min-height:52px;padding:0 24px}.layout-content{padding:20px 24px 32px;max-width:1240px;width:100%;margin:0 auto}.layout-content>div{max-width:1100px}}.density-toggle{margin-left:auto;display:none;align-items:center;gap:2px;padding:2px;background:var(--color-fill);border:1px solid var(--color-border);border-radius:999px}@media (min-width: 768px){.density-toggle{display:inline-flex}html:not(:has(table:not(.rb-table):not(.rcal-table):not(.fo-p-table))) .density-toggle{display:none}}.density-opt{border:none;background:none;cursor:pointer;font-family:inherit;font-size:var(--font-minor);font-weight:500;color:var(--color-ink-3);padding:4px 12px;min-height:40px;border-radius:999px;line-height:1.4;transition:background var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard)}.density-opt:hover{color:var(--color-ink-1)}.density-opt.on{background:var(--color-surface);color:var(--color-ink-1);font-weight:600;box-shadow:var(--shadow-hair)}.side-merchant{padding:0 16px 10px}.topbar-merchant{margin-left:auto;margin-right:10px;min-width:0}@media (min-width: 1024px){.topbar-merchant{display:none}}@media (min-width: 768px) and (max-width: 1023.98px){.density-toggle{margin-left:10px}}.eb-wrap{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:24px 16px;box-sizing:border-box}.eb-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:28px 22px;text-align:center;box-shadow:var(--shadow-card)}.eb-title{font-size:var(--font-title-lg);font-weight:600;color:var(--color-ink-1);margin-bottom:12px}.eb-desc{font-size:var(--font-subtitle);line-height:1.7;color:var(--color-ink-2);margin-bottom:24px;text-align:left}.eb-actions{display:flex;flex-direction:column;gap:12px}.eb-btn{width:100%;height:48px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-1);font-size:var(--font-title);font-weight:600;cursor:pointer}.eb-btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.eb-btn:active{transform:scale(var(--motion-press-scale));transition:transform var(--duration-tap) var(--ease-standard)}.eb-details{margin-top:20px;text-align:left;font-size:var(--font-caption);color:var(--color-ink-3)}.eb-details summary{cursor:pointer;-webkit-user-select:none;user-select:none}.eb-stack{margin-top:8px;padding:10px;background:var(--color-surface);border-radius:6px;font-size:var(--font-minor);line-height:1.5;color:var(--color-ink-2);white-space:pre-wrap;word-break:break-all;max-height:180px;overflow:auto}.login-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px;background:radial-gradient(120% 80% at 50% 0%,var(--color-gold-wash) 0%,transparent 62%),linear-gradient(180deg,var(--color-lake) 0%,var(--color-lake-deep) 100%)}.login-header{text-align:center;width:100%;margin-bottom:48px}.login-title{font-size:var(--font-hero);font-weight:600;color:var(--bg-card);margin-bottom:8px;position:relative;padding-bottom:14px}.login-title:after{content:"";position:absolute;left:50%;bottom:0;transform:translate(-50%);width:40px;height:2px;border-radius:1px;background:var(--color-gold)}.login-mark{width:60px;height:60px;margin:0 auto 14px;border-radius:var(--radius-xl);background:var(--color-gold);color:var(--color-ink-1);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-l2)}.login-subtitle{font-size:var(--font-body);color:#fffc}.login-form{background-color:var(--bg-card);border-radius:var(--radius-lg);padding:32px;width:100%;max-width:400px;margin:0 auto;box-shadow:var(--shadow-l3)}.error-notice{margin-bottom:16px}.login-form .adm-form .adm-form-item{margin-bottom:24px}.login-form .adm-form .adm-form-item-label{font-size:var(--font-body);font-weight:600;color:var(--text-primary);margin-bottom:8px}.login-form .form-input{--font-size: var(--font-title);--color: var(--text-primary);--placeholder-color: var(--text-placeholder);--background-color: var(--color-fill);--border-radius: var(--radius-base);height:48px;padding:0 16px;background-color:var(--color-fill);border:1px solid var(--color-border-strong);border-radius:var(--radius-base);transition:border-color var(--duration-tap) var(--ease-standard),box-shadow var(--duration-tap) var(--ease-standard)}.login-form .form-input:focus-within{border-color:var(--color-lake);box-shadow:0 0 0 3px var(--color-lake-wash)}.login-hint{margin-top:16px;font-size:var(--font-minor);line-height:1.6;color:var(--color-ink-3);text-align:center}.login-btn{margin-top:8px;--background-color: var(--brand-primary);--border-color: var(--brand-primary);--text-color: var(--bg-card);height:48px;font-size:var(--font-title);font-weight:600}.login-tabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid var(--color-border)}.login-tab{flex:1;background:none;border:none;padding:10px 0;font-size:var(--font-subtitle);color:var(--color-ink-2);cursor:pointer;border-bottom:2px solid transparent}.login-tab.active{color:var(--brand-primary, var(--color-lake));border-bottom-color:var(--brand-primary, var(--color-lake));font-weight:600}.panel{background:var(--bg-card);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}.panel-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.panel-title-area{flex:1;min-width:0}.panel-title{font-size:var(--font-title);font-weight:700;color:var(--text-primary);margin-bottom:4px}.panel-subtitle{font-size:var(--font-body-sm);color:var(--text-secondary)}.panel-body{margin-bottom:16px}.panel-item-text{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.panel-item-label{font-size:var(--font-body);color:var(--text-secondary)}.panel-item-value{font-size:var(--font-body);color:var(--text-primary);font-weight:500}.panel-item-badge{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.badge-label{font-size:var(--font-body);color:var(--text-secondary)}.badge-value{font-size:var(--font-caption);padding:2px 8px;border:1px solid var(--brand-primary);border-radius:var(--radius-lg);color:var(--brand-primary)}.panel-divider{height:1px;background:var(--border-color);margin:12px 0}.panel-empty{text-align:center;padding:24px;color:var(--text-secondary);font-size:var(--font-body)}.panel-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border-color)}.panel-action-btn{flex:1;padding:8px 16px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body);cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard)}.panel-action-btn:hover{background:var(--bg-hover)}.panel-action-btn.danger{background:var(--brand-primary);color:var(--bg-card);border-color:var(--brand-primary)}.panel-action-btn.danger:hover{background:var(--brand-primary-hover)}.todo-extras{margin-top:var(--space-16)}.todo-extras-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-8);margin-bottom:var(--space-8);color:var(--color-ink-3);font-size:12px}.todo-extras-list{display:grid;gap:var(--space-8)}.todo-badge.b-extra{background:var(--color-lake-wash);color:var(--color-lake)}.workbench-page{padding:16px}.workbench-header h1{font-size:var(--font-title-lg);font-weight:600;color:var(--color-ink-1)}.workbench-header p{margin-top:4px;font-size:var(--font-body-sm);color:var(--color-ink-2)}.panel-row{margin-top:16px}.panel-row-compact{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.panel-row-compact .panel{margin-bottom:0;padding:12px 14px;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-hair)}.panel-row-compact .panel-header{margin-bottom:6px;padding-bottom:0;border-bottom:none}.panel-row-compact .panel-title{font-size:var(--font-caption);font-weight:500;color:var(--color-ink-3);margin-bottom:0}.panel-row-compact .panel-body{margin-bottom:0}.panel-row-compact .panel-item-text{padding:0;justify-content:flex-start}.panel-row-compact .panel-item-value{font-size:var(--font-num-28);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.section-label{margin-top:22px;font-size:var(--font-caption);font-weight:600;color:var(--color-ink-3)}.wb-stats-minor{margin:12px 0 0;font-size:var(--font-caption);color:var(--color-ink-3);font-variant-numeric:tabular-nums}.quick-actions{margin-top:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media (min-width: 768px){.quick-actions{grid-template-columns:repeat(5,1fr)}}@media (min-width: 1024px){.quick-actions{grid-template-columns:repeat(6,1fr)}}.quick-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 4px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font-family:inherit;transition:border-color var(--duration-tap) var(--ease-standard),transform var(--duration-tap) var(--ease-standard),background var(--duration-tap) var(--ease-standard)}.quick-item:hover{border-color:var(--color-lake)}.quick-item:active{transform:scale(var(--motion-press-scale));background:var(--color-lake-wash)}.quick-icon{display:flex;color:var(--color-ink-3);transition:color var(--duration-tap) var(--ease-standard)}.quick-item:hover .quick-icon{color:var(--color-lake)}.quick-label{font-size:var(--font-caption);color:var(--color-ink-1)}.today-hero{margin-top:18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-hair);padding:16px}.today-hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.today-hero-stat{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:14px 14px 12px;background:var(--color-fill);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font-family:inherit;text-align:left;transition:border-color var(--duration-tap) var(--ease-standard),box-shadow var(--duration-tap) var(--ease-standard)}.today-hero-stat:hover{border-color:var(--color-lake);box-shadow:var(--shadow-hair)}.today-hero-num{font-size:var(--font-num-28);font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.today-hero-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-caption);color:var(--color-ink-2);white-space:nowrap}.hero-dot{flex:0 0 6px;width:6px;height:6px;border-radius:50%}.today-hero-stat.s-in .hero-dot{background:var(--color-danger)}.today-hero-stat.s-out .hero-dot{background:var(--color-lake)}.today-hero-stat.s-stay .hero-dot{background:var(--color-ink-3)}.today-hero-stat.s-money .hero-dot{background:var(--color-warning)}.today-hero-actions{margin-top:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.hero-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 8px;min-height:88px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);cursor:pointer;font-family:inherit;transition:transform var(--duration-tap) var(--ease-standard),border-color var(--duration-tap) var(--ease-standard)}.hero-btn:hover{border-color:var(--color-lake)}.hero-btn:active{transform:scale(var(--motion-press-scale))}.hero-btn-icon{display:flex;color:var(--color-lake)}.hero-btn-label{font-size:var(--font-subtitle);font-weight:600;color:var(--color-ink-1)}.hero-btn-primary{background:var(--color-lake);border-color:var(--color-lake);box-shadow:0 3px 10px var(--color-lake-wash)}.hero-btn-primary .hero-btn-icon,.hero-btn-primary .hero-btn-label{color:var(--color-ink-on-dark)}.today-todo{margin-top:16px;border-top:1px solid var(--color-border);padding-top:12px}.today-todo-title{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-2);margin-bottom:10px}.todo-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;margin-bottom:8px;background:var(--color-fill);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.todo-card-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.todo-badge{display:inline-flex;align-items:center;font-size:var(--font-minor);font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}.todo-badge.b-arrival{background:var(--color-danger-wash);color:var(--color-danger)}.todo-badge.b-departure{background:var(--color-lake-wash);color:var(--color-lake)}.todo-badge.b-order{background:var(--color-warning-wash);color:var(--color-warning-on-wash)}.todo-name{font-size:var(--font-subtitle);font-weight:600;color:var(--color-ink-1)}.todo-sub{font-size:var(--font-caption);color:var(--color-ink-2)}.wb-banner-action{border:none;background:none;padding:0;font:inherit;font-weight:600;color:inherit;text-decoration:underline;cursor:pointer}.wb-banner-action:active{transform:scale(var(--motion-press-scale))}.todo-btn{flex:0 0 auto;padding:8px 16px;min-height:40px;font-size:var(--font-body-sm);font-weight:600;font-family:inherit;color:var(--color-ink-on-dark);background:var(--color-lake);border:none;border-radius:8px;cursor:pointer;transition:opacity var(--duration-tap) var(--ease-standard),transform var(--duration-tap) var(--ease-standard)}.todo-btn:active{transform:scale(var(--motion-press-scale))}@media (min-width: 1024px){.today-hero{padding:22px}.today-hero-num{font-size:var(--font-num-28)}.today-hero-stats,.today-hero-actions{grid-template-columns:repeat(4,1fr)}.hero-btn{min-height:104px;padding:22px 8px}.todo-card{padding:14px 16px}}.orders-page{padding:16px}.orders-summary{font-size:var(--font-body-sm);color:var(--text-secondary);margin-bottom:12px}.order-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px;margin-bottom:12px}.order-head{display:flex;justify-content:space-between;align-items:center}.order-no{font-size:var(--font-body);font-weight:600;color:var(--text-primary)}.order-status{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-base);background:var(--bg-secondary);color:var(--text-secondary)}.order-test-flag{margin-top:6px;display:inline-block;font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-base);background:var(--warning-bg);color:var(--warning-text)}.order-meta{margin-top:8px;font-size:var(--font-body-sm);color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:8px}.order-items{margin-top:8px;font-size:var(--font-caption);color:var(--text-secondary);line-height:1.6}.order-amount-row{margin-top:8px;display:flex;justify-content:space-between;align-items:baseline}.order-amount{font-size:var(--font-title-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.order-codes{font-size:var(--font-caption);color:var(--text-secondary)}.orders-empty{padding:48px 16px;text-align:center;color:var(--text-secondary);font-size:var(--font-body)}.orders-empty-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:8px}.orders-error{padding:32px 16px;text-align:center;color:var(--warning-text);background:var(--warning-bg);border-radius:var(--radius-base);font-size:var(--font-body-sm)}.order-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--color-border)}.order-confirm-btn{background:var(--brand-primary, var(--color-lake));color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:var(--font-body);cursor:pointer}.order-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.order-action-ok{color:var(--color-success);font-size:var(--font-body-sm)}.order-action-err{color:var(--color-danger);font-size:var(--font-body-sm)}.orders-tabs{display:flex;gap:8px;margin-bottom:12px}.orders-tab{flex:1;padding:9px 0;font-size:var(--font-body);border:1px solid var(--border-color, rgba(0, 0, 0, .1));background:var(--bg-card);color:var(--text-secondary);border-radius:var(--radius-base);cursor:pointer}.orders-tab-active{background:var(--brand-primary, var(--color-lake));border-color:var(--brand-primary, var(--color-lake));color:#fff;font-weight:600}.order-card-pending{border:1px solid var(--color-warning)}.order-status-pending{background:var(--color-gold-wash);color:var(--color-warning)}.order-deadline{margin-top:6px;font-size:var(--font-caption);color:var(--warning-text, var(--color-warning));font-weight:500}.order-reject-btn{background:var(--bg-card);color:var(--danger-text, var(--color-danger));border:1px solid var(--danger-text, var(--color-danger));border-radius:8px;padding:7px 16px;font-size:var(--font-body);cursor:pointer}.order-reject-btn:disabled{opacity:.6;cursor:not-allowed}.order-reject-box{margin-top:10px;padding-top:10px;border-top:1px dashed var(--color-border)}.order-reject-input{width:100%;box-sizing:border-box;font-size:var(--font-body-sm);padding:8px 10px;border:1px solid var(--border-color, rgba(0, 0, 0, .12));border-radius:var(--radius-base);resize:vertical;font-family:inherit;background:var(--bg-secondary, var(--color-lake-wash));color:var(--text-primary)}.order-reject-btns{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.order-reject-confirm-btn{background:var(--danger-text, var(--color-danger));color:#fff;border:none;border-radius:8px;padding:7px 16px;font-size:var(--font-body);cursor:pointer}.order-reject-confirm-btn:disabled,.order-reject-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.order-reject-cancel-btn{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color, rgba(0, 0, 0, .12));border-radius:8px;padding:7px 16px;font-size:var(--font-body);cursor:pointer}.orders-sync{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;padding:6px 12px;border-radius:8px;background:var(--color-fill);font-size:var(--font-minor);color:var(--color-ink-3)}.orders-sync-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-sync-new{flex:0 0 auto;min-height:28px;padding:0 10px;border:none;border-radius:999px;background:var(--color-accent);color:#fff;font-family:inherit;font-size:11px;font-weight:600;cursor:pointer}.orders-sync-new:active{opacity:.85}.redeem-page{max-width:960px;margin:0 auto;padding:24px 16px 48px}.redeem-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:16px 20px;margin-bottom:16px}.redeem-input-row{display:flex;gap:8px}.redeem-input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-body)}.redeem-btn{padding:10px 20px;border:none;border-radius:var(--radius-base);font-size:var(--font-body);cursor:pointer}.redeem-btn:disabled{opacity:.6;cursor:not-allowed}.redeem-btn-primary{background:var(--brand-primary);color:var(--bg-card)}.redeem-btn-confirm{width:100%;margin-top:12px;background:var(--brand-gold);color:var(--brand-gold-ink)}.redeem-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color)}.redeem-label{color:var(--text-secondary);font-size:var(--font-body)}.redeem-value{color:var(--text-primary);font-size:var(--font-body);font-weight:500}.redeem-items{margin-top:12px}.redeem-item-row{display:flex;justify-content:space-between;padding:6px 0;font-size:var(--font-body);color:var(--text-primary)}.redeem-item-done{color:var(--color-success)}.redeem-item-pending{color:var(--color-warning)}.redeem-error{margin-top:10px;padding:8px 12px;border-radius:var(--radius-base);background:var(--state-bg-danger);color:var(--state-text-danger);font-size:var(--font-body-sm)}.redeem-success{margin-top:10px;padding:8px 12px;border-radius:var(--radius-base);background:var(--bg-selected);color:var(--brand-cyan);font-size:var(--font-body-sm)}.redeem-warn{margin-top:12px;padding:8px 12px;border-radius:var(--radius-base);background:var(--warning-bg-warm);color:var(--color-warning);font-size:var(--font-body-sm)}.redeem-hint{margin-top:8px;text-align:center;color:var(--text-placeholder);font-size:var(--font-caption)}.redeem-stage{margin-top:14px;padding-top:12px;border-top:1px dashed var(--color-border)}.redeem-btn-arrival{width:100%;margin-top:4px;background:var(--brand-cyan, var(--color-lake));color:#fff}.redeem-btn-arrival:disabled{opacity:.6;cursor:not-allowed}.redeem-stage-done{margin-top:4px;margin-bottom:4px;padding:8px 12px;border-radius:var(--radius-base);background:var(--state-bg-done);color:var(--state-text-done);font-size:var(--font-body-sm);text-align:center}.profile-page{max-width:960px;margin:0 auto;padding:24px 16px 48px}.profile-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:16px 20px;margin-bottom:16px}.profile-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.profile-row:last-of-type{border-bottom:none}.profile-label{color:var(--text-secondary);font-size:var(--font-body)}.profile-value{color:var(--text-primary);font-size:var(--font-body);font-weight:500;text-align:right;max-width:60%}.profile-value-muted{color:var(--text-placeholder);font-weight:400}.profile-note{margin:8px 0 0;color:var(--text-placeholder);font-size:var(--font-caption)}.profile-logout{width:100%;margin-top:8px;padding:12px 0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-base);color:var(--text-primary);font-size:var(--font-subtitle);cursor:pointer}.profile-logout:hover{background:var(--bg-hover)}.profile-logout-inline{width:auto;margin-top:0;padding:4px 14px;font-size:var(--font-body-sm)}.stall-page{min-height:100vh;background:var(--bg-primary);padding-bottom:40px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:12px;padding:0 24px;text-align:center}.stall-header{background:var(--brand-primary);border-bottom:1px solid var(--color-border-strong);padding:32px 20px;display:flex;align-items:flex-start;gap:16px}.stall-icon{width:56px;height:56px;background:#fff3;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--color-ink-on-dark);flex-shrink:0}.stall-info{flex:1;min-width:0}.stall-name{font-size:var(--font-title-lg);font-weight:700;color:var(--bg-card);margin-bottom:6px}.stall-desc{font-size:var(--font-body);color:#ffffffe6;margin-bottom:8px;line-height:1.5}.stall-location{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-body-sm);color:var(--color-ink-on-dark-2)}.products-section{padding:20px 16px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{font-size:var(--font-title-lg);font-weight:700;color:var(--text-primary)}.section-badge{font-size:var(--font-caption);color:var(--brand-primary);background:var(--color-accent-wash);padding:4px 10px;border-radius:12px}.section-badge.local{color:var(--color-warning-on-wash);background:var(--color-gold-wash)}.empty-state{text-align:center;padding:60px 20px;background:var(--bg-card);border-radius:12px}.empty-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:12px}.empty-text{font-size:var(--font-title);color:var(--text-secondary)}.products-list{display:flex;flex-direction:column;gap:12px}.product-card{background:var(--bg-card);border-radius:12px;padding:16px;display:flex;gap:12px}.product-card.platform{border-left:3px solid var(--brand-primary)}.product-card.local{border-left:3px solid var(--color-warning)}.product-image{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--bg-primary)}.product-image img{width:100%;height:100%;object-fit:cover}.product-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.product-name-row{display:flex;align-items:center;gap:8px}.product-name{font-size:var(--font-title);font-weight:700;color:var(--text-primary)}.local-badge{font-size:var(--font-minor);color:var(--brand-gold-ink);background:var(--brand-gold);padding:2px 6px;border-radius:4px;font-weight:700}.product-desc{font-size:var(--font-body-sm);color:var(--text-secondary);line-height:1.4}.product-price{margin-top:auto}.price-value{font-size:var(--font-title-lg);font-weight:700;color:var(--brand-primary)}.price-unit{font-size:var(--font-body-sm);color:var(--text-secondary);margin-left:2px}.local-hint{font-size:var(--font-caption);color:var(--color-warning);margin-top:4px}.product-action{display:flex;align-items:center;flex-shrink:0}.pay-button{background:var(--brand-primary);color:var(--bg-card);border:none;padding:10px 16px;border-radius:8px;font-size:var(--font-body);font-weight:700;cursor:pointer;white-space:nowrap}.pay-button:active{background:var(--brand-primary-hover)}.lead-section{margin:20px 16px;background:var(--bg-card);border-radius:12px;padding:20px}.lead-title{font-size:var(--font-title);font-weight:700;color:var(--text-primary);margin-bottom:16px;text-align:center}.lead-form{display:flex;gap:12px}.lead-form-disabled{padding:12px 16px;background:var(--bg-primary);border-radius:8px}.lead-notice{font-size:var(--font-body-sm);color:var(--text-placeholder)}.lead-input{flex:1;background:var(--bg-primary);border:none;border-radius:8px;padding:12px 16px;font-size:var(--font-subtitle);outline:none}.lead-input:focus{background:var(--bg-hover)}.lead-button{background:var(--brand-primary);color:var(--bg-card);border:none;padding:12px 24px;border-radius:8px;font-size:var(--font-subtitle);font-weight:700;cursor:pointer;white-space:nowrap}.lead-button:disabled{opacity:.6;cursor:not-allowed}.lead-button:active:not(:disabled){background:var(--brand-primary-hover)}.lead-success{text-align:center;padding:20px 0}.success-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:12px}.success-text{font-size:var(--font-subtitle);color:var(--text-primary)}.footer-hint{margin:20px 16px;padding:16px;background:var(--bg-card);border-radius:12px;text-align:center}.hint-text{font-size:var(--font-body);color:var(--text-secondary)}.lead-form-col{display:flex;flex-direction:column;gap:12px}textarea.lead-input{width:100%;resize:vertical;font-family:inherit;line-height:1.5}.lead-notice-err{color:var(--color-danger)}.lead-notice-ok{color:var(--color-success)}.redeem-confirm-page{min-height:100vh;background:var(--bg-primary);padding:20px 16px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;gap:16px}.loading-icon{display:flex;justify-content:center;color:var(--color-ink-3)}.loading-text{font-size:var(--font-title);color:var(--text-secondary)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;gap:12px;text-align:center}.error-icon{display:flex;justify-content:center;color:var(--color-ink-3)}.error-title{font-size:var(--font-title-lg);font-weight:700;color:var(--text-primary)}.error-hint{font-size:var(--font-body);color:var(--text-secondary)}.error-code{font-size:var(--font-caption);color:var(--text-secondary);margin-top:8px;padding:8px 16px;background:var(--bg-card);border-radius:8px}.confirm-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.header-icon{display:flex;color:var(--color-lake)}.header-title{font-size:var(--font-display);font-weight:700;color:var(--text-primary)}.order-summary{background:var(--bg-card);border-radius:12px;padding:20px;margin-bottom:20px}.summary-title{font-size:var(--font-title);font-weight:700;color:var(--text-primary);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.row-label{font-size:var(--font-body);color:var(--text-secondary)}.row-value{font-size:var(--font-body);color:var(--text-primary);font-weight:500}.row-value.price{color:var(--brand-primary);font-size:var(--font-title-lg);font-weight:700}.confirm-section{background:var(--bg-card);border-radius:12px;padding:20px;margin-bottom:20px}.confirm-hint{font-size:var(--font-body);color:var(--text-secondary);text-align:center;margin-bottom:16px}.confirm-button{width:100%;background:var(--brand-primary);color:var(--bg-card);border:none;padding:14px;border-radius:var(--radius-lg);font-size:var(--font-title);font-weight:700;cursor:pointer}.confirm-button:disabled{opacity:.6;cursor:not-allowed}.confirm-button:active:not(:disabled){background:var(--brand-primary-hover)}.confirm-button-arrival{background:var(--color-surface);color:var(--color-lake);border:1px solid var(--color-lake);margin-bottom:12px}.confirm-button-arrival:active:not(:disabled){background:var(--color-lake-wash)}.confirm-hint-ok{color:var(--color-success);font-weight:500}.footer-hint{text-align:center;padding:16px}.hint-text{font-size:var(--font-body-sm);color:var(--text-secondary)}.transport-page{min-height:100vh;background-color:var(--color-bg);padding-bottom:80px}.page-header{background:var(--color-primary);padding:32px 24px 48px;color:var(--color-ink-on-dark)}.page-title{font-size:var(--font-display);font-weight:600;margin-bottom:8px}.page-subtitle{font-size:var(--font-body);opacity:.9}.loading-state{display:flex;align-items:center;justify-content:center;height:60vh;font-size:var(--font-title);color:var(--color-text-secondary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 32px;text-align:center}.empty-text{font-size:var(--font-title);color:var(--color-text);margin-bottom:8px}.empty-hint{font-size:var(--font-body);color:var(--color-text-secondary)}.overview-card,.sessions-card{background-color:var(--bg-card);border-radius:var(--radius-base);margin:-24px 16px 16px;padding:20px;box-shadow:var(--shadow-card)}.sessions-card{margin-top:16px}.card-title{font-size:var(--font-title);font-weight:600;color:var(--color-text);margin-bottom:16px}.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.overview-item{text-align:center}.overview-value{font-size:var(--font-num-28);font-weight:600;color:var(--color-primary);margin-bottom:4px}.overview-label{font-size:var(--font-caption);color:var(--color-text-secondary)}.empty-sessions{text-align:center;padding:32px 0;color:var(--color-text-secondary);font-size:var(--font-body)}.sessions-list{display:flex;flex-direction:column;gap:12px}.session-item{padding:16px;background-color:var(--color-bg);border-radius:12px}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.session-route{font-size:var(--font-title);font-weight:600;color:var(--color-text)}.session-status{font-size:var(--font-caption);padding:4px 8px;border-radius:8px}.status-pending{background-color:var(--state-bg-new);color:var(--state-text-new)}.status-in_progress{background-color:var(--state-bg-progress);color:var(--state-text-progress)}.status-completed{background-color:var(--state-bg-done);color:var(--state-text-done)}.status-cancelled{background-color:var(--state-bg-off);color:var(--state-text-off)}.session-info{display:flex;justify-content:space-between;font-size:var(--font-body);color:var(--color-text-secondary)}.routes-card{background-color:var(--bg-card);border-radius:var(--radius-base);margin:-24px 16px 16px;padding:20px;box-shadow:var(--shadow-card)}.routes-list{display:flex;flex-direction:column;gap:12px}.route-item{padding:16px;background-color:var(--color-bg);border-radius:12px}.route-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.route-name{font-size:var(--font-title);font-weight:600;color:var(--color-text)}.route-price{font-size:var(--font-body);font-weight:600;color:var(--color-primary)}.route-desc{font-size:var(--font-body);color:var(--color-text-secondary);margin-bottom:8px}.route-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.route-tag{font-size:var(--font-caption);padding:2px 8px;border-radius:8px;background-color:var(--bg-selected);color:var(--brand-cyan)}.route-meta{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-bottom:4px}.route-notice{font-size:var(--font-body-sm);color:var(--color-warning);background-color:var(--warning-bg-warm);border-radius:8px;padding:6px 10px;margin-top:6px}.scenic-page{display:flex;flex-direction:column;gap:16px}.scenic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.scenic-title{font-size:var(--font-display);font-weight:600;color:var(--color-ink-1);margin:0}.scenic-sub{margin:4px 0 0;font-size:var(--font-body-sm);color:var(--color-ink-3);line-height:1.5}.scenic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.scenic-module{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:16px;display:flex;flex-direction:column;gap:8px;transition:border-color var(--duration-tap) var(--ease-standard),box-shadow var(--duration-tap) var(--ease-standard),background var(--duration-tap) var(--ease-standard)}.scenic-module.is-ready{cursor:pointer}.scenic-module.is-ready:hover{border-color:var(--color-lake);box-shadow:var(--shadow-l1)}.scenic-module.is-ready:active{background:var(--color-fill)}.scenic-module:focus-visible{outline:2px solid var(--color-lake);outline-offset:2px}.scenic-module-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.scenic-module-icon{display:flex;color:var(--color-lake)}.scenic-module-name{font-size:var(--font-title);font-weight:600;color:var(--color-ink-1);margin:0}.scenic-module-desc{font-size:var(--font-body-sm);color:var(--color-ink-2);line-height:1.55;margin:0;flex:1}.scenic-module-go{font-size:var(--font-minor);font-weight:600;color:var(--color-lake)}.scenic-code{background:var(--color-fill);padding:1px 5px;border-radius:4px;font-size:var(--font-minor);color:var(--color-ink-2)}.scenic-form{display:grid;gap:var(--space-12);margin-top:var(--space-12)}.scenic-field{display:grid;gap:var(--space-6)}.scenic-field>span{font-size:12px;color:var(--color-ink-3)}.scenic-input{width:100%;box-sizing:border-box;padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink-1)}.scenic-actions,.scenic-row-actions{display:flex;gap:var(--space-8);flex-wrap:wrap}.page{min-height:calc(100vh - 60px)}.page-title{font-size:var(--font-display);font-weight:600;color:var(--text-primary);margin-bottom:16px}.page-content{background-color:var(--bg-card);border-radius:var(--radius-base);padding:24px}.page-content p{font-size:var(--font-title);color:var(--text-primary);margin-bottom:8px}.page-hint{font-size:var(--font-body);color:var(--text-secondary)}.page-panels{display:flex;flex-direction:column}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 0;gap:8px}.empty-hint{font-size:var(--font-caption);color:var(--text-tertiary, var(--text-placeholder))}.table-note{border-top:1px dashed var(--text-tertiary, var(--color-border));margin-top:16px;padding:12px 4px 4px}.note-title{font-size:var(--font-body-sm);font-weight:600;color:var(--text-secondary);margin-bottom:8px}.note-list{list-style:disc;padding-left:18px;font-size:var(--font-caption);line-height:1.8;color:var(--text-secondary)}.note-list code{background:var(--color-fill);padding:1px 4px;border-radius:4px;font-size:var(--font-minor)}.rental-page{padding:16px 16px 32px}.rental-page .page-header{margin-bottom:12px}.rental-page .page-title{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--color-ink-1)}.rental-page .page-subtitle{margin:4px 0 0;font-size:var(--font-body-sm);color:var(--color-ink-3)}.rental-notice{margin:10px 0;border-radius:8px}.rental-toolbar{display:flex;align-items:center;gap:8px;margin:12px 0 4px}.rental-toolbar .adm-search-bar{flex:1;--border-radius: 8px}.rental-search-disabled{flex:1;pointer-events:none;opacity:.55}.rental-list{margin-top:12px;display:flex;flex-direction:column;gap:10px}.rental-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:12px 14px}.rental-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rental-equip{font-size:var(--font-subtitle);font-weight:600;color:var(--color-ink-1)}.rental-order-no{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.rental-badge{font-size:var(--font-caption);line-height:1;padding:3px 8px;border-radius:999px}.rental-badge-rented{background:var(--color-lake-wash);color:var(--color-lake)}.rental-badge-overdue{background:var(--color-danger-wash);color:var(--color-danger)}.rental-badge-returned{background:var(--color-success-wash);color:var(--color-success)}.rental-card-body{display:flex;flex-direction:column;gap:4px;font-size:var(--font-body-sm);color:var(--color-ink-2)}.rental-card-foot{margin-top:10px;display:flex;justify-content:flex-end}.rental-loading,.rental-empty{padding:40px 0;text-align:center;color:var(--color-ink-3);font-size:var(--font-body)}.rental-muted{color:var(--adm-color-weak, #999);font-size:13px}.rental-eq-section{margin-top:24px;padding:0 4px}.rental-eq-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rental-eq-title{font-size:16px;font-weight:600;margin:0}.rental-eq-list{display:flex;flex-direction:column;gap:8px}.rental-eq-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fff;border-radius:10px}.rental-eq-info{display:flex;flex-direction:column;gap:2px}.rental-eq-name{font-size:15px;font-weight:500}.rental-eq-meta{font-size:12px;color:var(--adm-color-weak, #999)}.rental-form{display:flex;flex-direction:column;gap:10px}.rental-form-row{display:flex;gap:8px;align-items:center}.rental-form-row .adm-input{flex:1;border-bottom:1px solid #eee}.rental-picker{padding:10px;background:#f7f7f8;border-radius:8px;text-align:center;font-size:14px}.rental-ded-row .adm-input{border-bottom:1px solid #eee}.rental-qr-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.rental-qr-card{background:#fff;border-radius:16px;padding:20px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:86vw}.rental-qr-title{margin:0;font-size:16px}.rental-qr-img{width:220px;height:220px}.rental-qr-amount{margin:0;font-size:14px;color:#333}.rental-qr-foot{display:flex;gap:12px}.demand-page{min-height:100vh;background:var(--color-bg-primary);padding:20px 20px 80px}.demand-header{margin-bottom:24px}.demand-header h1{font-size:var(--font-display);font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.demand-subtitle{font-size:var(--font-body);color:var(--color-text-secondary);margin:0}.demand-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:16px}.demand-party{display:inline-flex;align-items:center;gap:4px}.demand-empty p{font-size:var(--font-title);color:var(--color-text-secondary);margin:8px 0}.empty-hint{font-size:var(--font-body);color:var(--color-text-tertiary)}.demand-list{display:flex;flex-direction:column;gap:16px}.demand-card{background:var(--color-bg-secondary);border-radius:12px;padding:16px;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard)}.demand-card:active{transform:scale(var(--motion-press-scale));transition-duration:var(--duration-tap)}.demand-category{display:inline-block;background:var(--color-primary);color:#fff;font-size:var(--font-caption);padding:4px 8px;border-radius:4px;margin-bottom:8px}.demand-title{font-size:var(--font-title);font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.demand-info{display:flex;gap:16px;font-size:var(--font-body);color:var(--color-text-secondary);margin-bottom:8px}.demand-note{font-size:var(--font-body);color:var(--color-text-tertiary);margin-bottom:12px;padding:8px;background:var(--color-bg-primary);border-radius:8px}.demand-status{display:flex;justify-content:flex-end}.status-badge{font-size:var(--font-caption);padding:4px 8px;border-radius:4px}.status-open{background:var(--state-bg-new);color:var(--state-text-new)}.status-responded{background:var(--state-bg-progress);color:var(--state-text-progress)}.status-matched{background:var(--state-bg-done);color:var(--state-text-done)}.status-expired{background:var(--state-bg-off);color:var(--state-text-off)}.demand-footer{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-secondary);padding:12px 20px;text-align:center;font-size:var(--font-caption);color:var(--color-text-tertiary);border-top:1px solid var(--color-border)}.demand-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px}.demand-section h3{margin:0 0 12px;font-size:var(--font-subtitle);color:var(--text-primary)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.info-item{display:flex;justify-content:space-between;padding:6px 0;font-size:var(--font-body)}.info-label{color:var(--text-secondary)}.info-value{color:var(--text-primary)}.quote-form{display:flex;flex-direction:column;gap:10px}.form-item{display:flex;align-items:center;gap:8px;font-size:var(--font-body);color:var(--text-primary)}.form-item label{display:block;width:100%;color:var(--text-secondary);font-size:var(--font-body-sm)}.form-item textarea{width:100%;margin-top:6px;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-body);min-height:64px}.demand-submit-result{color:var(--color-success);font-size:var(--font-body-sm)}.demand-submit-error{color:var(--state-text-danger);font-size:var(--font-body-sm)}.btn-back{border:none;background:transparent;color:var(--text-secondary);font-size:var(--font-body);cursor:pointer;padding:0;margin-bottom:8px}.countdown{color:var(--color-warning);font-size:var(--font-body)}.item-disabled{color:var(--text-placeholder)}.form-item input:disabled{cursor:not-allowed;opacity:.45}.custom-item-hint{font-size:var(--font-caption);color:var(--text-placeholder);line-height:1.5}.package-page{min-height:100vh;background:var(--color-bg-primary);padding:20px 20px 100px}.package-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.package-header h1{font-size:var(--font-display);font-weight:600;color:var(--color-text-primary);margin:0}.btn-back{background:none;border:none;color:var(--color-primary);font-size:var(--font-title);cursor:pointer;padding:0}.package-content{display:flex;flex-direction:column;gap:24px}.package-section{display:flex;flex-direction:column;gap:12px}.package-section h3{font-size:var(--font-title);font-weight:600;color:var(--color-text-primary);margin:0}.input-field,.select-field,.textarea-field{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);background:var(--color-bg-secondary);color:var(--color-text-primary)}.textarea-field{min-height:100px;resize:vertical}.empty-hint{font-size:var(--font-body);color:var(--color-text-tertiary);padding:20px;text-align:center;background:var(--color-bg-secondary);border-radius:8px}.item-list{display:flex;flex-direction:column;gap:12px}.item-card{background:var(--color-bg-secondary);border-radius:8px;padding:12px;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard)}.item-card:active{transform:scale(var(--motion-press-scale));transition-duration:var(--duration-tap)}.item-merchant{font-size:var(--font-title);font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.item-category{font-size:var(--font-body);color:var(--color-text-secondary);margin-bottom:4px}.item-price{font-size:var(--font-body);color:var(--color-primary)}.selected-items{display:flex;flex-direction:column;gap:12px}.selected-item{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-secondary);border-radius:8px;padding:12px}.item-info{flex:1}.item-fulfillment{font-size:var(--font-caption);color:var(--color-text-tertiary);margin-top:4px}.btn-remove{background:none;border:1px solid var(--color-error);color:var(--color-error);padding:6px 12px;border-radius:6px;font-size:var(--font-caption);cursor:pointer}.package-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.btn-primary,.btn-secondary{width:100%;padding:14px;border:none;border-radius:8px;font-size:var(--font-title);font-weight:600;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard)}.btn-primary{background:var(--color-primary);color:#fff}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-primary:active,.btn-secondary:active{transform:scale(var(--motion-press-scale));transition:transform var(--duration-tap) var(--ease-standard)}.package-footer{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-secondary);padding:12px 20px;text-align:center;font-size:var(--font-caption);color:var(--color-text-tertiary);border-top:1px solid var(--color-border)}.package-footer p{margin:4px 0}.point-tasks-page{min-height:100vh;background:var(--bg-primary, var(--bg-primary));padding:24px 16px}.page-header{margin-bottom:24px}.page-title{font-size:var(--font-display);font-weight:600;color:var(--text-primary);margin:0 0 8px}.page-subtitle{font-size:var(--font-body);color:var(--text-secondary, var(--text-secondary));margin:0}.feature-disabled{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.disabled-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:24px}.disabled-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary);margin:0 0 12px}.disabled-desc{font-size:var(--font-body);color:var(--text-secondary, var(--text-secondary));margin:0}.api-unavailable-notice{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-base);margin-bottom:20px}.notice-icon{font-size:var(--font-title)}.notice-text{font-size:var(--font-body);color:var(--warning-text)}.task-form{background:var(--bg-card, var(--bg-card));border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}.form-section{margin-bottom:24px}.section-label{display:block;font-size:var(--font-subtitle);font-weight:600;color:var(--text-primary);margin-bottom:12px}.budget-tiers{display:flex;gap:12px}.tier-card{flex:1;padding:16px 12px;background:var(--bg-secondary, var(--bg-primary));border:2px solid transparent;border-radius:8px;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard);text-align:center}.tier-card:hover{background:var(--bg-hover)}.tier-card.selected{border-color:var(--brand-primary, var(--brand-primary));background:var(--bg-selected)}.tier-label{font-size:var(--font-subtitle);font-weight:600;color:var(--text-primary);margin-bottom:4px}.tier-desc{font-size:var(--font-caption);color:var(--text-secondary, var(--text-secondary))}.scene-value-input{width:100%;padding:12px 16px;background:var(--bg-secondary, var(--bg-primary));border:1px solid var(--border-color);border-radius:8px;font-size:var(--font-body);color:var(--text-primary);resize:vertical;font-family:inherit}.scene-value-input::placeholder{color:var(--text-placeholder, var(--text-placeholder))}.scene-value-input:focus{outline:none;border-color:var(--brand-primary, var(--brand-primary));background:var(--bg-input-focus, var(--bg-card))}.stall-code-select{width:100%;padding:12px 40px 12px 16px;background:var(--bg-secondary, var(--bg-primary));border:1px solid var(--border-color);border-radius:8px;font-size:var(--font-body);color:var(--text-primary);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.stall-code-select:focus{outline:none;border-color:var(--brand-primary, var(--brand-primary));background-color:var(--bg-input-focus, var(--bg-card))}.submit-btn{width:100%;padding:14px 24px;background:var(--brand-primary, var(--brand-primary));color:var(--bg-card);border:none;border-radius:8px;font-size:var(--font-title);font-weight:600;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard);margin-top:8px}.submit-btn:hover:not(:disabled){background:var(--brand-primary-hover)}.submit-btn:disabled{background:var(--btn-disabled);color:var(--text-disabled, var(--text-placeholder));cursor:not-allowed}.key-tasks-page{min-height:100vh;background:var(--bg-primary, var(--color-paper));padding:24px 16px 40px;box-sizing:border-box}.page-header{margin-bottom:20px}.page-title{font-size:var(--font-display);font-weight:600;color:var(--text-primary, var(--color-ink-1));margin:0 0 8px}.page-subtitle{font-size:var(--font-body);color:var(--text-secondary, var(--color-ink-2));margin:0}.loading,.error,.empty{padding:48px 16px;text-align:center;color:var(--text-secondary, var(--color-ink-2));font-size:var(--font-subtitle)}.error{color:var(--brand-primary, var(--color-accent))}.retry-btn{margin-top:16px;padding:10px 24px;background:var(--brand-primary, var(--color-accent));color:#fff;border:none;border-radius:8px;font-size:var(--font-body);font-weight:600;cursor:pointer}.retry-btn:hover{background:var(--brand-primary-hover, var(--color-accent))}.task-list-section{margin-top:8px}.section-title{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-title);font-weight:600;color:var(--text-primary, var(--color-ink-1));margin:0 0 16px}.task-list{display:flex;flex-direction:column;gap:12px}.task-item{background:var(--bg-card, var(--color-surface));border:1px solid var(--border-color, var(--color-border));border-radius:12px;padding:16px;box-shadow:var(--shadow-card);display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.task-info{flex:1;min-width:0}.task-name{font-size:var(--font-title);font-weight:600;color:var(--text-primary, var(--color-ink-1));margin:0 0 6px}.task-meta{font-size:var(--font-body-sm);color:var(--text-secondary, var(--color-ink-2));line-height:1.6}.task-meta span{margin-right:12px}.task-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.btn-primary,.btn-sec{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:8px;font-size:var(--font-body);font-weight:600;cursor:pointer;border:1px solid transparent;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard);font-family:inherit}.btn-primary{background:var(--brand-primary, var(--color-accent));color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-primary-hover, var(--color-accent))}.btn-sec{background:var(--bg-card, var(--color-surface));color:var(--text-primary, var(--color-ink-1));border-color:var(--border-color, var(--color-border))}.btn-sec:hover:not(:disabled){background:var(--bg-hover, var(--color-gold-wash))}.btn-primary.sm,.btn-sec.sm{padding:6px 12px;font-size:var(--font-body-sm)}.btn-primary:disabled,.btn-sec:disabled{opacity:.5;cursor:not-allowed}.create-btn{margin-left:auto}.task-form{background:var(--bg-card, var(--color-surface));border:1px solid var(--border-color, var(--color-border));border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:var(--shadow-card)}.form-row{display:flex;gap:16px;flex-wrap:wrap}.form-group{flex:1;min-width:200px;margin-bottom:16px;display:flex;flex-direction:column}.form-label{font-size:var(--font-body);font-weight:600;color:var(--text-primary, var(--color-ink-1));margin-bottom:8px}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;background:var(--bg-input-focus, var(--color-surface));border:1px solid var(--border-color, var(--color-border));border-radius:8px;font-size:var(--font-body);color:var(--text-primary, var(--color-ink-1));font-family:inherit;box-sizing:border-box}.form-textarea{resize:vertical;min-height:80px}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-placeholder, var(--color-ink-3))}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--brand-primary, var(--color-accent))}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.detail-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;box-sizing:border-box}.detail-card{background:var(--bg-card, var(--color-surface));border-radius:12px;padding:24px;max-width:480px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-l3)}.detail-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary, var(--color-ink-1));margin:0 0 16px}.detail-row{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--border-color, var(--color-border));font-size:var(--font-body)}.detail-row:last-child{border-bottom:none}.detail-desc{font-size:var(--font-body);color:var(--text-secondary, var(--color-ink-2));line-height:1.6;margin-top:12px;white-space:pre-wrap}.my-dist{min-height:100vh;background:var(--color-surface);padding:12px;box-sizing:border-box}.my-dist-header{margin-bottom:10px}.my-dist-back{border:none;background:none;padding:0;margin:0 0 6px;font-size:13px;color:var(--color-lake)}.my-dist-header h2{margin:0;font-size:19px;font-weight:600;color:var(--color-ink-1)}.my-dist-sub{margin:4px 0 0;font-size:12px;color:var(--color-ink-2)}.my-dist-item-sub{display:flex;gap:12px;margin-top:4px;font-size:12px;color:var(--color-ink-2)}.my-dist-toggle{margin-top:6px;align-self:flex-start;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-2);border-radius:4px;padding:4px 12px;font-size:12px}.my-dist-item{display:flex;flex-direction:column}.my-dist-tabs{display:flex;gap:8px;margin-bottom:10px}.my-dist-tab{flex:1;padding:8px 0;border:none;border-radius:8px;background:var(--color-surface);color:var(--color-ink-2);font-size:13px}.my-dist-tab.active{background:var(--color-lake);color:#fff;font-weight:600}.my-dist-panel{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px}.my-dist-loading,.my-dist-error{padding:24px 0;text-align:center;font-size:13px;color:var(--color-ink-2)}.my-dist-error{color:var(--color-danger)}.my-dist-empty{padding:24px 6px;text-align:center}.my-dist-empty-title{font-size:15px;font-weight:600;color:var(--color-ink-1);margin:0 0 6px}.my-dist-empty-desc{font-size:12px;color:var(--color-ink-2);margin:0}.my-dist-list{list-style:none;margin:0 0 12px;padding:0}.my-dist-item{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-bottom:1px solid var(--color-border)}.my-dist-item:last-child{border-bottom:none}.my-dist-item-main{display:flex;align-items:center;justify-content:space-between}.my-dist-item-name{font-size:15px;font-weight:600;color:var(--color-ink-1)}.my-dist-item-phone{font-size:12px;color:var(--color-ink-2)}.my-dist-status{font-size:11px;padding:2px 8px;border-radius:999px}.my-dist-status-active{background:var(--color-success-wash);color:var(--color-success)}.my-dist-status-pending{background:var(--color-warning-wash);color:var(--color-warning)}.my-dist-status-paused{background:var(--color-surface);color:var(--color-ink-2)}.my-dist-pending{border:1px dashed var(--color-lake);background:var(--color-lake-wash);border-radius:8px;padding:16px 12px;text-align:center}.my-dist-badge{display:inline-block;font-size:11px;color:var(--color-lake);background:var(--color-lake-wash);border-radius:999px;padding:3px 10px;margin-bottom:8px}.my-dist-pending-title{font-size:15px;font-weight:600;color:var(--color-ink-1);margin:0 0 6px}.my-dist-pending-desc{font-size:12px;color:var(--color-ink-2);line-height:1.7;margin:0}.my-dist-bind{margin-top:14px;padding-top:12px;border-top:1px solid var(--color-border)}.my-dist-bind-label{display:block;font-size:13px;color:var(--color-ink-2);margin-bottom:6px}.my-dist-bind-row{display:flex;gap:8px}.my-dist-input{flex:1;height:40px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 12px;font-size:14px;background:var(--color-surface);box-sizing:border-box}.my-dist-bind-btn{flex-shrink:0;height:40px;padding:0 16px;border:none;border-radius:var(--radius-md);background:var(--color-lake);color:#fff;font-size:14px}.my-dist-bind-hint{font-size:11px;color:var(--color-ink-3);margin:6px 0 0}.my-dist-note h3{margin:0 0 10px;font-size:15px;color:var(--color-ink-1)}.my-dist-note ul{margin:0;padding-left:16px}.my-dist-note li{font-size:13px;color:var(--color-ink-2);line-height:1.9;margin-bottom:6px}.my-dist-note-tip{margin:10px 0 0;padding:10px;font-size:12px;color:var(--color-ink-2);background:var(--color-surface);border-radius:6px}.my-dist-comm-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.my-dist-comm-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:8px;background:var(--color-fill);border:1px solid var(--color-border)}.my-dist-comm-stat-label{font-size:11px;color:var(--color-ink-2)}.my-dist-comm-stat-amount{font-size:16px;font-weight:600;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.my-dist-comm-stat-count{font-size:11px;color:var(--color-ink-3)}.my-dist-comm-stat-accrued{border-left:3px solid var(--color-lake)}.my-dist-comm-stat-settleable{border-left:3px solid var(--color-warning)}.my-dist-comm-stat-settled{border-left:3px solid var(--color-success)}.my-dist-comm-stat-voided{border-left:3px solid var(--color-ink-3);opacity:.75}.my-dist-comm-months{margin-bottom:12px}.my-dist-comm-months-title{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--color-ink-1)}.my-dist-comm-month-list{list-style:none;margin:0;padding:0}.my-dist-comm-month-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--color-border)}.my-dist-comm-month-row:last-child{border-bottom:none}.my-dist-comm-month{font-size:13px;color:var(--color-ink-2)}.my-dist-comm-month-amount{font-size:13px;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.my-dist-comm-month-count{font-style:normal;font-size:11px;color:var(--color-ink-3)}.my-dist-comm-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.my-dist-comm-chip{padding:4px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-ink-2);font-size:12px}.my-dist-comm-chip.active{background:var(--color-lake);border-color:var(--color-lake);color:#fff;font-weight:600}.my-dist-comm-amount{font-size:15px;font-weight:600;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.my-dist-comm-order{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-dist-comm-badge-accrued{background:var(--color-lake-wash);color:var(--color-lake)}.my-dist-comm-badge-settleable{background:var(--color-warning-wash);color:var(--color-warning)}.my-dist-comm-badge-settled{background:var(--color-success-wash);color:var(--color-success)}.my-dist-comm-badge-voided{background:var(--color-fill);color:var(--color-ink-3)}.my-dist-comm-more{margin:6px 0 0;font-size:11px;color:var(--color-ink-3)}.page-editor{min-height:100vh;background:var(--color-paper);padding:12px;box-sizing:border-box}.page-editor h2{margin:0;font-size:19px;font-weight:600;color:var(--color-ink-1)}.pe-header{margin-bottom:10px}.pe-back{border:none;background:none;padding:0;margin:0 0 6px;font-size:13px;color:var(--color-lake)}.pe-sub{margin:4px 0 0;font-size:12px;color:var(--color-ink-2)}.pe-notice{margin-bottom:10px;padding:8px 10px;border:1px dashed var(--color-border);border-radius:6px;background:var(--color-surface);font-size:11px;line-height:1.7;color:var(--color-ink-2)}.pe-msg{margin-bottom:10px;padding:8px 10px;border-radius:6px;background:var(--color-success-wash);color:var(--color-success);font-size:12px}.pe-error{margin-bottom:10px;padding:8px 10px;border-radius:6px;background:var(--color-danger-wash);color:var(--color-danger);font-size:12px}.pe-panel{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:10px}.pe-loading{padding:24px 0;text-align:center;font-size:13px;color:var(--color-ink-2)}.pe-empty{padding:24px 6px;text-align:center}.pe-empty-title{font-size:15px;font-weight:600;color:var(--color-ink-1);margin:0 0 6px}.pe-empty-desc{font-size:12px;color:var(--color-ink-2);line-height:1.7;margin:0}.pe-blocks-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.pe-blocks-head h3{margin:0;font-size:15px;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.pe-dirty-tag{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--color-warning-wash);color:var(--color-warning)}.pe-empty-blocks{padding:16px 0;text-align:center;font-size:12px;color:var(--color-ink-2)}.pe-block-list{list-style:none;margin:0;padding:0}.pe-block{border-bottom:1px solid var(--color-border)}.pe-block:last-child{border-bottom:none}.pe-block-row{display:flex;align-items:center;gap:8px;padding:10px 0}.pe-block-idx{flex-shrink:0;width:22px;height:22px;line-height:22px;text-align:center;border-radius:999px;background:var(--color-fill);font-size:11px;color:var(--color-ink-2);font-variant-numeric:tabular-nums}.pe-block-title{flex:1;min-width:0;text-align:left;border:none;background:none;padding:0;font-size:14px;font-weight:600;color:var(--color-ink-1)}.pe-block-type{margin-left:6px;font-size:10px;font-weight:400;color:var(--color-ink-3)}.pe-block-ops{display:flex;gap:4px;flex-shrink:0}.pe-op{width:28px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink-2);font-size:13px}.pe-op:disabled{opacity:.4}.pe-op-danger{color:var(--color-danger);border-color:var(--color-danger-wash)}.pe-block-edit{padding:0 0 12px 30px;display:flex;flex-direction:column;gap:10px}.pe-label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--color-ink-2)}.pe-select,.pe-input{height:36px;border:1px solid var(--color-border);border-radius:6px;padding:0 10px;font-size:13px;background:var(--color-surface);color:var(--color-ink-1);box-sizing:border-box}.pe-props-wrap{display:flex;flex-direction:column;gap:4px}.pe-textarea{width:100%;border:1px solid var(--color-border);border-radius:6px;padding:8px 10px;font-size:12px;line-height:1.6;background:var(--color-fill);color:var(--color-ink-1);box-sizing:border-box;font-family:inherit;resize:vertical}.pe-textarea.invalid{border-color:var(--color-danger)}.pe-props-err{font-size:11px;color:var(--color-danger)}.pe-props-apply{align-self:flex-start}.pe-add{margin-top:10px;display:flex;flex-direction:column;gap:4px}.pe-add .pe-select{width:100%}.pe-add-error{margin:0;font-size:11px;color:var(--color-danger)}.pe-validation{margin:0 0 8px;padding-left:16px}.pe-validation li{font-size:11px;line-height:1.8;color:var(--color-warning)}.pe-actions{position:sticky;bottom:0;padding:8px 0 4px}.pe-actions-row{display:flex;gap:8px}.pe-btn{height:40px;padding:0 20px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink-1);font-size:14px}.pe-btn:disabled{opacity:.5}.pe-btn-primary{flex:1;border:none;background:var(--color-lake);color:#fff;font-weight:600}.bills-page{min-height:100vh;background-color:var(--color-bg, var(--bg-primary));padding:16px}.bills-tabs{display:flex;background:var(--bg-card);border-radius:12px;padding:4px;margin-bottom:16px}.bills-tab{flex:1;text-align:center;padding:12px 0;border:none;border-radius:8px;background:transparent;font-size:var(--font-body);color:var(--text-secondary);cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard)}.bills-tab.active{background:var(--color-lake);color:var(--color-ink-on-dark);font-weight:600}.loading-wrap{display:flex;justify-content:center;align-items:center;padding:60px 0}.loading-text{font-size:var(--font-body);color:var(--color-lake, var(--brand-cyan))}.bill-card{background:var(--bg-card);border-radius:12px;padding:16px;margin-bottom:16px}.bill-card.bill-pending{border:1px solid var(--state-text-pending)}.bill-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bill-period{font-size:var(--font-body);color:var(--text-secondary)}.bill-status{padding:4px 12px;border-radius:12px;font-size:var(--font-caption);font-weight:600}.status-pending{background:var(--state-bg-pending);color:var(--state-text-pending)}.status-confirmed{background:var(--state-bg-done);color:var(--state-text-done)}.status-paid{background:var(--state-bg-settled);color:var(--state-text-settled)}.bill-amount-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--border-color)}.bill-amount-label{font-size:var(--font-body);color:var(--text-secondary)}.bill-amount-value{font-size:var(--font-title-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.bill-detail-row{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;font-size:var(--font-body-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.bill-actions{display:flex;gap:12px}.bill-btn{flex:1;padding:12px;border-radius:8px;font-size:var(--font-body);font-weight:600;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard);border:none}.bill-btn-primary{background:var(--color-lake);color:var(--color-ink-on-dark)}.bill-btn-outline{background:var(--bg-card);border:1px solid var(--color-lake, var(--brand-cyan));color:var(--color-lake, var(--brand-cyan))}.btn-outline,.btn-primary{flex:1;padding:12px;border-radius:8px;font-size:var(--font-body);font-weight:600;cursor:pointer;transition:background-color var(--duration-page) var(--ease-standard),color var(--duration-page) var(--ease-standard),border-color var(--duration-page) var(--ease-standard),box-shadow var(--duration-page) var(--ease-standard);border:none}.btn-outline{background:var(--bg-card);border:1px solid var(--color-lake, var(--brand-cyan));color:var(--color-lake, var(--brand-cyan))}.btn-outline:hover{background:var(--color-lake-wash)}.btn-primary{background:var(--color-primary, var(--brand-primary));color:var(--bg-card)}.btn-primary:hover{background:var(--brand-primary-hover)}.empty-state{display:flex;justify-content:center;align-items:center;padding:60px 0}.empty-text{font-size:var(--font-body);color:var(--text-placeholder)}.bill-items-card,.history-card{background:var(--bg-card);border-radius:12px;padding:16px}.bill-items-card .card-title,.history-card .card-title{margin:0 0 12px;font-size:var(--font-title);font-weight:600;color:var(--text-primary)}.bill-item-row{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--border-color);font-size:var(--font-body-sm)}.bill-item-row:last-child{border-bottom:none}.bill-item-order{color:var(--text-primary)}.bill-item-amount{font-weight:600;font-variant-numeric:tabular-nums}.empty-items{padding:24px 0;text-align:center;color:var(--text-secondary);font-size:var(--font-body-sm)}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{background:var(--bg-card);border-radius:12px;padding:14px 16px}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.history-period{font-size:var(--font-body);font-weight:500;color:var(--text-primary)}.history-item-amount{font-size:var(--font-title);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.dispute-dialog-mask{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-scrim);display:flex;justify-content:center;align-items:center;z-index:1000}.dispute-dialog{background:var(--bg-card);border-radius:12px;padding:24px;width:90%;max-width:400px}.dispute-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary);margin-bottom:16px}.dispute-textarea{width:100%;box-sizing:border-box;min-height:100px;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:var(--font-body);font-family:inherit;resize:vertical;margin-bottom:16px}.dispute-textarea:focus{outline:none;border-color:var(--color-lake, var(--brand-cyan))}.dispute-actions{display:flex;gap:12px}.dispute-btn{flex:1;padding:12px;border-radius:8px;font-size:var(--font-body);font-weight:600;cursor:pointer;border:none}.dispute-btn-cancel{background:var(--color-fill);color:var(--text-secondary)}.dispute-btn-submit{background:var(--color-lake);color:var(--color-ink-on-dark)}.bills-error{margin:0 0 12px;padding:10px 14px;border-radius:var(--radius-base);background:var(--state-bg-danger);color:var(--state-text-danger);font-size:var(--font-body)}.status-open,.status-pending_confirm{background:var(--state-bg-pending);color:var(--state-text-pending)}.status-confirmed,.status-auto_confirmed{background:var(--state-bg-done);color:var(--state-text-done)}.status-disputed{background:var(--state-bg-danger);color:var(--state-text-danger)}.bill-deadline{margin-top:8px;font-size:var(--font-body-sm);color:var(--text-secondary)}.amount-credit{color:var(--color-success)}.amount-debit{color:var(--text-primary)}.empty-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:8px}.site-texts-page{padding:20px;max-width:1200px;margin:0 auto}.site-texts-header{margin-bottom:16px}.site-texts-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary);margin:0 0 4px}.site-texts-subtitle{font-size:var(--font-body-sm);color:var(--text-secondary);margin:0}.site-texts-status{padding:20px;text-align:center;color:var(--text-secondary);background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.site-texts-status-error{color:var(--warning-text);background:var(--warning-bg-warm);border:1px solid var(--warning-border)}.site-texts-columns{display:flex;gap:16px;align-items:flex-start}.site-texts-col{background:var(--bg-card);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-card)}.site-texts-col-pages{flex:0 0 180px}.site-texts-col-items{flex:1 1 auto;min-width:0}.site-texts-col-form{flex:0 0 320px}.site-texts-col-title{font-size:var(--font-body-sm);font-weight:600;color:var(--text-secondary);margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.site-texts-page-item{padding:8px 10px;border-radius:var(--radius-base);font-size:var(--font-body);color:var(--text-primary);cursor:pointer;word-break:break-all}.site-texts-page-item:hover{background:var(--bg-hover)}.site-texts-page-item-active{background:var(--bg-selected);color:var(--brand-primary);font-weight:600}.site-texts-empty{font-size:var(--font-body-sm);color:var(--text-placeholder);padding:12px 4px}.site-texts-row{padding:8px 10px;border-radius:var(--radius-base);cursor:pointer;border-bottom:1px solid var(--border-color)}.site-texts-row:hover{background:var(--bg-hover)}.site-texts-row-active{background:var(--bg-selected)}.site-texts-row-key{font-size:var(--font-body-sm);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.site-texts-badge-test{font-size:var(--font-minor);padding:1px 6px;border-radius:999px;background:var(--warning-bg);color:var(--warning-text)}.site-texts-row-value{font-size:var(--font-caption);color:var(--text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.site-texts-label{display:block;font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:10px}.site-texts-input,.site-texts-textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-base);font-size:var(--font-body);color:var(--text-primary);background:var(--bg-card);box-sizing:border-box}.site-texts-textarea{min-height:96px;resize:vertical}.site-texts-checkbox{display:flex;align-items:center;gap:6px;font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:12px}.site-texts-actions{display:flex;gap:8px}.site-texts-btn{padding:8px 14px;border-radius:var(--radius-base);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body-sm);cursor:pointer}.site-texts-btn:disabled{background:var(--btn-disabled);border-color:var(--btn-disabled);cursor:not-allowed}.site-texts-btn-primary{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--bg-card)}.site-texts-btn-primary:hover:not(:disabled){background:var(--brand-primary-hover)}.site-texts-btn-danger{color:var(--brand-primary);border-color:var(--brand-primary)}.site-texts-btn-new{padding:4px 10px;font-size:var(--font-caption)}.site-texts-notice{margin-top:10px;font-size:var(--font-caption);color:var(--brand-primary);word-break:break-all}.payment-settings-page{padding:16px;max-width:720px;margin:0 auto}.ps-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary);margin-bottom:4px}.ps-subtitle{font-size:var(--font-body-sm);color:var(--text-secondary);margin-bottom:16px}.ps-banner{display:flex;align-items:flex-start;gap:8px;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-base);padding:10px 12px;font-size:var(--font-body-sm);color:var(--warning-text);margin-bottom:16px;line-height:1.5}.ps-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.ps-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ps-card-name{font-size:var(--font-subtitle);font-weight:600;color:var(--text-primary)}.ps-card-desc{font-size:var(--font-body-sm);color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.ps-badge{display:inline-block;font-size:var(--font-caption);padding:2px 10px;border-radius:999px}.ps-badge-offline{background:var(--warning-bg-warm);color:var(--warning-text)}.ps-badge-online{background:var(--bg-selected);color:var(--brand-primary)}.ps-switch{display:flex;gap:8px}.ps-switch-btn{flex:1;padding:10px 12px;border-radius:var(--radius-base);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);font-size:var(--font-body);cursor:pointer;transition:background-color var(--duration-tap) var(--ease-standard),color var(--duration-tap) var(--ease-standard),border-color var(--duration-tap) var(--ease-standard),box-shadow var(--duration-tap) var(--ease-standard)}.ps-switch-btn:hover:not(:disabled){border-color:var(--brand-primary);color:var(--brand-primary)}.ps-switch-btn:disabled{opacity:.6;cursor:not-allowed}.ps-switch-btn.active{background:var(--bg-selected);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.ps-msg{font-size:var(--font-body-sm);margin-top:8px;line-height:1.5}.ps-msg-error{color:var(--brand-primary-hover)}.ps-msg-ok{color:var(--brand-cyan)}.ps-note{font-size:var(--font-caption);color:var(--text-placeholder);margin-top:10px;line-height:1.6}.ps-history-title{font-size:var(--font-body);font-weight:600;color:var(--text-primary);margin-bottom:10px}.ps-history-empty{font-size:var(--font-body-sm);color:var(--text-placeholder);padding:8px 0}.ps-history-item{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px 0;border-top:1px solid var(--border-color);font-size:var(--font-body-sm);color:var(--text-secondary)}.ps-history-item:first-of-type{border-top:none}.ps-history-mode{font-weight:600;color:var(--text-primary)}.payhistory-seq{font-size:var(--font-caption);color:var(--text-tertiary)}.reviews-page{padding:16px}.reviews-title{font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary);margin:0 0 12px}.review-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px;margin-bottom:12px}.review-head{display:flex;align-items:center;gap:10px}.review-rating{font-size:var(--font-subtitle);color:var(--color-gold-deep);letter-spacing:1px}.review-anon{font-size:var(--font-body-sm);color:var(--text-secondary)}.review-date{margin-left:auto;font-size:var(--font-caption);color:var(--text-secondary)}.review-leader{margin-top:8px;font-size:var(--font-body-sm);color:var(--text-secondary)}.review-content{margin-top:10px;font-size:var(--font-body);line-height:1.7;color:var(--text-primary);word-break:break-word}.review-photos{margin-top:6px;font-size:var(--font-caption);color:var(--text-secondary)}.review-replies{margin-top:10px;padding:10px;border-radius:var(--radius-base);background:var(--bg-secondary, var(--color-lake-wash))}.review-reply{font-size:var(--font-body-sm);line-height:1.6;color:var(--text-secondary)}.review-reply+.review-reply{margin-top:6px}.review-reply-role{font-weight:600;color:var(--text-primary)}.review-reply-date{font-size:var(--font-minor);color:var(--text-tertiary, var(--color-ink-3))}.review-foot{margin-top:12px;padding-top:10px;border-top:1px dashed var(--color-border);display:flex;justify-content:space-between;align-items:center}.review-status{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-base, 6px);background:var(--bg-secondary, var(--color-lake-wash));color:var(--text-secondary)}.review-reply-btn{background:var(--brand-primary, var(--color-lake));color:#fff;border:none;border-radius:8px;padding:7px 16px;font-size:var(--font-body);cursor:pointer}.review-reply-btn:hover{opacity:.9}.reviews-empty{padding:48px 16px;text-align:center;color:var(--text-secondary);font-size:var(--font-body)}.reviews-empty-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:8px}.reviews-error{padding:32px 16px;text-align:center;color:var(--danger-text, var(--color-danger));background:var(--danger-bg, var(--color-danger-wash));border-radius:var(--radius-base, 8px);font-size:var(--font-body-sm);margin-bottom:12px}.review-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:1000}.review-modal{width:100%;max-width:480px;background:var(--bg-card, var(--color-surface));border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0;padding:20px 16px 16px}.review-modal-title{font-size:var(--font-title);font-weight:600;color:var(--text-primary);margin-bottom:12px}.review-reply-input{width:100%;box-sizing:border-box;min-height:96px;font-size:var(--font-body);padding:10px;border:1px solid var(--border-color, rgba(0, 0, 0, .12));border-radius:var(--radius-base, 8px);resize:vertical;font-family:inherit;background:var(--bg-secondary, var(--color-lake-wash));color:var(--text-primary)}.review-reply-count{margin-top:4px;font-size:var(--font-minor);color:var(--text-tertiary, var(--color-ink-3));text-align:right}.review-reply-msg-ok{margin-top:8px;font-size:var(--font-body-sm);color:var(--color-success)}.review-reply-msg-err{margin-top:8px;font-size:var(--font-body-sm);color:var(--color-danger)}.review-modal-btns{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.review-cancel-btn{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color, rgba(0, 0, 0, .12));border-radius:8px;padding:8px 18px;font-size:var(--font-body);cursor:pointer}.review-submit-btn{background:var(--brand-primary, var(--color-lake));color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:var(--font-body);cursor:pointer}.review-cancel-btn:disabled,.review-submit-btn:disabled{opacity:.6;cursor:not-allowed}.reviews-bad-banner{background:var(--color-danger-wash);border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;padding:10px 12px;margin-bottom:12px;font-size:var(--font-body)}.review-card-bad{border:1.5px solid var(--color-danger);background:var(--color-danger-wash)}.review-bad-badge{font-size:var(--font-caption);color:var(--color-success);background:var(--color-success-wash);border-radius:4px;padding:1px 6px;margin-left:6px}.review-bad-badge.pending{color:var(--color-danger);background:var(--color-danger-wash)}.rb-page{padding:14px}.rb-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.rb-title{font-size:var(--font-title-lg);font-weight:600}.rb-days{display:flex;gap:6px}.rb-day{padding:7px 12px;font-size:var(--font-body-sm);font-family:inherit;cursor:pointer;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-ink-2)}.rb-day.on{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.rb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}@media (min-width: 768px){.rb-stats{grid-template-columns:repeat(6,1fr)}}.rb-stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;background:var(--color-warning-wash);border:1px solid var(--color-warning);border-radius:var(--radius-lg)}.rb-stats-minor{margin:12px 0;font-size:var(--font-caption);color:var(--color-ink-3);font-variant-numeric:tabular-nums}.rb-type-row td{padding:14px 8px 4px;font-size:var(--font-caption);font-weight:600;color:var(--color-ink-3);text-align:left;border-bottom:1px solid var(--color-border)}.rb-n{font-size:var(--font-title-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.rb-l{font-size:var(--font-minor);color:var(--color-ink-2)}.rb-warn{background:var(--color-gold-wash);border:1px solid var(--color-warning);color:var(--color-warning);padding:9px 12px;border-radius:var(--radius-lg);font-size:var(--font-body-sm);margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rb-link{border:none;background:none;color:var(--color-accent);font-weight:600;font-size:var(--font-body-sm);font-family:inherit;cursor:pointer;padding:0;text-decoration:underline}.rb-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}.rb-table{border-collapse:separate;border-spacing:3px;width:max-content;min-width:100%}.rb-th-room,.rb-room{position:sticky;left:0;z-index:2;background:var(--color-surface);min-width:62px}.rb-th-room{font-size:var(--font-minor);color:var(--color-ink-2);font-weight:500;text-align:left;padding:4px 6px}.rb-th{min-width:44px;text-align:center;padding:2px 0}.rb-th-d{display:block;font-size:var(--font-minor);color:var(--color-ink-2)}.rb-th-w{display:block;font-size:var(--font-minor);color:var(--color-ink-3)}.rb-th.today .rb-th-d{color:var(--color-accent);font-weight:600}.rb-room{padding:4px 6px;cursor:pointer;border-right:1px solid var(--color-border)}.rb-room-no{display:block;font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.rb-room-type{display:block;font-size:var(--font-minor);color:var(--color-ink-3)}.rb-cell{width:44px;height:44px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--font-caption);font-weight:600}.rb-cell.today{box-shadow:inset 0 0 0 2px var(--color-accent)}.rb-hint{text-align:center;color:var(--color-ink-2);font-size:var(--font-body-sm);padding:18px 0}.rb-err{background:var(--color-danger-wash);color:var(--color-accent);padding:8px 12px;border-radius:8px;font-size:var(--font-body-sm);margin:8px 0}.rb-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:50}.rb-sheet{width:100%;max-width:520px;background:var(--color-surface);border-radius:16px 16px 0 0;padding:16px 16px 22px;max-height:82vh;overflow-y:auto}.rb-sheet-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.rb-sheet-head b{font-size:var(--font-title)}.rb-sheet-head span{font-size:var(--font-caption);color:var(--color-ink-2)}.rb-sheet-date{margin-left:auto;color:var(--color-accent)!important;font-weight:600}.rb-sheet-guest{font-size:var(--font-body-sm);color:var(--color-ink-1);margin:8px 0 12px}.rb-acts{display:flex;flex-direction:column;gap:8px}.rb-act{min-height:46px;padding:0 14px;border-radius:var(--radius-lg);font-size:var(--font-body);font-weight:600;font-family:inherit;cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-1);text-align:left}.rb-act:disabled{opacity:.6}.rb-act.primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff;text-align:center}.rb-act-split{font-size:var(--font-caption);color:var(--color-ink-3);margin-top:6px}.rb-close{width:100%;margin-top:12px;min-height:42px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-warning-wash);font-size:var(--font-body);font-family:inherit;cursor:pointer}.rb-sub-title{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-1);margin-bottom:2px}.rb-room-picks{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}.rb-room-pick{min-width:84px;min-height:44px;padding:0 12px;border-radius:var(--radius-lg);border:1.5px solid var(--color-border);background:var(--color-surface);font-size:var(--font-subtitle);font-weight:600;font-family:inherit;color:var(--color-ink-1);cursor:pointer}.rb-room-pick.on{border-color:var(--color-accent);background:var(--color-warning-wash);color:var(--color-accent)}.rb-lb{font-size:var(--font-caption);color:var(--color-ink-2);margin-top:4px}.rb-input{min-height:44px;padding:0 12px;border-radius:var(--radius-lg);border:1px solid var(--color-border);font-size:var(--font-subtitle);font-family:inherit;background:var(--color-surface);color:var(--color-ink-1)}.rb-op-row{display:flex;gap:8px;margin-top:8px}.rb-op-row .rb-act{flex:1;text-align:center}.rb-ok{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-success);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--font-body-sm);line-height:1.6}.rb-daybar{display:flex;align-items:center;gap:8px;margin:10px 0}.rb-daynav{width:44px;height:44px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-ink-1);font-size:var(--font-title-lg);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.rb-daynav:disabled{opacity:.4;cursor:not-allowed}.rb-daylabel{flex:1;text-align:center;font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);display:flex;align-items:center;justify-content:center;gap:8px}.rb-today-tag{font-size:var(--font-caption);font-weight:600;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:999px;padding:1px 8px}.rb-today-btn{flex:0 0 auto}.rb-mlist{display:block}.rb-tgrid,.rb-scroll{display:none}.rb-days .rb-day:not(:last-child){display:none}@media (min-width: 768px){.rb-mlist{display:none}.rb-tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.rb-scroll{display:none}}@media (min-width: 1024px){.rb-tgrid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1440px){.rb-daybar,.rb-tgrid{display:none}.rb-scroll{display:block}.rb-days .rb-day:not(:last-child){display:inline-flex}}.rb-mrow{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:56px;padding:8px 12px;margin-bottom:8px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-hair);cursor:pointer;font-family:inherit;text-align:left}.rb-mrow-main{display:flex;flex-direction:column;gap:2px;min-width:0}.rb-mrow-no{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.rb-mrow-type{font-size:var(--font-minor);color:var(--color-ink-3)}.rb-mrow-status{flex:0 0 auto;min-width:64px;text-align:center;font-size:var(--font-caption);font-weight:600;padding:6px 10px;border-radius:8px}.rb-tcard{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:88px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:var(--shadow-hair);cursor:pointer;font-family:inherit;text-align:left}.rb-tcard-no{font-size:var(--font-title);font-weight:600;color:var(--color-ink-1)}.rb-tcard-type{font-size:var(--font-minor);color:var(--color-ink-3)}.rb-tcard-status{margin-top:auto;width:100%;text-align:center;font-size:var(--font-caption);font-weight:600;padding:4px 8px;border-radius:8px}.rs-page{padding:16px;max-width:720px;margin:0 auto}.rs-head{margin-bottom:12px}.rs-head h2{margin:0;font-size:var(--font-title-lg)}.rs-sub{margin:4px 0 0;color:var(--color-ink-2);font-size:var(--font-caption)}.rs-hint,.rs-empty{color:var(--color-ink-2);padding:24px;text-align:center}.rs-banner{padding:8px 12px;border-radius:6px;margin-bottom:12px;font-size:var(--font-body-sm)}.rs-error{background:var(--color-danger-wash);color:var(--color-danger)}.rs-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.rs-room-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.rs-room-name{font-weight:600;font-size:var(--font-subtitle)}.rs-room-prices{color:var(--color-warning);font-size:var(--font-minor);text-align:right;line-height:1.5}.rs-room-prices em{font-style:normal;font-weight:600;color:var(--color-warning)}.rs-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.rs-cell{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);cursor:pointer}.rs-date{font-size:var(--font-minor);color:var(--color-ink-2)}.rs-status{font-size:var(--font-caption);font-weight:600}.rs-left{font-size:var(--font-minor);color:var(--color-ink-3)}.rs-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:50}.rs-sheet{background:var(--color-surface);width:100%;max-width:480px;border-radius:12px 12px 0 0;padding:20px}.rs-sheet h3{margin:0 0 16px;font-size:var(--font-title)}.rs-status-row{display:flex;gap:10px;margin-bottom:16px}.rs-opt{flex:1;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:transparent;font-size:var(--font-body);cursor:pointer}.rs-total-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.rs-total-row input{width:100px;padding:8px;border:1px solid var(--color-border);border-radius:8px}.rs-actions{display:flex;gap:12px}.rs-btn{flex:1;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);cursor:pointer;font-size:var(--font-subtitle)}.rs-primary{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.rs-btn:disabled{opacity:.6}.rs-tabs{display:flex;gap:8px;margin-bottom:12px}.rs-tab{padding:8px 18px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-2);font-size:var(--font-body);font-family:inherit;cursor:pointer}.rs-tab.on{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600}.rb-sk{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-hair);padding:12px}.rb-sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:3px;margin-top:10px}.rb-sk-grid .ui-sk-cell{height:44px}.tc-page{padding:var(--space-24);background:var(--color-paper);min-height:100%}.tc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-16)}.tc-head h1{font-size:var(--font-title-lg);color:var(--color-ink-1);margin:0}.tc-tools{display:flex;align-items:center;gap:var(--space-12)}.tc-hint{font-size:var(--font-caption);color:var(--color-ink-2)}.tc-unassigned{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-8);background:var(--color-surface);border:1px dashed var(--color-lake);border-radius:8px;padding:var(--space-8) var(--space-12);margin-bottom:var(--space-16)}.tc-u-t{font-size:var(--font-caption);font-weight:600;color:var(--color-lake)}.tc-u-chip{background:var(--color-lake-wash);color:var(--color-lake);font-size:var(--font-caption);padding:4px var(--space-8);border-radius:8px;cursor:grab;-webkit-user-select:none;user-select:none}.tc-u-chip:active{cursor:grabbing}.tc-u-hint{font-size:var(--font-minor);color:var(--color-ink-3)}.tc-grid{display:grid;grid-template-columns:120px 1fr;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.tc-corner,.tc-day,.tc-roomcell{position:sticky}.tc-corner{left:0;z-index:3;background:var(--color-fill);border-bottom:1px solid var(--color-border);padding:8px;font-size:var(--font-caption);font-weight:600;color:var(--color-ink-2)}.tc-days{display:flex;border-bottom:1px solid var(--color-border)}.tc-day{display:flex;flex-direction:column;align-items:center;padding:4px 0;background:var(--color-fill);border-right:1px solid var(--color-border)}.tc-day.today{background:var(--color-lake-wash)}.tc-d-md{font-size:var(--font-caption);font-weight:600;color:var(--color-ink-1)}.tc-d-wk{font-size:var(--font-minor);color:var(--color-ink-3)}.tc-row{display:flex;border-bottom:1px solid var(--color-border);min-height:38px}.tc-roomcell{left:0;z-index:2;display:flex;align-items:center;gap:8px;background:var(--color-fill);border-right:1px solid var(--color-border);padding:0 8px;flex-shrink:0}.tc-no{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.tc-st{font-size:var(--font-minor)}.tc-st.ok{color:var(--color-success)}.tc-st.warn{color:var(--color-warning)}.tc-st.bad{color:var(--color-danger)}.tc-lane{position:relative;min-height:38px}.tc-lane.ok{background:#47785624;box-shadow:inset 0 0 0 2px var(--color-success)}.tc-lane.bad{background:#b3261e1a;box-shadow:inset 0 0 0 2px var(--color-danger)}.tc-blockmsg{position:absolute;left:8px;top:8px;font-size:var(--font-caption);color:var(--color-danger);font-weight:600;pointer-events:none}.tc-bar{position:absolute;top:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:0 8px;font-size:var(--font-caption);font-weight:600;color:var(--color-ink-1);cursor:grab;-webkit-user-select:none;user-select:none}.tc-bar:active{cursor:grabbing;box-shadow:0 8px 16px #2b26202e}.tc-bar-n{margin-left:6px;font-weight:400;opacity:.7}.tc-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b262066;z-index:50;display:flex;align-items:center;justify-content:center}.tc-modal{background:var(--color-surface);border-radius:8px;padding:var(--space-24);width:420px;max-width:90vw;box-shadow:0 16px 48px #2b26203d}.tc-m-t{font-size:var(--font-title);font-weight:600;color:var(--color-ink-1);margin-bottom:var(--space-12)}.tc-m-body{font-size:var(--font-body);color:var(--color-ink-1);line-height:1.5}.tc-m-warn{margin-top:var(--space-12);font-size:var(--font-caption);color:var(--color-warning);background:var(--color-warning-wash);border-radius:4px;padding:8px var(--space-12)}.tc-m-split{display:flex;align-items:center;gap:var(--space-8);margin-top:var(--space-12);font-size:var(--font-body);color:var(--color-ink-1)}.tc-m-split select{flex:1;padding:6px 8px;border-radius:4px;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink-1);font-size:var(--font-body)}.tc-m-btns{display:flex;gap:var(--space-12);margin-top:var(--space-24)}.tc-btn{flex:1;padding:8px 0;border-radius:4px;border:none;cursor:pointer;font-size:var(--font-body);font-weight:600}.tc-btn.primary{background:var(--color-lake);color:var(--color-surface)}.tc-btn.primary:disabled{opacity:.6}.tc-btn.ghost{background:transparent;border:1px solid var(--color-border-strong);color:var(--color-ink-2)}.tc-drawer{position:fixed;right:0;top:0;bottom:0;width:340px;max-width:90vw;background:var(--color-surface);padding:var(--space-24);box-shadow:-8px 0 24px #2b262029}.tc-dl{font-size:var(--font-body);color:var(--color-ink-2);line-height:1.8}.tc-d-hint{margin-top:var(--space-24);font-size:var(--font-minor);color:var(--color-ink-3);line-height:1.6}.tc-flash{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:8px var(--space-24);border-radius:8px;cursor:pointer;z-index:60;font-size:var(--font-body);font-weight:600;color:var(--color-surface);background:var(--color-success);box-shadow:0 8px 24px #2b26203d}.tc-flash.bad{background:var(--color-danger)}.tc-error{color:var(--color-danger);padding:var(--space-16)}.tc-loading{color:var(--color-ink-2);padding:var(--space-32);text-align:center}.hrt-page{padding:16px;max-width:720px;margin:0 auto}.hrt-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.hrt-head h2{margin:0;font-size:var(--font-title-lg)}.hrt-add{border:none;background:var(--color-lake);color:#fff;padding:8px 14px;border-radius:8px;font-size:var(--font-body);cursor:pointer}.hrt-hint,.hrt-empty{color:var(--color-ink-2);padding:24px;text-align:center}.hrt-error{background:var(--color-danger-wash);color:var(--color-danger)}.hrt-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.hrt-card-head{display:flex;justify-content:space-between;align-items:center}.hrt-name{font-weight:600;font-size:var(--font-title)}.hrt-badge{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-lg)}.hrt-badge.on{background:var(--color-lake-wash);color:var(--color-lake)}.hrt-badge.off{background:var(--color-surface);color:var(--color-ink-3)}.hrt-meta{color:var(--color-ink-2);font-size:var(--font-body-sm);margin:6px 0}.hrt-prices{display:flex;gap:14px;font-size:var(--font-body-sm);color:var(--color-ink-2);margin-bottom:10px}.hrt-prices em{font-style:normal;font-weight:600;color:var(--color-warning);margin-left:2px}.hrt-actions{display:flex;gap:8px}.hrt-actions button{flex:1;padding:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);cursor:pointer}.hrt-actions button.danger{color:var(--color-danger);border-color:var(--color-danger)}.hrt-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:50}.hrt-sheet{background:var(--color-surface);width:100%;max-width:480px;border-radius:12px 12px 0 0;padding:20px}.hrt-sheet h3{margin:0 0 16px;font-size:var(--font-title)}.hrt-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:var(--font-body-sm);color:var(--color-ink-2)}.hrt-field input,.hrt-field select{padding:10px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-subtitle)}.hrt-row2{display:flex;gap:12px}.hrt-row2 .hrt-field{flex:1}.hrt-sheet-actions{display:flex;gap:12px;margin-top:8px}.hrt-sheet-actions button{flex:1;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-subtitle);cursor:pointer}.hrt-sheet-actions .primary{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.hrt-sheet-actions button:disabled{opacity:.6}.hrt-rate-list{max-height:220px;overflow-y:auto;margin-bottom:12px}.hrt-rate-empty{color:var(--color-ink-3);text-align:center;padding:16px}.hrt-rate-row{display:flex;align-items:center;justify-content:space-between;padding:8px 4px;border-bottom:1px solid var(--color-border);font-size:var(--font-body)}.hrt-rate-row button.danger{border:1px solid var(--color-danger);color:var(--color-danger);background:var(--color-surface);border-radius:6px;padding:4px 10px;cursor:pointer}.hrt-rate-add{display:flex;gap:8px;align-items:center;margin-bottom:12px}.hrt-rate-add input[type=date]{flex:1.4;padding:8px;border:1px solid var(--color-border);border-radius:8px}.hrt-rate-add input[type=number]{flex:1;padding:8px;border:1px solid var(--color-border);border-radius:8px}.hrt-rate-add .primary{border:none;background:var(--color-lake);color:#fff;padding:9px 14px;border-radius:8px;cursor:pointer}.hrt-batch{margin-top:12px;border-top:1px dashed var(--color-border);padding-top:12px}.hrt-batch-title{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-1);margin-bottom:8px}.hrt-batch-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.hrt-batch-row input,.hrt-batch-row select{flex:1;min-height:42px;padding:0 10px;border-radius:var(--radius-lg);border:1px solid var(--color-border);font-size:var(--font-body);font-family:inherit;background:var(--color-surface);color:var(--color-ink-1);min-width:0}.hrt-batch-sep{font-size:var(--font-caption);color:var(--color-ink-2);flex:none}.hrt-batch-reason{width:100%;box-sizing:border-box;min-height:42px;padding:0 10px;margin-bottom:8px;border-radius:var(--radius-lg);border:1px solid var(--color-border);font-size:var(--font-body);font-family:inherit}.hrt-batch-btn{width:100%;min-height:46px;border-radius:var(--radius-lg);font-size:var(--font-body);font-weight:600}.hrt-batch-ok{margin-top:8px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-success);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--font-body-sm)}.hrt-batch-preview{margin-top:8px}.hrt-units{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:var(--font-body-sm);margin:0 0 8px;padding:6px 8px;background:var(--bg-primary);border-radius:6px}.hrt-units-label{color:var(--text-placeholder);flex:none;font-size:var(--font-caption)}.hrt-unit-nos{color:var(--text-primary);font-variant-numeric:tabular-nums}.hrt-unit-nos em{font-style:normal;color:var(--text-placeholder)}.hrt-unit-none{color:var(--text-placeholder)}.hrt-unit-warn{color:var(--color-warning);font-size:var(--font-caption);font-weight:600;padding:2px 8px;border-radius:4px;background:var(--state-bg-pending);border:1px solid var(--color-warning)}.hrt-actions .hrt-cal{color:var(--brand-primary);border-color:var(--brand-primary);font-weight:600}.hrt-prices i{font-style:normal;margin-left:4px;font-size:var(--font-minor);color:var(--text-placeholder)}.hrt-prices em.sell{color:var(--brand-cyan)}.hrt-price-note{font-size:var(--font-caption);color:var(--text-placeholder);line-height:1.6;margin:0 0 10px;padding:6px 8px;background:var(--bg-primary);border-radius:6px}.hrt-sheet-tip{font-size:var(--font-caption);color:var(--text-secondary);line-height:1.7;margin:0 0 12px;padding:8px 10px;background:var(--bg-primary);border-radius:6px}.hrt-sheet-tip b{color:var(--brand-primary)}.hrt-attach-list{max-height:46vh;overflow-y:auto;margin-bottom:12px;border:1px solid var(--border-light);border-radius:8px}.hrt-attach-row{padding:10px 12px;border-bottom:1px solid var(--border-light)}.hrt-attach-row:last-child{border-bottom:none}.hrt-attach-row.on{background:var(--bg-selected)}.hrt-attach-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;cursor:pointer}.hrt-attach-main input[type=checkbox]{width:16px;height:16px;flex:none;accent-color:var(--brand-primary)}.hrt-attach-name{font-weight:600;color:var(--text-primary)}.hrt-attach-tag{font-size:var(--font-minor);padding:1px 6px;border-radius:4px;background:var(--bg-primary);color:var(--text-secondary)}.hrt-attach-price{color:var(--brand-cyan);font-variant-numeric:tabular-nums}.hrt-attach-price i{font-style:normal;font-size:var(--font-minor);color:var(--text-placeholder)}.hrt-attach-basis{font-size:var(--font-minor);color:var(--text-placeholder);margin-left:auto}.hrt-attach-auto{display:flex;align-items:center;gap:6px;margin:8px 0 0 24px;font-size:var(--font-caption);color:var(--text-secondary);cursor:pointer}.hrt-attach-auto input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand-primary)}.hrt-actions .hrt-attach{color:var(--brand-cyan);border-color:var(--brand-cyan)}.hrt-subtitle{font-size:var(--font-caption);font-weight:600;color:var(--brand-primary);margin:10px 0 2px;padding-left:2px}.hb-page{padding:16px;max-width:720px;margin:0 auto}.hb-head{margin-bottom:12px}.hb-head h2{margin:0;font-size:var(--font-title-lg)}.hb-tabs{display:flex;gap:8px;margin-bottom:12px;overflow-x:auto}.hb-tab{flex:0 0 auto;min-width:64px;min-height:44px;padding:8px 18px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body);color:var(--color-ink-2);cursor:pointer}.hb-tab.active{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.hb-hint,.hb-empty{color:var(--color-ink-2);padding:24px;text-align:center}.hb-banner{padding:8px 12px;border-radius:6px;margin-bottom:12px;font-size:var(--font-body-sm)}.hb-error{background:var(--color-danger-wash);color:var(--color-danger)}.hb-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.hb-card-head{display:flex;justify-content:space-between;align-items:center}.hb-room{font-weight:600;font-size:var(--font-title)}.hb-status{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-lg);color:#fff}.hb-status.bk{background:var(--color-gold-wash);color:var(--color-warning)}.hb-status.cf{background:var(--color-lake)}.hb-status.ci{background:var(--color-success)}.hb-status.co{background:var(--color-border)}.hb-status.cx{background:var(--color-danger)}.hb-status.ns{background:var(--color-accent)}.hb-dates{color:var(--color-ink-1);font-size:var(--font-body-sm);margin:8px 0 4px}.hb-guest{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-bottom:8px}.hb-foot{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.hb-price{font-weight:600;font-size:var(--font-title-lg);color:var(--color-warning)}.hb-order{color:var(--color-ink-3);font-size:var(--font-caption)}.hb-actions{display:flex;gap:8px}.hb-actions button{flex:1;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body);cursor:pointer}.hb-actions .primary{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.hb-actions .danger{color:var(--color-danger);border-color:var(--color-danger)}.hb-actions button:disabled{opacity:.6}.ci-page{padding:16px;max-width:720px;margin:0 auto}.ci-stats{display:flex;gap:10px;margin:12px 0}.ci-stats .ui-sk-metric{flex:1}.ci-stat{flex:1;border-radius:var(--radius-lg);padding:12px 8px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink-1)}.ci-stat-n{display:block;font-size:var(--font-display);font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.ci-stat-l{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-caption);color:var(--color-ink-2)}.ci-stat-dot{flex:0 0 6px;width:6px;height:6px;border-radius:50%}.ci-stat.s-in .ci-stat-dot{background:var(--color-danger)}.ci-stat.s-out .ci-stat-dot{background:var(--color-lake)}.ci-stat.s-stay .ci-stat-dot{background:var(--color-ink-3)}.ci-toolbar{margin:8px 0 4px}.ci-tabs{display:flex;gap:8px;margin-bottom:10px}.ci-tab{flex:1;padding:9px 4px;min-height:44px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.ci-tab.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.ci-search{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);margin-bottom:8px;outline:none}.ci-search:focus{border-color:var(--color-accent)}.ci-stayed{color:var(--color-lake);font-size:var(--font-caption)}.ci-note{color:var(--color-warning);font-size:var(--font-caption);background:var(--color-gold-wash);border-radius:4px;padding:4px 8px;margin-bottom:8px}.ci-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-bottom:4px}.ci-head h2{margin:0;font-size:var(--font-title-lg);white-space:nowrap}.ci-date{color:var(--color-accent);font-size:var(--font-body-sm);cursor:pointer}.ci-walkin-btn,.ci-audit,.ci-scan-btn,.ci-ocr-btn,.ci-date,.ci-scan-camrow .ghost{display:inline-flex;align-items:center;gap:6px}.ci-actions{display:flex;gap:8px;margin-top:10px}.ci-main-btn{flex:1;min-height:46px;border:none;border-radius:var(--radius-lg);background:var(--color-primary, var(--color-accent));color:#fff;font-size:var(--font-subtitle);font-weight:600;font-family:inherit;cursor:pointer;transition:opacity var(--duration-tap) var(--ease-standard),transform var(--duration-tap) var(--ease-standard)}.ci-main-btn:disabled{opacity:.6;cursor:default}.ci-main-btn:active:not(:disabled){transform:scale(var(--motion-press-scale))}.ci-more-btn{flex:0 0 auto;min-height:46px;padding:0 16px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-ink-2);font-size:var(--font-body-sm);font-weight:600;font-family:inherit;cursor:pointer}.ci-more-btn:active{background:var(--color-warning-wash)}.ci-sub-actions{display:flex;gap:8px;margin-top:8px}.ci-sub-actions .ghost{flex:1;min-height:40px;border-radius:var(--radius-lg);font-size:var(--font-body-sm)}.ci-inhouse-tag{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-success);font-size:var(--font-body);font-weight:600}.ci-head-ops{display:flex;align-items:center;gap:10px}.ci-walkin-btn{border:1px solid var(--color-lake);background:var(--color-lake-wash);color:var(--color-lake);border-radius:8px;padding:5px 12px;min-height:40px;font-size:var(--font-body-sm);font-weight:600;cursor:pointer}.ci-walkin-btn:hover{background:var(--color-lake-wash)}.ci-hint,.ci-empty{color:var(--color-ink-2);padding:24px;text-align:center}.ci-banner{padding:8px 12px;border-radius:6px;margin-bottom:12px;font-size:var(--font-body-sm)}.ci-error{background:var(--color-danger-wash);color:var(--color-danger)}.ci-section{margin-top:8px}.ci-sub{font-size:var(--font-subtitle);margin:12px 0 8px;color:var(--color-ink-1);display:flex;align-items:center;gap:8px}.ci-count{display:inline-block;min-width:20px;padding:0 6px;background:var(--color-accent);color:#fff;border-radius:var(--radius-lg);font-size:var(--font-caption);text-align:center}.ci-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.ci-card-head{display:flex;justify-content:space-between;align-items:center}.ci-room{font-weight:600;font-size:var(--font-title)}.ci-status{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-lg);color:#fff}.ci-status.bk{background:var(--color-warning)}.ci-status.cf{background:var(--color-accent)}.ci-status.ci{background:var(--color-lake)}.ci-status.co{background:var(--color-border)}.ci-status.cx{background:var(--color-danger)}.ci-status.ns{background:var(--color-accent)}.ci-dates{color:var(--color-ink-1);font-size:var(--font-body-sm);margin:8px 0 4px}.ci-guest{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-bottom:8px}.ci-foot{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.ci-price{font-weight:600;font-size:var(--font-title-lg);color:var(--color-warning)}.ci-order{color:var(--color-ink-3);font-size:var(--font-caption)}.ci-actions{display:flex;gap:8px}.ci-actions button{flex:1;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body);cursor:pointer}.ci-actions .primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.ci-actions button:disabled{opacity:.6}.ci-audit{width:100%;padding:11px;border:1px solid var(--color-warning);border-radius:8px;background:var(--color-gold-wash);color:var(--color-warning);font-size:var(--font-body);font-weight:600;cursor:pointer;margin-bottom:10px}.ci-audit:disabled{opacity:.6}.ci-search-row{display:flex;gap:8px}.ci-search{flex:1}.ci-selectall{padding:0 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);white-space:nowrap;cursor:pointer}.ci-check{width:16px;height:16px;margin-right:6px;vertical-align:-2px}.ci-card.picked{outline:2px solid var(--color-lake);background:var(--color-lake-wash)}.ci-batchbar{display:flex;align-items:center;gap:10px;background:var(--color-surface);border-radius:var(--radius-lg);padding:10px 12px;margin:4px 0 20px;box-shadow:var(--shadow-card)}.ci-batch-n{flex:1;font-size:var(--font-body);color:var(--color-ink-1)}.ci-batch-clear{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);cursor:pointer}.ci-batch-go{padding:8px 18px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;font-size:var(--font-body);font-weight:600;cursor:pointer}.ci-batch-go:disabled{opacity:.6}.ci-rooms-line{font-size:var(--font-body-sm);color:var(--color-ink-2);margin:2px 0 8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ci-roomno{display:inline-block;background:var(--color-lake-wash);color:var(--color-lake);border:1px solid var(--color-lake);border-radius:4px;padding:1px 8px;font-size:var(--font-body-sm);font-weight:600}.ci-norooms{color:var(--color-ink-3)}.ci-actions .ghost{flex:0 0 88px;background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.ci-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:1000}.ci-sheet{background:var(--color-surface);width:100%;max-width:720px;border-radius:14px 14px 0 0;padding:14px 16px 18px;max-height:78vh;overflow-y:auto}.ci-sheet-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.ci-sheet-sub{color:var(--color-ink-2);font-size:var(--font-caption)}.ci-roomlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-bottom:14px}.ci-roomopt{display:flex;align-items:center;gap:6px;border:1px solid var(--color-border);border-radius:8px;padding:9px 10px;font-size:var(--font-body);cursor:pointer}.ci-roomopt.on{border-color:var(--color-accent);background:var(--color-lake-wash)}.ci-roomopt input{width:15px;height:15px}.ci-roomopt-no{font-weight:600}.ci-roomopt-floor{color:var(--color-ink-2);font-size:var(--font-caption)}.ci-roomopt-st{margin-left:auto;font-size:var(--font-minor);padding:1px 6px;border-radius:8px;color:#fff}.ci-roomopt-st.clean{background:var(--color-lake)}.ci-roomopt-st.occupied{background:var(--color-accent)}.ci-roomopt-st.dirty{background:var(--color-warning)}.ci-roomopt-st.maintenance{background:var(--color-danger)}.ci-sheet-ops{display:flex;gap:10px}.ci-sheet-cancel{flex:1;padding:11px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-subtitle);cursor:pointer}.ci-sheet-ok{flex:2;padding:11px;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:var(--font-subtitle);font-weight:600;cursor:pointer}.ci-sheet-ok:disabled{opacity:.6}.ci-regline{margin-bottom:10px}.ci-regline input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-subtitle);outline:none}.ci-regline input:focus{border-color:var(--color-accent)}.ci-scan-btn{padding:0 14px;border:1px solid var(--color-lake);border-radius:8px;background:var(--color-lake-wash);font-size:var(--font-body-sm);color:var(--color-lake);font-weight:600;white-space:nowrap;cursor:pointer}.ci-ocr-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ci-ocr-btn{padding:10px 16px;border:none;border-radius:8px;background:var(--color-lake);color:var(--color-ink-on-dark);font-size:var(--font-subtitle);font-weight:600;cursor:pointer}.ci-ocr-btn:disabled{opacity:.6}.ci-ocr-file{display:none}.ci-engine-badge{font-size:var(--font-caption);color:var(--color-lake);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2px 8px;white-space:nowrap}.ci-engine-badge.demo{color:var(--color-warning);background:var(--color-gold-wash);border-color:var(--color-warning)}.ci-ocr-tip{font-size:var(--font-caption);color:var(--color-ink-3);margin-bottom:10px;line-height:1.5}.ci-ocr-err{font-size:var(--font-body-sm);color:var(--color-danger);background:var(--color-danger-wash);border:1px solid var(--color-danger);border-radius:6px;padding:6px 10px;margin-bottom:10px}.ci-ocr-warn{font-size:var(--font-body-sm);color:var(--color-warning);background:var(--color-gold-wash);border:1px solid var(--color-warning);border-radius:6px;padding:6px 10px;margin-bottom:6px}.ci-regline.low input,.ci-regline.low select{border-color:var(--color-danger);background:var(--color-danger-wash)}.ci-low-mark{display:inline-block;font-size:var(--font-caption);color:var(--color-danger);margin-top:4px}.ci-regline-2{display:flex;gap:8px}.ci-regline-2 select{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-subtitle);background:var(--color-surface);outline:none}.ci-regline-2 input[type=date]{flex:1.4;min-width:0;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-subtitle);outline:none}.ci-regline-2 select:focus,.ci-regline-2 input[type=date]:focus{border-color:var(--color-accent)}.ci-scan-row{display:flex;gap:8px;margin-bottom:10px}.ci-scan-input{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-subtitle);outline:none}.ci-scan-input:focus{border-color:var(--color-accent)}.ci-scan-camrow{margin-bottom:10px}.ci-scan-video{width:100%;border-radius:8px;background:var(--color-ink-1);margin-bottom:10px}.ci-scan-via{font-size:var(--font-caption);color:var(--color-accent);margin-bottom:8px}.ci-scan-hit{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 12px;margin-bottom:10px;background:var(--color-surface)}.ci-scan-hit-head{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-subtitle)}.ci-scan-hit-foot{display:flex;align-items:center;gap:8px;margin-top:8px}.ci-scan-hit-ops{margin-left:auto;display:flex;gap:8px}.ci-sec{border-top:1px solid var(--color-border);margin-top:12px}.ci-sec-head{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:44px;padding:8px 0;background:none;border:none;cursor:pointer;font-family:inherit}.ci-sec-title{display:inline-flex;align-items:center;gap:7px;font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.ci-sec-dot{width:6px;height:6px;border-radius:50%;background:var(--color-danger)}.ci-sec-caret{color:var(--color-ink-3);font-size:var(--font-caption);transition:transform var(--duration-tap) var(--ease-standard)}.ci-sec-caret.open{transform:rotate(180deg)}.ci-sec-sub{margin:0 0 8px;font-size:var(--font-caption);color:var(--color-ink-3)}.ci-regline input.ci-input-err,.ci-regline-2 input.ci-input-err{border-color:var(--color-danger)}.ci-field-err{margin:-4px 0 10px;font-size:var(--font-caption);color:var(--color-danger)}.ci-field-hint{margin:-4px 0 10px;font-size:var(--font-caption);color:var(--color-ink-3)}.psb-page{padding:16px}.psb-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.psb-head h2{margin:0;font-size:var(--font-title-lg)}.psb-note{background:var(--color-warning-wash);border:1px solid var(--color-warning);border-radius:8px;padding:10px 12px;font-size:var(--font-body-sm);line-height:1.7;color:var(--color-ink-2);margin-bottom:12px}.psb-stats{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.psb-stat{border-radius:var(--radius-lg);padding:10px 18px;text-align:center;min-width:88px;background:var(--color-surface);border:1px solid var(--color-border)}.psb-stat-n{display:block;font-size:var(--font-title-lg);font-weight:600}.psb-stat-l{font-size:var(--font-caption);color:var(--color-ink-2)}.psb-stat.s-pending{background:var(--color-warning-wash);border-color:var(--color-warning)}.psb-stat.s-pending .psb-stat-n{color:var(--color-warning)}.psb-stat.s-submitted{background:var(--color-lake-wash);border-color:var(--color-lake)}.psb-stat.s-submitted .psb-stat-n{color:var(--color-lake)}.psb-stat.s-success{background:var(--color-success-wash);border-color:var(--color-success)}.psb-stat.s-success .psb-stat-n{color:var(--color-success)}.psb-stat.s-failed{background:var(--color-danger-wash);border-color:var(--color-danger)}.psb-stat.s-failed .psb-stat-n{color:var(--color-danger)}.psb-tabs{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.psb-tab{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;padding:4px 14px;font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.psb-tab.on{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.psb-error{color:var(--color-danger);font-size:var(--font-body-sm);margin-bottom:8px}.psb-empty{color:var(--color-ink-2);font-size:var(--font-body-sm);padding:24px 0;text-align:center}.psb-table{width:100%;border-collapse:collapse;font-size:var(--font-body-sm);background:var(--color-surface)}.psb-table th{text-align:left;padding:8px 10px;border-bottom:2px solid var(--color-border);color:var(--color-ink-2);font-weight:600;white-space:nowrap}.psb-table td{padding:8px 10px;border-bottom:1px solid var(--color-border);white-space:nowrap}.psb-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-caption)}.psb-status{border-radius:999px;padding:2px 10px;font-size:var(--font-caption)}.psb-status.st-pending{background:var(--color-warning-wash);color:var(--color-warning)}.psb-status.st-submitted{background:var(--color-lake-wash);color:var(--color-lake)}.psb-status.st-success{background:var(--color-success-wash);color:var(--color-success)}.psb-status.st-failed{background:var(--color-danger-wash);color:var(--color-danger)}@media (max-width: 720px){.psb-table{font-size:var(--font-caption)}.psb-table th:nth-child(4),.psb-table td:nth-child(4),.psb-table th:nth-child(5),.psb-table td:nth-child(5){display:none}}.st-page{padding:16px}.st-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.st-head h2{margin:0;font-size:var(--font-title-lg)}.st-sub{font-size:var(--font-caption);color:var(--text-secondary)}.st-invite-btn{border:none;background:var(--color-primary, var(--color-accent));color:#fff;border-radius:var(--radius-lg);padding:10px 16px;font-size:var(--font-body);font-weight:600;font-family:inherit;cursor:pointer}.st-invite-btn:active{transform:scale(var(--motion-press-scale));transition:transform var(--duration-tap) var(--ease-standard)}.st-note{background:var(--color-warning-wash);border:1px solid var(--color-warning);border-radius:8px;padding:10px 12px;font-size:var(--font-caption);line-height:1.7;color:var(--color-ink-2);margin-bottom:12px}.st-error{color:var(--color-danger);font-size:var(--font-body-sm);margin-bottom:8px}.st-empty{color:var(--text-secondary);font-size:var(--font-body-sm);padding:24px 0;text-align:center}.st-card{background:var(--bg-card);border:1px solid var(--color-border);border-radius:12px;padding:14px;margin-bottom:10px}.st-card.off{opacity:.55}.st-card-top{display:flex;align-items:center;gap:8px}.st-phone{font-size:var(--font-title);font-weight:600;font-variant-numeric:tabular-nums}.st-role{font-size:var(--font-caption);font-weight:600;padding:2px 10px;border-radius:999px}.st-role.r-owner{background:var(--color-gold-wash);color:var(--color-warning)}.st-role.r-manager{background:var(--color-danger-wash);color:var(--color-danger)}.st-role.r-operator{background:var(--color-lake-wash);color:var(--color-lake)}.st-role.r-viewer{background:var(--color-fill);color:var(--color-ink-2)}.st-state{font-size:var(--font-caption);color:var(--color-success);margin-left:auto}.st-state:not(.on){color:var(--color-ink-2)}.st-card-meta{font-size:var(--font-caption);color:var(--text-secondary);margin-top:6px}.st-card-ops{display:flex;gap:8px;margin-top:10px}.st-card-ops .ghost{flex:1;min-height:38px;border-radius:var(--radius-lg);font-size:var(--font-body-sm)}.st-disable{flex:0 0 auto;padding:0 16px;min-height:38px;border-radius:var(--radius-lg);border:1px solid var(--color-danger);background:var(--color-surface);color:var(--color-danger);font-size:var(--font-body-sm);font-weight:600;font-family:inherit;cursor:pointer}.st-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:200}.st-sheet{width:100%;max-width:520px;background:var(--bg-card);border-radius:16px 16px 0 0;padding:18px 16px calc(16px + env(safe-area-inset-bottom))}.st-sheet-head{margin-bottom:14px}.st-sheet-head b{font-size:var(--font-title);display:block}.st-sheet-sub{font-size:var(--font-caption);color:var(--text-secondary)}.st-field{margin-bottom:10px}.st-field input,.st-field select{width:100%;min-height:46px;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:0 12px;font-size:var(--font-subtitle);font-family:inherit;background:var(--color-surface);box-sizing:border-box}.st-sheet-ops{display:flex;gap:8px;margin-top:14px}.st-sheet-ops .ci-sheet-cancel{flex:1;min-height:46px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body);font-family:inherit;cursor:pointer}.st-ok{flex:1;min-height:46px;border:none;border-radius:var(--radius-lg);background:var(--color-primary, var(--color-accent));color:#fff;font-size:var(--font-subtitle);font-weight:600;font-family:inherit;cursor:pointer}.st-ok:disabled{opacity:.5;cursor:default}.st-ok-ghost{background:var(--color-warning)}@media (min-width: 1024px){.st-page{max-width:720px}.st-mask{align-items:center}.st-sheet{border-radius:var(--radius-xl)}}.ru-page{padding:16px;max-width:720px;margin:0 auto}.ru-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ru-head h2{margin:0;font-size:var(--font-title-lg)}.ru-add{padding:7px 14px;border:1px solid var(--color-lake);border-radius:8px;background:var(--color-surface);color:var(--color-lake);font-size:var(--font-body);cursor:pointer}.ru-stats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ru-stat{font-size:var(--font-caption);color:var(--color-ink-2);background:var(--color-surface);border-radius:6px;padding:4px 10px}.ru-stat b{font-size:var(--font-body)}.ru-stat.cl b{color:var(--color-success)}.ru-stat.oc b{color:var(--color-lake)}.ru-stat.dt b{color:var(--color-warning)}.ru-stat.mt b{color:var(--color-danger)}.ru-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.ru-error{background:var(--color-danger-wash);color:var(--color-danger)}.ru-hint{color:var(--color-ink-2);padding:24px;text-align:center;font-size:var(--font-body)}.ru-form{display:flex;flex-wrap:wrap;gap:8px;background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.ru-form select,.ru-form input{flex:1 1 120px;min-width:110px;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body);outline:none}.ru-form select:focus,.ru-form input:focus{border-color:var(--color-lake)}.ru-submit{flex:1 1 100%;padding:10px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;font-size:var(--font-subtitle);cursor:pointer}.ru-submit:disabled{opacity:.6}.ru-tabs{display:flex;gap:8px;margin-bottom:12px}.ru-tab{flex:1;padding:8px 4px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.ru-tab.active{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.ru-group{margin-bottom:8px}.ru-gname{font-size:var(--font-subtitle);margin:12px 0 8px;color:var(--color-ink-1)}.ru-gn{display:inline-block;min-width:20px;padding:0 6px;background:var(--color-lake);color:#fff;border-radius:var(--radius-lg);font-size:var(--font-caption);text-align:center}.ru-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.ru-room{background:var(--color-surface);border-radius:var(--radius-lg);padding:10px;box-shadow:var(--shadow-card);border-left:3px solid var(--color-success)}.ru-room.oc{border-left-color:var(--color-lake)}.ru-room.dt{border-left-color:var(--color-warning)}.ru-room.mt{border-left-color:var(--color-danger)}.ru-room-head{display:flex;justify-content:space-between;align-items:center}.ru-no{font-weight:600;font-size:var(--font-title)}.ru-status{font-size:var(--font-minor);padding:2px 7px;border-radius:var(--radius-lg);color:#fff}.ru-status.cl{background:var(--color-success)}.ru-status.oc{background:var(--color-lake)}.ru-status.dt{background:var(--color-warning)}.ru-status.mt{background:var(--color-danger)}.ru-meta{color:var(--color-ink-2);font-size:var(--font-caption);margin:6px 0 4px}.ru-guest{color:var(--color-lake)}.ru-remark{color:var(--color-warning);font-size:var(--font-caption);background:var(--color-gold-wash);border-radius:4px;padding:3px 6px;margin-bottom:6px}.ru-ops{display:flex;flex-wrap:wrap;gap:4px}.ru-ops button{flex:1 1 44%;padding:5px 2px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);font-size:var(--font-caption);color:var(--color-ink-2);cursor:pointer}.ru-ops button:disabled{opacity:.6}.ru-ops .ru-del{color:var(--color-danger)}.ru-head-ops{display:flex;gap:8px;align-items:center}.ru-bulk{padding:7px 14px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body);cursor:pointer}.ru-bulk:hover{background:var(--bg-hover)}.ru-bulk.on{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.ru-bulkbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;margin-bottom:10px;border-radius:var(--radius-base);background:var(--bg-selected);border:1px solid var(--brand-primary)}.ru-bulk-count{font-size:var(--font-body-sm);color:var(--text-primary)}.ru-bulk-count b{color:var(--brand-primary);font-size:var(--font-subtitle)}.ru-bulkbar select{height:32px;padding:0 8px;font-size:var(--font-body-sm);min-width:150px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card);color:var(--text-primary)}.ru-bulkbar button{height:32px;padding:0 12px;font-size:var(--font-body-sm);cursor:pointer;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary)}.ru-bulk-go{background:var(--brand-primary)!important;border-color:var(--brand-primary)!important;color:#fff!important}.ru-bulk-go:disabled{background:var(--btn-disabled)!important;border-color:var(--btn-disabled)!important;cursor:not-allowed}.ru-check{display:inline-flex;align-items:center;margin-right:4px}.ru-check input{width:16px;height:16px;cursor:pointer}.ru-room.ru-picked{box-shadow:0 0 0 2px var(--brand-primary)}.fo-page{padding:16px;max-width:720px;margin:0 auto}.fo-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.fo-head h2{margin:0;font-size:var(--font-title-lg)}.fo-refresh{color:var(--color-lake);font-size:var(--font-body-sm);cursor:pointer}.fo-hint,.fo-empty{color:var(--color-ink-2);padding:20px;text-align:center;font-size:var(--font-body)}.fo-tabs{display:flex;gap:8px;margin-bottom:12px}.fo-tab{flex:1;padding:9px 4px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.fo-tab.active{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.fo-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.fo-error{background:var(--color-danger-wash);color:var(--color-danger)}.fo-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card);cursor:pointer}.fo-card-head{display:flex;justify-content:space-between;align-items:center}.fo-guest{font-weight:600;font-size:var(--font-title)}.fo-status{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-lg);color:#fff}.fo-status.open{background:var(--color-warning)}.fo-status.closed{background:var(--color-border)}.fo-room{font-size:var(--font-body-sm);color:var(--color-ink-1);margin-top:6px}.fo-nos{color:var(--color-lake);background:var(--color-lake-wash);border-radius:4px;padding:0 6px;margin-left:2px}.fo-dates{font-size:var(--font-caption);color:var(--color-ink-2);margin:2px 0 8px}.fo-money{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--font-body-sm);color:var(--color-ink-2);font-variant-numeric:tabular-nums}.fo-money b{font-size:var(--font-subtitle)}.fo-money .ok{color:var(--color-ink-1);font-weight:600}.fo-money .due{color:var(--color-danger);font-weight:600}.fo-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:50}.fo-sheet{background:var(--color-surface);width:100%;max-width:720px;border-radius:14px 14px 0 0;padding:14px 16px 18px;max-height:82vh;overflow-y:auto}.fo-sheet-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.fo-sheet-sub{color:var(--color-ink-2);font-size:var(--font-caption)}.fo-sec{margin-bottom:12px}.fo-sec-t{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);margin-bottom:6px}.fo-line{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--color-border);font-size:var(--font-body)}.fo-cat{font-size:var(--font-minor);background:var(--color-surface);color:var(--color-ink-2);border-radius:4px;padding:1px 6px}.fo-name{flex:1;color:var(--color-ink-1)}.fo-qty{color:var(--color-ink-2);font-size:var(--font-caption)}.fo-amt{font-weight:600}.fo-amt.ok{color:var(--color-success)}.fo-del{border:none;background:var(--color-danger-wash);color:var(--color-danger);border-radius:4px;padding:3px 8px;font-size:var(--font-caption);cursor:pointer}.fo-addrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fo-addrow select,.fo-addrow input{padding:7px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body-sm);outline:none}.fo-addrow input{flex:1 1 70px}.fo-addrow .fo-num{flex:0 0 62px}.fo-addbtn{padding:7px 14px;border:none;border-radius:6px;background:var(--color-lake);color:#fff;font-size:var(--font-body-sm);cursor:pointer}.fo-addbtn:disabled{opacity:.6}.fo-quick{padding:7px 10px;border:1px solid var(--color-lake);border-radius:6px;background:var(--color-surface);color:var(--color-lake);font-size:var(--font-body-sm);cursor:pointer}.fo-sum{display:flex;justify-content:space-between;background:var(--color-surface);border-radius:8px;padding:10px 12px;font-size:var(--font-body);margin-bottom:12px}.fo-sum .ok{color:var(--color-success);font-weight:600}.fo-sum .due{color:var(--color-danger);font-weight:600}.fo-sheet-ops{display:flex;gap:10px}.fo-cancel{flex:1;padding:11px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-subtitle);cursor:pointer}.fo-close-btn{flex:2;padding:11px;border:none;border-radius:8px;background:var(--color-success);color:#fff;font-size:var(--font-subtitle);font-weight:600;cursor:pointer}.fo-close-btn:disabled{opacity:.55}.fo-mini{padding:3px 8px;border:1px solid var(--color-lake);border-radius:4px;background:var(--color-surface);color:var(--color-lake);font-size:var(--font-caption);cursor:pointer}.fo-mini:disabled{opacity:.6}.fo-dstate{font-size:var(--font-minor);color:var(--color-ink-2);background:var(--color-surface);border-radius:4px;padding:1px 6px}.fo-deduct{width:58px;padding:3px 6px;border:1px solid var(--color-border);border-radius:4px;font-size:var(--font-caption);outline:none}.fo-deduct:focus{border-color:var(--color-lake)}.fo-qr{background:var(--color-surface);border-radius:var(--radius-lg);padding:14px;text-align:center;box-shadow:var(--shadow-card);margin-bottom:12px}.fo-qr img{width:220px;height:220px;display:block;margin:0 auto 8px}.fo-qr-msg{font-size:var(--font-body);color:var(--color-ink-1);margin-bottom:4px}.fo-qr-sub{font-size:var(--font-caption);color:var(--color-ink-2);margin-bottom:8px}.fo-qr-ops{display:flex;gap:8px;justify-content:center}.fo-dayclose{padding:7px 14px;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:var(--font-body-sm);cursor:pointer}.fo-dayclose:disabled{opacity:.6}.fo-head{gap:10px}.fo-head h2{margin-right:auto}.fo-dc-card{background:var(--color-warning-wash);border:1px solid var(--color-warning);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;font-size:var(--font-body-sm)}.fo-dc-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.fo-dc-x{color:var(--color-accent);cursor:pointer;font-size:var(--font-caption)}.fo-dc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px 12px;margin-bottom:8px;color:var(--color-ink-2)}.fo-dc-check{color:var(--color-ink-2);position:relative;padding:2px 0 2px 14px}.fo-dc-check:before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:currentColor}.fo-dc-check.ok{color:var(--color-lake)}.fo-dc-check.bad{color:var(--color-danger)}.fo-dc-alert{color:var(--color-warning);padding:2px 0}.fo-pending{color:var(--color-warning);font-size:var(--font-caption);width:100%}.fo-pending-hint{color:var(--color-warning);font-size:var(--font-caption);padding:6px 0}.fo-mini{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-2);border-radius:6px;padding:2px 8px;font-size:var(--font-caption);cursor:pointer}.fo-mini-sheet{background:var(--color-surface);border-radius:12px;padding:16px;width:min(420px,92vw);display:flex;flex-direction:column;gap:10px}.fo-mini-sheet select{border:1px solid var(--color-border);border-radius:8px;padding:8px;font-size:var(--font-body)}.fo-credit-badge{color:var(--color-warning);background:var(--color-warning-wash);border-radius:6px;padding:1px 6px;font-size:var(--font-caption);width:100%}.fo-alert-badge{margin-top:6px;color:var(--color-danger);background:var(--color-warning-wash);border:1px solid var(--color-warning);border-radius:8px;padding:6px 8px;font-size:var(--font-caption)}.fo-print-btn{border:1px solid var(--color-accent);background:var(--color-surface);color:var(--color-accent);border-radius:8px;padding:8px 16px;font-size:var(--font-body-sm);cursor:pointer}.fo-print{display:none}@media print{body *{visibility:hidden}.fo-print,.fo-print *{visibility:visible}.fo-print{display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-surface);color:var(--color-ink-1);padding:24px;font-size:var(--font-body-sm)}}.fo-p-head{font-size:var(--font-title-lg);font-weight:600;text-align:center}.fo-p-sub{text-align:center;color:var(--color-ink-2);margin-bottom:12px}.fo-p-table{width:100%;border-collapse:collapse;margin-bottom:10px}.fo-p-table td,.fo-p-table th{border-bottom:1px solid var(--color-border);padding:5px 4px;text-align:left}.fo-p-sum td{font-weight:600;border-bottom:none}.fo-p-foot{margin-top:14px;text-align:center;color:var(--color-ink-2);font-size:var(--font-caption)}.fo-inv-void{color:var(--color-danger);font-size:var(--font-caption)}.fo-over-chk{display:flex;align-items:center;gap:4px;font-size:var(--font-body-sm);color:var(--color-warning);white-space:nowrap}.dc-page{padding:16px;max-width:880px;margin:0 auto}.dc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dc-head h1{font-size:var(--font-title-lg);margin:0}.dc-refresh{padding:6px 16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);cursor:pointer}.dc-gw{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 14px;border-radius:var(--radius-lg);margin-bottom:12px;font-size:var(--font-body-sm)}.dc-gw.ok{background:var(--color-success-wash);border:1px solid var(--color-border)}.dc-gw.bad{background:var(--color-danger-wash);border:1px solid var(--color-danger)}.dc-gw-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.dc-gw.ok .dc-gw-dot{color:var(--color-success)}.dc-gw.bad .dc-gw-dot{color:var(--color-danger)}.dc-gw-note{color:var(--color-warning);display:inline-flex;align-items:center;gap:5px}.dc-demo-badge{background:var(--color-gold-wash);color:var(--color-warning);border-radius:6px;padding:1px 8px;font-size:var(--font-caption)}.dc-error{background:var(--color-danger-wash);border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;padding:10px 14px;margin-bottom:10px;font-size:var(--font-body-sm)}.dc-msg{background:var(--color-success-wash);border:1px solid var(--color-border);color:var(--color-success);border-radius:8px;padding:10px 14px;margin-bottom:10px;font-size:var(--font-body-sm)}.dc-sec{margin-bottom:20px}.dc-sec h2{font-size:var(--font-subtitle);margin:0 0 10px;color:var(--color-ink-2)}.dc-empty{color:var(--color-ink-3);font-size:var(--font-body-sm);padding:12px 0}.dc-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 14px;margin-bottom:8px}.dc-card.dc-st-uncertain{border-color:var(--color-gold);background:var(--color-gold-wash)}.dc-card.dc-st-failed{border-color:var(--color-danger)}.dc-history{opacity:.85}.dc-card-main{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dc-room{font-size:var(--font-title);font-weight:600}.dc-action{color:var(--color-ink-2)}.dc-guest{color:var(--color-ink-2);font-size:var(--font-body-sm)}.dc-bid{color:var(--color-ink-3);font-size:var(--font-caption)}.dc-badge{border-radius:6px;padding:1px 8px;font-size:var(--font-caption)}.dc-badge-pending,.dc-badge-executing{background:var(--color-lake-wash);color:var(--color-lake)}.dc-badge-done{background:var(--color-success-wash);color:var(--color-success)}.dc-badge-uncertain{background:var(--color-gold-wash);color:var(--color-warning)}.dc-badge-failed{background:var(--color-danger-wash);color:var(--color-danger)}.dc-badge-cancelled{background:var(--color-surface);color:var(--color-ink-2)}.dc-card-sub{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:var(--font-caption);color:var(--color-ink-2)}.dc-err-inline{color:var(--color-danger)}.dc-card-ops{display:flex;gap:8px;margin-top:8px}.dc-exec{padding:6px 18px;border:none;border-radius:8px;background:var(--color-warning);color:#fff;font-size:var(--font-body);cursor:pointer}.dc-exec:disabled{opacity:.5;cursor:default}.dc-cancel{padding:6px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-ink-2);cursor:pointer}.dc-form{display:flex;flex-wrap:wrap;gap:8px}.dc-form input,.dc-form select{padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);background:var(--color-surface)}.dc-form input{width:150px}.dc-addbtn{padding:8px 20px;border:none;border-radius:8px;background:var(--color-warning);color:#fff;font-size:var(--font-body);cursor:pointer}.dc-addbtn:disabled{opacity:.5;cursor:default}.dc-form-hint{margin-top:6px;font-size:var(--font-caption);color:var(--color-ink-3)}.gt-page{padding:16px 20px 32px;max-width:960px}.gt-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.gt-head h2{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary)}.gt-sub{font-size:var(--font-body-sm);color:var(--text-secondary)}.gt-error{background:var(--state-bg-danger);color:var(--state-text-danger);border:1px solid var(--state-text-danger);border-radius:var(--radius-base);padding:10px 14px;margin-bottom:10px;font-size:var(--font-body-sm)}.gt-ok{background:var(--state-bg-done);color:var(--state-text-done);border:1px solid var(--state-text-done);border-radius:var(--radius-base);padding:8px 14px;margin-bottom:10px;font-size:var(--font-body-sm)}.gt-hint{padding:40px 0;text-align:center;color:var(--text-placeholder);font-size:var(--font-body)}.gt-sec{margin-bottom:18px}.gt-sec-title{font-size:var(--font-subtitle);font-weight:600;color:var(--text-primary);margin-bottom:10px}.gt-goods{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.gt-goods-card{display:flex;flex-direction:column;gap:6px;text-align:left;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);cursor:pointer}.gt-goods-card:hover{background:var(--bg-hover)}.gt-goods-card.on{border-color:var(--brand-primary);background:var(--bg-selected)}.gt-goods-name{font-size:var(--font-body);font-weight:600;color:var(--text-primary)}.gt-goods-meta{display:flex;align-items:baseline;gap:8px}.gt-goods-meta b{font-size:var(--font-title);color:var(--brand-primary)}.gt-goods-meta em{font-style:normal;font-size:var(--font-caption);color:var(--text-secondary)}.gt-row{display:flex;flex-wrap:wrap;gap:14px}.gt-fld{display:flex;flex-direction:column;gap:6px;font-size:var(--font-body-sm);color:var(--text-secondary)}.gt-fld input{height:36px;width:220px;padding:0 10px;font-size:var(--font-body);border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary)}.gt-mode-fld{flex:1;min-width:320px}.gt-modes{display:flex;gap:10px;flex-wrap:wrap}.gt-mode{flex:1;min-width:240px;display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);cursor:pointer}.gt-mode:hover{background:var(--bg-hover)}.gt-mode.on{border-color:var(--brand-primary);background:var(--bg-selected)}.gt-mode b{font-size:var(--font-body);color:var(--text-primary)}.gt-mode em{font-style:normal;font-size:var(--font-caption);line-height:1.5;color:var(--text-secondary)}.gt-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card)}.gt-summary span{font-size:var(--font-body);color:var(--text-secondary)}.gt-summary b{font-size:var(--font-title-lg);color:var(--brand-primary)}.gt-summary em{font-style:normal;font-size:var(--font-caption);margin-left:6px}.gt-primary{height:38px;padding:0 28px;border:1px solid var(--brand-primary);border-radius:var(--radius-base);background:var(--brand-primary);color:#fff;font-size:var(--font-body);cursor:pointer}.gt-primary:disabled{opacity:.5;cursor:default}.gt-ghost{height:32px;padding:0 16px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-secondary);font-size:var(--font-body-sm);cursor:pointer}.gt-result{border-top:1px solid var(--border-color);padding-top:16px}.gt-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.gt-result-meta{font-size:var(--font-body-sm);color:var(--text-secondary);margin-bottom:12px}.gt-codes{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.gt-code-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card)}.gt-qr{width:200px;height:200px}.gt-qr-loading{display:flex;align-items:center;justify-content:center;font-size:var(--font-caption);color:var(--text-placeholder);border:1px dashed var(--border-color)}.gt-code-no{font-size:var(--font-subtitle);font-weight:600;letter-spacing:.05em;color:var(--text-primary)}.gt-code-sub{font-size:var(--font-caption);color:var(--text-placeholder)}.gt-copy{height:30px;padding:0 14px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-secondary);font-size:var(--font-caption);cursor:pointer}.gt-copy:hover{background:var(--bg-hover)}.gt-tip{margin-top:12px;font-size:var(--font-caption);line-height:1.6;color:var(--text-placeholder)}@media (max-width: 640px){.gt-fld input{width:100%}.gt-row{flex-direction:column}.gt-summary{flex-direction:column;align-items:stretch}.gt-primary{width:100%}}.coupons-page{padding:var(--space-5, 20px) var(--space-4, 16px);max-width:860px;margin:0 auto}.coupons-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4, 16px);margin-bottom:var(--space-5, 20px)}.coupons-title{font-size:var(--font-title-lg, 20px);color:var(--color-ink-1);margin:0 0 4px}.coupons-sub{font-size:var(--font-body-sm, 13px);color:var(--color-ink-3);margin:0}.cp-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:var(--space-4, 16px)}.cp-btn{min-height:44px;padding:0 var(--space-4, 16px);border-radius:var(--radius-lg);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink-1);font-size:var(--font-body, 14px);cursor:pointer;transition:background var(--duration-tap, .15s) var(--ease-standard, ease)}.cp-btn:hover:not(:disabled){background:var(--color-fill)}.cp-btn:disabled{opacity:.55;cursor:not-allowed}.cp-btn--primary{background:var(--color-lake);border-color:var(--color-lake);color:var(--color-ink-on-dark)}.cp-btn--primary:hover:not(:disabled){background:var(--color-lake-deep)}.cp-btn--accent{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent)}.cp-btn--accent:hover:not(:disabled){background:var(--color-accent-wash)}.cp-btn--sm{min-height:36px;font-size:var(--font-body-sm, 13px)}.cp-form{margin-bottom:var(--space-5, 20px)}.cp-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4, 16px)}.cp-field{display:flex;flex-direction:column;gap:6px;font-size:var(--font-caption, 12px);color:var(--color-ink-2)}.cp-field--wide{grid-column:1 / -1}.cp-field input{min-height:44px;padding:0 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-fill);color:var(--color-ink-1);font-size:var(--font-body, 14px)}.cp-field input:focus{outline:2px solid var(--color-lake);outline-offset:1px;background:var(--color-surface)}.cp-form-foot{display:flex;justify-content:flex-end;gap:var(--space-3, 12px);margin-top:var(--space-4, 16px)}.cp-filter{display:flex;gap:var(--space-2, 8px);margin-bottom:var(--space-4, 16px);flex-wrap:wrap}.cp-chip{min-height:44px;padding:0 var(--space-4, 16px);border-radius:999px;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink-2);font-size:var(--font-body-sm, 13px);cursor:pointer}.cp-chip--on{background:var(--color-lake-wash);border-color:var(--color-lake);color:var(--color-lake-deep)}.cp-list{display:flex;flex-direction:column;gap:var(--space-3, 12px)}.cp-item{display:flex;justify-content:space-between;gap:var(--space-4, 16px);flex-wrap:wrap}.cp-item--ended{opacity:.72}.cp-item-main{flex:1 1 260px}.cp-item-top{display:flex;align-items:center;gap:var(--space-2, 8px);margin-bottom:6px}.cp-item-title{font-size:var(--font-title, 16px);color:var(--color-ink-1);margin:0}.cp-item-amount{font-size:var(--font-body, 14px);color:var(--color-ink-2);margin:0 0 4px}.cp-item-amount strong{font-size:var(--font-subtitle, 15px);color:var(--color-lake-deep)}.cp-item-meta{font-size:var(--font-caption, 12px);color:var(--color-ink-3);margin:0;line-height:1.6}.cp-item-actions{display:flex;gap:var(--space-2, 8px);align-items:flex-start;flex-wrap:wrap}.cp-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:var(--font-caption, 12px);line-height:1.7}.cp-badge--active{background:var(--color-success-wash);color:var(--color-success-on-wash)}.cp-badge--paused{background:var(--color-warning-wash);color:var(--color-warning-on-wash)}.cp-badge--ended{background:var(--color-accent-wash);color:var(--color-accent-deep)}.cp-badge--g-unused{background:var(--color-lake-wash);color:var(--color-lake-deep)}.cp-badge--g-locked{background:var(--color-info-wash);color:var(--color-info-on-wash)}.cp-badge--g-used{background:var(--color-success-wash);color:var(--color-success-on-wash)}.cp-badge--g-expired{background:var(--color-fill);color:var(--color-ink-3)}.cp-badge--g-voided{background:var(--color-accent-wash);color:var(--color-accent-deep)}.cp-error{color:var(--color-danger);font-size:var(--font-body-sm, 13px);margin:var(--space-3, 12px) 0 0}.cp-error-card{border-color:var(--color-danger)}.cp-error-card p{color:var(--color-danger);font-size:var(--font-body-sm, 13px);margin:0 0 var(--space-3, 12px)}.cp-empty{text-align:center;color:var(--color-ink-3);font-size:var(--font-body-sm, 13px)}.cp-empty p{margin:var(--space-4, 16px) 0}.cp-skeleton{height:96px;background:linear-gradient(90deg,var(--color-fill) 25%,var(--color-surface) 50%,var(--color-fill) 75%);background-size:200% 100%;animation:cp-shimmer 1.4s infinite}@keyframes cp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cp-pager{display:flex;align-items:center;justify-content:center;gap:var(--space-3, 12px);margin-top:var(--space-4, 16px)}.cp-pager-info{font-size:var(--font-caption, 12px);color:var(--color-ink-3)}.cp-drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim, rgba(43,38,32,.45));z-index:60;display:flex;justify-content:flex-end}.cp-drawer{width:min(480px,92vw);height:100%;background:var(--color-paper);overflow-y:auto;padding:var(--space-4, 16px);display:flex;flex-direction:column;gap:var(--space-3, 12px)}.cp-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3, 12px)}.cp-drawer-head h2{font-size:var(--font-title, 16px);color:var(--color-ink-1);margin:0}.cp-grant-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2, 8px)}.cp-grant{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3, 12px);display:flex;flex-direction:column;gap:6px}.cp-grant-main{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2, 8px)}.cp-grant-code{font-family:var(--font-mono, monospace);font-size:var(--font-body-sm, 13px);color:var(--color-ink-1)}.cp-grant-meta{font-size:var(--font-caption, 12px);color:var(--color-ink-3);line-height:1.6}.cp-grant .cp-btn--sm{align-self:flex-end}@media (max-width: 640px){.cp-item{flex-direction:column}.cp-item-actions{width:100%}.cp-item-actions .cp-btn{flex:1}}.hkt-page{max-width:720px;margin:0 auto;padding:12px 14px 40px}.hkt-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.hkt-head h1{font-size:var(--font-title-lg);margin:0}.hkt-refresh,.hkt-tabbtn{padding:6px 14px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);margin-left:8px;font-size:var(--font-body)}.hkt-note{background:var(--color-warning-wash);border:1px solid var(--color-warning);color:var(--color-warning);border-radius:8px;padding:8px 12px;font-size:var(--font-body-sm);margin-bottom:10px}.hkt-error{background:var(--color-danger-wash);border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;padding:8px 12px;font-size:var(--font-body);margin-bottom:10px}.hkt-msg{background:var(--color-success-wash);border:1px solid var(--color-success);color:var(--color-success);border-radius:8px;padding:8px 12px;font-size:var(--font-body);margin-bottom:10px}.hkt-summary{background:var(--color-lake-wash);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 14px;font-size:var(--font-subtitle);margin-bottom:12px}.hkt-summary em{font-style:normal;font-weight:600;color:var(--color-lake);font-size:var(--font-title)}.hkt-sec{margin-bottom:18px}.hkt-sec h2{font-size:var(--font-subtitle);color:var(--color-ink-2);margin:0 0 8px}.hkt-detail-h{margin-top:14px}.hkt-empty{color:var(--color-ink-3);font-size:var(--font-body);padding:14px 0;text-align:center}.hkt-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 12px;margin-bottom:8px}.hkt-card-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hkt-room{font-size:var(--font-title);font-weight:600}.hkt-type{color:var(--color-ink-2);font-size:var(--font-body-sm)}.hkt-src{color:var(--color-ink-3);font-size:var(--font-caption)}.hkt-badge{font-size:var(--font-caption);padding:2px 8px;border-radius:999px}.hkt-badge-pending{background:var(--color-warning-wash);color:var(--color-warning)}.hkt-badge-claimed{background:var(--color-lake-wash);color:var(--color-lake)}.hkt-badge-cleaning{background:var(--color-success-wash);color:var(--color-success)}.hkt-badge-to_check{background:var(--color-lake-wash);color:var(--color-lake)}.hkt-badge-clean{background:var(--color-success-wash);color:var(--color-success)}.hkt-badge-rejected{background:var(--color-danger-wash);color:var(--color-danger)}.hkt-badge-cancelled{background:var(--color-surface);color:var(--color-ink-3)}.hkt-reject{font-size:var(--font-caption);color:var(--color-danger)}.hkt-card-sub{display:flex;gap:10px;flex-wrap:wrap;color:var(--color-ink-2);font-size:var(--font-caption);margin-top:6px}.hkt-price{color:var(--color-success);font-weight:600}.hkt-price-exp{color:var(--color-warning)}.hkt-remark{color:var(--color-danger)}.hkt-card-ops{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;align-items:center}.hkt-op{padding:8px 16px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body)}.hkt-op.primary{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.hkt-op.danger{color:var(--color-danger);border-color:var(--color-danger)}.hkt-op:disabled{opacity:.5}.hkt-wait{color:var(--color-lake);font-size:var(--font-body-sm)}.hkt-assign{padding:8px;border-radius:8px;border:1px solid var(--color-border);font-size:var(--font-body)}.hkt-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.hkt-tab{padding:6px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body-sm)}.hkt-tab.on{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.hkt-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.hkt-form select,.hkt-form input{padding:8px 10px;border-radius:8px;border:1px solid var(--color-border);font-size:var(--font-body);flex:1;min-width:120px}.hkt-form-sep{color:var(--color-ink-3)}.hkt-form-hint{color:var(--color-ink-3);font-size:var(--font-caption);margin-top:6px}.hkt-payrow{display:flex;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 14px;margin-bottom:8px;font-size:var(--font-subtitle)}.hkt-payname{font-weight:600}.hkt-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:60}.hkt-sheet{background:var(--color-surface);border-radius:14px 14px 0 0;padding:16px;width:100%;max-width:720px;max-height:80vh;overflow-y:auto}.hkt-sheet h3{margin:0 0 10px;font-size:var(--font-title)}.hkt-sheet-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.hkt-sheet-actions button{padding:10px 18px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-subtitle)}.hkt-sheet-actions button.primary{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.hkt-supply-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--color-border-strong)}.hkt-supply-name{flex:1;font-size:var(--font-subtitle)}.hkt-supply-name small{color:var(--color-ink-3)}.hkt-supply-row input{width:70px;padding:8px;border-radius:8px;border:1px solid var(--color-border);font-size:var(--font-subtitle);text-align:center}.hkt-supply-unit{color:var(--color-ink-3);font-size:var(--font-body-sm);width:28px}.sup-page{max-width:720px;margin:0 auto;padding:12px 14px 40px}.sup-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sup-head h1{font-size:var(--font-title-lg);margin:0}.sup-refresh{padding:6px 14px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}.sup-low{background:var(--color-warning-wash);border:1px solid var(--color-warning);color:var(--color-warning);border-radius:8px;padding:8px 12px;font-size:var(--font-body-sm);margin-bottom:10px}.sup-error{background:var(--color-danger-wash);border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;padding:8px 12px;font-size:var(--font-body);margin-bottom:10px}.sup-msg{background:var(--color-success-wash);border:1px solid var(--color-success);color:var(--color-success);border-radius:8px;padding:8px 12px;font-size:var(--font-body);margin-bottom:10px}.sup-tabs{display:flex;gap:6px;margin-bottom:12px}.sup-tabs button{padding:6px 14px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body-sm)}.sup-tabs button.on{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.sup-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 12px;margin-bottom:8px}.sup-card.off{opacity:.55}.sup-card-main{display:flex;align-items:center;gap:8px}.sup-name{font-size:var(--font-title);font-weight:600}.sup-cat{font-size:var(--font-caption);padding:2px 8px;border-radius:999px;background:var(--color-gold-wash);color:var(--color-ink-2)}.sup-cat-water{background:var(--color-lake-wash);color:var(--color-lake)}.sup-cat-gift{background:var(--color-accent-wash);color:var(--color-accent)}.sup-lowbadge{font-size:var(--font-caption);padding:2px 8px;border-radius:999px;background:var(--color-warning-wash);color:var(--color-warning)}.sup-off{font-size:var(--font-caption);color:var(--color-ink-3)}.sup-card-sub{display:flex;gap:12px;flex-wrap:wrap;color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:6px}.sup-card-sub em{font-style:normal;font-weight:600;color:var(--color-lake)}.sup-neg{color:var(--color-danger)!important}.sup-card-ops{display:flex;gap:8px;margin-top:8px}.sup-card-ops button{padding:7px 14px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body-sm)}.sup-empty{color:var(--color-ink-3);text-align:center;padding:20px 0;font-size:var(--font-body)}.sup-add{width:100%;padding:12px;border-radius:var(--radius-lg);border:1px dashed var(--color-border);background:var(--color-gold-wash);font-size:var(--font-subtitle);margin-top:4px}.sup-hint{color:var(--color-ink-3);font-size:var(--font-caption);margin-top:10px}.sup-sec{margin-bottom:14px}.sup-rt{width:100%;padding:10px;border-radius:8px;border:1px solid var(--color-border);font-size:var(--font-subtitle);margin:8px 0}.sup-amrow{display:flex;align-items:center;gap:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 12px;margin-bottom:8px}.sup-amname{flex:1;font-size:var(--font-subtitle)}.sup-amrow input{width:64px;padding:8px;border-radius:8px;border:1px solid var(--color-border);text-align:center}.sup-amrow select{padding:8px;border-radius:8px;border:1px solid var(--color-border)}.sup-amdel{border:none;background:none;color:var(--color-danger)}.sup-amsave{padding:8px 16px;border-radius:8px;border:none;background:var(--color-lake);color:#fff}.sup-logrow{display:flex;gap:8px;align-items:baseline;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:8px 12px;margin-bottom:6px;font-size:var(--font-body-sm);flex-wrap:wrap}.sup-logqty{font-weight:600;width:42px}.sup-logqty.in{color:var(--color-success)}.sup-logqty.out{color:var(--color-danger)}.sup-logname{font-weight:600}.sup-logkind{color:var(--color-ink-2)}.sup-logtime{color:var(--color-ink-3);margin-left:auto}.sup-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:60}.sup-sheet{background:var(--color-surface);border-radius:14px 14px 0 0;padding:16px;width:100%;max-width:720px;max-height:85vh;overflow-y:auto}.sup-sheet h3{margin:0 0 10px;font-size:var(--font-title)}.sup-field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;flex:1}.sup-field span{font-size:var(--font-body-sm);color:var(--color-ink-2)}.sup-field input,.sup-field select{padding:9px 10px;border-radius:8px;border:1px solid var(--color-border);font-size:var(--font-subtitle)}.sup-row2{display:flex;gap:10px}.sup-sheet-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.sup-sheet-actions button{padding:10px 18px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-subtitle)}.sup-sheet-actions button.primary{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.db-page{min-height:100vh;background:var(--color-warning-wash);padding:14px;box-sizing:border-box}.db-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.db-title{font-size:var(--font-title-lg);font-weight:600;color:var(--color-ink-1)}.db-refresh{min-height:38px;padding:0 14px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--font-body-sm);font-family:inherit;cursor:pointer;color:var(--color-ink-1)}.db-hint{padding:18px;text-align:center;color:var(--color-ink-2);font-size:var(--font-body-sm)}.db-err{background:var(--color-danger-wash);border:1px solid var(--color-danger);color:var(--color-accent);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--font-body-sm);margin-bottom:12px}.db-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:14px;margin-bottom:12px;border:1px solid var(--color-border-strong)}.db-card-title{font-size:var(--font-body-sm);font-weight:600;color:var(--color-ink-2);margin-bottom:10px}.db-hero{text-align:center;padding:8px 0 14px}.db-hero-n{font-size:var(--font-num-48);font-weight:600;color:var(--color-accent);line-height:1.1}.db-hero-l{font-size:var(--font-caption);color:var(--color-ink-2);margin-top:2px}.db-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.db-cell{text-align:center;background:var(--color-warning-wash);border-radius:var(--radius-lg);padding:10px 4px}.db-cell b{display:block;font-size:var(--font-title);color:var(--color-ink-1)}.db-cell span{font-size:var(--font-minor);color:var(--color-ink-2)}.db-close-state{margin-top:10px;font-size:var(--font-caption);border-radius:8px;padding:8px 10px}.db-close-state.ok{background:var(--color-surface);color:var(--color-success)}.db-close-state.warn{background:var(--color-gold-wash);color:var(--color-warning)}.db-arr{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px dashed var(--color-border-strong)}.db-arr-main b{font-size:var(--font-subtitle);color:var(--color-ink-1);margin-right:8px}.db-arr-main span{font-size:var(--font-caption);color:var(--color-ink-2)}.db-arr-st{font-size:var(--font-caption);font-weight:600;padding:3px 8px;border-radius:6px;background:var(--color-fill);color:var(--color-ink-2)}.db-arr-st.checked_in{background:var(--color-surface);color:var(--color-success)}.db-go{width:100%;margin-top:10px;min-height:46px;border-radius:var(--radius-lg);border:none;background:var(--color-accent);color:#fff;font-size:var(--font-body);font-weight:600;font-family:inherit;cursor:pointer}.db-tm .db-tm-line{font-size:var(--font-body);color:var(--color-ink-1)}.gs-page{padding:16px;max-width:720px;margin:0 auto}.gs-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.gs-head h2{margin:0;font-size:var(--font-title-lg)}.gs-add{padding:7px 14px;border:1px solid var(--color-lake);border-radius:8px;background:var(--color-surface);color:var(--color-lake);font-size:var(--font-body);cursor:pointer}.gs-searchrow{display:flex;gap:8px;margin-bottom:10px}.gs-search{flex:1;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);outline:none}.gs-search:focus{border-color:var(--color-lake)}.gs-go{padding:0 16px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;font-size:var(--font-body);cursor:pointer}.gs-tabs{display:flex;gap:8px;margin-bottom:12px}.gs-tab{flex:1;padding:8px 4px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.gs-tab.active{background:var(--color-lake);border-color:var(--color-lake);color:#fff}.gs-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.gs-error{background:var(--color-danger-wash);color:var(--color-danger)}.gs-hint,.gs-empty{color:var(--color-ink-2);padding:22px;text-align:center;font-size:var(--font-body)}.gs-form{display:flex;flex-wrap:wrap;gap:8px;background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.gs-form input,.gs-form select{flex:1 1 130px;min-width:110px;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body);outline:none}.gs-submit{flex:1 1 100%;padding:10px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;font-size:var(--font-subtitle);cursor:pointer}.gs-submit:disabled{opacity:.6}.gs-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:10px;box-shadow:var(--shadow-card);cursor:pointer}.gs-card-head{display:flex;justify-content:space-between;align-items:center}.gs-name{font-weight:600;font-size:var(--font-title)}.gs-tag{font-size:var(--font-minor);padding:2px 8px;border-radius:var(--radius-lg);color:#fff}.gs-tag.normal{background:var(--color-border)}.gs-tag.vip{background:var(--color-warning)}.gs-tag.black{background:var(--color-danger)}.gs-line{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:6px}.gs-id{color:var(--color-ink-2);font-size:var(--font-caption)}.gs-stat{color:var(--color-ink-2);font-size:var(--font-caption);margin-top:4px}.gs-stat b{color:var(--color-ink-1);font-size:var(--font-body)}.gs-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:50}.gs-sheet{background:var(--color-surface);width:100%;max-width:720px;border-radius:14px 14px 0 0;padding:14px 16px 18px;max-height:80vh;overflow-y:auto}.gs-sheet-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.gs-sheet-sub{color:var(--color-ink-2);font-size:var(--font-caption)}.gs-info{background:var(--color-surface);border-radius:8px;padding:10px 12px;font-size:var(--font-body-sm);color:var(--color-ink-2);line-height:1.9;margin-bottom:12px}.gs-sec-t{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);margin-bottom:6px}.gs-stay{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--color-border);font-size:var(--font-body-sm)}.gs-stay-room{font-weight:600}.gs-stay-date{color:var(--color-ink-2);flex:1}.gs-stay-amt{font-weight:600}.gs-stay-st{font-size:var(--font-minor);background:var(--color-surface);color:var(--color-ink-2);border-radius:4px;padding:1px 6px}.gs-sheet-ops{display:flex;gap:8px;margin-top:14px}.gs-cancel{flex:1;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body);cursor:pointer}.gs-op{flex:1;padding:10px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;font-size:var(--font-body);cursor:pointer}.gs-op.danger{background:var(--color-danger)}.gs-op:disabled{opacity:.6}.gs-last{font-size:var(--font-caption);color:var(--color-ink-2);margin-top:4px}.gs-sleep-badge{margin-left:6px;font-size:var(--font-minor);font-weight:600;color:var(--color-warning);background:var(--color-gold-wash);border-radius:6px;padding:2px 6px}.rc-page{padding:16px 20px 32px}.rc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.rc-head h2{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary)}.rc-head-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rc-head-tools select,.rc-today{height:36px;padding:0 10px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body)}.rc-today{cursor:pointer}.rc-month{display:flex;align-items:center;gap:4px}.rc-month span{min-width:108px;text-align:center;font-size:var(--font-body);font-weight:600;color:var(--text-primary)}.rc-month button{width:36px;height:36px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-title);cursor:pointer}.rc-month button:hover{background:var(--bg-hover)}.rc-legend{font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:10px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rc-lg-sep{color:var(--border-color)}.rc-lg-dim{color:var(--text-placeholder)}.rc-lg-item b{color:var(--text-primary);font-weight:600}.rc-lg-item em{font-style:normal;color:var(--text-placeholder)}.rc-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:8px 12px;border-radius:var(--radius-base);font-size:var(--font-body-sm)}.rc-error{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.rc-error button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:var(--font-caption)}.rc-hint{padding:28px 0;text-align:center;color:var(--text-placeholder);font-size:var(--font-body)}.rc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.rc-wk{text-align:center;font-size:var(--font-caption);color:var(--text-secondary);padding:4px 0;font-weight:600}.rc-wk.wk-end{color:var(--color-accent)}.rc-cell{position:relative;min-height:62px;padding:6px 4px 4px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:1px;transition:background var(--duration-tap) var(--ease-standard),border-color var(--duration-tap) var(--ease-standard)}.rc-cell:hover:not(:disabled){background:var(--bg-hover)}.rc-blank{border:none;background:transparent;cursor:default;min-height:62px}.rc-day{font-size:var(--font-body-sm);color:var(--text-primary);font-weight:600}.rc-price{font-size:var(--font-body);color:var(--text-primary);font-variant-numeric:tabular-nums}.rc-tag{font-size:var(--font-minor);color:var(--text-placeholder)}.rc-head-tools select.rc-ch{border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.rc-cell.rc-src-ch{background:var(--bg-selected);border-color:var(--brand-primary)}.rc-cell.rc-src-ch .rc-price{color:var(--brand-primary);font-weight:600}.rc-cell.rc-src-ch .rc-tag{color:var(--brand-primary)}.rc-cell.rc-src-custom{background:var(--color-accent-wash);border-color:var(--color-accent)}.rc-cell.rc-src-custom .rc-price{color:var(--color-accent);font-weight:600}.rc-cell.rc-src-custom .rc-tag{color:var(--color-accent)}.rc-cell.rc-src-weekend .rc-price{color:var(--brand-cyan)}.rc-cell.rc-src-base .rc-price{color:var(--text-secondary)}.rc-is-today{outline:2px solid var(--color-accent);outline-offset:-2px}.rc-sel{border-color:var(--brand-primary);box-shadow:inset 0 0 0 1px var(--brand-primary)}.rc-past{opacity:.45;cursor:not-allowed;background:var(--bg-primary)}.rc-past .rc-price{color:var(--text-disabled)}.rc-panel{margin-top:16px;padding:14px 16px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-card)}.rc-panel-hint{font-size:var(--font-body-sm);color:var(--text-placeholder)}.rc-daybox-title{font-size:var(--font-body);font-weight:600;color:var(--text-primary);margin-bottom:8px}.rc-daybox-sub{margin-left:8px;font-size:var(--font-caption);font-weight:400;color:var(--text-secondary)}.rc-daybox-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rc-daybox-row input{height:36px;width:180px;padding:0 10px;font-size:var(--font-body);border:1px solid var(--border-color);border-radius:var(--radius-base);color:var(--text-primary)}.rc-daybox-row button,.rc-batch-row button{height:36px;padding:0 14px;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-body);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary)}.rc-daybox-row button.primary,.rc-batch-row button.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.rc-daybox-row button:disabled,.rc-batch-row button:disabled{background:var(--btn-disabled);border-color:var(--btn-disabled);cursor:not-allowed;color:#fff}.rc-reset{color:var(--text-secondary)!important}.rc-batch-title{font-size:var(--font-body);font-weight:600;color:var(--text-primary);margin-bottom:8px}.rc-batch-n{margin-left:8px;font-size:var(--font-caption);font-weight:400;color:var(--text-secondary)}.rc-batch-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rc-batch-row select,.rc-batch-row input{height:36px;padding:0 10px;font-size:var(--font-body);border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary)}.rc-reason{min-width:200px;flex:1}.rc-batch-note{margin-top:8px;font-size:var(--font-caption);color:var(--text-placeholder)}.rc-preview{margin-top:10px;border-top:1px dashed var(--border-color);padding-top:8px}.rc-preview-row{display:flex;justify-content:space-between;font-size:var(--font-caption);color:var(--text-secondary);line-height:22px}.rc-preview-row b{color:var(--brand-primary)}@media (max-width: 720px){.rc-page{padding:12px}.rc-cell{min-height:54px}.rc-price{font-size:var(--font-caption)}.rc-tag{display:none}}.rc-dayview{display:block}.rc-weekwrap,.rc-gridwrap{display:none}.rc-month{display:none!important}.rc-dayview-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.rc-daynav{width:44px;height:44px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-ink-1);font-size:var(--font-title-lg);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.rc-dayview-date{flex:1;display:flex;align-items:baseline;justify-content:center;gap:8px;font-size:var(--font-title);font-weight:600;color:var(--color-ink-1)}.rc-dayview-wk{font-size:var(--font-body-sm);font-weight:400;color:var(--color-ink-3)}.rc-today-tag{font-size:var(--font-caption);font-weight:600;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:999px;padding:1px 8px}.rc-dayview-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-hair)}.rc-dayview-price{font-size:var(--font-num-48);font-weight:600;color:var(--color-ink-1);font-variant-numeric:tabular-nums;line-height:1.1}.rc-dayview-src{font-size:var(--font-body-sm);color:var(--color-ink-3)}.rc-dayview-hint{font-size:var(--font-minor);color:var(--color-ink-3);margin-top:6px}.rc-weeknav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.rc-weeklabel{flex:1;text-align:center;font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.rc-drag-hint{margin-top:8px;font-size:var(--font-minor);color:var(--color-ink-3)}@media (min-width: 768px){.rc-dayview{display:none}.rc-weekwrap{display:block}.rc-gridwrap{display:none}}@media (min-width: 1440px){.rc-weekwrap{display:none}.rc-gridwrap{display:block}.rc-month{display:flex!important}}.rcal-page{padding:16px 20px 32px}.rcal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.rcal-head h2{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary)}.rcal-tools{display:flex;gap:8px;align-items:center}.rcal-tools select,.rcal-refresh{height:36px;padding:0 10px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body);cursor:pointer}.rcal-refresh:hover{background:var(--bg-hover)}.rcal-legend{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:var(--font-caption);margin-bottom:10px}.rcal-lg{padding:2px 8px;border-radius:4px;border:1px solid var(--border-color)}.rcal-lg.op{background:var(--state-bg-done);color:var(--state-text-done);border-color:var(--state-text-done)}.rcal-lg.tg{background:var(--state-bg-pending);color:var(--state-text-pending);border-color:var(--state-text-pending)}.rcal-lg.fl{background:var(--state-bg-danger);color:var(--state-text-danger);border-color:var(--state-text-danger)}.rcal-lg.mt{background:var(--state-bg-off);color:var(--state-text-off);border-color:var(--color-border-strong)}.rcal-lg-dim{color:var(--text-placeholder)}.rcal-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:8px 12px;border-radius:var(--radius-base);font-size:var(--font-body-sm)}.rcal-error{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.rcal-error button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:var(--font-caption)}.rcal-hint{padding:28px 0;text-align:center;color:var(--text-placeholder);font-size:var(--font-body)}.rcal-scroll{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card)}.rcal-table{border-collapse:separate;border-spacing:0;font-size:var(--font-caption)}.rcal-table th,.rcal-table td{padding:0}.rcal-th-rt,.rcal-td-rt{position:sticky;left:0;z-index:2;background:var(--bg-primary);min-width:128px;text-align:left;padding:8px 10px;border-right:1px solid var(--border-color)}.rcal-th-rt{font-size:var(--font-caption);font-weight:600;color:var(--text-secondary)}.rcal-td-rt{border-bottom:1px solid var(--border-color)}.rcal-rtname{display:block;font-size:var(--font-body-sm);font-weight:600;color:var(--text-primary)}.rcal-rtmeta{display:block;font-size:var(--font-minor);color:var(--text-placeholder)}.rcal-th{min-width:40px;padding:4px 2px;text-align:center;border-bottom:1px solid var(--border-color)}.rcal-th-d{display:block;font-size:var(--font-caption);font-weight:600;color:var(--text-primary)}.rcal-th-w{display:block;font-size:var(--font-minor);color:var(--text-placeholder)}.rcal-th.wk .rcal-th-d{color:var(--color-accent)}.rcal-th.td{background:var(--bg-selected)}.rcal-td{text-align:center;border-bottom:1px solid var(--border-color);min-width:40px;padding:3px 2px}.rcal-td.td{background:var(--bg-selected)}.rcal-cell{width:34px;height:34px;line-height:32px;text-align:center;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer;font-size:var(--font-body-sm);font-variant-numeric:tabular-nums;color:var(--text-primary);padding:0}.rcal-cell:hover{box-shadow:0 0 0 2px var(--color-lake)}.rcal-cell.op{background:var(--bg-card)}.rcal-cell.tg{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text);font-weight:600}.rcal-cell.fl{background:var(--bg-selected);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.rcal-cell.mt{background:var(--bg-primary);color:var(--text-disabled);text-decoration:line-through}.rcal-sum .rcal-td-rt{font-size:var(--font-caption);font-weight:600;color:var(--text-secondary);background:var(--bg-hover)}.rcal-sumn{display:block;padding:6px 0;font-size:var(--font-caption);color:var(--text-secondary);font-variant-numeric:tabular-nums}.rcal-sumn.zero{color:var(--brand-primary);font-weight:600}.rcal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:60}.rcal-sheet{width:min(520px,100%);background:var(--bg-card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:18px 20px 22px;box-shadow:var(--shadow-card)}.rcal-sheet h3{margin:0 0 4px;font-size:var(--font-title);font-weight:600;color:var(--text-primary)}.rcal-sheet-sub{font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:14px}.rcal-field{display:block;margin-bottom:12px}.rcal-field>span{display:block;font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:4px}.rcal-field input{height:36px;width:160px;padding:0 10px;font-size:var(--font-body);border:1px solid var(--border-color);border-radius:var(--radius-base);color:var(--text-primary)}.rcal-seg{display:inline-flex;border:1px solid var(--border-color);border-radius:var(--radius-base);overflow:hidden}.rcal-seg button{height:36px;padding:0 14px;font-size:var(--font-body);border:none;background:var(--bg-card);color:var(--text-primary);cursor:pointer;border-right:1px solid var(--border-color)}.rcal-seg button:last-child{border-right:none}.rcal-seg button.on{background:var(--brand-primary);color:#fff}.rcal-note{font-size:var(--font-caption);color:var(--text-placeholder);line-height:1.6;margin-bottom:12px}.rcal-sheet-err{font-size:var(--font-body-sm);color:var(--color-danger);margin-bottom:10px}.rcal-sheet-actions{display:flex;gap:10px;justify-content:flex-end}.rcal-sheet-actions button{height:36px;padding:0 16px;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-body);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary)}.rcal-sheet-actions button.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.rcal-sheet-actions button:disabled{background:var(--btn-disabled);border-color:var(--btn-disabled);color:#fff;cursor:not-allowed}.rcal-cell{position:relative}.rcal-flag{position:absolute;top:2px;right:2px;width:0;height:0;border-style:solid;border-width:0 5px 7px 5px;border-color:transparent transparent var(--brand-primary) transparent}.rcal-subtitle{font-size:var(--font-caption);font-weight:600;color:var(--brand-primary);margin:12px 0 4px;padding-left:2px}.rcal-check{display:flex;align-items:flex-start;gap:8px;margin:6px 0;font-size:var(--font-body-sm);color:var(--text-primary);cursor:pointer;line-height:1.5}.rcal-check input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand-primary);flex:none}.rcal-row2{display:flex;gap:8px}.rcal-row2 .rcal-field{flex:1}.rcal-note b{color:var(--brand-primary)}.rcal-clearrule{border:1px solid var(--border-light);background:var(--color-surface);border-radius:6px;padding:7px 12px;font-size:var(--font-body-sm);color:var(--text-secondary);cursor:pointer}.pd-page{padding:16px 20px 32px}.pd-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.pd-head h2{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary)}.pd-add{height:36px;padding:0 14px;border:1px solid var(--brand-primary);border-radius:var(--radius-base);background:var(--brand-primary);color:#fff;font-size:var(--font-body);cursor:pointer}.pd-note{font-size:var(--font-caption);color:var(--text-secondary);line-height:1.7;margin-bottom:12px;padding:8px 12px;background:var(--bg-primary);border-radius:var(--radius-base)}.pd-note b{color:var(--brand-primary)}.pd-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:8px 12px;border-radius:var(--radius-base);font-size:var(--font-body-sm)}.pd-error{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.pd-error button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:var(--font-caption)}.pd-hint{padding:28px 0;text-align:center;color:var(--text-placeholder);font-size:var(--font-body)}.pd-table{width:100%;border-collapse:collapse;font-size:var(--font-body-sm);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.pd-table th{text-align:left;padding:10px 12px;font-size:var(--font-caption);font-weight:600;color:var(--text-secondary);background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.pd-table td{padding:10px 12px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.pd-table tr.pd-off td{color:var(--text-disabled)}.pd-name{font-weight:600}.pd-num{font-variant-numeric:tabular-nums;text-align:right}.pd-ops{display:flex;gap:6px}.pd-ops button{height:30px;padding:0 10px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card);color:var(--text-primary);font-size:var(--font-caption);cursor:pointer}.pd-ops button.danger{color:var(--color-danger);border-color:var(--color-danger)}.pd-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:60}.pd-sheet{width:min(520px,100%);background:var(--bg-card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:18px 20px 22px;box-shadow:var(--shadow-card)}.pd-sheet h3{margin:0 0 14px;font-size:var(--font-title);font-weight:600;color:var(--text-primary)}.pd-field{display:block;margin-bottom:12px}.pd-field>span{display:block;font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:4px}.pd-field input,.pd-field select{height:36px;width:100%;padding:0 10px;font-size:var(--font-body);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card)}.pd-row2{display:flex;gap:12px}.pd-row2 .pd-field{flex:1}.pd-check{display:flex;align-items:center;gap:8px;font-size:var(--font-body-sm);color:var(--text-primary);margin-bottom:14px}.pd-check input{width:16px;height:16px;accent-color:var(--brand-primary)}.pd-sheet-err{font-size:var(--font-body-sm);color:var(--color-danger);margin-bottom:10px}.pd-sheet-actions{display:flex;gap:10px;justify-content:flex-end}.pd-sheet-actions button{height:36px;padding:0 16px;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-body);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary)}.pd-sheet-actions button.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.pd-sheet-actions button:disabled{background:var(--btn-disabled);border-color:var(--btn-disabled);color:#fff;cursor:not-allowed}.pk-page{padding:16px 20px 32px}.pk-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.pk-head h2{margin:0;font-size:var(--font-title-lg);font-weight:600;color:var(--text-primary)}.pk-add{height:36px;padding:0 14px;border:1px solid var(--brand-primary);border-radius:var(--radius-base);background:var(--brand-primary);color:#fff;font-size:var(--font-body);cursor:pointer}.pk-note{font-size:var(--font-caption);color:var(--text-secondary);line-height:1.7;margin-bottom:12px;padding:8px 12px;background:var(--bg-primary);border-radius:var(--radius-base)}.pk-note b{color:var(--brand-primary)}.pk-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:8px 12px;border-radius:var(--radius-base);font-size:var(--font-body-sm)}.pk-error{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.pk-error button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:var(--font-caption)}.pk-hint,.pk-empty{padding:20px 0;text-align:center;color:var(--text-placeholder);font-size:var(--font-body)}.pk-empty{padding:12px 0;font-size:var(--font-body-sm)}.pk-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:12px 14px;margin-bottom:10px;box-shadow:var(--shadow-card)}.pk-card.pk-off{opacity:.6}.pk-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pk-name{font-size:var(--font-subtitle);font-weight:600;color:var(--text-primary)}.pk-badge{font-size:var(--font-caption);padding:2px 8px;border-radius:var(--radius-lg)}.pk-badge.on{background:var(--bg-selected);color:var(--brand-primary)}.pk-badge.off{background:var(--bg-primary);color:var(--text-placeholder)}.pk-meta{font-size:var(--font-caption);color:var(--text-secondary);margin:6px 0 10px}.pk-actions{display:flex;gap:8px}.pk-actions button{flex:1;height:34px;border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-body-sm);cursor:pointer}.pk-actions .pk-items{color:var(--brand-primary);border-color:var(--brand-primary);font-weight:600}.pk-actions button.danger{color:var(--color-danger)}.pk-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);display:flex;align-items:flex-end;justify-content:center;z-index:60}.pk-sheet{width:min(560px,100%);max-height:86vh;overflow-y:auto;background:var(--bg-card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:18px 20px 22px;box-shadow:var(--shadow-card)}.pk-sheet h3{margin:0 0 14px;font-size:var(--font-title);font-weight:600;color:var(--text-primary)}.pk-field{display:block;margin-bottom:12px}.pk-field>span{display:block;font-size:var(--font-caption);color:var(--text-secondary);margin-bottom:4px}.pk-field input,.pk-field select{height:36px;width:100%;padding:0 10px;font-size:var(--font-body);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card)}.pk-row2{display:flex;gap:12px}.pk-row2 .pk-field{flex:1}.pk-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-color);font-size:var(--font-body-sm)}.pk-item-name{font-weight:600;color:var(--text-primary);min-width:90px}.pk-item-meta{flex:1;color:var(--text-secondary);font-size:var(--font-caption)}.pk-item-qty,.pk-qty{width:60px;height:32px;padding:0 6px;font-size:var(--font-body-sm);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary)}.pk-item button{height:30px;padding:0 10px;border:1px solid var(--brand-primary);border-radius:6px;background:var(--bg-card);color:var(--brand-primary);font-size:var(--font-caption);cursor:pointer}.pk-sum{font-size:var(--font-caption);color:var(--text-secondary);padding:8px 0;text-align:right}.pk-add-row{display:flex;gap:8px;align-items:center;margin-top:12px}.pk-add-row select{flex:1;height:36px;padding:0 10px;font-size:var(--font-body-sm);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-base);background:var(--bg-card)}.pk-add-row .primary{height:36px;padding:0 14px;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-body-sm);background:var(--brand-primary);border:1px solid var(--brand-primary);color:#fff}.pk-sheet-err{font-size:var(--font-body-sm);color:var(--color-danger);margin:10px 0}.pk-sheet-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}.pk-sheet-actions button{height:36px;padding:0 16px;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-body);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary)}.pk-sheet-actions button.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.pk-sheet-actions button:disabled{background:var(--btn-disabled);border-color:var(--btn-disabled);color:#fff;cursor:not-allowed}.rp-page{padding:16px;max-width:720px;margin:0 auto}.rp-head{margin-bottom:10px}.rp-head h2{margin:0;font-size:var(--font-title-lg)}.rp-hint{color:var(--color-ink-2);padding:22px;text-align:center;font-size:var(--font-body)}.rp-hint-sub{margin-top:8px;font-size:var(--font-body-sm);line-height:1.7;color:var(--color-ink-2);text-align:left}.rp-tabs{display:flex;gap:8px;margin-bottom:10px}.rp-tab{flex:1;padding:8px 4px;min-height:44px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.rp-tab.active{background:var(--color-lake);border-color:var(--color-lake);color:var(--color-ink-on-dark)}.rp-custom{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:var(--font-body-sm);color:var(--color-ink-2)}.rp-custom input{flex:1;padding:7px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body-sm);outline:none}.rp-custom button{padding:7px 14px;min-height:40px;border:none;border-radius:6px;background:var(--color-lake);color:var(--color-ink-on-dark);font-size:var(--font-body-sm);cursor:pointer}.rp-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.rp-error{background:var(--color-danger-wash);color:var(--color-danger)}.rp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}.rp-cell{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:4px}.rp-k{font-size:var(--font-caption);color:var(--color-ink-2)}.rp-v{font-size:var(--font-title-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-1)}.rp-s{font-size:var(--font-minor);color:var(--color-ink-3)}.rp-sub{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);margin:12px 0 6px}.rp-rows{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.rp-row{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--color-border);font-size:var(--font-body);color:var(--color-ink-2)}.rp-row:last-child{border-bottom:none}.rp-row b{color:var(--color-ink-1);font-variant-numeric:tabular-nums}.rp-chart-card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:12px;margin-bottom:14px}.rp-chart-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.rp-chart-title{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1)}.rp-chart-range{font-size:var(--font-caption);color:var(--color-ink-3);font-variant-numeric:tabular-nums}.rp-chart{width:100%;height:auto;display:block}.rp-chart-grid{stroke:var(--color-border);stroke-width:1}.rp-chart-ylabel,.rp-chart-xlabel{font-size:var(--font-minor);fill:var(--color-ink-3)}.rp-chart-area{fill:var(--color-lake-wash)}.rp-chart-line{fill:none;stroke:var(--color-lake);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rp-chart-dot{fill:var(--color-lake)}.rp-table{width:100%;border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;font-size:var(--font-body-sm);box-shadow:var(--shadow-card)}.rp-table th{background:var(--color-surface);color:var(--color-ink-2);font-weight:600;padding:9px 10px;text-align:left}.rp-table td{padding:9px 10px;border-top:1px solid var(--color-border);color:var(--color-ink-1)}.pl-page{padding:16px;max-width:720px;margin:0 auto}.pl-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.pl-head h2{margin:0;font-size:var(--font-title-lg)}.pl-add{padding:7px 14px;border:1px solid var(--brand-primary);border-radius:8px;background:var(--color-surface);color:var(--brand-primary);font-size:var(--font-body);cursor:pointer}.pl-hint{color:var(--color-ink-2);padding:22px;text-align:center;font-size:var(--font-body)}.pl-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.pl-error{background:var(--color-danger-wash);color:var(--color-danger)}.pl-form{display:flex;flex-wrap:wrap;gap:8px;background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:12px;box-shadow:var(--shadow-card)}.pl-form input,.pl-form select{flex:1 1 130px;min-width:110px;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body);outline:none}.pl-submit{padding:10px 22px;border:none;border-radius:8px;background:var(--brand-primary);color:#fff;font-size:var(--font-subtitle);cursor:pointer}.pl-submit:disabled{opacity:.6}.pl-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:12px;margin-bottom:10px;box-shadow:var(--shadow-card)}.pl-card-head{display:flex;justify-content:space-between;align-items:center}.pl-name{font-weight:600;font-size:var(--font-subtitle)}.pl-status{font-size:var(--font-minor);padding:2px 8px;border-radius:var(--radius-lg);color:#fff}.pl-status.active{background:var(--color-success)}.pl-status.disabled{background:var(--color-border)}.pl-meta{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:6px}.pl-disc{color:var(--color-warning);font-size:var(--font-subtitle);font-weight:600;margin-top:2px}.pl-remark{color:var(--color-warning);font-size:var(--font-caption);background:var(--color-gold-wash);border-radius:4px;padding:3px 6px;margin-top:6px}.pl-ops{display:flex;gap:8px;margin-top:10px}.pl-ops button{flex:1;padding:8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);font-size:var(--font-body-sm);color:var(--color-ink-2);cursor:pointer}.pl-ops .pl-del{color:var(--color-danger)}.pl-ops button:disabled{opacity:.6}.pl-note{font-size:var(--font-caption);color:var(--text-placeholder);line-height:1.7;margin:0 0 12px;padding:8px 10px;background:var(--bg-primary);border-radius:6px}.pl-note b{color:var(--brand-primary)}.pl-form{flex-direction:column;flex-wrap:nowrap}.pl-form-sec{font-size:var(--font-caption);font-weight:600;color:var(--brand-primary);margin:4px 0 2px;padding-left:2px}.pl-row{display:flex;gap:8px;flex-wrap:wrap}.pl-row>input,.pl-row>select{flex:1 1 130px;min-width:120px}.pl-fld{flex:1 1 45%;min-width:150px;display:flex;flex-direction:column;gap:4px}.pl-fld span{font-size:var(--font-caption);color:var(--text-secondary)}.pl-fld input,.pl-fld select{padding:8px 10px;border:1px solid var(--border-light);border-radius:6px;font-size:var(--font-body);outline:none;background:var(--color-surface);color:var(--text-primary)}.pl-check{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:var(--font-body-sm);color:var(--text-primary);cursor:pointer}.pl-check input{width:16px;height:16px;accent-color:var(--brand-primary)}.pl-form-ops{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.pl-form-ops button{padding:9px 18px;border:1px solid var(--border-light);border-radius:8px;background:var(--color-surface);font-size:var(--font-body);color:var(--text-secondary);cursor:pointer}.pl-form-ops .pl-submit{border:none}.pl-policy{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pl-chip{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-minor);padding:3px 8px;border-radius:var(--radius-lg);background:var(--bg-primary);color:var(--text-secondary)}.pl-chip.warn{background:var(--state-bg-pending);color:var(--state-text-pending);font-weight:600}.sh-page{padding:16px;max-width:720px;margin:0 auto}.sh-head{margin-bottom:10px}.sh-head h2{margin:0;font-size:var(--font-title-lg)}.sh-hint{color:var(--color-ink-2);padding:22px;text-align:center;font-size:var(--font-body)}.sh-custom{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:var(--font-body-sm);color:var(--color-ink-2)}.sh-custom input{flex:1;padding:7px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-body-sm);outline:none}.sh-custom button{padding:7px 14px;border:none;border-radius:6px;background:var(--color-lake);color:#fff;font-size:var(--font-body-sm);cursor:pointer}.sh-banner{padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:var(--font-body-sm)}.sh-error{background:var(--color-danger-wash);color:var(--color-danger)}.sh-sum{background:var(--color-surface);border-radius:var(--radius-lg);padding:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.sh-k{font-size:var(--font-caption);color:var(--color-ink-2)}.sh-v{font-size:var(--font-num-28);font-weight:600;color:var(--color-success)}.sh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:10px}.sh-cell{background:var(--color-surface);border-radius:8px;padding:10px;text-align:center;box-shadow:var(--shadow-card)}.sh-cell span{display:block;font-size:var(--font-caption);color:var(--color-ink-2)}.sh-cell b{font-size:var(--font-title-lg);color:var(--color-ink-1)}.sh-sub{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);margin:12px 0 6px}.sh-rows{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.sh-row{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--color-border);font-size:var(--font-body);color:var(--color-ink-2)}.sh-row:last-child{border-bottom:none}.sh-row b{color:var(--color-success)}.sh-log{display:flex;align-items:center;gap:8px;background:var(--color-surface);border-radius:8px;padding:9px 10px;margin-bottom:6px;font-size:var(--font-body-sm);box-shadow:var(--shadow-card)}.sh-act{background:var(--color-lake-wash);color:var(--color-lake);border-radius:4px;padding:1px 7px;font-size:var(--font-caption);white-space:nowrap}.sh-target{color:var(--color-ink-2);font-size:var(--font-caption)}.sh-detail{flex:1;color:var(--color-ink-2)}.sh-amt{color:var(--color-success);font-weight:600}.sh-time{color:var(--color-ink-3);font-size:var(--font-caption)}.fl-page{padding:16px;max-width:920px;margin:0 auto}.fl-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.fl-head h2{font-size:var(--font-title-lg);margin:0}.fl-card{background:var(--color-surface);border-radius:12px;padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.fl-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.fl-wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.fl-muted{color:var(--color-ink-2);font-size:var(--font-body-sm)}.fl-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.fl-tab{padding:6px 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;cursor:pointer;font-size:var(--font-body)}.fl-tab.active{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.fl-btn{padding:7px 14px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;cursor:pointer;font-size:var(--font-body)}.fl-btn:disabled{opacity:.5;cursor:default}.fl-btn.ghost{background:var(--color-surface);color:var(--color-ink-1)}.fl-btn.danger{background:var(--color-danger)}.fl-btn.warn{background:var(--color-warning)}.fl-banner{padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:var(--font-body)}.fl-banner.fl-error{background:var(--color-danger-wash);color:var(--color-danger)}.fl-banner.fl-ok{background:var(--color-success-wash);color:var(--color-success)}.fl-banner.fl-warn{background:var(--color-gold-wash);color:var(--color-warning)}.fl-input{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);box-sizing:border-box;margin-bottom:8px}.fl-select{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);box-sizing:border-box;margin-bottom:8px;background:var(--color-surface)}.fl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.fl-stat{background:var(--color-surface);border-radius:12px;padding:16px;box-shadow:var(--shadow-card)}.fl-stat b{font-size:var(--font-display);display:block}.fl-stat.warn b{color:var(--color-danger)}.fl-stat.mild b{color:var(--color-warning)}.fl-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:var(--font-caption)}.fl-badge.active{background:var(--color-success-wash);color:var(--color-success)}.fl-badge.maintenance{background:var(--color-warning-wash);color:var(--color-warning)}.fl-badge.retired{background:var(--color-surface);color:var(--color-ink-2)}.fl-badge.paused{background:var(--color-warning-wash);color:var(--color-warning)}.fl-badge.offline{background:var(--color-surface);color:var(--color-ink-2)}.fl-badge.recorded{background:var(--color-success-wash);color:var(--color-success)}.fl-badge.refunded{background:var(--color-lake-wash);color:var(--color-lake)}.fl-badge.cancelled{background:var(--color-surface);color:var(--color-ink-2)}.fl-badge.valid{background:var(--color-success-wash);color:var(--color-success)}.fl-badge.expiring{background:var(--color-warning-wash);color:var(--color-warning)}.fl-badge.expired{background:var(--color-danger-wash);color:var(--color-danger)}.fl-badge.none{background:var(--color-surface);color:var(--color-ink-2)}.fl-badge.shuttle{background:var(--color-lake-wash);color:var(--color-lake)}.fl-badge.sightseeing{background:var(--color-success-wash);color:var(--color-success)}.fl-badge.transfer{background:var(--color-lake-wash);color:var(--color-lake)}.fl-table{width:100%;border-collapse:collapse;font-size:var(--font-body)}.fl-table th,.fl-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--color-border)}.fl-table th{color:var(--color-ink-2);font-weight:400;font-size:var(--font-body-sm)}.fl-pick{border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;margin-bottom:8px}.fl-pick.sel{border-color:var(--color-lake);background:var(--color-lake-wash)}.fl-total{font-size:var(--font-title-lg);font-weight:600}.rt-page{padding:16px;max-width:920px;margin:0 auto}.rt-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.rt-head h2{font-size:var(--font-title-lg);margin:0}.rt-card{background:var(--color-surface);border-radius:12px;padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.rt-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.rt-muted{color:var(--color-ink-2);font-size:var(--font-body-sm)}.rt-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.rt-tab{padding:6px 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;cursor:pointer;font-size:var(--font-body)}.rt-tab.active{background:var(--color-lake);color:#fff;border-color:var(--color-lake)}.rt-btn{padding:7px 14px;border:none;border-radius:8px;background:var(--color-lake);color:#fff;cursor:pointer;font-size:var(--font-body)}.rt-btn:disabled{opacity:.5;cursor:default}.rt-btn.ghost{background:var(--color-surface);color:var(--color-ink-1)}.rt-btn.danger{background:var(--color-danger)}.rt-banner{padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:var(--font-body)}.rt-banner.rt-error{background:var(--color-danger-wash);color:var(--color-danger)}.rt-banner.rt-ok{background:var(--color-success-wash);color:var(--color-success)}.rt-input{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-body);box-sizing:border-box;margin-bottom:8px}.rt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.rt-stat{background:var(--color-surface);border-radius:12px;padding:16px;box-shadow:var(--shadow-card)}.rt-stat b{font-size:var(--font-display);display:block}.rt-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:var(--font-caption)}.rt-badge.free{background:var(--color-success-wash);color:var(--color-success)}.rt-badge.occupied{background:var(--color-warning-wash);color:var(--color-warning)}.rt-badge.reserved{background:var(--color-lake-wash);color:var(--color-lake)}.rt-badge.onsale{background:var(--color-success-wash);color:var(--color-success)}.rt-badge.offself{background:var(--color-surface);color:var(--color-ink-2)}.rt-badge.unavailable{background:var(--color-danger-wash);color:var(--color-danger)}.rt-badge.created{background:var(--color-lake-wash);color:var(--color-lake)}.rt-badge.preparing{background:var(--color-warning-wash);color:var(--color-warning)}.rt-badge.served{background:var(--color-lake-wash);color:var(--color-lake)}.rt-badge.paid{background:var(--color-success-wash);color:var(--color-success)}.rt-badge.cancelled{background:var(--color-surface);color:var(--color-ink-2)}.ag-page{padding:var(--space-16);max-width:960px;margin:0 auto}.ag-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-16);gap:var(--space-12);flex-wrap:wrap}.ag-head h2{font-size:var(--font-title-lg);margin:0;color:var(--color-ink-1)}.ag-head-sub{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:var(--space-4)}.ag-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-14) var(--space-16);margin-bottom:var(--space-12);box-shadow:var(--shadow-l1)}.ag-card-title{font-size:var(--font-title);color:var(--color-ink-1);margin:0 0 var(--space-8)}.ag-card-note{color:var(--color-ink-2);font-size:var(--font-body-sm);line-height:1.6}.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-12);margin-bottom:var(--space-16)}.ag-stat{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-16);box-shadow:var(--shadow-l1)}.ag-stat b{font-size:var(--font-display);display:block;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.ag-stat span{color:var(--color-ink-2);font-size:var(--font-body-sm)}.ag-stat.warn b{color:var(--color-danger)}.ag-tabs{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-bottom:var(--space-14)}.ag-tab{padding:6px 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--font-body);color:var(--color-ink-1)}.ag-tab.active{background:var(--color-lake);color:var(--color-ink-on-dark);border-color:var(--color-lake)}.ag-btn{padding:7px 14px;border:none;border-radius:var(--radius-md);background:var(--color-lake);color:var(--color-ink-on-dark);cursor:pointer;font-size:var(--font-body)}.ag-btn:disabled{opacity:.5;cursor:default}.ag-btn.ghost{background:var(--color-surface);color:var(--color-ink-1);border:1px solid var(--color-border)}.ag-btn.danger{background:var(--color-danger);color:var(--color-ink-on-dark)}.ag-btn.warn{background:var(--color-warning);color:var(--color-ink-on-dark)}.ag-btn.sm{padding:4px 10px;font-size:var(--font-body-sm)}.ag-actions{display:flex;flex-wrap:wrap;gap:var(--space-8);align-items:center}.ag-banner{padding:var(--space-10) var(--space-12);border-radius:var(--radius-md);margin-bottom:var(--space-12);font-size:var(--font-body);display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap}.ag-banner.error{background:var(--color-danger-wash);color:var(--color-danger)}.ag-banner.ok{background:var(--color-success-wash);color:var(--color-success)}.ag-banner.warn{background:var(--color-warning-wash);color:var(--color-warning)}.ag-label{display:block;color:var(--color-ink-2);font-size:var(--font-body-sm);margin-bottom:var(--space-4)}.ag-input,.ag-select,.ag-textarea{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-body);box-sizing:border-box;margin-bottom:var(--space-8);background:var(--color-surface);color:var(--color-ink-1);font-family:inherit}.ag-textarea{min-height:64px;resize:vertical}.ag-field-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-12)}.ag-hint{color:var(--color-ink-2);font-size:var(--font-caption);margin-top:calc(var(--space-4) * -1);margin-bottom:var(--space-8)}.ag-list{display:flex;flex-direction:column;gap:var(--space-8)}.ag-item{display:block;width:100%;text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-14);cursor:pointer;font-family:inherit}.ag-item:hover{border-color:var(--color-lake)}.ag-item-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap}.ag-item-date{font-size:var(--font-title);color:var(--color-ink-1);font-variant-numeric:tabular-nums}.ag-item-goods{color:var(--color-ink-1);font-size:var(--font-body)}.ag-item-meta{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:var(--space-6);display:flex;flex-wrap:wrap;gap:var(--space-10)}.ag-item-flag{color:var(--color-danger);font-size:var(--font-body-sm)}.ag-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--font-caption);white-space:nowrap}.ag-badge-ok{background:var(--color-success-wash);color:var(--color-success)}.ag-badge-warn{background:var(--color-warning-wash);color:var(--color-warning)}.ag-badge-mute{background:var(--color-fill);color:var(--color-ink-2)}.ag-badge-danger{background:var(--color-danger-wash);color:var(--color-danger)}.ag-bar{height:6px;border-radius:var(--radius-pill);background:var(--color-fill);overflow:hidden;margin-top:var(--space-8)}.ag-bar-fill{height:100%;background:var(--color-lake)}.ag-bar-fill.full{background:var(--color-warning)}.ag-roster{width:100%;border-collapse:collapse;font-size:var(--font-body)}.ag-roster th,.ag-roster td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--color-border);vertical-align:middle}.ag-roster th{color:var(--color-ink-2);font-weight:400;font-size:var(--font-body-sm)}.ag-roster-name{color:var(--color-ink-1)}.ag-roster-sub{color:var(--color-ink-2);font-size:var(--font-caption)}.ag-roster-acts{display:flex;gap:var(--space-6);flex-wrap:wrap}.ag-empty{padding:var(--space-24);text-align:center;color:var(--color-ink-2);font-size:var(--font-body);line-height:1.7}.ag-empty b{color:var(--color-ink-1);display:block;margin-bottom:var(--space-4)}.ag-muted{color:var(--color-ink-2);font-size:var(--font-body-sm)}.ag-pair{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-8) var(--space-12);font-size:var(--font-body)}.ag-pair dt{color:var(--color-ink-2)}.ag-pair dd{margin:0;color:var(--color-ink-1)}@media (max-width: 640px){.ag-page{padding:var(--space-12)}.ag-roster thead{display:none}.ag-roster tr{display:block;border-bottom:1px solid var(--color-border);padding:var(--space-8) 0}.ag-roster td{border:none;padding:2px 0;display:block}}.gv-page{padding:var(--space-16);max-width:1080px;margin:0 auto}.gv-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-16);gap:var(--space-12);flex-wrap:wrap}.gv-head h2{font-size:var(--font-title-lg);margin:0;color:var(--color-ink-1)}.gv-head-sub{color:var(--color-ink-2);font-size:var(--font-body-sm);margin-top:var(--space-4)}.gv-tabs{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-bottom:var(--space-14)}.gv-tab{padding:6px 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--font-body);color:var(--color-ink-1);font-family:inherit}.gv-tab.active{background:var(--color-lake);color:var(--color-ink-on-dark);border-color:var(--color-lake)}.gv-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-14) var(--space-16);margin-bottom:var(--space-12);box-shadow:var(--shadow-l1)}.gv-card-title{font-size:var(--font-title);color:var(--color-ink-1);margin:0 0 var(--space-8);display:flex;align-items:center;gap:var(--space-8)}.gv-card-note{color:var(--color-ink-2);font-size:var(--font-body-sm);line-height:1.6}.gv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-12);margin-bottom:var(--space-14)}.gv-stat{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-14);box-shadow:var(--shadow-l1)}.gv-stat b{font-size:var(--font-display);display:block;color:var(--color-ink-1);font-variant-numeric:tabular-nums}.gv-stat span{color:var(--color-ink-2);font-size:var(--font-body-sm)}.gv-stat .gv-stat-hint{display:block;color:var(--color-ink-2);font-size:var(--font-caption);margin-top:var(--space-4)}.gv-stat.warn b{color:var(--color-warning)}.gv-stat.masked b{color:var(--color-ink-2)}.gv-stat.masked b:after{content:" ＜阈值";font-size:var(--font-caption);font-weight:400}.gv-banner{padding:var(--space-10) var(--space-12);border-radius:var(--radius-md);margin-bottom:var(--space-12);font-size:var(--font-body);display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap}.gv-banner.error{background:var(--color-danger-wash);color:var(--color-danger)}.gv-banner.warn{background:var(--color-warning-wash);color:var(--color-warning)}.gv-banner.ok{background:var(--color-success-wash);color:var(--color-success)}.gv-btn{padding:7px 14px;border:none;border-radius:var(--radius-md);background:var(--color-lake);color:var(--color-ink-on-dark);cursor:pointer;font-size:var(--font-body);font-family:inherit}.gv-btn:disabled{opacity:.5;cursor:default}.gv-btn.ghost{background:var(--color-surface);color:var(--color-ink-1);border:1px solid var(--color-border)}.gv-btn.sm{padding:4px 10px;font-size:var(--font-body-sm)}.gv-actions{display:flex;flex-wrap:wrap;gap:var(--space-8);align-items:center}.gv-muted{color:var(--color-ink-2);font-size:var(--font-body-sm)}.gv-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--font-caption);font-weight:500}.gv-badge.ok{background:var(--color-success-wash);color:var(--color-success)}.gv-badge.warn{background:var(--color-warning-wash);color:var(--color-warning)}.gv-badge.muted{background:var(--color-surface);color:var(--color-ink-2);border:1px solid var(--color-border)}.gv-badge.danger{background:var(--color-danger-wash);color:var(--color-danger)}.gv-bars{display:flex;flex-direction:column;gap:var(--space-8);margin-top:var(--space-10)}.gv-bar-row{display:grid;grid-template-columns:96px 1fr 56px;gap:var(--space-8);align-items:center;font-size:var(--font-body-sm);color:var(--color-ink-1)}.gv-bar-track{height:8px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden}.gv-bar-fill{height:100%;background:var(--color-lake);border-radius:var(--radius-pill)}.gv-bar-val{text-align:right;font-variant-numeric:tabular-nums;color:var(--color-ink-2)}.gv-table{width:100%;border-collapse:collapse;font-size:var(--font-body-sm)}.gv-table th{text-align:left;color:var(--color-ink-2);font-weight:500;padding:var(--space-8) var(--space-10);border-bottom:1px solid var(--color-border);white-space:nowrap}.gv-table td{padding:var(--space-8) var(--space-10);border-bottom:1px solid var(--color-border);color:var(--color-ink-1);vertical-align:top}.gv-table tr:hover td{background:transparent}.gv-mono{font-variant-numeric:tabular-nums;color:var(--color-ink-2);white-space:nowrap}@media (max-width: 720px){.gv-page{padding:var(--space-12) var(--space-10)}.gv-table th:nth-child(3),.gv-table td:nth-child(3),.gv-table th:nth-child(6),.gv-table td:nth-child(6){display:none}.gv-bar-row{grid-template-columns:72px 1fr 44px}}:root{--color-paper: #F5F1E8;--color-surface: #FFFFFF;--color-fill: #F5F0E6;--color-border: #E8E2D6;--color-border-strong: #D8D0C0;--color-ink-1: #2B2620;--color-ink-2: #6B6259;--color-ink-3: #756B60;--color-ink-dis: #C4BBAF;--color-lake: #2E5E73;--color-lake-deep: #1F4454;--color-accent: #9B2915;--color-gold: #C9A96E;--color-gold-deep: #A8854E;--color-success: #477856;--color-warning: #8F5F00;--color-danger: #B3261E;--color-info: #54718E;--color-lake-wash: rgba(46,94,115,.1);--color-success-wash: rgba(71,120,86,.1);--color-warning-wash: rgba(143,95,0,.12);--color-danger-wash: rgba(179,38,30,.1);--color-info-wash: rgba(84,113,142,.12);--color-accent-wash: rgba(155,41,21,.08);--color-gold-wash: rgba(201,169,110,.14);--color-night: #1C1713;--color-success-on-dark: #8FBF9C;--color-warning-on-dark: #E0A652;--color-danger-on-dark: #F09A90;--color-info-on-dark: #9DBAD4;--color-accent-deep: #7D2110;--color-success-on-wash: #416E4F;--color-warning-on-wash: #865900;--color-info-on-wash: #4B657E;--color-danger-on-wash: #A5231C;--color-scrim: rgba(43,38,32,.45);--color-scrim-soft: rgba(43,38,32,.35);--color-ink-on-dark: rgba(251,247,238,.92);--color-ink-on-dark-2: rgba(251,247,238,.72);--color-danger-surface: rgba(253,240,238,.95);--font-hero: 32px;--font-display: 24px;--font-title-lg: 20px;--font-title: 16px;--font-subtitle: 15px;--font-body: 14px;--font-body-sm: 13px;--font-caption: 12px;--font-minor: 11px;--font-num-64: 64px;--font-num-48: 48px;--font-num-28: 28px;--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-18: 18px;--space-20: 20px;--space-22: 22px;--space-24: 24px;--space-28: 28px;--space-32: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 20px;--radius-full: 999px;--shadow-l1: 0 2px 5px rgba(43,38,32,.06);--shadow-l2: 0 6px 16px rgba(43,38,32,.1);--shadow-l3: 0 12px 28px rgba(43,38,32,.14);--shadow-hair: 0 1px 6px rgba(43,38,32,.05);--shadow-up: 0 -1px 6px rgba(43,38,32,.06);--shadow-accent: 0 3px 10px rgba(155,41,21,.3);--gradient-lake-veil: linear-gradient(180deg, rgba(31,58,74,.88) 0%, rgba(31,58,74,.62) 42%, rgba(31,58,74,.35) 100%);--motion-fast: .15s cubic-bezier(.2,0,0,1);--motion-base: .24s cubic-bezier(.2,0,0,1);--motion-press-scale: .97;--ease-standard: cubic-bezier(.2,0,0,1);--duration-tap: 90ms;--duration-flash: .12s;--duration-page: .22s;--duration-skeleton-in: .3s;--duration-number: .3s;--duration-stagger: 40ms;--duration-toast: 2s;--status-room-clean: var(--color-success);--status-room-dirty: var(--color-warning);--status-room-occupied: var(--color-lake);--status-room-maintenance: var(--color-danger)}:root{--font-serif: "Source Han Serif SC", "Noto Serif SC", "Songti SC", "STSong", serif}.page-title,.section-title,.card-title,.panel-title,.ui-modal-title{font-family:var(--font-serif)}.btn-primary{box-shadow:var(--shadow-accent)}.page-title{box-shadow:inset 3px 0 0 var(--color-gold-deep)}[data-theme=dark],.on-dark{--color-success: var(--color-success-on-dark);--color-warning: var(--color-warning-on-dark);--color-danger: var(--color-danger-on-dark);--color-info: var(--color-info-on-dark);--color-paper: var(--color-night);--color-surface: #241E19;--color-fill: #2E2721;--color-border: #3A322B;--color-ink-1: #F5F1E8;--color-ink-2: #D8D0C0;--color-ink-3: #B3A99C}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}:root{--brand-primary: var(--color-lake);--brand-primary-hover: var(--color-lake-deep);--brand-accent: var(--color-accent);--brand-gold: var(--color-gold);--brand-gold-text: var(--color-warning);--brand-gold-ink: var(--color-ink-1);--brand-cyan: var(--color-info);--brand-cream: var(--color-paper);--text-primary: #1F1B16;--text-secondary: #666666;--text-placeholder: var(--color-ink-3);--text-disabled: #999999;--bg-primary: #F5F1E8;--bg-secondary: #F5F1E8;--bg-card: #FFFFFF;--bg-hover: #EBE6D9;--bg-selected: var(--color-lake-wash);--bg-input-focus: #FFFFFF;--border-color: #E5E1D8;--btn-disabled: #CCCCCC;--warning-bg: #FFF3CD;--warning-border: #FFC107;--warning-text: #856404;--warning-bg-warm: #FFF3E0;--radius-base: 8px;--radius-lg: 12px;--shadow-card: 0 2px 8px rgba(43, 38, 32, .06)}:root{--adm-color-primary: var(--brand-primary);--adm-color-success: var(--color-success);--adm-color-warning: var(--color-warning);--adm-color-danger: var(--color-danger);--adm-color-background: var(--bg-primary);--adm-color-border: var(--border-color);--adm-color-text: var(--text-primary);--adm-color-text-secondary: var(--text-secondary);--adm-color-weak: var(--text-placeholder);--adm-border-radius: var(--radius-base);--adm-font-size-main: 14px}:root{--color-primary: var(--color-lake);--color-text: var(--color-ink-1);--color-text-primary: var(--color-ink-1);--color-text-secondary: var(--color-ink-2);--color-text-tertiary: var(--color-ink-3);--text-tertiary: var(--color-ink-3);--color-bg: var(--color-paper);--color-bg-primary: var(--color-paper);--color-bg-secondary: var(--color-fill);--bg-page: var(--color-paper);--color-cream: var(--color-paper);--border-light: var(--color-border);--color-error: var(--color-danger);--danger-text: var(--color-danger);--danger-bg: var(--color-danger-wash)}:root{--state-bg-new: var(--color-accent-wash);--state-text-new: var(--color-accent);--state-bg-pending: var(--color-warning-wash);--state-text-pending: var(--color-warning-on-wash);--state-bg-progress: var(--color-lake-wash);--state-text-progress: var(--color-lake);--state-bg-done: var(--color-success-wash);--state-text-done: var(--color-success-on-wash);--state-bg-danger: var(--color-danger-wash);--state-text-danger: var(--color-danger);--state-bg-settled: var(--color-info-wash);--state-text-settled: var(--color-info-on-wash);--state-bg-off: var(--color-fill);--state-text-off: var(--color-ink-3)}.ui-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair)}.ui-card-pad{padding:14px 16px}.ui-card-title{font-size:var(--font-title);font-weight:600;color:var(--color-ink-1);margin:0 0 10px}.ui-metric{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:12px 14px}.ui-metric-label{font-size:var(--font-minor);color:var(--color-ink-3);line-height:1.4;margin:0 0 4px}.ui-metric-value{font-size:var(--font-num-28);font-weight:600;color:var(--color-ink-1);line-height:1.15;font-variant-numeric:tabular-nums;margin:0}.ui-metric-unit{font-size:var(--font-caption);font-weight:400;color:var(--color-ink-3);margin-left:3px}.ui-metric-sub{font-size:var(--font-minor);color:var(--color-ink-3);line-height:1.4;margin:3px 0 0}.ui-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.ui-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:var(--font-minor);font-weight:600;line-height:1.6;white-space:nowrap;background:var(--color-fill);color:var(--color-ink-2)}.ui-badge--success{background:var(--color-success-wash);color:var(--color-success-on-wash)}.ui-badge--warning{background:var(--color-warning-wash);color:var(--color-warning-on-wash)}.ui-badge--danger{background:var(--color-danger-wash);color:var(--color-danger)}.ui-badge--info{background:var(--color-info-wash);color:var(--color-info-on-wash)}.ui-badge--lake{background:var(--color-lake-wash);color:var(--color-lake)}.ui-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border)}.ui-row:last-child{border-bottom:none}.ui-row-main{min-width:0;font-size:var(--font-body-sm);color:var(--color-ink-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-row-meta{flex:0 0 auto;font-size:var(--font-minor);color:var(--color-ink-3)}.ui-empty{padding:28px 16px;text-align:center;color:var(--color-ink-3);font-size:var(--font-body-sm)}.ui-empty-title{font-size:var(--font-body);color:var(--color-ink-2);margin:0 0 4px}.ui-empty-hint{margin:0;font-size:var(--font-minor)}.ui-table{width:100%;border-collapse:collapse;font-size:var(--font-body-sm)}.ui-table th{text-align:left;font-size:var(--font-minor);font-weight:600;color:var(--color-ink-3);padding:8px 10px;border-bottom:1px solid var(--color-border-strong);white-space:nowrap}.ui-table td{padding:10px;border-bottom:1px solid var(--color-border);color:var(--color-ink-1)}.ui-table tbody tr:hover{background:var(--color-fill)}.ui-table .num{text-align:right;font-variant-numeric:tabular-nums}[data-density=compact] :is(.ui-table,.psb-table,.rp-table,.pd-table,.gv-table,.ag-roster) td{height:32px;padding-block:2px}[data-density=compact] :is(.ui-table,.psb-table,.rp-table,.pd-table,.gv-table,.ag-roster) th{padding-block:4px}[data-density=compact] :is(.ui-table,.psb-table,.rp-table,.pd-table,.gv-table,.ag-roster) td :is(button,a,[role=button]){position:relative}[data-density=compact] :is(.ui-table,.psb-table,.rp-table,.pd-table,.gv-table,.ag-roster) td :is(button,a,[role=button]):after{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:44px}.ui-sk{animation:ui-sk-in var(--duration-skeleton-in) var(--ease-standard) both}@keyframes ui-sk-in{0%{opacity:0}to{opacity:1}}.ui-sk-line{height:12px;border-radius:6px;background:var(--color-fill)}.ui-sk-line+.ui-sk-line{margin-top:8px}.ui-sk-line--short{width:60%}.ui-sk-line--mid{width:85%}.ui-sk-line--title{height:16px;width:45%;border-radius:8px}.ui-sk-block{height:40px;border-radius:8px;background:var(--color-fill);flex:0 0 auto}.ui-sk-block--wide{height:72px;width:100%;border-radius:8px;background:var(--color-fill)}.ui-sk-circle{height:40px;width:40px;border-radius:999px;background:var(--color-fill);flex:0 0 auto}.ui-sk-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:14px 16px}.ui-sk-card>.ui-sk-line--title{margin-bottom:12px}.ui-sk-metric{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:12px 14px}.ui-sk-metric>.ui-sk-line:first-child{width:40%}.ui-sk-metric>.ui-sk-line:nth-child(2){height:24px;border-radius:8px}.ui-sk-metric>.ui-sk-line:last-child{width:55%}.ui-sk-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border)}.ui-sk-row:last-child{border-bottom:none}.ui-sk-row>.ui-sk-line{flex:1}.ui-sk-row>.ui-sk-line:last-child{flex:0 0 64px}.ui-sk-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:6px 14px}.ui-sk-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:6px}.ui-sk-table>.ui-sk-tr{display:flex;gap:10px;padding:9px 10px;border-bottom:1px solid var(--color-border)}.ui-sk-table>.ui-sk-tr:last-child{border-bottom:none}.ui-sk-table>.ui-sk-tr>.ui-sk-line{flex:1}.ui-sk-table>.ui-sk-tr--head>.ui-sk-line{height:8px}.ui-sk-grid{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hair);padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}.ui-sk-cell{height:36px;border-radius:6px;background:var(--color-fill)}.ui-toast-wrap{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.ui-toast{pointer-events:auto;display:inline-flex;align-items:center;gap:8px;max-width:min(560px,calc(100vw - 48px));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-l2);padding:10px 16px;font-size:var(--font-body-sm);color:var(--color-ink-1);animation:ui-toast-in var(--duration-page) var(--ease-standard) both}.ui-toast-dot{width:8px;height:8px;border-radius:999px;flex:0 0 auto}.ui-toast--ok .ui-toast-dot{background:var(--color-success)}.ui-toast--err .ui-toast-dot{background:var(--color-danger)}.ui-toast--info .ui-toast-dot{background:var(--color-lake)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ui-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-fill);color:var(--color-ink-1);font-size:var(--font-body-sm)}.ui-banner--info{background:var(--color-info-wash);border-color:var(--color-info);color:var(--color-info-on-wash)}.ui-banner--warning{background:var(--color-warning-wash);border-color:var(--color-warning);color:var(--color-warning-on-wash)}.ui-banner--success{background:var(--color-success-wash);border-color:var(--color-success);color:var(--color-success-on-wash)}.ui-banner--danger{background:var(--color-danger-wash);border-color:var(--color-danger);color:var(--color-danger)}.ui-banner-text{flex:1;min-width:0}.ui-banner-close{flex:0 0 auto;border:none;background:none;cursor:pointer;color:inherit;padding:4px;line-height:0;border-radius:6px;opacity:.7}.ui-banner-close:hover{opacity:1}.ui-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;padding:20px}.ui-modal{width:min(420px,100%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-l3);padding:20px;animation:ui-modal-in var(--duration-page) var(--ease-standard) both}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ui-modal-title{margin:0 0 8px;font-size:var(--font-title);font-weight:600;color:var(--color-ink-1)}.ui-modal-body{margin:0 0 18px;font-size:var(--font-body-sm);color:var(--color-ink-2);line-height:1.6}.ui-modal-actions{display:flex;justify-content:flex-end;gap:10px}.ui-modal-btn{padding:8px 16px;border-radius:8px;font-size:var(--font-body-sm);font-weight:600;cursor:pointer;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink-1);transition:background var(--duration-tap) var(--ease-standard),border-color var(--duration-tap) var(--ease-standard)}.ui-modal-btn:hover{background:var(--color-fill)}.ui-modal-btn--primary{background:var(--color-lake);border-color:var(--color-lake);color:var(--color-ink-on-dark)}.ui-modal-btn--primary:hover{background:var(--color-lake-deep)}.ui-modal-btn--danger{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-ink-on-dark)}.ui-modal-btn--danger:hover{background:var(--color-accent-deep)}.ui-modal-btn:disabled{opacity:.6;cursor:not-allowed}.ui-slownet{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:1200;width:min(560px,calc(100vw - 32px));pointer-events:none}.ui-desktop-only-hint{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-l1);padding:20px 16px;text-align:center}.ui-do-icon{display:flex;justify-content:center;color:var(--color-ink-3);margin-bottom:8px}.ui-do-title{font-size:var(--font-title);font-weight:600;color:var(--color-ink-1)}.ui-do-reason{margin-top:6px;font-size:var(--font-body-sm);color:var(--color-ink-2);line-height:1.6}.ui-do-actions{margin-top:14px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.ui-do-export{padding:10px 16px;border:none;border-radius:8px;background:var(--color-lake);color:var(--color-ink-on-dark);font-size:var(--font-body);font-weight:600;cursor:pointer}.ui-do-export:hover{background:var(--color-lake-deep)}.ui-do-anyway{padding:9px 16px;min-height:40px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-ink-2);font-size:var(--font-body-sm);cursor:pointer}@media (min-width: 1024px){.ui-desktop-only-hint{display:none}}@media (max-width: 1023.98px){.ui-desktop-only-body{display:none}}.ui-merchant-badge{display:inline-flex;align-items:center;gap:7px;max-width:220px;min-height:40px;padding:5px 10px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);font-family:inherit;font-size:var(--font-caption);color:var(--color-ink-1)}.ui-merchant-badge.is-multi{cursor:pointer}.ui-merchant-dot{flex:0 0 10px;width:10px;height:10px;border-radius:var(--radius-sm)}.ui-merchant-dot.mc-0{background:var(--color-accent)}.ui-merchant-dot.mc-1{background:var(--color-warning)}.ui-merchant-dot.mc-2{background:var(--color-success)}.ui-merchant-dot.mc-3{background:var(--color-ink-2)}.ui-merchant-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ui-merchant-caret{color:var(--color-ink-3)}.ui-merchant-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim-soft);z-index:1150;display:flex;align-items:flex-start;justify-content:center;padding-top:72px}.ui-merchant-sheet{background:var(--color-surface);border-radius:12px;box-shadow:var(--shadow-l2);width:min(360px,calc(100vw - 48px));padding:12px}.ui-merchant-sheet-title{font-size:var(--font-body);font-weight:600;color:var(--color-ink-1);padding:4px 6px 10px}.ui-merchant-item{display:flex;width:100%;align-items:center;gap:8px;padding:11px 10px;min-height:44px;border:none;background:none;border-radius:8px;font-family:inherit;font-size:var(--font-body);color:var(--color-ink-1);cursor:pointer;text-align:left}.ui-merchant-item:hover{background:var(--color-fill)}.ui-merchant-item.is-current{background:var(--color-lake-wash)}.ui-merchant-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-merchant-recent{font-size:var(--font-minor);color:var(--color-ink-3)}.ui-merchant-current{font-size:var(--font-minor);color:var(--color-lake);font-weight:600}.ui-merchant-sheet-hint{padding:8px 6px 2px;font-size:var(--font-caption);color:var(--color-ink-3)}.ui-modal-merchant{display:flex;align-items:center;gap:7px;margin-bottom:10px;padding:8px 10px;border-radius:8px;background:var(--color-fill);font-size:var(--font-body-sm);color:var(--color-ink-2)}.ui-modal-merchant b{color:var(--color-ink-1)}@keyframes ui-page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ui-anim-page{animation:ui-page-in var(--duration-page) var(--ease-standard) both}.ui-anim-tap{transition:transform var(--duration-tap) var(--ease-standard),background var(--duration-tap) var(--ease-standard),box-shadow var(--duration-tap) var(--ease-standard)}.ui-anim-tap:active:not(:disabled){transform:scale(var(--motion-press-scale))}@keyframes ui-enter-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ui-anim-stagger>*{animation:ui-enter-up var(--duration-flash) var(--ease-standard) both}.ui-anim-stagger>:nth-child(2){animation-delay:calc(1 * var(--duration-stagger))}.ui-anim-stagger>:nth-child(3){animation-delay:calc(2 * var(--duration-stagger))}.ui-anim-stagger>:nth-child(4){animation-delay:calc(3 * var(--duration-stagger))}.ui-anim-stagger>:nth-child(n+5){animation-delay:calc(4 * var(--duration-stagger))}.ui-anim-number{font-variant-numeric:tabular-nums;transition:color var(--duration-number) var(--ease-standard)}.ui-amount-delta{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-caption);font-variant-numeric:tabular-nums;color:var(--color-ink-2)}.ui-amount-delta.up{color:var(--color-success)}.ui-amount-delta.down{color:var(--color-danger)}.ui-amount-delta.flat{color:var(--color-ink-3)}[class$=-mask]{animation:ui-mask-in var(--duration-flash) var(--ease-standard) both}[class$=-sheet]{animation:ui-modal-in var(--duration-page) var(--ease-standard) both}@keyframes ui-mask-in{0%{opacity:0}}@media (prefers-reduced-motion: reduce){:root{--duration-tap: 0ms;--duration-flash: 0ms;--duration-page: 0ms;--duration-skeleton-in: 0ms;--duration-number: 0ms;--duration-stagger: 0ms}*,*:before,*:after{animation-duration:0ms!important;animation-delay:0ms!important;transition-duration:0ms!important;transition-delay:0ms!important}}.ui-skip-link{position:fixed;top:8px;left:8px;z-index:1200;padding:10px 14px;border-radius:8px;background:var(--color-lake);color:var(--color-ink-on-dark);font-size:var(--font-body-sm);font-weight:600;text-decoration:none;transform:translateY(-200%);transition:transform var(--duration-tap) var(--ease-standard)}.ui-skip-link:focus-visible{transform:none;outline:2px solid var(--color-ink-1);outline-offset:2px}#main-content:focus{outline:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:var(--font-body);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}.pack-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:24px}.pack-gate-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:32px 24px;max-width:360px;width:100%;text-align:center}.pack-gate-title{margin:0 0 8px;font-size:var(--font-title);color:var(--text-primary)}.pack-gate-desc{margin:0 0 20px;font-size:var(--font-body-sm);color:var(--text-secondary)}.pack-gate-btn{border:none;border-radius:var(--radius-base);background:var(--brand-primary);color:#fff;font-size:var(--font-body);padding:10px 24px;cursor:pointer}.retry-btn{height:44px;min-width:120px;margin:10px 0 2px;padding:0 22px;border:1px solid var(--brand-primary);border-radius:var(--radius-base);background:var(--brand-primary);color:#fff;font-size:var(--font-subtitle);font-weight:600;cursor:pointer}.retry-btn:disabled{opacity:.55;cursor:not-allowed}
