@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-cyrillic-ext-400-normal-zbv6uFvq.woff2)format("woff2"),url(/assets/raleway-cyrillic-ext-400-normal-QD38Acpa.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-cyrillic-400-normal-B1ZxqHSH.woff2)format("woff2"),url(/assets/raleway-cyrillic-400-normal-BOk4FNQ-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-vietnamese-400-normal-CTw6K1Xj.woff2)format("woff2"),url(/assets/raleway-vietnamese-400-normal-CTqj18iX.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-latin-ext-400-normal-B4d0sYmR.woff2)format("woff2"),url(/assets/raleway-latin-ext-400-normal-DoUy7GWe.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/raleway-latin-400-normal-C5eIEfLm.woff2)format("woff2"),url(/assets/raleway-latin-400-normal-sMcq1OIP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-cyrillic-ext-500-normal-DoOSefR2.woff2)format("woff2"),url(/assets/raleway-cyrillic-ext-500-normal-BLgs1t5N.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-cyrillic-500-normal-ejPie8pt.woff2)format("woff2"),url(/assets/raleway-cyrillic-500-normal-BkwshvnN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-vietnamese-500-normal-CL-kow7V.woff2)format("woff2"),url(/assets/raleway-vietnamese-500-normal-BFCCtoZS.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-latin-ext-500-normal-CFJA9GaE.woff2)format("woff2"),url(/assets/raleway-latin-ext-500-normal-D3Od-NQz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/raleway-latin-500-normal-D-8sZNrj.woff2)format("woff2"),url(/assets/raleway-latin-500-normal-tXW-zgej.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-cyrillic-ext-600-normal-ClRuJVnq.woff2)format("woff2"),url(/assets/raleway-cyrillic-ext-600-normal-BPa6pe9i.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-cyrillic-600-normal-Bf6BVg0_.woff2)format("woff2"),url(/assets/raleway-cyrillic-600-normal-PnINYvQl.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-vietnamese-600-normal-BNRw9Zee.woff2)format("woff2"),url(/assets/raleway-vietnamese-600-normal-CzgBZgE0.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-latin-ext-600-normal-DmsT1QjI.woff2)format("woff2"),url(/assets/raleway-latin-ext-600-normal-BLsvr1L6.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/raleway-latin-600-normal-Dim-CLtL.woff2)format("woff2"),url(/assets/raleway-latin-600-normal-BYS3Hyhk.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-cyrillic-ext-700-normal-BYzsFH9R.woff2)format("woff2"),url(/assets/raleway-cyrillic-ext-700-normal-D0MeO1Y4.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-cyrillic-700-normal-Dynwhvvt.woff2)format("woff2"),url(/assets/raleway-cyrillic-700-normal-Y0JCLxAF.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-vietnamese-700-normal-DhRR6XW-.woff2)format("woff2"),url(/assets/raleway-vietnamese-700-normal-BT2zqTaJ.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-latin-ext-700-normal-BSYX0AAR.woff2)format("woff2"),url(/assets/raleway-latin-ext-700-normal-D9ggOV46.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Raleway;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/raleway-latin-700-normal-BVpQLp0x.woff2)format("woff2"),url(/assets/raleway-latin-700-normal-JVwBSLev.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#151918;--surface:#1c2120;--text:#e9edec;--muted:#939f9d;--border:#2a3230;--field:#262c2b;--accent:#31c4a6;--accent-bg:#1c3b32;--warn:#f2c063;--warn-bg:#3a2e14;--danger:#f97066;--danger-bg:#3d1d1a;--live:#85b7eb;--live-bg:#17304b;--st-todo:#ef6b78;--st-measured:#f0b24d;--st-annotated:#5b9be0;--st-delivered:#3fbf85;--st-audited:#a6e3bd;--st-missing:#b9a0e6;--st-off:#6b7480;--st-notlo:#3a414b;--net-label:#f0b45a;--mark:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f4f6f5;--surface:#fff;--text:#152f3d;--muted:#5c6b70;--border:#e0e6e3;--field:#ebefed;--accent:#1d8b6e;--accent-bg:#e1f4ec;--warn:#8a5a00;--warn-bg:#fdf1d8;--danger:#b42318;--danger-bg:#fdeceb;--live:#1d5fa5;--live-bg:#e4effb;--st-todo:#d1495b;--st-measured:#c98314;--st-annotated:#2f6fb3;--st-delivered:#2e9d6a;--st-audited:#14532d;--st-missing:#8e6cc9;--st-off:#aeb6c1;--st-notlo:#d5dae1;--net-label:#152f3d;--mark:#152f3d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 Raleway,system-ui,Segoe UI,sans-serif}h1{letter-spacing:-.01em;margin:0 0 16px;font-size:20px;font-weight:700}h2{margin:28px 0 10px;font-size:16px;font-weight:700}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}button,a.button{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:6px;padding:5px 12px;font-size:13px;font-weight:600}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}button[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}button.link{color:var(--accent);font-size:inherit;font-weight:inherit;background:0 0;border:0;padding:0;text-decoration:underline}input,select,textarea{background:var(--field);border:1px solid var(--border);border-radius:6px;padding:5px 8px}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--danger)}.page{padding:24px}.topbar{background:var(--surface);border-bottom:1px solid var(--border)}.topbar .wrap{align-items:center;gap:16px;height:64px;display:flex}.logo{color:var(--text);align-items:center;gap:8px;text-decoration:none;display:flex}.logo img{width:26px;height:26px}.wordmark{letter-spacing:.35em;text-transform:uppercase;font-size:10px;font-weight:600}.divider{background:var(--border);width:1px;height:28px}.app-name{font-size:18px;font-weight:700}.user{align-items:baseline;gap:10px;margin-left:auto;display:flex}.wrap{max-width:1440px;margin:0 auto;padding:0 32px}.hero{padding-top:28px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0;font-size:11px;font-weight:700}.hero-title{letter-spacing:-.01em;margin:2px 0 0;font-size:28px;font-weight:700}.tabs{flex-wrap:wrap;column-gap:26px;margin-top:18px;display:flex}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 2px;text-decoration:none;display:flex}.tabs a:hover{color:var(--text)}.tabs a.active{color:var(--text);border-bottom-color:var(--accent)}.tabs svg{width:16px;height:16px}.content{min-width:0;padding-top:20px;padding-bottom:40px}.filters{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px;display:flex}.filters label{align-items:center;gap:6px;display:flex}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{border-radius:999px;padding:2px 10px;font-size:12px}.check{align-items:center;gap:6px;display:flex}.search-filters{margin-top:12px}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:6px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:7px 12px}th{color:var(--muted);font-size:12px;font-weight:600}td{font-variant-numeric:lining-nums tabular-nums}tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:lining-nums tabular-nums}td.wrap{white-space:normal;min-width:180px}table.rows tbody tr{cursor:pointer}table.rows tbody tr:hover{background:var(--bg)}table.rows td>a:first-child{color:var(--text);font-weight:600;text-decoration:none}table.rows tr:hover td>a:first-child{color:var(--accent)}.badge{background:var(--field);border:1px solid #0000;border-radius:999px;margin-left:6px;padding:1px 9px;font-size:12px;font-weight:500;display:inline-block}td>.badge:first-child{margin-left:0}.badge.warn,.status-Finished{background:var(--warn-bg);color:var(--warn);border-color:#0000}.badge.live,.status-Annotating{background:var(--live-bg);color:var(--live);border-color:#0000}.status-Delivered,.status-Audited{background:var(--accent-bg);color:var(--accent);border-color:#0000}.flag{color:var(--warn);background:var(--warn-bg);border-radius:4px;margin-left:8px;padding:0 6px;font-size:11px}.pager{align-items:center;gap:12px;margin-top:12px;display:flex}.title-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.title-row h1{margin:0}.title-row .push-right{margin-left:auto}.tiles{background:var(--surface);border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid;overflow:hidden}.tile{box-shadow:-1px 0 0 var(--border), 0 -1px 0 var(--border);grid-template-columns:1fr auto;align-items:center;column-gap:12px;padding:14px 18px;display:grid}.tile>.muted:first-child{font-size:13px}.tile .value{grid-row:span 2;font-size:22px;font-weight:700}.tile.warn .value{color:var(--warn)}.columns{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 32px;display:grid}ul.plain,ul.comments{margin:0;padding:0;list-style:none}ul.plain li{padding:4px 0}ul.comments li{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:8px;padding:8px 12px}ul.comments li.open-issue{border-color:var(--warn)}ul.comments p{white-space:pre-wrap;margin:4px 0}.comment-form{flex-direction:column;gap:6px;margin-top:8px;display:flex}.comment-form .row{justify-content:space-between;align-items:center;display:flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:6px;min-width:0;margin-bottom:16px;padding:4px 16px 16px}.panel h2{margin-top:12px}.panel .tiles{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:12px 0}.panel .tile{padding:10px 14px}.panel .tile .value{font-size:18px}.file-picker{flex-direction:column;gap:4px;display:flex}.file-picker>span:first-child{font-weight:600}.file-name{margin:12px 0 4px;font-weight:600}.notice{background:var(--warn-bg);color:var(--warn);border-radius:6px;padding:6px 10px}.success{color:var(--accent);font-weight:600}.actions{flex-direction:column;align-items:flex-start;gap:8px;margin-top:12px;display:flex}button.primary{background:var(--accent);border-color:var(--accent);color:var(--surface)}.details{margin:8px 0}.details summary{cursor:pointer;padding:4px 0}.details .table-wrap{max-height:320px;margin-top:6px;overflow:auto}.nav-buttons{gap:16px;margin-left:auto;display:flex}ul.warnings{background:var(--warn-bg);color:var(--warn);border-radius:6px;margin:0 0 16px;padding:8px 12px;list-style:none}.review{grid-template-columns:minmax(280px,460px) minmax(280px,1fr);align-items:start;gap:24px;display:grid}.plot{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin:0;padding:8px}.plot svg{width:100%;height:auto;display:block}.plot text{fill:var(--muted)}.plot .grid{stroke:var(--border);vector-effect:non-scaling-stroke}.plot .sleeper,.plot .rail{stroke:var(--muted);fill:var(--muted);vector-effect:non-scaling-stroke}.plot .profile{fill:var(--warn-bg);fill-opacity:.5;stroke:var(--warn);stroke-width:2px;vector-effect:non-scaling-stroke}.plot .object{fill:none;stroke:var(--live);stroke-width:2px;vector-effect:non-scaling-stroke}.plot .point{fill:var(--live)}.plot .point.inside{fill:var(--danger)}.plot figcaption{margin-top:4px}dl.fields{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0 0 12px;display:grid}dl.fields dt{color:var(--muted)}dl.fields dd{margin:0}ol.points{font-variant-numeric:tabular-nums;margin:0;padding-left:20px}ol.points li.inside{color:var(--danger)}.edit-form,.delete-form{flex-direction:column;gap:8px;display:flex}.delete-form{flex-flow:wrap;align-items:flex-end}.edit-form label,.delete-form label{flex-direction:column;gap:2px;display:flex}.edit-form textarea{font-family:ui-monospace,monospace}.edit-form .inline{gap:12px;display:flex}.edit-form .inline input{width:120px}.row-buttons{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}button.danger{background:var(--danger);border-color:var(--danger);color:var(--surface)}tr.deleted td{color:var(--muted)}.login{max-width:420px;margin:10vh auto;padding:0 16px}.login .logo{margin-bottom:20px}.user-list{flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.user-list button{justify-content:space-between;width:100%;padding:8px 12px;display:flex}@media (width<=720px){.wrap{padding:0 16px}.app-sub,.user-name,.wordmark,.divider{display:none}.hero{padding-top:16px}.hero-title{font-size:22px}.review{grid-template-columns:1fr}}.result-bar{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 8px;display:flex}.progress{align-items:center;gap:8px;display:inline-flex}.progress .bar{background:var(--border);border-radius:4px;width:120px;height:8px;display:inline-block;overflow:hidden}.progress .bar>span{background:var(--accent);height:100%;display:block}.twisty{width:1em;color:var(--muted);display:inline-block}.twisty-button{color:inherit;font:inherit;padding:0;text-decoration:none}tr.nested>td{background:var(--bg);padding:4px 0 8px 24px}tr.nested table{background:var(--surface);border:1px solid var(--border);border-radius:6px}tr.nested-link td:first-child{padding-left:36px}.plan-sections{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 10px;display:flex}.tiles+.filters{margin-top:16px}.title-row .filters{margin:0}.pace-head{margin:28px 0 10px}.pace-head h2{margin:0}table.pace th:not(:first-child),table.pace td:not(:first-child){width:13%}.tiles+.table-wrap{margin-top:12px}table.pace td i{background:var(--accent);opacity:.6;border-radius:2px;min-width:2px;height:3px;margin:3px 0 0 auto;display:block}a.button{text-decoration:none;display:inline-block}a.button:hover{border-color:var(--accent)}ol.steps{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:0 0 6px;padding:0;list-style:none;display:grid}ol.steps li{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}ol.steps li.ok{background:var(--accent-bg);color:var(--accent);border-color:#0000}ol.steps li.warn{background:var(--warn-bg);color:var(--warn);border-color:#0000}ul.blockers{margin:4px 0 0;padding:0;list-style:none}ul.blockers>li{border-top:1px solid var(--border);align-items:flex-start;gap:12px;padding:10px 0;display:flex}ul.blockers>li:first-child{border-top:0}ul.blockers>li:before{content:"";background:var(--warn);border-radius:50%;flex:none;width:8px;height:8px;margin-top:7px}ul.blockers>li.issue:before{background:var(--muted)}.blocker-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}ul.blockers details{text-align:right;max-width:50%}ul.blockers details[open]{text-align:left}ul.blockers summary{cursor:pointer;color:var(--accent)}.badge.ok{background:var(--accent-bg);color:var(--accent);border-color:#0000}.badge.project{border:1px dashed var(--accent);color:var(--accent);background:0 0}.warn-text{color:var(--warn)}.title-row .muted{margin:4px 0 0}.panel h3{border-top:1px solid var(--border);margin:16px 0 2px;padding-top:12px;font-size:14px}ul.notes{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}ul.notes li{border-left:2px solid var(--border);flex-direction:column;gap:2px;padding-left:12px;display:flex}.note-body{white-space:pre-wrap;font-size:13px}.stage-annotating,.stage-annotated{background:var(--live-bg);color:var(--live);border-color:#0000}.stage-exported{background:var(--warn-bg);color:var(--warn);border-color:#0000}.stage-delivered{background:var(--accent-bg);color:var(--accent);border-color:#0000}.stage-skipped{color:var(--muted)}ol.steps li.current{box-shadow:inset 0 0 0 2px}ol.steps li.off{color:var(--muted)}.folder{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:12px}.view-toggle{gap:4px;display:inline-flex}.board{grid-template-columns:repeat(5,minmax(150px,1fr));align-items:start;gap:8px;display:grid;overflow-x:auto}.board-col{background:var(--bg);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:6px;min-width:0;padding:8px;display:flex}.board-col h2{justify-content:space-between;margin:0 2px 2px;font-size:13px;display:flex}.board-col h2 span{color:var(--muted);font-weight:400}.card{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:6px;padding:6px 8px;font-size:12px;text-decoration:none;display:block}.card:hover{border-color:var(--accent)}.card.sort-out{border-left:3px solid var(--warn)}.card strong{white-space:nowrap;font-size:13px;display:block}.card>a:first-child{color:var(--text);text-decoration:none}.card>a:first-child:hover{color:var(--accent)}.card .badge{margin:4px 0 0}.card-foot{justify-content:space-between;align-items:center;gap:6px;margin-top:4px;display:flex}.card-foot button{padding:1px 8px;font-size:11px}.card-foot .row-buttons{gap:4px;margin:0}.initials{background:var(--live-bg);width:20px;height:20px;color:var(--live);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:inline-flex}.network-bar{flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:6px;display:flex}.network-bar label{align-items:center;gap:6px;display:flex}.network-bar input[type=range]{width:200px}.legend{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.legend i{vertical-align:middle;border-radius:2px;width:16px;height:4px;margin-right:4px;display:inline-block}.legend .st-todo{background:var(--st-todo)}.legend .st-measured{background:var(--st-measured)}.legend .st-annotated{background:var(--st-annotated)}.legend .st-delivered{background:var(--st-delivered)}.legend .st-audited{background:var(--st-audited)}.legend .st-off{background:var(--st-off)}.legend .st-notlo{background:var(--st-notlo)}.legend .st-missing{background:repeating-linear-gradient(90deg, var(--st-missing) 0 6px, transparent 6px 9px)}.network-note{margin:0 0 8px}.network{background:var(--surface);border:1px solid var(--border);border-radius:6px;height:calc(100vh - 390px);min-height:420px;position:relative;overflow:hidden}.network canvas,.network svg{width:100%;height:100%;position:absolute;inset:0}.network canvas{cursor:grab;touch-action:none}.network canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.network-zoom{z-index:2;flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:8px}.network-zoom button{width:32px;height:32px;padding:0;font-size:18px;line-height:1}.network svg{pointer-events:none}.network text{font-size:var(--fs);fill:var(--net-label);paint-order:stroke;stroke:var(--surface);stroke-width:var(--halo);pointer-events:none}.network text.key{font-weight:600}.network-tip{pointer-events:none;z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:6px;max-width:380px;padding:6px 8px;font-size:12px;display:none;position:fixed;box-shadow:0 2px 8px #0003}.ok-text{color:var(--accent)}.targets{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:24px;display:grid}.target{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:14px 18px}.target-figures{flex-wrap:wrap;align-items:baseline;gap:8px;margin:2px 0 12px;display:flex}.target-value{font-size:28px;font-weight:700;line-height:1.2}.target-share{font-variant-numeric:tabular-nums;margin-left:auto;font-weight:700}.meter{background:var(--accent-bg);border-radius:4px;height:8px;position:relative}.meter>span{background:var(--accent);border-radius:4px;position:absolute;top:0;bottom:0;left:0}.meter>span.partly{opacity:.4;border-radius:0 4px 4px 0}.meter>i{background:var(--text);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.target-pace{margin-top:10px}.target-pace svg{vertical-align:-3px;margin-right:4px}.row-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 10px;display:flex}.row-head .small{font-weight:400}.burnup+.row-head{margin-top:28px}.danger-text{color:var(--danger)}.target-list{margin:10px 0 0;padding:0;font-size:13px;list-style:none}.target-list li{border-top:1px solid var(--border);align-items:center;gap:8px;min-width:0;padding:4px 0;display:flex}.target-list li>:last-child:not(.name){white-space:nowrap;margin-left:auto}.target-list .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.target-list .num{font-variant-numeric:tabular-nums}.target-list .bar{background:var(--accent);border-radius:3px;flex:none;height:6px}.target-list .chip{background:var(--field);color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:4px;padding:0 7px;font-size:11px;line-height:18px;display:inline-flex}.target-list .chip.soon{background:var(--warn-bg);color:var(--warn)}.target-list .chip.late{background:var(--danger-bg);color:var(--danger);font-weight:600}.target>p.small{margin:10px 0 0}.burnup-head{margin:8px 0}.burnup-head h2{margin:0}.burnup{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:8px;padding-top:10px;position:relative;overflow:hidden}.burnup .legend{padding:0 16px}.legend i.key,.burnup-tip i.key{border-top:2px solid var(--accent);background:0 0;border-radius:0;width:16px;height:0}.legend i.key.expected,.burnup-tip i.key.expected{border-top:2px dashed var(--muted)}.legend i.key.goal{border-top:1px solid var(--muted)}.burnup-tip i.key{vertical-align:middle;margin-right:6px;display:inline-block}.burnup svg{display:block}.burnup svg:focus-visible{outline-offset:-2px}.burnup .grid{stroke:var(--border);stroke-width:1px}.burnup .tick{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.burnup .season{fill:var(--field)}.burnup .target-line{stroke:var(--muted);stroke-width:1px}.burnup .expected{fill:none;stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:6 4}.burnup .done{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.burnup .done-area{fill:var(--accent);opacity:.1}.burnup .today,.burnup .crosshair{stroke:var(--text);stroke-width:1px;opacity:.45}.burnup .end-dot{fill:var(--accent);stroke:var(--surface);stroke-width:2px}.burnup-tip{pointer-events:none;background:var(--surface);border:1px solid var(--border);border-radius:6px;min-width:160px;padding:6px 10px;font-size:13px;position:absolute;box-shadow:0 2px 8px #0003}.board-key{color:var(--muted);flex-wrap:wrap;gap:4px 16px;margin:0 0 8px;font-size:12px;display:flex}.board-key span,.card .chip,.route{align-items:center;gap:4px;display:inline-flex}.card .chip{background:var(--field);color:var(--muted);white-space:nowrap;padding:0 7px;font-size:11px;line-height:18px}.card .chip.soon{background:var(--warn-bg);color:var(--warn)}.card .chip.late{background:var(--danger-bg);color:var(--danger);font-weight:600}.route{flex-wrap:wrap;min-width:0;margin-top:4px;font-size:13px;display:flex}.route svg{color:var(--muted)}.route-names{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex-basis:100%;font-size:11px;overflow:hidden}.route.muted{font-size:11px}.card-chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.card-chips .badge{margin:0;font-size:11px}.theme-toggle{color:var(--muted);align-self:center;display:inline-flex}.theme-toggle:hover{color:var(--text)}
