@font-face{font-family:LINE Seed JP;font-weight:400;font-display:swap;src:url(/fonts/LINESeedJP_OTF_Rg.woff2) format("woff2")}@font-face{font-family:LINE Seed JP;font-weight:700;font-display:swap;src:url(/fonts/LINESeedJP_OTF_Bd.woff2) format("woff2")}@font-face{font-family:Jost;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Jost-var.woff2) format("woff2")}:root{--lc-text: #202020;--lc-primary: #0aa2ad;--lc-primary-deep: #00555b;--lc-cta: #00757e;--lc-bg: #e9f2f9;--lc-surface: #f3f7fa;--lc-card: rgba(255, 255, 255, .8);--lc-panel: rgba(255, 255, 255, .55);--lc-panel-border: #d3e0ec;--lc-pill-active: #c5ecf5;--lc-tint-teal: #e9f8f9;--lc-muted: #556565;--lc-dim: #6f6f6f;--lc-edge: #c4d9e9;--lc-edge-strong: #a9c4d8;--lc-input-border: #7896ac;--lc-edge-teal: #cffcff;--lc-shadow-raised: -4px -4px 4px rgba(255, 255, 255, .45), 4px 4px 10px rgba(196, 217, 233, .55);--lc-shadow-bar: -4px -4px 4px rgba(255, 255, 255, .4), 4px 4px 4px rgba(196, 217, 233, .4);--lc-shadow-pressed: inset 2px 2px 5px rgba(196, 217, 233, .75), inset -2px -2px 4px rgba(255, 255, 255, .5);--lv-caution: #f59e0b;--lv-warning: #ea580c;--lv-alert: #dc2626;--ok-green: #1a7f42;--ok-green-bg: #e3f4e9;--lc-hairline: #c4d9e9;--font-jp: "LINE Seed JP", "Yu Gothic UI", "Meiryo", sans-serif;--font-num: "Jost", "LINE Seed JP", sans-serif}*{box-sizing:border-box;margin:0}body{font-family:var(--font-jp);background:var(--lc-bg);color:var(--lc-text);font-size:14px}button{font-family:inherit;cursor:pointer;border:none;border-radius:10px;padding:8px 14px;font-size:13px}input,select,textarea{font-family:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--lc-input-border);border-radius:10px;background:#fff;color:var(--lc-text)}:where(button,input,select,textarea,[role=button],a,[tabindex]):focus-visible{outline:3px solid var(--lc-primary-deep);outline-offset:2px}.booting{max-width:360px;margin:90px auto;text-align:center;color:var(--lc-muted)}.login-box{max-width:360px;margin:80px auto;background:var(--lc-card);border-radius:10px;padding:26px;border-top:1px solid #fff;border-left:1px solid #fff;box-shadow:var(--lc-shadow-raised);display:flex;flex-direction:column;gap:10px}.login-box h2{font-size:16px;margin-bottom:4px}.login-err{color:var(--lv-alert);font-size:12px}.layout{display:flex;min-height:100vh}.sidebar{width:220px;min-width:220px;background:var(--lc-surface);color:var(--lc-text);border-right:2px solid #fff;box-shadow:var(--lc-shadow-bar);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.logo{padding:18px 16px 14px;border-bottom:1px solid var(--lc-hairline)}.logo-img{width:132px;height:auto;display:block}.logo-mark{font-size:22px;font-weight:800;letter-spacing:1px;color:var(--lc-primary-deep)}.logo-sub{font-size:11px;color:var(--lc-muted);margin-top:6px;letter-spacing:.5px}.menu{flex:1;padding:10px 8px;display:flex;flex-direction:column;gap:4px}.menu-item{display:flex;align-items:center;justify-content:space-between;background:transparent;color:var(--lc-text);text-align:left;padding:11px 12px;border-radius:10px;font-size:14px;letter-spacing:.6px}.menu-item:hover{background:#dcebf5}.menu-item.active{background:var(--lc-pill-active);color:var(--lc-primary-deep);font-weight:700}.menu-badge{background:var(--lv-alert);color:#fff;border-radius:9px;font-size:11px;font-weight:700;padding:1px 8px}.menu-badge.caution{background:var(--lv-caution);color:#452103}.sidebar-foot{padding:12px;border-top:1px solid var(--lc-hairline);display:flex;flex-direction:column;gap:8px}.store-label{font-size:12px;color:var(--lc-muted)}.conn{font-size:11px}.conn.ok{color:var(--ok-green)}.conn.bad{color:var(--lv-warning);font-weight:700}.btn-sound{background:#fff;color:var(--lc-primary-deep);border:1px solid #fff;box-shadow:var(--lc-shadow-raised);font-size:12px}.sound-ok{font-size:11px;color:var(--ok-green)}.btn-logout{background:#ffffff80;color:var(--lc-muted);border:1px solid #fff;box-shadow:var(--lc-shadow-raised)}.main{flex:1;padding:18px 22px;min-width:0}.page-title{font-size:20px;margin-bottom:14px;letter-spacing:1px}.page-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.page-head .page-title{margin-bottom:0}.section-title{font-size:13px;font-weight:700;color:var(--lc-muted);margin:18px 0 8px;letter-spacing:1.3px}.notice{font-size:13px;color:var(--lc-muted);margin-top:10px;line-height:1.7}.notice.err{color:var(--lv-alert)}.notice-inline{font-size:11px;color:var(--lc-dim);font-weight:400}.empty{color:var(--lc-dim);text-align:center;padding:30px 0}.clickable{cursor:pointer}.live-chip{font-size:11px;color:var(--ok-green);background:var(--ok-green-bg);border-radius:9px;padding:2px 8px}.badge{display:inline-block;padding:2px 10px;border-radius:9px;color:#fff;font-size:11px;font-weight:700;white-space:nowrap}.badge.warning{background:#c2410c}.badge.alert{background:var(--lv-alert)}.badge.caution{background:var(--lv-caution);color:#452103}.badge.manual{background:var(--lc-primary-deep);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--lc-primary-deep)}.badge.none{background:transparent;color:var(--lc-dim);padding:2px 0;font-weight:400}.badge.soft{background:transparent;border:1px solid #c2410c;color:#8a2f08;padding:1px 9px;font-weight:700}.dash-grid{display:flex;gap:16px;align-items:flex-start}.dash-left{flex:1;min-width:0}.dash-right{width:340px;min-width:280px;position:sticky;top:12px}.section-title.top{margin-top:0}.trow{display:flex;align-items:center;gap:10px;background:var(--lc-card);border-radius:10px;border-top:1px solid #fff;border-left:1px solid #fff;box-shadow:var(--lc-shadow-raised);padding:12px 14px;margin-bottom:10px}.trow.thead{background:transparent;border:none;box-shadow:none;padding:2px 14px;margin-bottom:2px;font-size:11px;color:var(--lc-dim)}.trow:hover.clickable{outline:2px solid var(--lc-primary)}.trow.clickable:active{box-shadow:var(--lc-shadow-pressed);transform:translateY(1px)}.trow-alert{background:#ffd9d9;border-left:4px solid var(--lv-alert);box-shadow:var(--lc-shadow-raised),0 0 0 2px #dc26268c;animation:pulse-alert 2s ease-in-out 4}@keyframes pulse-alert{0%,to{box-shadow:var(--lc-shadow-raised),0 0 0 2px #dc26268c}50%{box-shadow:var(--lc-shadow-raised),0 0 0 5px #dc262666}}@media (prefers-reduced-motion: reduce){.trow-alert{animation:none}}.c-seat{width:130px;min-width:110px;font-weight:700;font-size:15px}.c-staff{width:110px;min-width:90px;font-size:13px;color:var(--lc-muted)}.c-state{flex:1;min-width:150px;font-size:13px}.c-state .sub{color:var(--lc-dim);font-size:11px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.c-state.active{color:var(--ok-green);font-weight:700}.c-state.idle{color:var(--lc-dim)}.c-state.stale{color:var(--lv-warning);font-weight:700}.c-alert{width:110px;min-width:96px}.c-batt{width:52px;min-width:48px;text-align:right;font-size:13px;color:var(--lc-muted);font-family:var(--font-num);font-weight:500;font-variant-numeric:tabular-nums}.c-batt.batt-low{color:var(--lv-alert);font-weight:700}.inbox{background:var(--lc-panel);border-radius:10px;padding:6px;border:1px solid var(--lc-panel-border)}.inbox-row{padding:10px 12px;border-radius:8px;font-size:13px;border-bottom:1px solid var(--lc-hairline)}.inbox-row:last-child{border-bottom:none}.inbox-row:hover{background:#e4eff7}.inbox-line1{display:flex;align-items:center;gap:8px}.inbox-line1 .seat{font-weight:700}.inbox-line1 .ago{margin-left:auto;font-size:12px;font-weight:700;color:var(--lc-muted);font-family:var(--font-num);font-variant-numeric:tabular-nums}.inbox-line2{color:var(--lc-text);font-size:13px;line-height:1.5;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inbox-line3{font-size:11px;color:var(--lc-muted);margin-top:2px}.empty.small{padding:16px 0;font-size:13px}.stats{display:flex;gap:10px}.stat{flex:1;background:var(--lc-panel);border-radius:10px;text-align:center;padding:10px 6px;border:1px solid var(--lc-panel-border)}.stat-num{font-size:22px;font-weight:700;color:var(--lc-primary-deep);font-family:var(--font-num);font-variant-numeric:tabular-nums}.stat-label{font-size:11px;color:var(--lc-muted)}.gantt{background:var(--lc-panel);border-radius:10px;padding:10px 12px 14px;overflow-x:auto;border:1px solid var(--lc-panel-border)}.gantt-axis,.gantt-row{display:flex;align-items:stretch}.gantt-rowlabel{width:120px;min-width:120px;font-size:12px;padding:8px 6px;color:var(--lc-text);font-weight:700;display:flex;align-items:center}.gantt-axis .gantt-rowlabel{font-weight:400}.gantt-track{position:relative;flex:1;min-height:34px;border-left:1px solid var(--lc-hairline)}.gantt-axis .gantt-track{min-height:22px;border-left:none}.gantt-hour{position:absolute;top:2px;font-size:11px;color:var(--lc-dim);transform:translate(-50%);font-family:var(--font-num);font-variant-numeric:tabular-nums}.gantt-now{position:absolute;top:0;bottom:0;width:2px;background:var(--lv-alert)}.gantt-nowline{position:absolute;top:0;bottom:0;width:1px;background:#f3c1c1}.gantt-row{border-top:1px solid var(--lc-hairline)}.gantt-bar{position:absolute;top:7px;height:20px;border-radius:5px;background:#dce7f0;cursor:pointer;min-width:16px}.gantt-bar:before{content:"";position:absolute;top:-7px;right:-6px;bottom:-7px;left:-6px}.gantt-bar:hover{box-shadow:0 0 0 2px #5a6e8259}.gantt-bar.level-caution{background:#f8d98e}.gantt-bar.level-warning{background:#ee9f66}.gantt-bar.level-alert{background:#d96b6b}.gantt-bar.level-alert:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:5px;pointer-events:none;background:repeating-linear-gradient(45deg,rgba(255,255,255,.35) 0 3px,transparent 3px 6px)}.gantt-bar.ongoing{border:2px dashed var(--ok-green);background-clip:padding-box}.gantt-bar.interrupted{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.5) 0 4px,transparent 4px 8px)}.gantt-bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding:0 5px;font-size:11px;color:var(--lc-text);font-weight:700;overflow:hidden;white-space:nowrap;pointer-events:none}.gantt-tick{position:absolute;top:-7px;transform:translate(-50%);font-size:10px}.gantt-tick:before{content:"";display:block;margin:0 auto;width:4px;height:4px;border-radius:2px;background:#7a1f1f}.gantt-tick.caution:before{background:#b45309}.gantt-tick.warning:before{background:#c2410c}.gantt-tick.alert:before{background:var(--lv-alert);width:6px;height:6px;border-radius:3px}.gantt-tick.manual:before{display:none}.ie{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0}.ie input{flex:1;min-width:90px;padding:5px 8px;font-size:13px;border-radius:8px}.ie button{padding:5px 10px;font-size:12px;white-space:nowrap}.cred-box{display:flex;flex-direction:column;gap:6px;margin:8px 0}.cred-row{display:flex;align-items:center;gap:10px}.cred-key{width:86px;font-size:12px;color:var(--lc-muted);font-weight:700}.cred-val{font-family:var(--font-num);font-size:15px;letter-spacing:.5px;background:var(--lc-surface);border:1px solid var(--lc-edge-strong);border-radius:8px;padding:4px 10px;-webkit-user-select:all;user-select:all}.cred-btn{padding:4px 9px;font-size:12px}.qr-url>summary{font-size:12px;color:var(--lc-primary-deep);cursor:pointer}.qr-url-body{display:flex;align-items:center;gap:8px;margin-top:6px}.qr-url-body code{flex:1;min-width:0;font-size:11px;word-break:break-all;background:var(--lc-surface);border:1px solid var(--lc-edge);border-radius:8px;padding:4px 8px}.ic{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fdecec;border:1px solid #d99a9a;border-radius:10px;padding:8px 10px}.ic-q{flex:1 1 260px;min-width:0;font-size:12px;line-height:1.6;color:#6b1616}.ic-warn{display:block;color:#a51b1b}.ic button{padding:5px 12px;font-size:12px;white-space:nowrap}.retention-card{max-width:560px}.retention-row{display:flex;align-items:center;gap:8px}.retention-row label{font-size:13px;font-weight:700}.retention-row input{width:84px;text-align:right;font-family:var(--font-num)}.retention-row span{font-size:13px;color:var(--lc-muted)}.retention-row button{margin-left:4px}.dp{position:relative;display:inline-flex;align-items:center;gap:6px}.dp-trigger{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--lc-text);border:1px solid var(--lc-input-border);border-radius:10px;padding:7px 12px;font-size:13px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.dp-trigger svg{color:var(--lc-primary-deep)}.dp-step{background:#fff;border:1px solid var(--lc-input-border);border-radius:10px;padding:6px 10px;font-size:15px;line-height:1;color:var(--lc-primary-deep)}.dp-step:disabled{color:var(--lc-dim);opacity:.4;cursor:default}.dp-today-btn{background:var(--lc-tint-teal);color:var(--lc-primary-deep);border-radius:9px;padding:6px 12px;font-size:12px;font-weight:700}.dp-pop{position:absolute;top:calc(100% + 8px);left:0;z-index:30;background:#fff;border-radius:12px;padding:12px;border-top:1px solid #fff;border-left:1px solid #fff;box-shadow:var(--lc-shadow-raised),0 12px 28px #506e8c40}.dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px}.dp-month{font-weight:700;font-size:14px;letter-spacing:1px}.dp-nav{background:var(--lc-surface);border-radius:8px;padding:4px 12px;font-size:14px;line-height:1.4;color:var(--lc-primary-deep)}.dp-nav:disabled{color:var(--lc-dim);opacity:.4;cursor:default}.dp-grid{display:grid;grid-template-columns:repeat(7,34px);gap:2px}.dp-w{text-align:center;font-size:11px;font-weight:700;color:var(--lc-dim);padding:4px 0}.dp-w.sun,.dp-day.sun{color:#b0413c}.dp-w.sat,.dp-day.sat{color:#2c5f8a}.dp-day{height:34px;padding:0;border-radius:9px;background:transparent;color:var(--lc-text);font-size:13px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.dp-day:hover:not(:disabled){background:#dcebf5}.dp-day.today{box-shadow:inset 0 0 0 1px var(--lc-primary)}.dp-day.on{background:var(--lc-primary-deep);color:#fff;font-weight:700}.dp-day:disabled{color:var(--lc-dim);opacity:.35;cursor:default}.sc-time{width:116px;min-width:104px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:13px}.sc-seat{width:130px;min-width:110px;font-weight:700;font-size:15px}.sc-staff{width:110px;min-width:90px;font-size:13px;color:var(--lc-muted)}.sc-dur{width:90px;min-width:70px;font-size:13px;color:var(--lc-muted);font-variant-numeric:tabular-nums}.sc-det{flex:1;min-width:130px}.sc-det .sc-manual{margin-left:8px;font-size:12px;color:#7a1f1f;font-weight:700}.sc-state{width:110px;min-width:90px;font-size:13px}.sc-state.st-active{color:var(--ok-green);font-weight:700}.sc-state.st-ended{color:var(--lc-dim)}.sc-state.st-interrupted{color:var(--lv-warning);font-weight:700}.detail-grid{display:flex;gap:18px;align-items:flex-start}.detail-main{flex:1;min-width:0;background:var(--lc-panel);border-radius:10px;padding:14px 16px;border:1px solid var(--lc-panel-border)}.detail-side{width:300px;min-width:260px;background:var(--lc-panel);border-radius:10px;padding:14px 16px;border:1px solid var(--lc-panel-border);position:sticky;top:12px;max-height:calc(100vh - 40px);overflow-y:auto}.meta{width:100%;border-collapse:collapse;font-size:13px}.meta th{text-align:left;background:var(--lc-surface);padding:6px 10px;width:90px;border:1px solid var(--lc-edge-strong);font-weight:700}.meta td{padding:6px 10px;border:1px solid var(--lc-edge-strong)}.summary-text{white-space:pre-wrap;font-size:13px;line-height:1.8;background:var(--lc-tint-teal);border-radius:10px;padding:10px 12px}.utts{max-height:380px;overflow-y:auto;border:1px solid var(--lc-edge);border-radius:10px;padding:4px;background:#fff}.utt{display:flex;gap:10px;padding:5px 8px;border-radius:6px;font-size:14px}.utt.detected{background:#ffe4e4;box-shadow:inset 3px 0 0 var(--lv-alert)}.utt.detected .cat{color:var(--lv-alert);font-weight:700}.utt .t{color:var(--lc-muted);min-width:58px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.utt .sp{min-width:34px;color:var(--lc-muted)}.utt .sp.sp-named{color:var(--lc-primary-deep);font-weight:700}.utt .tx{flex:1}.utt .cat{color:var(--lc-dim);font-size:11px}.utt.seekable{cursor:pointer}.utt.seekable:hover{background:#e4eff7}.utt.detected.seekable:hover{background:#ffd0d0}.utt-play{color:var(--lc-primary-deep);font-size:11px;opacity:0;align-self:center}.utt.seekable:hover .utt-play{opacity:1}.utt-hit{background:#ffd9d9;color:inherit;border-radius:3px;padding:0 2px;box-shadow:inset 0 -2px 0 var(--lv-alert)}.utt.seekable .utt-hit{cursor:pointer}.utt.seekable .utt-hit:hover{background:#ffbcbc}.utt-mode{margin-left:8px;font-size:11px;padding:2px 8px;border:1px solid var(--lc-border);border-radius:999px;background:#fff;color:var(--lc-primary-deep);cursor:pointer}.utt-mode:hover{background:#eef5fb}.ap{display:flex;align-items:center;gap:8px;background:var(--lc-card);border-radius:10px;padding:8px 12px;border-top:1px solid #fff;border-left:1px solid #fff;box-shadow:var(--lc-shadow-raised)}.ap-play{width:38px;height:38px;border-radius:19px;padding:0;background:var(--lc-cta);color:#fff;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center}.ap-skip,.ap-rate{background:#fff;color:var(--lc-primary-deep);padding:6px 10px;font-size:12px;font-weight:700;border:1px solid #fff;box-shadow:var(--lc-shadow-raised)}.ap-rate{min-width:52px}.ap-time{font-size:12px;color:var(--lc-muted);font-family:var(--font-num);font-variant-numeric:tabular-nums}.ap-seek{flex:1;min-width:80px;accent-color:var(--lc-cta);cursor:pointer}.respond{margin-top:16px;border-top:1px solid var(--lc-hairline);padding-top:12px}.respond .choices{display:flex;gap:14px;margin-bottom:8px}.respond input[type=text]{width:100%;margin-bottom:8px}.respond-actions{display:flex;gap:8px;align-items:center}.respond-actions input{flex:1;margin-bottom:0}.timeline{display:flex;flex-direction:column}.tl-item{display:flex;gap:8px;padding:6px 0;position:relative}.tl-item:before{content:"";position:absolute;left:51px;top:0;bottom:0;width:2px;background:var(--lc-hairline)}.tl-time{min-width:40px;font-size:11px;color:var(--lc-muted);padding-top:2px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.tl-dot{width:10px;height:10px;border-radius:5px;background:var(--lc-edge);margin-top:4px;z-index:1}.tl-detect .tl-dot{background:var(--lv-warning)}.tl-detect.level-alert .tl-dot{background:var(--lv-alert)}.tl-manual .tl-dot{background:var(--lc-primary)}.tl-mg .tl-dot{background:var(--ok-green)}.tl-end .tl-dot,.tl-start .tl-dot{background:var(--lc-muted)}.tl-body{flex:1;font-size:12px}.tl-label{display:block;font-weight:700;color:var(--lc-text)}.tl-detail{display:block;color:var(--lc-muted);margin-top:1px}.add-row{display:flex;gap:8px;margin-bottom:10px;max-width:480px}.add-row input{flex:1}.m-list{background:var(--lc-panel);border-radius:10px;padding:8px;max-width:760px;border:1px solid var(--lc-panel-border)}.m-row{display:flex;align-items:center;gap:8px;padding:8px;border-bottom:1px solid var(--lc-hairline)}.m-row:last-child{border-bottom:none}.m-row:hover{background:#e4eff7;border-radius:8px}.m-row.off .s-name,.m-row.revoked .d-name,.m-row.revoked .d-model,.m-row.revoked .d-ver,.m-row.revoked .d-batt,.m-row.revoked .d-seen{color:var(--lc-dim)}.m-row .vp{font-size:11px;color:var(--lc-muted);white-space:nowrap}.m-row button{padding:5px 9px;font-size:12px}.icon-btn{flex:0 0 auto;width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--lc-edge);border-radius:8px;box-shadow:none;color:var(--lc-primary-deep)}.icon-btn:hover{border-color:var(--lc-primary-deep);box-shadow:var(--lc-shadow-raised)}.icon-btn.danger{color:#a51b1b;border-color:#e3bcbc}.icon-btn.danger:hover{background:#fdecec;border-color:var(--lv-alert);box-shadow:none}.icon-btn:disabled{background:#f2f6f9;border-color:var(--lc-edge);color:var(--lc-edge-strong)}.ic-svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.staff-list{max-width:820px}.staff-list .m-row{display:grid;grid-template-columns:minmax(0,1fr) 148px 244px;gap:8px;align-items:center}.staff-list .m-row>span{min-width:0}.staff-list .thead .s-name{padding-left:36px}.s-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-vp-src{display:block;font-size:11px;color:var(--lc-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-name{font-size:14px;display:flex;align-items:center;gap:8px;min-width:0}.s-off-tag{flex:0 0 auto;font-size:11px;font-weight:700;color:var(--lc-dim);border:1px solid var(--lc-edge-strong);border-radius:8px;padding:0 6px}.s-vp{font-size:12px}.s-act{display:grid;grid-template-columns:100px 92px 28px;gap:8px;justify-self:end;align-items:center}.staff-list .s-confirm{grid-column:1 / -1;padding-top:6px}.vp-summary{margin:0 0 10px}.callout{background:var(--lc-tint-teal);border:1px solid var(--lc-primary);border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:13px;line-height:1.8;color:var(--lc-text);max-width:820px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn-primary{background:var(--lc-cta);color:#fff;font-weight:700;border-top:1px solid #fff;border-left:1px solid #fff;border-bottom:1px solid var(--lc-edge-teal);border-right:1px solid var(--lc-edge-teal);box-shadow:var(--lc-shadow-raised)}.btn-danger{background:transparent;color:#a51b1b;border:1px solid #d99a9a;box-shadow:none}.btn-danger:hover{background:#fdecec;border-color:var(--lv-alert)}.btn-gray{background:#fff;color:var(--lc-primary-deep);border:1px solid #fff;box-shadow:var(--lc-shadow-raised)}.btn-primary:active,.btn-gray:active,.btn-sound:active,.btn-logout:active{box-shadow:var(--lc-shadow-pressed);transform:translateY(1px)}button:disabled{opacity:1;cursor:default;background:#dbe6ee;color:#54646d;border-color:transparent;box-shadow:none}.setup-grid{display:flex;gap:14px;flex-wrap:wrap}.setup-card{flex:1;min-width:300px;max-width:420px;background:var(--lc-panel);border-radius:10px;padding:14px 16px;border:1px solid var(--lc-panel-border);display:flex;flex-direction:column;gap:8px}.setup-step{font-weight:700;font-size:13px;color:var(--lc-primary-deep)}.setup-qr{align-self:center}.apk-url-row{display:flex;gap:6px}.apk-url-row input{flex:1;font-size:12px}.activation-code{font-size:24px;font-weight:700;letter-spacing:2px;text-align:center;background:var(--lc-surface);border:1px dashed var(--lc-input-border);border-radius:10px;padding:10px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.m-list.wide{max-width:980px}.m-row.thead{border:none;font-size:11px;color:var(--lc-dim);padding:2px 8px}.m-row.thead:hover{background:transparent}.d-name{flex:1.2;display:flex;align-items:center;gap:6px;font-size:13px}.d-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-list.wide .thead .d-name{padding-left:49px}.d-seat{flex:.8;font-size:13px}.d-model{flex:1;font-size:12px;color:var(--lc-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.d-ver{display:flex;align-items:center;gap:6px;font-size:12px}.d-ver .ver-code{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--lc-muted)}.d-ver .ver-ok{font-size:11px;color:var(--lc-dim)}.d-batt{text-align:right;font-size:13px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.d-seen{font-size:12px;color:var(--lc-muted)}.d-act{display:flex;gap:6px;flex-wrap:wrap}.m-list.wide .m-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.1fr) 158px 48px 90px 84px;gap:8px;align-items:center}.m-list.wide .m-row>span{min-width:0}.m-list.wide .d-seat select{width:100%}.m-list.wide .d-confirm{grid-column:1 / -1;padding-top:6px}.dot{width:9px;height:9px;border-radius:5px;display:inline-block}.dot.on{background:var(--ok-green)}.dot.idle{background:var(--lc-edge)}.dot.off{background:var(--lv-alert)}@media (max-width: 1279px){.dash-grid{flex-direction:column}.dash-right{width:auto;min-width:0;position:static}.main{padding:14px 16px}}@media (max-width: 1100px){.sidebar{width:176px;min-width:176px}}.diag-list{max-width:980px;max-height:340px;overflow-y:auto}.m-row.diag-row{display:flex;gap:10px;align-items:flex-start}.m-row.diag-row.error{background:#ffe9e9}.dg-time{flex:0 0 auto;width:104px;font-size:12px;color:var(--lc-muted);font-family:var(--font-num);font-variant-numeric:tabular-nums;padding-top:2px}.dg-seat{flex:0 0 auto;width:120px;font-size:13px;font-weight:700;padding-top:2px}.m-row.diag-row.unseen{border-left:3px solid var(--lv-alert);padding-left:5px}.dg-new{color:var(--lv-alert);font-size:9px;margin-right:4px;vertical-align:1px}.dg-new-count{margin-left:8px}.dg-actions{display:flex;justify-content:flex-end;margin-bottom:6px}.dg-what{flex:1 1 auto;min-width:0;display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.dg-what>.badge{flex:0 0 auto}.dg-msg{flex:1 1 160px;min-width:0;font-size:13px;color:var(--lc-muted);overflow-wrap:anywhere}.review-reasons{margin:6px 0 0;padding-left:18px}.review-reasons li{margin-bottom:4px}.sub-block{margin-top:10px}.sub-block>summary{font-size:12px;color:var(--lc-muted);cursor:pointer}.seg-boundary{margin:8px 4px;padding:5px 10px;border-radius:6px;background:#fff4e5;border-left:3px solid var(--lv-caution);font-size:12px;color:#7a4a00}.sc-review{margin-left:6px;padding:1px 7px;border-radius:9px;background:#fff4e5;border:1px solid var(--lv-caution);color:#7a4a00;font-size:11px;font-weight:700;white-space:nowrap}.jg-meta{margin:-6px 0 12px}.jg-weights{display:flex;align-items:center;gap:14px}.jg-weights input[type=range]{flex:1;min-width:120px}.jg-weight-label{display:flex;flex-direction:column;gap:1px;flex:0 0 auto;width:116px;font-size:13px;font-weight:700;white-space:nowrap}.jg-weight-label.right{text-align:right}.jg-weight-sub{font-size:11px;font-weight:400;color:var(--lc-muted)}.jg-weight-pct{font-size:17px;color:var(--lc-primary-deep);font-family:var(--font-num);font-variant-numeric:tabular-nums}.jg-threshold{display:flex;align-items:center;gap:10px;margin-bottom:10px}.jg-threshold label{flex:1;font-size:13px;font-weight:700}.jg-th-hint{display:block;font-size:11px;font-weight:400;color:var(--lc-muted)}.jg-th-input{display:flex;align-items:center;gap:4px;flex:0 0 auto}.jg-th-input input{width:74px;text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums}.jg-step{width:32px;padding:6px 0;font-size:14px;line-height:1;text-align:center}.jg-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.jg-add input[type=text]{flex:1;min-width:160px}.jg-add-label{font-size:12px;color:var(--lc-muted);font-weight:700}.jg-words{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.jg-word{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;border-radius:9px;font-size:13px;font-weight:700;background:#ffe4e4;border:1px solid var(--lv-alert);color:#7a1010}.jg-word.warning{background:#fff0e5;border-color:#c2410c;color:#7a3a00}.jg-word-level{font-size:11px;font-weight:400;opacity:.8}.jg-word-del{border:none;background:transparent;cursor:pointer;font-size:15px;line-height:1;color:inherit;padding:0 2px}.jg-word-del:hover{opacity:.6}.jg-actions{display:flex;align-items:center;gap:10px;margin-top:16px;padding:10px;border-radius:10px;border:1px solid transparent}.jg-actions.unsaved{border-color:var(--lv-caution);background:#fff8ec}.jg-dirty{flex:1;font-size:13px;font-weight:700;color:#7a4a00}.audio-actions{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.store-select select{max-width:160px;padding:4px 6px;border-radius:8px;border:1px solid var(--line, #d5dee8);background:var(--panel, #fff);font-size:12px}.dl-box{margin:8px 0;padding:10px 12px;border:1px solid var(--line, #d5dee8);border-radius:10px;background:var(--panel, #f6f9fc);display:flex;flex-direction:column;gap:8px;max-width:560px}.dl-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dl-row input[type=text],.dl-row input[type=password]{flex:1;min-width:200px}.account-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;max-width:900px}.account-form input[type=email]{min-width:240px}table.accounts{border-collapse:collapse;width:100%;max-width:1100px;font-size:13px}table.accounts th,table.accounts td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--line, #e3eaf2)}table.accounts tr.disabled td{opacity:.55}table.accounts .badge{margin-left:6px}.account-ops{display:flex;gap:6px;flex-wrap:wrap}.notice.ok{color:var(--ok-green, #2c7a4b)}.empty-guide{padding:28px 24px;border:1px dashed var(--line, #c9d6e2);border-radius:12px;background:var(--panel, #f6f9fc);max-width:560px}.empty-guide p{margin:0 0 10px;font-size:14px;line-height:1.7;color:var(--muted, #5b6b7a)}.empty-guide p:first-child{font-weight:700;font-size:15px;color:var(--text, #24323f)}.empty-guide .btn-primary{margin-top:4px}
