.x-proj{margin:0 0 12px;font-size:.84rem;color:var(--muted);overflow-wrap:anywhere}
.x-proj b{color:var(--head)}
.x-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.x-chip{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:99px;padding:4px 11px;font:inherit;font-size:.78rem;cursor:pointer}
.x-chip.on{border-color:var(--o);color:var(--o);font-weight:600}
.x-chip.x-hot{border-style:dashed;border-color:var(--o);color:var(--o)}
.x-tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.x-reg{width:100%;border-collapse:collapse;font-size:.82rem}
.x-reg th{text-align:left;color:var(--muted);font-weight:500;padding:7px 8px;border-bottom:1px solid var(--line);font-size:.72rem}
.x-reg td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;color:var(--text)}
.x-reg td small{display:block;color:var(--muted);font-size:.72rem}
.x-reg tr.x-dirty td{background:color-mix(in srgb,var(--o) 9%,transparent)}
.x-rev{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:7px;border:2px solid var(--o);color:var(--head);font-weight:700}
.x-st{display:inline-block;font-size:.7rem;padding:2px 8px;border-radius:99px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}
.x-st.x-fc,.x-st.x-approved,.x-st.x-vinvoiced,.x-st.x-vapproved{border-color:var(--head);color:var(--head)}
.x-st.x-fa,.x-st.x-info,.x-st.x-lodged,.x-st.x-vsent{border-color:var(--o);color:var(--o)}
.x-st.x-draft,.x-st.x-vdraft{border-style:dashed}
.x-link{background:none;border:0;padding:0;color:var(--o);font:inherit;cursor:pointer;text-decoration:underline}
.x-hist{list-style:none;margin:6px 0 0;padding:0;font-size:.74rem}
.x-hist li{padding:4px 7px;border-left:2px solid var(--o);margin:3px 0}
.x-hist li em{font-style:normal;font-weight:700;margin-left:6px;font-size:.64rem;color:var(--o);letter-spacing:.04em}
.x-hist li.x-wm{border-left-color:var(--line);color:var(--muted)}
.x-hist li.x-wm b{text-decoration:line-through}
.x-hist li.x-wm em{color:var(--muted)}
.x-box{border:1px solid var(--line);background:var(--bg2);border-radius:12px;padding:12px;margin:12px 0;display:grid;gap:8px}
.x-box h4{margin:0;color:var(--head)}
.x-box p{margin:0}
.x-box select,.x-box input:not([type=checkbox]),.x-box textarea,.x-ph select{width:100%;box-sizing:border-box;min-width:0;font:inherit;font-size:.85rem;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text)}
.x-f{display:grid;gap:4px;font-size:.8rem;color:var(--muted)}
.x-rcp{display:grid;gap:5px;font-size:.82rem}
.x-rcp label{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap;cursor:pointer}
.x-rcp small{color:var(--muted)}
.x-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.x-g3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 80px;gap:8px}
.x-portal,.x-tm,.x-ap,.x-rfi,.x-var,.x-insp{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:12px;margin:0 0 10px;min-width:0}
.x-ph{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--head);flex-wrap:wrap}
.x-ph select{width:auto;flex:1}
.x-portal p{margin:4px 0 8px}
.x-portal ul{list-style:none;margin:0 0 6px;padding:0;font-size:.8rem}
.x-portal li{display:flex;gap:8px;padding:5px 0;border-bottom:1px dashed var(--line);align-items:center;flex-wrap:wrap}
.x-portal li span{color:var(--muted)}
.x-portal li em{margin-left:auto;font-style:normal;font-size:.72rem}
.x-bad{color:var(--o);font-weight:700}
.x-ok{color:var(--muted)}
.x-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.x-old{margin-top:10px;border:2px dashed var(--o);border-radius:10px;padding:10px;background:var(--bg2)}
.x-sheet{position:relative;border:1px solid var(--line);background:var(--card);border-radius:6px;padding:16px 10px;overflow:hidden;display:grid;gap:2px;color:var(--muted)}
.x-sheet i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:1.5rem;letter-spacing:.12em;color:var(--o);opacity:.45;transform:rotate(-10deg);pointer-events:none}
.x-aph{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.x-aph b{color:var(--head);overflow-wrap:anywhere}
.x-ap p,.x-rfi p,.x-var p,.x-tm p{margin:6px 0;overflow-wrap:anywhere}
.x-late{border-color:var(--o);box-shadow:inset 3px 0 0 var(--o)}
.x-req{background:var(--bg2);border-radius:8px;padding:7px 9px;font-size:.82rem}
.x-cond{margin:6px 0 0;padding-left:18px;font-size:.78rem;color:var(--muted)}
.x-rc{list-style:none;padding:0;margin:6px 0;font-size:.78rem}
.x-rc li{display:flex;justify-content:space-between;gap:8px;padding:3px 0;flex-wrap:wrap}
.x-rc em{font-style:normal;color:var(--muted)}
.x-rc em.x-y{color:var(--head);font-weight:600}
.x-ans{font-size:.8rem;color:var(--muted)}
.x-rfi.x-dn{opacity:.8}
.x-plan{width:100%;height:auto;color:var(--muted);display:block}
.x-plan .x-pipe{stroke:var(--o);opacity:.6}
.x-plan .x-pin{fill:var(--o)}
.x-plan text{fill:var(--card);font-size:9px;font-weight:700}
.x-insp>p{margin:4px 0 6px}
.x-chk{list-style:none;padding:0;margin:0}
.x-chk li{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line);font-size:.8rem}
.x-chk li span{min-width:0;overflow-wrap:anywhere}
.x-chk li div{display:flex;gap:4px;flex:none}
.x-chk li.x-def span{color:var(--o);font-weight:600}
.x-tg{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--bg2);color:var(--text);cursor:pointer;font:inherit;padding:0}
.x-tg.on{border-color:var(--o);color:var(--o);font-weight:700;box-shadow:inset 0 0 0 1px var(--o)}
.x-tg:disabled{cursor:default;opacity:.7}
.x-rep{margin-top:10px;padding:10px;border-radius:10px;background:var(--bg2);font-size:.82rem}
.x-cert{list-style:none;padding:0;margin:8px 0 12px}
.x-cert li{display:flex;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.x-cert li i{font-style:normal}
.x-cert li span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:.82rem}
.x-cert small{display:block;color:var(--muted);font-size:.72rem}
.x-cert li.x-done b{color:var(--muted)}
.x-stage{margin:0 0 10px}
.x-stage>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:.82rem;flex-wrap:wrap;margin-bottom:4px}
.x-stage b{color:var(--head)}
.x-stage span{color:var(--muted)}
.x-stage.x-warn span,.x-stage.x-over span{color:var(--o);font-weight:600}
.x-phone{max-width:260px;margin:12px auto;border:6px solid var(--deep);border-radius:24px;padding:14px;background:var(--card);font-size:.8rem}
.x-phone p{margin:4px 0;overflow-wrap:anywhere}
.x-pt{font-size:.7rem;color:var(--muted);margin-bottom:6px}
.x-pb{font-size:1.2rem;font-weight:700;color:var(--head)}
.x-price b{color:var(--o)}
@media (max-width:560px){.x-g3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.x-g3 input{grid-column:1/-1}.x-reg{font-size:.76rem}.x-reg td,.x-reg th{padding:6px 5px}.x-chk li{flex-wrap:wrap}.x-tg{width:36px;height:36px}}