:root{--navy:#0b1d35;--bg:#0a1222;--panel:#111b2e;--panel-2:#16223a;--border:#22314f;--text:#e8edf5;--muted:#8d9bb3;--blue:#4c8dff;--brand-blue:#1a56db;--amber:#f5a524;--green:#2fcf74;--red:#f05252;--purple:#a78bfa}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-size:clamp(13px,.85vw,18px)}.muted{color:var(--muted)}.small{font-size:.82em}.blue{color:var(--blue)}.amber{color:var(--amber)}.green{color:var(--green)}.red{color:var(--red)}.loading{display:grid;place-items:center;color:var(--muted);font-size:1.4rem}.board,.loading{min-height:100vh}.board{flex-direction:column}.board,.top{display:flex}.top{position:-webkit-sticky;position:sticky;top:0;z-index:5;align-items:center;gap:1.2rem;padding:.6rem 1.2rem;background:var(--navy);border-bottom:1px solid var(--border)}.logo{height:2.4rem}.title{font-weight:700;font-size:1.35rem;letter-spacing:.02em;white-space:nowrap}.pills{display:flex;flex-wrap:wrap;gap:.5rem;flex:1 1}.pill{border:1px solid var(--border);border-radius:999px;padding:.2rem .7rem;font-size:.8rem;color:var(--muted);white-space:nowrap}.pill-ok{color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,transparent)}.pill-warn{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 55%,transparent)}.clock{font-size:2rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tiles{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.8rem;gap:.8rem;padding:.9rem 1.2rem 0}.tile{background:var(--panel);border:1px solid var(--border);border-top:3px solid var(--border);border-radius:10px;padding:.7rem .9rem}.tile-blue{border-top-color:var(--blue)}.tile-amber{border-top-color:var(--amber)}.tile-green{border-top-color:var(--green)}.tile-red{border-top-color:var(--red)}.tile-label{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--muted);display:flex;gap:.5rem;align-items:center}.tile-big{font-size:clamp(2rem,3.4vw,4.6rem);font-weight:800;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile-sub{font-size:.8rem;color:var(--muted);line-height:1.45}.main{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);grid-gap:.8rem;gap:.8rem;padding:.8rem 1.2rem 1.2rem;flex:1 1}.left{display:flex;flex-direction:column;gap:.8rem;min-width:0}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;margin-bottom:.6rem}.panel-head .muted{font-weight:400;text-transform:none;letter-spacing:0}.empty{margin:.4rem 0}.hub+.hub{margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--border)}.hub-head{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem}.wave{display:grid;grid-template-columns:9rem 1fr 11rem;align-items:center;grid-gap:.8rem;gap:.8rem;padding:.12rem 0}.wave-name{display:flex;flex-direction:column;line-height:1.15}.wave-name strong{font-size:1.15rem}.wave-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.wave-num strong{font-size:1.15rem}.bar{position:relative;height:1.35rem;background:var(--panel-2);overflow:hidden}.bar,.fill{border-radius:6px}.fill{height:100%}.fill-green{background:var(--green)}.fill-amber{background:var(--amber)}.fill-blue{background:var(--blue)}.fill-red{background:var(--red)}.bar-pct{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:700;color:#fff;text-shadow:0 0 3px rgba(0,0,0,.6)}.worm-panel{flex:1 1;display:flex;flex-direction:column;min-height:15rem}.worm-box{flex:1 1;min-height:0;position:relative}.worm{position:absolute;inset:0;display:block}.worm .grid{stroke:var(--border);stroke-width:1}.worm .axis{fill:var(--muted);font-size:13px}.worm .target-line{fill:none;stroke:var(--amber);stroke-width:2.5;stroke-dasharray:8 6}.worm .target-label{fill:var(--amber);font-size:15px;font-weight:700}.worm .now-line{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 4}.worm .actual-area{fill:color-mix(in srgb,var(--blue) 22%,transparent)}.worm .actual-line{fill:none;stroke:var(--blue);stroke-width:3;stroke-linejoin:round}.worm .actual-dot{fill:var(--blue);stroke:#fff;stroke-width:2}.worm .actual-label{fill:var(--blue);font-size:16px;font-weight:700}.attention{display:flex;flex-direction:column;gap:.7rem}.all-clear{border:1px solid color-mix(in srgb,var(--green) 45%,transparent);color:var(--green);border-radius:8px;padding:.8rem;font-weight:600}.ex-group{display:flex;flex-direction:column;gap:.35rem}.ex-title{display:flex;align-items:center;gap:.5rem;font-weight:600}.ex-count{margin-left:auto;font-size:1.6rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ex-card{background:var(--panel-2);border:1px solid var(--border);border-left:3px solid var(--red);border-radius:8px;padding:.45rem .6rem}.ex-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.idle{margin-left:auto;color:var(--red);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.missing-line{font-size:.88em;padding-left:.6rem;border-left:2px solid var(--amber);margin-top:.2rem}.ex-line{font-size:.9em;padding:.15rem 0}.more{padding-left:.2rem}.ex-info{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.6rem;border-top:1px solid var(--border)}.chip{font-size:.78rem;border:1px solid var(--border);border-radius:6px;padding:.2rem .5rem;color:var(--muted)}.chip-warn{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 45%,transparent)}.waiting-on{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chip-hot{color:var(--text);border-color:var(--red);background:color-mix(in srgb,var(--red) 18%,transparent)}.chip-purple{color:var(--purple);border-color:color-mix(in srgb,var(--purple) 45%,transparent)}.tag{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.08rem .5rem;margin-left:.3rem}.ex-row .tag,.ex-title .tag{margin-left:0}.tag-red{background:color-mix(in srgb,var(--red) 20%,transparent);color:var(--red)}.tag-amber{background:color-mix(in srgb,var(--amber) 20%,transparent);color:var(--amber)}.tag-purple{background:color-mix(in srgb,var(--purple) 20%,transparent);color:var(--purple)}.ex-list{display:flex;flex-direction:column;gap:.7rem;min-height:0;flex:1 1;overflow:hidden}@media (min-width:1101px){.board{height:100vh;overflow:hidden}.attention,.left,.main{min-height:0}}@media (max-width:1100px){.worm-panel{min-height:20rem}.tiles{grid-template-columns:repeat(2,1fr)}.main{grid-template-columns:1fr}.wave{grid-template-columns:6.5rem 1fr 8rem}.pills{display:none}}.ex-group{flex:none}.ex-grow{flex:1 1 auto;min-height:6rem}.ex-cards{display:flex;flex-direction:column;gap:.35rem;min-height:0;flex:1 1;overflow:hidden}.bp-page{min-height:100vh}.bp-top{flex-wrap:wrap}.bp-tabs{display:flex;gap:.3rem;flex:1 1;flex-wrap:wrap}.bp-tab{color:var(--muted);text-decoration:none;border:1px solid var(--border);border-radius:6px;padding:.3rem .8rem;font-weight:600}.bp-tab:hover{color:var(--text);border-color:var(--muted)}.bp-tab-on{color:#fff;background:var(--brand-blue);border-color:var(--brand-blue)}.bp-main{max-width:90rem;margin:0 auto;padding:1rem 1.2rem 3rem;display:flex;flex-direction:column;gap:.9rem;font-size:15px}.bp-h1,.bp-intro{margin:0}.bp-h1{font-size:1.5rem}.bp-h2{margin:.4rem 0 0;font-size:1.05rem}.bp-tiles{grid-template-columns:repeat(4,1fr);padding:0}.bp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));grid-gap:.9rem;gap:.9rem}.bp-card{display:flex;flex-direction:column;gap:.35rem;background:var(--panel);border:1px solid var(--border);border-top:3px solid var(--brand-blue);border-radius:10px;padding:.9rem 1rem;color:var(--text);text-decoration:none}.bp-card:hover{border-color:var(--blue)}.bp-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.bp-card-state{font-size:1.4rem;font-weight:800}.bp-card-big{font-size:2.6rem;font-weight:800;line-height:1.1;color:var(--blue);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bp-card-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.88rem}.bp-card-next{display:flex;flex-direction:column;gap:.3rem;padding:.5rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.bar-thin{height:.75rem}.bp-dates{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.3rem}.bp-date{flex:0 0 10.5rem;display:flex;flex-direction:column;gap:.3rem;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:.55rem .7rem;color:var(--text);text-decoration:none}.bp-date:hover{border-color:var(--muted)}.bp-date-on{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue) inset}.bp-date-label{font-weight:700}.bp-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(28rem,1fr));grid-gap:.9rem;gap:.9rem;align-items:start}.bp-table{width:100%;border-collapse:collapse;font-size:.88rem}.bp-table td,.bp-table th{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border);vertical-align:middle}.bp-table th{color:var(--muted);font-weight:600;white-space:nowrap}.bp-table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.bp-table .bar-col{width:9rem}.bp-short-summary{margin:0 0 .7rem}.bp-hours{display:flex;align-items:flex-end;gap:.35rem;height:9rem}.bp-hour{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:1.6rem}.bp-hour-bar{width:100%;background:var(--blue);border-radius:4px 4px 0 0;min-height:2px}@media (max-width:900px){.bp-tiles{grid-template-columns:repeat(2,1fr)}.bp-two{grid-template-columns:1fr}}