@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=JetBrains+Mono:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap";:root{--ink:#10141c;--ink-2:#465064;--muted:#768197;--line:#dfe3ea;--paper:#fff;--canvas:#f2f4f7;--yellow:#ffc400;--yellow-2:#f5b800;--red:#e94141;--green:#16a05d;--nav:#11151e;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}.app-loader{color:#fff;background:#0f131b;place-content:center;justify-items:center;gap:12px;height:100vh;display:grid}.loader-mark,.brand-tile{background:var(--yellow);color:#111;place-items:center;width:40px;height:40px;font:800 24px/1 Bebas Neue;display:grid;box-shadow:7px 7px #ffc4002e}.app-loader p{color:#a9b1c0;font-size:13px}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.login-page{background:#f8f9fb;grid-template-columns:minmax(420px,1.06fr) minmax(440px,.94fr);min-height:100vh;display:grid}.login-story{color:#fff;background:linear-gradient(148deg,#10151f 0%,#151b26 55%,#090c12 100%);flex-direction:column;min-height:100vh;padding:42px 58px;display:flex;position:relative;overflow:hidden}.story-grid{opacity:.13;background-image:linear-gradient(#ffffff17 1px,#0000 1px),linear-gradient(90deg,#ffffff17 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 87%);mask-image:linear-gradient(#000,#0000 87%)}.story-glow{filter:blur(70px);background:#ffc40024;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-150px;right:-240px}.story-topline{letter-spacing:1px;align-items:center;gap:12px;font:800 23px Bebas Neue;display:flex;position:relative}.story-topline small{letter-spacing:2.2px;color:#929daf;align-self:flex-end;margin:0 0 4px -52px;font:500 8px JetBrains Mono;transform:translateY(11px)}.story-copy{max-width:660px;margin:auto 0;position:relative}.eyebrow{color:var(--yellow);letter-spacing:2px;align-items:center;gap:8px;margin-bottom:25px;font:600 11px JetBrains Mono;display:flex}.story-copy h1{letter-spacing:-1px;text-transform:uppercase;margin:0;font:800 clamp(54px,6.3vw,94px)/.9 Bebas Neue}.story-copy h1 em{color:var(--yellow);font-style:normal}.story-copy>p{color:#b8c0cd;max-width:590px;margin:30px 0;font-size:16px;line-height:1.75}.story-points{border-top:1px solid #303744;flex-wrap:wrap;gap:22px;padding-top:22px;display:flex}.story-points span{color:#d4d9e0;align-items:center;gap:7px;font-size:11px;display:flex}.story-points svg{color:var(--yellow)}.story-footer{color:#778195;letter-spacing:1.5px;align-items:center;gap:10px;font:500 9px JetBrains Mono;display:flex;position:relative}.story-footer svg{color:var(--yellow)}.login-panel{flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.login-card{width:min(430px,100%)}.login-logo{width:210px;height:auto;margin:0 auto 52px;display:block}.section-kicker{letter-spacing:2px;color:#9a7400;font:600 10px JetBrains Mono}.login-heading h2{text-transform:uppercase;letter-spacing:.3px;margin:12px 0;font:800 42px/1 Bebas Neue}.login-heading p{color:var(--muted);margin:0 0 30px;font-size:14px;line-height:1.65}.sso-button{color:#fff;background:#171c25;border:0;border-radius:6px;align-items:center;gap:14px;width:100%;height:57px;padding:0 18px;font-weight:600;transition:all .18s;display:flex;box-shadow:0 8px 24px #0a0d1221}.sso-button:hover{background:#252b35;transform:translateY(-1px);box-shadow:0 12px 28px #0a0d122e}.sso-button:disabled{opacity:.65}.sso-button>span:nth-child(2){text-align:left;flex:1}.microsoft-icon{grid-template-columns:repeat(2,9px);gap:2px;display:grid}.microsoft-icon i{width:9px;height:9px}.microsoft-icon i:first-child{background:#f35325}.microsoft-icon i:nth-child(2){background:#81bc06}.microsoft-icon i:nth-child(3){background:#05a6f0}.microsoft-icon i:nth-child(4){background:#ffba08}.security-note{color:#8490a1;align-items:flex-start;gap:11px;margin:24px 4px;display:flex}.security-note svg{color:#4b8d6e;flex:none}.security-note p{margin:0;font-size:11px;line-height:1.5}.security-note strong{color:#526073}.login-help{text-align:center;color:#8a94a4;margin-top:30px;font-size:11px}.login-panel footer{letter-spacing:1.5px;color:#a7aeb9;font:500 8px JetBrains Mono;position:absolute;bottom:24px}.login-panel footer span{margin:0 7px}.app-shell{background:var(--canvas);grid-template-columns:230px 1fr;height:100vh;display:grid;overflow:hidden}.sidebar{background:var(--paper);color:#4a5468;z-index:20;border-right:1px solid #e1e4eb;flex-direction:column;min-height:0;display:flex}.sidebar-brand{border-bottom:1px solid #e1e4eb;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px 12px;display:flex;position:relative}.sidebar-brand img{width:100%;max-width:180px;height:auto;display:block}.sidebar-brand div{flex-direction:column;gap:2px;padding:0 2px;display:flex}.sidebar-brand div strong{color:#6b7488;letter-spacing:2px;font:500 9px JetBrains Mono}.sidebar-brand div span{color:#7c869c;letter-spacing:1.5px;font:500 8px JetBrains Mono}.sidebar-close,.mobile-menu,.sidebar-scrim{display:none}.sidebar nav{flex:1;padding:4px 10px 14px;overflow-y:auto}.nav-section>p{color:#7c869c;letter-spacing:2px;margin:0;padding:14px 10px 6px;font:500 9px JetBrains Mono}.nav-item{color:#4a5468;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;line-height:1.4;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.nav-item:hover{color:#12151c;background:#f4f6f9}.nav-item.active:hover{color:#8f6a00;background:#fff8db}.nav-icon{opacity:.85;flex-shrink:0;width:16px;height:16px}.nav-item.active{color:#8f6a00;background:#fff8db;font-weight:600}.nav-item.active:before{content:"";background:#ffd60a;border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-item b{color:#4a5468;background:#e8ebf1;border-radius:10px;margin-left:auto;padding:2px 6px;font:500 10px JetBrains Mono}.sidebar-bottom{border-top:1px solid #e1e4eb;padding:14px}.system-online{color:#6b7488;letter-spacing:.5px;align-items:center;gap:8px;font:500 10px JetBrains Mono;display:flex}.system-online i{background:#22c55e;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #22c55e}.sidebar-bottom button{color:#6b7488;background:0 0;border:0;align-items:center;gap:8px;padding:10px 0 0;font-size:11px;display:flex}.sidebar-bottom button:hover{color:#12151c}.main-area{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);background:#fff;flex:none;align-items:center;gap:12px;height:56px;padding:0 16px 0 22px;display:flex}.breadcrumbs{letter-spacing:1px;margin-right:auto;font:500 10px JetBrains Mono}.breadcrumbs span{color:#8b95a8}.breadcrumbs i{color:#b1b8c4;margin:0 10px;font-style:normal}.search-box{color:#8f99aa;background:#f5f7fa;border:1px solid #d8dde5;border-radius:6px;align-items:center;gap:7px;width:260px;height:34px;padding:0 10px;display:flex}.search-box:focus-within{background:#fff;border-color:#c89d00}.search-box input{background:0 0;border:0;outline:0;width:100%;font-size:11px}.icon-button{color:#606b7d;background:0 0;border:0;place-items:center;width:34px;height:34px;display:grid;position:relative}.icon-button i{background:var(--red);border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:7px}.new-build{background:var(--yellow);border:0;border-radius:6px;align-items:center;gap:5px;height:32px;padding:0 12px;font-size:10px;font-weight:700;display:flex}.new-build:hover{background:#ffcf22}.user-chip{background:#fff;border:1px solid #e1e4e9;border-radius:24px;align-items:center;gap:8px;height:42px;padding:4px 9px 4px 5px;display:flex}.avatar{color:#fff;background:#e54343;border-radius:50%;place-items:center;width:31px;height:31px;font-size:10px;font-weight:700;display:grid}.user-chip>span:nth-child(2){flex-direction:column;align-items:flex-start;min-width:110px;display:flex}.user-chip strong{font-size:10px}.user-chip small{text-transform:uppercase;color:#d23c3c;letter-spacing:1px;margin-top:2px;font:600 7px JetBrains Mono}.dashboard-content{padding:22px 24px 40px;overflow-y:auto}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.page-heading .welcome{color:#9b7a08;letter-spacing:1.6px;margin:0 0 4px;font:600 9px JetBrains Mono}.page-heading h1{text-transform:uppercase;letter-spacing:.7px;margin:0;font:800 36px/1 Bebas Neue}.page-heading>div>span{color:#8b95a8;letter-spacing:1.1px;margin-top:7px;font:500 9px JetBrains Mono;display:block}.heading-actions{gap:7px;display:flex}.heading-actions button{color:#515d6e;background:#fff;border:1px solid #d4d9e1;border-radius:5px;align-items:center;gap:6px;height:29px;padding:0 10px;font-size:9px;font-weight:600;display:flex}.stats-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px;display:grid}.stat-card{border:1px solid #dce0e6;border-top:2px solid var(--yellow);background:#fff;border-radius:7px;min-height:122px;padding:15px 17px 13px;position:relative;box-shadow:0 3px 12px #1f283709}.stat-card.risk{border-top-color:#ef6b4a}.stat-top{color:#79849a;letter-spacing:1.6px;justify-content:space-between;align-items:center;font:500 9px JetBrains Mono;display:flex}.stat-icon{color:#b68a00;background:#fff7d5;border-radius:50%;place-items:center;width:31px;height:31px;display:grid}.stat-card.risk .stat-icon{color:#dc4c2d;background:#fff0eb}.stat-value{margin-top:3px;font:800 36px/1 Bebas Neue}.stat-card.risk .stat-value{color:#c43c1b}.stat-value small{color:#6f7990;letter-spacing:.4px;font-size:15px}.stat-meta{margin-top:10px;font:500 9px JetBrains Mono}.positive{color:#0a8750;background:#e1f7eb;border-radius:3px;padding:3px 5px}.negative{color:#d43535;background:#ffeaea;border-radius:3px;padding:3px 5px}.neutral{color:#586477;background:#edf0f5;border-radius:3px;padding:3px 5px}.attention-card{background:#fff;border:2px solid #f05a58;border-radius:8px;margin-bottom:18px;overflow:hidden;box-shadow:0 0 0 5px #f9dada,0 8px 22px #d7363617}.attention-head{background:linear-gradient(90deg,#fff0eb,snow);border-bottom:1px solid #f4c4bd;justify-content:space-between;align-items:center;height:56px;padding:0 14px;display:flex}.attention-title{align-items:center;gap:9px;display:flex}.attention-title>span{color:#fff;background:#f04c4c;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 0 0 4px #ffc7c5}.attention-title strong{letter-spacing:.7px;color:#c62e2e;font:700 16px Bebas Neue}.attention-title b{letter-spacing:1.2px;color:#fff;background:#e94646;border-radius:20px;padding:6px 11px;font:600 8px JetBrains Mono}.attention-action{color:#c43939;letter-spacing:1.4px;align-items:center;font:500 8px JetBrains Mono;display:flex}.attention-card table{border-collapse:collapse;table-layout:fixed;width:100%}.attention-card th{color:#7c8799;text-align:left;letter-spacing:1.4px;background:#f7f8fa;height:33px;padding:0 10px;font:500 8px JetBrains Mono}.attention-card th:first-child{width:12%}.attention-card th:nth-child(2){width:14%}.attention-card th:nth-child(3){width:13%}.attention-card th:nth-child(4),.attention-card th:nth-child(5){width:10%}.attention-card th:last-child{width:27px}.attention-card td{color:#354055;border-top:1px solid #e6d8d5;height:57px;padding:7px 10px;font:500 9px JetBrains Mono}.attention-card tbody tr{background:#fffaf7;transition:all .12s}.attention-card tbody tr:hover{background:#fff3eb}.attention-card tbody tr:last-child{background:#fff4f4}.attention-card tbody tr:last-child:hover{background:#ffecec}.attention-card td:first-child{border-left:3px solid #ffbd00}.attention-card tr:last-child td:first-child{border-left-color:#eb4444}.attention-card td:first-child strong{color:#eeb000;letter-spacing:.5px;font-size:10px;display:block}.attention-card td:first-child small{color:#6b7586;margin-top:3px;font-family:Inter;font-size:9px;display:block}.stage-badge{color:#5b6575;background:#edf0f5;border-radius:4px;padding:5px 7px;font-family:Inter}.stage-badge b{background:var(--yellow);color:#121212;border-radius:2px;margin-right:5px;padding:2px 5px}.status{text-transform:uppercase;color:#c64b17;letter-spacing:.6px;background:#fff0df;border-radius:20px;padding:4px 8px;font-size:8px;display:inline-block}.status.delayed{color:#ce2222;background:#ffe1e1}.attention-card .days{color:#d22424}.attention-card .notes{color:#4a5568;font-family:Inter;font-size:10px;font-weight:400;line-height:1.35}.dashboard-grid{grid-template-columns:1.35fr 1fr;align-items:start;gap:14px;display:grid}.panel{background:#fff;border:1px solid #dce0e6;border-radius:8px;overflow:hidden}.panel-head{border-bottom:1px solid #e2e5ea;justify-content:space-between;align-items:center;height:58px;padding:0 16px;display:flex}.panel-head>div{align-items:baseline;gap:10px;display:flex}.panel-kicker{letter-spacing:1px;color:#b38800!important;font:600 8px JetBrains Mono!important}.panel-head h3{text-transform:uppercase;letter-spacing:.5px;margin:0;font:700 18px Bebas Neue}.fleet-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #e4e7eb;grid-template-columns:110px 120px 1fr 145px 18px;align-items:center;width:100%;height:51px;padding:0 15px;display:grid}.fleet-list button:last-child{border-bottom:0}.fleet-list span{font-size:10px}.fleet-list em{color:#d33b3b;font:500 9px JetBrains Mono}.fleet-list small{color:#8b95a6;letter-spacing:.8px;font:500 7px JetBrains Mono}.fleet-list small b{color:#1c222c;margin-left:12px}.fleet-list svg{color:#8f99a9}.delivery-panel{min-height:302px}.chart{align-items:stretch;gap:8px;height:188px;padding:22px 20px 8px;display:flex}.bar-column{text-align:center;flex-direction:column;flex:1;display:flex}.bar-area{justify-content:center;align-items:flex-end;height:136px;display:flex;position:relative}.bar-area i{background:linear-gradient(#ffd41d,#ffb800);border-radius:3px 3px 0 0;width:min(100%,64px);display:block}.bar-area b{top:calc(100% - var(--h));font:500 9px JetBrains Mono;position:absolute}.bar-column>span{color:#6f7990;margin-top:7px;font:500 8px JetBrains Mono}.bar-area b{top:3px}.chart-caption{color:#637084;border-top:1px solid #edf0f3;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:9px;display:flex}.chart-caption svg{color:#13995b}.milestone-list{grid-template-columns:repeat(2,1fr);column-gap:35px;padding:13px 16px 16px;display:grid}.milestone-list>.milestone-link{grid-template-columns:24px 150px 1fr 34px;align-items:center;gap:8px;height:34px;display:grid}.milestone-list>.milestone-link>b{background:#ffe16b;border-radius:3px;place-items:center;width:20px;height:20px;font:700 9px JetBrains Mono;display:grid}.milestone-list>.milestone-link>span{color:#3d485b;text-transform:capitalize;font-size:10px}.milestone-list>.milestone-link>div{background:#edf0f4;border-radius:5px;height:6px;overflow:hidden}.milestone-list>.milestone-link>div i{background:var(--yellow);border-radius:5px;height:100%;display:block}.milestone-list>.milestone-link>strong{color:#667185;text-align:right;font:600 9px JetBrains Mono}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.milestone-panel{grid-column:auto}.attention-card table{min-width:1040px}.table-scroll{overflow-x:auto}.search-box{width:210px}.new-build{display:none}}@media (width<=820px){.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh}.app-shell{display:block}.sidebar{width:240px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-scrim{z-index:15;background:#090c1185;border:0;display:block;position:fixed;inset:0}.sidebar-close{color:#4a5468;background:0 0;border:0;display:grid;position:absolute;top:12px;right:10px}.mobile-menu{z-index:12;color:#fff;background:#151a23;border:0;border-radius:6px;place-items:center;width:34px;height:34px;display:grid;position:fixed;top:12px;left:12px}.topbar{padding-left:58px}.breadcrumbs{display:none}.search-box{margin-left:auto}.dashboard-content{padding:19px 16px 35px}.milestone-list{grid-template-columns:1fr}}@media (width<=580px){.login-panel{padding:28px 22px}.login-logo{width:180px;margin-bottom:42px}.login-panel footer{font-size:7px}.search-box{display:none}.icon-button{margin-left:auto}.user-chip>span:nth-child(2),.user-chip>svg{display:none}.user-chip{min-width:42px;padding:4px}.page-heading{align-items:flex-start}.heading-actions{display:none}.page-heading h1{font-size:31px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{min-height:110px;padding:12px}.stat-value{font-size:30px}.attention-head{height:auto;min-height:58px}.attention-action{display:none}.attention-title b{padding:5px 7px;font-size:7px}.panel-head>span{display:none}.fleet-list button{grid-template-columns:82px 1fr 90px 12px}.fleet-list em{display:none}.milestone-list>.milestone-link{grid-template-columns:24px 112px 1fr 30px}}.login-alert{text-align:left;border:1px solid;border-radius:7px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:11px 13px;font-size:12px;line-height:1.5;display:flex}.login-alert:focus{outline-offset:2px;outline:3px solid #1476d4}.login-alert svg{flex:none;margin-top:2px}.login-alert strong{margin-bottom:2px;font-size:12.5px;display:block}.login-alert p{margin:0 0 4px}.login-alert small{color:#5d6778;display:block}.login-alert code{background:#ffffffb3;border:1px solid #00000014;border-radius:4px;padding:1px 5px;font:500 10.5px JetBrains Mono}.login-alert.denied{color:#8a1f17;background:#fdeceb;border-color:#f3b8b3}.login-alert.failed,.login-alert.config{color:#6d5b1e;background:#fff6dc;border-color:#f3d978}.access-status-page{background:#f8f9fb;place-items:center;min-height:100vh;padding:40px 20px;display:grid}.access-status-panel{border:1px solid #dce1e7;border-top:5px solid var(--red);text-align:center;background:#fff;border-radius:2px;width:min(460px,100%);padding:42px 36px;box-shadow:0 18px 44px #0f141e12}.access-status-panel.error{border-top-color:var(--yellow-2)}.access-status-logo{width:120px;height:auto;margin:0 auto 20px}.access-status-icon{width:54px;height:54px;color:var(--red);background:#fdeceb;border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.access-status-panel.error .access-status-icon{color:#9a7400;background:#fff6dc}.access-status-panel h1{text-transform:uppercase;letter-spacing:.3px;color:var(--ink);margin:0 0 12px;font:800 30px Bebas Neue}.access-status-panel h1:focus{outline-offset:4px;outline:3px solid #1476d4}.access-status-panel p{color:var(--muted);margin:0 0 8px;font-size:13.5px;line-height:1.6}.access-status-trace{color:#69758a;font:500 10px JetBrains Mono!important}.access-status-trace code{border:1px solid var(--line);color:var(--ink-2);background:#f2f4f7;border-radius:4px;padding:3px 7px}.access-status-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.access-status-actions button{background:#fff;border:1px solid #d4dae2;border-radius:5px;align-items:center;gap:7px;padding:10px 16px;font-size:11px;font-weight:700;display:inline-flex}.access-status-actions button.primary-action{width:auto;margin-top:0}.route-denied-panel{border:1px solid #dce1e7;border-top:5px solid var(--yellow-2);text-align:center;background:#fff;border-radius:2px;width:min(460px,100%);margin:40px auto;padding:38px 32px;box-shadow:0 12px 30px #0f141e0f}.route-denied-icon{color:#9a7400;background:#fff6dc;border-radius:50%;place-items:center;width:48px;height:48px;margin:0 auto 14px;display:grid}.route-denied-panel h1{text-transform:uppercase;letter-spacing:.3px;color:var(--ink);margin:0 0 12px;font:800 24px Bebas Neue}.route-denied-panel h1:focus{outline-offset:4px;outline:3px solid #1476d4}.route-denied-panel p{color:var(--muted);margin:0 0 8px;font-size:13px;line-height:1.6}.route-denied-link{margin-top:14px;text-decoration:none;display:inline-flex}@media (width<=480px){.access-status-panel{padding:32px 22px}.access-status-panel h1{font-size:25px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.nav-item{text-decoration:none}.top-action-wrap{position:relative}.top-popover{z-index:40;background:#fff;border:1px solid #d9dee6;border-radius:7px;width:260px;padding:10px;position:absolute;top:48px;right:0;box-shadow:0 16px 38px #0d131d2e}.top-popover>strong{padding:5px 7px 10px;font-size:11px;display:block}.top-popover>span{color:#758094;padding:3px 7px;font-size:10px;display:block}.top-popover button{text-align:left;color:#354053;background:0 0;border:0;border-radius:4px;width:100%;padding:9px 7px;font-size:10px}.top-popover button:hover{background:#f1f3f6}.user-popover{width:230px}.user-popover button{color:#b63030;border-top:1px solid #e5e8ed;align-items:center;gap:7px;margin-top:8px;display:flex}.workspace-page{min-height:calc(100vh - 56px);padding:24px;overflow:auto}.workspace-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.workspace-heading h1{text-transform:uppercase;letter-spacing:.5px;margin:0 0 7px;font:800 36px/1 Bebas Neue}.workspace-heading p{color:#748095;margin:0;font-size:11px}.primary-action{background:var(--yellow);color:#111;border:0;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 13px;font-size:10px;font-weight:700;display:inline-flex}.primary-action:hover{background:#ffd230}.filter-bar{background:#fff;border:1px solid #dce1e8;border-radius:7px;align-items:center;gap:6px;min-height:50px;margin-bottom:12px;padding:9px;display:flex}.filter-bar label{color:#8490a0;background:#f7f8fa;border:1px solid #d7dce4;border-radius:5px;align-items:center;gap:7px;width:260px;height:32px;margin-right:8px;padding:0 9px;display:flex}.filter-bar input{background:0 0;border:0;outline:0;width:100%;font-size:10px}.filter-bar>span{color:#778296;align-items:center;gap:5px;margin:0 5px;font:500 9px JetBrains Mono;display:flex}.filter-bar button{color:#596577;background:#fff;border:1px solid #dbe0e7;border-radius:4px;height:29px;padding:0 9px;font-size:9px}.filter-bar button.selected{color:#fff;background:#202632;border-color:#202632}.filter-bar select{color:#465165;background:#fff;border:1px solid #d7dce4;border-radius:5px;height:31px;margin-left:auto;padding:0 26px 0 8px;font-size:10px}.workspace-table-wrap{background:#fff;border:1px solid #dce1e8;border-radius:7px;overflow:auto}.workspace-table{border-collapse:collapse;width:100%;min-width:980px}.workspace-table th{color:#788397;text-align:left;letter-spacing:1px;background:#f5f7f9;border-bottom:1px solid #dde2e8;height:36px;padding:0 11px;font:600 8px JetBrains Mono}.workspace-table td{color:#3e4a5e;border-bottom:1px solid #e5e8ed;height:58px;padding:8px 11px;font-size:10px}.workspace-table tbody tr{cursor:pointer}.workspace-table tbody tr:last-child td{border-bottom:0}.workspace-table td>strong,.workspace-table td>small{display:block}.workspace-table td:first-child>strong{color:#c89700;font:700 12px JetBrains Mono}.workspace-table select{background:#fff;border:1px solid #d6dce5;border-radius:4px;height:31px;padding:0 7px;font-size:10px}.stage-number{color:#111;background:#ffd52e;border-radius:3px;place-items:center;width:19px;height:19px;margin-right:6px;font:700 9px JetBrains Mono;display:inline-grid}.workspace-status{color:#087c48;text-transform:uppercase;background:#e1f6ea;border-radius:18px;padding:5px 8px;font:600 8px JetBrains Mono;display:inline-block}.inline-progress{align-items:center;gap:7px;display:flex}.inline-progress i{background:#e9edf2;border-radius:5px;width:62px;height:6px;display:block;overflow:hidden}.inline-progress i b{background:var(--yellow);height:100%;display:block}.inline-progress span{font:600 8px JetBrains Mono}.chassis-line{color:#273244;max-width:170px;font-size:9px}.empty-state{text-align:center;color:#8791a1;padding:60px}.clickable-row{cursor:pointer}.clickable-row:focus{outline-offset:-3px;outline:3px solid #1476d4}.drawer-backdrop{z-index:80;background:#0b0f1680;justify-content:flex-end;display:flex;position:fixed;inset:0}.build-drawer{background:#f5f6f8;width:min(570px,100%);height:100%;overflow:auto;box-shadow:-16px 0 40px #0003}.drawer-head{color:#fff;background:#151a23;justify-content:space-between;align-items:center;padding:22px;display:flex}.drawer-head span{color:#8f9aae;letter-spacing:1px;font:500 9px JetBrains Mono}.drawer-head h2{margin:2px 0 0;font:800 34px Bebas Neue}.drawer-head button{color:#fff;background:0 0;border:0}.drawer-status{justify-content:space-between;align-items:center;padding:17px 20px 9px;display:flex}.drawer-status strong{font-size:11px}.detail-progress{background:#e0e4e9;border-radius:7px;height:7px;margin:0 20px 20px;overflow:hidden}.detail-progress i{background:var(--yellow);height:100%;display:block}.detail-grid{background:#dfe3e8;border:1px solid #dfe3e8;grid-template-columns:1fr 1fr;gap:1px;margin:0 20px;display:grid}.detail-grid>div{background:#fff;padding:12px}.detail-grid .wide{grid-column:1/-1}.detail-grid dt{color:#8993a3;text-transform:uppercase;letter-spacing:.8px;font:500 8px JetBrains Mono}.detail-grid dd{color:#303a4c;margin:5px 0 0;font-size:10px;line-height:1.4}.drawer-finance{grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 20px;display:grid}.drawer-finance div{background:#fff;border:1px solid #dce1e7;padding:11px}.drawer-finance span{color:#8a94a4;text-transform:uppercase;font:500 8px JetBrains Mono;display:block}.drawer-finance strong{margin-top:5px;font:700 17px Bebas Neue;display:block}.drawer-milestones,.drawer-notes{background:#fff;border:1px solid #dce1e7;margin:0 20px 16px;padding:14px}.drawer-milestones h3,.drawer-notes h3{text-transform:uppercase;margin:0 0 10px;font:700 16px Bebas Neue}.drawer-milestones>div{border-top:1px solid #edf0f3;grid-template-columns:25px 1fr 70px;align-items:center;height:38px;display:grid}.drawer-milestones>div>span{color:#737e8f;background:#e8ebef;border-radius:50%;place-items:center;width:19px;height:19px;font:600 8px JetBrains Mono;display:grid}.drawer-milestones>div>p{font-size:10px}.drawer-milestones>div>b{text-align:right;color:#8993a3;font-size:8px}.drawer-milestones>div.current>span{background:var(--yellow);color:#111}.drawer-milestones>div.current>b{color:#b17f00}.drawer-notes p{color:#596477;font-size:10px;line-height:1.6}.floor-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.mini-dialog label{color:#707c8f;text-transform:uppercase;flex-direction:column;gap:6px;font:600 8px JetBrains Mono;display:flex}.mini-dialog input,.mini-dialog select{color:#273244;background:#fff;border:1px solid #d3d9e2;border-radius:5px;width:100%;min-height:38px;padding:8px;font:400 11px Inter}.success-panel{text-align:center;background:#fff;border:1px solid #dce1e7;border-top:5px solid #23a663;max-width:560px;margin:10vh auto;padding:42px}.success-panel>span{color:#12834c;background:#ddf6e9;border-radius:50%;place-items:center;width:58px;height:58px;margin:auto;display:grid}.success-panel h1{text-transform:uppercase;font:800 34px Bebas Neue}.success-panel p{color:#697587;line-height:1.6}.success-panel button{background:#fff;border:1px solid #d4dae2;border-radius:5px;margin:10px 4px;padding:10px 13px}.success-panel button:first-child{background:var(--yellow);border-color:var(--yellow)}.finance-kpis{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;display:grid}.finance-kpis article{border:1px solid #dce1e7;border-top:3px solid var(--yellow);background:#fff;padding:15px}.finance-kpis span,.finance-kpis small{color:#788497;font-size:9px;display:block}.finance-kpis strong{margin:5px 0;font:800 26px Bebas Neue;display:block}.good{color:#07814a!important}.warn{color:#c53232!important}.watch{color:#b56d00!important}.info-banner{color:#205c92;background:#eef6ff;border:1px solid #b8d5f3;border-radius:6px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 13px;display:flex}.info-banner p{margin:0;font-size:9px}.active-user{color:#087e49;font:600 8px JetBrains Mono}.dialog-back{z-index:90;background:#0c10178c;place-items:center;display:grid;position:fixed;inset:0}.mini-dialog{border-top:5px solid var(--yellow);background:#fff;width:min(390px,100% - 30px);padding:26px;position:relative;box-shadow:0 20px 55px #00000040}.mini-dialog>button:first-child{background:0 0;border:0;position:absolute;top:10px;right:10px}.mini-dialog>svg{color:#b48700}.mini-dialog h2{text-transform:uppercase;font:800 28px Bebas Neue}.mini-dialog label{margin:12px 0}.mini-dialog .primary-action{width:100%;margin-top:12px}.template-list{gap:10px;display:grid}.template-list article{background:#fff;border:1px solid #dce1e7;border-radius:7px;overflow:hidden}.audit-list{background:#fff;border:1px solid #dce1e7;border-radius:7px}.audit-list article{border-bottom:1px solid #e5e8ed;grid-template-columns:80px 130px 1fr;align-items:center;min-height:62px;padding:8px 14px;display:grid}.audit-list article:last-child{border-bottom:0}.audit-list>article>span{color:#8b95a5;font:500 8px JetBrains Mono}.audit-list>article>b{color:#596679;background:#edf1f5;border-radius:3px;justify-self:start;padding:5px 7px;font:600 8px JetBrains Mono}.audit-list article div strong{font-size:9px}.audit-list article div p{color:#6c7789;margin:4px 0 0;font-size:9px}.intake-page{padding-top:22px}.intake-panel{background:#fff;border:1px solid #dce1e7;border-radius:7px;max-width:880px;overflow:hidden}.intake-panel-head{border-bottom:1px solid #e3e7ec;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.intake-panel-head h2{text-transform:uppercase;margin:0;font:700 18px Bebas Neue}.intake-panel-head span,.intake-field legend,.field-label,.breakdown-label{color:#778296;letter-spacing:1.1px;text-transform:uppercase;font:500 9px JetBrains Mono}.intake-panel-body{padding:20px 18px}.intake-form-grid{grid-template-columns:1fr 1fr;gap:16px 18px;display:grid}.intake-field{color:#778296;letter-spacing:1px;text-transform:uppercase;border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;font:500 9px JetBrains Mono;display:flex}.intake-field.full{grid-column:1/-1}.intake-field legend{margin-bottom:6px;padding:0}.intake-field input,.intake-field select,.intake-field textarea{box-sizing:border-box;color:#273244;background:#f9fafb;border:1px solid #d3d9e2;border-radius:6px;outline:0;width:100%;min-height:38px;padding:9px 11px;font:400 12px Inter}.intake-field input:focus,.intake-field select:focus,.intake-field textarea:focus{background:#fff;border-color:#c9a000}.intake-field input:disabled{opacity:.6}.intake-field textarea{resize:vertical;min-height:82px}.radio-group{flex-wrap:wrap;gap:6px;display:flex}.radio-choice{color:#5a6678;cursor:pointer;background:#f9fafb;border:1px solid #d3d9e2;border-radius:6px;padding:8px 14px;font:400 12px Inter}.radio-choice:hover{border-color:#aeb8c6}.radio-choice.active{background:var(--yellow);color:#111;border-color:var(--yellow);font-weight:600}.attach-zone{cursor:pointer;color:#a47b00;text-transform:none;letter-spacing:0;background:#f9fafb;border:1.5px dashed #bcc5d1;border-radius:8px;align-items:center;gap:12px;padding:15px;display:flex}.attach-zone:hover{background:#fffdf0;border-color:#c9a000}.attach-zone input{display:none}.attach-zone span{flex-direction:column;gap:4px;display:flex}.attach-zone strong{color:#364154;font:600 11px Inter}.attach-zone small{color:#7b8698;font:400 10px Inter}.attachment-list{flex-direction:column;gap:5px;margin-top:8px;display:flex}.attachment-list span{color:#566276;text-transform:none;letter-spacing:0;background:#f5f7f9;border:1px solid #e1e5ea;border-radius:4px;padding:7px 9px;font:400 10px Inter}.template-preview{border-top:1px solid #e0e4e9;margin-top:24px;padding-top:20px}.template-preview-head{color:#778296;letter-spacing:.5px;justify-content:space-between;align-items:center;margin-bottom:14px;font:500 9px JetBrains Mono;display:flex}.template-preview-head strong{color:#c59a00}.template-preview-head small{color:#8d97a6}.template-kpis{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px;display:grid}.template-kpi{background:#f9fafb;border:1px solid #dfe4e9;border-radius:6px;padding:11px}.template-kpi.highlight{border-color:var(--yellow)}.template-kpi span,.template-kpi small{color:#7a8596;letter-spacing:.5px;text-transform:uppercase;font:500 8px JetBrains Mono;display:block}.template-kpi.highlight span,.template-kpi.highlight strong{color:#a27b00}.template-kpi strong{color:#293548;margin:5px 0;font:700 22px Bebas Neue;display:block}.template-kpi strong span{color:#748095;text-transform:none;font:400 13px Inter;display:inline}.template-kpi small{text-transform:none;letter-spacing:0;font-size:8px}.breakdown-label{margin-bottom:9px;display:block}.template-total{border:1px solid var(--yellow);color:#4f5b6e;letter-spacing:.3px;background:#f9fafb;border-radius:6px;justify-content:space-between;align-items:center;margin-top:13px;padding:10px 14px;font:500 10px JetBrains Mono;display:flex}.template-total strong{color:#a27b00;letter-spacing:1px;font:400 25px Bebas Neue}.intake-panel footer{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.intake-panel footer button{background:#fff;border:1px solid #d3d9e1;border-radius:5px;min-height:36px;padding:0 14px;font-size:10px}.intake-panel footer .primary-action{background:var(--yellow);border-color:var(--yellow)}@media (width<=820px){.template-kpis{grid-template-columns:repeat(2,1fr)}.milestone-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.intake-form-grid{grid-template-columns:1fr}.intake-field.full{grid-column:auto}.intake-panel-head{flex-direction:column;align-items:flex-start;gap:10px}}.templates-page .workspace-heading{margin-bottom:18px}.labor-rates-panel{background:#fff;border:1px solid #dce1e7;border-radius:7px;margin-bottom:16px;overflow:hidden}.labor-rates-head{border-bottom:1px solid #e1e5ea;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.labor-rates-head h2{text-transform:uppercase;margin:0;font:700 18px Bebas Neue}.labor-rates-head span{color:#8a94a4;letter-spacing:1px;text-transform:uppercase;font:500 8px JetBrains Mono}.labor-rate-grid{grid-template-columns:repeat(5,1fr);display:grid}.labor-rate-grid label{border-bottom:1px solid #e1e5ea;border-right:1px solid #e1e5ea;align-items:center;gap:8px;min-height:58px;padding:8px 12px;display:flex}.labor-rate-grid label>span{color:#273244;white-space:nowrap;flex-direction:column;flex:auto;min-width:0;font-size:11px;font-weight:600;display:flex;overflow:hidden}.labor-rate-grid label>span small{color:#8691a2;letter-spacing:1px;margin-bottom:3px;font:500 8px JetBrains Mono}.labor-rate-grid label>div{color:#087c60;background:#f5f7f9;border:1px solid #d9dfe7;border-radius:4px;flex:none;align-items:center;min-width:105px;height:28px;display:flex}.labor-rate-grid label>div b{padding-left:8px;font-size:11px}.labor-rate-grid label input{color:#087c60;background:0 0;border:0;outline:0;width:52px;padding:4px;font:600 13px JetBrains Mono}.labor-rate-grid label input.role-label-input{color:#273244;text-overflow:ellipsis;width:100%;min-width:0;padding:0;font:600 11px Inter}.labor-rate-grid label em{color:#8b95a5;font:500 9px JetBrains Mono}.labor-rate-grid label>button{color:#aeb7c4;background:#fff;border:1px solid #d9dfe7;border-radius:3px;flex:none;place-items:center;width:18px;height:22px;padding:0;display:grid}.add-shop-role{color:#8a94a4;letter-spacing:.5px;text-transform:uppercase;background:#fff;border:1px dashed #bfc8d4;border-radius:4px;place-self:center start;margin:9px 12px;padding:7px 12px;font:500 9px JetBrains Mono}.template-info-banner{color:#1e59c7;background:#edf5ff;border:1px solid #a9c9ff;border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.template-info-banner svg{flex:none;margin-top:1px}.template-info-banner p{margin:0;font-size:10px;line-height:1.55}.template-info-banner strong{color:#163b8e}.templates-page .template-list{gap:10px}.template-card{background:#fff;border:1px solid #dce1e7;border-radius:7px;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex;overflow:hidden}.template-card-content{flex:1;min-width:0}.template-card-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.template-card-head h2{text-transform:uppercase;letter-spacing:.4px;margin:0;font:700 18px Bebas Neue}.template-version{color:#9aa4b2;background:#f2f4f7;border-radius:3px;padding:4px 6px;font:500 8px JetBrains Mono}.template-class{color:#155acb;text-transform:uppercase;background:#eaf2ff;border:1px solid #a7c7ff;border-radius:3px;padding:4px 7px;font:600 8px JetBrains Mono}.template-description{color:#59667a;max-width:1100px;margin:7px 0 9px;font-size:10px;line-height:1.45}.template-stat-row{color:#6d798c;flex-wrap:wrap;align-items:center;gap:18px;font:500 9px JetBrains Mono;display:flex}.template-stat-row strong,.template-stat-row b{color:#263347}.template-stat-row b{color:#c49700}.template-actions{flex:none;gap:7px;display:flex}.template-actions button{color:#465367;text-transform:uppercase;background:#fff;border:1px solid #cdd5df;border-radius:4px;align-items:center;gap:5px;padding:7px 10px;font:600 9px JetBrains Mono;display:flex}.template-actions button:hover{background:#fffaf0;border-color:#b08a00}.template-actions button.danger{color:#c52c2c}@media (width<=1150px){.labor-rate-grid{grid-template-columns:repeat(3,1fr)}.template-card{flex-direction:column;align-items:flex-start}.template-actions{width:100%}}@media (width<=560px){.labor-rates-head{flex-direction:column;align-items:flex-start;gap:8px}.labor-rate-grid{grid-template-columns:1fr}.template-stat-row{gap:9px}}.template-editor-page .workspace-heading{align-items:center}.secondary-action{color:#4d5a6d;background:#fff;border:1px solid #d3d9e1;border-radius:5px;min-height:34px;margin-right:7px;padding:0 13px;font-size:10px;font-weight:600}.template-meta-grid{background:#fff;border:1px solid #dce1e7;border-radius:7px;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:12px;padding:16px;display:grid}.template-meta-grid label{color:#778296;text-transform:uppercase;flex-direction:column;gap:6px;font:500 8px JetBrains Mono;display:flex}.template-meta-grid label.full{grid-column:1/-1}.template-meta-grid input,.template-meta-grid select,.template-tester input,.editor-task input,.editor-task select,.editor-input input,.editor-input select{color:#273244;background:#fff;border:1px solid #d3d9e2;border-radius:4px;min-height:32px;padding:6px 8px;font:400 10px Inter}.template-meta-grid input:disabled{color:#8b95a4;background:#f1f3f6}.template-editor-kpis{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;display:grid}.template-editor-kpis>div{border:1px solid #dce1e7;border-top:3px solid var(--yellow);background:#fff;padding:13px}.template-editor-kpis>div.accent{border-color:var(--yellow)}.template-editor-kpis span,.template-editor-kpis em{color:#778296;text-transform:uppercase;font:500 8px JetBrains Mono;display:block}.template-editor-kpis strong{color:#293548;margin:5px 0;font:700 25px Bebas Neue;display:block}.template-editor-kpis strong small{color:#778296;font:400 12px Inter;display:inline}.template-editor-kpis em{text-transform:none;font-size:8px}.template-tester{color:#66591f;background:#fff8da;border:1px solid #ecd467;border-radius:6px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;font-size:10px;display:flex}.template-tester b{text-transform:uppercase;font:600 9px JetBrains Mono}.template-tester span{color:#756b43;margin-left:auto}.editor-section-heading h2{text-transform:uppercase;margin:0;font:700 20px Bebas Neue}.editor-section-heading p{color:#7a8596;margin:4px 0 12px;font-size:9px}.editor-section-heading{justify-content:space-between;align-items:center;margin:14px 0 9px;display:flex}.add-editor{color:#5a687b;text-transform:uppercase;background:#fff;border:1px solid #cbd4df;border-radius:4px;padding:6px 9px;font:600 8px JetBrains Mono}.add-editor:hover{background:#fffaf0;border-color:#bd9700}.delete-editor{color:#b9c1cc;background:0 0;border:0;padding:4px}.delete-editor:hover{color:#c52c2c}.editor-milestone{background:#fff;border:1px solid #dce1e7;border-radius:7px;margin-bottom:10px;overflow:hidden}.editor-milestone>header{background:#f7f8fa;border-bottom:1px solid #e1e5ea;grid-template-columns:30px 1fr auto auto 26px;align-items:center;gap:9px;padding:9px 12px;display:grid}.editor-milestone>header>b{background:var(--yellow);color:#111;place-items:center;width:23px;height:23px;font:700 10px JetBrains Mono;display:grid}.editor-milestone>header input{color:#273244;background:0 0;border:0;outline:0;font:600 13px Inter}.editor-milestone>header>span{color:#7c8798;font:500 8px JetBrains Mono}.task-head,.editor-task{grid-template-columns:35px minmax(180px,1fr) 72px 72px 160px 100px 26px;align-items:center;gap:8px;padding:7px 12px;display:grid}.task-head{color:#7c8798;text-transform:uppercase;background:#f5f7f9;font:600 8px JetBrains Mono}.editor-task{border-bottom:1px solid #edf0f3}.editor-task>b{color:#a47d00;font:600 9px JetBrains Mono}.editor-task>strong{color:#ad8200;font:600 10px JetBrains Mono}.task-inputs{background:#fbfcfd;border-top:1px dashed #dce1e7;grid-column:2/-1;padding:8px 0 2px 10px}.task-inputs>.add-editor{margin-bottom:5px}.editor-input{grid-template-columns:minmax(130px,1.5fr) minmax(115px,1fr) 55px 80px minmax(100px,1fr) 60px 24px;align-items:center;gap:6px;margin:5px 0;display:grid}.standalone-inputs{background:#fff;border:1px solid #dce1e7;border-radius:7px;padding:10px 12px}.standalone-inputs .editor-input{margin:0 0 6px}.standalone-inputs .editor-input:last-child{margin-bottom:0}.template-version-table{border-collapse:collapse;width:100%;margin:0 0 4px}.template-version-table th{color:#788397;text-align:left;letter-spacing:.5px;text-transform:uppercase;background:#f5f7f9;border-bottom:1px solid #dde2e8;padding:7px 10px;font:600 8px JetBrains Mono}.template-version-table td{color:#3e4a5e;border-bottom:1px solid #edf0f3;padding:7px 10px;font-size:10px}.template-version-table tbody tr:last-child td{border-bottom:0}.template-version-inputs{background:#fbfcfd;margin:4px 0 8px}.template-version-inputs th,.template-version-inputs td{padding:5px 8px}@media (width<=1150px){.template-meta-grid,.template-editor-kpis{grid-template-columns:repeat(2,1fr)}.task-head,.editor-task{min-width:820px}.editor-milestone{overflow:auto}}@media (width<=560px){.template-meta-grid,.template-editor-kpis{grid-template-columns:1fr}.template-meta-grid label.full{grid-column:auto}.template-tester{flex-direction:column;align-items:flex-start}.template-tester span{margin-left:0}.editor-milestone>header{min-width:760px}.editor-section-heading{flex-direction:column;align-items:flex-start;gap:8px}}.main-area{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-page{flex:1;min-height:0;overflow:auto}.dashboard-content{flex:1;min-height:0;overflow:hidden auto}.api-error-notice{background:#fff0ef;border:1px solid #f3b7b3;border-radius:7px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.api-error-notice>svg{color:#d43535;flex:none;margin-top:2px}.api-error-notice-body p{color:#6b1f1f;margin:0;font-size:11px;line-height:1.55}.api-error-trace{color:#8a3e3e;flex-wrap:wrap;align-items:center;gap:8px;font:500 9px JetBrains Mono;display:flex;margin-top:7px!important}.api-error-trace code{color:#5c1f1f;background:#fff;border:1px solid #f0c6c3;border-radius:4px;padding:3px 6px}.api-error-trace button{color:#a33131;background:#fff;border:1px solid #f0c6c3;border-radius:4px;padding:3px 8px;font:600 8px JetBrains Mono}.api-error-trace button:hover{background:#ffecec}@media (width<=1150px){.floor-grid,.finance-kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=820px){.workspace-page{padding:18px 14px}.filter-bar{flex-wrap:wrap}.filter-bar label{width:100%}.filter-bar select{margin-left:0}.floor-grid{grid-template-columns:1fr}.audit-list article{grid-template-columns:65px 100px 1fr}}@media (width<=560px){.workspace-heading{align-items:flex-start}.workspace-heading h1{font-size:30px}.finance-kpis{grid-template-columns:1fr 1fr}.audit-list article{grid-template-columns:1fr;gap:5px}.audit-list>article>b{justify-self:start}.detail-grid{grid-template-columns:1fr}.detail-grid .wide{grid-column:auto}.drawer-finance{grid-template-columns:1fr 1fr}}.pipe-view-toggle{border:1px solid #d7dce4;border-radius:5px;margin-left:auto;margin-right:6px;display:flex;overflow:hidden}.pipe-view-toggle button{color:#596577;letter-spacing:.4px;background:#fff;border:0;height:29px;padding:0 10px;font:600 9px JetBrains Mono}.pipe-view-toggle button.selected{color:#fff;background:#202632}.export-csv-btn{color:#596577;letter-spacing:.4px;background:#fff;border:1px solid #dbe0e7;border-radius:4px;height:29px;padding:0 10px;font:600 9px JetBrains Mono}.export-csv-btn:hover{background:#fffaf0;border-color:#b08a00}.col-hdr{position:relative}.hdr-inner{align-items:center;gap:6px;display:flex}.hdr-sort,.hdr-filter{color:#9aa4b2;cursor:pointer;background:0 0;border:0;padding:2px 3px;font-size:10px;line-height:1}.hdr-sort.on,.hdr-filter.on{color:#b8860a}.hdr-filter-wrap{display:inline-block;position:relative}.col-filter-menu{z-index:50;text-transform:none;background:#fff;border:1px solid #d9dee6;border-radius:6px;width:220px;max-height:280px;padding:8px;font-weight:400;position:absolute;top:100%;left:0;overflow:auto;box-shadow:0 16px 38px #0d131d2e}.col-filter-menu-head{color:#7c8798;letter-spacing:1px;border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;margin-bottom:6px;padding:4px 4px 8px;font:600 8px JetBrains Mono;display:flex}.col-filter-menu-head button{color:#b8860a;background:0 0;border:0;font:600 8px JetBrains Mono}.col-filter-item{color:#354053;align-items:center;gap:7px;padding:4px;font-size:10px;display:flex}.col-filter-item strong{font-size:10px}.class-pill{text-transform:uppercase;border-radius:4px;padding:4px 7px;font:600 8px JetBrains Mono;display:inline-block}.class-pill.newbuild{color:#155acb;background:#eaf2ff}.class-pill.refurb{color:#a2600f;background:#fff0df}.pipeline-table td small{display:block}.story-cell{color:#3e4a5e;font-size:10px;line-height:1.4}.avatars{gap:-4px;display:inline-flex}.avatar-mini{color:#fff;background:#465064;border:1.5px solid #fff;border-radius:50%;place-items:center;width:22px;height:22px;margin-left:-6px;font:700 8px JetBrains Mono;display:grid}.avatar-mini:first-child{margin-left:0}.row-atrisk{background:#fff8f4;border-left:3px solid #ef6b4a}.row-delayed{background:#fff2f2;border-left:3px solid #e94141}.empty-state button{margin-top:10px}@media (width<=1150px){.pipeline-table{min-width:1080px}}.template-status-toast{color:#0a7a49;background:#e1f6ea;border:1px solid #a9dcc0;border-radius:6px;margin-bottom:12px;padding:8px 12px;font:600 10px JetBrains Mono}.dialog-error{color:#c52c2c;margin:-6px 0 8px;font-size:10px}.calc-badge{background:var(--yellow);color:#111;letter-spacing:.5px;vertical-align:middle;border-radius:3px;margin-left:8px;padding:2px 6px;font:700 8px JetBrains Mono;display:inline-block}.role-label-input{color:#273244;background:0 0;border:0;width:100%;padding:0;font:600 11px Inter}.task-inputs-head{color:#7a8596;text-transform:uppercase;letter-spacing:.6px;margin:4px 0;font:600 8px JetBrains Mono}.input-head{background:0 0!important;padding:0 0 4px!important}.empty-inline{color:#8791a1;padding:8px 0;font-size:10px}.mini-dialog form label{flex-direction:column;gap:6px;display:flex}.shop-floor-page.is-fullscreen{background:var(--canvas);padding:24px;overflow:auto}.shop-floor-page .sf-sub{letter-spacing:1.5px;text-transform:uppercase;font:500 10px JetBrains Mono}.sf-ghost-btn{letter-spacing:1px;text-transform:uppercase;min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #8a94a6;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font:600 10px JetBrains Mono;display:inline-flex}.sf-ghost-btn:hover{border-color:#aab3c0}.sf-card{text-align:left;width:100%;font:inherit;color:inherit;border:1px solid #dce1e7;border-top:3px solid var(--yellow);background:#fff;border-radius:8px;padding:18px;display:block}.sf-card.at-risk{border-top-color:#f97316}.sf-card.delayed{border-top-color:#e44242}.sf-card.editable{cursor:pointer;transition:transform .1s,box-shadow .12s}.sf-card.editable:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f172a14}.sf-card:focus-visible{outline:3px solid var(--yellow-2);outline-offset:2px}.sf-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sf-id{letter-spacing:1.5px;font:800 30px/1 Bebas Neue}.sf-type{letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-top:4px;font:500 10px JetBrains Mono}.sf-pills{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.sf-stages{gap:4px;margin:16px 0 14px;display:flex}.sf-stages span{background:#e9edf1;border-radius:2px;flex:1;height:6px;position:relative;overflow:hidden}.sf-stages span.done{background:#4ade80}.sf-stages span.wip{background:var(--yellow)}.sf-stages span.wip:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:1.8s infinite sf-shimmer;position:absolute;inset:0}@keyframes sf-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.sf-stages span.wip:after{animation:none}.sf-card.editable:hover{transform:none}}.sf-info{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sf-info>div{flex-direction:column;gap:3px;display:flex}.sf-lbl{letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;font:500 9px JetBrains Mono}.sf-val{color:var(--ink);font-size:13px}.sf-val.danger{color:#c82a2a}.sf-chassis{border-top:1px dashed var(--line);grid-column:1/-1;margin-top:4px;padding-top:8px}.sf-chassis span:last-child{font:500 11px/1.35 JetBrains Mono}.sf-chassis .good{color:#12834c}.sf-chassis .warn{color:#ba4a13}.sf-team{grid-column:1/-1}.sf-team .avatars{margin-top:3px}.sf-team em{color:var(--muted);font-size:11px}.sf-backdrop{z-index:90;background:#0b0f168c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.sf-sheet{background:#fff;border-radius:12px;width:min(720px,94vw);max-height:92vh;overflow:auto;box-shadow:0 24px 60px #0000004d}.sf-sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 14px;display:flex}.sf-sheet-head h2{letter-spacing:1.5px;margin:0;font:800 28px/1 Bebas Neue}.sf-sheet-status{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.sf-sheet-status>span:last-child{color:var(--ink-2);font:500 11px JetBrains Mono}.sf-close{min-width:44px;min-height:44px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:24px;line-height:1}.sf-close:hover{background:#f1f3f6}.sf-readonly{color:#8f3608;letter-spacing:.5px;text-transform:uppercase;background:#fff0df;border-radius:5px;align-items:center;gap:8px;margin:0 18px 12px;padding:9px 12px;font:600 10px JetBrains Mono;display:flex}.sf-milestone{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f6f7f9;padding:14px 18px 10px}.sf-milestone-title{align-items:center;gap:10px;display:flex}.sf-milestone-title>b{background:var(--yellow);border-radius:4px;place-items:center;width:28px;height:28px;font:700 13px JetBrains Mono;display:grid}.sf-milestone-title>strong{flex:1;font-size:15px}.sf-mnav{align-items:center;gap:6px;display:flex}.sf-mnav span{text-align:center;min-width:40px;color:var(--ink-2);font:500 11px JetBrains Mono}.sf-mnav button{cursor:pointer;background:#fff;border:1px solid #8a94a6;border-radius:5px;width:44px;height:44px;font-size:18px;line-height:1}.sf-mnav button:disabled{opacity:.4;cursor:not-allowed}.sf-mbar{background:#e3e7ec;border-radius:3px;height:6px;margin:12px 0 7px;overflow:hidden}.sf-mbar i{background:var(--yellow);height:100%;transition:width .2s;display:block}.sf-mmeta{letter-spacing:.5px;color:var(--muted);text-transform:uppercase;justify-content:space-between;font:500 10px JetBrains Mono;display:flex}.sf-tasks{padding:0 10px}.sf-task{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(0,1fr) 56px auto;align-items:center;gap:14px;padding:10px 8px;display:grid}.sf-task:last-child{border-bottom:0}.sf-task-name{font-size:13px;line-height:1.3}.sf-task-name span{color:var(--muted);margin-right:6px;font:500 10px JetBrains Mono}.sf-task-pct{text-align:right;font:800 20px Bebas Neue}.sf-task-pct.done{color:#16a05d}.sf-presets{gap:4px;display:flex}.sf-presets button{min-width:44px;height:44px;color:var(--ink-2);cursor:pointer;background:#f5f7f9;border:1px solid #8a94a6;border-radius:5px;font:600 11px JetBrains Mono}.sf-presets button:hover:not(:disabled){border-color:#aab3c0}.sf-presets button.active{background:var(--yellow);border-color:var(--yellow-2);color:var(--ink)}.sf-presets button.active.full{color:var(--ink);background:#4ade80;border-color:#16a05d}.sf-presets button:disabled{cursor:not-allowed;opacity:.6}.sf-actions{border-top:1px solid var(--line);background:#fff;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex;position:sticky;bottom:0}.sf-spacer{flex:1}.sf-primary{border:1px solid var(--yellow-2);background:var(--yellow);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;border-radius:5px;min-width:44px;min-height:44px;padding:9px 14px;font:700 11px Inter}.sf-primary:disabled{opacity:.5;cursor:not-allowed}@media (width<=520px){.sf-task{grid-template-columns:1fr 48px}.sf-presets{grid-column:1/-1}.sf-presets button{flex:1;height:44px}}.refurb-estimator{border:2px solid var(--yellow);background:#fff;border-radius:7px;margin-bottom:22px;overflow:hidden}.refurb-head{background:#fffbea;border-bottom:1px solid #f0e3a6;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.refurb-head h2{color:#1d2533;letter-spacing:.5px;text-transform:uppercase;align-items:center;margin:0;font:700 20px Bebas Neue;display:flex}.refurb-head .calc-badge{margin:0 10px 0 0;padding:3px 8px;font-size:9px}.refurb-head>span{color:#8a94a4;letter-spacing:1px;text-transform:uppercase;font:500 9px JetBrains Mono}.refurb-body{padding:16px 18px}.refurb-hint{color:#5d6a7d;letter-spacing:1px;text-transform:uppercase;margin:0 0 10px;font:500 9px JetBrains Mono}.refurb-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 12px;margin-bottom:14px;display:grid}.refurb-role{background:#fff;border:1px solid #dce1e7;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.refurb-role>div:first-child{min-width:0}.refurb-role>div:first-child span{color:#1d2533;font-size:12px;font-weight:500;display:block}.refurb-role small{color:#8a94a4;font:500 9px JetBrains Mono;display:block}.refurb-role>div:last-child{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.refurb-role label{align-items:center;gap:4px;display:flex}.refurb-role input{color:#1d2533;text-align:right;border:1px solid #d3d9e2;border-radius:4px;width:52px;min-height:26px;padding:2px 4px;font:600 13px JetBrains Mono}.refurb-role em,.refurb-inputs-row em{color:#8a94a4;font:400 10px JetBrains Mono}.refurb-role small.has-cost{color:#23804a;font-size:10px}.refurb-role>div:last-child small{font-size:10px}.refurb-inputs-row{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;display:grid}.refurb-inputs-row label{border:1px solid #dce1e7;border-radius:5px;flex-direction:column;gap:4px;padding:10px 14px;display:flex}.refurb-inputs-row label>span{color:#8a94a4;letter-spacing:1px;text-transform:uppercase;font:500 9px JetBrains Mono}.refurb-inputs-row label>div{align-items:center;gap:4px;display:flex}.refurb-inputs-row em{font-size:14px}.refurb-inputs-row input{color:#1d2533;border:1px solid #d3d9e2;border-radius:4px;flex:1;max-width:240px;min-height:28px;padding:2px 6px;font:600 16px JetBrains Mono}.refurb-totals{background:#f5f7f9;border-radius:6px;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px;display:grid}.refurb-totals span,.refurb-totals small{color:#8a94a4;letter-spacing:1px;text-transform:uppercase;font:500 9px JetBrains Mono;display:block}.refurb-totals small{letter-spacing:0;text-transform:none;margin-top:2px}.refurb-totals strong{color:#1d2533;letter-spacing:.5px;margin-top:4px;font:700 28px/1 Bebas Neue;display:block}.refurb-totals .accent{border-left:2px solid var(--yellow);padding-left:12px}.refurb-totals .accent span{color:#ae8400}.refurb-totals .accent strong{color:#23804a;font-size:32px}@media (width<=760px){.refurb-inputs-row,.refurb-totals{grid-template-columns:1fr 1fr}.refurb-head{flex-direction:column;align-items:flex-start}}@media (width<=480px){.refurb-inputs-row,.refurb-totals{grid-template-columns:1fr}.refurb-totals .accent{border-left:0;border-top:2px solid var(--yellow);padding-top:8px;padding-left:0}}:root{--p-ink-0:#12151c;--p-ink-1:#4a5468;--p-ink-2:#7c869c;--p-ink-3:#a7aec0;--p-bg-1:#fff;--p-bg-2:#f4f6f9;--p-bg-3:#e8ebf1;--p-line:#e1e4eb;--p-line-2:#c7ccd8;--p-hi:#ffd60a;--p-hi-2:#ffb700;--p-ok:#22c55e;--p-warn:#f97316;--p-risk:#ef4444;--p-info:#3b82f6;--p-ok-tx:#15803d;--p-warn-tx:#c2410c;--p-risk-tx:#b91c1c;--p-info-tx:#1d4ed8}.workspace-page{color:var(--p-ink-0);font-size:13px;line-height:1.4}.workspace-heading{margin-bottom:22px}.workspace-heading h1{letter-spacing:2px;margin:0;font:400 38px/1 Bebas Neue,sans-serif}.workspace-heading p{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;margin-top:4px;font:400 11px/1.4 JetBrains Mono,monospace}.workspace-table-wrap{border-color:var(--p-line);border-radius:8px}.workspace-table th{background:var(--p-bg-2);border-bottom:1px solid var(--p-line);height:auto;color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;padding:10px 14px;font:500 10px JetBrains Mono,monospace}.workspace-table td{border-bottom:1px solid var(--p-line);height:auto;color:var(--p-ink-0);vertical-align:middle;padding:11px 14px;font-size:12px}.workspace-table tbody tr:hover{background:var(--p-bg-2)}.workspace-table td>small{color:var(--p-ink-2);margin-top:2px;font-size:11px}.workspace-table td:first-child>strong,.pipeline-table td:nth-child(2)>strong{color:var(--p-hi-2);letter-spacing:.5px;font:600 12px JetBrains Mono,monospace}.pipeline-table td:nth-child(2)>small{color:var(--p-ink-2);font:400 10px JetBrains Mono,monospace}.workspace-table td>small.chassis-line{max-width:none;color:var(--p-ink-3);font:400 10px JetBrains Mono,monospace}.story-cell{color:var(--p-ink-1);font-size:12px}.cell-danger{color:var(--p-risk-tx)!important}.cell-good{color:var(--p-ok-tx)}.cell-warn{color:var(--p-warn-tx)}tr.row-atrisk td{background:#f973160f}tr.row-atrisk td:first-child{box-shadow:inset 4px 0 0 var(--p-warn)}tr.row-delayed td{background:#ef444414}tr.row-delayed td:first-child{box-shadow:inset 4px 0 0 var(--p-risk)}tr.row-atrisk:hover td{background:#f973161c}tr.row-delayed:hover td{background:#ef444421}.col-hdr .hdr-sort,.col-hdr .hdr-filter{color:var(--p-ink-3);border-radius:3px}.col-hdr .hdr-sort:hover,.col-hdr .hdr-filter:hover{color:var(--p-ink-0);background:var(--p-bg-3)}.col-hdr .hdr-sort.on{color:var(--p-hi-2);font-weight:700}.col-hdr .hdr-filter.on{color:var(--p-hi-2);background:#ffd60a26}.workspace-status{letter-spacing:1px;text-transform:uppercase;white-space:nowrap;border-radius:12px;padding:3px 10px;font:600 10px JetBrains Mono,monospace}.workspace-status.on-track{color:var(--p-ok-tx);background:#22c55e26}.workspace-status.at-risk{color:var(--p-warn-tx);background:#f9731626}.workspace-status.delayed{color:var(--p-risk-tx);background:#ef444426}.workspace-status.closed{color:var(--p-info-tx);background:#3b82f626}.class-pill{letter-spacing:.8px;white-space:nowrap;border-radius:4px;padding:3px 9px;font:600 10px JetBrains Mono,monospace}.class-pill.newbuild{color:#7e22ce;background:#a855f726;border:1px solid #a855f74d}.class-pill.refurb{color:var(--p-info-tx);background:#3b82f61f;border:1px solid #3b82f64d}.stage-pill{background:var(--p-bg-3);color:var(--p-ink-1);letter-spacing:.5px;border-radius:4px;align-items:center;gap:6px;padding:3px 8px;font:400 11px JetBrains Mono,monospace;display:inline-flex}.stage-pill .stage-number{background:var(--p-hi);color:#000;border-radius:2px;width:auto;height:auto;margin:0;padding:0 5px;font:700 10px JetBrains Mono,monospace}.workspace-table td>.stage-pill+small{margin-top:4px}.inline-progress{gap:8px}.inline-progress i{background:var(--p-bg-3);border-radius:3px;flex:1;width:auto;min-width:80px;max-width:120px;height:5px}.inline-progress i b{background:var(--p-hi);border-radius:3px}.inline-progress span{min-width:32px;color:var(--p-ink-1);font:400 11px JetBrains Mono,monospace}.avatar-mini{border:2px solid #fff;width:24px;height:24px;font:600 10px Inter,sans-serif}.filter-bar{border-color:var(--p-line);border-radius:8px}.filter-bar input{font-size:12px}.filter-bar>span{letter-spacing:1px;text-transform:uppercase;color:var(--p-ink-2);font:500 10px JetBrains Mono,monospace}.filter-bar .pipe-view-toggle{border:0;border-radius:0;gap:6px;overflow:visible}.filter-bar .pipe-view-toggle button{border:1px solid var(--p-line);background:var(--p-bg-2);height:auto;color:var(--p-ink-1);letter-spacing:0;border-radius:6px;padding:8px 14px;font:400 12px Inter,sans-serif}.filter-bar .pipe-view-toggle button:hover{color:var(--p-ink-0);border-color:var(--p-ink-3)}.filter-bar .pipe-view-toggle button.selected{background:var(--p-hi);border-color:var(--p-hi);color:#000;font-weight:600}.filter-bar .export-csv-btn{border:1px solid var(--p-line-2);height:auto;color:var(--p-ink-1);letter-spacing:.3px;text-transform:uppercase;background:0 0;border-radius:5px;padding:5px 10px;font:600 11px Inter,sans-serif}.filter-bar .export-csv-btn:hover{color:var(--p-ink-0);border-color:var(--p-ink-3);background:var(--p-bg-2)}.workspace-heading .primary-action{letter-spacing:.3px;font-size:12px;font-weight:600}.thermo-legend{color:var(--p-ink-2);letter-spacing:1px;flex-wrap:wrap;align-items:center;gap:14px;font:400 10px JetBrains Mono,monospace;display:flex}.thermo-legend span{align-items:center;gap:4px;display:inline-flex}.thermo-legend i{border-radius:2px;width:11px;height:11px;display:inline-block}.thermo-legend i.ontrack{background:var(--p-ok)}.thermo-legend i.atrisk{background:var(--p-warn)}.thermo-legend i.delayed{background:var(--p-risk)}.thermo-legend i.done{background:var(--p-info)}.thermo-view{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px}.thermo-headline{background:var(--p-bg-2);border-bottom:1px solid var(--p-line);z-index:5;border-radius:8px 8px 0 0;grid-template-columns:280px 1fr;align-items:center;gap:22px;padding:8px 20px;display:grid;position:sticky;top:0}.thermo-head-table{border-collapse:collapse;width:auto}.thermo-head-table th{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;text-align:left;white-space:nowrap;background:0 0;border:0;padding:0 14px 0 0;font:500 10px JetBrains Mono,monospace}.thermo-headline .head-right{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;text-align:right;font:400 10px JetBrains Mono,monospace}.thermo-row{border-bottom:1px solid var(--p-line);cursor:pointer;grid-template-columns:280px 1fr;align-items:center;gap:22px;padding:16px 20px;transition:background .1s;display:grid}.thermo-row:last-child{border-bottom:0;border-radius:0 0 8px 8px}.thermo-row:hover{background:var(--p-bg-2)}.thermo-row:focus-visible{outline-offset:-3px;outline:3px solid #1476d4}.thermo-row.row-atrisk{box-shadow:inset 4px 0 0 var(--p-warn);background:#f973160f}.thermo-row.row-delayed{box-shadow:inset 4px 0 0 var(--p-risk);background:#ef444414}.thermo-row.row-atrisk:hover{background:#f973161c}.thermo-row.row-delayed:hover{background:#ef444421}.thermo-info{min-width:0}.thermo-info .workspace-status{margin-bottom:6px}.thermo-id{color:var(--p-hi-2);font:700 14px/1.2 JetBrains Mono,monospace}.thermo-sub{color:var(--p-ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;line-height:1.35;overflow:hidden}.thermo-sub.muted{color:var(--p-ink-3)}.thermo-bar{min-width:0}.thermo-dates{color:var(--p-ink-2);letter-spacing:1px;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;font:400 10px JetBrains Mono,monospace;display:flex}.thermo-dates strong{color:var(--p-ink-0)}.thermo-dates .overall{color:var(--p-ink-0);font-size:12px;font-weight:700}.thermo-dates .late{color:var(--p-risk-tx);font-weight:700}.thermo-tube{border:1.5px solid var(--p-line-2);background:var(--p-bg-2);border-radius:8px;height:34px;display:grid;position:relative;overflow:hidden}.thermo-tube-empty{color:var(--p-ink-3);letter-spacing:1px;text-transform:uppercase;place-items:center;font:400 10px JetBrains Mono,monospace;display:grid}.thermo-seg{border-right:1px solid var(--p-line-2);min-width:2px;height:100%;position:relative}.thermo-seg:last-child{border-right:0}.thermo-fill{transition:width .3s ease-out;position:absolute;top:0;bottom:0;left:0}.thermo-fill.done{background:var(--p-info)}.thermo-fill.ontrack{background:var(--p-ok)}.thermo-fill.atrisk{background:var(--p-warn)}.thermo-fill.delayed{background:var(--p-risk)}.thermo-seg-pct{z-index:2;color:#fff;text-shadow:0 1px 2px #00000059;white-space:nowrap;pointer-events:none;font:700 10px JetBrains Mono,monospace;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.thermo-seg-pct.on-empty{color:var(--p-ink-3);text-shadow:none}.thermo-seg-pct.on-warn{color:#000;text-shadow:none}.thermo-labels{color:var(--p-ink-3);letter-spacing:.5px;margin-top:6px;font:400 9px JetBrains Mono,monospace;display:grid}.thermo-label{text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:0 4px;overflow:hidden}.thermo-label .num{color:var(--p-hi-2);margin-right:3px;font-weight:700}.thermo-label.current{color:var(--p-ink-0)}@media (prefers-reduced-motion:reduce){.thermo-fill{transition:none}}@media (width<=1150px){.thermo-headline,.thermo-row{grid-template-columns:220px 1fr;gap:16px}}@media (width<=820px){.thermo-headline{grid-template-columns:1fr}.thermo-headline .head-right{display:none}.thermo-row{grid-template-columns:1fr;gap:10px;padding:14px 16px}.thermo-dates{flex-wrap:wrap}.thermo-labels{display:none}}@media (width<=560px){.workspace-heading h1{font-size:30px}}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.view-actions{align-items:center;gap:8px;display:flex}.ghost-action{border:1px solid var(--p-line-2);color:var(--p-ink-1);letter-spacing:.3px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:5px;align-items:center;gap:6px;padding:5px 10px;font:600 11px Inter,sans-serif;display:inline-flex}.ghost-action:hover{color:var(--p-ink-0);border-color:var(--p-ink-3);background:var(--p-bg-2)}.ghost-action:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.tg-legend{color:var(--p-ink-2);flex-wrap:wrap;gap:14px;margin:0 0 12px;font:400 11px JetBrains Mono,monospace;display:flex}.tg-legend span{align-items:center;gap:5px;display:inline-flex}.tg-legend i{border-radius:2px;width:10px;height:10px;display:inline-block}.tg-legend i.scheduled{background:var(--p-hi)}.tg-legend i.done{background:var(--p-info)}.tg-legend i.risk{background:var(--p-warn)}.tg-legend i.delayed{background:var(--p-risk)}.tg-legend i.summary{border:1px solid var(--p-hi);background:#000}.tg-note{color:var(--p-warn-tx);letter-spacing:.5px;margin:0 0 12px;font:400 11px JetBrains Mono,monospace}.tg-wrap{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;overflow:hidden}.tg-scroll{max-height:calc(100vh - 240px);overflow:auto}.tg-grid{grid-template-columns:300px 1fr;min-width:1100px;display:grid}.tg-side{z-index:4;background:var(--p-bg-1);border-right:1px solid var(--p-line);position:sticky;left:0}.tg-side-head{z-index:5;background:var(--p-bg-2);border-bottom:1px solid var(--p-line);height:46px;color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;align-items:center;padding:0 14px;font:400 10px JetBrains Mono,monospace;display:flex;position:sticky;top:0}.tg-row{border-bottom:1px solid var(--p-line);align-items:center;gap:8px;height:34px;padding:0 14px;font-size:12px;display:flex}.tg-row .tg-name{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;line-height:1.4;display:-webkit-box;overflow:hidden}.tg-row.group{background:var(--p-bg-2);letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:600}.tg-row.sub{color:var(--p-ink-1);padding-left:30px}.tg-num{background:var(--p-hi);color:#000;border-radius:3px;flex:none;padding:1px 6px;font:700 10px JetBrains Mono,monospace}.tg-dur{color:var(--p-ink-2);flex:none;margin-left:auto;font:400 10px JetBrains Mono,monospace}.tg-time{min-width:0;position:relative}.tg-weeks{z-index:3;background:var(--p-bg-2);border-bottom:1px solid var(--p-line);height:46px;display:grid;position:sticky;top:0}.tg-week{border-right:1px solid var(--p-line);color:var(--p-ink-3);letter-spacing:.5px;justify-content:center;align-items:center;font:400 9px JetBrains Mono,monospace;display:flex}.tg-week.month-start{color:var(--p-ink-0);border-right-color:var(--p-line-2);font-weight:700}.tg-bars{position:relative}.tg-bar-row{border-bottom:1px solid var(--p-line);height:34px;position:relative}.tg-bar-row.group{background:var(--p-bg-2)}.tg-bar{background:var(--p-hi);color:#000;letter-spacing:.3px;white-space:nowrap;border-radius:3px;align-items:center;min-width:6px;height:18px;padding:0 8px;font:600 10px JetBrains Mono,monospace;display:flex;position:absolute;top:8px;overflow:hidden}.tg-bar span{z-index:1;flex:none;position:relative}.tg-bar.done{background:var(--p-info);color:#fff}.tg-bar.risk{background:var(--p-warn);color:#000}.tg-bar.delayed{background:var(--p-risk);color:#fff}.tg-bar.summary{border:1px solid var(--p-hi);height:14px;color:var(--p-hi);clip-path:polygon(0 0,100% 0,100% 60%,calc(100% - 6px) 100%,6px 100%,0 60%);background:#000;border-radius:0;top:10px}.tg-progress{background:#00000040;position:absolute;top:0;bottom:0;left:0}.tg-today{z-index:2;background:var(--p-risk);width:2px;position:absolute;top:0;bottom:0;box-shadow:0 0 8px #ef444480}.tg-today:before{content:"TODAY";color:var(--p-risk-tx);letter-spacing:1px;font:600 9px JetBrains Mono,monospace;position:absolute;top:6px;left:6px}@media (width<=820px){.tg-grid{grid-template-columns:220px 1fr}.workspace-heading .view-actions{flex-wrap:wrap}}button.tg-row{border:0;border-bottom:1px solid var(--p-line);text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;font-size:12px;transition:background .1s,color .1s}button.tg-row:hover{background:var(--p-bg-2);color:var(--p-hi-2)}button.tg-row:focus-visible{outline-offset:-3px;outline:3px solid #1476d4}.tg-bar.clickable{cursor:pointer;transition:filter .12s,transform .12s}.tg-bar.clickable:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px #ffd60a40}.te-close{width:30px;height:30px;color:var(--p-ink-1);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.te-close:hover{background:var(--p-bg-2);color:var(--p-ink-0)}.te-cards{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px;display:grid}.te-cards>div{border:1px solid var(--p-line);border-radius:8px;padding:14px 16px}.te-cards>div>span:first-child{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;font:400 10px JetBrains Mono,monospace;display:block}.te-cards strong{letter-spacing:1px;margin-top:8px;font:400 34px/1 Bebas Neue,sans-serif;display:block}.te-cards strong small{color:var(--p-ink-2);margin-left:3px;font-size:16px}.te-cards strong.ok{color:var(--p-ok-tx)}.te-cards strong.tight{color:var(--p-warn-tx)}.te-cards strong.late{color:var(--p-risk-tx)}.te-cards p{margin:10px 0 4px}.te-cards>div>small{color:var(--p-ink-2);margin-top:6px;font:400 10px JetBrains Mono,monospace;display:block}.te-section-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.te-section-head h3{letter-spacing:1.5px;margin:0;font:400 18px Bebas Neue,sans-serif}.te-section-head span{color:var(--p-ink-3);font:400 10px JetBrains Mono,monospace}.te-error{color:var(--p-risk-tx);background:#ef444414;border:1px solid #ef444459;border-radius:6px;margin-bottom:10px;padding:10px 12px;font-size:12px}.te-table{border:1px solid var(--p-line);border-radius:6px;overflow:hidden}.te-table.saving{opacity:.7}.te-row{border-bottom:1px solid var(--p-line);grid-template-columns:34px minmax(0,1fr) 64px 64px 96px 110px;align-items:center;gap:8px;min-height:38px;padding:4px 12px;font-size:12px;display:grid}.te-row:last-child{border-bottom:0}.te-colhead{background:var(--p-bg-2);min-height:30px;color:var(--p-ink-2);letter-spacing:1.2px;text-transform:uppercase;font:500 9px JetBrains Mono,monospace}.te-row.group{background:var(--p-bg-2);letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:600}.te-row.group .tg-num{margin-right:8px}.te-row.sub{color:var(--p-ink-1)}.te-row.sub.focus{box-shadow:inset 3px 0 0 var(--p-hi);background:#ffd60a1a}.te-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.te-code{color:var(--p-ink-3);margin-right:6px;font:400 11px JetBrains Mono,monospace}.te-date{color:var(--p-ink-2);text-transform:none;letter-spacing:0;font:400 11px JetBrains Mono,monospace}.te-wip{color:var(--p-warn-tx);font:400 11px JetBrains Mono,monospace}.te-check{border:1.5px solid var(--p-line-2);color:#fff;cursor:pointer;background:#fff;border-radius:4px;place-items:center;width:18px;height:18px;padding:0;display:grid}.te-check.wip{border-color:var(--p-warn);background:var(--p-warn)}.te-check.done{border-color:var(--p-ok);background:var(--p-ok)}.te-check:disabled{cursor:default}.te-check:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.te-num-input{align-items:center;gap:4px;display:inline-flex}.te-num-input input{border:1px solid var(--p-line-2);background:var(--p-bg-2);width:58px;height:28px;color:var(--p-ink-0);text-align:right;border-radius:4px;padding:0 6px;font:500 12px JetBrains Mono,monospace}.te-num-input.days input{width:78px}.te-num-input input:focus{border-color:var(--p-hi-2);background:#fff;outline:0;box-shadow:0 0 0 2px #ffb70040}.te-num-input input:disabled{opacity:.6}.te-num-input small{color:var(--p-ink-3);font:400 10px JetBrains Mono,monospace}.te-tips{border:1px solid var(--p-line);background:var(--p-bg-2);color:var(--p-ink-1);border-radius:6px;margin-top:14px;padding:12px;font-size:11px;line-height:1.6}.te-tips strong{color:var(--p-hi-2);text-transform:uppercase}.te-foot{border-top:1px solid var(--p-line);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}@media (width<=700px){.te-cards{grid-template-columns:1fr}.te-row{grid-template-columns:28px minmax(0,1fr) 84px 84px}.te-row>span:nth-child(3),.te-row>span:nth-child(4){display:none}}.workspace-heading p.tg-sub{text-transform:none}.bm-back{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.bm{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:10px;flex-direction:column;width:min(880px,92vw);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 10px 30px #0f172a1a,0 2px 8px #0f172a0f}.bm-head{border-bottom:1px solid var(--p-line);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.bm-title{align-items:center;gap:10px;display:flex}.bm-title h2{letter-spacing:1.5px;margin:0;font:400 28px/1 Bebas Neue,sans-serif}.bm-head p{color:var(--p-ink-2);margin:4px 0 0;font:400 11px JetBrains Mono,monospace}.bm-template-line{margin:4px 0 0}.link-action{color:#1d4ed8;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font:400 11px JetBrains Mono,monospace;text-decoration:underline}.link-action:hover{color:#1449ad}.bm-head-actions{align-items:center;gap:8px;display:flex}.bm-toggle{letter-spacing:.3px;text-transform:uppercase;min-height:30px;padding:0 12px;font-size:11px}.bm-edit-badge{background:var(--p-hi);color:#000;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;padding:3px 7px;font:700 9px JetBrains Mono,monospace;animation:2s infinite bm-pulse}@keyframes bm-pulse{0%,to{opacity:1}50%{opacity:.6}}@media (prefers-reduced-motion:reduce){.bm-edit-badge{animation:none}}.bm-readonly-badge{color:#1d4ed8;letter-spacing:1.5px;text-transform:uppercase;background:#2563eb1f;border-radius:3px;padding:3px 8px;font:700 9px JetBrains Mono,monospace}.bm-body{padding:22px;overflow:auto}.bm .te-cards,.bm-fields{margin-bottom:18px}.bm-field{border-bottom:1px solid var(--p-line);grid-template-columns:140px 1fr;align-items:center;gap:10px;padding:10px 0;display:grid}.bm-field:last-child{border-bottom:0}.bm-label{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;font:400 10px JetBrains Mono,monospace}.bm-field-val{min-width:0;color:var(--p-ink-0);font-size:13px}.bm-input{border:1px solid var(--p-line-2);background:var(--p-bg-2);width:100%;max-width:240px;color:var(--p-ink-0);border-radius:4px;outline:0;padding:4px 8px;font:400 12px Inter,sans-serif;transition:border-color .12s,background .12s}.bm-input[type=date],.bm-input[type=number]{font-family:JetBrains Mono,monospace}.bm-input:focus{border-color:var(--p-hi);background:var(--p-bg-3)}.bm-notes{resize:vertical;max-width:240px;font-size:12px}.bm-notes-text{color:var(--p-ink-1);white-space:pre-wrap;font-size:12px}.bm-good{color:var(--p-ok-tx)}.bm-warn{color:var(--p-warn-tx)}.bm-bad{color:var(--p-risk-tx)}.bm-chassis{border:1px solid var(--p-line);background:var(--p-bg-2);border-radius:6px;margin-bottom:18px;padding:14px 16px}.bm-chassis-grid{grid-template-columns:repeat(4,1fr);gap:12px 20px;display:grid}.bm-chassis-row{border-top:1px solid var(--p-line);margin-top:14px;padding-top:12px}.bm-chassis-money{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.bm-info{min-width:0;color:var(--p-ink-0);flex-direction:column;gap:3px;font-size:13px;display:flex}.bm-mono{font-family:JetBrains Mono,monospace;font-size:12px}.bm-info .bm-good,.bm-info .bm-warn{font-family:JetBrains Mono,monospace}.bm-photos{border:1px solid var(--p-line);background:var(--p-bg-1);border-radius:8px;margin:6px 0 20px;overflow:hidden}.bm-photos-head{border-bottom:1px solid var(--p-line);background:var(--p-bg-2);justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.bm-photos-head h3{letter-spacing:1.5px;align-items:center;gap:10px;margin:0;font:400 18px Bebas Neue,sans-serif;display:flex}.bm-photos-head>span{color:var(--p-ink-3);letter-spacing:1.5px;text-transform:uppercase;font:400 10px JetBrains Mono,monospace}.bm-count{background:var(--p-bg-3);color:var(--p-ink-1);letter-spacing:1px;border-radius:10px;padding:2px 8px;font:400 10px JetBrains Mono,monospace}.bm-uploads-note{border-bottom:1px solid var(--p-line);color:#1d4ed8;background:#2563eb0f;margin:0;padding:10px 18px;font-size:11px}.bm-att-head+.bm-uploads-note{border:1px solid #2563eb33;border-radius:6px}.bm-photos-grid{background:var(--p-line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.bm-photos-col{background:var(--p-bg-1);min-height:200px;padding:14px 14px 16px}.bm-photos-col-head{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:10px;font:400 11px JetBrains Mono,monospace;display:flex}.bm-photos-col-head small{color:var(--p-ink-3);font-size:9px}.bm-phase-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.bm-phase-dot.before{background:#a855f7}.bm-phase-dot.during{background:var(--p-warn)}.bm-phase-dot.after{background:var(--p-ok)}.bm-thumbs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.bm-thumb{aspect-ratio:1;border:1px solid var(--p-line);background:var(--p-bg-2);border-radius:5px;transition:transform .12s,box-shadow .12s;position:relative;overflow:hidden}.bm-thumb:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0f172a26}.bm-thumb-open{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.bm-thumb-open:focus-visible{outline-offset:-3px;outline:3px solid #1476d4}.bm-thumb-open img{object-fit:cover;width:100%;height:100%;display:block}.bm-thumb-ph{width:100%;height:100%;color:var(--p-ink-3);letter-spacing:.5px;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px;font:400 9px/1.3 JetBrains Mono,monospace;display:flex}.bm-thumb-ph svg{opacity:.5}.bm-thumb-meta{color:#fff;opacity:0;text-align:left;background:linear-gradient(#0000,#000000bf);padding:4px 6px;font:400 9px/1.2 JetBrains Mono,monospace;transition:opacity .12s;position:absolute;bottom:0;left:0;right:0}.bm-thumb:hover .bm-thumb-meta,.bm-thumb-open:focus-visible .bm-thumb-meta{opacity:1}.bm-thumb-del{color:#fff;cursor:pointer;background:#ef4444e6;border:0;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;line-height:1;display:none;position:absolute;top:4px;right:4px}.bm-thumb:hover .bm-thumb-del,.bm-thumb-del:focus-visible{display:flex}.bm-photos-empty{color:var(--p-ink-3);text-align:center;letter-spacing:1px;padding:18px 10px;font:400 11px JetBrains Mono,monospace}.bm-photo-upload{border:1.5px dashed var(--p-line-2);width:100%;color:var(--p-ink-2);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:5px;flex-direction:column;align-items:center;gap:4px;margin-top:10px;padding:14px 10px;font:400 10px JetBrains Mono,monospace;transition:background .12s,border-color .12s;display:flex}.bm-photo-upload svg{opacity:.6}.bm-photo-upload:hover,.bm-photo-upload.dragover{border-color:var(--p-hi);color:var(--p-ink-0);background:#ffd60a0f}.bm-tasks.editing .te-row{grid-template-columns:34px minmax(0,1fr) 64px 64px 96px 132px}.bm-tasks .te-name{align-items:center;gap:0;display:flex}.bm-name-input{border:1px solid var(--p-line-2);background:var(--p-bg-2);min-width:0;height:28px;color:var(--p-ink-0);border-radius:4px;flex:1;padding:0 8px;font:400 12px Inter,sans-serif}.bm-name-input:focus{border-color:var(--p-hi-2);background:#fff;outline:0;box-shadow:0 0 0 2px #ffb70040}.bm-days-cell{justify-content:flex-start;align-items:center;gap:6px;display:flex}.bm-del-task{border:1px solid var(--p-line-2);width:22px;height:22px;color:var(--p-ink-2);cursor:pointer;background:0 0;border-radius:4px;place-items:center;padding:0;font:400 14px/1 Inter,sans-serif;transition:all .12s;display:grid}.bm-del-task:hover{border-color:var(--p-risk);color:var(--p-risk-tx);background:#ef444414}.bm-add-row{min-height:44px}.bm-add-row .ghost-action{padding:4px 10px;font-size:10px}.bm-att-head{margin-top:24px}.bm-att-count{color:var(--p-hi-2);margin-left:6px}.bm-att-zone{border:1.5px dashed var(--p-line-2);background:var(--p-bg-2);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:14px;width:100%;padding:18px 16px;transition:all .15s;display:flex}.bm-att-zone:hover,.bm-att-zone.dragover{border-color:var(--p-hi);background:#ffd60a0d}.bm-att-zone:focus-visible,.bm-photo-upload:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.bm-att-icon{background:var(--p-bg-3);height:42px;color:var(--p-hi-2);border-radius:8px;flex:0 0 42px;place-items:center;display:grid}.bm-att-text{flex-direction:column;flex:1;min-width:0;display:flex}.bm-att-text strong{letter-spacing:1px;color:var(--p-ink-0);font:400 16px/1 Bebas Neue,sans-serif}.bm-att-text>span{color:var(--p-ink-2);margin-top:5px;font-size:11px;line-height:1.5}.bm-att-text b{color:var(--p-ink-1);font-weight:500}.bm-att-chips{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.bm-att-chips span{border:1px solid var(--p-line);background:var(--p-bg-3);color:var(--p-ink-2);letter-spacing:.5px;border-radius:10px;padding:2px 7px;font:400 9px JetBrains Mono,monospace}.bm-att-btn{border:1px solid var(--p-line-2);background:var(--p-bg-3);color:var(--p-ink-0);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;border-radius:5px;flex:none;padding:8px 14px;font:600 11px Inter,sans-serif}.bm-att-list{flex-direction:column;gap:6px;margin-top:12px;display:flex}.bm-att-item{border:1px solid var(--p-line);background:var(--p-bg-2);border-radius:6px;grid-template-columns:36px 1fr auto auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.bm-att-item:hover{border-color:var(--p-line-2)}.bm-att-thumb{background:var(--p-bg-3);width:36px;height:36px;color:var(--p-ink-2);letter-spacing:.5px;border-radius:5px;place-items:center;font:700 9px JetBrains Mono,monospace;display:grid;overflow:hidden}.bm-att-thumb img{object-fit:cover;width:100%;height:100%}.bm-att-info{min-width:0}.bm-att-name{color:var(--p-ink-0);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;display:block;overflow:hidden}.bm-att-meta{color:var(--p-ink-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;font:400 10px JetBrains Mono,monospace;display:flex}.bm-att-cat{background:var(--p-bg-3);color:var(--p-ink-1);letter-spacing:.5px;text-transform:uppercase;border-radius:3px;padding:1px 6px;font-size:9px;font-weight:600}.bm-att-cat.spec{color:#1d4ed8;background:#3b82f626}.bm-att-cat.po{color:#15803d;background:#22c55e26}.bm-att-cat.photo{color:#7e22ce;background:#a855f726}.bm-att-cat.inspection{color:#8a6d00;background:#ffd60a33}.bm-att-cat.delivery{color:#c2410c;background:#f9731626}.bm-att-cat.field{color:#b91c1c;background:#ef444426}.bm-att-cat-pick{border:1px solid var(--p-line);background:var(--p-bg-3);color:var(--p-ink-1);border-radius:4px;padding:4px 6px;font:400 10px JetBrains Mono,monospace}.bm-att-download{border:1px solid var(--p-line-2);background:var(--p-bg-3);color:var(--p-ink-0);letter-spacing:.5px;text-transform:uppercase;border-radius:5px;padding:5px 10px;font:600 10px Inter,sans-serif;text-decoration:none}.bm-att-download:hover{border-color:var(--p-hi);color:var(--p-hi-2)}.bm-att-download.disabled{opacity:.45;cursor:not-allowed}.bm-att-del{border:1px solid var(--p-line);width:24px;height:24px;color:var(--p-ink-2);cursor:pointer;background:0 0;border-radius:4px;place-items:center;padding:0;font-size:14px;display:grid}.bm-att-del:hover{border-color:var(--p-risk);color:var(--p-risk-tx)}.bm-att-empty{color:var(--p-ink-3);text-align:center;text-transform:uppercase;margin:8px 0 0;padding:14px;font:400 11px JetBrains Mono,monospace}.bm .te-foot .primary-action{text-transform:uppercase;min-height:30px;padding:0 14px;font-size:11px}.bm-lightbox{z-index:70;background:#000000d9;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:40px;display:flex;position:fixed;inset:0}.bm-lightbox img{border-radius:6px;max-width:90vw;max-height:75vh}.bm-lightbox p{color:#fff;align-items:center;gap:10px;margin:0;font:400 12px JetBrains Mono,monospace;display:flex}.bm-lightbox-ph{color:#d1d5db;background:#ffffff14;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:40px 60px;font:400 13px JetBrains Mono,monospace;display:flex}.bm-lightbox-ph small{color:#9ca3af;font-size:11px}.bm-lightbox-close{color:#fff;cursor:pointer;background:#ffffff26;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:18px;right:18px}.bm-lightbox-close:hover{background:#ffffff40}@media (width<=760px){.bm-chassis-grid{grid-template-columns:repeat(2,1fr)}.bm-photos-grid,.bm-field{grid-template-columns:1fr}.bm-att-zone{flex-direction:column;align-items:flex-start}}.equipment-combobox{width:100%;position:relative}.equipment-combobox>input{box-sizing:border-box;width:100%}.equipment-combobox-listbox,.equipment-combobox-listbox li{text-transform:none;letter-spacing:normal;font-family:Inter,sans-serif}.equipment-combobox-listbox{z-index:30;background:#fff;border:1px solid #d3d9e2;border-radius:6px;max-height:260px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 32px #0f141e29}.equipment-combobox-listbox[hidden]{display:none}.equipment-combobox-listbox li{color:#273244;cursor:pointer;border-radius:4px;padding:8px 10px;font-size:12px}.equipment-combobox-listbox li:hover,.equipment-combobox-listbox li.highlighted{background:#fff3cc}.equipment-combobox-listbox li.equipment-combobox-add{color:#8a6d00;border-top:1px dashed #d3d9e2;margin-top:4px;font-weight:600}.equipment-combobox-listbox li.equipment-combobox-empty{color:#8b95a4;cursor:default}.equipment-combobox-listbox li.equipment-combobox-empty:hover{background:0 0}.template-status-toast.error{color:#a21c1c;background:#ffe2e2;border-color:#f3a8a8}.user-access-toolbar{background:#fff;border:1px solid #dce1e8;border-radius:7px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:9px;display:flex}.user-access-toolbar label{min-width:230px;height:34px;color:var(--p-ink-1);text-transform:uppercase;letter-spacing:.5px;background:#f7f8fa;border:1px solid #d7dce4;border-radius:5px;align-items:center;gap:7px;padding:0 9px;font:500 9px JetBrains Mono;display:flex}.user-access-toolbar input[type=search]{color:#273244;text-transform:none;letter-spacing:0;background:0 0;border:0;outline:0;width:100%;font:400 11px Inter}.user-access-status-filters{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.user-access-status-filters button{color:#596577;text-transform:uppercase;background:#fff;border:1px solid #dbe0e7;border-radius:5px;min-height:30px;padding:0 11px;font:600 9px JetBrains Mono}.user-access-status-filters button.selected{color:#fff;background:#202632;border-color:#202632}.user-access-table-wrap{background:#fff;border:1px solid #dce1e7;border-radius:7px;overflow:auto}.user-access-table{border-collapse:collapse;width:100%;min-width:920px}.user-access-table th{color:var(--p-ink-1);text-align:left;letter-spacing:1px;background:#f5f7f9;border-bottom:1px solid #dde2e8;height:36px;padding:0 11px;font:600 8px JetBrains Mono}.user-access-table td{color:#3e4a5e;vertical-align:middle;border-bottom:1px solid #e5e8ed;padding:10px 11px;font-size:11px}.user-access-table tbody tr:last-child td{border-bottom:0}.user-access-table tbody tr:hover{background:#fffaf0}.user-cell{align-items:center;gap:9px;display:flex}.avatar-initials{background:var(--p-bg-3);width:30px;height:30px;color:var(--p-ink-1);letter-spacing:.3px;border-radius:50%;flex:none;place-items:center;font:700 10px JetBrains Mono;display:grid}.you-tag{color:var(--p-ink-1);font-weight:500}.row-badges{align-items:center;gap:5px;margin-top:3px;display:flex}.tier-badge{text-transform:uppercase;border-radius:3px;padding:2px 6px;font:600 8px JetBrains Mono;display:inline-block}.tier-badge.tier-admin{color:#7a4e00;background:#ffb70038}.tier-badge.tier-manager{color:var(--p-info-tx);background:#3b82f626}.tier-badge.tier-viewer{background:var(--p-bg-3);color:var(--p-ink-1)}.guest-badge{border:1px solid var(--p-line-2);text-transform:uppercase;color:var(--p-ink-2);background:#fff;border-radius:3px;padding:2px 6px;font:600 8px JetBrains Mono;display:inline-block}.opco-chip-list{flex-wrap:wrap;gap:4px;max-width:260px;display:flex}.opco-chip{background:var(--p-bg-3);color:var(--p-ink-1);border-radius:3px;padding:2px 6px;font:600 9px JetBrains Mono;display:inline-block}.opco-all-tag{color:var(--p-info-tx);text-transform:uppercase;background:#3b82f624;border-radius:3px;padding:3px 7px;font:600 9px JetBrains Mono;display:inline-block}.user-status-pill{text-transform:uppercase;border-radius:14px;padding:4px 9px;font:600 8px JetBrains Mono;display:inline-block}.user-status-pill.status-active{color:var(--p-ok-tx);background:#22c55e2e}.user-status-pill.status-pending{color:var(--p-warn-tx);background:#f973162e}.user-status-pill.status-disabled{background:var(--p-bg-3);color:var(--p-ink-1)}.user-status-pill.status-archived{color:var(--p-risk-tx);background:#ef44442e}.row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.row-actions .secondary-action{min-height:32px}.row-actions-reason{color:var(--p-risk-tx);flex-basis:100%;margin:4px 0 0;font-size:10px}.row-actions-empty{color:var(--p-ink-3)}.user-access-note{color:var(--p-ink-1);margin-top:10px;font-size:10px}.opco-fieldset{border:1px solid #d3d9e2;border-radius:6px;margin:12px 0;padding:10px 12px}.opco-fieldset legend{color:var(--p-ink-1);text-transform:uppercase;padding:0 4px;font:600 8px JetBrains Mono}.opco-fieldset-actions{gap:8px;margin-bottom:8px;display:flex}.opco-checkbox-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.mini-dialog input[type=checkbox]{accent-color:#273244;cursor:pointer;flex:none;width:14px;height:14px;min-height:0;margin:0;padding:0}.mini-dialog .opco-checkbox{min-height:30px;color:var(--p-ink-1);text-transform:none;cursor:pointer;background:#fff;border:1px solid #d3d9e2;border-radius:5px;flex-direction:row;align-items:center;gap:7px;margin:0;padding:0 9px;font:600 10px JetBrains Mono}.mini-dialog .opco-checkbox:hover{border-color:#aab4c3}.mini-dialog .opco-checkbox:has(input:checked){border-color:var(--yellow);color:#273244;background:#fff7d6}.mini-dialog .opco-checkbox:focus-within{outline-offset:1px;outline:2px solid #2563eb}.dialog-hint{color:#596577;margin:4px 0 8px;font-size:10px}.mini-dialog .checkbox-field{color:#273244;text-transform:none;cursor:pointer;flex-direction:row;align-items:center;gap:8px;margin:14px 0 2px;font:500 11px Inter}@media (width<=860px){.user-access-table{min-width:0}.opco-checkbox-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.user-access-table thead{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.user-access-table,.user-access-table tbody,.user-access-table tr,.user-access-table td{width:100%;display:block}.user-access-table tr{background:#fff;border:1px solid #e1e4eb;border-radius:8px;margin-bottom:10px;padding:8px 10px}.user-access-table td{border-bottom:0;justify-content:space-between;align-items:center;gap:10px;padding:7px 2px;display:flex}.user-access-table td:before{content:attr(data-label);color:var(--p-ink-1);text-transform:uppercase;flex:none;margin-right:10px;font:600 8px JetBrains Mono}.user-access-table td[data-label=User]{align-items:flex-start}.user-access-table td[data-label=User]:before{display:none}}.editor-milestone>header{grid-template-columns:28px 30px 1fr auto auto 150px}.task-head,.editor-task{grid-template-columns:35px minmax(180px,1fr) 72px 72px 160px 100px 150px}.editor-input{grid-template-columns:minmax(130px,1.5fr) minmax(115px,1fr) 55px 80px minmax(100px,1fr) 60px 150px}.task-head.no-rates,.editor-task.no-rates{grid-template-columns:35px minmax(180px,1fr) 72px 150px}.editor-input.no-rates,.task-head.input-head.no-rates{grid-template-columns:minmax(130px,1.5fr) minmax(115px,1fr) 55px minmax(100px,1fr) 60px 150px}.template-editor-kpis.no-rates{grid-template-columns:minmax(220px,340px)}.milestone-toggle{color:#5a687b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;width:26px;height:26px;padding:0;display:grid}.milestone-toggle:hover{background:#fff;border-color:#cbd4df}.milestone-toggle:focus-visible{outline-offset:1px;outline:2px solid #1d4ed8}.milestone-toggle svg{transition:transform .15s}.milestone-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.editor-milestone.collapsed>header{border-bottom:0}.editor-section-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.row-toolbar{opacity:0;align-items:center;gap:3px;transition:opacity .12s;display:inline-flex}.editor-milestone>header:hover .row-toolbar,.editor-milestone>header:focus-within .row-toolbar,.editor-task:hover .row-toolbar,.editor-task:focus-within .row-toolbar,.editor-input:hover .row-toolbar,.editor-input:focus-within .row-toolbar{opacity:1}.row-toolbar-btn{color:#5a687b;background:#fff;border:1px solid #cbd4df;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex}.row-toolbar-btn:hover{color:#273244;background:#fffaf0;border-color:#bd9700}.row-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.row-toolbar [data-tooltip]{position:relative}.row-toolbar [data-tooltip]:after{content:attr(data-tooltip);z-index:20;color:#fff;letter-spacing:normal;text-transform:none;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;background:#273244;border-radius:4px;padding:4px 7px;font:500 11px Inter,sans-serif;transition:opacity .1s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.row-toolbar [data-tooltip]:hover:after,.row-toolbar [data-tooltip]:focus-visible:after{opacity:1;visibility:visible}.row-toolbar [data-tooltip]:disabled{opacity:1}.row-toolbar [data-tooltip]:disabled>svg{opacity:.35}.editor-milestone>header .row-toolbar [data-tooltip]:after{top:calc(100% + 6px);bottom:auto}.row-toolbar .row-toolbar-delete{border:1px solid #0000;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}@media (width<=1150px){.task-head,.editor-task{min-width:940px}.task-head.no-rates,.editor-task.no-rates{min-width:560px}}@media (width<=560px){.editor-milestone>header{min-width:900px}}.editor-task-name{align-items:center;gap:6px;min-width:0;display:flex}.editor-task-name input{flex:1;min-width:0}.completion-gate-badge{color:#7a5a00;white-space:nowrap;background:#fff6e0;border:1px solid #e3b43a;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.completion-gate-divider{color:#7a5a00;letter-spacing:.02em;border-top:1px dashed #e3b43a;align-items:center;gap:8px;margin:2px 0 6px;padding:4px 12px;font-size:11px;font-weight:600;display:flex}.pager{justify-content:center;align-items:center;gap:14px;margin:16px 0;font:500 11px JetBrains Mono,monospace;display:flex}.cpi-legend{margin:0 0 12px;font-size:12px}.audit-filters{gap:8px;margin-bottom:12px;display:grid}.audit-details{gap:2px;margin:6px 0 0;font-size:11px;display:grid}.audit-details div{gap:8px;display:flex}.audit-details dt{color:#526073;font-weight:600}.audit-details dd{overflow-wrap:anywhere;margin:0}a.stat-card-link,a.bar-link,a.milestone-link{color:inherit;cursor:pointer;text-decoration:none}a.stat-card-link{transition:box-shadow .12s,transform .12s;display:block}a.stat-card-link:hover{transform:translateY(-1px);box-shadow:0 6px 18px #1f28371a}a.bar-link{border-radius:5px}a.bar-link:hover{background:#fafbfc}a.milestone-link{border-radius:4px;margin:0 -4px;padding:0 4px}a.milestone-link:hover{background:#fafbfc}a.stat-card-link:focus-visible,a.bar-link:focus-visible,a.milestone-link:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.drill-down-banner{color:#5b4300;background:#fff8e1;border:1px solid #f1d58a;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:8px 12px;font-size:11px;display:flex}.attention-card td.notes .notes-clamp{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tstate{letter-spacing:.8px;white-space:nowrap;text-transform:uppercase;border-radius:9px;align-items:center;gap:4px;padding:2px 8px;font:700 10px JetBrains Mono,monospace;display:inline-flex}.tstate.done{color:var(--p-info-tx);background:#3b82f626}.tstate.inprogress{color:#9a3412;background:#f9731626}.tstate.notstarted{background:var(--p-bg-3);color:var(--p-ink-1)}.tstate.blocked{color:#fff;background:#b91c1c}.tstate.overdue{color:var(--p-risk-tx);background:#ef444426}.tstate.duesoon{color:#6b4e00;background:#ffd60a4d}.task-flags{vertical-align:middle;align-items:center;gap:6px;margin-left:8px;display:inline-flex}.task-owner{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.task-avatar{flex:none;margin-left:0}.task-owner-name{font-size:11px}.task-inactive{color:var(--p-risk-tx);font-style:normal;font-weight:600}.task-block-note{color:var(--p-risk-tx);letter-spacing:0;text-transform:none;white-space:normal;margin-top:3px;font-size:11px;font-weight:400}.blk-mini{letter-spacing:.5px;margin-top:4px;display:block;color:var(--p-risk-tx)!important;font:700 10px JetBrains Mono,monospace!important}.task-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.task-tools select,.wf-pick select,.wf-toolbar select,.wf-pager-size select,.block-dialog select,.block-dialog textarea{border:1px solid var(--p-line-2);min-height:28px;color:var(--p-ink-0);background:#fff;border-radius:5px;padding:3px 8px;font:400 12px Inter,sans-serif}.task-tools select{max-width:220px}.bm-task-flow{border-bottom:1px solid var(--p-line);min-height:0;padding-top:0;grid-template-columns:34px minmax(0,1fr)!important}.te-row.sub:has(+.bm-task-flow){border-bottom:0}.te-row.sub.focus+.bm-task-flow{box-shadow:inset 3px 0 0 var(--p-hi);background:#ffd60a1a}.bm-flow-body{gap:2px;min-width:0;padding-bottom:6px;display:grid}.bm-owner-line{color:var(--p-ink-1);font-size:11px}.te-error-inline{color:var(--p-risk-tx);font-size:11px}.btn-block,.btn-done{letter-spacing:.8px;text-transform:uppercase;cursor:pointer;background:#fff;border-radius:5px;justify-content:center;align-items:center;min-height:28px;padding:3px 10px;font:600 10px JetBrains Mono,monospace;display:inline-flex}.btn-block{color:var(--p-risk-tx);border:1px solid #b91c1c8c}.btn-block:hover:not(:disabled){background:#ef444414}.btn-block.unblock{color:var(--p-ok-tx);border-color:#15803d99}.btn-block.unblock:hover:not(:disabled){background:#22c55e14}.btn-done{border:1px solid var(--p-line-2);color:var(--p-ink-0)}.btn-done:hover:not(:disabled){border-color:var(--p-ink-1);background:var(--p-bg-2)}.btn-block:disabled,.btn-done:disabled{opacity:.5;cursor:default}.btn-block:focus-visible,.btn-done:focus-visible,.wf-kpi:focus-visible,.wf-tab:focus-visible,.wf-pg:focus-visible,.wf-group-btn:focus-visible,.wf-ms-row:focus-visible,.wf-pulse-tile:focus-visible,.wf-results:focus-visible,.wf-col-item button:focus-visible,.wf-cols-head button:focus-visible,.wf-search:focus-visible,.wf-toolbar select:focus-visible,.wf-pick select:focus-visible,.task-tools select:focus-visible,.block-dialog select:focus-visible,.block-dialog textarea:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.wf-kpis{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:14px;display:grid}.wf-kpi{border:1px solid var(--p-line);color:var(--p-ink-0);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:4px;padding:12px 16px;transition:border-color .12s;display:grid}.wf-kpi:hover{border-color:var(--p-ink-2)}.wf-kpi.on{border-color:var(--p-hi-2);box-shadow:0 0 0 1px var(--p-hi-2) inset;background:#fffbe6}.wf-kpi-label{color:var(--p-ink-1);letter-spacing:1.4px;text-transform:uppercase;font:500 10px JetBrains Mono,monospace}.wf-kpi-val{letter-spacing:1px;font:400 30px/1 Bebas Neue,sans-serif}.wf-kpi-val.risk{color:var(--p-risk-tx)}.wf-kpi-val.warn{color:#9a3412}.wf-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.wf-tabs{border:1px solid var(--p-line-2);background:#fff;border-radius:6px;flex-wrap:wrap;display:flex;overflow:hidden}.wf-tab{border:0;border-right:1px solid var(--p-line);min-height:30px;color:var(--p-ink-1);cursor:pointer;background:0 0;padding:4px 12px;font:600 11px Inter,sans-serif}.wf-tab:last-child{border-right:0}.wf-tab:hover{background:var(--p-bg-2)}.wf-tab.active{background:var(--p-hi);color:#000}.wf-layout{grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr);align-items:start;gap:14px;display:grid}.wf-layout.no-timeline{grid-template-columns:1fr}.wf-main,.wf-timeline{border:1px solid var(--p-line);background:#fff;border-radius:8px}.wf-main .panel-head,.wf-timeline .panel-head{border-bottom:1px solid var(--p-line);justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex}.wf-main .panel-title,.wf-timeline .panel-title{letter-spacing:1.5px;margin:0;font:400 18px Bebas Neue,sans-serif}.wf-readonly{color:var(--p-ink-1);letter-spacing:1px;text-transform:uppercase;font:400 10px JetBrains Mono,monospace}.wf-toolbar{border-bottom:1px solid var(--p-line);background:var(--p-bg-2);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.wf-search{border:1px solid var(--p-line-2);background:#fff;border-radius:5px;flex:1;min-width:220px;min-height:30px;padding:4px 10px;font:400 12px Inter,sans-serif}.wf-tool-label{color:var(--p-ink-1);letter-spacing:1.4px;text-transform:uppercase;font:500 10px JetBrains Mono,monospace}.wf-cols-wrap{position:relative}.wf-cols-menu{z-index:120;border:1px solid var(--p-line-2);background:#fff;border-radius:6px;width:260px;max-height:420px;padding:6px 0;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto;box-shadow:0 12px 30px #0f172a2e}.wf-cols-head{border-bottom:1px solid var(--p-line);color:var(--p-ink-1);letter-spacing:1.4px;text-transform:uppercase;justify-content:space-between;align-items:center;padding:6px 12px 8px;font:500 10px JetBrains Mono,monospace;display:flex}.wf-cols-head button{min-height:24px;color:var(--p-info-tx);letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0 6px;font:600 10px JetBrains Mono,monospace}.wf-col-item{grid-template-columns:20px 1fr 28px 28px;align-items:center;gap:4px;padding:3px 12px;font-size:12px;display:grid}.wf-col-item:hover{background:var(--p-bg-2)}.wf-col-item label{cursor:pointer}.wf-col-item input{width:16px;height:16px}.wf-col-item button{border:1px solid var(--p-line-2);min-width:24px;min-height:24px;color:var(--p-ink-1);cursor:pointer;background:#fff;border-radius:3px;font-size:10px}.wf-col-item button:disabled{opacity:.35;cursor:default}.wf-cols-sep,.wf-cols-foot{border-top:1px solid var(--p-line);color:var(--p-ink-1);letter-spacing:1px;text-transform:uppercase;margin-top:4px;padding:8px 12px 4px;font:500 10px JetBrains Mono,monospace}.wf-results{outline-offset:-3px;min-height:120px}.wf-table-scroll{overflow-x:auto}.wf-table{width:100%;min-width:100%}.wf-table td.wf-c-task{min-width:210px}.wf-table td.wf-c-customer{min-width:160px}.wf-table td.wf-c-blocker{min-width:180px}.wf-table td.wf-c-actions,.wf-table td.wf-c-state{white-space:nowrap}.wf-th-actions{text-align:right!important}.wf-task-name{font-size:12px;font-weight:600}.wf-sub{color:var(--p-ink-1);margin-top:2px;font:400 10px JetBrains Mono,monospace}.wf-none{color:var(--p-ink-1)}.wf-nowrap{white-space:nowrap}.wf-due{font-weight:600}.wf-due.late{color:var(--p-risk-tx)}.wf-due.soon{color:#9a3412}.cell-mono{font:400 11px JetBrains Mono,monospace}.cell-id{color:var(--p-ink-0);font:700 12px JetBrains Mono,monospace}.wf-open{min-height:24px;margin-top:4px;display:block}.wf-act-btns{justify-content:flex-end;gap:6px;display:flex}.wf-group-row td{background:var(--p-bg-3);padding:0!important}.wf-group-btn{width:100%;min-height:36px;color:var(--p-ink-0);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 14px;font:700 12px Inter,sans-serif;display:flex}.wf-group-btn:hover{background:var(--p-line)}.wf-caret{width:16px;color:var(--p-ink-1);display:inline-block}.wf-group-meta{color:var(--p-ink-1);margin-left:10px;font:400 10px JetBrains Mono,monospace}.wf-risk{color:var(--p-risk-tx);font-weight:600}.wf-group-note{color:var(--p-ink-1);font-size:12px;padding:10px 14px!important}.wf-pager{border-top:1px solid var(--p-line);background:var(--p-bg-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.wf-pager-info,.wf-pager-size{color:var(--p-ink-1);letter-spacing:1px;text-transform:uppercase;font:400 10px JetBrains Mono,monospace}.wf-pager-size{align-items:center;gap:6px;display:flex}.wf-pager-pages{align-items:center;gap:4px;display:flex}.wf-pg{border:1px solid var(--p-line-2);min-width:30px;min-height:28px;color:var(--p-ink-1);cursor:pointer;background:#fff;border-radius:5px;padding:0 8px;font:500 11px JetBrains Mono,monospace}.wf-pg:hover:not(:disabled){border-color:var(--p-ink-1);color:var(--p-ink-0)}.wf-pg.on{background:var(--p-hi);border-color:var(--p-hi-2);color:#000;font-weight:700}.wf-pg:disabled{opacity:.4;cursor:default}.wf-pg-gap{color:var(--p-ink-1);padding:0 2px}.wf-notice{margin:10px 14px 0}.wf-notice.ok{color:var(--p-ok-tx);background:#22c55e14;border:1px solid #15803d59;border-radius:6px;padding:8px 12px;font-size:12px}.wf-skeleton{padding:14px}.wf-skeleton p{color:var(--p-ink-1);margin:0 0 10px;font-size:12px}.wf-skel-row{background:linear-gradient(90deg,var(--p-bg-3),var(--p-bg-2),var(--p-bg-3));background-size:200% 100%;border-radius:5px;height:34px;margin-bottom:8px;animation:1.4s linear infinite wfSkel}@keyframes wfSkel{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.wf-skel-row{animation:none}}.wf-ms-list{margin:0;padding:0;list-style:none}.wf-timeline-pager{gap:8px;padding:8px 12px}.wf-timeline-pager .wf-pg{min-width:26px;padding:0 6px}.wf-ms-row{border:0;border-bottom:1px solid var(--p-line);width:100%;min-height:44px;color:var(--p-ink-0);text-align:left;cursor:pointer;background:0 0;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px 16px;display:grid}.wf-ms-row:hover{background:var(--p-bg-2)}.wf-ms-name{font-size:12px;font-weight:600;display:block}.wf-ms-meta{color:var(--p-ink-1);margin-top:3px;font:400 10px JetBrains Mono,monospace;display:block}.wf-note{color:var(--p-ink-1);letter-spacing:.5px;margin:0;padding:10px 14px;font:400 10px/1.5 JetBrains Mono,monospace}.wf-pulse{margin:-4px 0 18px}.wf-pulse-head{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 9px;display:flex}.wf-pulse-title{letter-spacing:.8px;text-transform:uppercase;color:var(--p-ink-0);margin:0;font:800 20px/1 Bebas Neue,sans-serif}.wf-pulse-all{color:#8f6a00;letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:3px;font:600 10px JetBrains Mono,monospace;text-decoration:none;display:inline-flex}.wf-pulse-all:hover{text-decoration:underline}.wf-pulse-all:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.wf-pulse-grid.stats-grid{margin-bottom:0}.wf-pulse .stat-card{min-height:112px}.wf-pulse .stat-card.soon{border-top-color:#f59e0b}.wf-pulse .stat-card.soon .stat-icon{color:#b45309;background:#fff4e0}.wf-pulse .stat-card.soon .stat-value{color:#9a3412}.bm-status .bm-body{padding:24px}.mini-dialog .block-dialog label{color:var(--p-ink-0);text-transform:none;letter-spacing:0;font:600 12px Inter,sans-serif;display:block}.block-dialog{gap:12px;display:grid}.block-dialog-sub{color:var(--p-ink-1);margin:0;font:400 11px JetBrains Mono,monospace}.block-field{gap:6px;display:grid}.block-dialog select,.block-dialog textarea{width:100%;max-width:none;min-height:36px;font-size:13px}.block-dialog textarea{resize:vertical}.block-counter{color:var(--p-ink-1);text-align:right;margin:0;font:400 11px JetBrains Mono,monospace}.block-error{color:var(--p-risk-tx);margin:0;font-size:12px;font-weight:600}.block-required{color:var(--p-risk-tx);font-weight:600}.block-actions{justify-content:flex-end;gap:8px;display:flex}.block-confirm{color:#fff!important;background:#b91c1c!important}@media (width<=1100px){.wf-layout{grid-template-columns:1fr}.wf-kpis{grid-template-columns:repeat(3,1fr)}.wf-pulse-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.wf-kpis{grid-template-columns:repeat(2,1fr)}.wf-pulse-grid{grid-template-columns:1fr}}@media (pointer:coarse){.btn-block,.btn-done,.wf-tab,.wf-pg,.wf-group-btn,.wf-col-item button,.wf-cols-head button,.wf-open,.wf-toolbar .ghost-action,.wf-toolbar .link-action,.task-tools select,.task-tools .btn-block,.wf-pick select,.wf-toolbar select,.wf-search{min-height:44px}.wf-pg,.wf-col-item button{min-width:44px}.wf-col-item{grid-template-columns:24px 1fr 44px 44px}.wf-col-item input{width:24px;height:24px}}.avatar-mini.avatar-more{background:var(--p-ink-1)}.act-section{margin-top:18px}.act-count-chip{background:var(--p-bg-3);color:var(--p-ink-1);letter-spacing:0;border-radius:9px;margin-left:6px;padding:1px 7px;font:600 11px JetBrains Mono,monospace}.act-compose{border:1px solid var(--p-line);background:var(--p-bg-2);border-radius:6px;margin-bottom:10px;padding:10px}.act-compose textarea{resize:vertical;width:100%;max-width:none;min-height:54px}.act-compose textarea:focus-visible,.act-list:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.act-compose-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.act-compose-hint{min-width:180px;color:var(--p-ink-1);flex:1;font-size:11px}.act-counter{color:var(--p-ink-1);font:400 10px JetBrains Mono,monospace}.act-btn{border:1px solid var(--p-line-2);min-height:32px;color:var(--p-ink-0);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;background:#fff;border-radius:5px;padding:4px 12px;font:600 11px Inter,sans-serif}.act-btn:hover:not(:disabled){border-color:var(--p-ink-1);background:var(--p-bg-2)}.act-btn:disabled{opacity:.55;cursor:default}.act-btn:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.act-post{background:var(--p-hi);border-color:var(--p-hi-2)}.act-older{margin-top:8px}.act-error{color:var(--p-risk-tx);margin:6px 0 0;font-size:12px}.act-readonly,.act-state{border:1px dashed var(--p-line-2);color:var(--p-ink-1);border-radius:6px;margin:0 0 10px;padding:10px 12px;font:400 11px JetBrains Mono,monospace}.act-list{border:1px solid var(--p-line);border-radius:6px;max-height:320px;overflow:hidden auto}.act-items{margin:0;padding:0;list-style:none}.act-item{border-bottom:1px solid var(--p-line);grid-template-columns:28px 1fr;gap:10px;padding:10px 12px;display:grid}.act-item:last-child{border-bottom:none}.act-dot{color:#fff;background:var(--p-ink-1);border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.act-item.comment .act-dot{background:#7e22ce}.act-item.system .act-dot{background:var(--p-info-tx)}.act-item.blocked .act-dot{background:var(--p-risk-tx)}.act-text{color:var(--p-ink-0);white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5}.act-text .mention{color:var(--p-info-tx);font-weight:600}.act-meta{color:var(--p-ink-1);margin-top:3px;font-family:JetBrains Mono,monospace;font-size:10px}.template-meta-grid .equipment-field{flex-direction:column;gap:6px;min-width:0;display:flex}.equipment-field-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.template-meta-grid .equipment-field-head label{color:#778296;text-transform:uppercase;font:500 8px JetBrains Mono;display:block}.lk-back{z-index:95;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lk-dialog{background:var(--p-bg-1);border:1px solid var(--p-line);border-top:5px solid var(--p-hi);width:min(620px,94vw);max-height:86vh;color:var(--p-ink-0);border-radius:10px;overflow:auto;box-shadow:0 20px 55px #00000040}.lk-head{border-bottom:1px solid var(--p-line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.lk-title{letter-spacing:1.5px;margin:0;font:400 22px/1 Bebas Neue}.lk-sub{letter-spacing:.5px;color:var(--p-ink-1);margin:6px 0 0;font:400 10px JetBrains Mono,monospace}.lk-close{min-width:36px;min-height:36px;color:var(--p-ink-1);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.lk-close:hover{background:var(--p-bg-3);color:var(--p-ink-0)}.lk-body{padding:14px 20px}.lk-row{border-bottom:1px solid var(--p-line);grid-template-columns:1fr 90px 70px 150px;align-items:center;gap:10px;padding:6px 0;display:grid}.lk-row.head{letter-spacing:1.5px;color:var(--p-ink-1);border-bottom:1px solid var(--p-line-2);font:400 9px JetBrains Mono,monospace}.lk-row.inactive .lk-input{color:var(--p-ink-2)}.lk-row.inactive{opacity:.75}.lk-input{border:1px solid var(--p-line-2);background:var(--p-bg-1);width:100%;min-width:0;min-height:36px;color:var(--p-ink-0);border-radius:5px;padding:6px 8px;font:400 12px Inter,sans-serif}.lk-code{text-transform:uppercase;font-family:JetBrains Mono,monospace}.lk-check{width:24px;height:24px;accent-color:var(--p-hi-2)}.lk-use{color:var(--p-ink-1);text-align:right;font:400 10px JetBrains Mono,monospace}.lk-msgs{grid-column:1/-1;gap:4px;display:grid}.lk-msgs p,.lk-add>p.lk-warn,.lk-add>p.lk-field-err{margin:0}.lk-warn{color:var(--p-warn-tx);align-items:flex-start;gap:6px;margin:6px 0 0;font-size:11px;font-weight:600;line-height:1.45;display:flex}.lk-warn svg{flex:none;margin-top:1px}.lk-field-err{color:var(--p-risk-tx);font-size:11px;font-weight:600;line-height:1.45}.lk-note{color:var(--p-ink-1);font-size:11px;line-height:1.45}.lk-notice{color:var(--p-ink-1);margin:10px 0 0;font-size:12px}.lk-reload{min-height:32px;margin:8px 0 0 10px}.lk-new{color:var(--p-ok-tx)}.lk-empty{color:var(--p-ink-1);margin:10px 0;font-size:12px}.lk-add{border:1px dashed var(--p-line-2);background:var(--p-bg-2);border-radius:6px;margin-top:14px;padding:12px}.lk-add-label{letter-spacing:1.5px;color:var(--p-ink-1);margin-bottom:8px;font:400 10px JetBrains Mono,monospace}.lk-add-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lk-add-name{flex:1;min-width:160px}.lk-add-code{flex:none;width:70px}.lk-add-btn{min-height:36px;margin:0}.lk-hint{color:var(--p-ink-1);margin:8px 0 0;font-size:11px;line-height:1.5}.lk-err{color:var(--p-risk-tx);background:#ef44441a;border-radius:5px;margin-top:10px;padding:8px 10px;font-size:12px;display:none}.lk-err.show{display:block}.lk-foot{border-top:1px solid var(--p-line);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.lk-foot .primary-action,.lk-foot .secondary-action{min-height:38px;margin:0}.lk-link{cursor:pointer;letter-spacing:1px;min-width:24px;min-height:24px;color:var(--p-info-tx);text-transform:uppercase;background:0 0;border:0;padding:4px 0 4px 8px;font:400 9px JetBrains Mono,monospace}.lk-link:hover{text-decoration:underline}.lk-dialog :focus-visible,.lk-link:focus-visible,.lk-close:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:2px}@media (width<=520px){.lk-row{grid-template-columns:1fr 64px 44px 96px;gap:6px}.lk-head,.lk-body,.lk-foot{padding-left:12px;padding-right:12px}}.primary-action{letter-spacing:.3px;font-size:12px;font-weight:600}.secondary-action{color:var(--p-ink-1);font-size:12px}.secondary-action:hover{color:var(--p-ink-0);border-color:var(--p-ink-3);background:var(--p-bg-2)}.empty-state{color:var(--p-ink-2);font-size:13px}.empty-state h3{color:var(--p-ink-0)}.empty-inline{color:var(--p-ink-2);font-size:12px}.info-banner p,.template-info-banner p{font-size:12px}.template-status-toast,.dialog-error{font-size:11px}.dialog-hint{color:var(--p-ink-1);font-size:11px}.mini-dialog label{color:var(--p-ink-2);letter-spacing:1.5px;font:500 10px JetBrains Mono,monospace}.mini-dialog input,.mini-dialog select{color:var(--p-ink-0);font:400 13px Inter,sans-serif}.filter-bar button{color:var(--p-ink-1);font-size:11px}.filter-bar select{color:var(--p-ink-0);font-size:12px}.page-heading .welcome{color:#8f6a00;letter-spacing:1.5px;font:600 10px JetBrains Mono,monospace}.page-heading h1{letter-spacing:2px;font:400 38px/1 Bebas Neue,sans-serif}.page-heading>div>span{color:var(--p-ink-2);letter-spacing:1.5px;font:400 11px JetBrains Mono,monospace}.heading-actions button{border-color:var(--p-line-2);height:auto;color:var(--p-ink-1);padding:5px 10px;font-size:11px}.stat-top{color:var(--p-ink-2);letter-spacing:1.5px;font:500 10px JetBrains Mono,monospace}.stat-value{letter-spacing:1px;color:var(--p-ink-0);font:400 42px/1 Bebas Neue,sans-serif}.stat-value small{color:var(--p-ink-2);font-size:18px}.stat-meta{color:var(--p-ink-1);font:400 11px Inter,sans-serif}.positive,.negative,.neutral{letter-spacing:.5px;font:400 10px JetBrains Mono,monospace}.positive{color:var(--p-ok-tx)}.negative{color:var(--p-risk-tx)}.neutral{color:var(--p-ink-1)}.attention-title strong{color:var(--p-risk-tx);letter-spacing:2px;font-size:16px}.attention-title b{letter-spacing:1.5px;font:700 10px JetBrains Mono,monospace}.attention-action{color:var(--p-risk-tx);letter-spacing:1.5px;font-size:10px}.attention-card th{color:var(--p-ink-2);letter-spacing:1.5px;font:500 10px JetBrains Mono,monospace}.attention-card td{color:var(--p-ink-0);font:400 12px JetBrains Mono,monospace}.attention-card td:first-child strong{font-size:12px}.attention-card td:first-child small{color:var(--p-ink-2);font-size:11px}.attention-card .notes{color:var(--p-ink-1);font-size:12px}.stage-badge{color:var(--p-ink-1);font-size:11px}.status{letter-spacing:1px;font-size:10px}.panel-kicker{font:600 10px JetBrains Mono,monospace!important}.panel-head h3{letter-spacing:1.5px;font:400 18px Bebas Neue,sans-serif}.panel-head>span{color:var(--p-ink-2);letter-spacing:.5px;font:400 10px JetBrains Mono,monospace}.fleet-list em{color:var(--p-risk-tx);font-size:10px}.fleet-list small{color:var(--p-ink-2);font-size:10px}.fleet-list small b{color:var(--p-ink-0)}.bar-area b{color:var(--p-ink-1);font-size:10px}.bar-column>span{color:var(--p-ink-2);letter-spacing:.5px;font-size:10px}.chart-caption{color:var(--p-ink-1);font-size:11px}.chart-caption strong{color:var(--p-ink-0)}.milestone-list>.milestone-link>b{font-size:11px}.milestone-list>.milestone-link>span{color:var(--p-ink-0);font-size:13px}.milestone-list>.milestone-link>strong{color:var(--p-ink-1);font-size:11px}.user-access-toolbar label{color:var(--p-ink-2);letter-spacing:1.5px;font-size:10px}.user-access-toolbar input[type=search]{color:var(--p-ink-0);font-size:12px}.user-access-status-filters button{color:var(--p-ink-1);letter-spacing:.5px;font-size:11px}.user-access-table th{color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;font:500 10px JetBrains Mono,monospace}.user-access-table td{color:var(--p-ink-0);font-size:12px}.tier-badge,.guest-badge,.user-status-pill{letter-spacing:.5px;font-size:10px}.opco-chip,.opco-all-tag{font-size:10px}.row-actions-reason{font-size:11px}.user-access-note{font-size:12px}.opco-fieldset legend{color:var(--p-ink-2);letter-spacing:1.5px;font-size:10px}.mini-dialog .opco-checkbox{letter-spacing:0;font-size:11px}.mini-dialog .checkbox-field{color:var(--p-ink-0);letter-spacing:0;font:500 12px Inter,sans-serif}.audit-details dt{color:var(--p-ink-1)}.labor-rates-head span{color:var(--p-ink-2);letter-spacing:1.5px;font-size:10px}.labor-rate-grid label>span{color:var(--p-ink-0);font-size:12px}.labor-rate-grid label>span small{color:var(--p-ink-2);font-size:10px}.labor-rate-grid label input.role-label-input,.role-label-input{color:var(--p-ink-0);font-size:12px}.labor-rate-grid label em{color:var(--p-ink-2);font-size:10px}.add-shop-role{color:var(--p-ink-2);font-size:11px}.template-card-head h2{letter-spacing:1px;font:400 20px/1 Bebas Neue,sans-serif}.template-version{color:var(--p-ink-2);background:var(--p-bg-3);font-size:10px}.template-class{letter-spacing:.8px;font-size:10px}.template-description{color:var(--p-ink-1);font-size:12px;line-height:1.4}.template-stat-row{color:var(--p-ink-2);font-size:11px}.template-stat-row strong{color:var(--p-ink-0)}.template-stat-row b{font-size:12px}.template-updated{color:var(--p-ink-2)}.template-actions button{color:var(--p-ink-1);border-color:var(--p-line-2);font-size:11px}.template-version-table th{color:var(--p-ink-2);letter-spacing:1.5px;font:500 10px JetBrains Mono,monospace}.template-version-table td{color:var(--p-ink-0);font-size:12px}.template-meta-grid label,.equipment-field-head label{color:var(--p-ink-2);letter-spacing:1.5px;font-size:10px}.template-meta-grid input,.template-meta-grid select,.template-tester input,.editor-task input,.editor-task select{color:var(--p-ink-0);font-size:12px}.editor-input input,.editor-input select{color:var(--p-ink-0);font-size:11px}.template-meta-grid input:disabled{color:var(--p-ink-2)}.template-editor-kpis span{color:var(--p-ink-2);letter-spacing:1.5px;font-size:9px}.template-editor-kpis em{color:var(--p-ink-2);font:400 10px JetBrains Mono,monospace}.template-editor-kpis strong{color:var(--p-ink-0);letter-spacing:1px;margin:6px 0 4px;font:400 26px/1 Bebas Neue,sans-serif}.template-editor-kpis strong small{color:var(--p-ink-2);font-size:13px}.template-tester{font-size:12px}.template-tester b{letter-spacing:1.5px;font-size:10px}.editor-section-heading p{color:var(--p-ink-2);font-size:12px}.add-editor{color:var(--p-ink-2);letter-spacing:.5px;font-size:11px}.editor-milestone>header input{color:var(--p-ink-0);font-size:14px}.editor-milestone>header>span{color:var(--p-ink-2);font-size:11px}.task-head{color:var(--p-ink-2);letter-spacing:1.5px;font-size:9px}.editor-task>b{font-size:10px}.editor-task>strong{font-size:11px}.task-inputs-head{color:var(--p-ink-2);letter-spacing:1.5px;font-size:9px}.lk-link{font-size:10px}.calc-badge{font-size:9px}.refurb-hint,.refurb-head>span,.refurb-inputs-row label>span,.refurb-totals span,.refurb-role small,.refurb-totals small{color:var(--p-ink-2);font-size:10px}.dashboard-grid.fleet-row{grid-template-columns:1.4fr 1fr;margin-bottom:14px}.dashboard-grid.fleet-row.single{grid-template-columns:1fr}.dashboard-grid.trend-row{grid-template-columns:1.6fr 1fr}.dashboard-grid .panel{align-self:stretch}.dashboard-grid .panel-head{border-bottom-color:var(--p-line);height:auto;padding:14px 18px}.dashboard-grid .panel-head h3{letter-spacing:1.5px;font:400 18px/1 Bebas Neue,sans-serif}.dashboard-grid .panel-head>span{color:var(--p-ink-2);letter-spacing:0;align-items:center;gap:6px;font:400 11px JetBrains Mono,monospace;display:flex}.legend-sw{background:var(--p-hi);border-radius:2px;width:10px;height:10px;display:inline-block}.fleet-list{padding:8px 0 4px}.fleet-list button{border-bottom:1px solid var(--p-line);grid-template-columns:96px 1fr auto auto;gap:14px;height:auto;padding:11px 18px}.fleet-list button:hover{background:var(--p-bg-2)}.fleet-list strong{color:var(--p-hi-2);letter-spacing:1.5px;font:400 20px/1 Bebas Neue,sans-serif}.fleet-list span{color:var(--p-ink-0);font-size:13px}.fleet-list em{color:var(--p-risk-tx);margin-left:8px;font:400 11px JetBrains Mono,monospace}.fleet-list small{color:var(--p-ink-2);letter-spacing:0;text-align:right;font:400 10px JetBrains Mono,monospace}.fleet-list>button>b{min-width:60px;color:var(--p-ink-0);text-align:right;font:400 11px JetBrains Mono,monospace}.dashboard-grid .chart{align-items:stretch;gap:10px;height:auto;padding:18px}.dashboard-grid .bar-column{gap:6px}.dashboard-grid .bar-area{align-items:flex-end;height:180px}.dashboard-grid .bar-area i{background:linear-gradient(180deg,var(--p-hi) 0%,var(--p-hi-2) 100%);border-radius:2px 2px 0 0;width:100%;max-width:none;position:relative}.dashboard-grid .bar-area i b{text-align:center;color:var(--p-ink-1);font:400 10px JetBrains Mono,monospace;position:absolute;top:-18px;left:0;right:0}.dashboard-grid .bar-column>span{color:var(--p-ink-2);letter-spacing:.5px;margin-top:0;font:400 10px JetBrains Mono,monospace}.throughput-panel .bar-area{height:220px}.milestone-panel{grid-column:auto}.milestone-list{padding:6px 18px 10px;display:block}.milestone-list>.milestone-link{border-bottom:1px solid var(--p-line);grid-template-columns:24px 1fr 120px 36px;gap:12px;height:auto;padding:11px 0}.milestone-list>.milestone-link:last-child{border-bottom:0}.milestone-list>.milestone-link>b{background:var(--p-bg-3);width:24px;height:24px;color:var(--p-hi-2);border-radius:6px;font:600 11px JetBrains Mono,monospace}.milestone-list>.milestone-link>span{text-transform:none}.milestone-list>.milestone-link>span small{color:var(--p-ink-2);margin-top:2px;font:400 10px JetBrains Mono,monospace;display:block}.milestone-list>.milestone-link>div{background:var(--p-bg-3);border-radius:3px;height:6px}.milestone-list>.milestone-link>div i{background:var(--p-hi);border-radius:3px}.milestone-list>.milestone-link>strong{color:var(--p-ink-1);font:400 11px JetBrains Mono,monospace}@media (width<=1100px){.dashboard-grid.fleet-row,.dashboard-grid.trend-row{grid-template-columns:1fr}}@media (width<=580px){.fleet-list button{grid-template-columns:70px 1fr auto}.fleet-list small{display:none}.milestone-list>.milestone-link{grid-template-columns:24px 1fr 60px 32px}}.nav-item b.alert{color:var(--p-risk-tx);background:#ef444426}.audit-table-wrap{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;overflow:auto}.audit-table{border-collapse:collapse;width:100%;font-size:12px}.audit-table th{text-align:left;background:var(--p-bg-2);border-bottom:1px solid var(--p-line);color:var(--p-ink-2);letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;padding:10px 14px;font:500 10px JetBrains Mono,monospace}.audit-table td{border-bottom:1px solid var(--p-line);vertical-align:middle;color:var(--p-ink-0);padding:11px 14px}.audit-table tbody tr:last-child td{border-bottom:0}.audit-table tbody tr:hover{background:var(--p-bg-2)}.audit-when{white-space:nowrap;width:16%;color:var(--p-ink-2);font:400 11px JetBrains Mono,monospace}.audit-when small{color:var(--p-ink-3);margin-top:2px;font-size:10px;display:block}.audit-actor{width:22%;color:var(--p-ink-1);overflow-wrap:anywhere;font:400 11px JetBrains Mono,monospace}.audit-action{letter-spacing:1px;text-transform:uppercase;white-space:nowrap;border-radius:3px;padding:2px 6px;font:700 9px JetBrains Mono,monospace;display:inline-block}.audit-action.neutral{color:#a16207;background:#f59e0b26;border:1px solid #f59e0b4d}.audit-action.risk{color:#b91c1c;background:#ef444426;border:1px solid #ef44444d}.audit-action.info{color:#1d4ed8;background:#3b82f626;border:1px solid #3b82f64d}.audit-detail p{color:var(--p-ink-0);margin:0;font-size:12px}.audit-detail .audit-details{color:var(--p-ink-1);margin-top:4px;font-size:11px}.audit-filters .filter-bar button{border:1px solid var(--p-line);background:var(--p-bg-2);height:auto;color:var(--p-ink-1);letter-spacing:.5px;border-radius:14px;padding:5px 10px;font:400 11px JetBrains Mono,monospace}.audit-filters .filter-bar button:hover{color:var(--p-ink-0);border-color:var(--p-ink-3)}.audit-filters .filter-bar button.selected{background:var(--p-hi);border-color:var(--p-hi);color:#000;font-weight:600}.audit-filters .filter-bar label{width:auto;color:var(--p-ink-2);letter-spacing:1px;text-transform:uppercase;font:500 10px JetBrains Mono,monospace}.audit-filters .filter-bar label input,.audit-filters .filter-bar label select{height:28px;color:var(--p-ink-0);text-transform:none;letter-spacing:0;background:0 0;border:0;margin-left:0;font:400 12px Inter,sans-serif}@media (width<=768px){.audit-table{min-width:720px}}.user-access-page .info-banner{color:#1d4ed8;background:#3b82f60f;border:1px solid #3b82f640;margin-bottom:14px;padding:14px 18px}.user-access-page .info-banner p{font-size:12px;line-height:1.5}.user-access-page .info-banner strong{color:var(--p-ink-0)}.user-access-table td{padding:12px 11px}.user-cell strong{color:var(--p-ink-0);font-weight:500}.avatar-initials{color:#fff;font:600 10px Inter,sans-serif}.avatar-initials.role-AssemblyManager{background:#dc2626}.avatar-initials.role-FabricationManager{background:#c2410c}.avatar-initials.role-OfficeManager{background:#7c3aed}.avatar-initials.role-FleetManager{background:#0891b2}.avatar-initials.role-RegionalManager{background:#2563eb}.avatar-initials.role-GeneralManager{background:#1e40af}.you-tag{color:#b38800;letter-spacing:1px;text-transform:uppercase;margin-left:6px;font:600 9px JetBrains Mono,monospace}.user-access-table td.cell-mono{color:var(--p-ink-1);font:400 11px JetBrains Mono,monospace}.never-signed-in{color:var(--p-warn-tx)}.tier-badge,.guest-badge{letter-spacing:1px;font:700 9px JetBrains Mono,monospace}.tier-badge.tier-admin{color:#b91c1c;background:#ef444426;border:1px solid #ef44444d}.tier-badge.tier-manager{color:#a16207;background:#f59e0b26;border:1px solid #f59e0b4d}.tier-badge.tier-viewer{color:#1d4ed8;background:#3b82f626;border:1px solid #3b82f64d}.opco-chip{border:1px solid var(--p-hi);background:var(--p-hi);color:#000;letter-spacing:.5px;padding:2px 7px;font:600 10px JetBrains Mono,monospace}.opco-all-tag{border:1px solid var(--p-hi);color:#8f6a00;letter-spacing:.5px;background:#ffd60a26;padding:2px 7px;font:600 10px JetBrains Mono,monospace}.user-status-pill{letter-spacing:1px;border-radius:12px;align-items:center;gap:6px;padding:3px 9px;font:600 10px JetBrains Mono,monospace;display:inline-flex}.user-status-pill .dot-mini{background:currentColor;border-radius:50%;width:6px;height:6px}.user-status-pill.status-active{background:#22c55e26}.user-status-pill.status-disabled{color:var(--p-ink-2);background:#6b748a33}.user-access-status-filters button{background:var(--p-bg-2);border-color:var(--p-line);border-radius:14px;font:400 11px JetBrains Mono,monospace}.user-access-status-filters button.selected{background:var(--p-hi);border-color:var(--p-hi);color:#000;font-weight:600}@media (width<=768px){.user-access-table td:before{color:var(--p-ink-2);letter-spacing:1px;font-size:10px}}@media (width<=580px){.page-heading h1{font-size:31px}.stat-value{font-size:30px}.attention-title b{font-size:9px}}.notif-bell{border:1px solid var(--p-line);background:var(--p-bg-2);width:36px;height:36px;color:var(--p-ink-1);cursor:pointer;border-radius:50%}.notif-bell:hover{background:var(--p-bg-3);border-color:var(--p-ink-2);color:var(--p-ink-0)}.notif-badge{background:var(--p-risk-tx);color:#fff;border:2px solid #fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font:700 10px JetBrains Mono,monospace;display:grid;position:absolute;top:-4px;right:-4px}.notif-menu{z-index:200;border:1px solid var(--p-line-2);background:#fff;border-radius:8px;flex-direction:column;width:min(380px,100vw - 24px);max-height:70vh;font-family:Inter,sans-serif;display:flex;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 16px 38px #0d131d2e}.notif-menu[hidden]{display:none}.notif-menu-head{border-bottom:1px solid var(--p-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;padding:10px 14px;display:flex}.notif-menu-title{letter-spacing:1.5px;color:var(--p-ink-0);margin:0;font:400 16px Bebas Neue,sans-serif}.notif-menu-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notif-scope{border:1px solid var(--p-line-2);border-radius:5px;display:flex;overflow:hidden}.notif-scope-btn{border:0;border-right:1px solid var(--p-line);min-height:26px;color:var(--p-ink-1);letter-spacing:.5px;cursor:pointer;background:#fff;padding:2px 9px;font:600 10px JetBrains Mono,monospace}.notif-scope-btn:last-child{border-right:0}.notif-scope-btn[aria-pressed=true]{background:var(--p-hi);color:#000}.notif-link-btn{min-height:26px;color:var(--p-info-tx);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font:600 10px JetBrains Mono,monospace}.notif-link-btn:hover:not(:disabled){background:var(--p-bg-2);text-decoration:underline}.notif-link-btn:disabled{opacity:.5;cursor:default}.notif-note{border-bottom:1px solid var(--p-line);color:var(--p-ok-tx);margin:0;padding:8px 14px;font-size:12px}.notif-note.error{color:var(--p-risk-tx)}.notif-list-wrap{flex:1;overflow-y:auto}.notif-list,.nc-items{margin:0;padding:0;list-style:none}.notif-item{border:0;border-bottom:1px solid var(--p-line);width:100%;color:var(--p-ink-0);text-align:left;font:inherit;cursor:pointer;background:#fff;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:11px 14px;display:grid}.notif-item:hover{background:var(--p-bg-2)}.notif-item.unread{background:#ffd60a1a}.notif-item.unread:hover{background:#ffd60a33}.notif-icon{color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;margin-top:2px;font-size:12px;font-weight:700;display:grid}.notif-icon.tone-info{background:var(--p-info-tx)}.notif-icon.tone-warn{background:var(--p-warn-tx)}.notif-icon.tone-risk{background:var(--p-risk-tx)}.notif-icon.tone-ok{background:var(--p-ok-tx)}.notif-icon.tone-purple{background:#6d28d9}.notif-icon.tone-due{color:#000;background:#ffb700}.notif-text{min-width:0;display:block}.notif-title,.notif-body,.notif-meta{display:block}.notif-title{color:var(--p-ink-0);overflow-wrap:anywhere;margin-bottom:2px;font-size:13px;font-weight:500;line-height:1.3}.unread .notif-title{font-weight:700}.unread .notif-title:before{content:"";background:var(--p-hi-2);vertical-align:middle;border:1px solid #8f6a00;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.notif-body{color:var(--p-ink-1);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.notif-meta{color:var(--p-ink-1);letter-spacing:.5px;margin-top:4px;font:400 10px JetBrains Mono,monospace}.nc-to{color:var(--p-ink-0)}.notif-empty{text-align:center;color:var(--p-ink-1);margin:0;padding:28px 16px;font:400 12px/1.5 Inter,sans-serif}.notif-menu-foot{border-top:1px solid var(--p-line);justify-content:space-between;gap:8px;padding:6px 10px;display:flex}.notif-menu-foot a{min-height:28px;color:var(--p-info-tx);letter-spacing:.5px;text-transform:uppercase;border-radius:4px;align-items:center;padding:0 6px;font:600 10px JetBrains Mono,monospace;text-decoration:none;display:inline-flex}.notif-menu-foot a:hover{background:var(--p-bg-2);text-decoration:underline}.nc-head-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nc-chips{flex-wrap:wrap;gap:6px;display:flex}.nc-chip{border:1px solid var(--p-line-2);background:#fff;border-radius:14px;min-height:28px}.nc-chip.active{background:var(--p-hi);border-color:var(--p-hi-2)}.wf-main>.panel-head{flex-wrap:wrap}.nc-day{background:var(--p-bg-2);border-bottom:1px solid var(--p-line);color:var(--p-ink-1);letter-spacing:1.5px;text-transform:uppercase;margin:0;padding:8px 18px;font:500 10px JetBrains Mono,monospace}.nc-day span{color:var(--p-ink-1);margin-left:6px}.nc-item{border-bottom:1px solid var(--p-line);grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:6px 12px;padding:12px 18px;display:grid}.nc-item.unread{background:#ffd60a1a}.nc-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.nc-btn{border:1px solid var(--p-line-2);min-height:28px;color:var(--p-ink-1);letter-spacing:.8px;text-transform:uppercase;white-space:nowrap;cursor:pointer;background:#fff;border-radius:4px;padding:4px 10px;font:600 10px JetBrains Mono,monospace}.nc-btn:hover:not(:disabled){border-color:var(--p-ink-2);color:var(--p-ink-0)}.nc-btn.primary{background:var(--p-hi);border-color:var(--p-hi-2);color:#000}.nc-btn.good{color:var(--p-ok-tx);border-color:#15803d8c}.nc-btn:disabled,.nc-icon-btn:disabled{opacity:.5;cursor:default}.nc-icon-btn{min-width:28px;min-height:28px;color:var(--p-ink-1);cursor:pointer;background:0 0;border:0;border-radius:4px;font-size:14px}.nc-icon-btn:hover:not(:disabled){background:var(--p-bg-3);color:var(--p-ink-0)}.nc-reply{grid-column:2/4}.nc-reply textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:64px}.nc-reply-foot{justify-content:flex-end;align-items:center;gap:6px;margin-top:6px;display:flex}.nc-settings{max-width:980px}.nc-pref-list{margin:0;padding:0;list-style:none}.nc-pref{border-bottom:1px solid var(--p-line);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.nc-pref-text{gap:2px;min-width:0;display:grid}.nc-pref-label{color:var(--p-ink-0);font-size:13px;font-weight:600}.nc-pref-hint{color:var(--p-ink-1);font-size:12px}.nc-switch{min-height:28px;color:var(--p-ink-0);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:2px 4px;font:600 11px JetBrains Mono,monospace;display:inline-flex}.nc-switch[aria-disabled=true]{opacity:.6;cursor:progress}.nc-switch-track{background:#6b7488;border-radius:11px;width:38px;height:22px;transition:background .12s;position:relative}.nc-switch-knob{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:3px;left:3px}.nc-switch[aria-checked=true] .nc-switch-track{background:var(--p-ok-tx)}.nc-switch[aria-checked=true] .nc-switch-knob{transform:translate(16px)}.nc-who{padding:14px 4px;line-height:1.7}.notif-bell:focus-visible,.notif-scope-btn:focus-visible,.notif-link-btn:focus-visible,.notif-item:focus-visible,.notif-menu-foot a:focus-visible,.nc-btn:focus-visible,.nc-icon-btn:focus-visible,.nc-chip:focus-visible,.nc-switch:focus-visible,.nc-reply textarea:focus-visible,.wf-tab:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.te-row.sub[tabindex]:focus{outline-offset:-3px;outline:3px solid #1476d4}.nc-item,.nc-day{scroll-margin-top:72px}@media (width<=700px){.nc-item{grid-template-columns:28px minmax(0,1fr)}.nc-actions{grid-column:2;justify-content:flex-start}.nc-reply{grid-column:1/-1}}@media (pointer:coarse){.notif-bell{width:44px;height:44px}.notif-scope-btn,.notif-link-btn,.notif-menu-foot a,.nc-btn,.nc-icon-btn,.nc-chip,.nc-switch{min-height:44px}.nc-icon-btn{min-width:44px}.notif-item{min-height:44px}}.bm-chassis-edit{color:var(--p-ink-2);text-transform:uppercase;font:500 11px JetBrains Mono,monospace}.bm-chassis-edit .bm-input{text-transform:none;width:100%;min-height:36px;font-family:Inter,sans-serif;font-size:13px}.template-editor-page{--tpl-mute:#5b6679;--tpl-amber:#7a5a00}.template-editor-page .tpl-heading-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.template-editor-page .tpl-heading-actions button{letter-spacing:1px;text-transform:uppercase;min-height:34px;margin:0;font:600 11px JetBrains Mono,monospace}.template-editor-page .secondary-action:focus-visible,.template-editor-page .primary-action:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:2px}.template-editor-page .template-meta-grid{background:0 0;border:0;border-radius:0;gap:14px;margin-bottom:18px;padding:0}.template-editor-page .template-meta-grid label,.template-editor-page .equipment-field-head label{color:var(--tpl-mute)}.template-editor-page .template-meta-grid input,.template-editor-page .template-meta-grid select,.template-editor-page .template-tester input,.template-editor-page .editor-task input,.template-editor-page .editor-task select,.template-editor-page .editor-input input,.template-editor-page .editor-input select{background:var(--p-bg-2);border:1px solid var(--p-line-2);color:var(--p-ink-0);border-radius:4px}.template-editor-page .template-meta-grid input,.template-editor-page .template-meta-grid select{min-height:38px;font-size:13px}.template-editor-page .template-meta-grid input:disabled{background:var(--p-bg-3);color:var(--tpl-mute)}.template-editor-page .template-meta-grid input:focus-visible,.template-editor-page .template-meta-grid select:focus-visible,.template-editor-page .template-tester input:focus-visible,.template-editor-page .editor-task input:focus-visible,.template-editor-page .editor-task select:focus-visible,.template-editor-page .editor-input input:focus-visible,.template-editor-page .editor-input select:focus-visible,.template-editor-page .editor-milestone>header input:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:1px}.template-editor-page .template-editor-kpis{gap:10px;margin-bottom:18px}.template-editor-page .template-editor-kpis.no-rates{grid-template-columns:repeat(2,1fr)}.template-editor-page .template-editor-kpis>div{background:var(--p-bg-2);border:1px solid var(--p-line);border-radius:6px;padding:12px 14px}.template-editor-page .template-editor-kpis>div.accent{border-color:var(--p-hi)}.template-editor-page .template-editor-kpis span,.template-editor-page .template-editor-kpis em{color:var(--tpl-mute)}.template-editor-page .template-editor-kpis em{margin-top:4px;font-size:10px;display:block}.template-editor-page .template-tester{background:var(--p-bg-1);border:1px solid var(--p-hi);color:var(--p-ink-0);border-radius:8px;flex-wrap:wrap;gap:14px;margin:14px 0 0;padding:14px 18px}.template-editor-page .template-tester b{color:var(--tpl-amber);letter-spacing:1.5px;text-transform:uppercase;font:600 10px JetBrains Mono,monospace}.template-editor-page .template-tester input{width:160px;min-height:32px;font-size:12px}.template-editor-page .template-tester span{color:var(--p-ink-0);margin-left:0;font:400 12px JetBrains Mono,monospace}.template-editor-page .template-tester strong{color:var(--tpl-amber);font-weight:700}.template-editor-page .editor-section-heading{gap:12px;margin:24px 0 10px}.template-editor-page .editor-section-heading h2{letter-spacing:1.5px;font:400 20px/1.1 Bebas Neue,sans-serif}.template-editor-page .editor-section-heading p{color:var(--tpl-mute);letter-spacing:.5px;text-transform:uppercase;margin:4px 0 0;font:400 10px JetBrains Mono,monospace}.template-editor-page .add-editor{border:1px dashed var(--p-line-2);min-height:28px;color:var(--tpl-mute);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:5px;padding:6px 12px;font:400 11px JetBrains Mono,monospace;display:inline-flex}.template-editor-page .add-editor:hover{color:var(--p-ink-0);background:0 0;border:1px solid #bd9700}.template-editor-page .add-editor:focus-visible,.template-editor-page .add-input-mini:focus-visible,.template-editor-page .row-toolbar-btn:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:1px}.template-editor-page .add-input-mini{border:1px dashed var(--p-line-2);min-height:24px;color:var(--tpl-mute);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:3px;padding:3px 7px;font:400 10px JetBrains Mono,monospace;display:inline-flex}.template-editor-page .add-input-mini:hover{color:var(--p-ink-0);border:1px solid #bd9700}.template-editor-page .editor-milestone{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;margin-bottom:12px}.template-editor-page .editor-milestone>header{background:var(--p-bg-2);border-bottom:1px solid var(--p-line);grid-template-columns:24px 24px minmax(0,1fr) auto auto auto;gap:10px;padding:10px 14px}.template-editor-page .editor-milestone.collapsed>header{border-bottom:0}.template-editor-page .editor-milestone>header>b{background:var(--p-hi);color:#000;border-radius:4px;width:24px;height:24px;font:700 11px JetBrains Mono,monospace}.template-editor-page .editor-milestone>header input{border:1px solid #0000;border-radius:4px;min-width:0;min-height:28px;padding:2px 4px;font:600 14px Inter,sans-serif}.template-editor-page .editor-milestone>header input:hover{border-color:var(--p-line-2);background:#fff}.template-editor-page .milestone-stats{color:var(--tpl-mute);white-space:nowrap;gap:14px;font:400 11px JetBrains Mono,monospace;display:flex}.template-editor-page .milestone-stats strong{color:var(--p-ink-0);font-weight:600}.template-editor-page .milestone-stats .milestone-cost{color:var(--tpl-amber)}.template-editor-page .milestone-toggle{width:24px;height:24px;color:var(--p-ink-1);border:0;border-radius:4px}.template-editor-page .milestone-toggle:hover{background:var(--p-bg-3);color:var(--p-ink-0);border:0}.template-editor-page .milestone-toggle:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:1px}.template-editor-page .task-head,.template-editor-page .editor-task{grid-template-columns:35px minmax(180px,1fr) 72px 72px 160px 100px minmax(250px,auto);gap:8px;padding:8px 14px}.template-editor-page .task-head.no-rates,.template-editor-page .editor-task.no-rates{grid-template-columns:28px minmax(180px,640px) 75px minmax(250px,1fr)}.template-editor-page .task-head{background:var(--p-bg-2);color:var(--tpl-mute);letter-spacing:1.5px;padding-top:6px;padding-bottom:6px;font:400 9px JetBrains Mono,monospace}.template-editor-page .editor-task{border-bottom:1px solid var(--p-line)}.template-editor-page .editor-task>b{color:var(--tpl-mute);font:400 10px JetBrains Mono,monospace}.template-editor-page .editor-task>strong{color:var(--tpl-amber);text-align:right}.template-editor-page .editor-task>strong small{color:var(--tpl-mute);margin-top:2px;font:400 9px JetBrains Mono,monospace;display:block}.template-editor-page .tpl-row-end{justify-content:flex-end;align-items:center;gap:6px;display:flex}.template-editor-page .task-inputs{background:var(--p-bg-2);border-top:1px dashed var(--p-line);border-bottom:1px solid var(--p-line);border-left:3px solid var(--p-line-2);grid-column:auto;margin-left:44px;padding:14px 18px 14px 14px}.template-editor-page .task-inputs-head{color:var(--tpl-mute);letter-spacing:1.5px;text-transform:uppercase;margin:0 0 8px;font:400 10px JetBrains Mono,monospace}.template-editor-page .task-head.input-head{border-bottom:1px solid var(--p-line);grid-template-columns:minmax(130px,1fr) 140px 60px 90px minmax(100px,130px) 70px 164px;gap:8px;padding:0 0 4px;background:0 0!important}.template-editor-page .task-head.input-head.no-rates{grid-template-columns:minmax(130px,1fr) 140px 60px minmax(100px,130px) 70px 164px}.template-editor-page .editor-input{grid-template-columns:minmax(130px,1fr) 140px 60px 90px minmax(100px,130px) 70px 164px;gap:8px;margin:0;padding:5px 0;font-size:11px}.template-editor-page .editor-input.no-rates{grid-template-columns:minmax(130px,1fr) 140px 60px minmax(100px,130px) 70px 164px}.template-editor-page .editor-input>.row-toolbar{justify-self:end}.template-editor-page .editor-input input,.template-editor-page .editor-input select{min-height:28px;padding:3px 7px;font-size:11px}.template-editor-page .standalone-inputs{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;padding:0;overflow:hidden}.template-editor-page .standalone-inputs .task-head.input-head{padding:8px 14px 4px}.template-editor-page .standalone-inputs .editor-input{border-bottom:1px solid var(--p-line);margin:0;padding:6px 14px}.template-editor-page .standalone-inputs .editor-input:last-child{border-bottom:0}.template-editor-page .standalone-inputs .empty-inline{text-align:center;color:var(--tpl-mute);letter-spacing:.3px;text-transform:uppercase;padding:14px;font:400 11px JetBrains Mono,monospace}.template-editor-page .template-version-history{margin-top:28px}.template-version-snapshot .editor-milestone{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;margin-bottom:12px;overflow:hidden}.template-version-snapshot .editor-milestone>header{grid-template-columns:24px minmax(0,1fr) auto;gap:10px;min-width:0;padding:10px 14px}.template-version-snapshot .editor-milestone>header>b{background:var(--p-hi);color:#000;border-radius:4px;width:24px;height:24px;font:700 11px JetBrains Mono,monospace}.template-version-snapshot .editor-milestone>header h3{overflow-wrap:anywhere;min-width:0;color:var(--p-ink-0);margin:0;font:600 14px Inter,sans-serif}.template-version-snapshot .editor-milestone>header>span{color:var(--p-ink-2);white-space:nowrap;font:400 11px JetBrains Mono,monospace}.template-version-snapshot .editor-milestone>.template-version-table{table-layout:fixed}.template-version-snapshot .editor-milestone>.template-version-table th:first-child{width:56px}.template-version-snapshot .editor-milestone>.template-version-table th:nth-child(n+3){width:90px}.template-version-snapshot .template-version-table th,.template-version-snapshot .template-version-table td{padding-left:14px;padding-right:14px}.template-version-snapshot .template-version-table td{overflow-wrap:anywhere}.template-version-snapshot .template-version-inputs{table-layout:auto}.template-editor-page .version-history-card{background:var(--p-bg-1);border:1px solid var(--p-line);border-radius:8px;overflow:hidden}.template-editor-page .version-history-card .empty-inline{text-align:center;color:var(--tpl-mute);letter-spacing:.3px;text-transform:uppercase;margin:0;padding:14px;font:400 11px JetBrains Mono,monospace}.template-editor-page .version-history-error{color:var(--p-ink-0);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.template-editor-page .version-history-error p{margin:0}.template-editor-page .template-version-list{margin:0;padding:0;list-style:none}.template-editor-page .template-version-list li{border-bottom:1px solid var(--p-line)}.template-editor-page .template-version-list li:last-child{border-bottom:0}.template-editor-page .version-row{text-align:left;grid-template-columns:150px 90px 90px 80px minmax(140px,1fr) minmax(140px,1fr) 70px;align-items:center;gap:8px;width:100%;padding:10px 14px;display:grid}.template-editor-page .version-row.has-rates{grid-template-columns:150px 90px 90px 80px 100px minmax(140px,1fr) minmax(140px,1fr) 70px}.template-editor-page .version-head{background:var(--p-bg-2);border-bottom:1px solid var(--p-line);color:var(--tpl-mute);letter-spacing:1.5px;text-transform:uppercase;padding-top:6px;padding-bottom:6px;font:400 9px JetBrains Mono,monospace}.template-editor-page button.version-row{min-height:0;color:var(--p-ink-0);cursor:pointer;background:0 0;border:0;border-radius:0;font:400 12px Inter,sans-serif}.template-editor-page button.version-row:hover{background:var(--p-bg-2)}.template-editor-page button.version-row:focus-visible{outline:2px solid var(--p-info-tx);outline-offset:-2px}.template-editor-page .version-id{align-items:center;gap:6px;display:inline-flex}.template-editor-page .version-id .template-version{color:var(--p-ink-0);border-radius:4px;padding:2px 6px;font:600 11px JetBrains Mono,monospace}.template-editor-page .version-latest{border:1px solid var(--p-hi);background:var(--p-hi);color:#000;letter-spacing:.8px;text-transform:uppercase;border-radius:999px;padding:2px 6px;font:600 9px JetBrains Mono,monospace}.template-editor-page .version-num{color:var(--p-ink-0);font:400 12px JetBrains Mono,monospace}.template-editor-page .version-date{flex-direction:column;gap:1px;display:flex}.template-editor-page .version-date small{color:var(--tpl-mute);font:400 10px JetBrains Mono,monospace}.template-editor-page .version-author{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.template-editor-page .version-view{color:var(--tpl-mute);letter-spacing:.5px;text-transform:uppercase;justify-content:flex-end;align-items:center;gap:2px;font:400 10px JetBrains Mono,monospace;display:inline-flex}.template-editor-page button.version-row:hover .version-view{color:var(--p-ink-0)}@media (width<=760px){.template-editor-page .version-head{display:none}.template-editor-page .version-row,.template-editor-page .version-row.has-rates{grid-template-columns:1fr auto;row-gap:4px}.template-editor-page .version-row .version-num{color:var(--tpl-mute);font-size:11px}}.template-editor-page .row-toolbar{gap:3px}.template-editor-page .editor-milestone>header .row-toolbar{opacity:1}.template-editor-page .row-toolbar-btn,.template-editor-page .row-toolbar .row-toolbar-delete{border:1px solid var(--p-line-2);background:var(--p-bg-1);width:24px;height:24px;color:var(--p-ink-1);cursor:pointer;border-radius:4px}.template-editor-page .row-toolbar-btn:hover:not(:disabled){border-color:var(--p-ink-2);background:var(--p-bg-3);color:var(--p-ink-0)}.template-editor-page .row-toolbar .row-toolbar-delete:hover:not(:disabled){border-color:var(--p-risk-tx);color:var(--p-risk-tx);background:#fff}.template-editor-page .row-toolbar-btn.is-edge{visibility:hidden}.template-editor-page .row-toolbar-btn:disabled{cursor:not-allowed}@media (hover:none){.template-editor-page .row-toolbar{opacity:1}}@media (width<=1150px){.template-editor-page .task-head,.template-editor-page .editor-task{min-width:960px}.template-editor-page .task-head.no-rates,.template-editor-page .editor-task.no-rates{min-width:640px}}@media (pointer:coarse){.template-editor-page .row-toolbar-btn,.template-editor-page .row-toolbar .row-toolbar-delete{width:44px;height:44px}.template-editor-page .row-toolbar{opacity:1}.template-editor-page .add-editor,.template-editor-page .add-input-mini,.template-editor-page .lk-link,.template-editor-page .tpl-heading-actions button{min-height:44px}.template-editor-page .milestone-toggle{width:44px;height:44px}.template-editor-page .editor-milestone>header{grid-template-columns:44px 28px minmax(0,1fr) auto auto auto}.template-editor-page .template-meta-grid input,.template-editor-page .template-meta-grid select,.template-editor-page .template-tester input,.template-editor-page .editor-task input,.template-editor-page .editor-task select,.template-editor-page .editor-input input,.template-editor-page .editor-input select{min-height:44px}.template-editor-page .task-head,.template-editor-page .editor-task{grid-template-columns:35px minmax(180px,1fr) 72px 72px 160px 100px max-content}.template-editor-page .task-head.no-rates,.template-editor-page .editor-task.no-rates{grid-template-columns:28px minmax(180px,640px) 75px max-content}.template-editor-page .task-head.input-head,.template-editor-page .editor-input{grid-template-columns:minmax(130px,1fr) 140px 60px 90px minmax(100px,130px) 70px max-content}.template-editor-page .task-head.input-head.no-rates,.template-editor-page .editor-input.no-rates{grid-template-columns:minmax(130px,1fr) 140px 60px minmax(100px,130px) 70px max-content}.template-editor-page .task-head,.template-editor-page .editor-task,.template-editor-page .task-inputs{min-width:max-content}.template-editor-page .editor-milestone{overflow:auto}}@media (width<=560px){.template-editor-page .editor-milestone>header{min-width:900px}}.ms-photo-wrap{display:inline-block;position:relative}.ms-photo-btn{vertical-align:middle;border:1px dashed var(--p-line-2);min-width:24px;min-height:24px;color:var(--p-ink-1);letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:4px;margin-left:10px;padding:2px 7px;font:600 10px JetBrains Mono,monospace;display:inline-flex}.ms-photo-btn.has{color:var(--p-ink-0);background:var(--p-bg-1);border-style:solid}.ms-photo-btn:hover,.ms-photo-btn.dragover{border-color:var(--p-hi-2);color:var(--p-ink-0)}.ms-photo-btn.readonly{cursor:default;border-style:solid}.ms-photo-btn:focus-visible,.photo-filter:focus-visible,.photo-add-btn:focus-visible,.photo-thumb-open:focus-visible,.photo-del:focus-visible,.ms-phase-menu button:focus-visible,.bm-att-name.link:focus-visible,.bm-att-thumb.open:focus-visible,.bm-lightbox button:focus-visible,.bm-lightbox select:focus-visible,.bm-att-cat-pick:focus-visible,.bm-att-download:focus-visible,.bm-att-del:focus-visible,.bm-att-btn:focus-visible,.att-notice-x:focus-visible{outline-offset:2px;outline:3px solid #1476d4}.ms-phase-menu{z-index:80;border:1px solid var(--p-line-2);background:var(--p-bg-1);letter-spacing:0;text-transform:none;border-radius:8px;flex-direction:column;gap:2px;min-width:150px;padding:6px;font-weight:400;display:flex;position:fixed;box-shadow:0 8px 24px #0f172a2e}.ms-phase-title{color:var(--p-ink-2);letter-spacing:1.5px;padding:4px 8px;font:400 9px JetBrains Mono,monospace}.ms-phase-menu button{min-height:28px;color:var(--p-ink-0);letter-spacing:1px;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:6px 8px;font:400 11px JetBrains Mono,monospace;display:flex}.ms-phase-menu button:hover,.ms-phase-menu button:focus-visible{background:var(--p-bg-3)}.ms-phase-menu button em{color:var(--p-ink-1);letter-spacing:.5px;margin-left:auto;padding-left:10px;font-size:9px;font-style:normal}.ms-photos{border-bottom:1px solid var(--p-line);background:var(--p-bg-1);flex-wrap:wrap;align-items:flex-start;gap:8px;padding:8px 12px 10px 44px;display:flex}.photo-cell{flex-direction:column;gap:3px;display:flex}.photo-thumb{border:1px solid var(--p-line);background:var(--p-bg-2);border-radius:5px;position:relative;overflow:hidden}.photo-cell.milestone .photo-thumb{width:56px;height:56px}.photo-cell.gallery .photo-thumb{width:76px;height:76px}.photo-thumb-open{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.photo-thumb-open img{object-fit:cover;width:100%;height:100%;display:block}.photo-thumb .bm-thumb-ph{padding:2px;font-size:9px}.photo-ms-tag{background:var(--p-hi);color:#000;border-radius:3px;padding:1px 5px;font:700 9px JetBrains Mono,monospace;position:absolute;top:4px;left:4px}.photo-del{color:#fff;cursor:pointer;background:#b91c1c;border:0;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;font-size:11px;line-height:1;display:grid;position:absolute;top:2px;right:2px}.photo-phase{color:var(--p-ink-1);align-items:center;gap:4px;font:500 10px JetBrains Mono,monospace;display:inline-flex}.photos-panel{border:1px solid var(--p-line);background:var(--p-bg-1);border-radius:8px;margin:6px 0 20px;overflow:hidden}.photos-panel-head{border-bottom:1px solid var(--p-line);background:var(--p-bg-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.photos-panel-title{letter-spacing:1.5px;align-items:center;gap:10px;margin:0;font:400 18px Bebas Neue,sans-serif;display:flex}.photos-panel-title .count{color:var(--p-ink-1);font:600 11px JetBrains Mono,monospace}.photo-filters{flex-wrap:wrap;gap:4px;display:flex}.photo-filter{border:1px solid var(--p-line-2);background:var(--p-bg-1);min-height:28px;color:var(--p-ink-1);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;border-radius:14px;align-items:center;gap:5px;padding:4px 10px;font:400 10px JetBrains Mono,monospace;display:inline-flex}.photo-filter.active{border-color:var(--p-hi);background:var(--p-hi);color:#000;font-weight:700}.photo-filter:disabled{opacity:.5;cursor:default}.photo-add{border-bottom:1px solid var(--p-line);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;display:flex}.photo-add-btn{border:1.5px dashed var(--p-line-2);min-height:28px;color:var(--p-ink-0);letter-spacing:.8px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:5px;align-items:center;gap:6px;padding:4px 10px;font:500 10px JetBrains Mono,monospace;display:inline-flex}.photo-add-btn:hover,.photo-add-btn.dragover{border-color:var(--p-hi-2);background:#ffd60a14}.photo-add-hint{color:var(--p-ink-1);font-size:11px}.photos-strip{flex-wrap:wrap;gap:8px;padding:12px 14px;display:flex}.photo-empty{color:var(--p-ink-1);text-align:center;letter-spacing:1px;margin:0;padding:18px 14px;font:400 11px JetBrains Mono,monospace}.bm-att-section .bm-att-zone{cursor:default}.bm-att-chips{margin:8px 0 0;padding:0;list-style:none}.bm-att-chips li{border:1px solid var(--p-line);background:var(--p-bg-3);color:var(--p-ink-1);letter-spacing:.5px;border-radius:10px;padding:2px 7px;font:400 9px JetBrains Mono,monospace}.bm-att-btn{cursor:pointer;min-height:32px}.bm-att-list{margin:12px 0 0;padding:0;list-style:none}.bm-att-name.link{color:var(--p-ink-0);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font:500 12px Inter,sans-serif;text-decoration:underline}.bm-att-thumb.open{cursor:pointer;border:0;padding:0}.bm-att-thumb .bm-thumb-ph{padding:0;font-size:8px}.att-pick{display:inline-flex}.att-scan{align-items:center;gap:5px;margin-top:3px;font:500 11px JetBrains Mono,monospace;display:inline-flex}.att-scan.pending{color:var(--p-info-tx)}.att-scan.infected,.att-scan.error{color:var(--p-risk-tx)}.bm-att-item.infected{border-color:var(--p-risk)}.att-row-alert{color:var(--p-risk-tx);margin-top:3px;font-size:11px;display:block}.att-row-actions{gap:6px;display:flex}.att-progress{width:100%;max-width:260px;height:8px;margin-top:4px;display:block}.att-spin{animation:1s linear infinite att-spin}@keyframes att-spin{to{transform:rotate(360deg)}}.att-notices{z-index:5;flex-direction:column;gap:6px;margin-bottom:10px;display:flex;position:sticky;top:0}.att-notice{color:var(--p-risk-tx);background:#fef2f2;border:1px solid #ef444466;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.att-notice span{flex:1}.att-notice-x{width:24px;height:24px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.att-load-error{color:var(--p-risk-tx);justify-content:center;align-items:center;gap:10px;display:flex}.bm-lightbox-stage{place-items:center;max-width:90vw;max-height:70vh;display:grid}.bm-lightbox-stage img{border-radius:6px;max-width:90vw;max-height:70vh}.bm-lightbox-nav{color:#fff;cursor:pointer;background:#ffffff2e;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.bm-lightbox-nav.prev{left:16px}.bm-lightbox-nav.next{right:16px}.bm-lightbox-bar{flex-direction:column;align-items:center;gap:8px;max-width:90vw;display:flex}.bm-lightbox-caption{color:#fff;text-align:center;margin:0;font:400 12px JetBrains Mono,monospace}.bm-lightbox-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.bm-lightbox-btn,.bm-lightbox-phase select{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #fff6;border-radius:5px;min-height:32px;padding:4px 12px;font:600 11px Inter,sans-serif}.bm-lightbox-btn{align-items:center;gap:6px;display:inline-flex}.bm-lightbox-btn:disabled{opacity:.5;cursor:not-allowed}.bm-lightbox-btn.danger{border-color:#fca5a5}.bm-lightbox-phase{color:#fff;align-items:center;gap:6px;font-size:11px;display:inline-flex}.bm-lightbox-phase option{color:#000}@media (pointer:coarse){.ms-photo-btn{min-width:44px;min-height:44px}.photo-filter,.photo-add-btn,.bm-att-btn,.bm-att-download,.ms-phase-menu button,.bm-lightbox-btn{min-height:44px}.photo-del,.bm-att-del,.att-notice-x{width:44px;height:44px}.bm-att-cat-pick{min-height:44px}}
