.clapp{--bg:#0b0f14;--panel:#121924;--panel2:#0e1520;--line:#1f2c3d;--txt:#d7e1ec;--dim:#6b7c90;--faint:#3d4c5e;--grn:#3ddc84;--grn-dim:#1d5c3c;--amb:#ffb347;--amb-dim:#7a5420;--red:#ff5252;--red-dim:#5c1d1d;--blu:#4da3ff}.clapp *{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}.clapp{background:var(--bg);color:var(--txt);z-index:40;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Segoe UI,system-ui,sans-serif;position:fixed;inset:4rem 0 0;overflow:hidden}.clapp #app{flex-direction:column;max-width:760px;height:100%;margin:0 auto;display:flex;position:relative}.clapp .mono{font-family:Consolas,Cascadia Mono,monospace}.clapp button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.clapp button:active{transform:translateY(1px)}.clapp #config{flex-direction:column;height:100%;display:flex;overflow:hidden}.clapp #config .scroll{flex:1;padding:18px 18px 120px;overflow-y:auto}.clapp .brand{border-bottom:1px solid var(--line);margin-bottom:16px;padding:6px 0 14px}.clapp .brand h1{letter-spacing:.12em;color:var(--amb);font-size:22px;font-weight:600}.clapp .brand .sub{color:var(--dim);letter-spacing:.2em;text-transform:uppercase;margin-top:2px;font-size:12px}.clapp .sect{margin-bottom:22px}.clapp .sect h2{letter-spacing:.25em;text-transform:uppercase;color:var(--dim);margin-bottom:10px;font-size:11px}.clapp .card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.clapp .row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.clapp .row:last-child{border-bottom:none}.clapp .row .lbl{font-size:15px}.clapp .row .hint{color:var(--dim);margin-top:2px;font-size:12px}.clapp .seg{background:var(--panel2);border:1px solid var(--line);border-radius:8px;flex-shrink:0;display:flex;overflow:hidden}.clapp .regsel{background:var(--panel2);border:1px solid var(--line);color:var(--txt);letter-spacing:.05em;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M0 0l5 6 5-6z' fill='%236b7c90'/></svg>");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;flex-shrink:0;padding:8px 28px 8px 12px;font-size:13px}.clapp .seg button{color:var(--dim);letter-spacing:.05em;padding:8px 14px;font-size:13px}.clapp .seg button.on{background:var(--amb);color:#1a1206;font-weight:600}.clapp .tog{background:var(--panel2);border:1px solid var(--line);border-radius:14px;flex-shrink:0;width:52px;height:28px;transition:background .15s;position:relative}.clapp .tog:after{content:"";background:var(--dim);border-radius:50%;width:20px;height:20px;transition:all .15s;position:absolute;top:3px;left:3px}.clapp .tog.on{background:var(--grn-dim);border-color:var(--grn)}.clapp .tog.on:after{background:var(--grn);left:27px}.clapp .cl-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 14px;font-size:14px;display:flex}.clapp .cl-row:last-child{border-bottom:none}.clapp .cl-row .num{color:var(--faint);text-align:right;width:20px;font-size:12px}.clapp .cl-row .nm{flex:1}.clapp .cl-row .cnt{color:var(--faint);font-size:12px}.clapp .chk{border:1.5px solid var(--faint);color:#0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;display:flex}.clapp .chk.on{background:var(--grn-dim);border-color:var(--grn);color:var(--grn)}.clapp .cl-row.off .nm,.clapp .cl-row.off .cnt{color:var(--faint);text-decoration:line-through}.clapp .note{color:var(--dim);border-top:1px solid var(--line);padding:10px 14px;font-size:12px}.clapp #configFoot{padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--bg)30%);position:absolute;bottom:0;left:0;right:0}.clapp .bigbtn{background:var(--grn);color:#06210f;letter-spacing:.15em;border-radius:12px;width:100%;padding:16px;font-size:17px;font-weight:700;box-shadow:0 4px 24px #3ddc8440}.clapp .bigbtn.resume{background:var(--panel);color:var(--grn);border:1.5px solid var(--grn);box-shadow:none;margin-bottom:10px}.clapp #run{flex-direction:column;height:100%;display:none}.clapp #runHead{border-bottom:1px solid var(--line);background:var(--panel2);padding:10px 14px 8px}.clapp #runHead .top{align-items:center;gap:10px;display:flex}.clapp #runHead .menu-btn{color:var(--dim);padding:4px 8px;font-size:20px}.clapp #runHead .title{flex:1;min-width:0}.clapp #runHead .phase{letter-spacing:.25em;color:var(--dim);text-transform:uppercase;font-size:10px}.clapp #runHead h1{white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.clapp #runHead.emerg{background:#1c0d0d;border-color:#4a1a1a}.clapp #runHead.emerg .phase{color:var(--red)}.clapp .ebtn{background:var(--red-dim);border:1px solid var(--red);color:var(--red);letter-spacing:.1em;border-radius:8px;padding:8px 12px;font-size:11px;font-weight:700}.clapp .pbar{background:var(--panel);border-radius:2px;height:3px;margin-top:8px;overflow:hidden}.clapp .pbar>div{background:var(--grn);border-radius:2px;height:100%;transition:width .25s}.clapp #runHead.emerg .pbar>div{background:var(--red)}.clapp .pmeta{color:var(--dim);justify-content:space-between;margin-top:4px;font-size:11px;display:flex}.clapp #steps{scroll-behavior:smooth;flex:1;padding:10px 14px;overflow-y:auto}.clapp #steps .pad{height:38vh}.clapp .step{border:1.5px solid #0000;border-radius:10px;align-items:center;gap:12px;margin-bottom:4px;padding:11px 12px;transition:background .15s,border-color .15s,opacity .15s;display:flex}.clapp .step .box{border:1.5px solid var(--faint);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;display:flex}.clapp .step .body{flex-wrap:wrap;flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.clapp .step .c{font-size:15px}.clapp .step .dots{border-bottom:1.5px dotted var(--faint);flex:1;min-width:24px;transform:translateY(-4px)}.clapp .step .r{color:var(--blu);text-align:right;font-size:15px;font-weight:600}.clapp .step .tag{letter-spacing:.1em;background:var(--amb-dim);color:var(--amb);border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:700}.clapp .step.done{opacity:.45}.clapp .step.done .box{background:var(--grn-dim);border-color:var(--grn);color:var(--grn)}.clapp .step.done .box:before{content:"✓"}.clapp .step.skip{opacity:.4}.clapp .step.skip .box{border-color:var(--amb);color:var(--amb)}.clapp .step.skip .box:before{content:"–"}.clapp .step.cur{background:var(--panel);border-color:var(--grn);box-shadow:0 0 0 1px var(--grn),0 4px 20px #3ddc8426}.clapp .step.cur .c{font-weight:600}.clapp .emerg .step.cur{border-color:var(--red);box-shadow:0 0 0 1px var(--red),0 4px 20px #ff525226}.clapp .step.cond{opacity:1;padding:14px 12px 6px}.clapp .step.cond .box{display:none}.clapp .step.cond .c{color:var(--amb);letter-spacing:.03em;font-size:14px;font-style:italic;font-weight:600}.clapp .step.cond.cur{border-color:var(--amb);box-shadow:0 0 0 1px var(--amb);background:#ffb34714}.clapp .step.cond.done{opacity:.45}.clapp #actions{border-top:1px solid var(--line);background:var(--panel2);padding:10px 14px calc(12px + env(safe-area-inset-bottom))}.clapp #curLine{align-items:baseline;gap:8px;min-height:22px;margin-bottom:4px;display:flex}.clapp #curLine .c{font-size:15px;font-weight:600}.clapp #curLine .r{color:var(--blu);text-align:right;margin-left:auto;font-weight:700}.clapp #nextLine{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;min-height:15px;margin-bottom:10px;font-size:12px;overflow:hidden}.clapp #btnRow{gap:8px;display:flex}.clapp .sbtn{background:var(--panel);border:1px solid var(--line);width:74px;color:var(--dim);letter-spacing:.05em;border-radius:12px;padding:14px 0;font-size:12px;font-weight:600}.clapp #checkBtn{background:var(--grn);color:#06210f;letter-spacing:.2em;border-radius:12px;flex:1;padding:16px;font-size:18px;font-weight:800;box-shadow:0 4px 24px #3ddc844d}.clapp #checkBtn.next{background:var(--blu);color:#041424;letter-spacing:.06em;font-size:15px;box-shadow:0 4px 24px #4da3ff4d}.clapp #checkBtn.ack,.clapp #checkBtn.fin{background:var(--amb);color:#1a1206}.clapp .emerg #checkBtn{box-shadow:0 4px 24px #ff525233}.clapp #skipAllRow{text-align:center;margin-top:9px}.clapp #skipAllRow button{color:var(--dim);letter-spacing:.08em;text-underline-offset:3px;padding:4px 10px;font-size:12px;text-decoration:underline}.clapp .ovl{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:20;background:#04070ad1;display:none;position:absolute;inset:0}.clapp .ovl.show{flex-direction:column;display:flex}.clapp .sheet{background:var(--panel);border:1px solid var(--line);border-bottom:none;border-radius:18px 18px 0 0;flex-direction:column;max-height:86%;margin-top:auto;display:flex;overflow:hidden}.clapp .sheet .shead{justify-content:space-between;align-items:center;padding:16px 18px 10px;display:flex}.clapp .sheet .shead h2{letter-spacing:.15em;text-transform:uppercase;font-size:15px}.clapp .sheet .shead .x{color:var(--dim);padding:0 6px;font-size:22px}.clapp .sheet .sbody{padding:0 12px 24px;overflow-y:auto}.clapp .egrp{letter-spacing:.25em;text-transform:uppercase;color:var(--dim);padding:16px 6px 6px;font-size:10px}.clapp .eitem{text-align:left;background:var(--panel2);border:1px solid var(--line);border-radius:9px;width:100%;margin-bottom:2px;padding:12px;font-size:15px;display:block}.clapp .eitem:hover{border-color:var(--red)}.clapp #emergSheet .shead h2{color:var(--red)}.clapp .mitem{text-align:left;background:var(--panel2);border:1px solid var(--line);border-radius:9px;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:12px;font-size:14px;display:flex}.clapp .mitem .st{text-align:center;flex-shrink:0;width:20px;font-size:13px}.clapp .mitem.done .st{color:var(--grn)}.mitem.done{color:var(--dim)}.clapp .mitem.cur{border-color:var(--grn)}.clapp .mitem .pc{color:var(--faint);margin-left:auto;font-size:11px}.clapp .mact{gap:8px;padding:12px 6px 4px;display:flex}.clapp .mact button{background:var(--panel2);border:1px solid var(--line);color:var(--dim);letter-spacing:.05em;border-radius:9px;flex:1;padding:11px;font-size:12px}.clapp .mact button.danger{color:var(--red);border-color:var(--red-dim)}.clapp #brief{flex:1;padding:14px 14px 30px;display:none;overflow-y:auto}.clapp .bf-kicker{letter-spacing:.3em;color:var(--amb);text-transform:uppercase;margin:2px 2px 10px;font-size:10px}.clapp .bf-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:14px}.clapp .bf-card h3{letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-bottom:10px;font-size:11px}.clapp .bf-speeds{flex-wrap:wrap;gap:8px;display:flex}.clapp .bf-sp{background:var(--panel2);border:1px solid var(--line);text-align:center;border-radius:9px;flex:100px;padding:8px 10px}.clapp .bf-sp .v{color:var(--blu);font-family:Consolas,monospace;font-size:20px;font-weight:700}.clapp .bf-sp .v small{color:var(--dim);font-size:11px;font-weight:400}.clapp .bf-sp .k{color:var(--dim);letter-spacing:.06em;margin-top:2px;font-size:10px}.clapp .bf-kv{align-items:baseline;gap:8px;padding:5px 0;font-size:14px;display:flex}.clapp .bf-kv .k{color:var(--txt)}.clapp .bf-kv .dots{border-bottom:1.5px dotted var(--faint);flex:1;min-width:20px;transform:translateY(-4px)}.clapp .bf-kv .v{color:var(--blu);text-align:right;font-weight:600}.clapp .bf-warn{border:1px solid var(--amb-dim);background:#ffb34714;border-radius:12px;gap:10px;margin-bottom:12px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:flex}.clapp .bf-warn:before{content:"⚠";color:var(--amb);font-size:16px}.clapp .bf-danger{border:1px solid var(--red-dim);background:#ff525214;border-radius:12px;gap:10px;margin-bottom:12px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:flex}.clapp .bf-danger:before{content:"⛔";font-size:15px}.clapp .bf-text{color:var(--txt);font-size:13.5px;line-height:1.55}.clapp .bf-text b{color:var(--amb);font-weight:600}.clapp .bf-tblwrap{overflow-x:auto}.clapp .bf-tbl{border-collapse:collapse;width:100%;font-family:Consolas,Cascadia Mono,monospace;font-size:12.5px}.clapp .bf-tbl th{color:var(--dim);text-align:right;border-bottom:1px solid var(--line);letter-spacing:.03em;padding:4px 8px;font-size:11px;font-weight:600}.clapp .bf-tbl td{text-align:right;color:var(--txt);border-bottom:1px solid #1f2c3d80;padding:5px 8px}.clapp .bf-tbl th:first-child,.clapp .bf-tbl td:first-child{text-align:left;color:var(--blu)}.clapp .bf-tbl tr:last-child td{border-bottom:none}.clapp .bf-src{color:var(--faint);text-align:center;margin-top:4px;font-size:11px}.clapp .rw{letter-spacing:.08em;color:var(--blu);vertical-align:2px;background:#4da3ff1f;border:1px solid #4da3ff66;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:9px;font-weight:700}.clapp .mitem .binfo{border:1px solid var(--line);width:28px;height:28px;color:var(--amb);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;font-size:13px;display:flex}.clapp .an-row{border-bottom:1px solid #1f2c3d80;align-items:center;gap:10px;padding:7px 0;display:flex}.clapp .an-row:last-child{border-bottom:none}.clapp .an-chip{letter-spacing:.05em;text-align:center;border-radius:5px;flex-shrink:0;min-width:86px;padding:4px 8px;font-family:Consolas,Cascadia Mono,monospace;font-size:11px;font-weight:700}.clapp .an-chip.r{border:1px solid var(--red-dim);color:var(--red);background:#ff52521f}.clapp .an-chip.a{border:1px solid var(--amb-dim);color:var(--amb);background:#ffb3471f}.clapp .an-desc{color:var(--txt);flex:1;font-size:13px;line-height:1.35}.clapp .an-link{letter-spacing:.06em;color:var(--red);border:1px solid var(--red-dim);border-radius:6px;flex-shrink:0;padding:6px 8px;font-size:10px;font-weight:700}.clapp .arc-row{align-items:center;gap:10px;padding:5px 0;font-size:13.5px;display:flex}.clapp .arc-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.clapp .arc-dot.g{background:var(--grn)}.arc-dot.y{background:var(--amb)}.arc-dot.r{background:var(--red)}.arc-dot.w{background:var(--txt)}.clapp .arc-range{color:var(--txt);font-family:Consolas,Cascadia Mono,monospace}.clapp .arc-lbl{color:var(--dim);margin-left:auto;font-size:12px}.clapp #done{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;height:100%;padding:24px;display:none}.clapp #done .big{color:var(--grn);letter-spacing:.2em;font-size:26px;font-weight:700}.clapp #done .stats{color:var(--dim);font-size:14px;line-height:1.9}.clapp #done button{background:var(--panel);border:1px solid var(--line);letter-spacing:.1em;border-radius:12px;margin-top:10px;padding:14px 34px;font-size:14px}.clapp .flash{animation:.35s flash}@keyframes flash{0%{background:#3ddc8440}to{background:0 0}}
