﻿.pillar-intro{margin-bottom:16px}
.pillar-stage-layout{align-items:center;flex-wrap:wrap}
.pillar-stage-layout .pillar-stage-bar{flex:1 1 860px;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;white-space:nowrap}
.pillar-stage-layout .pillar-stage-bar button{flex:0 0 auto;min-height:38px;white-space:nowrap;cursor:pointer}
.pillar-stage-layout .pillar-schedule{flex:0 0 auto;margin:0;color:#63748b}
.pillar-stage-layout .pillar-schedule small{display:pillar;font-size:9px;margin-top:4px;color:#8291a3}
.pillar-workspace{display:grid;grid-template-columns:minmax(420px,1.4fr) minmax(350px,.8fr);gap:16px;align-items:start}.pillar-visual,.pillar-detail,.pillar-register,.pillar-notes{background:white;border:1px solid #e4e7ec;border-radius:14px;box-shadow:0 2px 9px #1b304b0a}.pillar-visual{overflow:hidden}.pillar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #e7ebf0;flex-wrap:wrap}.pillar-toolbar>div{display:flex;gap:5px;flex-wrap:wrap}.pillar-toolbar button,.pillar-detail-head button{border:1px solid #d9e1eb;background:white;border-radius:8px;color:#455871;padding:7px 10px;font-size:12px}.pillar-toolbar button.active{background:#eaf1ff;color:#1c58bd;border-color:#b9cff4}#pillar-plan,#pillar-viewport{width:100%;height:520px;display:pillar;touch-action:pan-x pan-y}#pillar-plan{background:#f6f9fc}.pillar-grid line{stroke:#dce6ef;stroke-width:1}.pillar-plan-item{cursor:pointer}.pillar-plan-item rect{stroke:#fff;stroke-width:1.5}.pillar-plan-item:hover rect,.pillar-plan-item.selected rect{stroke:#122f55;stroke-width:3.5}.pillar-visual-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 15px;color:#6b7b8e;font-size:11px;border-top:1px solid #e7ebf0}.pillar-legend{display:flex;gap:12px;flex-wrap:wrap}.pillar-legend i{display:inline-pillar;width:10px;height:10px;border-radius:2px;margin-right:4px}.pillar-detail{padding:17px;max-height:720px;overflow:auto}.pillar-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pillar-detail-head h3{font-size:23px;margin:5px 0}.pillar-detail-head p{font-size:11px;color:#748195;margin:0}.pillar-mini-stages{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin:15px 0}.pillar-mini-stages button{display:flex;justify-content:space-between;align-items:center;gap:6px;text-align:left;border:1px solid #e1e6ed;background:#f9fafc;border-radius:7px;padding:7px;font-size:11px;color:#526176}.pillar-mini-stages button.active{border-color:#9bbcf2;background:#eef4ff;color:#174da8}.pillar-mini-stages i{display:pillar;width:9px;height:9px;border-radius:50%;flex-shrink:0}.pillar-form-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e6ebf0;padding-top:13px;margin-top:4px}.pillar-form-head h4{font-size:14px;margin:0}.pillar-detail .form-grid{margin-top:14px}.pillar-detail .pile-history{padding:16px 0 0}.pillar-detail .pile-completed{margin:14px 0}.pillar-register{margin-top:18px;overflow:hidden}.pillar-register .register-heading{padding:18px}.pillar-filters{display:flex;gap:12px;padding:0 18px 14px}.pillar-filters label{flex:1}.pillar-table-wrap{max-height:430px;overflow:auto}.pillar-table-wrap table{width:100%;border-collapse:collapse}.pillar-table-wrap th,.pillar-table-wrap td{padding:10px 14px;text-align:left;border-bottom:1px solid #edf0f4;font-size:11px}.pillar-table-wrap button{border:0;background:transparent;color:#2362bd;font-weight:700;padding:0}.pillar-table-wrap tr.selected{background:#eaf1ff}.pillar-notes{margin-top:16px;padding:14px 18px;font-size:12px;color:#5c6c7c}.pillar-notes summary{cursor:pointer;font-weight:700;color:#2b4059}.pillar-notes a{color:#205ec0}.pillar-notes p{line-height:1.6}
@media(max-width:1050px){.pillar-workspace{grid-template-columns:1fr}.pillar-detail{max-height:none}}
@media(max-width:620px){.pillar-toolbar{flex-wrap:wrap}.pillar-filters{display:pillar}.pillar-filters label{margin-bottom:10px}#pillar-plan,#pillar-viewport{height:390px}}
#pillar-plan[hidden],#pillar-viewport[hidden]{display:none!important}

#pillar-plan{cursor:grab;touch-action:none;user-select:none}
#pillar-plan.panning{cursor:grabbing}
.pillar-axes{pointer-events:none}
.pillar-axes line{stroke:#c7d7e6;stroke-width:1.4;vector-effect:non-scaling-stroke}
.pillar-axes text{fill:#55708c;font:600 20px "IBM Plex Mono",Consolas,monospace;paint-order:stroke;stroke:#f6f9fc;stroke-width:4px}
.pillar-plan-item{cursor:pointer}

#pile-plan{display:pillar;width:100%;height:520px;background:#f6f9fc;cursor:grab;touch-action:none;user-select:none}
#pile-plan[hidden]{display:none!important}
#pile-plan.panning{cursor:grabbing}
.pile-plan-item{cursor:pointer}
.pile-plan-item circle{stroke:#fff;stroke-width:1.2}
.pile-plan-item:hover circle,.pile-plan-item.selected circle{stroke:#123a66;stroke-width:3}
.pile-plan-id{fill:#274567;font:500 12px "IBM Plex Mono",Consolas,monospace;paint-order:stroke;stroke:#f6f9fc;stroke-width:3px;pointer-events:none}
@media(max-width:650px){#pile-plan{height:390px}}

.pillar-mini-stages button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 3px 8px rgba(37,99,235,.2)}

.pillar-detail-head .pillar-dimensions{margin-top:6px;color:#345c8a;font-weight:600}

.pillar-plan-label{fill:#213d5f;font:600 12px "IBM Plex Mono",Consolas,monospace;paint-order:stroke;stroke:#f6f9fc;stroke-width:3px;pointer-events:none}
