:root{color:#172033;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:960px;min-height:100vh;background:#f5f7fb}button,input,select{font:inherit}button{border:0;border-radius:8px;cursor:pointer;background:#e7edf5;color:#172033;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;font-weight:650}button:hover{background:#dce5f0}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:#a72525;color:#fff}button.primary:hover{background:#7f1d1d}button.ghost{background:transparent;border:1px solid #d7dee8}button.danger{background:#fee2e2;color:#991b1b;width:38px;padding:0}button.reset-calculation{width:auto;padding:0 14px}input,select{width:100%;border:1px solid #cfd8e5;border-radius:8px;min-height:36px;padding:7px 10px;background:#fff;color:#172033}input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0;accent-color:#a72525}input:focus,select:focus{outline:2px solid #f0b3b3;border-color:#a72525}.app-shell{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr)}.registry-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px;border-radius:18px;color:#fff;background:radial-gradient(circle at 88% 18%,rgba(216,166,76,.38),transparent 28%),linear-gradient(135deg,#751b2b,#a72525 58%,#59203c)}.registry-hero h2{margin:6px 0 8px;font-size:30px}.registry-hero p{margin:0;color:#ffffffc7}.eyebrow{color:#f4d28b;font-size:12px;font-weight:750;letter-spacing:.12em}.registry-new{flex:0 0 auto;background:#fff!important;color:#8f2330!important}.new-calculation-panel{max-width:780px;margin:8vh auto 0}.empty-state{min-height:220px;display:grid;place-content:center;justify-items:center;gap:10px;color:#718096;text-align:center}.empty-state p{margin:0}.sidebar{background:#a72525;color:#fff;padding:18px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;min-height:64px;padding:4px 4px 16px;border-bottom:1px solid rgba(255,255,255,.22);cursor:default}.brand strong{display:block;font-size:16px;line-height:1.2}.brand span,.topbar span,.item-card span,.item-card small{color:#718096}.brand span{color:#b9c6d7;font-size:13px}.brand svg{flex:0 0 auto;opacity:.92}.sidebar nav,.sidebar-actions{display:grid;gap:8px}.sidebar button{justify-content:flex-start;color:#dfe8f4;background:transparent}.sidebar button:hover,.sidebar button.active{color:#fff;background:#7f1d1d}.sidebar-actions{margin-top:auto}.sidebar-actions .primary{background:#7f1d1d}main{padding:20px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.topbar h1{margin:0 0 4px;font-size:25px;letter-spacing:0}.topbar-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.view-stack{display:grid;gap:18px}.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px}.stat{border:1px solid #dbe3ee;background:#fff;border-radius:8px;padding:16px;min-height:92px;display:flex;flex-direction:column;justify-content:space-between}.stat span{color:#5b6778;font-size:13px}.stat strong{font-size:22px;letter-spacing:0}.stat.accent{border-color:#d79393;background:#fff3f3}.stat.warn{border-color:#efb0b0;background:#fff7f7}.sbc-stats{grid-template-columns:repeat(5,minmax(150px,1fr));margin:14px 0}.sbc-compare-panel{border-color:#efc7c7}.fgis-calculator{min-height:calc(100vh - 120px);overflow:hidden;border:1px solid var(--border, #d8e1ed);border-radius:12px;background:var(--panel, #fff)}.fgis-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;border-bottom:1px solid #e6ebf2;background:#fff}.fgis-kicker{display:block;margin-bottom:5px;color:#8f2330;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.fgis-intro h2{margin:0;color:#172033;font-size:22px;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}.fgis-intro p{max-width:720px;margin:6px 0 0;color:#667085;font-size:14px;line-height:1.5;text-wrap:pretty}.fgis-purpose{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;margin:18px 24px 0;padding:16px;border-radius:10px;color:#452b32;background:#fff8f7;box-shadow:0 0 0 1px #8f233024,0 2px 8px #41191f0a}.fgis-purpose>svg{margin-top:1px;color:#8f2330}.fgis-purpose h3{margin:0;font-size:16px;letter-spacing:-.01em;text-wrap:balance}.fgis-purpose p{max-width:920px;margin:5px 0 0;color:#694d55;font-size:13px;line-height:1.5;text-wrap:pretty}.fgis-purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.fgis-purpose-grid span{color:#634b52;font-size:12px;line-height:1.45}.fgis-purpose-grid b{display:block;margin-bottom:2px;color:#452b32}.fgis-user-guide{margin:12px 24px 0;border-radius:9px;background:#f8fafc;box-shadow:inset 0 0 0 1px #6373812b}.fgis-user-guide summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:11px 14px;color:#344054;cursor:pointer;font-size:13px;font-weight:850}.fgis-user-guide summary small{color:#8f2330;font-size:11px}.fgis-user-guide ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0;padding:0 14px 14px;counter-reset:fgis-guide;list-style:none}.fgis-user-guide li{position:relative;padding:29px 10px 10px;border-radius:7px;color:#667085;background:#fff;box-shadow:0 0 0 1px #6373811f;font-size:11px;line-height:1.45;counter-increment:fgis-guide}.fgis-user-guide li:before{position:absolute;top:9px;left:10px;color:#8f2330;content:"0" counter(fgis-guide);font-size:10px;font-weight:900;letter-spacing:.08em}.fgis-user-guide li b{color:#344054}.fgis-sync-state{display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:9px 11px;border:1px solid #d8e1ed;border-radius:8px;color:#2f6a52;background:#f7fbf9}.fgis-sync-state div{display:grid;gap:2px}.fgis-sync-state strong,.fgis-sync-state span{font-size:12px;line-height:1.25}.fgis-sync-state span{color:#667085;font-weight:650}.fgis-workbench{display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:start;min-height:calc(100vh - 218px)}.fgis-flow{display:grid;gap:0;padding:8px 24px 28px}.fgis-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:20px 0;border-bottom:1px solid #edf0f4}.fgis-step-number{display:grid;place-items:center;width:32px;height:32px;border:1px solid #e1b7bc;border-radius:50%;color:#8f2330;background:#fff7f7;font-size:11px;font-weight:850;font-variant-numeric:tabular-nums}.fgis-step-content{min-width:0}.fgis-step h3{margin:4px 0 12px;color:#172033;font-size:16px;line-height:1.2}.fgis-step-lead{margin:-5px 0 12px;color:#667085;font-size:12px;line-height:1.45}.fgis-stage-ribbon{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.fgis-stage-ribbon span{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;padding:11px 12px;border-radius:8px;background:#fff;box-shadow:0 0 0 1px #63738129,0 1px 2px #1923320a}.fgis-stage-ribbon b{color:#8f2330;font-size:12px}.fgis-stage-ribbon strong{justify-self:end;color:#172033;font-size:17px;font-variant-numeric:tabular-nums}.fgis-stage-ribbon small{grid-column:1 / -1;color:#667085;font-size:10px}.fgis-source-note{display:flex;align-items:flex-start;gap:8px;margin-top:10px;color:#35634f;font-size:11px;line-height:1.45}.fgis-source-note svg{flex:0 0 auto}.fgis-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fgis-segment button{min-height:62px;align-items:flex-start;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid #d8e1ed;color:#344054;background:#fff;text-align:left;transition:border-color .14s cubic-bezier(.23,1,.32,1),background-color .14s cubic-bezier(.23,1,.32,1),transform .12s cubic-bezier(.23,1,.32,1)}.fgis-segment button:hover{border-color:#c8a1a6;background:snow}.fgis-segment button:active{transform:scale(.96)}.fgis-segment button.active{border-color:#a72525;color:#7f1d1d;background:#fff5f5;box-shadow:inset 3px 0 #a72525}.fgis-segment small{color:#667085;font-size:12px;font-weight:650}.fgis-select-grid{display:grid;grid-template-columns:minmax(190px,.85fr) minmax(260px,1.6fr) minmax(180px,.7fr);gap:10px}.fgis-input-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px}.fgis-method-field{display:block;max-width:520px;margin-bottom:10px}.fgis-table-hint{margin:10px 0 0;color:#667085;font-size:12px;line-height:1.45}.fgis-table-choice-grid{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.4fr);gap:10px}.fgis-indicator-workbench{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);gap:12px;align-items:stretch;margin-top:14px;padding:14px;border:1px solid #d8e1ed;border-radius:8px;background:#f8fafc}.fgis-applied-row{display:grid;gap:10px;padding:12px 14px;border:1px solid #bad8ca;border-radius:7px;background:#f5fbf8}.fgis-applied-row-title{display:flex;align-items:center;gap:8px;color:#285f49;font-size:13px}.fgis-applied-row dl{display:grid;gap:6px;margin:0}.fgis-applied-row dl div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px}.fgis-applied-row dt,.fgis-applied-row dd{margin:0;font-size:12px;line-height:1.35}.fgis-applied-row dt{color:#667085;font-weight:750}.fgis-applied-row dd{color:#264d3d;font-weight:800}.fgis-method-state{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;border:1px solid #d8e1ed;border-radius:8px;color:#475467;background:#f8fafc}.fgis-method-state.warning{border-color:#e7c98d;color:#714d13;background:#fffaf0}.fgis-method-state.compact{height:100%;margin:0}.fgis-method-state svg{flex:0 0 auto;margin-top:1px}.fgis-method-state strong{display:block;margin-bottom:3px;color:inherit;font-size:13px}.fgis-method-state p{margin:0;color:inherit;font-size:12px;line-height:1.45}.fgis-manual-values{margin-top:10px;border:0}.fgis-fixed-scope,.fgis-fixed-document{display:flex;align-items:center;gap:11px;min-height:48px;padding:11px 13px;border:1px solid #d8e1ed;border-radius:8px;background:#f8fafc}.fgis-fixed-scope svg{flex:0 0 auto;color:#8f2330}.fgis-fixed-scope div,.fgis-fixed-document{flex-direction:column;align-items:flex-start;gap:2px}.fgis-fixed-scope strong,.fgis-fixed-document strong{color:#263142;font-size:13px}.fgis-fixed-scope span,.fgis-fixed-document span,.fgis-fixed-document small{color:#667085;font-size:11px;line-height:1.4}.fgis-manual-values summary{color:#667085;cursor:pointer;font-size:12px;font-weight:750}.fgis-manual-values .fgis-input-grid{margin-top:10px;grid-template-columns:repeat(2,minmax(180px,1fr))}.fgis-advanced{margin:16px 0 0 54px;border:1px solid #d8e1ed;border-radius:8px;background:#f8fafc}.fgis-advanced summary{min-height:42px;padding:11px 13px;color:#475467;cursor:pointer;font-size:13px;font-weight:800}.fgis-advanced[open] summary{border-bottom:1px solid #dfe5ed}.fgis-condition-list{display:grid;gap:0}.fgis-condition-item{display:grid;gap:10px;padding:14px;border-bottom:1px solid #e3e8ef}.fgis-condition-item:last-child{border-bottom:0}.fgis-condition-title{display:grid;gap:2px}.fgis-condition-title strong{color:#344054;font-size:13px}.fgis-condition-title span{color:#667085;font-size:11px;line-height:1.4}.fgis-option-stack{display:grid;gap:7px;padding-left:8px}.fgis-option-child{display:grid;gap:10px;margin-left:30px;padding:11px 12px;border-left:2px solid #c9d2dd;background:#fff}.fgis-option-child>strong{color:#344054;font-size:12px}.fgis-option-child>small{color:#667085;font-size:11px}.fgis-condition-fields,.fgis-structure-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fgis-structure-block{margin:16px 0 0 54px;overflow:hidden;border:1px solid #d8e1ed;border-radius:9px;background:#fff}.fgis-structure-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px}.fgis-structure-heading h3{margin:3px 0 4px;color:#172033;font-size:16px}.fgis-structure-heading p{max-width:650px;margin:0;color:#667085;font-size:11px;line-height:1.45}.fgis-structure-heading>.toggle{flex:0 0 auto}.fgis-structure-settings{padding:14px 16px 16px;border-top:1px solid #edf0f4}.fgis-complex-basket{margin:0 16px 16px;overflow:hidden;border:1px solid #d8e1ed;border-radius:9px;background:#fff;box-shadow:0 1px 2px #1720330a}.fgis-complex-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px}.fgis-complex-heading h4{margin:3px 0 4px;color:#172033;font-size:17px}.fgis-complex-heading p{max-width:680px;margin:0;color:#667085;font-size:12px;line-height:1.45}.fgis-complex-add{flex:0 0 auto}.fgis-complex-draft,.fgis-complex-draft-error{margin:0 16px 14px;padding:10px 12px;border:1px solid #e1e6ed;border-radius:7px;background:#f8fafc}.fgis-complex-draft{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;color:#667085;font-size:11px}.fgis-complex-draft strong{overflow:hidden;color:#344054;text-overflow:ellipsis;white-space:nowrap}.fgis-complex-draft b{color:#172033;font-size:13px;font-variant-numeric:tabular-nums}.fgis-complex-draft-error{color:#8f2330;font-size:12px;line-height:1.4}.fgis-complex-scroll{overflow-x:auto;border-top:1px solid #e7ecf2}.fgis-complex-table{width:100%;min-width:940px;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.fgis-complex-table th,.fgis-complex-table td{padding:10px 12px;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4;text-align:right;vertical-align:middle;white-space:nowrap}.fgis-complex-table thead th{color:#667085;background:#f6f8fb;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.fgis-complex-table tbody th{min-width:270px;background:#fff;color:#344054;text-align:left;white-space:normal}.fgis-complex-table tbody th b,.fgis-complex-table tbody td>b,.fgis-complex-table tbody td>span{display:block}.fgis-complex-table tbody th b{color:#344054}.fgis-complex-table tbody th span,.fgis-complex-table tbody td>span,.fgis-complex-table tbody td small{color:#667085;font-size:10px}.fgis-complex-table tbody th em{display:block;margin-top:3px;color:#8f2330;font-size:10px;font-style:normal}.fgis-complex-table tbody tr:hover th,.fgis-complex-table tbody tr:hover td,.fgis-complex-table tbody tr.is-editing th,.fgis-complex-table tbody tr.is-editing td{background:#f8fafc}.fgis-complex-table tfoot th,.fgis-complex-table tfoot td{color:#172033;background:#f6f8fb;font-weight:850}.fgis-complex-table tfoot th{text-align:left}.fgis-pzu-control{display:inline-flex;align-items:center;gap:4px}.fgis-pzu-control span{color:#667085;font-size:10px}.fgis-pzu-control input{width:68px;min-height:32px;padding:5px 7px;border:1px solid #cfd8e4;border-radius:6px;background:#fff;color:#172033;text-align:right;font:inherit}.fgis-row-actions{display:flex;justify-content:flex-end;gap:4px}.fgis-row-actions button{display:inline-grid;width:32px;height:32px;padding:0;place-items:center;border:1px solid #d8e1ed;border-radius:6px;background:#fff;color:#667085;cursor:pointer}.fgis-row-actions button:hover{border-color:#ba8087;color:#8f2330}.fgis-passport{position:sticky;top:20px;display:grid;gap:14px;min-height:calc(100vh - 218px);padding:22px;border-left:1px solid #e1e6ed;background:#f8fafc}.fgis-result{padding-bottom:16px;border-bottom:1px solid #dfe5ed}.fgis-result span,.fgis-result small{display:block;color:#667085;font-size:12px;font-weight:750}.fgis-result strong{display:block;margin:5px 0;color:#7f1d1d;font-size:29px;line-height:1.12;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.fgis-result .fgis-result-pending{max-width:260px;color:#714d13;font-size:21px;line-height:1.2}.fgis-formula{display:grid;gap:7px}.fgis-formula>span{color:#667085;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.fgis-formula code{overflow:auto;padding:9px 10px;border:1px solid #dfe5ed;border-radius:7px;color:#344054;background:#fff;font-size:12px;font-variant-numeric:tabular-nums}.fgis-calculation-steps{display:grid;gap:10px;margin:0;padding:0;list-style:none}.fgis-calculation-steps li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start}.fgis-calculation-steps li>i{display:grid;place-items:center;width:22px;height:22px;border:1px solid #d8e1ed;border-radius:50%;color:#7f1d1d;background:#fff;font-size:10px;font-style:normal;font-weight:850;font-variant-numeric:tabular-nums}.fgis-calculation-steps li>div{display:grid;gap:4px;min-width:0}.fgis-calculation-steps strong,.fgis-calculation-steps small{color:#344054;font-size:12px;line-height:1.35}.fgis-calculation-steps small{color:#667085;font-weight:750}.fgis-calculation-steps code{white-space:normal}.fgis-methodology{overflow:hidden;border:1px solid #d8e1ed;border-radius:8px;background:#fff}.fgis-methodology summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:10px 12px;color:#344054;cursor:pointer;font-size:12px;font-weight:850}.fgis-methodology summary small{color:#8f2330;font-size:10px;font-weight:850;text-transform:uppercase}.fgis-methodology .when-open,.fgis-methodology[open] .when-closed{display:none}.fgis-methodology[open] .when-open{display:inline}.fgis-methodology[open] summary{border-bottom:1px solid #dfe5ed}.fgis-methodology-body{display:grid;gap:12px;padding:12px;color:#475467;font-size:12px;line-height:1.5}.fgis-methodology-body p,.fgis-methodology-body ol,.fgis-glossary{margin:0}.fgis-methodology-body ol{display:grid;gap:7px;padding-left:20px}.fgis-methodology-warning{padding:8px 10px;border-left:3px solid #b7791f;color:#714d13;background:#fffaf0}.fgis-glossary{display:grid;gap:0}.fgis-glossary div{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;padding:6px 0;border-top:1px solid #edf0f4}.fgis-glossary dt,.fgis-glossary dd{margin:0}.fgis-glossary dt{color:#7f1d1d;font-weight:850}.fgis-source-passport{padding:14px;border:1px solid #e1c4c7;border-radius:9px;background:snow}.fgis-passport-title{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:#7f1d1d;font-size:13px;font-weight:850}.fgis-source-passport dl{display:grid;gap:0;margin:0 0 12px}.fgis-source-passport dl div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px solid #f0e5e6;font-size:12px;line-height:1.35}.fgis-source-passport dt{color:#7b6570;font-weight:700}.fgis-source-passport dd{margin:0;color:#34282d;font-weight:700;overflow-wrap:anywhere}.fgis-source-passport a{display:inline-flex;align-items:center;gap:6px;color:#8f2330;font-size:12px;font-weight:850;text-decoration-thickness:1px;text-underline-offset:3px}.fgis-compare{width:100%;min-height:44px}.fgis-digest{margin:-6px 0 0;color:#98a2b3;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;text-align:center}.fgis-output{margin:0 24px 24px;border-radius:11px;background:#fff;box-shadow:0 0 0 1px #63738129,0 4px 18px #1923320d}.fgis-output-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:18px 20px 14px}.fgis-output-heading .fgis-kicker{display:inline-flex;align-items:center;gap:6px}.fgis-output-heading h3{margin:0;color:#172033;font-size:21px;letter-spacing:-.02em;text-wrap:balance}.fgis-output-heading p{margin:5px 0 0;color:#667085;font-size:12px;line-height:1.45;text-wrap:pretty}.fgis-output-actions{display:flex;align-items:flex-end;gap:14px}.fgis-output-total{display:grid;flex:0 0 auto;justify-items:end;gap:2px}.fgis-output-total span{color:#667085;font-size:11px;font-weight:750}.fgis-output-total strong{color:#7f1d1d;font-size:24px;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.fgis-export{min-height:42px;transition:transform .12s cubic-bezier(.23,1,.32,1),background-color .14s cubic-bezier(.23,1,.32,1)}.fgis-export:active{transform:scale(.96)}.fgis-stage-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 20px 14px;overflow:hidden;border-radius:8px;background:#e8edf3;box-shadow:0 0 0 1px #6373811f}.fgis-stage-totals div{display:grid;gap:4px;padding:12px 14px;background:#f8fafc}.fgis-stage-totals span{color:#667085;font-size:11px;font-weight:700}.fgis-stage-totals strong{color:#172033;font-size:17px;font-variant-numeric:tabular-nums}.fgis-factor-status,.fgis-bim-match,.fgis-conditioning-result{display:grid;gap:4px;padding:12px 14px;border:1px solid #dfe5ec;border-radius:8px;background:#f8fafc}.fgis-factor-status strong,.fgis-bim-match strong,.fgis-conditioning-result strong{color:#263142;font-size:13px}.fgis-factor-status span,.fgis-bim-match span,.fgis-conditioning-result span{color:#667085;font-size:11px;font-weight:750}.fgis-factor-status small,.fgis-bim-match small,.fgis-conditioning-result small{color:#667085;font-size:11px;line-height:1.45}.fgis-factor-status.is-active{border-color:#bfd8c8;background:#f4faf6}.fgis-factor-status.is-active strong{color:#277247}.fgis-bim-match{border-left:3px solid #8f2330;background:#fbf8f8}.fgis-conditioning-input{display:grid;gap:10px}.fgis-conditioning-result strong{font-variant-numeric:tabular-nums}.fgis-bim-impact{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:18px;margin:0 20px 14px;padding:12px 14px;border:1px solid #e1d4d6;border-radius:8px;background:#fbf8f8}.fgis-bim-impact div{display:grid;gap:3px}.fgis-bim-impact span{color:#667085;font-size:11px;font-weight:750}.fgis-bim-impact strong{color:#7f1d1d;font-size:18px;font-variant-numeric:tabular-nums}.fgis-bim-impact p{align-self:center;margin:0;color:#5f6877;font-size:11px;line-height:1.5}.fgis-breakdown-scroll{overflow-x:auto;border-top:1px solid #e7ecf2;border-bottom:1px solid #e7ecf2}.fgis-breakdown-table{width:100%;min-width:900px;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.fgis-breakdown-table th,.fgis-breakdown-table td{padding:9px 12px;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4;text-align:right;white-space:nowrap}.fgis-breakdown-table thead th{color:#475467;background:#f6f8fb;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.fgis-breakdown-table tbody th,.fgis-breakdown-table tfoot th{min-width:270px;text-align:left;white-space:normal}.fgis-breakdown-table tbody th b{color:#667085}.fgis-breakdown-table tbody th i{margin:0 7px;color:#98a2b3;font-style:normal;font-weight:500}.fgis-breakdown-table tbody th span{color:#344054;font-weight:650}.fgis-breakdown-table tbody tr:hover td,.fgis-breakdown-table tbody tr:hover th{background:#f8fafc}.fgis-breakdown-table tfoot th,.fgis-breakdown-table tfoot td{color:#172033;background:#f6f8fb;font-weight:850}.fgis-breakdown-table .fgis-unallocated th,.fgis-breakdown-table .fgis-unallocated td{color:#714d13;background:#fffaf0}.fgis-output-note{margin:0;padding:12px 20px 14px;color:#667085;font-size:11px;line-height:1.45}.fgis-contact{padding:0 24px 24px;color:#667085;font-size:12px;text-align:center}.fgis-contact a{color:#8f2330;font-weight:850;text-underline-offset:3px}.fgis-empty{display:grid;min-height:240px;place-items:center;color:#667085}@media(max-width:1220px){.fgis-workbench{grid-template-columns:minmax(0,1fr) 320px}.fgis-select-grid,.fgis-input-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.fgis-indicator-workbench{grid-template-columns:1fr}.fgis-user-guide ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.fgis-segment button{transition:none}}.public-pir-shell{min-height:100vh;background:#f5f7fb}.public-pir-body{min-width:320px}.public-pir-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:0 28px;border-bottom:1px solid #dfe5ed;background:#fff}.public-pir-brand{display:flex;align-items:baseline;gap:10px;color:#172033;text-decoration:none}.public-pir-brand strong{color:#8f2330;font-size:18px;letter-spacing:.05em}.public-pir-brand span{color:#667085;font-size:13px;font-weight:750}.public-pir-header nav{display:flex;gap:18px}.public-pir-header nav a{color:#667085;font-size:13px;font-weight:750;text-underline-offset:3px}.public-pir-main{max-width:1440px;margin:0 auto;padding:24px 28px}.public-pir-footer{max-width:1440px;margin:0 auto;padding:0 28px 24px;color:#667085;font-size:12px;line-height:1.5}@media(max-width:1080px){.public-pir-main{padding:18px}.public-pir-shell .fgis-workbench{grid-template-columns:1fr}.public-pir-shell .fgis-passport{position:static;min-height:0;border-top:1px solid #e1e6ed;border-left:0}}@media(max-width:720px){.public-pir-header{align-items:flex-start;flex-direction:column;gap:10px;min-height:0;padding:16px}.public-pir-brand{align-items:flex-start;flex-direction:column;gap:2px}.public-pir-header nav{flex-wrap:wrap;gap:8px 16px}.public-pir-main{padding:12px}.public-pir-footer{padding:0 16px 20px}.public-pir-shell .fgis-intro{align-items:flex-start;flex-direction:column;padding:18px}.public-pir-shell .fgis-purpose{grid-template-columns:1fr;margin:12px 16px 0}.public-pir-shell .fgis-purpose-grid,.public-pir-shell .fgis-user-guide ol,.public-pir-shell .fgis-stage-ribbon,.public-pir-shell .fgis-stage-totals{grid-template-columns:1fr}.public-pir-shell .fgis-user-guide{margin:10px 16px 0}.public-pir-shell .fgis-user-guide summary{align-items:flex-start;flex-direction:column;gap:2px}.public-pir-shell .fgis-output{margin:0 12px 18px}.public-pir-shell .fgis-output-heading{align-items:flex-start;flex-direction:column;gap:12px}.public-pir-shell .fgis-output-actions{width:100%;align-items:stretch;flex-direction:column}.public-pir-shell .fgis-output-total{justify-items:start}.public-pir-shell .fgis-export{width:100%}.public-pir-shell .fgis-flow{padding:4px 16px 20px}.public-pir-shell .fgis-step{grid-template-columns:1fr;gap:4px}.public-pir-shell .fgis-segment,.public-pir-shell .fgis-select-grid,.public-pir-shell .fgis-input-grid,.public-pir-shell .fgis-table-choice-grid,.public-pir-shell .fgis-indicator-workbench,.public-pir-shell .fgis-condition-fields,.public-pir-shell .fgis-structure-settings,.public-pir-shell .fgis-bim-impact{grid-template-columns:1fr}.public-pir-shell .fgis-advanced,.public-pir-shell .fgis-structure-block{margin-left:0}.public-pir-shell .fgis-structure-heading{align-items:flex-start;flex-direction:column}.public-pir-shell .fgis-structure-heading>.toggle{width:100%}.public-pir-shell .fgis-option-child{margin-left:20px}.public-pir-shell .fgis-complex-heading{flex-direction:column}.public-pir-shell .fgis-complex-add{width:100%}.public-pir-shell .fgis-complex-draft{grid-template-columns:1fr}.public-pir-shell .fgis-passport{padding:18px}.public-pir-shell .fgis-result strong{font-size:25px}}.pir-document-switcher{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:14px;padding:22px 24px;border:1px solid #d8e1ed;border-bottom:3px solid #8f2330;background:#fff}.pir-document-switcher h1{margin:4px 0 5px;color:#172033;font-size:28px;letter-spacing:-.025em}.pir-document-switcher p{margin:0;color:#667085;font-size:13px}.pir-document-tabs{display:grid;grid-template-columns:repeat(4,minmax(132px,1fr));gap:1px;overflow:hidden;border:1px solid #d8e1ed;background:#d8e1ed}.pir-document-tabs button{justify-content:flex-start;min-height:56px;border-radius:0;padding:8px 13px;background:#f8fafc}.pir-document-tabs button:hover{background:#fff}.pir-document-tabs button.active{color:#fff;background:#8f2330}.pir-document-tabs button>span{display:grid;gap:1px;text-align:left}.pir-document-tabs button b{font-size:15px}.pir-document-tabs button small{color:#667085;font-size:10px;font-weight:750}.pir-document-tabs button.active small{color:#ffffffc2}.pir-passport-editor{margin-bottom:14px;border:1px solid #d8e1ed;background:#fff}.pir-passport-editor summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 16px;color:#344054;cursor:pointer;font-weight:850}.pir-passport-editor summary small{color:#8f2330;font-size:11px;text-transform:uppercase}.pir-passport-editor[open] summary{border-bottom:1px solid #e4e9ef}.pir-passport-grid,.pir-settings-grid,.pir-work-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.pir-passport-grid{padding:16px}.pir-span-2{grid-column:span 2}.pir-period-fields{display:grid;grid-template-columns:minmax(130px,1fr) minmax(96px,.65fr);gap:8px}.pir-form-panel,.pir-707-calculator{overflow:hidden;border:1px solid #d8e1ed;background:#fff;box-shadow:0 7px 24px #1720330f}.pir-current-form{display:flex;align-items:baseline;gap:12px;padding:11px 22px;border-bottom:1px solid #d8e1ed;background:#fbf8f8}.pir-current-form span{color:#8f2330;font-size:12px;font-weight:900;text-transform:uppercase}.pir-current-form b{color:#475467;font-size:12px}.pir-form-panel .fgis-calculator{border:0;border-radius:0;box-shadow:none}.pir-form-panel>.pir-707-calculator{border-width:1px 0 0;box-shadow:none}.pir-form-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:26px 28px 20px;border-bottom:1px solid #e4e9ef}.pir-form-intro h2{margin:5px 0;color:#172033;font-size:27px;letter-spacing:-.025em}.pir-form-intro p{margin:0;color:#667085}.pir-form-badge{display:flex;align-items:center;gap:9px;padding:10px 12px;border-left:3px solid #8f2330;background:#fbf8f8;color:#667085;font-size:12px;font-weight:750}.pir-form-badge b{color:#7f1d1d;font-size:18px;font-variant-numeric:tabular-nums}.pir-purpose-compact{margin-top:14px}.pir-labor-settings{margin:16px 24px;border:1px solid #d8e1ed;background:#fff}.pir-settings-heading,.pir-labor-list-heading>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start}.pir-settings-heading{padding:16px;border-bottom:1px solid #e4e9ef;background:#f8fafc}.pir-settings-heading h3,.pir-labor-list-heading h3{margin:0 0 3px;color:#172033;font-size:17px}.pir-settings-heading p,.pir-labor-list-heading p{margin:0;color:#667085;font-size:12px}.pir-settings-grid{padding:16px}.pir-number-affix{display:grid;grid-template-columns:minmax(0,1fr) auto}.pir-number-affix input{border-radius:6px 0 0 6px}.pir-number-affix b{display:grid;min-width:68px;padding:0 10px;border:1px solid #cfd8e5;border-left:0;border-radius:0 6px 6px 0;place-items:center;color:#667085;background:#f8fafc;font-size:11px}.pir-fixed-rules{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e4e9ef;background:#fbf8f8}.pir-fixed-rules span{padding:10px 13px;border-right:1px solid #e4e9ef;color:#667085;font-size:11px}.pir-fixed-rules span:last-child{border-right:0}.pir-fixed-rules b{margin-right:4px;color:#7f1d1d;font-size:14px}.pir-salary-explanation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:1px;border-bottom:1px solid #e4e9ef;background:#e4e9ef}.pir-salary-explanation>div{display:grid;gap:4px;padding:13px 14px;background:#fbfcfe}.pir-salary-explanation b{color:#344054;font-size:11px}.pir-salary-explanation span{color:#667085;font-size:11px;line-height:1.45}.pir-salary-explanation a{display:grid;min-width:150px;padding:13px 15px;place-content:center;color:#8f2330;background:#fff;font-size:11px;font-weight:850;text-align:center}.pir-salary-explanation a:hover{background:snow}.pir-labor-list-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 24px}.pir-labor-list{display:grid;gap:14px;padding:0 24px 24px}.pir-role-note{display:grid;gap:3px;margin:0 24px 12px;padding:11px 13px;border-left:3px solid #8f2330;color:#667085;background:#fbf8f8;font-size:11px;line-height:1.45}.pir-role-note b{color:#5f2630}.pir-labor-work{overflow:hidden;border:1px solid #d8e1ed;background:#fff}.pir-labor-work-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-bottom:1px solid #e4e9ef;background:#f8fafc}.pir-labor-work-heading h4{margin:3px 0 0;color:#172033;font-size:16px}.pir-work-total{display:grid;grid-template-columns:auto auto 34px;align-items:center;gap:9px}.pir-work-total span{color:#667085;font-size:10px;font-weight:800;text-transform:uppercase}.pir-work-total strong{color:#7f1d1d;font-size:18px;font-variant-numeric:tabular-nums}.pir-icon-button{display:inline-grid;width:34px;min-height:34px;padding:0;border:1px solid #d8e1ed;border-radius:5px;color:#667085;background:#fff;place-items:center}.pir-icon-button:hover{border-color:#ba8087;color:#8f2330;background:snow}.pir-work-fields{padding:16px}.pir-labor-table-scroll,.pir-summary-table-scroll{overflow-x:auto;border-top:1px solid #e4e9ef;border-bottom:1px solid #e4e9ef}.pir-labor-table,.pir-summary-table{width:100%;border-collapse:collapse;color:#344054;font-size:12px;font-variant-numeric:tabular-nums}.pir-labor-table,.pir-summary-table{min-width:980px}.pir-labor-table th,.pir-labor-table td,.pir-summary-table th,.pir-summary-table td{padding:9px 11px;border-right:1px solid #e8edf2;border-bottom:1px solid #e8edf2;text-align:right;vertical-align:middle}.pir-labor-table thead th,.pir-summary-table thead th{color:#fff;background:#8f2330;font-size:10px;letter-spacing:.03em;text-transform:uppercase}.pir-labor-table thead th:first-child,.pir-summary-table thead th:nth-child(3),.pir-summary-table thead th:nth-child(4),.pir-summary-table thead th:nth-child(5){text-align:left}.pir-labor-table td:first-child{width:48%;text-align:left}.pir-labor-table input{width:86px;min-height:34px;text-align:right}.pir-labor-table select{min-width:380px;min-height:34px}.pir-labor-table td small{display:block;color:#667085;font-size:10px}.pir-labor-table .pir-qualification-note{max-width:380px;margin-top:4px;color:#7b8492;line-height:1.35}.pir-labor-table tfoot th,.pir-labor-table tfoot td,.pir-summary-table tfoot th,.pir-summary-table tfoot td{color:#172033;background:#f8fafc;font-weight:850}.pir-summary-table tbody th{min-width:250px;color:#344054;background:#fff;text-align:left}.pir-summary-table tbody th small{display:block;margin-top:2px;color:#8f2330;font-size:10px;font-weight:700}.pir-summary-table tbody td:nth-child(4),.pir-summary-table tbody td:nth-child(5){min-width:220px;text-align:left}.pir-summary-table tbody tr:not(.is-included){opacity:.62}.pir-summary-table tbody tr.is-included{background:#fffdfd}.pir-summary-table tbody tr.has-warning.is-included{background:#fffaf0}.pir-row-warning{display:block;margin-top:4px;color:#8a5a14;font-size:10px;font-weight:750}.pir-summary-check{display:inline-grid;min-width:40px;min-height:40px;place-items:center;cursor:pointer}.pir-summary-check input{width:18px;height:18px;accent-color:#8f2330}.pir-work-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px}.pir-work-warning,.pir-work-valid{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:750}.pir-work-warning{color:#8a5a14}.pir-work-valid{color:#277247}.pir-common-warning{display:flex;align-items:center;gap:8px;margin:0 24px 18px;padding:11px 13px;border-left:3px solid #b7791f;color:#714d13;background:#fffaf0;font-size:12px;font-weight:750}.pir-empty-list{display:grid;min-height:140px;place-content:center;justify-items:center;gap:5px;color:#667085;text-align:center}.pir-empty-list b{color:#344054}.pir-cost-chain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(180px,1.15fr);gap:1px;border-bottom:1px solid #e4e9ef;background:#e4e9ef}.pir-cost-chain>div{display:grid;gap:2px;min-height:88px;padding:12px 13px;align-content:center;background:#fbfcfe}.pir-cost-chain small{color:#667085;font-size:10px;font-weight:800;text-transform:uppercase}.pir-cost-chain b{color:#344054;font-size:17px;font-variant-numeric:tabular-nums}.pir-cost-chain span{color:#7b8492;font-size:10px;line-height:1.35}.pir-cost-chain .pir-cost-chain-total{border-left:3px solid #8f2330;background:#fbf8f8}.pir-cost-chain .pir-cost-chain-total b{color:#7f1d1d}.pir-travel-chain{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(200px,1.15fr)}.pir-travel-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.pir-form-result{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(360px,1.3fr) auto;align-items:center;gap:22px;padding:20px 24px;border-top:3px solid #8f2330;background:#fbf8f8}.pir-form-result h3{margin:3px 0;color:#7f1d1d;font-size:28px;font-variant-numeric:tabular-nums}.pir-form-result p{margin:0;color:#667085;font-size:12px}.pir-result-formula{display:flex;align-items:flex-start;gap:9px;color:#5f6877;font-size:12px;line-height:1.5}.pir-result-formula svg{flex:0 0 auto;color:#8f2330}.pir-summary-table-scroll{margin:18px 24px;border:1px solid #d8e1ed}.pir-manual-estimate{margin:0 24px 20px;border:1px solid #d8e1ed;background:#fff}.pir-manual-estimate summary{display:flex;align-items:center;gap:7px;padding:12px 14px;color:#8f2330;cursor:pointer;font-size:12px;font-weight:850}.pir-manual-estimate[open] summary{border-bottom:1px solid #e4e9ef}.pir-manual-list{display:grid;gap:12px;padding:14px}.pir-manual-row{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;padding-bottom:12px;border-bottom:1px solid #e4e9ef}@media(max-width:1000px){.pir-document-switcher{align-items:stretch;flex-direction:column}.pir-document-tabs{width:100%}.pir-salary-explanation,.pir-cost-chain{grid-template-columns:repeat(2,minmax(0,1fr))}.pir-form-result{grid-template-columns:1fr}.pir-form-result .fgis-export{width:100%}.pir-manual-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.pir-document-switcher{padding:18px 16px}.pir-document-tabs{grid-template-columns:1fr}.pir-document-tabs button{min-height:48px}.pir-passport-grid,.pir-settings-grid,.pir-work-fields,.pir-fixed-rules,.pir-manual-row,.pir-salary-explanation,.pir-cost-chain,.pir-travel-fields{grid-template-columns:1fr}.pir-span-2{grid-column:auto}.pir-form-intro{flex-direction:column;padding:20px 16px}.pir-labor-settings{margin:14px 12px}.pir-labor-list-heading{align-items:stretch;flex-direction:column;padding:12px}.pir-labor-list{padding:0 12px 14px}.pir-role-note{margin-right:12px;margin-left:12px}.pir-labor-work-heading{align-items:flex-start;flex-direction:column}.pir-work-total{width:100%;grid-template-columns:auto 1fr 34px}.pir-work-total strong{text-align:right}.pir-work-footer{align-items:flex-start;flex-direction:column}.pir-summary-table-scroll,.pir-manual-estimate{margin-right:12px;margin-left:12px}.pir-form-result{padding:18px 16px}}.method-note{margin:0 0 16px;border:1px solid #ead1d1;border-radius:8px;background:#fff7f7;color:#5f2d2d;padding:12px 14px;line-height:1.5}.panel{border:1px solid #dbe3ee;background:#fff;border-radius:8px;padding:14px}.panel.full{min-height:calc(100vh - 120px)}.panel-heading,.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-heading h2{margin:0;font-size:18px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.subsection-title{margin:16px 0 8px;color:#5b6778;font-size:13px;font-weight:800;text-transform:uppercase}.bulk-controls,.rates-multiplier{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:12px;align-items:end}.bulk-controls>div,.rates-multiplier{border:1px solid #dbe3ee;border-radius:8px;padding:10px;background:#f8fafc}.rates-multiplier{grid-template-columns:minmax(220px,260px) minmax(220px,260px) 1fr;margin-bottom:12px}.rates-multiplier span{color:#5b6778;font-size:13px}.field{display:grid;gap:6px;color:#5b6778;font-size:13px;font-weight:650}.input-affix{display:flex;align-items:center;gap:8px}.input-affix b{min-width:56px;color:#a72525}.field-hint{color:#7c8798;font-size:11px;font-weight:600;line-height:1.4;text-wrap:pretty}.toggle-grid{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:10px}.toggle{display:inline-flex;align-items:center;gap:9px;color:#263445;font-weight:600;min-height:32px}.toggle input{width:18px;height:18px;accent-color:#a72525}.source-bars{display:grid;gap:10px}.source-row{display:grid;grid-template-columns:120px 1fr 170px;align-items:center;gap:14px}.source-row div{height:10px;background:#edf2f7;border-radius:999px;overflow:hidden}.source-row i{display:block;height:100%;background:#a72525}.warning-panel{display:grid;gap:8px;border-color:#f8c77e;background:#fffaf0}.warning-panel .panel-heading{margin-bottom:0}.warning-panel span{color:#92400e;font-weight:700}.table-toolbar{justify-content:flex-start;flex-wrap:wrap}.panel-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.table-toolbar>select{width:180px}.preset-create{display:grid;grid-template-columns:minmax(180px,260px) auto;gap:8px;align-items:center}.search{display:flex;align-items:center;gap:8px;width:360px;border:1px solid #cfd8e5;border-radius:8px;padding:0 10px;background:#fff}.search input{border:0;padding-left:0}.search input:focus{outline:0}.table-wrap{overflow:auto;border:1px solid #dbe3ee;border-radius:8px;max-height:calc(100vh - 192px)}.rd-picker{border:1px solid #dbe3ee;border-radius:8px;background:#f8fafc;padding:10px;margin-bottom:12px;display:grid;gap:10px}.rd-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;max-height:180px;overflow:auto}.rd-picker-actions{display:flex;align-items:center;gap:10px}.rd-picker-actions span{color:#5b6778;font-weight:700}.rd-picker-item{display:grid;grid-template-columns:18px 56px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;background:#fff;border:1px solid #dbe3ee;border-radius:8px;padding:8px 10px}.rd-picker-item input{width:16px;height:16px;accent-color:#a72525}.rd-picker-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5b6778}table{width:100%;border-collapse:collapse;font-size:12px}th{position:sticky;top:0;z-index:1;background:#a72525;color:#fff;text-align:left;padding:8px;white-space:nowrap}.header-filter{position:relative}.header-filter-button{min-height:24px;width:100%;padding:0;color:#fff;background:transparent;justify-content:space-between;border-radius:4px;font-size:12px;gap:8px}.header-filter-button:hover,.header-filter-button.active{background:#ffffff24}.header-filter-button b{color:#ffd6d6;font-size:13px}.header-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:30;width:230px;display:grid;gap:8px;padding:10px;border:1px solid #cfd8e5;border-radius:8px;background:#fff;color:#172033;box-shadow:0 18px 42px #0f172a2e}.header-menu button{min-height:32px;justify-content:flex-start;font-size:12px}.header-menu input{min-height:32px;font-size:12px}td{border-bottom:1px solid #e7edf5;padding:6px;vertical-align:top;min-width:72px}tr.row-active{background:#f1fbf9}td input,td select{min-height:30px;padding:4px 7px}td input[type=checkbox],th input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0}.select-col{width:52px;min-width:52px;text-align:center;vertical-align:middle}td input:disabled{color:#718096;background:#f1f5f9}.cell-toggles{display:flex;gap:8px}.cell-toggles .toggle{min-height:24px;gap:4px}.cell-toggles .toggle input{width:16px;height:16px}.preset-toggles{width:190px;display:grid;grid-template-columns:repeat(2,minmax(88px,1fr));gap:4px 8px}.preset-toggles .toggle{font-size:12px;min-height:24px;gap:5px}.preset-toggles.compact{grid-template-columns:repeat(3,minmax(58px,1fr));width:250px}.preset-toggles .toggle input{width:15px;height:15px}.warn-text{color:#b45309;display:block;margin-top:4px}.line-name{min-width:320px;max-width:520px;white-space:normal;line-height:1.35;font-weight:650}.group-pill{display:inline-flex;min-width:64px;justify-content:center;border-radius:999px;padding:4px 10px;color:#7f1d1d;background:#fde8e8;font-weight:800}.line-comment{min-width:160px;max-width:260px;color:#5b6778;white-space:normal;line-height:1.35}.muted-cell{display:inline-flex;align-items:center;min-height:30px;color:var(--subtle);font-weight:800}.tiny-button{min-height:30px;width:30px;padding:0;border:1px solid #cfd8e5;background:#fff;color:var(--brand-strong);font-size:18px;line-height:1}.comment-row td{background:#fbfdff;border-bottom-color:#d8e1ed}.comment-row input{width:100%}.price-cell{min-width:130px;font-weight:800;background:linear-gradient(90deg,rgba(167,37,37,.2) var(--price-ratio),transparent var(--price-ratio)),#fff}.rates td:nth-child(1){font-weight:700;color:#a72525}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.item-card{border:1px solid #dbe3ee;border-radius:8px;padding:16px;display:grid;gap:10px;background:#fff}.item-card h3,.item-card p{margin:0}.item-card strong{font-size:20px}.item-actions{display:flex;gap:8px;flex-wrap:wrap}.file-button{min-height:38px;display:inline-flex;align-items:center;gap:8px;border-radius:8px;padding:0 14px;background:#e7edf5;font-weight:650;cursor:pointer}.file-button input{display:none}.prikinator{display:grid;gap:18px}.prikinator-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:18px;align-items:stretch;border:1px solid #ead1d1;border-radius:8px;padding:18px;background:linear-gradient(135deg,rgba(167,37,37,.08),transparent 46%),snow}.prikinator-kicker{color:var(--brand);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.prikinator-hero h2{margin:4px 0 8px;font-size:34px;line-height:1.05}.prikinator-hero p,.prikinator-dialog span,.prikinator-source span,.prikinator-source small{color:var(--muted)}.prikinator-hero p{max-width:820px;margin:0;font-size:15px}.prikinator-dialog{position:relative;display:grid;gap:8px;align-content:center;min-height:132px;border:1px solid #d8e1ed;border-radius:8px;padding:16px 18px;background:#fff;box-shadow:0 16px 36px #0f172a14}.prikinator-dialog:before{content:"";position:absolute;left:-10px;top:34px;width:18px;height:18px;border-left:1px solid #d8e1ed;border-bottom:1px solid #d8e1ed;background:#fff;transform:rotate(45deg)}.prikinator-dialog strong{color:var(--brand-strong)}.prikinator-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px);gap:18px;align-items:start}.prikinator-left,.prikinator-right{display:grid;gap:14px}.prikinator-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.prikinator-choice-grid.two{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.prikinator-choice{min-height:78px;justify-content:flex-start;align-items:flex-start;display:grid;gap:5px;text-align:left;border:1px solid #d8e1ed;background:#fff}.prikinator-choice:hover,.prikinator-choice.active{border-color:#d79393;background:#fff3f3;color:var(--brand-strong)}.prikinator-choice span{color:var(--subtle);font-size:12px}.prikinator-note{margin:0}.prikinator-note.compact{font-size:13px}.prikinator-result{display:grid;gap:8px;border:1px solid #d79393;border-radius:8px;padding:18px;background:#fff3f3}.prikinator-result span{color:var(--brand-strong);font-weight:850;text-transform:uppercase;font-size:12px}.prikinator-result strong{color:var(--brand-strong);font-size:30px;line-height:1.1}.prikinator-result p{margin:0;color:#5f2d2d}.prikinator-source{display:grid;gap:7px;border:1px solid #d8e1ed;border-radius:8px;padding:14px;background:#fff}.prikinator-source strong{color:var(--brand);font-size:18px}.prikinator-source a{color:var(--brand-strong);font-weight:800;text-decoration:none}.prikinator-source a:hover{text-decoration:underline}@media(max-width:1180px){body{min-width:0}.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar nav,.sidebar-actions{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stats-grid,.form-grid,.toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prikinator-hero,.prikinator-layout{grid-template-columns:1fr}}:root{--text: #111827;--muted: #4b5563;--subtle: #667085;--border: #cfd8e5;--panel: #ffffff;--surface: #f6f8fb;--brand: #a72525;--brand-strong: #7f1d1d;--nav: #a72525;--nav-active: #7f1d1d;--danger: #b42318}body{color:var(--text);background:var(--surface);font-size:14px;line-height:1.45}button,input,select{border-radius:6px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(167,37,37,.28);outline-offset:2px}input,select{min-height:40px;color:var(--text);font-weight:600;border-color:var(--border)}.app-shell{grid-template-columns:224px minmax(0,1fr)}.sidebar{background:var(--nav);padding:18px 14px}.sidebar button{min-height:42px;font-size:14px}.sidebar button:hover,.sidebar button.active{background:var(--nav-active)}main{padding:20px 24px}.topbar h1{font-size:26px;line-height:1.2}.topbar span,.item-card span,.item-card small{color:var(--subtle)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stat,.panel,.table-wrap,.rd-picker,.bulk-controls>div,.rates-multiplier{border-color:#d8e1ed}.stat{min-height:86px;padding:14px 16px}.stat span,.field,.subsection-title,.rates-multiplier span,.rd-picker-actions span{color:var(--muted)}.stat span,.field{font-weight:750}.stat strong{font-size:24px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.bulk-controls{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.estimate-bulk-controls{margin-bottom:12px}.input-affix b{min-width:72px;color:var(--brand-strong);font-size:13px;font-weight:800;white-space:nowrap}.toggle{color:var(--text)}th{background:#a72525}td{padding:7px 8px;border-color:#e3eaf3}.header-menu{border-color:var(--border);color:var(--text)}.line-name{min-width:360px;max-width:640px;font-weight:700}.line-comment{color:var(--muted)}.group-pill{color:#7f1d1d;background:#fde8e8}.stage-summary-strip{display:flex;flex-wrap:wrap;gap:8px}.stage-summary-strip span{display:inline-flex;align-items:center;gap:8px;min-height:34px;border:1px solid #f1c7c7;border-radius:999px;padding:0 12px;background:#fff5f5;color:var(--muted);font-size:13px;font-weight:700}.stage-summary-strip b{color:var(--brand-strong)}.stage-summary-strip input{width:58px;min-height:28px;padding:3px 6px;text-align:right}.group-panel{padding-bottom:10px}.group-summary-table.prominent table{font-size:14px}.group-summary-table.prominent th{padding:10px 12px}.group-summary-table.prominent td{padding:12px;font-weight:750}.group-summary-table.prominent td:nth-child(2),.group-summary-table.prominent td:nth-child(3){font-size:16px}.finance-cards{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin:16px 0}.cashflow-table{overflow:auto}.cashflow-table table{min-width:820px}.total-row td{border-top:2px solid #cfe0ee;background:#f8fafc;font-weight:850}.rate-summary{overflow:auto;border:1px solid #d8e1ed;border-radius:8px;margin-bottom:12px}.rate-summary table{font-size:13px}.rate-summary td{vertical-align:middle}.rate-summary td:first-child{min-width:170px}.rate-summary input{min-width:160px}.rate-summary small{display:block;margin-top:4px;color:var(--muted);font-weight:750}.positive-value{color:#7f1d1d}.negative-value{color:var(--danger)}.inline-metric{display:grid;align-content:center;gap:4px;min-height:72px;border:1px solid #d8e1ed;border-radius:8px;padding:10px 12px;background:#f8fafc}.inline-metric span{color:var(--muted);font-size:13px;font-weight:750}.inline-metric strong{color:var(--text);font-size:18px;line-height:1.2}.price-cell{color:var(--text)}.cost-input-cell{display:grid;gap:4px;min-width:150px}.cost-input-cell input{min-height:30px}.cost-input-cell span{color:var(--muted);font-size:12px;font-weight:800}.stage-row td{position:sticky;top:34px;z-index:1;background:#fff1f1;color:#7f1d1d;border-top:1px solid #efb4b4;border-bottom:1px solid #efb4b4;font-weight:800}.stage-row strong{margin-right:12px;font-size:14px}.stage-row span{color:#7f1d1d;font-size:12px}.duration-cell{width:74px;min-width:74px}.duration-cell input{width:64px;min-width:64px;min-height:30px;padding:4px 7px;text-align:right}.staffing-cell{display:grid;grid-template-columns:repeat(3,48px);gap:6px;min-width:156px}.staffing-cell label{display:grid;gap:2px;color:var(--muted);font-size:11px;font-weight:800}.staffing-cell input{width:48px;min-width:48px;min-height:28px;padding:3px 5px;text-align:right}.subgroup-row td{background:#f6fafc;border-top:1px solid #d8e1ed;border-bottom:1px solid #d8e1ed;color:var(--muted)}.subgroup-row td:first-child{color:var(--brand-strong);font-weight:850}.subgroup-row strong{display:block;color:var(--text);font-size:13px;line-height:1.35}.subgroup-row span{display:block;margin-top:2px;color:var(--muted);font-size:12px;font-weight:700}.preset-set-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-bottom:12px}.preset-set-card{border:1px solid #d8e1ed;border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:8px}.preset-set-card strong{font-size:14px}.preset-set-card span{color:var(--muted);font-size:12px;font-weight:700}.preset-set-card button{min-height:32px}.preset-set-actions{display:grid;gap:6px}.preset-apply-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;padding:10px;border:1px solid #d8e1ed;border-radius:8px;background:#f8fafc}.preset-apply-bar span{color:var(--muted);font-size:13px;font-weight:800;margin-right:4px}.preset-apply-bar button{min-height:32px;font-size:12px}.fgis-breakdown-table tbody th{background:#fff;color:#344054}.fgis-breakdown-table tbody tr.fgis-unallocated th{background:#fffaf0}
