@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");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:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_c2515b18-module__4oDrTW__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_c2515b18-module__4oDrTW__variable{--font-body:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.08hd0g.321csk.woff2)format("woff2");unicode-range:U+460-52F,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:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.0x08jh8vondwt.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.0~wrfy7sm-h4g.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.0k_.i63k_i_qa.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.16-z~2sp29ex6.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.0m9hhkgdlzukj.woff2)format("woff2");unicode-range:U+460-52F,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(../media/a7afbb44bec2bb18-s.0juuwbcf7uz~t.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.0qg7j5o.yrclm.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0hkrq11n-dhos.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.07ig5l8azj~hy.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.0_n_qwbzcushi.woff2)format("woff2");unicode-range:U+460-52F,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(../media/1a69062cfe6f77f8-s.07r2ragk8ph~z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.0787d67~10694.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.0dgq8lqrj3gc_.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.0o14nraug8u5s.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f53f4557ddd9f7a6-s.0l86rvwdd07jt.woff2)format("woff2");unicode-range:U+460-52F,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:700;font-display:swap;src:url(../media/5256dd17dd2ccf14-s.0-bj-4.3jk9zi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fe48c93add1d142c-s.169mj0m4oygmx.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5689d89b20a4bd5b-s.072srq0~jhoqa.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a7e15459c1805da0-s.p.15mmg7gamto4l.woff2)format("woff2");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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_41f9c074-module__Ysr_Ba__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_41f9c074-module__Ysr_Ba__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--ink-1:#14213a;--ink-2:#263b59;--ink-3:#435674;--ink-4:#536781;--ink-5:#718097;--ink-6:#8b9bb4;--surface:#fff;--surface-sunken:#f8fafc;--surface-app:#edf1f6;--line-strong:#cfd8e4;--line:#d5dce6;--line-soft:#e0e5ec;--line-faint:#edf0f4;--blue:#2563eb;--blue-hover:#1d4ed8;--blue-ink:#3c70cc;--blue-deep:#174aaf;--blue-soft:#eef5ff;--blue-softer:#eaf1ff;--blue-line:#9db5df;--blue-ring:#2563eb24;--rail-bg:#111c2e;--rail-ink:#aebbd0;--rail-ink-faint:#6e7d94;--rail-active:#263b63;--rail-marker:#7d9dff;--success:#237b59;--success-deep:#28795e;--success-soft:#e7f6ee;--success-dot:#3bb989;--danger:#b3261e;--danger-ink:#8f2f2f;--danger-soft:#fdecec;--danger-line:#f0c6c6;--neutral-ink:#5c6e86;--neutral-soft:#eef1f6;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--r-sm:4px;--r:6px;--r-lg:8px;--r-round:50%;--font-body:"IBM Plex Sans", "Segoe UI", Arial, sans-serif;--font-mono:"IBM Plex Mono", Consolas, monospace;--t-display:1.75rem;--t-title:1.25rem;--t-lead:1rem;--t-body:.875rem;--t-sm:.8125rem;--t-xs:.75rem;--t-2xs:.6875rem;--t-meta:.625rem;--tracking-meta:.1em;--content-max:90rem;--shadow-sm:0 1px 2px #0f172a14;--shadow-md:0 14px 34px #0f172a17;--ease:cubic-bezier(.2, 0, 0, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.28s}*{box-sizing:border-box}html{background:var(--surface-app)}body{background:var(--surface-app);color:var(--ink-1);font-family:var(--font-body);font-size:var(--t-body);margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.01em;font-weight:500}h1{font-size:var(--t-display);line-height:1.15}h2{font-size:var(--t-title);line-height:1.2}h3{font-size:var(--t-lead);line-height:1.3}.muted{color:var(--ink-4);line-height:1.6}.form-error{color:var(--danger)}.crumb,.data-label,.table-head,.metrics-table thead th,.metrics-subheading{font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;font-weight:500;line-height:1.3}.crumb{color:var(--blue-ink)}.data-label{color:var(--ink-5);margin-bottom:var(--s1);display:block}.primary-button,.secondary-button{border-radius:var(--r-sm);align-items:center;gap:var(--s2);min-height:2.75rem;padding:0 var(--s3);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);justify-content:center;display:flex}.primary-button{background:var(--blue);color:var(--surface);border:0;font-weight:500}.primary-button:hover:not(:disabled){background:var(--blue-hover)}.primary-button:disabled{cursor:wait;opacity:.6}.secondary-button{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-3)}.secondary-button:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--blue-line)}.secondary-button:disabled{cursor:not-allowed;opacity:.5}.icon-button{border-radius:var(--r-sm);color:var(--neutral-ink);min-width:2.75rem;min-height:2.75rem;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--neutral-soft);color:var(--blue)}.icon-button:disabled{cursor:not-allowed;opacity:.45}.icon-button.danger{color:#9b4b4b}.icon-button.danger:hover:not(:disabled){color:var(--danger)}.icon-button.reactivate{color:var(--success)}.brand{color:var(--surface);align-items:center;gap:var(--s2);display:inline-flex}.brand-mark{width:1.875rem;height:1.875rem}.brand-name{letter-spacing:.24em;font-size:.9375rem;font-weight:700}.brand-dark{color:var(--ink-1)}.brand-compact{gap:var(--s2)}.brand-compact .brand-mark{width:1.25rem;height:1.25rem}.brand-compact .brand-name{font-size:var(--t-xs);letter-spacing:.2em}.status-pill{border-radius:var(--r-sm);font:var(--t-meta) var(--font-mono);letter-spacing:.08em;padding:var(--s1) var(--s2);text-transform:uppercase;width:max-content;display:inline-flex}.status-success{background:var(--success-soft);color:var(--success)}.status-failure{background:var(--danger-soft);color:var(--danger)}.status-pending{background:var(--neutral-soft);color:var(--neutral-ink)}.stat-tile strong,.license-bar strong,.metrics-table tbody td:last-child,.history-row-duration,.history-row-scrap,.credential-card code{font-variant-numeric:tabular-nums}.skeleton{border-radius:var(--r-lg);background:linear-gradient(90deg,#e5ebf4,#f2f5f9,#e5ebf4) 0 0/200% 100%;width:13.75rem;height:1.75rem}.spinner{border-radius:var(--r-round);border:2px solid #c8d8f5;border-top-color:var(--blue);width:1.375rem;height:1.375rem;animation:.9s linear infinite project-spin;display:block}.login-page{background:var(--surface-app);min-height:100vh;padding:var(--s5);justify-content:center;align-items:center;display:flex}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);max-width:27.5rem;padding:var(--s7) var(--s7) var(--s7);width:100%}.login-brand,.login-heading{margin-bottom:var(--s6)}.login-heading h1{margin:var(--s2) 0 var(--s1);font-size:1.625rem}.login-heading p{color:var(--ink-4);font-size:var(--t-body);margin:0}.form-stack{gap:var(--s4);display:grid}.field-group{gap:var(--s2);display:grid}.field-group label{color:var(--ink-2);font-size:var(--t-body);justify-content:space-between;font-weight:500;display:flex}.field-group input{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);color:var(--ink-1);min-height:3rem;padding:var(--s3) var(--s4);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);width:100%}.field-group input:hover{border-color:var(--blue-line)}.field-group input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:0}.password-field{position:relative}.password-field input{padding-right:var(--s7)}.password-field .password-toggle{min-width:2.25rem;min-height:2.25rem;right:var(--s2);position:absolute;top:50%;transform:translateY(-50%)}.center-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.dashboard-loading{align-items:center;gap:var(--s4);justify-items:center;min-height:100vh;display:grid}.dashboard-loading .skeleton{margin-top:var(--s6);animation:1.5s ease-in-out infinite shimmer}.tool-shell{background:var(--surface-app);grid-template-columns:5.5rem minmax(0,1fr);min-height:100vh;display:grid}.tool-main{min-width:0}.tool-content{max-width:var(--content-max);padding:var(--s5) var(--s6) var(--s7);width:100%;margin:0 auto}.tool-rail{background:var(--rail-bg);color:var(--rail-ink);padding:var(--s3) var(--s2);flex-direction:column;display:flex;position:relative}.tool-rail nav{gap:var(--s1);display:grid}.rail-item{border-radius:var(--r-sm);color:inherit;align-items:center;gap:var(--s1);min-height:3.5rem;padding:var(--s2) var(--s1);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;justify-items:center;width:100%;display:grid;position:relative}.rail-item span{font-family:var(--font-mono);letter-spacing:.04em;font-size:.5625rem}.rail-item:hover,.rail-item.active{background:var(--rail-active);color:var(--surface)}.rail-item:before{background:var(--rail-marker);content:"";height:100%;transition:transform var(--dur) var(--ease);border-radius:0 2px 2px 0;width:2px;position:absolute;top:0;left:0;transform:scaleY(0)}.rail-item.active:before{transform:scaleY(1)}.rail-bottom{text-align:center;margin-top:auto}.rail-version{color:var(--rail-ink-faint);font:9px var(--font-mono);letter-spacing:.08em;writing-mode:vertical-rl}.tool-toolbar{background:var(--surface);border-bottom:1px solid var(--line);min-height:3.625rem;padding:var(--s2) var(--s5);justify-content:space-between;align-items:center;display:flex}.toolbar-app{color:var(--ink-4);font:var(--t-meta) var(--font-mono);align-items:center;gap:var(--s3);letter-spacing:var(--tracking-meta);display:flex}.toolbar-user{align-items:center;gap:var(--s3);display:flex}.toolbar-user strong{font-size:var(--t-xs);font-weight:500}.tool-heading{margin-bottom:var(--s4);justify-content:space-between;align-items:center;display:flex}.tool-heading h1{font-size:var(--t-display);margin:0;line-height:1.15}.connection-state.warning{color:var(--danger)}.connection-state.warning i{background:var(--danger)}.connection-state{color:var(--success-deep);font-size:var(--t-xs);align-items:center;gap:var(--s2);display:flex}.connection-state i,.status-check i{background:var(--success-dot);border-radius:var(--r-round);width:.4375rem;height:.4375rem;display:inline-block}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.avatar{background:var(--blue-softer);border-radius:var(--r-round);color:var(--blue);font:var(--t-2xs) var(--font-mono);justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.avatar.small{width:1.75rem;height:1.75rem}.license-bar{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);align-items:center;gap:var(--s5);margin-bottom:var(--s4);padding:var(--s3) var(--s4);grid-template-columns:max-content max-content max-content max-content minmax(7.5rem,1fr);display:grid}.license-status{align-items:center;gap:var(--s4);display:flex}.license-bar strong{font-size:var(--t-sm);font-weight:500}.status-check{background:var(--success-soft);border-radius:var(--r-sm);color:var(--success);font-size:var(--t-2xs);align-items:center;gap:var(--s2);padding:var(--s2) var(--s2);display:flex}.license-meter{border-radius:var(--r-sm);background:#e3e8ef;justify-self:end;width:100%;max-width:16.25rem;height:.375rem;overflow:hidden}.license-meter span{background:var(--blue);transform-origin:0;height:100%;transition:transform var(--dur-slow) var(--ease);width:100%;display:block}.project-board,.admin-board,.member-board{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.project-board{padding:var(--s5)}.admin-board{padding:var(--s4)}.member-board{min-height:15rem;padding:var(--s6)}.project-board-heading,.board-header{border-bottom:1px solid var(--line-soft);align-items:center;gap:var(--s3);padding-bottom:var(--s4);flex-wrap:wrap;justify-content:space-between;display:flex}.project-board h2,.board-header h2,.member-board h2,.provision-area h3{font-size:var(--t-title);margin:var(--s1) 0 0}.board-count{color:var(--ink-5);font-size:var(--t-xs)}.project-step{color:var(--ink-5);font:var(--t-meta) var(--font-mono);letter-spacing:var(--tracking-meta)}.project-intro{color:var(--ink-4);font-size:var(--t-sm);margin:var(--s4) 0 var(--s5)}.member-mark{color:var(--blue);margin-bottom:var(--s5)}.provision-area p,.member-board p{color:var(--ink-5);font-size:var(--t-xs);margin:var(--s2) 0 0;line-height:1.5}.table-head,.account-row{align-items:center;gap:var(--s3);grid-template-columns:minmax(12.5rem,1fr) 6rem 5.5rem 6rem;display:grid}.table-head{color:var(--ink-5);padding:var(--s3) var(--s3) var(--s2)}.account-row{border-top:1px solid var(--line-faint);min-height:4rem;padding:var(--s2) var(--s3)}.account-identity{align-items:center;gap:var(--s3);min-width:0;display:flex}.account-identity>span:last-child{gap:2px;min-width:0;display:grid}.account-identity strong{font-weight:500}.account-identity small{color:var(--ink-5);font-size:var(--t-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-pill{color:var(--ink-4);font:var(--t-meta) var(--font-mono);letter-spacing:.06em}.state-active,.state-inactive{font-size:var(--t-2xs)}.state-active{color:var(--success)}.state-inactive{color:#8995a6}.row-actions{gap:var(--s1);justify-content:flex-end;display:flex}.provision-area{border-top:1px solid var(--line-soft);gap:var(--s4);margin-top:var(--s4);padding:var(--s5) var(--s3) 0;grid-template-columns:minmax(12.5rem,1fr) minmax(0,2fr);display:grid}.provision-form{align-items:end;gap:var(--s3);grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content;display:grid}.provision-form label{color:var(--ink-4);font-size:var(--t-2xs);gap:var(--s1);display:grid}.provision-form input{background:var(--surface-sunken);border:1px solid var(--line-strong);border-radius:var(--r-sm);min-height:2.75rem;padding:var(--s2) var(--s3);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease)}.provision-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:0}.credential-card{background:var(--blue-soft);border-radius:var(--r);align-items:center;gap:var(--s4);margin-top:var(--s4);padding:var(--s3) var(--s4);border:1px solid #b8cdf4;grid-template-columns:minmax(0,1fr) max-content max-content;display:grid}.credential-card>div{gap:var(--s1);display:grid}.credential-card small{color:var(--ink-4);font-size:var(--t-2xs)}.credential-card code{background:var(--surface);border-radius:var(--r-sm);color:var(--blue-deep);font:var(--t-sm) var(--font-mono);padding:var(--s3);border:1px solid #cbd9ef}.credential-actions{gap:var(--s2);display:flex}.credential-toggle{min-width:3.625rem}.session-tabs{align-items:flex-end;gap:var(--s2);margin-bottom:-1px;display:flex}.session-tab-strip{gap:var(--s1);scrollbar-width:thin;min-width:0;padding-bottom:1px;display:flex;overflow-x:auto}.session-tab{background:var(--surface-sunken);border:1px solid var(--line);border-bottom-color:var(--line);border-radius:var(--r) var(--r) 0 0;color:var(--ink-4);align-items:center;gap:var(--s1);max-width:17rem;padding-right:var(--s1);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);flex:none;display:flex}.session-tab:hover{background:var(--surface-app);color:var(--ink-2)}.session-tab.active{background:var(--surface);border-bottom-color:var(--surface);color:var(--ink-1)}.session-tab.pending{background:var(--blue-soft);border-color:var(--blue-line);color:var(--blue-deep)}.session-tab-select{color:inherit;cursor:pointer;font:inherit;font-size:var(--t-sm);align-items:center;gap:var(--s2);min-width:0;padding:var(--s2) var(--s1) var(--s2) var(--s3);background:0 0;border:0;display:flex}.session-tab-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-stage-bar{flex:none;gap:2px;display:flex}.session-stage-bar i{background:var(--line-strong);border-radius:1px;width:.5rem;height:.3125rem}.session-stage-bar i:first-child{border-radius:2px 1px 1px 2px}.session-stage-bar i:last-child{border-radius:1px 2px 2px 1px}.session-stage-bar i.success{background:var(--success-dot)}.session-stage-bar i.failure{background:var(--danger)}.session-stage-bar i.queued{background:var(--ink-6)}.session-stage-bar i.running{animation:session-pulse 1.4s var(--ease) infinite;background:var(--blue)}.session-stage-bar i.pending{background:var(--line-strong)}.session-tab{cursor:grab}.session-tab.dragging{cursor:grabbing;opacity:.45}.session-tab.drop-target{box-shadow:inset 2px 0 0 var(--blue)}.session-tab-select{cursor:inherit}.session-tab-action{border-radius:var(--r-sm);color:var(--ink-6);cursor:pointer;opacity:0;padding:var(--s1);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;display:flex}.session-tab:hover .session-tab-action,.session-tab.active .session-tab-action,.session-tab-action:focus-visible{opacity:1}.session-tab-action:hover{background:var(--neutral-soft);color:var(--ink-2)}.session-tab-action.close:hover{background:var(--danger-soft);color:var(--danger)}.session-tab-input{border:1px solid var(--blue);border-radius:var(--r-sm);font:inherit;font-size:var(--t-sm);margin:var(--s1) var(--s2);padding:var(--s1) var(--s2);width:12rem}.session-tab-new{border:1px dashed var(--line-strong);border-radius:var(--r) var(--r) 0 0;color:var(--ink-4);cursor:pointer;font-size:var(--t-sm);align-items:center;gap:var(--s1);padding:var(--s2) var(--s3);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;flex:none;display:flex}.session-tab-new:hover:not(:disabled){background:var(--blue-soft);border-color:var(--blue);color:var(--blue-deep)}.session-tab-new:disabled{cursor:default;opacity:.5}.session-tabs+.project-board,.session-tabs+.member-board{border-top-left-radius:0}@media (prefers-reduced-motion:reduce){.session-stage-bar i.running{animation:none}}.dxf-preview{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin-bottom:var(--s4);overflow:hidden}.dxf-preview.expanded{animation:overlay-in var(--dur-fast) var(--ease);z-index:1000;border-radius:0;flex-direction:column;margin:0;display:flex;position:fixed;inset:0}.dxf-preview.expanded .dxf-preview-stage{flex:1;height:auto}.dxf-preview-bar{background:var(--surface-sunken);border-bottom:1px solid var(--line-soft);align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);display:flex}.dxf-preview-bar .upload-field-label{text-align:left}.dxf-preview-hint{color:var(--ink-5);font-size:var(--t-2xs);margin-left:auto}.dxf-preview-bar .secondary-button{min-height:2rem;padding:0 var(--s3)}.dxf-preview-stage{background:var(--surface);height:26rem;position:relative}.dxf-preview-canvas{width:100%;height:100%}.dxf-preview-canvas canvas{display:block}.dxf-preview-overlay{background:var(--surface);color:var(--ink-4);font-size:var(--t-xs);align-items:center;gap:var(--s2);text-align:center;flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.dxf-preview-overlay.error strong{color:var(--ink-2);font-size:var(--t-body);font-weight:500}.dxf-preview-overlay.error span{color:var(--danger-ink);max-width:28rem}.dxf-preview-overlay small{color:var(--ink-5);font-size:var(--t-2xs)}.dxf-preview-note{background:var(--surface-sunken);border-top:1px solid var(--line-faint);color:var(--ink-5);font-size:var(--t-2xs);padding:var(--s2) var(--s3);margin:0}.dxf-preview-layers{border-top:1px solid var(--line-faint);gap:var(--s2);padding:var(--s2) var(--s3);flex-wrap:wrap;display:flex}.dxf-layer-chip{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-3);cursor:pointer;font-size:var(--t-2xs);align-items:center;gap:var(--s2);padding:var(--s1) var(--s2);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);display:flex}.dxf-layer-chip:hover{border-color:var(--line-strong)}.dxf-layer-chip i{border:1px solid #00000026;border-radius:2px;width:.625rem;height:.625rem;display:inline-block}.dxf-layer-chip.off{background:var(--surface-sunken);color:var(--ink-6);opacity:.6}.dxf-layer-chip.off i{filter:grayscale()}.project-empty{min-height:18.125rem}.project-start-options{gap:var(--s3);margin-top:var(--s5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.start-option{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r);color:inherit;cursor:pointer;align-items:flex-start;gap:var(--s3);padding:var(--s4);text-align:left;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);grid-template-columns:auto minmax(0,1fr);display:grid}.start-option:hover{background:var(--blue-soft);border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring)}.start-option>svg{color:var(--blue);margin-top:2px}.start-option-body strong{color:var(--ink-2);font-size:var(--t-body);margin-bottom:var(--s1);font-weight:500;display:block}.start-option-body>span{color:var(--ink-4);font-size:var(--t-xs);line-height:1.5;display:block}.start-option-body small{color:var(--blue-ink);font:var(--t-meta) var(--font-mono);letter-spacing:var(--tracking-meta);margin-top:var(--s2);text-transform:uppercase;display:block}.project-upload-form{gap:var(--s4);max-width:32.5rem;margin:0 auto;display:grid}.upload-form-intro{text-align:center}.upload-field{color:var(--ink-4);gap:var(--s2);display:grid}.upload-field-label{font:var(--t-meta) var(--font-mono);letter-spacing:var(--tracking-meta);text-align:center;text-transform:uppercase}.upload-hidden-input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.upload-dropzone{background:var(--surface-sunken);border-radius:var(--r-lg);cursor:pointer;align-items:center;gap:var(--s2);min-height:12.5rem;padding:var(--s6) var(--s5);text-align:center;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border:1.5px dashed #aebdce;justify-items:center;display:grid}.upload-dropzone:hover,.upload-dropzone:focus-visible{background:var(--blue-soft);border-color:var(--blue);outline:none}.upload-dropzone.drag-over{background:var(--blue-soft);border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring)}.upload-dropzone-icon{border-radius:var(--r-round);color:var(--blue);height:3.25rem;margin-bottom:var(--s2);background:#e3edff;justify-content:center;align-items:center;width:3.25rem;display:flex}.upload-dropzone strong{color:var(--ink-2);font-size:var(--t-body);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500;overflow:hidden}.upload-dropzone small{color:var(--ink-5);font-size:var(--t-2xs)}.upload-pick-buttons{gap:var(--s2);margin-top:var(--s2);justify-content:center;display:flex}.upload-pick-button{background:var(--surface);border-radius:var(--r-sm);color:var(--blue-ink);cursor:pointer;font-size:var(--t-2xs);padding:var(--s2) var(--s3);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border:1px solid #b9c6d6;font-weight:600}.upload-pick-button:hover{border-color:var(--blue);background:#e9f0fb}.upload-file-list{border:1px solid var(--line-soft);border-radius:var(--r-sm);max-height:13.75rem;margin:0;padding:0;display:grid;overflow-y:auto}.upload-file-row{border-top:1px solid var(--line-faint);align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);grid-template-columns:minmax(0,1fr) max-content max-content;list-style:none;display:grid}.upload-file-row:first-child{border-top:none}.upload-file-name{color:var(--ink-2);font-size:var(--t-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-file-size{color:var(--ink-6);font:var(--t-meta) var(--font-mono);white-space:nowrap}.upload-file-row .icon-button{min-width:1.75rem;min-height:1.75rem}.upload-toggle{background:var(--surface-sunken);border:1px solid var(--line-soft);border-radius:var(--r-sm);cursor:pointer;align-items:flex-start;gap:var(--s3);padding:var(--s3);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);display:flex}.upload-toggle input{accent-color:var(--blue);width:1rem;height:1rem;margin-top:2px}.upload-toggle span{gap:2px;display:grid}.upload-toggle strong{color:var(--ink-2);font-size:var(--t-sm);font-weight:500}.upload-toggle small{color:var(--ink-5);font-size:var(--t-2xs)}.project-form-actions{gap:var(--s2);margin-top:var(--s3);justify-content:flex-end;display:flex}.nesting-mode-picker{gap:var(--s2);margin:0 0 var(--s4);border:0;min-inline-size:0;padding:0;display:grid}.nesting-mode-picker legend{padding:0 0 var(--s2);text-align:left}.nesting-mode-picker .upload-toggle{background:var(--surface)}.nesting-mode-picker .upload-toggle:hover{border-color:var(--blue-line)}.nesting-mode-picker:disabled .upload-toggle{cursor:not-allowed;opacity:.55}.project-progress{min-height:18.125rem}.progress-phase{gap:var(--s1);margin:var(--s5) 0 var(--s4);display:grid}.progress-phase strong{color:var(--ink-2);font-size:var(--t-lead);font-weight:500}.progress-phase>span:last-child{color:var(--ink-5);font-size:var(--t-xs)}.progress-track{border-radius:var(--r-sm);background:#e4eaf1;height:.5rem;overflow:hidden}.progress-track span{background:var(--blue);transform-origin:0;height:100%;transition:transform var(--dur-slow) var(--ease);width:100%;display:block}.progress-meta{color:var(--ink-5);font-size:var(--t-2xs);margin-top:var(--s2);justify-content:space-between;display:flex}.progress-meta strong{color:var(--blue-ink);font:var(--t-meta) var(--font-mono)}.progress-elapsed{color:var(--ink-6);font:var(--t-meta) var(--font-mono)}.artifact-list{gap:var(--s2);margin:var(--s5) 0;display:grid}.artifact-link{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-2);align-items:center;gap:var(--s3);min-height:3rem;padding:0 var(--s3);text-align:left;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);grid-template-columns:auto minmax(0,1fr) auto;width:100%;display:grid}.artifact-link:hover:not(:disabled){background:var(--blue-soft);border-color:var(--blue-line)}.artifact-link:disabled{cursor:wait;opacity:.7}.artifact-link svg{color:var(--blue)}.artifact-link span{font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.artifact-link small{color:var(--blue-ink);font:var(--t-meta) var(--font-mono);text-transform:uppercase}.artifact-link.compact{max-width:100%;min-height:2.25rem;padding:0 var(--s2);width:max-content}.review-choice-grid{gap:var(--s4);margin-top:var(--s4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.review-choice-card{background:var(--surface-sunken);border:1px solid var(--line-soft);border-radius:var(--r);gap:var(--s3);padding:var(--s4);display:grid}.review-choice-card .upload-file-list{background:var(--surface)}.review-choice-card .artifact-list{margin:0}.review-dropzone{min-height:8.125rem;padding:var(--s5) var(--s3)}.review-choice-action{width:100%;margin-top:auto}.project-renest{border-top:1px solid var(--line-soft);margin-top:var(--s5);padding-top:var(--s5);display:grid}.project-renest .nesting-mode-picker{margin:var(--s3) 0 0}.project-renest .upload-field-label{text-align:left}.project-renest .project-intro{margin:var(--s2) 0 0}.project-renest .secondary-button{margin-top:var(--s3);justify-self:start}.project-failure{min-height:15rem}.failure-message{border:1px solid var(--danger-line);border-radius:var(--r-sm);color:var(--danger-ink);font-size:var(--t-sm);gap:var(--s2);margin:var(--s4) 0;padding:var(--s3) var(--s4);background:#fdf1f1;line-height:1.5;display:grid}.failure-message strong{color:#6e2222;font-size:var(--t-body)}.failure-message p{margin:0}.failure-actions{gap:var(--s2);margin-top:var(--s3);flex-wrap:wrap;display:flex}.error-log{border-radius:var(--r);margin-top:var(--s4);background:#14181f;overflow:hidden}.error-log-heading{color:#9aa7bd;font:var(--t-meta) var(--font-mono);align-items:center;gap:var(--s2);letter-spacing:.08em;padding:var(--s2) var(--s3);text-transform:uppercase;background:#1d222c;display:flex}.error-log-heading span{flex:1}.error-log-copy{border-radius:var(--r-sm);color:#b7c2d6;cursor:pointer;font:var(--t-meta) var(--font-mono);letter-spacing:.04em;padding:var(--s1) var(--s2);text-transform:none;background:0 0;border:1px solid #384158}.error-log-copy:hover{color:var(--surface);background:#262d3b}.error-log-body{color:#d7dde8;font:.71875rem/1.6 var(--font-mono);max-height:20rem;padding:var(--s3);white-space:pre-wrap;word-break:break-word;margin:0;overflow:auto}.error-log-empty{color:var(--rail-ink-faint);font-size:var(--t-xs);padding:var(--s3);margin:0}.metrics-panel{gap:var(--s5);margin:var(--s5) 0;display:grid}.metrics-images{gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));display:grid}.metrics-images figure{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r-sm);margin:0;overflow:hidden}.metrics-images img{width:100%;display:block}.metrics-images figcaption{color:var(--ink-4);font-size:var(--t-2xs);align-items:center;gap:var(--s2);padding:var(--s1) var(--s1) var(--s1) var(--s3);justify-content:space-between;display:flex}.metrics-images figcaption .icon-button{min-width:2rem;min-height:2rem}.metrics-image-button{background:0 0;border:0;width:100%;padding:0;display:block}.metrics-image-button:not(:disabled){cursor:zoom-in}.metrics-image-loading{color:#8a97ab;font-size:var(--t-xs);justify-content:center;align-items:center;height:8.75rem;display:flex}.metrics-table{background:var(--surface);border:1px solid var(--line);border-collapse:collapse;border-radius:var(--r-sm);width:100%;overflow:hidden}.metrics-table th,.metrics-table td{padding:var(--s3) var(--s4);text-align:left}.metrics-table thead th{background:var(--surface-sunken);border-bottom:1px solid var(--line);color:var(--ink-5)}.metrics-table tbody tr:not(:last-child) td{border-bottom:1px solid var(--line-faint)}.metrics-table tbody td:first-child{color:var(--ink-2);font-size:var(--t-sm)}.metrics-table tbody td:last-child{color:var(--ink-1);font-size:var(--t-body);text-align:right;font-weight:600}.metrics-sheet-breakdown{gap:var(--s2);display:grid}.metrics-subheading{color:var(--ink-5);margin:0}.metrics-table-compact th,.metrics-table-compact td{padding:var(--s2) var(--s3)}.metrics-table-compact tbody td{font-size:var(--t-xs);font-weight:500}.metrics-table-compact tbody td:last-child{font-size:var(--t-xs);font-weight:600}.admin-metrics-board td:not(:first-child):not(:last-child){color:var(--ink-4);font-size:var(--t-xs);text-align:right}.stat-tiles{gap:var(--s3);margin-top:var(--s4);grid-template-columns:repeat(auto-fit,minmax(8.75rem,1fr));display:grid}.stat-tile{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r);gap:var(--s1);padding:var(--s3) var(--s4);display:grid}.stat-tile strong{color:var(--ink-1);font-size:var(--t-title);font-weight:600}.period-navigator{align-items:center;gap:var(--s3);margin-top:var(--s3);flex-wrap:wrap;display:flex}.granularity-toggle{border-radius:var(--r-sm);gap:var(--s1);background:#f1f4f9;padding:3px;display:flex}.granularity-option{color:var(--ink-4);font-size:var(--t-xs);padding:var(--s2) var(--s3);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;border-radius:3px}.granularity-option:hover{color:var(--ink-1)}.granularity-option.active{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--ink-1);font-weight:600}.period-stepper{align-items:center;gap:var(--s2);display:flex}.period-stepper .icon-button{min-width:2.25rem;min-height:2.25rem}.period-label{color:var(--ink-1);font-size:var(--t-sm);text-align:center;min-width:8.25rem;font-weight:600}.period-custom-range{align-items:center;gap:var(--s2);display:flex}.period-custom-range input{background:var(--surface-sunken);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:var(--t-xs);min-height:2.25rem;padding:var(--s1) var(--s2)}.period-custom-range span{color:var(--ink-5)}.period-custom-toggle{color:var(--blue-ink);font-size:var(--t-xs);padding:var(--s2) var(--s1);background:0 0;border:0;font-weight:500}.period-custom-toggle:hover{text-underline-offset:3px;text-decoration:underline}.metrics-loading-note{color:var(--ink-4);font-size:var(--t-xs);margin:var(--s3) 0 0}.history-panel,.admin-metrics{gap:var(--s5);display:grid}.history-filter-shell{margin:var(--s4) 0}.history-filter-toolbar{align-items:center;gap:var(--s3);justify-content:space-between;display:flex}.filter-toggle,.filter-clear{color:var(--ink-3);font-size:var(--t-xs);align-items:center;gap:var(--s2);min-height:2.75rem;padding:0 var(--s1);transition:color var(--dur-fast) var(--ease);background:0 0;border:0;display:inline-flex}.filter-toggle:hover,.filter-clear:hover{color:var(--blue)}.filter-toggle svg{transition:transform var(--dur) var(--ease)}.filter-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.filter-count{background:var(--blue-softer);border-radius:var(--r-round);color:var(--blue);font:var(--t-2xs) var(--font-mono);justify-content:center;align-items:center;width:1.375rem;height:1.375rem;display:inline-flex}.filter-clear{color:var(--ink-4);text-underline-offset:3px;text-decoration:underline}.collapsible{transition:grid-template-rows var(--dur) var(--ease);grid-template-rows:0fr;display:grid}.collapsible.open{grid-template-rows:1fr}.collapsible>*{min-height:0;overflow:hidden}.history-filters{border-top:1px solid var(--line-soft);gap:var(--s3);margin-top:var(--s1);padding-top:var(--s3);flex-wrap:wrap;display:flex}.history-filters label{color:var(--ink-4);font-size:var(--t-2xs);gap:var(--s1);display:grid}.history-filters select,.history-filters input{background:var(--surface-sunken);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:var(--t-xs);min-height:2.375rem;padding:var(--s2)}.history-list{gap:var(--s2);display:grid}.history-head,.history-row-summary{align-items:center;gap:var(--s3);grid-template-columns:6.75rem 5.75rem minmax(7.5rem,1.2fr) minmax(5rem,.8fr) minmax(6.5rem,1fr) 1.25rem;display:grid}.history-head{color:var(--ink-5);padding:0 var(--s4) var(--s2)}.history-head span:nth-child(4),.history-head span:nth-child(5){text-align:right}.history-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease)}.history-row:hover{border-color:var(--blue-line)}.history-row.expanded{border-color:var(--blue-line);box-shadow:var(--shadow-sm)}.history-row-summary{border-radius:inherit;padding:var(--s3) var(--s4);text-align:left;transition:background var(--dur-fast) var(--ease);background:0 0;border:0;width:100%}.history-row-summary:hover{background:var(--surface-sunken)}.history-row-summary:focus-visible{box-shadow:inset 0 0 0 2px var(--blue);outline:0}.history-row-date{color:var(--ink-4);font:var(--t-2xs) var(--font-mono)}.history-row-stage{gap:2px;min-width:0;display:grid}.history-row-stage strong{color:var(--ink-2);font-size:var(--t-xs);font-weight:500}.history-row-stage small{color:var(--ink-5);font:var(--t-meta) var(--font-mono)}.history-row-duration,.history-row-scrap{color:var(--ink-4);font-size:var(--t-xs);text-align:right}.history-row-chevron{color:var(--ink-5);transition:transform var(--dur) var(--ease);justify-content:center;align-items:center;display:inline-flex}.history-row.expanded .history-row-chevron{transform:rotate(180deg)}.history-name-row{border-bottom:1px solid var(--line-faint);align-items:center;gap:var(--s3);margin-bottom:var(--s3);padding-bottom:var(--s3);display:flex}.history-name-row strong{color:var(--ink-1);font-size:var(--t-body);font-weight:500}.history-name-row input{border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;font-size:var(--t-sm);padding:var(--s2);width:min(20rem,100%)}.history-name-row input:focus-visible{border-color:var(--blue);outline:none}.history-name-edit{color:var(--blue-ink);cursor:pointer;font-size:var(--t-xs);align-items:center;gap:var(--s1);padding:var(--s1) var(--s2);border-radius:var(--r-sm);background:0 0;border:0;margin-left:auto;display:flex}.history-name-edit:hover{background:var(--blue-soft)}.history-name-row .secondary-button{min-height:2rem;padding:0 var(--s3)}.history-row-detail{border-top:1px solid var(--line-soft);gap:var(--s4);padding:var(--s4);display:grid}.history-row-detail .metrics-panel{margin:0}.run-ledger{border:1px solid var(--line);border-radius:var(--r-sm);display:grid;overflow:hidden}.run-line{background:var(--surface);gap:var(--s2);padding:var(--s2) var(--s3);display:grid}.run-line+.run-line{border-top:1px solid var(--line-faint)}.run-line-main{align-items:center;gap:var(--s3);grid-template-columns:4.5rem max-content 3.5rem minmax(0,1fr);display:grid}.run-line-stage{color:var(--ink-5);font:var(--t-meta) var(--font-mono);letter-spacing:var(--tracking-meta);text-transform:uppercase}.run-line-duration{color:var(--ink-4);font-size:var(--t-xs);font-variant-numeric:tabular-nums;text-align:right}.run-line-files{align-items:center;gap:var(--s2);flex-wrap:wrap;justify-content:flex-end;min-width:0;display:flex}.run-line-files .muted,.history-error{font-size:var(--t-xs)}.history-error summary{color:#7a3434;cursor:pointer;font-weight:600}.history-error p{margin:var(--s2) 0 0}.history-pagination{align-items:center;gap:var(--s4);margin-top:var(--s4);justify-content:flex-end;display:flex}.history-pagination-status{color:var(--ink-4);font:var(--t-2xs) var(--font-mono);letter-spacing:.04em}.history-loading,.metrics-table-loading{gap:var(--s2);margin:var(--s4) 0;display:grid}.history-loading span,.metrics-table-loading span{border-radius:var(--r-sm);background:linear-gradient(90deg,#e5ebf4,#f5f8fc,#e5ebf4) 0 0/200% 100%;height:3.125rem;animation:1.5s ease-in-out infinite shimmer;display:block}.metrics-table-loading span{height:2.375rem}.toast-viewport{bottom:var(--s5);gap:var(--s2);max-width:22.5rem;right:var(--s5);width:calc(100% - var(--s7));z-index:1000;display:grid;position:fixed}.toast{animation:toast-in var(--dur) var(--ease);border-radius:var(--r);box-shadow:var(--shadow-md);color:var(--surface);font-size:var(--t-sm);align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:#1e293b;grid-template-columns:minmax(0,1fr) auto;display:grid}.toast-error{background:#4c1d1d;border:1px solid #7f2b2b}.toast-success{background:#123a2c;border:1px solid #1f6b4e}.toast-dismiss{border-radius:var(--r-sm);color:inherit;opacity:.7;min-width:1.75rem;min-height:1.75rem;transition:background var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.toast-dismiss:hover{opacity:1;background:#ffffff1f}.confirm-overlay{animation:overlay-in var(--dur-fast) var(--ease);padding:var(--s5);z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{animation:dialog-in var(--dur) var(--ease);background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-md);max-width:26.25rem;padding:var(--s5);width:100%}.confirm-dialog h3{font-size:var(--t-lead);margin:0 0 var(--s3)}.confirm-dialog p{color:var(--ink-4);font-size:var(--t-sm);margin:0 0 var(--s5);line-height:1.55}.confirm-actions{gap:var(--s2);justify-content:flex-end;display:flex}.lightbox-overlay{animation:overlay-in var(--dur-fast) var(--ease);z-index:1000;background:#060a12f0;position:fixed;inset:0;overflow:hidden}.lightbox-toolbar{color:#eef2f8;font-size:var(--t-sm);align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);z-index:2;background:#0a101ceb;border-bottom:1px solid #ffffff24;justify-content:space-between;font-weight:600;display:flex;position:absolute;top:0;left:0;right:0}.lightbox-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lightbox-actions{align-items:center;gap:var(--s1);flex:none;display:flex}.lightbox-actions .icon-button{color:#d7e0ec;min-width:2.25rem;min-height:2.25rem}.lightbox-actions .icon-button:hover:not(:disabled){color:var(--surface);background:#ffffff1f}.lightbox-zoom{border-radius:var(--r-sm);color:var(--rail-ink);cursor:pointer;font:var(--t-xs) var(--font-mono);min-width:3.25rem;padding:var(--s1) var(--s2);background:0 0;border:0}.lightbox-zoom:hover{color:var(--surface)}.lightbox-zoom:disabled{cursor:default;opacity:.4}.lightbox-stage{cursor:zoom-in;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.lightbox-stage.zoomed{cursor:grab}.lightbox-stage.zoomed.dragging{cursor:grabbing}.lightbox-stage img{transform-origin:50%;will-change:transform;max-width:none;max-height:none;display:block}.lightbox-stage .metrics-image-loading{color:#8a97ab;font-size:var(--t-xs)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes project-spin{to{transform:rotate(360deg)}}@keyframes session-pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:900px){.license-bar{gap:var(--s4);grid-template-columns:repeat(3,minmax(0,1fr))}.license-meter{grid-column:1/-1}.provision-area{grid-template-columns:minmax(0,1fr)}.provision-form{grid-template-columns:repeat(2,minmax(0,1fr))}.provision-form .primary-button{grid-column:1/-1}.credential-card{grid-template-columns:minmax(0,1fr)}.credential-card .secondary-button{width:max-content}.review-choice-grid{grid-template-columns:minmax(0,1fr)}.run-line-main{grid-template-columns:4.5rem max-content 3.5rem minmax(0,1fr)}.history-head,.history-row-summary{gap:var(--s2);grid-template-columns:6.75rem 5.75rem minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr) 1.25rem}}@media (max-width:620px){.login-page{padding:var(--s4)}.login-card{padding:var(--s6) var(--s5)}.tool-shell{grid-template-columns:minmax(0,1fr)}.tool-rail{min-height:3.875rem;padding:var(--s2) var(--s3);flex-direction:row}.tool-rail nav{margin-left:auto;display:flex}.rail-item{min-width:4.5rem}.rail-item:before{border-radius:0 0 2px 2px;width:100%;height:2px;top:auto;bottom:0;left:0;transform:scaleX(0)}.rail-item.active:before{transform:scaleX(1)}.rail-bottom{display:none}.tool-toolbar{padding:var(--s2) var(--s3)}.toolbar-app span{display:none}.tool-content{padding:var(--s4) var(--s3) var(--s6)}.tool-heading{display:block}.connection-state{margin-top:var(--s2)}.license-bar{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr))}.license-status{grid-column:1/-1}.table-head,.history-head{display:none}.account-row{gap:var(--s2) var(--s3);padding:var(--s3);grid-template-columns:minmax(0,1fr) max-content}.account-row>:nth-child(2),.account-row>:nth-child(3){grid-row:2;justify-self:start}.row-actions{grid-row:1}.history-row-summary{gap:var(--s2) var(--s3);grid-template-columns:max-content minmax(0,1fr) 1.25rem}.history-row-date{grid-area:1/1}.history-row-summary>.status-pill{grid-area:1/2;justify-self:start}.history-row-stage{grid-area:2/1/2/3}.history-row-duration{text-align:left;grid-area:3/1}.history-row-scrap{text-align:left;grid-area:3/2}.history-row-chevron{grid-area:1/3/4/3}.run-line-main{grid-template-columns:max-content max-content minmax(0,1fr)}.run-line-files{grid-column:1/-1;justify-content:flex-start}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.history-pagination{gap:var(--s3);justify-content:space-between}.project-start-options{grid-template-columns:minmax(0,1fr)}.project-form-actions{justify-content:stretch}.project-form-actions button{flex:1}.progress-meta{gap:var(--s1);display:grid}.provision-form{grid-template-columns:minmax(0,1fr)}.toast-viewport{left:var(--s3);right:var(--s3);width:auto}}@media (min-width:1800px){html{font-size:24px}:root{--content-max:100rem}}@media (min-width:2800px){html{font-size:32px}:root{--content-max:100rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{animation:none}}
