:root{--navy:#0A0A4A;--navy2:#1C1C66;--red:#890405;--ink:#252423;--grey:#605E5C;--line:#D8D8D8;--soft:#EEEEF2;--bg:#F3F3F3;--ok:#107C10;--okbg:#DFF6DD;--okfg:#0E5C0E;--warnbg:#FFF4CE;--warnfg:#7A5A00;--bad:#C50F1F}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font:15px "Segoe UI",Roboto,system-ui,sans-serif;overscroll-behavior:none}
body{display:flex;flex-direction:column;overflow:hidden;user-select:none}
#app{flex:1;display:flex;flex-direction:column;min-height:0}
#wedge{position:fixed;left:0;top:0;width:2px;height:2px;opacity:0;pointer-events:none;border:0;padding:0;margin:0;background:transparent;color:transparent;caret-color:transparent;font-size:16px;outline:none;-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer}
.top{background:var(--navy);border-bottom:4px solid var(--red);padding:10px 10px 10px 14px;display:flex;align-items:center;gap:8px;flex:none;padding-top:max(10px,env(safe-area-inset-top))}
.top .t{flex:1;min-width:0;display:flex;flex-direction:column}
.top .t b{color:#fff;font-size:17px;font-weight:700;line-height:1.15;white-space:normal;overflow-wrap:break-word}
.top .logo{width:136px;max-width:100%;height:auto;border-radius:9px;display:block;align-self:flex-start;margin-bottom:4px}
.top .t span{color:#C9C9E0;font-size:12px;display:block;white-space:normal;overflow-wrap:break-word}
.top .t span .dot{margin-right:5px;vertical-align:1px}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#4CC26A}
.dot.off{background:#E8A33D}
.iconbtn{width:44px;height:44px;border:0;background:none;display:flex;align-items:center;justify-content:center;border-radius:22px;flex:none}
.who{background:var(--navy2);color:#fff;border:1px solid #3A3A85;border-radius:22px;height:44px;padding:0 12px 0 6px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;flex:none;max-width:44%}
.who .wn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.who i{width:32px;height:32px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-size:12px;font-style:normal}
.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border-bottom:1px solid var(--line);flex:none}
.tab{height:58px;border:0;background:#fff;font-size:14px;font-weight:700;color:var(--grey);border-bottom:3px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.tab.on{color:var(--navy)}
.tab small{font-size:12px;font-weight:400;color:var(--grey)}
.tab .d{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:6px}
.scroll{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:10px;text-align:left;color:var(--ink);width:100%}
.card .h{display:flex;align-items:center;gap:8px}
.card .h .tt{flex:1;min-width:0;display:flex;flex-direction:column}
.card .h .tt b{font-size:17px;font-weight:800;color:var(--navy)}
.card .h .tt span{font-size:12px;color:var(--grey)}
.pill{font-size:12px;font-weight:700;border-radius:12px;padding:4px 10px;white-space:nowrap}
.pill.go{background:var(--navy);color:#fff}.pill.ok{background:var(--okbg);color:var(--okfg)}.pill.wait{background:var(--warnbg);color:var(--warnfg)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:14px;padding:3px 10px 3px 6px;font-size:12px;font-weight:600}
.sw{width:12px;height:12px;border-radius:3px;display:inline-block;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);flex:none}
.bar{height:8px;background:#E6E6EF;border-radius:4px;overflow:hidden}
.bar>div{height:100%;background:var(--navy)}
.prog{font-size:12px;font-weight:600}
.checks{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--soft);padding-top:8px}
.ck{display:flex;align-items:center;gap:8px;font-size:13px}
.ck i{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;font-style:normal}
.ck i.y{background:var(--okbg);color:var(--okfg)}.ck i.n{background:var(--warnbg);color:var(--warnfg)}
.ck span{flex:1}.ck em{color:var(--grey);font-style:normal}
.foot{font-size:12px;color:var(--grey);text-align:center;padding:4px 12px}
.empty{color:var(--grey);text-align:center;padding:28px 16px;font-size:14px}
.panel{border-radius:14px;padding:16px;min-height:210px;display:flex;flex-direction:column;justify-content:center;gap:6px;text-align:center;flex:none}
.panel .tag{font-size:13px;font-weight:600;letter-spacing:1px;opacity:.9}
.panel .word{font-weight:800;line-height:1.05;letter-spacing:1px;font-size:58px}
.panel [data-fit]{display:block;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:100%}
.panel .line[data-fit]{text-overflow:ellipsis;line-height:1.2}
.panel .line[data-fit].wrap2{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.panel .line{font-size:17px;font-weight:600}
.panel .code{font-size:14px;opacity:.95;font-family:Consolas,"Roboto Mono",monospace}
.panel .bp{font-size:20px;line-height:1.2}
.panel .bp b{font-size:1em;font-weight:800;letter-spacing:1px}.panel .bp span{font-size:.9em;font-weight:700;margin-left:14px}
.big .panel .word{font-size:72px}.big .panel .line{font-size:20px}.big .panel .bp{font-size:24px}
.high{background:#FFD23F;color:#2B2100;border-radius:12px;padding:10px 14px;display:flex;align-items:center;gap:12px;border:2px solid #2B2100;flex:none}
.high div{display:flex;flex-direction:column;flex:1}.high b{font-size:17px;font-weight:800}.high span{font-size:13px;font-weight:600}
.box{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;flex:none}
.box .bh{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.box .bh b{font-size:14px;color:var(--navy)}.box .bh span{font-size:12px;color:var(--grey)}
.seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.seg button{height:36px;border-radius:8px;font-size:13px;font-weight:700;border:1px solid var(--navy);background:#fff;color:var(--navy)}
.seg button.on{background:var(--navy);color:#fff;border:0}
.brow{display:flex;flex-direction:column;gap:4px}
.brow .r{display:flex;align-items:center;gap:8px;font-size:14px}
.brow .r b{color:var(--navy);width:70px}.brow .r span{color:var(--grey);flex:1}.brow .r em{font-style:normal;font-weight:600}
.brow .bar{height:6px}
.prow{display:flex;flex-direction:column;gap:5px;border:0;border-top:1px solid var(--soft);background:#fff;padding:8px 0 6px;text-align:left;width:100%}
.prow .r{display:flex;align-items:center;gap:10px;width:100%}
.av{width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:none}
.prow .r b{font-size:15px;color:var(--navy);flex:1}.prow .r em{font-size:15px;font-weight:700;font-style:normal}
.stack{display:flex;height:8px;border-radius:4px;overflow:hidden}
.hist{display:flex;align-items:center;gap:10px;min-height:42px;border-top:1px solid var(--soft)}
.hist .hd{width:10px;height:10px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)}
.hist .ht{display:flex;flex-direction:column;flex:1;min-width:0}
.hist .ht b{font-size:14px;font-weight:600}.hist .ht span{font-size:12px;color:var(--grey);font-family:Consolas,"Roboto Mono",monospace}
.hi{font-size:11px;font-weight:800;background:#FFD23F;color:#2B2100;border-radius:10px;padding:2px 8px}
.small{height:36px;padding:0 14px;border:1px solid var(--line);background:#fff;border-radius:18px;font-size:13px;font-weight:600;color:var(--navy)}
.bottom{background:#fff;border-top:1px solid var(--line);padding:10px 12px;padding-bottom:max(12px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:none}
.btn{height:52px;border-radius:10px;font-size:16px;font-weight:700}
.btn.o{border:2px solid var(--navy);background:#fff;color:var(--navy)}
.btn.f{border:0;background:var(--navy);color:#fff}
.btn.g{border:0;background:var(--ok);color:#fff}
.btn.r{border:2px solid var(--bad);background:#fff;color:var(--bad)}
.btn.w{width:100%}
.link{border:0;background:none;color:var(--navy);font-weight:600;font-size:13px;text-decoration:underline;padding:6px}
.over{position:fixed;inset:0;background:rgba(10,10,74,.55);display:flex;align-items:flex-end;z-index:20}
.over .s{background:#fff;width:100%;border-radius:18px 18px 0 0;padding:20px 16px;padding-bottom:max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;max-height:90vh;overflow-y:auto}
.over .s h2{margin:0;font-size:20px;color:var(--navy)}
.over .s p{margin:0;font-size:14px}
.warn{font-size:13px;background:var(--warnbg);color:var(--warnfg);border-radius:8px;padding:8px 10px}
.pick{height:52px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:16px;font-weight:600;display:flex;align-items:center;gap:12px;padding:0 12px;text-align:left}
.pick.on{border:2px solid var(--navy)}
.field{height:48px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:17px;width:100%;color:var(--navy);user-select:text}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.brk{position:fixed;inset:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center;z-index:15}
.brk h2{margin:0;font-size:30px}.brk p{margin:0;color:#C9C9E0}
.brk .btn{background:#fff;color:var(--navy);border:0;height:56px;width:100%;margin-top:12px}
#toast{position:fixed;left:16px;right:16px;top:86px;background:var(--ok);color:#fff;border-radius:10px;padding:12px 14px;font-weight:700;text-align:center;display:none;z-index:30}
#toast.bad{background:var(--bad)}
.sec{display:flex;flex-direction:column;gap:6px}
.sec>b{font-size:12px;color:var(--grey);letter-spacing:1px;padding:0 4px}
.grp{background:#fff;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column}
.row{display:flex;align-items:center;gap:10px;min-height:52px;padding:6px 14px;border-bottom:1px solid var(--soft)}
.row:last-child{border-bottom:0}
.row .l{flex:1;display:flex;flex-direction:column}.row .l span{font-size:12px;color:var(--grey)}
.row .v{font-weight:600;color:var(--navy);text-align:right}
.row input[type=checkbox]{width:22px;height:22px;accent-color:var(--navy)}
.badge{font-size:13px;font-weight:700;border-radius:12px;padding:3px 10px}
.holds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 12px}
.holds button{height:44px;border-radius:10px;font-weight:700;border:1px solid var(--line);background:#fff;color:var(--navy)}
.holds button.on{border:0;background:var(--navy);color:#fff}
.ver{text-align:center;font-size:12px;color:var(--grey);padding:6px}

.fullv{flex:1;display:flex;flex-direction:column;gap:10px;padding:10px;padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom));min-height:0;position:relative;background:var(--bg)}
.fullv .panel{flex:1;min-height:0}
.panel.pf{padding:0;gap:0;justify-content:space-between;overflow:hidden}
.pf .mid{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;padding:12px 12px;overflow:hidden}
.pf .mid>:first-child{margin-top:auto}.pf .mid>:last-child{margin-bottom:auto}
.hv{position:relative;flex:none;display:flex;flex-direction:column;align-items:stretch;text-align:center;padding:7px 76px;line-height:1.15;overflow:hidden}
.hv b{display:block;white-space:nowrap;overflow:hidden;font-weight:800;letter-spacing:.5px}
.hv span{display:block;white-space:nowrap;overflow:hidden;font-weight:400}
.hv i{position:absolute;top:50%;transform:translateY(-50%);width:26px;height:26px;display:block}
.hv i svg{width:100%;height:100%;display:block}
.hv i.l{left:44px}.hv i.r{right:44px}
.fx{position:absolute;top:max(14px,env(safe-area-inset-top));right:14px;width:40px;height:40px;border-radius:20px;border:0;background:rgba(0,0,0,.35);color:#fff;font-size:18px;line-height:40px;padding:0;z-index:3}
.fx.rb{right:auto;left:14px;display:flex;align-items:center;justify-content:center;line-height:1}
/* Rotate the picture, not the phone: the device stays portrait, the Full View is turned 90 degrees */
.fullv.r1,.fullv.r3{position:fixed;left:0;top:0;width:var(--vh,100vh);height:var(--vw,100vw);transform-origin:0 0;z-index:5;padding-top:10px;padding-bottom:10px}
.fullv.r1{transform:translateX(var(--vw,100vw)) rotate(90deg)}
.fullv.r3{transform:translateY(var(--vh,100vh)) rotate(-90deg)}
.fullv.r1 .fx,.fullv.r3 .fx{top:14px}
.upd{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#FFD23F;color:#2B2100;padding:8px 14px;font-weight:700}

.info{flex:none;width:34px;height:34px;border-radius:17px;border:1.5px solid #C8C6C4;background:#fff;display:flex;align-items:center;justify-content:center;padding:0}
.isum{font-size:14px;color:var(--grey);margin:2px 0 8px}.isum b{color:#0A0A4A}
.ilist{max-height:46vh;overflow:auto}
.ib{margin:0 0 12px}.ih{display:flex;justify-content:space-between;gap:10px;font-size:15px}.ih b{color:#0A0A4A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ih span{color:var(--grey);white-space:nowrap}
.ibar{display:flex;height:16px;border-radius:8px;overflow:hidden;background:#E1DFDD;margin:5px 0 4px}.ibar i{display:block;min-width:3px;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.25)}
.ichips{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--grey)}.ichips i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.3)}

/* ---- credits (3.0) ---- */
.card.tap{cursor:pointer}
.crbtn{position:relative;flex:none;width:34px;height:34px;border-radius:17px;border:1.5px solid #C8C6C4;background:#fff;color:#0A0A4A;display:flex;align-items:center;justify-content:center;padding:0}
.crbtn.has{border-color:#E8C4C4;background:#FBE9E9;color:#890405}
.crbtn em{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#890405;color:#fff;font:700 11px/18px system-ui,sans-serif;font-style:normal;text-align:center}
.crbtn.top{width:40px;height:40px;border-radius:20px;border-color:rgba(255,255,255,.5);background:transparent;color:#fff;margin-right:6px}
.crbtn.top.has{background:#FBE9E9;color:#890405;border-color:#FBE9E9}
.crord{font:600 13px Consolas,monospace;color:var(--grey)}
.crseg{display:flex;flex-wrap:wrap;gap:6px}
.crseg button{flex:1 1 auto;min-height:44px}
.cre{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:4px 4px 4px 12px;min-height:52px}
.cre span{flex:1;font-size:14px}.cre i{font-style:normal;font-size:12px;font-weight:700;color:var(--grey);margin-left:4px}
.cre.off span{color:var(--grey);text-decoration:line-through}
.cre .small{min-height:44px;padding:0 14px}
.crv{color:#890405;border-color:#E8C4C4!important}
.crd{color:var(--grey)}
.crnone{font-size:14px;color:var(--grey);padding:6px 0}
.crtot{font-size:16px;font-weight:800;color:#890405;padding:4px 2px}
.crstep{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:4px}
.crstep>span{font-size:14px;font-weight:600;color:var(--grey)}
.crstep>div{display:flex;align-items:center;gap:16px}
.crstep button{width:64px;height:64px;border:1px solid #C3C6D6;border-radius:14px;background:#fff;font-size:28px;font-weight:600;color:var(--navy)}
.crstep b{min-width:80px;text-align:center;font-size:44px;font-weight:800}
.crprev{background:#F4F5F8;border-radius:10px;padding:10px 12px;text-align:center;font-size:13px;color:var(--grey)}
.crprev b{color:#890405;font-size:15px}
.crhint{color:var(--grey)}
.crwarn{display:flex;flex-direction:column;gap:6px;background:#FDF0F0;border:1px solid #E8C4C4;border-radius:10px;padding:12px}
.crwarn b{color:#7A1A1A;font-size:16px}.crwarn span{font-size:15px;line-height:1.4}
.btn.rf{border:0;background:#890405;color:#fff}
.btn.rf[disabled]{opacity:.5}

/* ---- move buttons (3.2) ---- */
.pill.proc{background:#FFEDD5;color:#9A3412}
.btn.mv{height:46px;font-size:15px}

.ckbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 10px 0;padding:10px 14px;border:2px solid var(--navy);border-radius:12px;background:#fff;color:var(--navy);font-weight:700;font-size:14px;text-decoration:none;flex:none}.ckbar b{background:var(--navy);color:#fff;border-radius:16px;padding:6px 14px;font-size:13px}.ckbar.on{background:#DFF6DD;border-color:var(--ok);color:#0E5C0E}.ckbar.on b{background:var(--ok)}
.scroll .hv{border-radius:12px;margin:6px 10px;padding:9px 64px}.scroll .hv b{font-size:22px}.scroll .hv span{font-size:15px;font-weight:600}.scroll .hv i.l{left:20px}.scroll .hv i.r{right:20px}
.dots{display:flex;gap:14px;justify-content:center;margin:14px 0 18px}.dots i{width:16px;height:16px;border-radius:50%;border:2px solid #0A0A4A}.dots i.f{background:#0A0A4A}
.kp{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kp button{height:58px;font-size:24px;font-weight:700;border-radius:12px;border:1px solid #C8C6C4;background:#fff;color:#0A0A4A}.kp button.x{font-size:15px;font-weight:600;color:#605E5C}

/* idle phase 1: full-screen Start Scanning with a moving laser line */
.idle1{position:fixed;inset:0;z-index:30;background:radial-gradient(circle at 50% 38%,#fff 0,#F1F2FA 70%,#E4E6F4 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;overflow:hidden;padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom)}
.idle1{background:radial-gradient(circle at 50% 40%,#fff 0,#EEF0FA 75%,#E1E4F3 100%)}
.idle1::before{content:'';position:absolute;inset:4vmin;border-radius:12vmin;background:linear-gradient(180deg,#16307F,#0A1A52);box-shadow:0 1.4vmin 4vmin rgba(10,10,74,.35)}
.idle1 .scr{position:absolute;inset:7.5vmin;background:#fff;border-radius:7vmin;display:flex;align-items:center;justify-content:center;overflow:hidden}
.idle1 .mid{display:flex;flex-direction:column;align-items:center;gap:6vh;width:100%}
.idle1 .lg{width:min(70vw,calc(30vh * 1.98));max-width:none;height:auto}
.idle1 .bc{width:min(54vw,calc(18vh * 2));height:auto}
.idle1 .bk{position:absolute;width:15vmin;height:15vmin;border:1.8vmin solid #1E6FE8;border-radius:0}
.idle1 .bk.a{left:7vmin;top:7vmin;border-right:0;border-bottom:0;border-top-left-radius:4vmin}.idle1 .bk.b{right:7vmin;top:7vmin;border-left:0;border-bottom:0;border-top-right-radius:4vmin}
.idle1 .bk.c{left:7vmin;bottom:7vmin;border-right:0;border-top:0;border-bottom-left-radius:4vmin}.idle1 .bk.d{right:7vmin;bottom:7vmin;border-left:0;border-top:0;border-bottom-right-radius:4vmin}
.idle1 .sp{position:absolute;left:50%;width:24vmin;height:1.6vmin;margin-left:-12vmin;border-radius:1vmin;background:#9DB4E8}
.idle1 .sp.t{top:2.4vmin}.idle1 .sp.u{bottom:2.4vmin}
.idle1 .i1t{font-size:clamp(28px,8vw,44px);font-weight:800;color:var(--navy);letter-spacing:.5px}
.idle1 .i1s{font-size:clamp(14px,4vw,18px);color:#605E5C}
.idle1 .lz{position:absolute;left:0;right:0;top:10%;height:3px;background:#E0161B;box-shadow:0 0 12px 3px rgba(224,22,27,.6),0 -26px 40px 6px rgba(224,22,27,.14);animation:lzmove 2.4s ease-in-out infinite alternate;z-index:1;pointer-events:none}
@keyframes lzmove{from{top:10%}to{top:90%}}
@media (prefers-reduced-motion:reduce){.idle1 .lz{animation:none;top:50%}}
/* idle phase 2: live board */
.lbd{position:fixed;inset:0;z-index:30;background:#F3F4FA;display:flex;flex-direction:column}
.lbh{background:var(--navy);color:#fff;padding:14px 16px 10px;border-bottom:4px solid var(--red);display:flex;flex-direction:column;gap:2px}
.lbh b{font-size:22px}.lbh span{font-size:13px;opacity:.8}
.lbc{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lbc i{font-style:normal;font-size:12px;font-weight:700;padding:3px 9px;border-radius:12px;background:#fff;color:#333}
.lbc i.s-scan{background:#DCEBFF;color:#0A4FB8}.lbc i.s-on{background:var(--okbg);color:var(--okfg)}.lbc i.s-brk{background:var(--warnbg);color:var(--warnfg)}.lbc i.s-off{background:#E6E6EC;color:#555}
.lbl{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.lbr{position:relative;display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 10px 8px 16px;border:1px solid var(--line);background:#fff;border-radius:12px;text-align:left;overflow:hidden}
.lbr .lb-bar{position:absolute;left:0;top:0;bottom:0;width:6px;background:#9A9AA8}
.lbr.s-scan .lb-bar{background:#0A6CFF}.lbr.s-on .lb-bar{background:var(--ok)}.lbr.s-brk .lb-bar{background:#C98A00}
.lbr .lb-av{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex:none}
.lbr .lb-bn{flex:1;min-width:0;display:flex;flex-direction:column}.lbr .lb-bn b{font-size:17px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbr .lb-bn em{font-style:normal;font-weight:600;color:#605E5C;font-size:13px}.lbr .lb-bn small{font-size:12px;color:#605E5C}
.lbr .lb-pill{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700;padding:5px 10px;border-radius:14px;background:#E6E6EC;color:#555;flex:none}
.lbr.s-scan .lb-pill{background:#DCEBFF;color:#0A4FB8}.lbr.s-on .lb-pill{background:var(--okbg);color:var(--okfg)}.lbr.s-brk .lb-pill{background:var(--warnbg);color:var(--warnfg)}
.lbr.s-off{opacity:.8}
.lbf{display:flex;gap:8px;padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}.lbf .btn{flex:1;height:46px}
.lb-pill svg{width:14px;height:14px}

.idle1 .scr{box-shadow:inset 0 0 0 .5vmin rgba(10,10,74,.08)}
.idle1 .lg,.idle1 .bc{image-rendering:auto}
