:root{--navy:#0c130f;--gold:#3fc818;--bg:#f4f6f9;--card:#fff;--text:#17202b;--muted:#5d6b7a;--line:#e2e7ee;--green:#1e7a46;--green-bg:#e3f4ea;--amber:#8a5a00;--amber-bg:#fff3d6;--purple:#5b3fa3;--purple-bg:#eee8fb;--red:#b42318;--red-bg:#fdecea;--grey-bg:#eef1f5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0d1520;--card:#152131;--text:#e6edf5;--muted:#9aabbd;--line:#26364a;--green:#6fd39b;--green-bg:#133325;--amber:#f2c46b;--amber-bg:#3a2e12;--purple:#c3b2f5;--purple-bg:#2b2346;--red:#ff8d84;--red-bg:#3d1a18;--grey-bg:#1d2a3b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}h1{margin:8px 0 10px;font-size:1.45rem}h2{margin:0 0 8px;font-size:1.05rem}h3{margin:12px 0 4px;font-size:.95rem}.app{padding-bottom:72px}main{max-width:880px;margin:0 auto;padding:8px 16px 24px}.top{z-index:5;background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:10px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:8px;min-width:0;font-weight:600;display:flex}.brand .muted{color:#b9c7d8;font-weight:400}.brand-mark{background:var(--navy);width:56px;height:56px;color:var(--gold);border-radius:14px;place-items:center;font-size:28px;font-weight:800;display:inline-grid}.brand-mark.small{background:#fff1;border-radius:7px;width:28px;height:28px;font-size:16px}.top .link{color:#dbe5f1}nav.bottom{background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:5;display:flex;position:fixed;bottom:0;left:0;right:0}nav.bottom a{text-align:center;color:var(--muted);flex:1;padding:12px 4px;font-size:.85rem;font-weight:600;text-decoration:none}nav.bottom a.active{color:var(--navy);box-shadow:inset 0 3px 0 var(--gold)}@media (prefers-color-scheme:dark){nav.bottom a.active{color:var(--gold)}}.card{background:var(--card);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;margin:12px 0;padding:14px}.card.accent{border-left:4px solid var(--gold)}.card.danger{border-left:4px solid var(--red)}.row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;text-decoration:none;display:flex}.row:last-child{border-bottom:0}.right{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.small{font-size:.84rem}.muted{color:var(--muted)}.error{color:var(--red)}.warn{color:var(--amber)}.center{text-align:center;padding:40px}.pre{white-space:pre-wrap}.title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.btn{border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;cursor:pointer;border-radius:9px;padding:9px 14px;font-weight:600;text-decoration:none;display:inline-block}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}@media (prefers-color-scheme:dark){.btn.primary{background:var(--gold);border-color:var(--gold);color:#1a1a1a}}.btn.big{padding:14px 24px;font-size:1.05rem}.btn.small{padding:4px 9px;font-size:.8rem}.btn:disabled{opacity:.45;cursor:not-allowed}.link{color:var(--navy);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}@media (prefers-color-scheme:dark){.link{color:var(--gold)}}.chips{scrollbar-width:none;gap:6px;padding:2px 0 8px;display:flex;overflow-x:auto}.chip{border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.85rem}.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}.label,.pill,.flag,.stage{white-space:nowrap;vertical-align:1px;border-radius:6px;padding:1px 7px;font-size:.74rem;font-weight:700;display:inline-block}.label-verified{background:var(--green-bg);color:var(--green)}.label-estimate{background:var(--amber-bg);color:var(--amber)}.label-hypothesis{background:var(--purple-bg);color:var(--purple)}.label-gap,.label-unverified{background:var(--grey-bg);color:var(--muted);border:1px dashed var(--muted)}.pill{background:var(--grey-bg);color:var(--muted)}.pill-ai{background:var(--purple-bg);color:var(--purple)}.flag{background:var(--red-bg);color:var(--red)}.flag-stale_price,.flag-incomplete_scope{background:var(--amber-bg);color:var(--amber)}.stage{background:var(--grey-bg);color:var(--text);text-transform:capitalize}.stage-won{background:var(--green-bg);color:var(--green)}.stage-lost{background:var(--red-bg);color:var(--red)}.fact{border-bottom:1px solid var(--line);padding:8px 0}.fact.draft{opacity:.75}.history{border-bottom:1px solid var(--line);padding:6px 0;font-size:.9rem}.kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:10px 0;display:grid}.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}.kpi.warn{border-left:4px solid var(--amber)}.kpi-value{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.table{border-collapse:collapse;width:100%;font-size:.88rem}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 4px}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.clickable{cursor:pointer}.inputs{border-left:3px solid var(--gold);margin-top:6px;padding-left:8px}.form,.card label{flex-direction:column;gap:8px;display:flex}input,select,textarea{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:8px;width:100%;padding:9px 10px}input[type=checkbox]{width:auto}.check{align-items:flex-start;padding:6px 0;flex-direction:row!important}.search{margin-bottom:8px}textarea.code,pre.code{white-space:pre-wrap;font-family:ui-monospace,Menlo,monospace;font-size:.8rem;overflow-x:auto}pre.code{background:var(--grey-bg);border-radius:8px;padding:10px}.thumbs{flex-wrap:wrap;gap:8px;display:flex}.thumbs img{object-fit:cover;border-radius:8px;width:96px;height:96px}.fit{background:var(--grey-bg);border-radius:6px;margin:3px 0;padding:3px 6px;position:relative;overflow:hidden}.fit-bar{background:var(--green-bg);position:absolute;inset:0 auto 0 0}.fit span.small{position:relative}.worker{border-bottom:1px solid var(--line);padding:10px 0}ul.plain{margin:0;padding:0;list-style:none}ul.plain li{padding:4px 0}.signin{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:380px;margin:12vh auto;padding:16px;display:flex}.foot{text-align:center;color:var(--muted);margin:24px 0 8px;font-size:.75rem}.title-row>.btn,.title-row>button{white-space:nowrap;flex-shrink:0}.seg{border-bottom:1px solid var(--line);padding:10px 0}.seg:last-of-type{border-bottom:0}.seg-nums{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px;display:grid}.seg-nums div{font-variant-numeric:tabular-nums;flex-direction:column;display:flex}.scope-row{grid-template-columns:1fr 110px auto;align-items:end;gap:8px;display:grid}fieldset.rates{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:10px;display:grid}fieldset.rates legend{padding:0 4px;font-weight:700}.scope-row.equip{grid-column:1/-1;grid-template-columns:1fr 90px 90px}.print{color:#111;background:#fff;max-width:760px;min-height:100vh;margin:0 auto;padding:24px 16px;position:relative}.print .table th,.print .table td{border-color:#ddd}.print-head{border-bottom:3px solid #0f2a4a;justify-content:space-between;align-items:baseline;margin-bottom:16px;padding-bottom:8px;display:flex}.print-entity{color:#0f2a4a;font-size:1.3rem;font-weight:800}.draft-mark:before{content:"DRAFT";color:#b423181f;pointer-events:none;font-size:120px;font-weight:900;position:fixed;top:40%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}@media print{.no-print{display:none!important}body{background:#fff}}p.flag{white-space:normal;padding:6px 8px;display:block}input[type=radio]{width:auto}.check{justify-content:flex-start;gap:8px}.step{border-bottom:1px solid var(--line);padding:10px 0}.step:last-of-type{border-bottom:0}.fit-row{align-items:center!important}.fit-row .fit{flex:1}.brand-img{object-fit:contain;width:30px;height:30px}.signin-logo{width:min(360px,90vw);height:auto}.signin-wrap{color:#e6edf5;background:#0c130f;min-height:100vh;padding:1px 0}.signin-wrap .muted,.signin-wrap .foot{color:#9aabbd}.signin-wrap .btn.primary{color:#0c130f;background:#3fc818;border-color:#3fc818}
