/* HPO v8.11.0 Portal Foundation */
.portal-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding:4px 2px 12px;border-bottom:1px solid #e4ebef}.portal-page-head h2{margin:3px 0 5px;color:#173f54}.portal-page-head p{margin:0;color:#6b7d89}.portal-eyebrow{font-size:.66rem;letter-spacing:.11em;font-weight:850;color:#64748b}.portal-mode,.portal-badge{display:inline-flex;align-items:center;border:1px solid #cddbe3;background:#f8fbfc;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:800;color:#34566a;white-space:nowrap}
.portal-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.portal-kpi{padding:15px;border:1px solid #dce7ec;border-radius:12px;background:#fff;min-width:0}.portal-kpi>span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#71838e}.portal-kpi>strong{display:block;font-size:1.28rem;color:#173f54;margin:5px 0 3px;overflow:hidden;text-overflow:ellipsis}.portal-kpi>small{display:block;color:#778a94}.portal-kpi.warn{background:#fffaf0;border-color:#f2d9a0}.portal-kpi.danger{background:#fff6f6;border-color:#efc5c5}
.portal-panel,.portal-dashboard-addon{border:1px solid #dce7ec;border-radius:13px;padding:14px;background:#fff;margin:12px 0}.portal-section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.portal-section-title h3,.portal-panel>h3{margin:0 0 3px;color:#244c5e}.portal-section-title p{margin:0;color:#71838e;font-size:.8rem}.portal-two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:12px}.portal-table-wrap{overflow:auto;max-height:55vh;border:1px solid #e3eaee;border-radius:9px}.portal-table{margin:0!important;table-layout:auto!important;min-width:680px}.portal-table thead{position:sticky;top:0;background:#f7fafb;z-index:1}.portal-empty-cell{text-align:center;color:#80909a;padding:22px!important}
.portal-funnel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:15px}.portal-funnel>div{position:relative;overflow:hidden;padding:12px;border:1px solid #dce7ec;border-radius:10px;background:#fff}.portal-funnel span{font-size:.7rem;font-weight:800;color:#71838e}.portal-funnel strong{display:block;font-size:1.35rem;color:#183e51;margin-top:3px}.portal-funnel i{position:absolute;left:0;bottom:0;height:3px;background:var(--primary)}
.portal-project-card{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;padding:15px;border:1px solid #dce7ec;border-radius:12px;margin:9px 0;background:#fff}.portal-project-card h3,.portal-client-project h3{margin:4px 0;color:#173f54}.portal-project-card p,.portal-client-project p{margin:0 0 9px;color:#72848d}.portal-project-id{font-size:.69rem;font-weight:850;color:#55717e;letter-spacing:.04em}.portal-progress{height:8px;background:#edf2f5;border-radius:999px;overflow:hidden;margin:8px 0 4px}.portal-progress span{display:block;height:100%;background:var(--primary);border-radius:999px}.portal-project-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.portal-project-meta>div{padding:8px;border-radius:8px;background:#f7fafb;border:1px solid #e7eef2}.portal-project-meta span{display:block;font-size:.63rem;text-transform:uppercase;font-weight:800;color:#7b8d96}.portal-project-meta strong{display:block;margin-top:3px;font-size:.78rem;color:#244c5e}.portal-project-meta button{grid-column:1/-1}.portal-client-project{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px;padding:12px;background:#f8fbfc;border:1px solid #e1e9ed;border-radius:11px}.portal-client-stage>strong{display:block;font-size:1.7rem;color:#173f54}.portal-empty{padding:20px;text-align:center;color:#748791;border:1px dashed #cfdae0;border-radius:10px;background:#fbfdfe}
.portal-forecast{display:grid;gap:8px}.portal-forecast>div{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #e1e9ed;border-radius:9px;background:#f9fbfc}.portal-forecast .total{background:#eef6fa;border-color:#c5dce8}.portal-forecast span{color:#657b87}.portal-forecast strong{color:#173f54}
@media(max-width:1100px){.portal-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-two-col{grid-template-columns:1fr}.portal-project-card{grid-template-columns:1fr}.portal-funnel{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.portal-page-head,.portal-section-title{flex-direction:column;align-items:flex-start}.portal-kpi-grid,.portal-funnel,.portal-client-project{grid-template-columns:1fr}.portal-project-meta{grid-template-columns:1fr}.portal-project-meta button{grid-column:auto}}
.portal-service-search{display:grid;gap:5px;margin:8px 0 12px;max-width:460px;font-size:13px;font-weight:600;color:#536579}
