:root{--bg:#f4f6f9;--surface:#fff;--border:#e2e6ec;--field-border:#7f8c9d;--text:#1c2530;--muted:#626d7a;--accent:#0b4a8f;--accent-hover:#0a3f7a;--accent-bg:#e8f0fb;--ring:#0b4a8f;--disabled-fg:#9aa4b2;--brand-orange:#e8853a;--green:#15703f;--green-bg:#e6f4ec;--amber:#855b00;--amber-bg:#fbf1dc;--red:#b0203a;--red-bg:#fbe9ec}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:14px}html{scroll-padding-top:140px}button,input,select,textarea{font-family:inherit}.skip-link{z-index:100;background:var(--accent);color:#fff;border-radius:0 0 8px 8px;padding:10px 16px;font-size:14px;text-decoration:none;transition:top .12s;position:absolute;top:-60px;left:12px}.skip-link:focus{top:0}@media (prefers-reduced-motion:reduce){.skip-link{transition:none}}.login-wrap{background:radial-gradient(120% 82% at 50% -12%, #0b4a8f1a, transparent 55%), var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg{pointer-events:none;position:absolute;inset:0}.login-bg .grid{background-image:linear-gradient(#0b4a8f17 1px,#0000 1px),linear-gradient(90deg,#0b4a8f17 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000,#0000 68%);mask-image:radial-gradient(circle at 50% 42%,#000,#0000 68%)}.login-bg .traj{color:#0b4a8f26;width:100%;height:100%;position:absolute;inset:0}.login-card{z-index:1;background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:14px;width:360px;padding:32px;display:flex;position:relative;box-shadow:0 10px 40px #1428461f}.login-brand{justify-content:center;display:flex}.login-accent{background:var(--brand-orange);border-radius:3px;align-self:center;width:44px;height:3px;margin-top:-4px}.login-sub{color:var(--muted);text-align:center;font-size:13px}.logo{align-items:center;gap:12px;display:inline-flex}.logo-img{width:auto;display:block}.logo-app{color:var(--muted);letter-spacing:.01em;border-left:1px solid var(--border);white-space:nowrap;padding-left:12px;font-size:13px;font-weight:500}label{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}input,select,textarea{border:1px solid var(--field-border);color:var(--text);background:var(--surface);border-radius:8px;padding:9px 11px;font-size:14px}input:focus,select:focus{border-color:var(--accent);outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,.nav-item:focus-visible,.nav-summary:focus-visible,.subtab:focus-visible,.step-tab:focus-visible,.ss-input:focus-visible,.add-chip:focus-visible,tr.clickable:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;padding:9px 16px;font-size:14px}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 1px 2px #0b4a8f47}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{border-color:var(--field-border);color:var(--text);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg)}.btn-sm{padding:6px 12px;font-size:13px}.btn-danger{color:var(--red);border-color:var(--red)}.btn-danger:hover:not(:disabled){background:var(--red-bg)}.btn:disabled{opacity:.45;cursor:not-allowed}.error{color:var(--red);min-height:16px;font-size:13px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #1428460d}.brand{font-size:15px;font-weight:600}.user{color:var(--muted);align-items:center;gap:14px;display:flex}.user-chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;font:inherit;color:var(--text);border-radius:999px;align-items:center;gap:8px;max-width:340px;padding:6px 12px;display:inline-flex}.user-chip:hover{background:var(--bg)}.user-chip svg.ic{color:var(--muted);flex:none}.user-name{white-space:nowrap;font-weight:600}.user-role{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.user-role:before{content:"·";color:var(--border);margin-right:7px;font-weight:700}.whatsnew{align-items:center;gap:7px;display:inline-flex;position:relative}.whatsnew svg.ic{color:var(--muted)}.whatsnew-unread{border-color:var(--accent);color:var(--accent)}.whatsnew-unread svg.ic{color:var(--accent)}.whatsnew.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.whatsnew.active svg.ic{color:var(--accent)}.whatsnew-dot{background:var(--brand-orange);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;animation:.26s cubic-bezier(.2,.9,.25,1) both dot-in;position:absolute;top:2px;right:2px}@keyframes dot-in{0%{transform:scale(0)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.whatsnew-dot{animation:none}}.layout{align-items:flex-start;min-height:calc(100vh - 56px);display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex:none;align-self:stretch;width:210px;max-height:calc(100vh - 56px);padding:12px;position:sticky;top:56px;overflow-y:auto}.nav-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;margin-bottom:3px;padding:9px 12px;font-size:14px;display:flex}.nav-item svg{width:16px;height:16px;color:var(--muted);flex:none}.nav-item:hover{background:var(--bg)}.nav-item.active{background:var(--accent-bg);color:var(--accent);font-weight:500}.nav-item.active svg{color:var(--accent)}.nav-group{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:14px 12px 6px;font-size:11px}.nav-primary{border-bottom:1px solid var(--border);margin-bottom:6px;padding-bottom:10px}.nav-details{margin-top:4px}.nav-summary{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;list-style:none;display:flex}.nav-summary::-webkit-details-marker{display:none}.nav-summary:hover{background:var(--bg)}.nav-summary .nav-lead{width:16px;height:16px;color:var(--muted);flex:none}.nav-summary .nav-chev{width:14px;height:14px;color:var(--muted);margin-left:auto;transition:transform .18s}.nav-details[open]>.nav-summary{color:var(--accent);font-weight:500}.nav-details[open]>.nav-summary .nav-lead{color:var(--accent)}.nav-details[open]>.nav-summary .nav-chev{transform:rotate(90deg)}.nav-sub{padding:2px 0 6px;position:relative}.nav-sub .nav-item{padding-left:38px;font-size:13.5px}.nav-sub .nav-item:before{content:"";background:var(--border);width:1px;position:absolute;top:2px;bottom:6px;left:19px}@media (prefers-reduced-motion:reduce){.nav-summary .nav-chev{transition:none}}.content{flex:1;min-width:0;padding:24px}.table-scroll{background:linear-gradient(to right, var(--surface) 30%, #fff0) left center / 28px 100% no-repeat local, linear-gradient(to left, var(--surface) 30%, #fff0) right center / 28px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #14284629, #14284600) left center / 12px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #14284629, #14284600) right center / 12px 100% no-repeat scroll;overflow-x:auto}.page-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.page-title{margin:0;font-size:20px;font-weight:600;line-height:1.3}.page-head>.hint{margin-left:-4px;margin-right:auto}.well-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.status-badge{padding:3px 11px;font-size:12px;font-weight:600}.well-meta{flex-wrap:wrap;align-items:flex-start;gap:32px;display:flex}.meta-item{flex-direction:column;gap:6px;display:flex}.meta-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px;line-height:1}.meta-value{white-space:nowrap;font-size:15px;font-weight:500;line-height:1.4}.meta-note{color:var(--muted);white-space:nowrap;align-self:flex-start;margin-top:21px;font-size:13px}.dot-light{vertical-align:baseline;background:currentColor;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.dot-light.dot-amber{border-radius:1px}.dot-light.dot-red{border-radius:1px;transform:rotate(45deg)}.dot-light.dot-unknown{background:0 0;border:2px solid}@media print{.topbar,.sidebar,.step-tabs,.scenario-bar,.btn,.row-form,.nav-details,.no-print{display:none!important}.layout{display:block}.content{padding:0}body{background:#fff;font-size:12px}.card{box-shadow:none;break-inside:avoid;page-break-inside:avoid;border:1px solid #ddd}.page-title{font-size:18px}table{font-size:11px}a[href]:after{content:""}.subtabs{border:0;margin:0 0 10px;display:block}.subtab{display:none}.subtab.active{border:0;padding:0;font-size:12px;font-weight:700;display:inline}.subtab.active:before{content:"Слой: ";font-weight:400}.table-scroll{background:0 0!important;overflow:visible!important}table{table-layout:auto;width:100%}td,th{word-break:break-word}.collapse-card>summary{border-bottom:1px solid #ddd;padding-left:0}.collapse-card>summary:after,.collapse-card>summary .collapse-chev{display:none}.collapse-card{box-shadow:none;break-inside:avoid;border:1px solid #ddd}}.add-chip{border:1px solid var(--accent);width:20px;height:20px;color:var(--accent);cursor:pointer;vertical-align:middle;background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-left:8px;padding:0;font-size:13px;line-height:1;display:inline-flex}.add-chip:hover{background:var(--accent-bg)}.slot-row td{background:var(--bg);border-top:2px solid var(--border);padding-top:11px;font-size:14px}.slot-add-row td{padding-top:2px;padding-bottom:12px}.add-chip-del{border-color:var(--border);color:var(--muted)}.add-chip-del:hover{border-color:var(--red);color:var(--red);background:var(--red-bg)}.mchart{flex-direction:column;gap:8px;margin-top:12px;display:flex}.mchart-row{grid-template-columns:130px 1fr 140px;align-items:center;gap:12px;display:grid}.mchart-label{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.mchart-track{background:var(--bg);border-radius:4px;height:18px;position:relative}.mchart-zero{background:var(--border);width:1px;position:absolute;top:-3px;bottom:-3px;left:50%}.mchart-bar{border-radius:3px;min-width:2px;position:absolute;top:3px;bottom:3px}.mchart-bar.pos{background:var(--green)}.mchart-bar.neg{background:var(--red)}.mchart-val{text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.mchart-val.neg{color:var(--red)}.scenario-bar{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.scenario-title{font-weight:600}.scenario-controls{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.scenario-ctl{flex-direction:column;gap:4px;min-width:220px;font-size:13px;display:flex}.scenario-ctl input[type=range]{accent-color:var(--accent);cursor:pointer}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:18px;padding:20px;box-shadow:0 1px 2px #1428460a,0 8px 22px #1428460d}.start-here{background:var(--accent-bg);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:14px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;padding:16px 18px;display:flex}.start-here>div{flex:320px;min-width:0}.start-here .start-ico{background:var(--surface);width:34px;height:34px;color:var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.start-here .start-ico svg{width:18px;height:18px}.collapse-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:18px;box-shadow:0 1px 2px #1428460a,0 8px 22px #1428460d}.collapse-card>summary{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:14px;align-items:center;gap:10px;padding:16px 20px;font-size:15px;font-weight:600;list-style:none;display:flex}.collapse-card>summary::-webkit-details-marker{display:none}.collapse-card>summary:hover{background:var(--bg)}.collapse-card>summary:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.collapse-card>summary .collapse-sum{color:var(--muted);margin-left:auto;font-size:13px;font-weight:400}.collapse-card>summary .collapse-chev{color:var(--muted);flex:none;transition:transform .18s;display:inline-flex}.collapse-card[open]>summary .collapse-chev{transform:rotate(90deg)}.collapse-card[open]>summary{border-bottom:1px solid var(--border);border-radius:14px 14px 0 0}.collapse-card>.collapse-body{padding:16px 20px 20px}@media (prefers-reduced-motion:reduce){.collapse-card>summary .collapse-chev{transition:none}}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:500}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.act,th.act{text-align:right;white-space:nowrap;width:1%}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--bg)}.last-edit{white-space:nowrap;line-height:1.35}.last-edit-when{display:block}.last-edit-who{color:var(--muted);text-overflow:ellipsis;max-width:190px;font-size:12px;display:block;overflow:hidden}td.open-cell,th.open-cell{white-space:nowrap;text-align:right;width:1%}.open-link{color:var(--muted);align-items:center;gap:5px;font-size:13px;font-weight:500;transition:color .12s;display:inline-flex}.open-link svg{width:13px;height:13px;transition:transform .14s ease-out}tr.clickable:hover .open-link,tr.clickable:focus-visible .open-link{color:var(--accent)}tr.clickable:hover .open-link svg,tr.clickable:focus-visible .open-link svg{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.open-link svg{transition:none}}@media print{.open-cell{display:none}}.row-form{flex-wrap:wrap;align-items:flex-end;gap:14px 16px;display:flex}.row-form>label{flex:190px;min-width:0;max-width:340px}.row-form>label>input,.row-form>label>select{width:100%}.badge{border-radius:20px;padding:2px 10px;font-size:12px;display:inline-block}.badge-green{background:var(--green-bg);color:var(--green)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-amber{background:var(--amber-bg);color:var(--amber)}.badge-neutral{background:var(--bg);color:var(--muted)}.badge-unknown{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.muted{color:var(--muted)}.empty{color:var(--muted);text-align:center;padding:30px}.rel-wrap{max-width:744px}.rel-current{color:var(--muted);margin:0 0 26px;font-size:13px}.rel-current b{color:var(--text);font-weight:600}.rel-list{margin:0;padding:0;list-style:none}.rel{break-inside:avoid;padding:0 0 30px 30px;position:relative}.rel:before{content:"";background:#0b4a8f2e;width:1px;position:absolute;top:15px;bottom:0;left:4px}.rel:last-child:before{display:none}.rel:after{content:"";background:var(--surface);border:1px solid var(--field-border);border-radius:50%;width:9px;height:9px;position:absolute;top:5px;left:0}.rel-fresh:after{background:var(--accent);border-color:var(--accent)}.rel-head{flex-wrap:wrap;align-items:baseline;gap:5px 12px;display:flex}.rel-title{margin:0;font-size:16px;font-weight:600;line-height:1.25}.rel-ver{color:var(--muted);font-size:12px}.rel-new{background:var(--accent-bg);color:var(--accent);border-radius:20px;padding:2px 10px;font-size:12px}.rel-meta{color:var(--muted);margin:5px 0 0;font-size:13px}.rel-changes{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.rel-changes>li{grid-template-columns:100px 1fr;align-items:baseline;gap:14px;display:grid}.rel-kind{white-space:nowrap;border-radius:20px;justify-self:start;padding:2px 10px;font-size:12px;font-weight:600}.rel-kind-new{background:var(--green-bg);color:var(--green)}.rel-kind-improve{background:var(--accent-bg);color:var(--accent)}.rel-kind-fix{background:var(--amber-bg);color:var(--amber)}.rel-kind-important{background:var(--red-bg);color:var(--red)}.rel-text{overflow-wrap:break-word;line-height:1.55}.rel-area{font-weight:600}.rel-skeleton{gap:10px;margin-bottom:26px;display:grid}.rel-skeleton>span{background:var(--border);border-radius:6px;height:12px}@media (width<=640px){.rel-changes>li{grid-template-columns:1fr;gap:5px}}.subtabs{border-bottom:1px solid var(--border);gap:4px;margin:18px 0;display:flex}.step-tabs{z-index:10;background:var(--bg);align-items:flex-start;margin:0 -24px 22px;padding:16px 24px 10px;display:flex;position:sticky;top:56px;box-shadow:0 10px 14px -12px #14284638}.step-tab{cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;align-items:center;gap:10px;min-width:0;padding:0 4px;font-family:inherit;display:flex;position:relative}.step-tab:not(:last-child):after{content:"";background:var(--border);z-index:0;height:2px;position:absolute;top:16px;left:calc(50% + 23px);right:calc(23px - 50%)}.step-tab:not(:last-child):before{content:"";border-top:2px solid var(--border);border-right:2px solid var(--border);z-index:0;width:7px;height:7px;position:absolute;top:16px;right:calc(22px - 50%);transform:translate(50%,-50%)rotate(45deg)}.step-chip{z-index:1;border:1.5px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative}.step-label{text-align:center;color:var(--muted);overflow-wrap:break-word;font-size:12px;line-height:1.3;transition:color .15s}.step-tab:hover .step-chip{border-color:var(--accent);color:var(--accent)}.step-tab:hover .step-label{color:var(--text)}.step-tab.active .step-chip{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 0 4px var(--accent-bg)}.step-tab.active .step-label{color:var(--accent);font-weight:600}.step-tab.step-goal .step-chip,.step-tab.step-goal:hover .step-chip{border-color:var(--green);color:var(--green)}.step-tab.step-goal .step-label{color:var(--green)}.step-tab.step-goal.active .step-chip{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 0 0 4px var(--green-bg)}.step-tab.step-goal.active .step-label{color:var(--green);font-weight:600}.step-tab.step-done:not(.active) .step-chip{border-color:var(--green);color:var(--green)}.step-tab.step-done:not(.active) .step-chip svg{width:15px;height:15px}.step-tab.step-need:not(.active) .step-chip{border-color:var(--amber);color:var(--amber);background:var(--amber-bg)}.step-tab.step-need:not(.active) .step-label{color:var(--amber)}.step-tab.active .step-chip svg{color:#fff;width:15px;height:15px}.subtab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:14px}.subtab:hover{color:var(--text)}.subtab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:500}.metrics{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.metric{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:13px 15px;box-shadow:0 1px 2px #1428460a}.metric-v{letter-spacing:-.01em;margin-top:5px;font-size:20px;font-weight:700}.bha-slot{background:var(--bg);border-radius:8px;align-items:center;gap:10px;margin-bottom:10px;padding:10px 12px;display:flex}.bha-slot select{flex:1;min-width:320px}.bha-slot-num{background:var(--accent-bg);width:26px;height:26px;color:var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.bha-rate{color:var(--muted);white-space:nowrap;font-size:13px}.bha-preview{border:1px dashed var(--border);background:var(--surface);border-radius:10px;margin-top:14px;padding:14px}.bha-preview-title{font-size:15px;font-weight:600}.bha-hint{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5}.hint{vertical-align:middle;cursor:help;outline:none;align-items:center;gap:4px;display:inline-flex;position:relative}.hint-ico{border:1px solid var(--border);background:var(--surface);width:15px;height:15px;color:var(--muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:10px;font-style:italic;font-weight:700;line-height:1;transition:color .12s,border-color .12s;display:inline-flex}.hint:hover .hint-ico,.hint:focus-visible .hint-ico{color:var(--accent);border-color:var(--accent)}.hint:focus-visible{box-shadow:0 0 0 2px var(--ring);border-radius:4px}.hint-label{color:var(--muted);font-size:12px}.hint:hover .hint-label{color:var(--accent)}.hint-pop{z-index:60;border:1px solid var(--border);background:var(--surface);width:320px;color:var(--text);text-align:left;white-space:normal;border-radius:8px;padding:10px 12px;font-size:12px;font-style:normal;font-weight:400;line-height:1.5;animation:.12s ease-out hint-in;position:fixed;box-shadow:0 8px 24px #1018282e}.hint-pop-wide{width:560px}@keyframes hint-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.hint-pop table{margin:6px 0 0;font-size:12px}.hint-pop table th,.hint-pop table td{padding:4px 6px}.hint-pop .formula{background:var(--bg);border-radius:6px;margin:6px 0;padding:6px 8px;font-weight:600;display:block}@media print{.hint{display:none}}.ss{display:inline-block;position:relative}.ss-input{border:1px solid var(--field-border);width:100%;font:inherit;background:var(--surface);box-sizing:border-box;cursor:pointer;text-overflow:ellipsis;border-radius:8px;padding:9px 30px 9px 11px}.ss-input:disabled{background:var(--bg);color:var(--disabled-fg);cursor:not-allowed}.ss-chev{pointer-events:none;color:var(--muted);font-size:10px;line-height:1;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.ss-input:disabled+.ss-chev{color:var(--disabled-fg)}.ss-list{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:8px;margin:0;padding:4px;list-style:none;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #141e321f}.ss-opt{cursor:pointer;white-space:normal;border-radius:6px;padding:7px 9px;font-size:14px}.ss-opt.active{background:var(--accent-bg)}.ss-opt.sel{font-weight:600}.ss-cols .ss-opt{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) max-content;align-items:baseline;gap:12px;display:grid}.ss-cols2 .ss-opt,.ss-cols2 .ss-head{grid-template-columns:minmax(0,1fr) max-content}.ss-cols .ss-clear{grid-template-columns:1fr}.ss-name{overflow-wrap:anywhere;min-width:0}.ss-alt{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:12.5px}.ss-note{text-align:right;font-variant-numeric:tabular-nums;font-size:12.5px}.ss-head{z-index:1;background:var(--surface);border-bottom:1px solid var(--border);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) max-content;gap:12px;margin:-4px -4px 2px;padding:7px 13px 5px;font-size:11px;display:grid;position:sticky;top:-4px}.ss-head>span:last-child{text-align:right}.approval{gap:10px;display:grid}.approval-draft{border-color:var(--border)}.approval-review,.approval-approved_econ{border-color:var(--amber);background:var(--amber-bg)}.approval-approved{border-color:var(--green);background:var(--green-bg)}.approval-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.approval-head .muted{font-size:13px}.approval-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.approval-comment{flex:1;min-width:240px;max-width:460px}.approval-history{border-top:1px solid var(--border);padding-top:8px}.approval-history>summary{cursor:pointer;align-items:center;gap:10px;font-size:13px;list-style:none;display:flex}.approval-history>summary::-webkit-details-marker{display:none}.approval-log{gap:7px;margin:10px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.approval-log>li{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.approval-why{color:var(--muted);font-style:italic}.lock-wrap{border:0;min-width:0;margin:0;padding:0}.lock-wrap:disabled{opacity:.75}.alerts{border-color:var(--amber);background:var(--amber-bg)}.alerts-head{color:var(--amber);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.alerts-head svg.ic{align-self:center}.alerts-head .muted{font-size:13px}.alerts-list{gap:8px;margin:12px 0 0;padding:0;font-size:13.5px;list-style:none;display:grid}.alerts-list>li{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.alert-overdue>span:last-child{color:var(--red)}.alert-jump{border:1px solid var(--amber);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:3px 10px;font-weight:600}.alert-jump:hover{background:var(--bg)}.why-list{gap:8px;margin:8px 0 0;padding-left:0;list-style:none;display:grid}.why-list>li{grid-template-columns:auto 1fr;align-items:baseline;gap:10px;display:grid}.why-jump{border:1px solid var(--red);background:var(--surface);color:var(--red);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:3px 10px;font-size:12px}.why-jump:hover{background:var(--red-bg)}.row-found>td{background:var(--amber-bg)}.row-found>td:first-child{box-shadow:inset 3px 0 0 var(--amber)}@media print{.why-jump{display:none}}.ss-off{color:var(--muted);cursor:not-allowed;font-size:13px}.ss-opt:not(.ss-off)+.ss-off{border-top:1px solid var(--border);margin-top:4px;padding-top:9px}.ss-clear{color:var(--muted)}.ss-empty{color:var(--muted);padding:8px 9px;font-size:13px}.equip-table td,.equip-table th{vertical-align:middle}.equip-table th.col-standby,.equip-table td.standby-cell{text-align:center;width:64px;padding-left:4px;padding-right:4px}.standby-cell input{cursor:pointer;vertical-align:middle;width:16px;height:16px;margin:0}.equip-table td.term-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.term-dates{align-items:center;gap:6px;display:flex}.term-dates>input{min-width:0}.term-sum{align-items:center;gap:6px;margin-top:3px;font-size:11px;display:flex}.term-sum>b{font-size:13px}.equip-table td>.ss,.equip-table td>select,.equip-table td>input:not([type=checkbox]),.row-form>label>.ss{width:100%}.row-form>label:has(>.ss){min-width:auto}.row-form>label.col-fit{flex:none}.ymap-stub{border:1px dashed var(--border);background:var(--bg);color:var(--muted);text-align:center;border-radius:8px;margin-top:6px;padding:14px;font-size:13px}.ymap-stub .ic{width:22px;height:22px;color:var(--muted);margin:0 auto 6px;display:block}.ymap-panel{border:1px solid var(--border);background:var(--card);border-radius:8px;margin-top:6px;overflow:hidden}.ymap-canvas{width:100%;height:340px}.ymap-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.ic{vertical-align:-.145em;flex:none;width:1em;height:1em}.form-head{margin-bottom:10px;display:block}.card>.form-head~.form-head{margin-top:18px}.role-picker{flex-wrap:wrap;gap:10px;display:flex}.role-group{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex:220px;min-width:0;padding:10px 12px}.role-group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px;font-size:11px}.role-option{color:var(--fg);cursor:pointer;flex-direction:row;align-items:center;gap:8px;padding:3px 0;font-size:13px}.role-option input{flex:none}.role-badge{margin-right:6px}tr.row-off td{color:var(--muted)}.cost-table{min-width:1040px}.cost-table th:first-child,.cost-table td:first-child{min-width:260px}.cost-table th.num,.cost-table td.num{white-space:nowrap;width:1%}.cost-supplier{min-width:0}.cost-supplier-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}:root{--sticky-top:56px}.well-card.has-stepper{--sticky-top:calc(56px + var(--stepper-h,99px))}.table-scroll{max-height:calc(100vh - var(--sticky-top) - 88px);overflow:auto}.well-card .table-scroll{max-height:none;overflow:auto hidden}.well-card .table-scroll thead th{box-shadow:none;border-bottom:1px solid var(--border);position:static}.table-scroll thead th{z-index:2;background:var(--surface);box-shadow:inset 0 -1px 0 var(--border);border-bottom:0;position:sticky;top:0}@media print{.table-scroll{max-height:none;overflow:visible}.table-scroll thead th{box-shadow:none;border-bottom:1px solid #ddd;position:static}}.readiness{flex:100%;margin-top:2px}.readiness-head{color:var(--amber);align-items:center;gap:7px;font-size:13px;font-weight:500;display:flex}.readiness-head svg{flex:none}.readiness-list{color:var(--muted);margin:6px 0 0;padding-left:26px;font-size:13px;line-height:1.55}.readiness-list li+li{margin-top:3px}.slot-filters{border:1px solid var(--border);background:var(--surface);border-radius:999px;flex-wrap:wrap;align-items:center;gap:10px;padding:3px 10px 3px 8px;display:inline-flex}.slot-filters-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px}.slot-filters .standby-check{color:var(--muted);white-space:nowrap;flex-direction:row;align-items:center;gap:6px;font-size:12px}.slot-filters .standby-check input{cursor:pointer;width:15px;height:15px;margin:0}.code-cell{color:var(--muted);white-space:nowrap;width:1%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.cost-table tbody tr{background:var(--surface)}.cost-table th:first-child,.cost-table td:first-child{z-index:1;background:inherit;box-shadow:inset -1px 0 0 var(--border);position:sticky;left:0}.cost-table thead th:first-child{background:var(--surface);z-index:3}@media print{.cost-table th:first-child,.cost-table td:first-child{box-shadow:none;position:static}}.route{flex-wrap:wrap;gap:6px 22px;margin:0 0 12px;padding:0;list-style:none;display:flex}.route-step{align-items:flex-start;gap:8px;display:flex;position:relative}.route-step+.route-step:before{content:"";background:var(--border);width:8px;height:1px;position:absolute;top:9px;left:-14px}.route-mark{flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.route-mark svg{width:14px;height:14px;color:var(--green)}.route-bullet{border:1.5px solid var(--border);border-radius:50%;width:9px;height:9px}.route-body{flex-direction:column;line-height:1.3;display:flex}.route-title{color:var(--muted);font-size:13px}.route-actor{color:var(--muted);opacity:.8;font-size:11px}.route-current .route-bullet{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.route-current .route-title{color:var(--text);font-weight:600}.route-done .route-title{color:var(--muted)}.approval-now{margin-bottom:12px;font-size:13px;line-height:1.5}.approval-now .muted{margin-top:2px}.nav-count{background:var(--amber-bg);min-width:20px;color:var(--amber);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:12px;font-weight:600}.nav-item.active .nav-count{background:var(--surface)}.row-actions{white-space:nowrap}.row-actions .btn+.btn{margin-left:6px}.row-editing>td{background:var(--accent-bg)}.row-editing input,.row-editing select{padding:5px 8px;font-size:13px}.park-totals{flex-wrap:wrap;gap:10px;margin:12px 0 18px;display:flex}.park-totals>div{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex:120px;padding:12px 14px}.park-totals b{font-size:24px;line-height:1.2;display:block}.park-totals span{color:var(--muted);font-size:12px}.park-totals .ok{border-color:var(--green);background:var(--green-bg)}.park-totals .ok b{color:var(--green)}.park-totals .bad{border-color:var(--red);background:var(--red-bg)}.park-totals .bad b{color:var(--red)}.row-exhausted>td{background:var(--red-bg)}.notice-warn{border:1px solid var(--amber);background:var(--amber-bg);color:var(--amber);border-radius:10px;align-items:flex-start;gap:10px;margin:12px 0;padding:10px 14px;font-size:13px;display:flex}.notice-warn svg{flex:none;margin-top:2px}.btn-link{font:inherit;cursor:pointer;color:var(--accent);text-align:left;background:0 0;border:none;padding:0}.btn-link:hover{text-decoration:underline}.pager{align-items:center;gap:12px;margin-top:12px;display:flex}.row-form>label.bl-wide{flex:100%;max-width:none}.bl-body-input{resize:vertical;width:100%}.bl-title{font-weight:500}.bl-body{white-space:pre-wrap;max-width:620px;margin-top:3px;font-size:13px}.bl-status{border-color:#0000;padding:4px 8px;font-size:13px}.bl-status:focus,.bl-status:hover{border-color:var(--field-border)}.excel-bar{flex-direction:column;gap:6px;display:flex}.excel-buttons{flex-wrap:wrap;gap:8px;display:flex}.excel-btn{align-items:center;gap:6px;display:inline-flex}.excel-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.excel-legend{flex-direction:column;gap:2px;font-size:12px;line-height:1.45;display:flex}.excel-legend span{align-items:baseline;gap:6px;display:flex}.excel-panel{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex-direction:column;gap:10px;max-width:720px;margin-top:6px;padding:12px 14px;display:flex}.excel-step{align-items:flex-start;gap:10px;display:flex}.excel-step-no{background:var(--accent-bg);width:20px;height:20px;color:var(--accent);text-align:center;border-radius:50%;flex:none;font-size:12px;font-weight:600;line-height:20px}.excel-step-note{margin-top:4px;font-size:12px}.excel-file{flex-direction:column;gap:4px;font-size:13px;display:flex}.excel-file-name{align-items:center;gap:6px;margin-left:30px;font-size:13px;display:flex}.excel-result{align-items:baseline;gap:6px;font-size:13px;line-height:1.5;display:flex}.excel-report{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:10px 12px;font-size:13px}.excel-report.excel-ok{border-color:var(--green);background:var(--green-bg)}.excel-report.excel-ok .ic{color:var(--green)}.excel-report.excel-bad{border-color:var(--red);background:var(--red-bg)}.excel-report.excel-bad .ic{color:var(--red)}.excel-errors,.excel-changes{max-height:260px;margin:8px 0 0;padding-left:20px;line-height:1.5;overflow-y:auto}.excel-errors li{color:var(--red)}.excel-note{font-size:12px;line-height:1.5}
