.home{flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.home>*+*{margin-top:1.7vw}.home-title{letter-spacing:.3vw;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.7vw;font-weight:700}.home-cards{justify-content:center;margin-top:1.3vw;padding:0 1vw;display:flex}.home-cards>*+*{margin-left:2.1vw}.home-card{cursor:pointer;border:none;border-radius:.8vw;flex-direction:column;flex:0 17.7vw;justify-content:center;align-items:center;min-width:12.5vw;max-width:17.7vw;height:13.5vw;transition:transform .2s,box-shadow .2s;display:flex}.home-card:hover{transform:translateY(-.3vw)scale(1.03);box-shadow:0 .6vw 2.1vw rgba(0,0,0,.5)}.home-card-title{color:#fff;font-size:2vw;font-weight:700}.bind-overlay{z-index:1000;background:rgba(10,22,40,.95);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.bind-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:.8vw;flex-direction:column;align-items:center;padding:2.5vw 2.9vw;display:flex}.bind-card>*+*{margin-top:1vw}.bind-title{font-size:1.7vw;font-weight:700}.bind-hint{color:#64748b;font-size:1vw}.bind-input-row{align-items:center;display:flex}.bind-input-row>*+*{margin-left:.8vw}.bind-input{text-align:center;letter-spacing:.6vw;color:#fff;background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.15);border-radius:.5vw;outline:none;width:13.5vw;height:3.1vw;font-size:1.9vw;font-weight:700}.bind-input:focus{border-color:#60a5fa}.bind-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:.5vw;height:3.1vw;padding:0 1.7vw;font-size:1.3vw;font-weight:600}.bind-btn:disabled{opacity:.5;cursor:default}.bind-btn.unbind{background:rgba(255,255,255,.1);height:2.3vw;font-size:.9vw}.bind-error{color:#f87171;font-size:1vw}.bind-check{color:#34d399;font-size:2.5vw}.bind-info{color:#94a3b8;font-size:1.1vw}.bind-info strong{color:#e2e8f0}.clock{text-align:right}.clock-row{align-items:baseline;display:flex}.clock-row>*+*{margin-left:.8vw}.clock-time{font-variant-numeric:tabular-nums;letter-spacing:.1vw;color:#e2e8f0;font-size:2.5vw;font-weight:700}.clock-time-sm{font-size:1.9vw}.clock-date{color:#94a3b8;white-space:nowrap;font-size:1.1vw}.screen{color:#e2e8f0;box-sizing:border-box;background:#0f1b3a;min-height:100vh;padding:1.3vw 1.7vw}.screen-header{justify-content:space-between;align-items:center;margin-bottom:1.3vw;display:flex}.screen-header h1{color:#60a5fa;letter-spacing:.1vw;margin:0;font-size:1.5vw;font-weight:700}.brand-name{color:#93c5fd;letter-spacing:.05vw;font-size:.8vw;font-weight:600}.scroll-grid-wrapper{height:calc(100vh - 6.3vw);position:relative;overflow:hidden}.baby-grid{will-change:transform;backface-visibility:hidden;flex-wrap:wrap;margin:-.5vw;animation-name:scrollUp;animation-timing-function:linear;animation-iteration-count:infinite;display:flex;transform:translateZ(0)}.baby-grid.paused{animation-play-state:paused}@-webkit-keyframes scrollUp{0%{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(-50%)}}@keyframes scrollUp{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.baby-grid>*{width:calc(16.66% - 1vw);margin:.5vw}.baby-card{background:rgba(30,58,138,.6);border:1px solid rgba(96,165,250,.2);border-radius:.6vw;padding:1vw}.card-header{border-bottom:1px solid rgba(96,165,250,.15);justify-content:space-between;align-items:center;margin-bottom:.8vw;padding-bottom:.6vw;display:flex}.card-title{flex-wrap:wrap;align-items:center;display:flex}.card-title>*+*{margin-left:.4vw}.baby-name{color:#60a5fa;font-size:.9vw;font-weight:700}.baby-gender{color:#93c5fd;background:rgba(96,165,250,.15);border-radius:.2vw;padding:.1vw .4vw;font-size:.7vw}.baby-age{color:#94a3b8;font-size:.7vw}.baby-room{color:#fff;background:rgba(96,165,250,.12);border-radius:1vw;padding:.1vw .5vw;font-size:.8vw;font-weight:600}.card-body{flex-direction:column;display:flex}.card-body>*+*{margin-top:.7vw}.metric-row{justify-content:space-between;display:flex}.metric-row>*+*{margin-left:.8vw}.metric{flex-direction:column;flex:1;display:flex}.metric>*+*{margin-top:.2vw}.metric-label{color:#94a3b8;white-space:nowrap;font-size:.6vw}.metric-value{color:#e2e8f0;white-space:nowrap;font-size:.8vw;font-weight:600}.metric-value.temp.normal{color:#4ade80}.metric-value.temp.warning{color:#fbbf24}.metric-value.temp.danger{color:#f87171}.metric-value.huangdan.normal{color:#4ade80}.metric-value.huangdan.warning{color:#fbbf24}.metric-value.huangdan.danger{color:#f87171}.status-box{text-align:center;color:#94a3b8;padding:2.1vw;font-size:.9vw}.empty-state{text-align:center;color:#64748b;width:100%;padding:3.1vw;font-size:1vw}.kitchen{background:#0f172a}.kitchen-header{background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.08);align-items:center;padding:.5vw 1.3vw;display:flex}.kitchen-header>*+*{margin-left:.8vw}.shop-logo{border-radius:.2vw;height:1.9vw}.kitchen-title{color:#e2e8f0;font-size:1.5vw;font-weight:700}.kitchen-header .clock{margin-left:auto}.kitchen-body{flex:1;padding:.4vw .8vw;overflow:hidden}.mama-grid{columns:2;column-gap:1.3vw;height:100%}.mama-card{color:#cbd5e1;break-inside:avoid;background:rgba(255,255,255,.04);border-radius:.2vw;align-items:center;min-height:2.3vw;margin-bottom:.2vw;padding:.4vw .6vw;font-size:1.1vw;display:flex}.mama-card>*+*{margin-left:.4vw}.col-room{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;width:3.6vw;font-weight:500;overflow:hidden}.col-name{color:#f1f5f9;text-align:center;flex-shrink:0;width:1.9vw;font-weight:700}.col-caution{color:#f87171;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.col-caution.normal-diet{color:#94a3b8}.status-box{color:#94a3b8;justify-content:center;align-items:center;height:10.4vw;font-size:1.5vw;display:flex}.status-box.empty{column-span:all}.shop-logo{border-radius:.2vw;height:2.1vw;margin-right:.6vw}.stats-bar{margin-bottom:1.3vw;display:flex}.stats-bar>*+*{margin-left:1vw}.stat-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:.6vw;flex-direction:column;flex:1;padding:1vw 1.3vw;display:flex}.stat-item>*+*{margin-top:.3vw}.stat-num{font-variant-numeric:tabular-nums;font-size:2.2vw;font-weight:700}.stat-item:first-child .stat-num{color:#60a5fa}.stat-item:nth-child(2) .stat-num{color:#34d399}.stat-item:nth-child(3) .stat-num{color:#38bdf8}.stat-item:nth-child(4) .stat-num{color:#f59e0b}.stat-label{color:#64748b;font-size:1vw}.room-grid{flex-wrap:wrap;margin:-.4vw;display:flex}.room-grid>*{width:calc(25% - .8vw);margin:.4vw}.room-card{box-sizing:border-box;border:2px solid transparent;border-radius:.6vw;flex-direction:column;min-height:7.8vw;padding:1.1vw 1vw;display:flex}.room-card>*+*{margin-top:.4vw}.room-occupied{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3)}.room-free{background:rgba(56,189,248,.12);border-color:rgba(56,189,248,.3)}.room-cleaning{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.3)}.room-repair{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.2)}.room-booked{background:rgba(168,85,247,.12);border-color:rgba(168,85,247,.3)}.room-no{font-size:1.7vw;font-weight:700}.room-occupied .room-no{color:#34d399}.room-free .room-no{color:#38bdf8}.room-cleaning .room-no{color:#fbbf24}.room-repair .room-no{color:#94a3b8}.room-booked .room-no{color:#c084fc}.room-status-label{font-size:.9vw}.room-occupied .room-status-label{color:#6ee7b7}.room-free .room-status-label{color:#7dd3fc}.room-cleaning .room-status-label{color:#fcd34d}.room-repair .room-status-label{color:#94a3b8}.room-booked .room-status-label{color:#d8b4fe}.room-type-section{margin-bottom:1.5vw}.room-type-title{color:#94a3b8;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:.7vw;padding-bottom:.4vw;font-size:1.4vw;font-weight:600}.room-guest{color:#e2e8f0;font-size:1vw}.room-date{color:#64748b;font-size:.8vw}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{color:#fff;background:#0a1628;width:100%;height:100%;font-family:-apple-system,Microsoft YaHei,PingFang SC,sans-serif;overflow:hidden}::-webkit-scrollbar{width:0;height:0}.screen{flex-direction:column;width:100vw;height:100vh;padding:1.3vw 2.1vw;display:flex}.screen-header{border-bottom:2px solid rgba(255,255,255,.12);flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:1vw;padding-bottom:1vw;display:flex}.screen-header h1{letter-spacing:.2vw;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.2vw;font-weight:700}.screen-body{flex:1;overflow-y:auto}.status-box{justify-content:center;align-items:center;height:60vh;font-size:1.5vw;display:flex}.status-box.error{color:#f87171}.status-box.loading{color:#94a3b8}.data-table{border-collapse:collapse;width:100%;font-size:1.1vw}.data-table th{text-align:left;color:#94a3b8;background:rgba(255,255,255,.06);padding:.8vw .6vw;font-size:1vw;font-weight:600}.data-table td{border-bottom:1px solid rgba(255,255,255,.06);padding:.7vw .6vw}.data-table tr:hover td{background:rgba(255,255,255,.03)}.tag{border-radius:.2vw;padding:.2vw .7vw;font-size:.9vw;font-weight:600;display:inline-block}.tag-success{color:#6ee7b7;background:#065f46}.tag-warning{color:#fbbf24;background:#78350f}.tag-info{color:#60a5fa;background:#1e3a5f}.tag-danger{color:#f87171;background:#7f1d1d}.forbidden{color:#f87171;font-weight:700}
