:root{color:#132034;background:#f4f6fb;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f4f6fb}button,input,select,textarea{font:inherit}textarea{min-height:120px;resize:vertical}input,select,textarea{width:100%;border:1px solid #d8dee9;border-radius:14px;padding:.9rem 1rem;background:#fff}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:#004887;color:#fff;padding:1.35rem 1.25rem 1.4rem;display:flex;flex-direction:column;justify-content:space-between}.brand-logo-frame{width:100%;overflow:hidden;display:flex;justify-content:flex-start;align-items:center;height:110px;margin:0 0 .85rem;border-radius:12px}.brand-logo{width:100%;max-width:none;height:100%;display:block;object-fit:cover;object-position:center}.sidebar-nav{display:grid;gap:.75rem;margin-top:2rem}.nav-item{border:0;border-radius:14px;background:#ffffff1f;color:#ffffffd9;padding:.9rem 1rem;text-align:left}.nav-item-active{background:#fff;color:#122033;font-weight:700}.sidebar-user{border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:1rem;display:grid;gap:.85rem;background:#ffffff14}.sidebar-user-row{display:flex;align-items:center;gap:.85rem}.sidebar-user-copy{display:grid;gap:.1rem}.user-avatar{width:44px;height:44px;border-radius:999px;display:grid;place-items:center;background:#ffffff24;color:#fff;flex-shrink:0}.user-avatar svg{width:24px;height:24px}.app-main{padding:2rem;overflow:auto}.page-section{display:grid;gap:1.5rem}.section-header,.section-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.section-header h2{margin:.2rem 0 0;font-size:1.9rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:#6a778b}.toolbar,.project-grid,.project-list,.feature-list,.kpi-grid,.detail-hero{display:grid;gap:1rem}.toolbar{grid-template-columns:2fr 1fr}.project-grid,.project-list,.detail-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.project-card,.kpi-card,.detail-card,.feature-card,.executive-expand,.auth-card{background:#fff;border:1px solid #dfe4ee;border-radius:24px;padding:1.25rem;box-shadow:0 18px 40px #1220330f}.project-card-header,.project-card-footer,.detail-card-header,.feature-card-header,.feature-card-meta,.modal-header{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}.project-card-header h3,.feature-card h4{margin:.2rem 0 0}.project-card-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:1rem 0}.project-card-grid p,.detail-card p,.feature-card p,.comment-preview p{margin:.35rem 0 0;color:#4f5d73;line-height:1.5}.inline-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.4rem .8rem;font-size:.78rem;font-weight:700}.badge-success{background:#ddf7e5;color:#186a3b}.badge-warning{background:#fff3d9;color:#9a6400}.badge-danger{background:#fee4e2;color:#b42318}.badge-neutral{background:#edf2f7;color:#465467}.progress-wrap{display:grid;gap:.45rem}.progress-track{height:10px;background:#e8edf4;border-radius:999px;overflow:hidden}.progress-fill{height:100%;border-radius:999px}.progress-success{background:#2f9e44}.progress-warning{background:#f0b429}.progress-neutral{background:#aeb9c8}.progress-label{font-size:.78rem;color:#607084}.primary-button,.secondary-button,.danger-button{border:0;border-radius:14px;padding:.85rem 1rem;font-weight:700}.primary-button{background:#122033;color:#fff}.secondary-button{background:#eef2f7;color:#27374a}.danger-button{background:#fee4e2;color:#b42318}.small{padding:.6rem .85rem}.kanban-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.kanban-column{background:#eef2f7;border-radius:24px;padding:1rem;min-height:420px}.kanban-column-header{display:flex;justify-content:space-between;align-items:center}.kanban-stack{display:grid;gap:.85rem;margin-top:1rem}.feature-card-draggable{cursor:grab}.detail-controls{display:flex;gap:.8rem}.tab-button{border:0;border-radius:999px;padding:.75rem 1rem;background:#e9eef5;color:#5d6a7d;font-weight:700}.tab-button.active{background:#122033;color:#fff}.meta-list{display:grid;gap:.4rem;margin-top:1rem;color:#5d6a7d}.meta-pills{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.meta-pills span{border-radius:999px;padding:.5rem .8rem;background:#eef2f7;color:#445267;font-size:.85rem}.executive-expand{margin-top:-.25rem}.executive-home{gap:2rem}.executive-home .project-list{grid-template-columns:repeat(auto-fit,minmax(280px,320px));align-items:start}.executive-home-card{min-height:180px;display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem}.executive-home-card h3{margin:0;font-size:1.5rem}.executive-detail-page{gap:1.25rem}.extras-section{gap:1rem}.extras-title{margin:.15rem 0 0;font-size:1.5rem;color:#15243a}.extras-grid,.stages-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stages-grid-single{grid-template-columns:1fr}.flow-overview{display:grid;gap:1rem;margin-bottom:.25rem}.flow-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.flow-overview-card{background:#f8fafc;border:1px solid #e2e8f2;border-radius:20px;padding:1rem;display:grid;gap:.85rem}.flow-overview-chart{position:relative;width:94px;height:94px;display:grid;place-items:center}.flow-overview-chart span{position:absolute;font-weight:800;color:#15243a}.progress-ring{width:94px;height:94px;transform:rotate(-90deg)}.progress-ring-track,.progress-ring-fill{fill:none;stroke-width:3.6}.progress-ring-track{stroke:#e6edf6}.progress-ring-fill{stroke:#2f9e44;stroke-linecap:round}.flow-overview-copy{display:grid;gap:.45rem}.flow-overview-copy small{color:#66758a}.flow-filters{display:flex;gap:.65rem;flex-wrap:wrap;margin-bottom:1rem}.flow-filter{border:1px solid #d6deea;background:#fff;color:#304155;border-radius:999px;padding:.7rem .95rem;font-weight:700}.flow-filter.active{background:#122033;border-color:#122033;color:#fff}.flow-card{background:#fff;border:1px solid #dfe4ee;border-radius:24px;padding:1rem;display:grid;gap:.9rem}.flow-card-header{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}.flow-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.45rem .8rem;font-size:.8rem;font-weight:700}.flow-tag-commercial{background:#e7f0ff;color:#2057a3}.flow-tag-selection{background:#e7f8ef;color:#1f7a46}.flow-tag-billing{background:#fff1df;color:#aa6400}.flow-tag-tasks{background:#f0ecff;color:#6445c1}.flow-count{font-size:.82rem;color:#6b778c}.flow-list{display:grid;gap:.7rem}.flow-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.9rem 0;border-top:1px solid #eef2f7}.flow-item:first-child{border-top:0;padding-top:0}.flow-item-copy{min-width:0}.flow-item-copy strong{display:block}.flow-item-copy p{margin:.35rem 0 0;color:#5c6b7f;line-height:1.45}.flow-feedback{border-top:1px solid #e8edf5;padding-top:.9rem;display:grid;gap:.75rem}.flow-feedback-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-top:.35rem;margin-top:.25rem}.flow-feedback-title{margin:.2rem 0 0;font-size:1rem;color:#16253b}.flow-feedback-list{display:grid;gap:.7rem}.flow-feedback-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.85rem 0;border-top:1px solid #f1f4f8}.flow-feedback-item:first-child{border-top:0;padding-top:0}.executive-summary-strip{display:grid;gap:1rem}.executive-summary-strip-4{grid-template-columns:repeat(4,minmax(0,1fr))}.executive-summary-strip-3{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-chip,.executive-block,.table-shell{background:#fff;border:1px solid #dfe4ee;border-radius:24px}.summary-chip{padding:1.1rem 1.25rem;display:grid;gap:.45rem}.summary-chip-link{text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease}.summary-chip-link:hover{transform:translateY(-1px);box-shadow:0 14px 30px #12203314}.summary-chip strong{font-size:1.15rem;color:#14233a}.executive-block{padding:1.2rem}.executive-block-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.executive-block-header h3{margin:0}.table-shell{overflow:hidden}.executive-table{width:100%;border-collapse:collapse}.executive-table th,.executive-table td{padding:1rem 1.1rem;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:top}.executive-table th{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#6a778b;background:#f8fafc}.executive-table td p{margin:.45rem 0 0;color:#5c6b7f;line-height:1.45}.impact-callout{margin-top:1rem;border-radius:20px;background:#f4f8fd;padding:1rem 1.15rem;display:grid;gap:.35rem}.impact-callout strong{font-size:1.1rem;color:#10325f}.executive-panel{margin-top:1rem}.executive-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid #eef2f7}.form-grid{display:grid;gap:1rem}.comment-history{display:grid;gap:.75rem}.comment-item{border:1px solid #e3e8f2;border-radius:16px;padding:.85rem 1rem;background:#fafbfd}.comment-item strong,.comment-item span{display:inline-block;margin-right:.75rem}.comment-item p{margin:.45rem 0 0;color:#4f5d73}.comment-preview{margin-top:.25rem}.form-actions{display:flex;justify-content:flex-end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a121e73;display:grid;place-items:center;padding:1rem}.modal-panel{width:min(860px,100%);background:#fff;border-radius:28px;padding:1.5rem}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:linear-gradient(180deg,#f4f6fb,#ebf0f8)}.auth-card{width:min(860px,100%)}.user-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.5rem}.user-option{border:1px solid #dfe4ee;border-radius:20px;background:#fff;padding:1rem;text-align:left;display:grid;gap:.3rem}.error-banner{background:#fee4e2;border:1px solid #fecdca;color:#b42318;border-radius:16px;padding:1rem}.empty-state{background:#fff;border:1px dashed #d7dfec;color:#526175;border-radius:20px;padding:1.25rem;text-align:center}@media(max-width:1100px){.app-shell,.project-grid,.project-list,.detail-hero,.kpi-grid,.kanban-grid,.user-grid,.executive-summary-strip,.extras-grid,.stages-grid,.flow-overview-grid{grid-template-columns:1fr}.app-main{padding:1rem}.sidebar{display:none}}
