@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{--shell:#f2f4f6;--panel:#fff;--panel-2:#f7f9fb;--chip:#f2f4f6;--group:#eef2f6;--hover:#f4f7fa;--line:#dde2e8;--line-2:#e4e8ed;--line-soft:#eef1f4;--line-strong:#cbd3dc;--ink:#14181d;--ink-2:#3c454f;--ink-3:#4a545f;--muted:#6b7480;--muted-2:#8a939e;--faint:#97a1ac;--grab:#c3ccd6;--accent:#1b5e9e;--accent-hover:#17507f;--accent-soft:#e9f1fa;--accent-line:#b9d3ea;--accent-chip:#d6e6f5;--accent-ink:#4a7ba8;--accent-tint:#f7fbff;--ok:#1f6b4a;--ok-soft:#e7f3ec;--ok-line:#c6e2d1;--warn:#8a5300;--warn-soft:#fff4e5;--warn-line:#f0dcbc;--warn-tint:#fffaf1;--danger:#a12020;--danger-soft:#fdeaea;--danger-line:#f3c2c2;--on-accent:#fff;--shadow:#0f162047;--zebra:#fbfcfd;--gridline:#1b5e9e24;--plate-line:#1b5e9e52;--plate-fill:#1b5e9e0f;--plate-line-2:#1f6b4a52;--plate-fill-2:#1f6b4a0f;--radius:7px;--rail-w:248px;--sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--shell:#16191d;--panel:#21252a;--panel-2:#272c32;--chip:#2c3138;--group:#2f353d;--hover:#2b3037;--line:#363c44;--line-2:#323840;--line-soft:#2c3238;--line-strong:#3c434c;--ink:#e8ecf0;--ink-2:#c3cbd3;--ink-3:#b0b9c2;--muted:#8e99a4;--muted-2:#7c8792;--faint:#6e7883;--grab:#4e5760;--accent:#4a9eea;--accent-hover:#6bb2f2;--accent-soft:#1d3346;--accent-line:#2f5878;--accent-chip:#274a66;--accent-ink:#7fb6e8;--accent-tint:#1d2b38;--ok:#4cbb8a;--ok-soft:#1a3328;--ok-line:#2c5a42;--warn:#d99b3c;--warn-soft:#3a2c14;--warn-line:#5c4620;--warn-tint:#2e2718;--danger:#e8666a;--danger-soft:#3a1e20;--danger-line:#5e2f31;--on-accent:#0e1418;--shadow:#0000008c;--zebra:#252a30;--gridline:#7ab4f026;--plate-line:#7ab4f057;--plate-fill:#7ab4f00f;--plate-line-2:#4cbb8a57;--plate-fill-2:#4cbb8a0f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{font:14px/1.45 var(--sans);color:var(--ink);background:var(--shell);margin:0}.mono{font-family:var(--mono)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:content-box;border:3px solid #0000;border-radius:99px}@keyframes om-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes om-pulse{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}#app{flex-direction:column;height:100vh;display:flex;overflow:auto hidden}.noscript{max-width:60ch;margin:0 auto;padding:48px 24px}.noscript h1{letter-spacing:-.02em;font-size:24px}.noscript p{color:var(--ink-2);text-wrap:pretty}.app-bar{background:var(--panel);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:14px;height:56px;padding:0 16px;display:flex}.logo-mark{flex:none;display:block}.wordmark{letter-spacing:-.022em;font-size:15px;font-weight:600}.wordmark .wm-lead{font-weight:400}.app-bar .brand{cursor:pointer;color:inherit;background:0 0;border:none;flex:none;align-items:center;gap:10px;padding:0;display:flex}.app-bar .brand:hover{background:0 0}.app-bar .brand:hover .wordmark{color:var(--accent)}.bar-sep{background:var(--line-2);flex:none;width:1px;height:26px}.spacer{flex:1}.model-chip{background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--radius);align-items:center;gap:10px;min-width:0;padding:7px 14px 7px 12px;display:flex}.model-chip>.dot{background:var(--ok);width:7px;height:7px;box-shadow:0 0 0 3px var(--ok-soft);border-radius:99px;flex:none}.model-chip .stack{flex-direction:column;min-width:0;line-height:1.25;display:flex}.model-chip .name{font-size:13px;font-weight:600}.model-chip .meta{color:var(--muted);font-size:11px;font-family:var(--mono)}.model-chip .name,.model-chip .meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pill-ok{color:var(--ok);background:var(--ok-soft);border:1px solid var(--ok-line);border-radius:99px;flex:none;align-items:center;gap:7px;padding:3px 11px;font-size:12px;display:inline-flex}.pill-ok>i{background:var(--ok);border-radius:99px;width:6px;height:6px}.layout{flex:1;min-width:0;min-height:0;display:flex}.rail{width:var(--rail-w);background:var(--panel);border-right:1px solid var(--line);flex-direction:column;flex:none;min-height:0;display:flex}.rail.closed{width:22px}.strip-open{width:100%;color:var(--muted-2);cursor:pointer;background:0 0;border:none;border-radius:0;flex:1;justify-content:center;align-items:center;padding:0;display:flex}.strip-open:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border:none}.strip-open>svg{width:12px;height:12px}.rail-search.row{border-bottom:1px solid var(--line-soft);flex:none;gap:8px;padding:10px 10px 10px 12px}.rail-body{flex:1;min-height:0;padding:12px 8px 16px;overflow-y:auto}.rail-sched{border-top:1px solid var(--line-soft);flex:none;padding:12px 8px 14px}.rail-foot{border-top:1px solid var(--line-soft);flex:none;gap:6px;padding:10px 12px;display:flex}.rail-foot button{flex:1}.centre{flex-direction:column;flex:1;min-width:0;display:flex}.centre-head{background:var(--panel);border-bottom:1px solid var(--line);flex:none;padding:12px 20px 10px}.centre-head .title-row{gap:12px}.centre-head .schedule-name{letter-spacing:-.02em;background:0 0;border-color:#0000;width:260px;min-width:0;max-width:100%;margin-left:-6px;padding:2px 6px;font-size:19px;font-weight:600;display:block}.centre-head .schedule-name:hover{border-color:var(--line)}.centre-head .chips-row{margin-top:3px}.centre-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:20px;display:flex;overflow:hidden}.status{background:var(--panel);border-top:1px solid var(--line);height:34px;color:var(--muted);flex:none;align-items:center;gap:16px;padding:0 20px;font-size:12px;display:flex}.status .sep{background:var(--line-2);width:1px;height:14px}.layout{min-width:780px}#app.no-rail .layout{min-width:calc(780px - var(--rail-w) + 22px)}.screen{flex:1;justify-content:center;align-items:safe center;min-height:0;padding:32px;display:flex;position:relative;overflow:auto}.screen-body{z-index:1;justify-content:center;width:100%;animation:.35s both om-fade;display:flex;position:relative}.screen .inner{width:100%;max-width:720px}.card{background:var(--panel);border:1px solid var(--line-2);box-shadow:0 4px 16px -6px var(--shadow);border-radius:12px}.backdrop{pointer-events:none;position:absolute;inset:0;overflow:hidden}.backdrop .grid,.backdrop .plate{translate:calc(var(--mx,0) * var(--depth,0px)) calc(var(--my,0) * var(--depth,0px))}.backdrop .grid{background-image:linear-gradient(var(--gridline) 1px, transparent 1px), linear-gradient(90deg, var(--gridline) 1px, transparent 1px);--depth:16px;background-size:56px 56px,56px 56px;transition:translate 1.1s cubic-bezier(.16,.8,.3,1);position:absolute;inset:-14%}.backdrop .plate{border:1px solid var(--plate-line);background:var(--plate-fill);border-radius:4px;transition:translate .9s cubic-bezier(.16,.8,.3,1),background-color .7s,border-color .7s,box-shadow .7s,scale .7s;position:absolute}.backdrop .plate.alt{border-color:var(--plate-line-2);background:var(--plate-fill-2)}.backdrop .plate.lit{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 12px 36px -16px var(--accent);scale:1.04}.backdrop .plate.a{--depth:46px;width:268px;height:158px;top:12%;left:6%;rotate:-9deg}.backdrop .plate.b{--depth:30px;width:190px;height:232px;top:18%;right:8%;rotate:7deg}.backdrop .plate.c{--depth:58px;width:320px;height:120px;bottom:10%;left:16%;rotate:-3deg}.backdrop .plate.d{--depth:38px;width:148px;height:148px;bottom:14%;right:14%;rotate:12deg}.backdrop .plate.e{--depth:24px;width:116px;height:300px;top:4%;left:42%;rotate:4deg}.backdrop .plate.f{--depth:52px;width:124px;height:184px;top:44%;left:1%;rotate:-6deg}.backdrop .fade{background:radial-gradient(130% 100% at 50% 46%, transparent 44%, var(--shell) 99%);position:absolute;inset:0}.overlay{z-index:60;background:#0a0e1273;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.overlay-card{background:var(--panel);border:1px solid var(--line-strong);width:1120px;max-width:100%;height:100%;max-height:720px;box-shadow:0 30px 60px -20px var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.overlay-head{flex:none;padding:18px 22px 0}.overlay-head h3{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600}.overlay-foot{border-top:1px solid var(--line-soft);flex:none;align-items:center;gap:10px;padding:12px 22px;display:flex}.dropzone{z-index:80;background:#1b5e9e24;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dropzone-card{background:var(--panel);border:2px dashed var(--accent);color:var(--accent);border-radius:12px;padding:26px 40px;font-size:16px;font-weight:600}button,select,input,textarea{font-family:inherit}button{color:var(--ink-2);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;padding:6px 12px;font-size:13px}button:hover:not(:disabled){background:var(--hover);border-color:var(--line-strong)}button:disabled{opacity:.45;cursor:default}button.primary{color:var(--on-accent);background:var(--accent);border-color:var(--accent);font-weight:500}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.quiet{color:var(--muted);background:0 0;border-color:#0000}button.quiet:hover:not(:disabled){background:var(--hover)}button.link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 0 0 6px;font-size:11.5px;text-decoration:underline}button.link:disabled{color:var(--muted-2);text-decoration:none}button.dashed{width:100%;color:var(--accent);background:var(--panel);border:1px dashed var(--accent-line);padding:8px 12px;font-weight:500}button.dashed:disabled{color:var(--muted-2);border-color:var(--line)}.icon-btn{width:30px;height:30px;color:var(--ink-2);justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn>svg{flex:none;display:block}.icon-btn.sm{width:28px;height:28px}button.icon-btn.danger:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}button.icon-btn.accent{color:var(--accent);border-color:var(--accent-line)}.icon-row{align-items:center;gap:2px;display:flex}.icon-row.end{justify-content:flex-end}button.icon-btn.on{color:var(--accent);background:var(--accent-soft)}button.icon-btn.on:hover:not(:disabled){background:var(--accent-soft)}a.icon-btn{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none}a.icon-btn:hover{background:var(--hover);border-color:var(--line-strong)}.menu-host{display:inline-flex;position:relative}.caret-down{opacity:.8;margin-left:1px;font-size:9px}.menu{z-index:70;background:var(--panel);border:1px solid var(--line-strong);min-width:232px;box-shadow:0 14px 34px -12px var(--shadow);border-radius:9px;flex-direction:column;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.menu>button{text-align:left;background:0 0;border:none;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:7px 10px;display:flex}.menu-rule{background:var(--line-soft);height:1px;margin:4px 6px}.menu>button:disabled{opacity:.5}.menu>button:disabled:hover{background:0 0}.menu>button:hover:not(:disabled){background:var(--accent-soft)}.menu>button>b{color:var(--ink);font-size:13px;font-weight:600}.menu>button>.sub{font-size:11.5px}input[type=text],input[type=number],input[type=search],select{color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:6px 9px;font-size:13px}input[type=search]{background:var(--panel-2)}input[type=checkbox],input[type=range]{accent-color:var(--accent);margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}label.lbl{color:var(--muted);margin-bottom:4px;font-size:11.5px;display:block}.row{align-items:center;gap:6px;display:flex}.row>*{min-width:0}.sub{color:var(--muted);font-size:11.5px}.hint{color:var(--muted);text-wrap:pretty;font-size:12px;line-height:1.45}.eyebrow{letter-spacing:.07em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-weight:600}.chip{color:var(--ink);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:4px 11px;font-size:12.5px;display:inline-flex}.chip:hover{background:var(--hover)}.chip .k{color:var(--muted)}.chip .v{font-weight:600}.chip.tpl{cursor:default;color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line);border-radius:5px;padding:2px 8px;font-size:11.5px}.chip.tpl .v{font-weight:600}.chip.tpl .k{color:inherit;opacity:.8}.toggle>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.toggle:has(>input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.toggle{color:var(--ink-3);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:4px 9px;font-size:12.5px;display:inline-flex}.toggle.on{color:var(--ink);background:var(--accent-soft);border-color:var(--accent-line)}.toggle.on:before{content:"✓";font-size:11px;line-height:1}.chips{flex-wrap:wrap;gap:6px;display:flex}.badge{background:var(--warn-soft);color:var(--warn);white-space:nowrap;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:600;display:inline-block}.badge.accent{background:var(--accent-chip);color:var(--accent)}.notice{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn-line);border-radius:8px;flex:none;align-items:center;gap:12px;padding:8px 12px;font-size:12.5px;display:flex}.notice>.grow{flex:1}.notice button{color:var(--warn);border-color:var(--warn-line);padding:3px 10px;font-size:12.5px;font-weight:500}.rail-group{flex-direction:column;gap:1px;display:flex}.rail-label{justify-content:space-between;align-items:center;margin-bottom:7px;padding:0 6px;display:flex}.rail-item{text-align:left;cursor:pointer;width:100%;color:var(--ink-2);background:0 0;border:none;border-radius:6px;align-items:center;gap:9px;padding:6px 8px;font-size:13px;display:flex}.rail-item:hover{background:var(--hover)}.rail-item.on{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.rail-item.on .grow{color:var(--ink);font-weight:600}.rail-item .grow{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rail-item .bare{text-align:left;font-size:inherit;color:inherit;background:0 0;border:none;min-width:0;padding:0}.rail-item .bare:hover{background:0 0}.rail-item .n{font-size:11.5px;font-family:var(--mono);color:var(--muted-2)}.rail-item.on .n{color:var(--accent-ink)}.rail-item .dot{background:var(--grab);border-radius:99px;flex:none;width:6px;height:6px}.rail-item .dot.arc{background:var(--accent)}.rail-item .dot.str{background:#9aa4b0}.rail-item .dot.mep{background:#b08a4a}.rail-item .dot.other{background:var(--muted-2)}.rail-item.on .dot,.rail-item.on .dot.arc,.rail-item.on .dot.str,.rail-item.on .dot.mep,.rail-item.on .dot.other{background:var(--accent)}.rail-empty{padding:6px 8px}.rail-empty.tight{padding:2px 8px 0}.rail-item>.icon-btn{margin:-6px -4px -6px 0}.switch{flex:none;width:32px;height:18px;display:inline-block;position:relative}.switch>input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.switch>i{background:var(--line-strong);pointer-events:none;border-radius:99px;transition:background .15s;position:absolute;inset:0}.switch>i:after{content:"";width:14px;height:14px;box-shadow:0 1px 2px var(--shadow);background:#fff;border-radius:99px;transition:translate .15s;position:absolute;top:2px;left:2px}.switch>input:checked+i{background:var(--accent)}.switch>input:checked+i:after{translate:14px}.switch>input:focus-visible+i{outline:2px solid var(--accent);outline-offset:1px}.switch-row{cursor:pointer;align-items:center;gap:10px;padding:8px 2px;font-size:13px;display:flex}.switch-row.top{align-items:flex-start}.switch-row.top .switch{margin-top:2px}.switch-row .opt-title{display:block}.switch-row .hint{margin-top:2px;display:block}.switch-list>.switch-row{border-bottom:1px solid var(--line-soft)}.switch-list>.switch-row:last-child{border-bottom:none}.seg{background:var(--chip);border:1px solid var(--line-2);border-radius:var(--radius);gap:2px;padding:2px;display:flex}.seg-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:5px;flex:1;justify-content:center;align-items:center;padding:5px 0;font-size:12px;display:flex}.seg-btn:hover:not(:disabled){color:var(--ink-2);background:0 0;border:none}.seg-btn.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px var(--shadow);font-weight:600}.seg-btn.on:hover:not(:disabled){background:var(--panel)}.subcard{border:1px solid var(--line-2);border-radius:8px;padding:12px}.subcard+.subcard{margin-top:8px}.stack{flex-direction:column;gap:8px;display:flex}.handle{color:var(--grab);letter-spacing:-2px;cursor:grab;flex:none;padding:0 2px;font-size:13px;line-height:1}.pset{color:var(--muted-2);font-size:10px;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:110px;overflow:hidden}.x-btn{color:var(--faint);background:0 0;border:1px solid #0000;border-radius:5px;flex:none;margin-left:10px;padding:3px 7px;font-size:14px;line-height:1}.x-btn:hover:not(:disabled){color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.row.wide{gap:8px}.row.ends{justify-content:space-between}.row.top{align-items:flex-start}.row.bottom{align-items:flex-end}.block{margin-top:12px}.block.tight{margin-top:10px}.block.snug{margin-top:8px}.full{width:100%}.grow-1{flex:1;min-width:0}.preview-box{background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:8px;align-items:baseline;gap:10px;padding:9px 12px;display:flex}.preview-box .value{font-size:14px;font-weight:500}.preview-box .tail{color:var(--muted-2);margin-left:auto;font-size:11px}.preview-box.lit{border-color:var(--line-2);font-weight:500}.preview-box.lit .sub,.preview-box.lit .tail{color:inherit;opacity:.72;font-weight:400}.preview-box.lit .value{font-weight:inherit}.cond-when{color:var(--muted);flex:none;font-size:12px}.cond-op{flex:0 0 38%}.cond-op.solo{flex:1}.cond-presets{flex:1;gap:4px;display:flex}button.cond-preset{border:1px solid var(--line-2);border-radius:5px;flex:none;width:27px;height:24px;padding:0;font-size:11px;font-weight:600;line-height:1}button.cond-preset.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-chip)}.cond-swatch{color:var(--muted);flex:none;align-items:center;gap:4px;display:flex}.cond-swatch>input[type=color]{cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:46px;height:24px;padding:1px}.cond-bold{border-radius:var(--radius);color:var(--muted);cursor:pointer;position:relative}.cond-bold:hover{background:var(--hover)}.cond-bold:has(>input:checked){color:var(--accent);background:var(--accent-soft)}.cond-bold:has(>input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.subcard .cond-bold>input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.bar.keep{background:var(--warn-line);height:4px;margin-top:12px}.bar.keep>i{background:var(--ok)}.rule-effect{margin-top:6px}.rule-effect .keeps{color:var(--ok);font-size:11.5px;font-weight:600}.rule-effect strong{color:var(--warn);font-weight:600}.match-row{gap:10px;margin-bottom:12px}.value-slot{flex:1;min-width:0;display:flex}.unit-hint{flex:none}.opt-title{font-size:13px;font-weight:500}.x-btn.flush{margin-left:0}.lvl-n{background:var(--accent-chip);width:18px;height:18px;color:var(--accent);border-radius:99px;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.block-label{margin-bottom:6px}.head-row{margin-bottom:8px}.rule-sep{background:var(--line-soft);height:1px;margin:14px 0}.dim{color:var(--muted-2);font-weight:400}.size-read{font-size:12px;font-weight:600}.row>.lbl{margin-bottom:0}.remap-pick{margin-top:4px}.stack.tight{gap:2px}.calc-body{margin-top:6px}.calc-body input[type=text],.calc-body select{width:100%}.tip-error{color:var(--danger)}.bar{background:var(--line-soft);border-radius:99px;flex:1;height:5px;display:flex;overflow:hidden}.bar>i{background:var(--ok);height:100%;display:block}.bar>i.mid{background:var(--warn)}.bar>i.none{background:var(--warn-line)}.empty-note{color:var(--muted);text-align:center;padding:40px 10px;font-size:13px}.toast{z-index:90;pointer-events:none;background:var(--ink);color:var(--shell);box-shadow:0 10px 30px -10px var(--shadow);border-radius:8px;padding:10px 18px;font-size:13px;animation:.2s both om-fade;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.toast.bad{background:var(--danger);color:#fff}.subcard.bad{border-color:var(--danger-line);background:var(--danger-soft)}.viewbar{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.vchip{border:1px solid var(--line);background:var(--panel);border-radius:99px;align-items:stretch;height:28px;font-size:12.5px;display:inline-flex;overflow:hidden}.vchip>button{white-space:nowrap;color:var(--ink);background:0 0;border:none;border-radius:0;align-items:center;gap:5px;padding:0 10px;font-size:12.5px;display:flex}.vchip>button+button{border-left:1px solid var(--line)}.vchip>button:hover:not(:disabled){background:var(--hover);border:none}.vchip>button+button:hover:not(:disabled){border-left:1px solid var(--line)}.vchip .k{color:var(--muted)}.vchip .v{font-weight:600}.vchip .removed{font-family:var(--mono);color:var(--warn);font-size:11.5px}.vchip.filter{border-color:var(--accent-line);background:var(--accent-tint)}.vchip.filter>button+button,.vchip.filter>button+button:hover:not(:disabled){border-left-color:var(--accent-line)}.vchip>button.x{width:28px;height:auto;color:var(--faint);padding:0}.vchip>button.x:focus-visible{outline-offset:-2px}.vchip>button.x:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.vchip:has(>button[aria-expanded=true]){box-shadow:0 0 0 2px var(--accent)}.vchip .lvl-n{margin-right:2px}button.logic{font:600 10.5px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border:1px dashed var(--line-strong);background:0 0;border-radius:4px;padding:2px 6px}button.vadd{border:1px dashed var(--line-strong);height:28px;color:var(--accent);background:0 0;border-radius:99px;padding:0 11px;font-size:12.5px}button.vadd[aria-expanded=true]{box-shadow:0 0 0 2px var(--accent)}.vhint{color:var(--muted-2);font-size:12px}.vsep{background:var(--line-2);width:1px;height:18px;margin:0 4px}button.vset{height:28px;color:var(--ink-2);white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:0 9px;font-size:12.5px}button.vset b{color:var(--ink);font-weight:600}button.vset[aria-expanded=true],button.vset[aria-expanded=true]:hover:not(:disabled){background:var(--accent-soft);color:var(--ink)}.overlay-head .head-row{gap:12px}.overlay-card.calc-card{width:560px;height:auto}.calc-scroll{flex:1;min-height:0;padding:0 22px 16px;overflow-y:auto}.calc-editor{border-top:1px solid var(--line-soft);margin-top:16px;padding-top:12px}.calc-editor .chosen-head,.calc-editor .subcard{margin-bottom:8px}.calc-editor .calc-body{margin-top:7px}.calc-editor .calc-unit{flex-wrap:wrap;gap:8px;margin-top:7px}.calc-editor .calc-unit .sub{flex:none}.calc-editor input.mono{font-family:var(--mono);font-size:12.5px}.popover{z-index:55;background:var(--panel);border:1px solid var(--line-strong);width:320px;box-shadow:0 14px 34px -12px var(--shadow);border-radius:9px;padding:10px;font-size:13px;animation:.14s both om-fade;position:fixed;overflow:auto}.popover .heading-in{width:100%;font-size:15px;font-weight:600}.popover .pop-num{text-align:center;width:46px}.pop-cover{color:var(--muted);align-items:center;gap:8px;margin:7px 2px 2px;font-size:11.5px;display:flex}.pop-cover .bar{flex:0 0 56px}.pop-cover .pset{margin-left:auto}.pop-cover b{color:var(--ink-2);font-weight:600}.pop-cover.mid b{color:var(--warn)}.pop-cover.none b{color:var(--danger)}.popover .remap{padding:4px 2px 2px}.pop-note{color:var(--ink-2);background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:7px;align-items:center;gap:8px;margin:8px 0 2px;padding:7px 9px;font-size:12px;display:flex}.pop-note.bad{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.pop-row{align-items:center;gap:8px;margin:8px 0;display:flex}.pop-lbl{width:62px;color:var(--muted);flex:none;font-size:11.5px}.pop-row .seg{display:flex}.pop-row .seg-btn{flex:1;padding-left:4px;padding-right:4px}.stepper{flex:none;display:inline-flex}.stepper button{width:28px;padding:5px 0}.stepper button:first-child{border-radius:var(--radius) 0 0 var(--radius)}.stepper button:last-child{border-radius:0 var(--radius) var(--radius) 0}.popover .stepper .pop-num{border-left:none;border-right:none;border-radius:0}.pop-preview{white-space:nowrap;gap:6px;padding:5px 10px;overflow:hidden}.pop-rule{border:none;border-top:1px solid var(--line-soft);margin:8px -10px}.pop-eyebrow{margin:2px 2px 8px}.pop-more{padding:0 4px 4px}button.mi{text-align:left;width:100%;color:var(--ink-2);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;display:flex}button.mi:hover:not(:disabled){background:var(--accent-soft);border:none}button.mi.on{color:var(--accent);font-weight:600}.mi .tail{font:11.5px var(--mono);color:var(--muted-2);margin-left:auto}button.fold,button.pop-back{color:var(--muted);background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:600;display:flex}button.fold{width:100%}button.pop-back{color:var(--accent);margin-bottom:6px;padding:0 2px;font-weight:500}button.fold:hover:not(:disabled),button.pop-back:hover:not(:disabled){background:var(--hover);border:none}.fold .tw{display:inline-block}.fold.shut .tw{rotate:-90deg}.pick-list{flex-direction:column;gap:1px;max-height:320px;display:flex;overflow-y:auto}.mi .tail.mid{color:var(--warn)}.mi .tail.none{color:var(--danger)}.popover .pop-sub{margin:0 0 8px}.popover .match-row{margin-bottom:4px}.popover:has(.pick-list){width:480px;padding-bottom:0}.popover .pick-search{width:100%;padding:9px 12px;font-size:14px}.pviews{margin:8px 0 2px;display:flex}.pviews .seg{flex:1}.pick-list{max-height:min(350px,56vh - 90px);margin:4px -6px 0;padding:0 4px 6px;overflow:auto}.pick-list>*{flex:none}.psec{border-bottom:1px solid var(--line-2);color:var(--ink);margin:10px 6px 3px;padding-bottom:4px;font-size:12.5px;font-weight:600}.psec:first-child{margin-top:6px}button.pgroup{text-align:left;width:100%;font:600 12px var(--mono);color:var(--ink-2);background:0 0;border:none;border-radius:0;align-items:center;gap:6px;padding:9px 6px 3px;display:flex}button.pgroup:hover:not(:disabled){color:var(--ink);background:0 0;border:none}.pgroup .tw{width:10px;color:var(--faint);display:inline-block}.pgroup.shut .tw{rotate:-90deg}.pgroup .n{color:var(--muted-2);margin-left:auto;font-weight:400}.prow{cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:8px;height:30px;padding:0 6px;display:flex}.prow:hover{background:var(--hover)}.prow.sel{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.prow .ck{border:1.5px solid var(--line-strong);background:var(--panel);width:16px;height:16px;color:var(--on-accent);border-radius:4px;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.prow.on .ck{background:var(--accent);border-color:var(--accent)}.pname{text-overflow:ellipsis;max-width:62%;color:var(--ink);flex:none;font-size:13px;font-weight:500;overflow:hidden}.twin{font:10.5px/16px var(--mono);color:var(--muted);border:1px solid var(--line-strong);border-radius:4px;flex:none;padding:0 5px}.prow .cov,.crow .cov{margin-left:auto}.cov{font:600 10.5px/16px var(--mono);color:var(--warn);background:var(--warn-soft);border-radius:4px;flex:none;padding:0 5px}.cov.zero{color:var(--danger);background:var(--danger-soft)}.prow .hit{text-overflow:ellipsis;min-width:0;font:11.5px var(--mono);color:var(--muted-2);overflow:hidden}.pstrip{border-top:1px solid var(--line-2);background:var(--panel-2);height:90px;margin:0 -10px;padding:9px 12px;font-size:12px;overflow:hidden}.pstrip .s1{align-items:baseline;gap:8px;display:flex}.pstrip .sn{text-overflow:ellipsis;white-space:nowrap;max-width:60%;color:var(--ink);flex:none;font-weight:600;overflow:hidden}.pstrip .sp{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:11px var(--mono);color:var(--muted);overflow:hidden}.pstrip .s2{font:11px var(--mono);color:var(--muted);align-items:center;gap:8px;margin-top:6px;display:flex}.pstrip .s2 .bar{flex:none;width:90px}.pstrip .s3{gap:4px;margin-top:7px;display:flex;overflow:hidden}.pval{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:170px;font:11px/18px var(--mono);background:var(--chip);color:var(--ink-2);border-radius:4px;flex:0 auto;padding:0 6px;overflow:hidden}.pval.more{color:var(--faint);background:0 0;flex:none;padding:0 2px}.pstrip mark,.pick-list mark{background:var(--warn-soft);color:var(--warn);border-radius:2px;padding:0 1px}.crow{white-space:nowrap;border-radius:6px;align-items:center;gap:8px;height:30px;padding:0 6px;display:flex}.crow:hover{background:var(--hover)}.crow.lifting{opacity:.4}.crow.over-up{box-shadow:inset 0 2px 0 var(--accent)}.crow.over-down{box-shadow:inset 0 -2px 0 var(--accent)}.crow button.nm{text-align:left;min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex:0 auto;padding:2px 0;font-size:13px;overflow:hidden}.crow button.nm:hover:not(:disabled){background:0 0;border:none;text-decoration:underline}.crow.hid button.nm{color:var(--muted)}.crow button.eye{flex:none;margin-left:auto;padding:2px 8px;font-size:11.5px}.crow .cov+button.eye{margin-left:0}button.showempty{border:1px dashed var(--line-strong);width:100%;color:var(--muted);background:0 0;margin:8px 0 6px;font-size:12px;display:block}.pempty{color:var(--muted);padding:14px 6px;font-size:13px}.pmore{padding:8px 6px}.pfoot{background:var(--panel);border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:8px;margin:6px -10px 0;padding:9px 10px;display:flex;position:sticky;bottom:0}.basket{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.pfoot button.primary{white-space:nowrap;flex:none}.pstrip+.pfoot{margin-top:0}.bchip{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:5px;align-items:center;gap:2px;padding:1px 2px 1px 7px;font-size:12px;display:inline-flex}.bchip>.icon-btn{margin:-6px -2px -6px 0}kbd{font:10.5px var(--mono);color:var(--ink-3);background:var(--panel-2);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:3px;padding:0 4px}button.primary kbd{color:inherit;opacity:.8;background:0 0;border-color:currentColor}.overlay-card.lib-card{position:relative}.lib-head{flex:none;align-items:center;gap:10px;padding:14px 16px 12px 22px;display:flex}.lib-head h3{letter-spacing:-.02em;flex:none;margin:0 6px 0 0;font-size:18px;font-weight:600}.lib-search{flex:1;max-width:360px;display:flex;position:relative}.lib-search>svg{color:var(--muted-2);pointer-events:none;position:absolute;top:50%;left:10px;translate:0 -50%}.lib-search input.lib-q{width:100%;padding:8px 12px 8px 32px;font-size:13.5px}.lib-head .lib-save-btn{white-space:nowrap;flex:none;align-items:center;gap:7px;display:inline-flex}.lib{grid-template-columns:minmax(0, 1fr) var(--pane-w,470px);border-top:1px solid var(--line-2);--cols:minmax(0, 1fr) 150px 64px 86px 78px;flex:1;min-height:0;display:grid;position:relative}.lib-list{border-right:1px solid var(--line-2);flex-direction:column;min-width:0;min-height:0;display:flex}.lib-lhead,.lib-row{grid-template-columns:var(--cols);align-items:center;column-gap:12px;display:grid}.lib-lhead{border-bottom:1px solid var(--line-2);background:var(--panel);flex:none;height:28px;padding:0 16px 0 22px}.lib-lhead>button{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap;background:0 0;border:none;border-radius:2px;align-items:center;gap:4px;padding:0;font-size:11px;font-weight:600;display:flex}.lib-lhead>button:hover:not(:disabled){color:var(--ink-2);background:0 0;border:none}.lib-lhead>button.on{color:var(--ink-2)}.lib-lhead>button.r{justify-content:flex-end}.lib-lhead svg{flex:none;width:11px;height:11px}.lib-rows{outline:none;flex:1;min-height:0;padding:0 8px 10px;overflow-y:auto}.lib-rows:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-line)}button.lib-sec{z-index:2;background:var(--panel);border:none;border-bottom:1px solid var(--line-2);width:100%;color:var(--ink);text-align:left;border-radius:0;align-items:center;gap:7px;margin:0;padding:12px 8px 5px 6px;font-size:12.5px;font-weight:600;display:flex;position:sticky;top:0}button.lib-sec:hover:not(:disabled){background:var(--panel);border:none;border-bottom:1px solid var(--line-2);color:var(--ink)}.lib-sec .n,.lib-sub .n{font:400 11.5px var(--mono);color:var(--muted-2)}.lib-sec .tw,.lib-sub .tw{color:var(--faint);display:inline-flex}.lib-sec .tw svg,.lib-sub .tw svg{width:12px;height:12px}.lib-sec.shut .tw,.lib-sub.shut .tw{rotate:-90deg}.lib-sec+.lib-group{padding-top:3px}.lib-row{cursor:default;height:30px;color:var(--ink-2);white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:6px;padding:0 8px 0 14px;font-size:13px;position:relative}.lib-row:hover{background:var(--hover)}.lib-row.sel{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.lib-row .nm{align-items:center;gap:7px;min-width:0;display:flex}.lib-row .nm>b{color:var(--ink);text-overflow:ellipsis;font-weight:500;overflow:hidden}.lib-row.sel .nm>b{font-weight:600}.lib-row .cls{font:11.5px var(--mono);color:var(--muted);text-overflow:ellipsis;overflow:hidden}.lib-row .count{font:11.5px var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;justify-self:end}.lib-row .fit{font:11.5px var(--mono);color:var(--ink-3);justify-content:flex-end;align-items:center;gap:7px;display:flex}.lib-row .fit .bar{flex:0 0 30px;height:4px}.lib-row .dt{font:11.5px var(--mono);color:var(--muted-2);justify-self:end}.lib-row .wait{color:var(--faint)}.lib-row.absent .nm>b,.lib-row.absent .cls,.lib-row.absent .count{color:var(--muted-2)}.lib-row.absent .nm>b{font-weight:400}.lib-rows mark{background:var(--warn-soft);color:var(--warn);border-radius:2px;padding:0 1px}.lib-row input.lib-name-in{border-color:var(--accent);width:100%;height:24px;box-shadow:0 0 0 2px var(--accent-chip);margin-left:-7px;padding:2px 6px;font-size:13px}.lib-row .lib-err,.lib-row .lib-note{text-overflow:ellipsis;grid-column:2/-1;font-size:11.5px;overflow:hidden}.lib-row .lib-err{color:var(--danger)}.lib-row .lib-note{color:var(--muted)}.lib-row.saving{background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent-line);height:36px;margin:4px 0}.lib-row.saving .nm>svg{color:var(--accent);flex:none}button.lib-sub{width:100%;height:28px;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:7px;margin-top:2px;padding:0 8px 0 14px;font-size:12px;display:flex}button.lib-sub:hover:not(:disabled){background:var(--hover);color:var(--ink-2);border:none}.lib-empty{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px 10px;font-size:13px;display:flex}.lib-none{text-align:center;color:var(--muted);padding:46px 20px;font-size:13px}.lib-none button{margin-top:10px}.lib-pane{background:var(--panel-2);flex-direction:column;min-width:0;min-height:0;display:flex}.lib-pane .pane-scroll{flex:1;min-height:0;padding:18px 20px 20px;overflow-y:auto}.lib-pane .ph{align-items:flex-start;gap:10px;display:flex}.lib-pane .ph h4{letter-spacing:-.02em;overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:18px;font-weight:600;line-height:1.25}.lib-pane .ph .tags{flex:none;gap:5px;padding-top:3px;display:flex}.src-tag{font:600 10px/16px var(--mono);color:var(--muted);border:1px solid var(--line-strong);letter-spacing:.03em;text-transform:uppercase;border-radius:4px;padding:0 6px}.src-tag.mine{color:var(--ok);border-color:var(--ok-line);background:var(--ok-soft)}.lib-pane .pmeta{font:12px var(--mono);color:var(--muted);margin-top:3px}.lib-pane .pmeta b{color:var(--ink-2);font-weight:600}.lib-pane .pfilter{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.lib-pane .pfilter .vchip{align-items:center;gap:5px;height:26px;padding:0 10px;font-size:12px}.lib-pane .lib-notice{margin-top:12px}.lib-pane .pfit{color:var(--ink-3);align-items:center;gap:10px;margin-top:14px;font-size:12.5px;display:flex}.lib-pane .pfit .bar{flex:0 0 120px}.lib-pane .pfit b{color:var(--ink);font-weight:600}.lib-pane .psec-h{justify-content:space-between;align-items:baseline;margin:18px 0 6px;display:flex}.lib-pane .manifest{background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:3px 0}.mrow{align-items:center;gap:9px;height:27px;padding:0 12px;font-size:12.5px;display:flex}.mrow+.mrow{border-top:1px solid var(--line-soft)}.mrow .ok{width:12px;color:var(--ok);flex:none;justify-content:center;font-size:12px;font-weight:700;display:inline-flex}.mrow .ok.no{color:var(--danger)}.mrow .ok svg{width:12px;height:12px}.mrow .hd{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:48%;font-weight:500;overflow:hidden}.mrow .src-f{font:11px var(--mono);color:var(--muted-2);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mrow .cnt,.mrow .cov{margin-left:auto}.mrow .cnt{font:11px var(--mono);color:var(--muted-2);flex:none}.mrow.miss .hd{color:var(--muted)}.lib-pane .kv{background:var(--panel);border:1px solid var(--line-2);border-radius:8px;grid-template-columns:64px 1fr;gap:4px 12px;margin:0;padding:9px 12px;font-size:12.5px;display:grid}.lib-pane .kv dt{color:var(--muted);margin:0}.lib-pane .kv dd{color:var(--ink-2);margin:0}.lib-pane .mini-wrap{background:var(--panel);border:1px solid var(--line-2);border-radius:8px;overflow-x:auto}table.mini{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px}table.mini th,table.mini td{white-space:nowrap;text-align:left;padding:5px 10px}table.mini th{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--panel-2);border-bottom:1px solid var(--line-strong);font-size:10.5px;font-weight:600}table.mini th .u{text-transform:none;color:var(--muted-2);letter-spacing:0;margin-left:3px;font-weight:400}table.mini th.miss{color:var(--muted-2);-webkit-text-decoration:underline dashed var(--danger-line);text-decoration:underline dashed var(--danger-line);text-underline-offset:3px}table.mini th.r,table.mini td.r{text-align:right;font-variant-numeric:tabular-nums}table.mini tbody tr.data:nth-of-type(2n) td{background:var(--zebra)}table.mini tr.group td{background:var(--group);padding-top:4px;padding-bottom:4px;font-size:11.5px;font-weight:600}.lib-pane .mini-more{font:11px var(--mono);color:var(--muted-2);border-top:1px solid var(--line-soft);padding:6px 10px}.lib-pane .mini-wait{background:var(--panel);border:1px solid var(--line-2);border-radius:8px;height:96px}.lib-pane .pane-empty{color:var(--faint);flex:1;justify-content:center;align-items:center;display:flex}.lib-pane .pane-empty svg{width:40px;height:40px}.pane-bar{border-top:1px solid var(--line-2);background:var(--panel);flex:none;align-items:center;gap:4px;padding:10px 14px 10px 16px;display:flex}.pane-bar .use{white-space:nowrap;align-items:center;gap:8px;margin-left:auto;padding:7px 14px;display:inline-flex}.pane-bar .icon-btn[aria-disabled=true]{opacity:.35;cursor:default}.pane-bar button.icon-btn[aria-disabled=true]:hover:not(:disabled){background:0 0;border-color:#0000}.pane-bar button.icon-btn.del:hover:not([aria-disabled=true]):not(:disabled){color:var(--danger);background:var(--danger-soft)}.pane-bar .vsep{background:var(--line-2);width:1px;height:18px;margin:0 4px}.pane-bar .ro{color:var(--muted-2);white-space:nowrap;margin-left:6px;font-size:11.5px}.lib-veil{z-index:20;background:#0a0e122e;justify-content:center;align-items:flex-start;display:flex;position:absolute;inset:0}.lib-sheet{background:var(--panel);border:1px solid var(--line-strong);width:420px;max-width:calc(100% - 32px);box-shadow:0 18px 40px -16px var(--shadow);border-top:none;border-radius:0 0 10px 10px;padding:16px 18px 14px}.lib-sheet h5{margin:0 0 4px;font-size:14.5px;font-weight:600}.lib-sheet p{color:var(--ink-3);margin:0;font-size:13px}.lib-sheet .acts{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}button.danger-btn{color:#fff;background:var(--danger);border-color:var(--danger);font-weight:500}button.danger-btn:hover:not(:disabled){background:var(--danger);border-color:var(--danger);filter:brightness(1.08)}button.lib-open{justify-content:flex-start;align-items:center;gap:8px;width:100%;display:flex}.lib-open>svg{flex:none}.lib-open .grow{text-align:left;flex:1}.lib-open kbd{font-weight:400}.cur-row{cursor:default;margin-top:6px}.cur-row .state{font:10.5px var(--mono);color:var(--accent-ink)}.cur-row .state.edited{color:var(--warn)}@media (max-width:1100px){.lib{--pane-w:340px;--cols:minmax(0, 1fr) 56px 76px}.lib-lhead>.c-cls,.lib-lhead>.c-dt,.lib-row>.cls,.lib-row>.dt{display:none}}@media (max-width:860px){.lib{--pane-w:310px}.lib-head .lib-save-btn .lbl{display:none}}.hero{text-align:center;margin-bottom:26px}.hero h1{letter-spacing:-.025em;margin:0 0 8px;font-size:30px;font-weight:600}.hero p{max-width:52ch;color:var(--ink-3);text-wrap:pretty;margin:0 auto;font-size:15px}.drop-card{border:2px dashed var(--accent-line);text-align:center;cursor:pointer;padding:34px 28px;transition:border-color .18s,background-color .18s,transform .18s,box-shadow .18s}.drop-card:hover{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 16px 32px -18px var(--shadow);transform:translateY(-2px)}.drop-card .mark{background:var(--accent-soft);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 14px;transition:scale .18s,background-color .18s;display:flex}.drop-card:hover .mark{background:var(--accent-chip);scale:1.09}.drop-card .mark>i{border:2px solid var(--accent);border-radius:3px;width:16px;height:16px}.drop-card .headline{margin-bottom:5px;font-size:16px;font-weight:600}.drop-card .sub{margin-bottom:16px}.drop-card button{padding:9px 20px;font-size:14px}.site-foot{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;padding:0 2px;font-size:12.5px;display:flex}.site-foot a{color:var(--muted);text-decoration:none}.site-foot a:hover{color:var(--accent);text-decoration:underline}.inner.narrow{max-width:560px}.load-card{padding:26px 28px}.load-card .name-row{align-items:baseline;gap:10px}.load-card h2{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600}.load-card .promise{margin-top:3px}.load-card .bar{margin:18px 0 8px}.load-card .readout{justify-content:space-between;font-size:12.5px;display:flex}.load-card .readout>.phase-name{color:var(--ink-3)}.rule{background:var(--line-soft);height:1px;margin:18px 0 14px}.load-card .steps{gap:9px}.load-card .actions{gap:10px;margin-top:20px}.phase{opacity:.45;align-items:center;gap:10px;display:flex}.phase.done,.phase.now{opacity:1}.phase>.label{color:var(--ink-3);flex:1;font-size:13px}.phase.now>.label{color:var(--ink);font-weight:500}.phase>.dot{border:2px solid var(--line);border-radius:99px;flex:none;width:16px;height:16px}.phase.done>.dot{background:var(--ok-soft);color:var(--ok);border:none;justify-content:center;align-items:center;font-size:10px;display:flex}.phase.now>.dot{background:var(--accent-soft);border-color:var(--accent);animation:1.1s ease-in-out infinite om-pulse}.err-card{padding:0;overflow:hidden}.err-head{background:var(--danger-soft);border-bottom:1px solid var(--danger-line);padding:16px 22px}.err-head .row{align-items:flex-start;gap:10px}.err-head .mark{background:var(--danger);width:20px;height:20px;color:var(--panel);border-radius:99px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.err-head .title{color:var(--danger);font-size:15px;font-weight:600}.err-head .file{color:var(--danger);opacity:.8;margin-top:2px;font-size:12.5px}.err-body{padding:18px 22px 20px}.err-body .message{color:var(--ink-2);text-wrap:pretty;font-size:13.5px;line-height:1.5}.err-tips{background:var(--panel-2);margin-top:14px}.err-tips .eyebrow{margin-bottom:7px}.err-tips .list{color:var(--ink-2);gap:6px;font-size:13px}.err-tips .list>div{align-items:flex-start;gap:8px;display:flex}.err-body .actions{gap:8px;margin-top:18px}.bar.thick{height:7px}.bar.thick>i{background:var(--accent);width:0;transition:width .6s ease-out}.schedule-title{flex:none;margin:0;font-size:16px;font-weight:700}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex:1;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:0;overflow:auto}.table-wrap.no-outline{border:none}table.schedule{border-collapse:separate;border-spacing:0;width:max-content;font-size:13px}table.schedule th,table.schedule td{text-align:left;vertical-align:top;white-space:nowrap;text-overflow:ellipsis;padding:8px 12px;overflow:hidden}table.schedule thead th{z-index:2;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--panel-2);border-bottom:1px solid var(--line-strong);cursor:pointer;padding:9px 12px;font-size:11.5px;font-weight:600;position:sticky;top:0}table.schedule thead th:hover{background:var(--accent-soft)}table.schedule thead th{-webkit-user-select:none;user-select:none}table.schedule thead th.sel,table.schedule thead th.chip-target{background:var(--accent-soft);color:var(--ink);box-shadow:inset 0 -3px 0 var(--accent)}table.schedule .th-btn{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;display:inline}table.schedule .th-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}table.schedule thead th:has(>.th-btn[aria-expanded=true]){background:var(--accent-soft);color:var(--ink);box-shadow:inset 0 -3px 0 var(--accent)}table.schedule.nobold thead th{font-weight:400}table.schedule.grid th,table.schedule.grid td{border-right:1px solid var(--line-soft)}table.schedule.grid tbody td{border-bottom:1px solid var(--line-soft)}table.schedule th:last-child,table.schedule td:last-child{border-right:none}table.schedule.zebra tbody tr.data:nth-of-type(2n) td{background:var(--zebra)}table.schedule tbody tr.data:hover td{background:var(--accent-soft)}table.schedule tbody tr{content-visibility:auto;contain-intrinsic-size:auto 30px}tr.group td{background:var(--group);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-left:12px;font-size:12.5px;font-weight:600}tr.group td .count{color:var(--muted);font-weight:400}tr.group.level-1 td{background:var(--panel-2);padding-left:30px;font-size:12px;font-weight:500}tr.group.level-2 td{background:var(--panel-2);padding-left:48px;font-size:11.5px;font-weight:500}tr.group.level-3 td{background:var(--panel-2);padding-left:66px;font-size:11.5px;font-weight:500}tr.footer td{color:var(--ink-3);border-bottom:1px solid var(--line);border-top:1px solid var(--line-soft);padding-top:7px;padding-bottom:7px;font-size:12.5px}tr.grand td{background:var(--panel-2);border-top:2px solid var(--ink);padding:11px 12px;font-size:13px;font-weight:700}tr.blank td{height:1.7em;padding:0}table.schedule td.num,table.schedule th.num{text-align:right}table.schedule td.num{font-variant-numeric:tabular-nums}table.schedule td.ctr,table.schedule th.ctr{text-align:center}th.vertical{writing-mode:vertical-rl;height:110px;transform:rotate(180deg)}table.schedule thead th[data-defcol]:after{content:"";cursor:col-resize;width:6px;position:absolute;top:0;bottom:0;right:0}table.schedule thead th[data-defcol]:hover:after{background:var(--accent);opacity:.5}table.schedule thead th.vertical[data-defcol]:after{left:0;right:auto}table.schedule thead th.add-col{cursor:default;padding:0}table.schedule thead th.add-col:hover{background:var(--panel-2)}table.schedule .th-add{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:none;color:var(--accent);padding:9px 12px;display:block}table.schedule .th-add:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media print{@page{margin:12mm;size:landscape}body{color:#000;background:#fff}.app-bar,.rail,.status,.overlay,.dropzone,.toast,.notice,.popover,table.schedule th.add-col{display:none!important}#app,.layout{min-width:0;height:auto;display:block;overflow:visible}.layout,.app-bar{min-width:0}.centre,.centre-body{padding:0;display:block;overflow:visible}.centre-head{display:none!important}.table-wrap{border:none;width:auto;max-width:none;overflow:visible}.schedule-title{margin:0 0 3mm;font-size:14pt}table.schedule{width:100%;font-size:9pt}table.schedule th,table.schedule td{white-space:normal;padding:1mm 1.5mm}table.schedule thead{display:table-header-group}table.schedule tbody tr{page-break-inside:avoid;break-inside:avoid}table.schedule tr.group{page-break-after:avoid;break-after:avoid}table.schedule tbody tr{content-visibility:visible}table.schedule thead th{color:#000;text-transform:none;letter-spacing:0;background:#fff;border-bottom:1.5pt solid #000;font-size:9pt;position:static}table.schedule.zebra tbody tr.data:nth-of-type(2n) td{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact;background:#f4f4f4}tr.group td{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact;background:#ececec}tr.grand td{background:#fff;border-top:1.5pt solid #000}table.schedule tbody td[style]{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact}}
