@font-face{font-family:Anuphan;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b86b71495302ed8f-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Anuphan;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/28ed2746e72fcf41-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Anuphan;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ce8d4b74114316ca-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Anuphan;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d877add5adc7a711-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Anuphan;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b86b71495302ed8f-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Anuphan;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/28ed2746e72fcf41-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Anuphan;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ce8d4b74114316ca-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Anuphan;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d877add5adc7a711-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Anuphan;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b86b71495302ed8f-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Anuphan;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/28ed2746e72fcf41-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Anuphan;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ce8d4b74114316ca-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Anuphan;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/d877add5adc7a711-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Anuphan Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_af4732{font-family:Anuphan,Anuphan Fallback;font-style:normal}.__variable_af4732{--font-anuphan:"Anuphan","Anuphan Fallback"}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db9bfcd87f1d73a3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4e2312c98e240c05-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/feed52454563c595-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f83e5507ec3854fa-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8934311971e59087-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/bfdf244a9384e8b2-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b10e9fa1144bb4fb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d13ab8ed065835e4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d8c0f620f258dcc1-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5fcb63deed33aab6-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e595057e1ab84c19-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/861fabf8a4ffc042-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Thai Fallback;src:local("Arial");ascent-override:110.31%;descent-override:52.78%;line-gap-override:0.00%;size-adjust:101.17%}.__className_6cf037{font-family:IBM Plex Sans Thai,IBM Plex Sans Thai Fallback;font-style:normal}.__variable_6cf037{--font-plex-thai:"IBM Plex Sans Thai","IBM Plex Sans Thai Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_7e0dc4{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_7e0dc4{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--bg:#f6f4f6;--surface:#ffffff;--surface-2:#faf8fa;--ink:#1d1a1e;--ink-2:#57505a;--ink-3:#6d6570;--line:#e7e2e8;--brand:#b23f7f;--brand-strong:#8f3366;--brand-mark:#d4569b;--brand-wash:#fcf1f7;--gold:#c9a233;--gold-text:#7a5e12;--gold-wash:#fbf6e8;--ok:#15803d;--ok-wash:#effaf3;--wait:#1d4ed8;--wait-wash:#eff4ff;--bad:#b91c1c;--bad-wash:#fdf2f2;--warn:#b45309;--warn-wash:#fff8ed;--shadow:0 1px 2px rgb(40 20 35/.06),0 8px 24px rgb(40 20 35/.07);--pl-panel:#1f3a6e;--pl-found:#4ade80;--f-display:var(--font-anuphan),var(--font-plex-thai),"Noto Sans Thai","Leelawadee UI","Sukhumvit Set",system-ui,sans-serif;--f-body:var(--font-plex-thai),"Noto Sans Thai","Leelawadee UI","Sukhumvit Set","Segoe UI",system-ui,sans-serif;--f-num:var(--font-plex-mono),ui-monospace,"Cascadia Mono","SF Mono",monospace;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141115;--surface:#1d191e;--surface-2:#231e24;--ink:#f2edf2;--ink-2:#c6bcc7;--ink-3:#a99fab;--line:#342d35;--brand:#ee8fc2;--brand-strong:#f6b3d6;--brand-mark:#d4569b;--brand-wash:#2c1824;--gold:#c9a233;--gold-text:#e3c66b;--gold-wash:#2a2312;--ok:#5fd08a;--ok-wash:#14261b;--wait:#8fb0ff;--wait-wash:#161d33;--bad:#ff8f8f;--bad-wash:#2c1515;--warn:#f3b264;--warn-wash:#2b2012;--shadow:0 1px 2px rgb(0 0 0/.4),0 8px 24px rgb(0 0 0/.35);--pl-panel:#3f63b0;color-scheme:dark}}:root[data-theme=dark]{--bg:#141115;--surface:#1d191e;--surface-2:#231e24;--ink:#f2edf2;--ink-2:#c6bcc7;--ink-3:#a99fab;--line:#342d35;--brand:#ee8fc2;--brand-strong:#f6b3d6;--brand-mark:#d4569b;--brand-wash:#2c1824;--gold:#c9a233;--gold-text:#e3c66b;--gold-wash:#2a2312;--ok:#5fd08a;--ok-wash:#14261b;--wait:#8fb0ff;--wait-wash:#161d33;--bad:#ff8f8f;--bad-wash:#2c1515;--warn:#f3b264;--warn-wash:#2b2012;--shadow:0 1px 2px rgb(0 0 0/.4),0 8px 24px rgb(0 0 0/.35);--pl-panel:#3f63b0;color-scheme:dark}*{box-sizing:border-box}body,html{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.6;margin:0;-webkit-text-size-adjust:100%}a{color:var(--brand)}button,input,select,textarea{font:inherit;color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app{container:app/inline-size;background:var(--surface);min-height:100dvh;display:flex;flex-direction:column;position:relative}@media (min-width:900px){body{padding:24px 24px 0}.app{max-width:1240px;margin:0 auto;min-height:calc(100dvh - 24px);border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0;box-shadow:var(--shadow)}}.appbar{display:flex;align-items:center;gap:10px;padding:calc(14px + env(safe-area-inset-top, 0px)) 16px 12px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mark{width:30px;height:30px;flex:none}.appbar .who{display:grid;line-height:1.25;min-width:0;flex:1 1}.appbar .who b{font-family:var(--f-display);font-size:15px}.appbar .who b,.appbar .who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appbar .who span{font-size:13px;color:var(--ink-3)}.chip-role{font-size:12.5px;font-weight:600;color:var(--gold-text);background:var(--gold-wash);border:1px solid var(--gold);border-radius:999px;padding:2px 10px;white-space:nowrap}.appbar .tools{display:flex;align-items:center;gap:4px;margin-left:auto}.iconbtn{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:10px;border:1px solid transparent;background:none;color:var(--ink-2);cursor:pointer;text-decoration:none;flex:none}.iconbtn:hover{background:var(--surface-2);border-color:var(--line);color:var(--ink)}.iconbtn svg{width:20px;height:20px}.topnav{display:flex;gap:2px}.topnav a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:10px;color:var(--ink-2);text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap}.topnav a:hover{background:var(--surface-2);color:var(--ink)}.topnav a[aria-current=page]{background:var(--brand-wash);color:var(--brand)}.topnav svg{width:18px;height:18px}@container app (max-width: 640px){.topnav .lbl{display:none}.topnav a{padding:0 10px}.appbar .chip-role{display:none}}.track{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:12px 16px 4px;margin:0;list-style:none}.track span{height:4px;border-radius:4px;background:var(--line);display:block}.track span.done{background:var(--brand-mark)}.track span.now{background:linear-gradient(90deg,var(--brand-mark) 50%,var(--line) 50%)}.track-label{display:flex;justify-content:space-between;padding:2px 16px 0;font-size:12px;color:var(--ink-3)}.track-label b{color:var(--brand);font-weight:600}.body{padding:14px 16px 132px;gap:14px;align-content:start;min-width:0}.body,.next{display:grid}.next{gap:2px;padding:12px 14px;border-radius:14px;background:var(--brand-wash);border:1px solid color-mix(in srgb,var(--brand-mark) 30%,transparent)}.next small{font-size:12.5px;color:var(--brand)}.next .nextrow>span,.next small{font-weight:600}h1.page,h2.page{font-size:20px;margin:4px 0 0;text-wrap:balance}h1.page,h2.page,h3.sec{font-family:var(--f-display)}h3.sec{font-size:16px;margin:6px 0 0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}h3.sec small{font-family:var(--f-body);font-weight:400;font-size:13px;color:var(--ink-3)}.route{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:6px;background:var(--surface)}.route .top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.route .path{font-weight:600;overflow-wrap:anywhere}.route .len{font-family:var(--f-num);font-size:15px;white-space:nowrap}.route .spec{font-size:13.5px;color:var(--ink-2)}.route .tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.route .acts{margin-left:auto;display:flex;gap:4px}.route.editing{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.tag{font-size:12.5px;padding:1px 9px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}.route.flag{border-color:color-mix(in srgb,var(--warn) 55%,var(--line));background:var(--warn-wash)}.flagline{font-size:13.5px;color:var(--warn);display:flex;gap:6px;align-items:flex-start}.flagline.block{color:var(--bad)}.flagline svg{flex:none;margin-top:3px}.warnbox{display:grid;gap:4px}.add{border:1.5px dashed color-mix(in srgb,var(--brand-mark) 45%,var(--line));border-radius:14px;padding:14px;display:grid;gap:12px;background:var(--surface-2)}.add .row,.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:grid;gap:4px;font-size:13px;color:var(--ink-2);min-width:0}.field input,.field select,.field textarea{font:16px var(--f-body);min-height:44px;padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);width:100%}.field select{padding:8px 10px}.field input.num{font-family:var(--f-num)}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--bad);box-shadow:inset 0 0 0 1px var(--bad)}.check-inline{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);min-height:40px;cursor:pointer}.check-inline input{width:18px;height:18px;accent-color:var(--brand)}.presets{display:flex;gap:8px;flex-wrap:wrap}.presets button{font:500 14px/1.2 var(--f-body);min-height:40px;padding:6px 12px;border-radius:10px;cursor:pointer;text-align:left;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.presets button small{display:block;font-size:12px;color:var(--ink-3)}.presets button[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-wash)}details.allow summary{cursor:pointer;font-size:14px;color:var(--ink-2);min-height:40px;display:flex;align-items:center;gap:6px;list-style:none;flex-wrap:wrap}details.allow summary::-webkit-details-marker{display:none}details.allow summary b{color:var(--ink);font-weight:600}details.allow summary .edit{margin-left:auto;color:var(--brand);font-weight:600}details.allow .grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding-top:6px}.result{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.result.combined{border-color:color-mix(in srgb,var(--brand-mark) 45%,var(--line))}.result.combined .cap{background:var(--brand-wash)}.line{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 14px;border-top:1px solid var(--line);align-items:baseline}.line:first-child{border-top:0}.line .name{font-weight:500;overflow-wrap:anywhere}.line .qty{font-family:var(--f-num);font-size:20px;font-weight:600;text-align:right;white-space:nowrap}.line .qty small{font-family:var(--f-body);font-size:13px;font-weight:500;color:var(--ink-2);margin-left:4px}.line .why{font-size:13px;color:var(--ink-3);display:none}.line .side,.line .why{grid-column:1/-1}.line .why.always,.show-why .line .why{display:block}.line.hl .why{color:var(--brand)}.line.zero .qty{color:var(--ink-3)}.line.not-orderable{background:var(--surface-2)}.line.warns{display:block}.result .cap{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 14px;font-size:13px;color:var(--ink-3);background:var(--surface-2);border-top:1px solid var(--line);flex-wrap:wrap}.result .cap:first-child{border-top:0;border-bottom:1px solid var(--line)}.result .cap:first-child+.line{border-top:0}.result .cap b{color:var(--ink);font-family:var(--f-display);font-size:14px}.whytoggle{justify-self:start;font:600 14px var(--f-body);color:var(--brand);background:none;border:0;min-height:40px;padding:0;cursor:pointer}.pill{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:2px 10px;border-radius:999px;white-space:nowrap}.pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.pill.wait{color:var(--wait);background:var(--wait-wash)}.pill.ok{color:var(--ok);background:var(--ok-wash)}.pill.bad{color:var(--bad);background:var(--bad-wash)}.pill.stale{color:var(--warn);background:var(--warn-wash)}.pill.draft{color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line)}.state{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:2px 10px;border-radius:999px;white-space:normal}.state:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.state.draft{color:var(--ink-2);background:var(--surface-2)}.state.pendingReview{color:var(--wait);background:var(--wait-wash)}.state.approved{color:var(--ok);background:var(--ok-wash)}.state.rejected{color:var(--bad);background:var(--bad-wash)}.state.staleApproval{color:var(--warn);background:var(--warn-wash)}.actionbar{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:12px 16px calc(14px + env(safe-area-inset-bottom, 0px));background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);display:flex;gap:10px;align-items:center}@media (min-width:900px){.actionbar{left:50%;transform:translateX(-50%);width:min(1240px,calc(100vw - 48px));border-inline:1px solid var(--line)}}.actionbar .sum{display:grid;line-height:1.25;font-size:13px;color:var(--ink-3);min-width:0;flex:1 1}.actionbar .sum b{color:var(--ink);font-size:15px}.actionbar.warn{background:color-mix(in srgb,var(--warn-wash) 94%,transparent);border-top-color:var(--warn)}.actionbar.warn .sum b{color:var(--warn)}.btn{font:600 16px var(--f-body);min-height:48px;padding:0 20px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;transition:transform 80ms ease-out,background-color .15s ease-out;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--surface)}.btn.primary:hover:not(:disabled){background:var(--brand-strong);border-color:var(--brand-strong)}.btn.danger{color:var(--bad)}.btn.grow{flex:1 1}.btn.small{min-height:40px;font-size:14px;padding:0 14px;border-radius:10px}.btn.dashed{border-style:dashed;border-color:color-mix(in srgb,var(--brand-mark) 45%,var(--line));color:var(--brand);background:none}.btn svg{width:18px;height:18px}.actionbar .btn.primary{margin-left:auto}.textbtn{font:600 14px var(--f-body);color:var(--brand);background:none;border:0;min-height:40px;padding:0 6px;cursor:pointer}.textbtn.danger{color:var(--bad)}.queue{display:grid;gap:10px}.qitem{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:4px;background:var(--surface);color:inherit;text-decoration:none;text-align:left;font:inherit;cursor:pointer;width:100%}.qitem .top{display:flex;justify-content:space-between;gap:10px;align-items:center}.qitem b{font-weight:600;overflow-wrap:anywhere}.qitem .meta{font-size:13px;color:var(--ink-3)}.qitem.active,.qitem[aria-current=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.qitem:hover{border-color:color-mix(in srgb,var(--brand) 50%,var(--line))}.qitem .secs{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.diff{font-size:13.5px;display:grid;gap:4px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line)}.diff .row{display:flex;justify-content:space-between;gap:10px}.diff .row span:last-child{font-family:var(--f-num)}.order{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.order .head{padding:12px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);display:grid;gap:2px}.order .head b{font-family:var(--f-display)}.order .head span{font-size:13px;color:var(--ink-3)}.check{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:12px 14px;border-top:1px solid var(--line);cursor:pointer}.check:first-child,.order .head+.check{border-top:0}.check input{width:20px;height:20px;accent-color:var(--brand)}.check .n{overflow-wrap:anywhere}.check .n small{display:block;font-size:12.5px;color:var(--warn)}.check .q{font-family:var(--f-num);font-weight:600;font-size:18px;white-space:nowrap}.check .q small{font-family:var(--f-body);font-size:13px;color:var(--ink-2);font-weight:500;margin-left:4px}.check:has(input:checked) .n,.check:has(input:checked) .q{color:var(--ink-3);text-decoration:line-through}.pv{border:1px solid var(--line);border-radius:14px;padding:12px;gap:12px;background:var(--surface)}.pv,.seg{display:grid}.seg{grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.seg button{min-height:40px;border:0;border-radius:9px;background:none;font:600 14px var(--f-body);color:var(--ink-2);cursor:pointer;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.seg button[aria-pressed=true],.seg button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgb(40 20 35/.12),inset 0 0 0 1px var(--brand)}.seg button small{font-weight:500;font-size:11.5px;color:var(--gold-text);margin-left:4px}.seg button:disabled{cursor:default}.field .seg{margin-top:2px}.quick{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px;align-items:end}.quick .x{padding-bottom:10px;color:var(--ink-3);font-family:var(--f-num)}.quick .btn{min-height:44px;padding:0 16px}.undo{font-size:13.5px;color:var(--ink-2);display:flex;gap:8px;align-items:center;padding:6px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line)}.undo span{flex:1 1;min-width:0}.undo button{font:600 14px var(--f-body);color:var(--brand);background:none;border:0;min-height:40px;cursor:pointer;padding:0 6px;white-space:nowrap}.pvrows{display:grid;gap:8px}.pvrow{display:grid;grid-template-columns:28px auto auto minmax(0,1fr) 40px;gap:6px;align-items:center}.pvrow .nm{font-family:var(--f-num);font-weight:600;color:var(--brand)}.stepper{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.stepper button{width:40px;height:44px;border:0;background:var(--surface);color:var(--ink);font:500 20px/1 var(--f-num);cursor:pointer}.stepper button:disabled{color:var(--ink-3);cursor:default}.stepper input{width:40px;height:44px;border:0;border-inline:1px solid var(--line);text-align:center;font:600 16px var(--f-num);background:var(--surface);color:var(--ink);padding:0}.stepper input[aria-invalid=true]{background:var(--bad-wash)}.bldg-head .rm,.pt .rm,.pvrow .rm{width:40px;height:44px;border:0;background:none;color:var(--ink-3);font-size:20px;cursor:pointer;border-radius:10px}.bldg-head .rm:hover,.pt .rm:hover,.pvrow .rm:hover{background:var(--bad-wash);color:var(--bad)}.pvrow .rm:disabled{opacity:.35;cursor:default;background:none}.pvrow .meta{display:grid;font-size:12.5px;line-height:1.3;color:var(--ink-3);min-width:0;overflow:hidden}.pvrow .meta b{font-weight:600;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pvrow .meta b,.pvrow .meta span,.rot{white-space:nowrap}.rot{justify-self:start;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink-2);font:500 14px var(--f-body);cursor:pointer}.rot.down{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-wash);color:var(--ink)}.dir-ico{position:relative;display:inline-block;width:14px;height:14px;flex:none;transition:transform .15s ease-out}.dir-ico:before{content:"";position:absolute;left:1px;right:3px;top:6px;height:2px;border-radius:1px;background:currentColor}.dir-ico:after{content:"";position:absolute;right:1px;top:3.5px;width:6px;height:6px;border-right:2px solid;border-top:2px solid;transform:rotate(45deg)}.dir-ico.down,.down>.dir-ico{transform:rotate(90deg)}@container app (max-width: 420px){.pvrow{grid-template-columns:26px auto auto minmax(0,1fr) 36px}.pvrow .meta{grid-column:2/-1;grid-row:2;display:flex;gap:8px}.rot .t{display:none}}.sketch{display:grid;gap:5px;padding:10px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);overflow-x:auto}.sketch .cap{font-size:12.5px;color:var(--ink-3)}.sk-row{display:flex;flex-wrap:nowrap;gap:2px;align-items:center}.sk-col b,.sk-row b{font:600 11px var(--f-num);color:var(--ink-3);width:22px;flex:none}.sk-p{width:9px;height:14px;border-radius:1.5px;background:color-mix(in srgb,var(--brand-mark) 30%,var(--surface));border:1px solid var(--brand-mark);flex:none}.sk-run{position:relative;display:flex;gap:2px;padding-inline:3px}.sk-run:after,.sk-run:before{content:"";position:absolute;left:0;right:0;height:1.5px;background:var(--ink-2);z-index:1}.sk-run:before{top:25%}.sk-run:after{top:70%}.sk-cols{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;padding-top:4px}.sk-col{display:grid;justify-items:center;gap:6px}.sk-col b{width:auto}.sk-run.down{flex-direction:column;padding:3px 0}.sk-run.down:after,.sk-run.down:before{top:0;bottom:0;height:auto;width:1.5px;left:auto;right:auto}.sk-run.down:before{left:25%}.sk-run.down:after{left:70%}.sk-run.down .sk-p{width:14px;height:9px}.sk-plan{width:100%;height:auto;max-height:420px;display:block}.sk-plan .sk-cell{fill:color-mix(in srgb,var(--brand-mark) 30%,var(--surface));stroke:var(--brand-mark);stroke-width:1}.sk-plan .sk-rail{stroke:var(--ink-2);stroke-width:1.5}.sk-plan .sk-name{font-family:var(--f-num);font-weight:600;fill:var(--ink-3)}.hint{font-size:13px;color:var(--ink-3);margin:0}.drop{position:relative;display:grid;place-items:center;gap:2px;min-height:96px;border:1.5px dashed color-mix(in srgb,var(--brand-mark) 45%,var(--line));border-radius:12px;background:var(--surface-2);cursor:pointer;text-align:center;padding:12px;font-weight:600}.drop small{font-weight:400;font-size:12.5px;color:var(--ink-3)}.drop input{position:absolute;width:1px;height:1px;opacity:0}.drop:focus-within{outline:2px solid var(--brand);outline-offset:2px}.plan-img{max-width:100%;border-radius:10px;border:1px solid var(--line);display:block}.readout{font-size:14px;padding:10px 12px;border-radius:10px;background:var(--ok-wash);color:var(--ink);border:1px solid color-mix(in srgb,var(--ok) 35%,transparent)}.readout b{color:var(--ok)}.shell{display:grid;grid-template-rows:auto 1fr;align-content:start;min-width:0;flex:1 1}.secnav{display:flex;gap:6px;overflow-x:auto;padding:10px 16px 2px;scrollbar-width:none}.secnav::-webkit-scrollbar{display:none}@container app (max-width: 759px){.secnav{padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),transparent)}}.secnav button{flex:none;display:grid;text-align:left;min-height:48px;padding:6px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font:600 14px/1.3 var(--f-body);color:var(--ink)}.secnav .c{font:500 12px/1.3 var(--f-body);color:var(--ink-3)}.secnav .c.warn{color:var(--warn);font-weight:600}.secnav button[aria-selected=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-wash)}.secadd{flex:none;min-height:48px;padding:6px 12px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--brand-mark) 45%,var(--line))!important;background:none!important;color:var(--brand)!important;font:600 14px var(--f-body);cursor:pointer;white-space:nowrap}.secpick{display:grid;gap:8px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);font-size:14px;color:var(--ink-2)}.secpick-opts{display:flex;flex-wrap:wrap;gap:8px}.col-in,.col-out,.split{display:grid;gap:14px;min-width:0}.col-in,.col-out{align-content:start}.nextrow{display:flex;gap:10px;justify-content:space-between}.linkbtn,.nextrow{align-items:center}.linkbtn{font:600 14px var(--f-body);color:var(--brand);background:var(--surface);border:1px solid color-mix(in srgb,var(--brand-mark) 45%,var(--line));border-radius:10px;min-height:40px;padding:0 14px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex}.locked{border:1.5px dashed var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:4px;background:var(--surface-2)}.locked p{margin:0;color:var(--ink-2);font-size:14px}.lk-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.pt,.pts{display:grid;gap:8px}.pt{grid-template-columns:minmax(0,1fr) 128px 40px;align-items:center}.pt .nm{font-weight:500}.pt>input.nm{min-height:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 16px var(--f-body);width:100%;min-width:0}.pt .dist{display:flex;align-items:center;gap:6px;color:var(--ink-2);font-size:14px}.pt .dist input{width:100%;min-height:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:16px var(--f-num);text-align:right;min-width:0}.pt .dist input[aria-invalid=true]{border-color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn);background:var(--warn-wash)}.tag.pending{color:var(--gold-text);background:var(--gold-wash);border-color:var(--gold);font-size:11.5px;font-weight:500;vertical-align:2px}.bldg{border:1px solid var(--line);border-radius:14px;padding:10px;display:grid;gap:12px;background:var(--surface)}.bldg.needs-roof{border-color:color-mix(in srgb,var(--warn) 60%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warn) 40%,transparent)}.bldg-head{display:grid;grid-template-columns:minmax(0,1fr) auto 40px;gap:8px;align-items:center}.bname{font:600 16px var(--f-display);min-height:44px;padding:6px 10px;border-radius:10px;border:1px solid transparent;background:var(--surface-2);color:var(--ink);width:100%;min-width:0}.bname:focus,.bname:hover{border-color:var(--line)}.bsum{color:var(--ink-3);white-space:nowrap}.bsum,.roofq{font-size:13px}.roofq{display:grid;gap:4px;color:var(--ink-2)}.roofq .req{color:var(--warn);font-weight:600}.roofchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.roofchips button{display:grid;text-align:left;min-height:44px;padding:5px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px/1.25 var(--f-body);cursor:pointer}.roofchips button small{font-size:11.5px;color:var(--ink-3)}.roofchips button[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-wash)}.rowsq{display:grid;gap:8px}.rowsq .head{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:13px;color:var(--ink-2)}.rowsq .seg{grid-auto-columns:auto}.rowsq .seg button{min-height:34px;font-size:13px;padding:0 10px}.speclist{display:grid;gap:8px}.specitem{display:grid;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font:inherit;color:inherit;width:100%;cursor:pointer}.specitem.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.specitem .top{display:flex;justify-content:space-between;gap:10px;align-items:center}.specitem .meta{font-size:13px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.specitem.off b{color:var(--ink-2);font-weight:500}.fielderr{margin:0;color:var(--bad);font-size:13.5px}.impact{font-size:13.5px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);display:grid;gap:4px;color:var(--ink-2)}.impact b{color:var(--ink)}.roofrow{grid-template-columns:minmax(0,1fr) 128px}.roofrow .nm{display:grid;line-height:1.3}.roofrow .nm small{font-size:12.5px;color:var(--ink-3);font-weight:400}.notice{padding:10px 12px;border-radius:10px;font-size:14px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);display:grid;gap:4px}.notice ul{margin:4px 0 0;padding-left:20px}.notice.ok{background:var(--ok-wash);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}.notice.warn{background:var(--warn-wash);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.notice.bad{background:var(--bad-wash);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.notice.info{background:var(--wait-wash);border-color:color-mix(in srgb,var(--wait) 30%,transparent)}.toasts{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(96px + env(safe-area-inset-bottom, 0px));z-index:60;display:grid;gap:8px;width:min(560px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--ink);color:var(--surface);box-shadow:var(--shadow);font-size:14px}.toast.error{background:var(--bad);color:#fff}.toast>span{flex:1 1;min-width:0}.toast ul{margin:4px 0 0;padding-left:18px}.toast button{background:none;border:0;color:inherit;font:600 14px var(--f-body);cursor:pointer;min-height:32px;padding:0 4px;text-decoration:underline}.empty{padding:18px 14px;text-align:center;color:var(--ink-3);font-size:14px}.result .empty{border:0}.muted{color:var(--ink-3)}.num{font-family:var(--f-num);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.login{min-height:100dvh;display:grid;place-items:center;padding:24px 16px}.login-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:28px 22px;display:grid;gap:16px}.login-card .brand{display:flex;align-items:center;gap:10px}.login-card .brand .mark{width:40px;height:40px}.login-card h1{font-family:var(--f-display);font-size:24px;line-height:1.2;margin:0}.login-card h1 b{color:var(--brand)}.login-card p{margin:0;color:var(--ink-2)}.eyebrow{font-size:13px;letter-spacing:.08em;color:var(--gold-text);font-weight:600}.jobs-grid{display:grid;gap:18px}.jobs-grid>.new-job-col{order:-1}.jobs-grid>.new-job-col.closed{display:none}.jobs-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.secchip{display:inline-flex;align-items:center;gap:4px;font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid var(--line);color:var(--ink-2);background:var(--surface-2)}.secchip svg{width:13px;height:13px}.secpicker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.secpicker label{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;font-weight:600;font-size:14px}.secpicker label small{grid-column:2;font-weight:400;font-size:12px;color:var(--ink-3)}.secpicker input{width:18px;height:18px;accent-color:var(--brand);grid-row:span 2}.secpicker label:has(input:checked){border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-wash)}fieldset.bare{border:0;padding:0;margin:0;display:grid;gap:8px;min-width:0}fieldset.bare legend{font-size:13px;color:var(--ink-2);padding:0;margin-bottom:4px}.review{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px;background:var(--surface)}.review .top{justify-content:space-between;gap:10px;align-items:center}.review .acts,.review .top{display:flex;flex-wrap:wrap}.review .acts{gap:8px}.scroll-x{overflow-x:auto;border:1px solid var(--line);border-radius:14px}table.data{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}table.data td,table.data th{padding:10px 12px;border-top:1px solid var(--line);text-align:left;vertical-align:top}table.data thead th{border-top:0;font-size:12.5px;color:var(--ink-3);font-weight:600;background:var(--surface-2)}table.data td.num,table.data th.num{text-align:right}table.data .working{display:block;font-size:12px;color:var(--ink-3)}details.box{border:1px solid var(--line);border-radius:14px;padding:4px 14px;background:var(--surface)}details.box[open]{padding-bottom:14px}details.box>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}.icon{width:18px;height:18px;flex:none}.spin{width:16px;height:16px;border-radius:50%;border:2px solid;border-right:2px solid transparent;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(1turn)}}@container app (min-width: 760px){.secadd{width:100%;text-align:left}.appbar{padding:14px 24px 12px}.track{padding:12px 24px 4px}.track-label{padding:2px 24px 0}.shell.with-nav{grid-template-columns:220px minmax(0,1fr)}.shell.with-nav>.secnav{flex-direction:column;overflow:visible;padding:16px 10px;gap:4px;border-right:1px solid var(--line);align-self:stretch}.shell.with-nav>.secnav button{border-color:transparent;background:none;width:100%;box-shadow:none}.shell.with-nav>.secnav button[aria-selected=true]{border-color:transparent;background:var(--brand-wash);box-shadow:inset 3px 0 0 var(--brand)}.body{padding:18px 24px 120px}.split{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}.split>.col-out{position:sticky;top:84px}.owner-split{grid-template-columns:340px minmax(0,1fr)}.narrow{max-width:760px;width:100%;margin-inline:auto}.jobs-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.jobs-grid>.new-job-col,.jobs-grid>.new-job-col.closed{display:block;order:0}.new-job-toggle{display:none}.secpicker{grid-template-columns:repeat(2,minmax(0,1fr))}}.split.wide{grid-template-columns:minmax(0,1fr)}.split.wide>.col-out{position:static}.owner-split>.col-out{container:pane/inline-size}@container pane (max-width: 860px){.split{grid-template-columns:minmax(0,1fr);gap:14px}.split>.col-out{position:static}}@container app (max-width: 380px){.add .row,.row2,.secpicker{grid-template-columns:minmax(0,1fr)}.pt{grid-template-columns:minmax(0,1fr) 112px 36px}}.plan,.plan-start{display:grid;gap:10px;min-width:0}.plan-pick{display:grid;gap:6px;font-size:13.5px;color:var(--ink-2)}.thumbs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.thumb{flex:none;width:76px;height:56px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);padding:0;overflow:hidden;cursor:pointer;color:var(--ink-2);font:600 12.5px var(--f-body)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 2px var(--brand)}.thumb.grid{background-color:var(--surface);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:10px 10px}.plan-bg{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.drop.compact{min-height:56px;padding:6px 12px;font-size:13.5px}.seg.tools{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}.plan-target{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13.5px;color:var(--ink-2)}.plan-target .chip{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 13.5px var(--f-body);cursor:pointer}.plan-target .chip[aria-pressed=true]{border-color:var(--pl-c,var(--brand));box-shadow:inset 0 0 0 1px var(--pl-c,var(--brand));background:var(--brand-wash)}.plan-found{display:grid;gap:8px;padding:12px;border-radius:12px;background:var(--ok-wash);border:1px solid var(--ok)}.plan-actions{display:flex;flex-wrap:wrap;gap:8px}.plan-stage,.plan-stage svg{touch-action:none}.plan-stage{overflow:auto;max-height:72vh;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);overscroll-behavior:contain}.plan-svg{display:block;height:auto;user-select:none;-webkit-user-select:none}.plan-svg.tool-obstacle,.plan-svg.tool-roof,.plan-svg.tool-row,.plan-svg.tool-scale{cursor:crosshair}.plan-zoom{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.plan-zoom .btn.small{min-width:44px}.plan-sel{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-left:4px solid var(--pl-c,var(--ink-3));border-radius:12px;background:var(--surface)}.plan-sel>b{font-family:var(--f-display);margin-right:auto}.plan-sel .stepper .num{min-width:44px;display:grid;place-items:center;font-weight:600;border-inline:1px solid var(--line);background:var(--surface)}.plan-sel .bname{flex:1 1 140px;width:auto}.b0{--pl-c:var(--brand)}.b1{--pl-c:var(--wait)}.b2{--pl-c:var(--ok)}.b3{--pl-c:var(--warn)}.b4{--pl-c:var(--gold-text)}.b5{--pl-c:var(--ink-2)}.pl-paper{fill:var(--surface)}.pl-grid line{stroke:var(--line);stroke-width:1}.pl-grid line.major{stroke:color-mix(in srgb,var(--ink-3) 45%,var(--line))}.pl-tag{fill:var(--ink);font-family:var(--f-body);font-weight:600;paint-order:stroke;stroke:var(--surface);stroke-width:calc(var(--upp, 1) * 3);stroke-linejoin:round;pointer-events:none}.pl-row{cursor:grab}.pl-row .pl-box{fill:none;stroke:var(--pl-c);stroke-width:1.5}.pl-row .pl-cell{fill:var(--pl-panel);fill-opacity:.82;stroke:var(--pl-c);stroke-width:1.2}.pl-row.unplaced .pl-box{stroke-dasharray:6 4}.pl-row.unplaced .pl-cell{fill-opacity:.4;stroke-dasharray:4 3}.pl-row.sel .pl-box{stroke-width:3}.pl-handle{fill:var(--surface);stroke:var(--pl-c,var(--brand));stroke-width:2.5;cursor:ew-resize}.pl-row.dim{opacity:.35}.pl-found rect{fill:var(--ok);fill-opacity:.3;stroke:var(--pl-found);stroke-width:2.5}.pl-found .pl-tag{fill:var(--ok)}.pl-found{cursor:pointer}.pl-found.split rect{stroke:var(--pl-c);fill:var(--pl-c);fill-opacity:.25}.pl-found.split .pl-tag{fill:var(--pl-c)}.pl-found.picked rect{stroke:var(--gold);stroke-width:3.5;fill-opacity:.4}.plan-confirm{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-radius:12px;background:var(--bad-wash);border:1px solid var(--bad)}.plan-confirm>span{flex:1 1 200px;font-size:14px}.btn.danger{background:var(--bad);border-color:var(--bad);color:var(--surface)}.pl-sample{fill:none;stroke:var(--gold);stroke-width:3}.pl-draft line{stroke:var(--brand);stroke-width:2;stroke-dasharray:6 4}.pl-draft rect{fill:var(--pl-panel);fill-opacity:.55;stroke:var(--brand);stroke-width:1.2}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.wireway{display:grid;gap:4px;padding:10px 12px;margin-bottom:10px;border:1px dashed var(--line);border-radius:12px}.wireway .field{max-width:22rem}.wireway .hint{margin:0}.roofcards{display:grid;gap:10px}.roofcard{display:grid;gap:8px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.roofcard .head{display:grid;gap:2px}.roofcard .head small{color:var(--ink-3);font-size:13px}.roofcard .field small{color:var(--ink-3);font-weight:400}.st0{--st-c:var(--brand)}.st1{--st-c:var(--ok)}.st2{--st-c:var(--wait)}.st3{--st-c:var(--gold-text)}.st4{--st-c:color-mix(in srgb,var(--brand) 55%,var(--wait))}.st5{--st-c:color-mix(in srgb,var(--ok) 55%,var(--wait))}.st6{--st-c:var(--warn)}.st7{--st-c:var(--ink-2)}.st-board .st-cell{cursor:pointer;stroke-width:1}.st-board .st-cell.free{fill:var(--surface);fill-opacity:.7;stroke:var(--ink-3);stroke-dasharray:3 2}.st-board .st-cell:not(.free){fill:var(--st-c);fill-opacity:.55;stroke:var(--st-c)}.st-board .st-cell.picked{fill-opacity:.9;stroke:var(--ink);stroke-width:2.5}.st-board .st-end circle{fill:var(--surface);stroke:var(--st-c);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.st-board .st-end text{fill:var(--st-c);font-weight:700;text-anchor:middle;dominant-baseline:central;pointer-events:none}.st-board .st-end.picked circle{stroke:var(--ink)}.st-board.boxing{touch-action:none;cursor:crosshair}.st-board .st-box{fill:var(--brand-mark);fill-opacity:.12;stroke:var(--brand-mark);stroke-width:1.5;stroke-dasharray:5 3;pointer-events:none}.inverters{display:grid;gap:8px;margin-bottom:10px}.invcard{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.invhead{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:8px}.invsizes{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:13.5px;color:var(--ink-2)}.invsizes .lbl{color:var(--ink-3)}.invsize{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.invsize .num{width:3.6rem;min-height:36px;padding:4px 8px;font:600 15px var(--f-num);border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:center}.invsize .num:last-of-type{width:5.2rem}.invsize small{color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.invsize .x{border:0;background:none;color:var(--ink-3);font-size:18px;line-height:1;min-width:28px;min-height:28px;cursor:pointer;border-radius:8px}.invsize .x:hover{background:var(--surface);color:var(--bad)}.invfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-4px}.addinv{justify-self:start}.invsize small.done{color:var(--ok)}.invcard.on{border-color:color-mix(in srgb,var(--brand-mark) 45%,var(--line));box-shadow:inset 3px 0 0 var(--brand)}.strtools{display:grid;gap:10px;padding:12px;margin-bottom:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.strh{margin:0;font:700 15px var(--f-display);color:var(--ink)}.strrow{display:grid;grid-template-columns:4.6rem minmax(0,1fr);gap:8px;align-items:center}.strrow>span{font-size:13px;color:var(--ink-3)}.strrow .seg{max-width:22rem}.strbtns{display:flex;flex-wrap:wrap;gap:8px}.strtools>.hint{margin:-2px 0 0}.strmore{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding-top:6px;border-top:1px solid var(--line)}.strsel{display:grid;gap:8px}.strsel .selhead{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}.strsel .selhead select{min-height:36px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:14px var(--f-body);padding:0 8px}.strsel .selhead .textbtn{margin-left:auto}.plan-sel[class*=" st"]{border-left-color:var(--st-c)}.strline{width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--line);cursor:pointer;font:inherit;color:inherit}.strline.picked{background:var(--brand-wash)}.strline .dot{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--st-c);vertical-align:middle}@media (max-width:620px){.invhead,.strrow{grid-template-columns:minmax(0,1fr)}.strrow{gap:4px}}.dcbox{display:grid;gap:8px;padding:10px 12px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.dcbox>b small{font-weight:400;font-size:13px;color:var(--ink-3);margin-left:6px}.dcgrid{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}.dcdrop,.dcgrid{display:grid;gap:8px}.dcdrop{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:13.5px;color:var(--ink-2)}.dcdrop>.btn{justify-self:start}.dcacts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.st-board .dc-pin circle{fill:var(--brand-mark);stroke:var(--surface);stroke-width:2;vector-effect:non-scaling-stroke}.st-board .dc-pin text{fill:var(--ink);font-weight:700;text-anchor:middle;paint-order:stroke;stroke:var(--surface);stroke-width:3px}.st-board .dc-route{fill:none;stroke:var(--st-c);stroke-width:2.5;stroke-dasharray:6 4;stroke-linejoin:round;pointer-events:none}.st-board .dc-trunk{fill:none;stroke:var(--ink-2);stroke-opacity:.75;stroke-width:7;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.st-board .dc-via circle:not(.hit){fill:var(--brand-mark);stroke:var(--surface);stroke-width:2;vector-effect:non-scaling-stroke}.st-board .dc-via .hit{fill:transparent;stroke:none}.st-board .dc-via.grip{cursor:grab}.st-board .dc-via.sel circle:not(.hit){fill:var(--bad);stroke-width:3}.st-board .dc-via.out circle:not(.hit){fill:var(--bad);opacity:.45}.st-board.joining .dc-trunk{stroke:var(--brand);stroke-opacity:.6}.st-board .dc-trunk-hit.join{cursor:pointer}.st-board .dc-draft polyline{fill:none;stroke:var(--brand);stroke-width:4;stroke-dasharray:2 6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.st-board .dc-draft circle{fill:var(--brand);stroke:var(--surface);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.st-board .dc-trunk-hit{fill:none;stroke:transparent;stroke-width:20;stroke-linejoin:round;pointer-events:stroke;cursor:copy}.dctools .seg button.attn{background:var(--brand-mark);color:var(--surface)}.st-board .dc-route.on{stroke-width:4.5;stroke-dasharray:none}.st-board .dc-route.dim{opacity:.25}.st-board .dc-len{cursor:pointer}.st-board .dc-len rect{fill:var(--surface);stroke:var(--st-c);stroke-width:1.5;vector-effect:non-scaling-stroke}.st-board .dc-len text{fill:var(--ink);font-family:var(--f-num);font-weight:700;text-anchor:middle;dominant-baseline:central}.st-board .dc-len.on rect{fill:var(--st-c)}.st-board .dc-len.on text{fill:var(--surface)}.st-board .dc-len.missing rect{stroke-dasharray:3 2}.dc-chips{display:flex;flex-wrap:wrap;gap:6px}.dc-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:500 13.5px var(--f-body);color:var(--ink);cursor:pointer}.dc-chip b{font-family:var(--f-num);font-weight:600}.dc-chip .dot,.dc-string .dot{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--st-c)}.dc-chip[aria-pressed=true]{border-color:var(--st-c);background:color-mix(in srgb,var(--st-c) 14%,var(--surface));box-shadow:inset 0 0 0 1px var(--st-c)}.dc-chip.missing b{color:var(--warn)}.dc-string{border-left:4px solid var(--st-c)}.dc-facts{display:grid;gap:4px;font-size:14px}.dc-facts small{color:var(--ink-3)}.st-run{display:flex;gap:3px;flex:none}.st-p{width:24px;height:32px;flex:none;padding:0;border-radius:4px;font:700 14px var(--f-num);display:grid;place-items:center;cursor:pointer;color:var(--ink)}.st-p.free{background:var(--surface);border:1px dashed var(--ink-3)}.st-p.held{background:color-mix(in srgb,var(--st-c) 45%,var(--surface));border:1px solid var(--st-c)}.st-p.picked{outline:2.5px solid var(--ink);outline-offset:-1px}.cab-pic{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:6px}.cab-pic svg{display:block;width:100%;height:auto;max-height:640px}.cab-line{cursor:pointer}.cab-line .hit{fill:none;stroke:transparent;stroke-width:18}.cab-line .wire{fill:none;stroke-width:3;stroke-linejoin:round}.cab-line.dc .wire{stroke:var(--warn)}.cab-line.bat .wire{stroke:var(--ok)}.cab-line.ac .wire{stroke:var(--wait)}.cab-line.missing .wire{stroke:var(--ink-3);stroke-dasharray:6 5}.cab-line.on .wire{stroke-width:5}.cab-tag{cursor:pointer}.cab-tag rect{fill:var(--surface);stroke:var(--ink-2);stroke-width:1.2}.cab-tag text{font:600 12.5px var(--f-num);fill:var(--ink);text-anchor:middle;dominant-baseline:central}.cab-tag.missing rect{fill:var(--warn-wash);stroke:var(--warn);stroke-dasharray:3 2}.cab-tag.missing text{fill:var(--warn);font-family:var(--f-body)}.cab-tag.on rect{fill:var(--brand);stroke:var(--brand)}.cab-tag.on text{fill:var(--surface)}.cab-legend i{display:inline-block;width:18px;height:0;border-top:3px solid;vertical-align:middle;margin-inline:4px 2px}.cab-legend i.dc{border-color:var(--warn)}.cab-legend i.ac{border-color:var(--wait)}.cab-legend i.bat{border-color:var(--ok)}.cab-legend i.missing{border-color:var(--ink-3);border-top-style:dashed}.cabresult{display:grid;gap:8px}.cabrun{display:grid;gap:3px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);font-size:14px}.cabrun small{color:var(--ink-3)}.art.tap{cursor:pointer}.art-halo{fill:var(--brand-wash);stroke:var(--brand);stroke-width:2}.art-body{fill:var(--surface);stroke:var(--ink-2);stroke-width:1.6}.art-door{fill:var(--surface-2);stroke:var(--line);stroke-width:1.2}.art-handle{fill:var(--ink-2)}.art-gland{fill:var(--ink-3)}.art-window{fill:var(--bg);stroke:var(--ink-3);stroke-width:1}.art-plate{stroke-width:1.2}.art.dc .art-plate{fill:var(--warn-wash);stroke:var(--warn)}.art.ac .art-plate{fill:var(--wait-wash);stroke:var(--wait)}.art.mdb .art-plate{fill:var(--surface);stroke:var(--ink-2)}.art-plate-t{font:700 8.5px var(--f-body);letter-spacing:.04em;text-anchor:middle;dominant-baseline:central;fill:var(--ink)}.art-plate-t.big{font-size:11px}.art-fuse{fill:var(--surface);stroke:var(--warn);stroke-width:1}.art-fuse-cap{fill:var(--warn)}.art-breaker{fill:var(--surface);stroke:var(--ink-2);stroke-width:1}.art-toggle{fill:var(--wait)}.art-sub{font:400 10.5px var(--f-body);fill:var(--ink-3);text-anchor:middle;dominant-baseline:central}.art.inv .art-body{stroke:var(--brand);stroke-width:2}.art-cell{fill:var(--ok-wash);stroke:var(--ok);stroke-width:1}.art.bat .art-plate{fill:var(--ok-wash);stroke:var(--ok)}.art-bus{fill:var(--warn)}.art-pill{fill:var(--surface);stroke:var(--ink-3);stroke-width:1.2;stroke-dasharray:4 3}.art-fin{stroke:var(--ink-3);stroke-width:1.2;stroke-linecap:round}.art-face{fill:var(--surface-2);stroke:var(--line);stroke-width:1}.art-led{fill:var(--line)}.art-led.on{fill:var(--ok)}.art-name{font:700 14px var(--f-body);fill:var(--ink);text-anchor:middle;dominant-baseline:central}.art.inv.ghost .art-body{fill:transparent;stroke:var(--brand-mark);stroke-dasharray:5 4}.art.inv.ghost .art-name{fill:var(--brand);font-size:13px}.art-plinth{fill:var(--ink-3)}.art-vent{stroke:var(--ink-3);stroke-width:1.2;stroke-linecap:round}.dcsum{display:grid;gap:8px;margin-bottom:10px}.dcsum .route{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:14px}.dcsum .route-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px}.dcsum .route-head b{font-weight:700}.dcsum .route-head span{color:var(--ink-2)}.route-steps{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}.route-steps li{display:grid;grid-template-columns:6.5rem 1fr auto;gap:4px 10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13.5px;align-items:baseline}.route-steps li:last-child{border-bottom:0}.route-steps li.end{font-weight:600}.route-steps .m{font-family:var(--f-num);color:var(--ink-2);text-align:right;white-space:nowrap}.dcmore{border-top:1px solid var(--line);padding-top:8px;display:grid;gap:8px}.dcmore>summary{cursor:pointer;font-weight:600;font-size:14px;list-style-position:inside;min-height:32px}.dcmore>summary small{font-weight:400;font-size:13px;color:var(--ink-3);margin-left:6px}.st-board .dc-pin .dc-down{font-weight:600;fill:var(--ink-2)}.st-board .grip{cursor:grab;touch-action:none}.st-board .grip:active{cursor:grabbing}.st-board .grip .hit{fill:transparent;stroke:none}.dctools .strrow>.hint{grid-column:2;margin:0;font-size:12.5px}@media (max-width:620px){.dctools .strrow>.hint{grid-column:1}}.oldjobs{margin-top:14px}.oldjobs>summary small{font-weight:400;color:var(--ink-3);margin-left:6px}.report{display:grid;gap:22px;padding:16px 16px 40px;max-width:980px;margin:0 auto;width:100%}.rp-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px;padding-bottom:14px;border-bottom:2px solid var(--brand-mark)}.rp-head h1{margin:0;font:700 22px/1.3 var(--f-display)}.rp-head p{margin:2px 0 0;color:var(--ink-2)}.rp-sec{display:grid;gap:10px;page-break-inside:avoid;break-inside:avoid-page}.rp-sec>h2{margin:0;display:flex;align-items:center;gap:10px;font:700 18px/1.3 var(--f-display);padding-bottom:6px;border-bottom:1px solid var(--line)}.rp-sec>h2 .no{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--brand-wash);color:var(--brand);font:700 14px var(--f-num);flex:none}.rp-block{display:grid;gap:6px}.rp-block>h3,.rp-sub{margin:4px 0 0;font:700 15px/1.4 var(--f-display)}.rp-block>h3 small{font-weight:400;color:var(--ink-3);margin-left:6px}.rp-cab{margin:0 0 12px}.rp-cab,.rp-figure{page-break-inside:avoid;break-inside:avoid}.rp-figure{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);min-width:720px}.rp-cell{fill:var(--pl-panel);fill-opacity:.85;stroke:var(--surface);stroke-width:1}.st-board .rp-rowname{fill:var(--surface);font-weight:700;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:var(--pl-panel);stroke-width:2px}.rp-scroll{overflow-x:auto}.rp-table{width:100%;border-collapse:collapse;font-size:14px}.rp-table th{text-align:left;font-weight:600;color:var(--ink-2);background:var(--surface-2)}.rp-table td,.rp-table th{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}.rp-table td:nth-child(n+2){font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rp-lines{list-style:none;margin:0;padding:0;display:grid}.rp-lines li{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:baseline;padding:7px 2px;border-bottom:1px solid var(--line);font-size:14px}.rp-lines b{font:600 15px var(--f-num);white-space:nowrap}.rp-lines small{font:500 13px var(--f-body);color:var(--ink-2);margin-left:2px}.rp-facts{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--ink-2)}.rp-facts b{color:var(--ink);font-weight:600}.rp-route{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.rp-route>div:first-child{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px}.rp-route>div:first-child span{color:var(--ink-2)}.report .notice ul{margin:4px 0 0;padding-left:20px}@container app (max-width: 759px){.rp-table thead{display:none}.rp-table,.rp-table tbody{display:block}.rp-table tr{display:grid;gap:2px;padding:10px 2px;border-bottom:1px solid var(--line)}.rp-table td{display:grid;grid-template-columns:7.5rem 1fr;gap:8px;padding:0;border:0;overflow-wrap:anywhere}.rp-table td:before{content:attr(data-label);color:var(--ink-3);font-size:13px}.rp-table td:first-child{font-weight:600;grid-template-columns:1fr}.rp-table td:first-child:before{display:none}}@media print{.actionbar,.appbar,.next,.no-print,.secnav,.secpick,.toasts,.track,.track-label{display:none!important}.app,.body,.shell{display:block!important;background:#fff!important;box-shadow:none!important;border:0!important;min-height:0!important}.report{--bg:#fff;--surface:#fff;--surface-2:#f7f5f7;--ink:#1d1a1e;--ink-2:#57505a;--ink-3:#6d6570;--line:#d9d3da;--brand:#b23f7f;--brand-mark:#d4569b;--brand-wash:#fcf1f7;--ok:#15803d;--wait:#1d4ed8;--warn:#b45309;--gold-text:#7a5e12;--pl-panel:#1f3a6e;color:var(--ink);background:#fff;padding:0;max-width:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report .rp-sec{page-break-inside:auto;break-inside:auto}.rp-figure,.rp-lines li,.rp-route,.rp-table tr{page-break-inside:avoid;break-inside:avoid}.rp-figure{min-width:0}body{background:#fff!important}}