/* Portal V2 single-navigation contract: one complete tree, responsive presentation only. */
.sidebar{overflow:hidden;gap:12px}
.sidebar .nav.portal-single-navigation{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;align-content:start;padding:0 4px 8px 0;scrollbar-width:thin;display:grid;gap:0}
.portal-single-nav-group{display:grid;gap:2px;padding:10px 0}
.portal-single-nav-group+.portal-single-nav-group{border-top:1px solid #e8edf5}
.portal-single-nav-heading{margin:0;padding:0 10px 5px;color:#7a869d;font-size:10px;line-height:1.2;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.sidebar .nav .portal-single-nav-group button{min-height:34px;height:auto;padding:7px 9px;border-radius:10px;font-size:12px;line-height:1.25}
.sidebar .nav .portal-single-nav-group button .ico{width:18px;flex:0 0 18px}
.sidebar .nav .portal-single-nav-group button.active{background:#edf3ff;color:#115be8}
.sidebar .scan{margin-top:0}
.portal-hamburger{display:none}
.mobilebar{display:none!important}
@media(max-width:1180px){.portal-hamburger{display:inline-flex}}
@media(max-width:760px){body{padding-bottom:0!important}}
.nav button[aria-current="page"],.nav button.active{background:#edf3ff;color:#115be8}
.projectcontext{display:grid;gap:18px}
.projecttabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin}
.projecttabs button{min-height:44px;white-space:nowrap;border:1px solid #dfe5f0;background:#fff;border-radius:999px;padding:0 16px;font:inherit;font-weight:800;color:#45506a;cursor:pointer}
.projecttabs button.active,.projecttabs button[aria-selected="true"]{background:#edf3ff;border-color:#b8caf7;color:#115be8}
.projectgroupcontent{min-width:0}
.projectgroup{margin:0}
.projectcockpit{display:grid;gap:16px}
.projectcockpit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px;border:1px solid #e1e6ef;border-radius:18px;background:#fff}
.projectcockpit-head span{display:block;color:#6f7b91;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.projectcockpit-head h3{margin:4px 0 6px;font-size:22px}
.projectcockpit-head p{margin:0;color:#667085;max-width:720px}
.projectcockpit-head button,.projectcockpit-actions button{min-height:44px;border:0;border-radius:12px;padding:0 14px;background:#115be8;color:#fff;font-weight:800;cursor:pointer}
.projectcockpit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.projectcockpit-grid article{min-height:92px;border:1px solid #e2e7f0;border-radius:14px;padding:14px;background:#fff;display:grid;align-content:space-between;gap:8px}
.projectcockpit-grid small{color:#6f7b91;font-weight:700}
.projectcockpit-grid strong{font-size:18px;color:#182230}
.projectunknown{color:#98a2b3;font-size:13px;font-weight:700}
.projectcockpit-actions{display:flex;gap:8px;flex-wrap:wrap}
.projectcockpit-actions button{background:#f3f6fb;color:#223047;border:1px solid #dfe5f0}
.projectactivity{display:grid;gap:6px;border:1px solid #e2e7f0;border-radius:14px;padding:14px;background:#fff}
.projectactivity div{padding:8px 0;border-top:1px solid #eef1f5;color:#475467}
.desktop-project-nav{margin:10px 14px 16px;padding:12px;border-top:1px solid #e5eaf2;display:grid;gap:8px}
.desktop-project-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#98a2b3;font-weight:900;padding:2px 8px 6px}
.desktop-project-group{display:grid;gap:2px}
.desktop-project-heading,.desktop-project-link{min-height:40px;border:0;background:transparent;text-align:left;border-radius:10px;padding:8px 10px;color:#354052;cursor:pointer}
.desktop-project-heading{font-weight:900}
.desktop-project-link{padding-left:20px;font-size:13px;color:#667085}
.desktop-project-heading:hover,.desktop-project-link:hover{background:#f5f7fb;color:#115be8}
@media(max-width:1100px){.projectcockpit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.desktop-project-nav{display:none}.projectcockpit-grid{grid-template-columns:1fr 1fr}.projectcockpit-head{display:grid}.projectcockpit-head h3{font-size:20px}.projecttabs{margin-inline:-2px;padding-bottom:10px}.projectcockpit-actions{display:grid;grid-template-columns:1fr 1fr}.projectcockpit-actions button{width:100%}}
@media(max-width:430px){.projectcockpit-grid{grid-template-columns:1fr}.projectcockpit-actions{grid-template-columns:1fr}}

.pvglobalnav{display:flex;gap:6px;overflow-x:auto;padding:10px 18px;border-bottom:1px solid #e7ebf2;background:#fff;position:sticky;top:0;z-index:3;scrollbar-width:thin}
.pvglobalnav button{min-height:38px;border:1px solid #dfe5f0;border-radius:999px;background:#fff;padding:0 13px;white-space:nowrap;font:inherit;font-size:13px;font-weight:800;color:#4c5870;cursor:pointer}
.pvglobalnav button:hover,.pvglobalnav button.active{background:#edf3ff;border-color:#b8caf7;color:#115be8}
.legacy-overview-insights{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr) minmax(0,1fr);gap:14px;margin:0 0 18px}
.legacy-insight-card{border:1px solid #e1e6ef;border-radius:18px;background:#fff;padding:18px;min-width:0}
.legacy-insight-card h3{margin:8px 0 6px;font-size:22px;color:#182230}
.legacy-insight-card p{margin:6px 0 0;color:#667085;font-size:13px;line-height:1.5}
.legacy-insight-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#667085;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.legacy-insight-head strong{color:#115be8;font-size:12px}
.legacy-progress{height:9px;border-radius:999px;background:#eef2f7;overflow:hidden;margin-top:14px}.legacy-progress i{display:block;height:100%;background:currentColor;color:#115be8;border-radius:inherit}
.adoption-curve{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));align-items:start;gap:0;margin-top:20px;min-width:520px}
.adoption-step{position:relative;padding-top:22px;color:#98a2b3;text-align:center}.adoption-step:before{content:"";position:absolute;top:7px;left:0;right:0;height:3px;background:#e4e9f1}.adoption-step:first-child:before{left:50%}.adoption-step:last-child:before{right:50%}
.adoption-step i{position:absolute;top:2px;left:50%;width:13px;height:13px;border-radius:50%;background:#d5dbe5;transform:translateX(-50%);z-index:1}.adoption-step.active:before,.adoption-step.active i{background:#115be8}.adoption-step.current i{width:17px;height:17px;top:0;box-shadow:0 0 0 4px #e6efff}.adoption-step b{display:block;font-size:12px;color:#667085}.adoption-step.current b{color:#115be8}.adoption-step small{font-size:11px}
.adoption-card{overflow-x:auto}.legacy-blockers{display:grid;gap:7px;margin-top:12px}.legacy-blockers button{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:40px;border:1px solid #e4e9f1;background:#f8fafc;border-radius:10px;padding:0 11px;color:#344054;font:inherit;cursor:pointer}.legacy-blockers button strong{color:#b54708}
@media(max-width:1100px){.legacy-overview-insights{grid-template-columns:1fr 1fr}.adoption-card{grid-column:1/-1}}
@media(max-width:760px){.pvglobalnav{padding:8px 12px}.legacy-overview-insights{grid-template-columns:1fr}.adoption-card{grid-column:auto}.legacy-insight-card{padding:15px}}


.portal-hamburger{display:none;align-items:center;gap:9px;min-height:44px;width:max-content;border:1px solid #dfe5f0;border-radius:12px;background:#fff;padding:0 14px;color:#172554;font-weight:900;box-shadow:0 8px 24px rgba(25,46,95,.08);flex:0 0 auto}
.portal-hamburger span{font-size:14px}
@media(max-width:760px){
  .portal-hamburger{display:inline-flex;margin:0 0 2px 0;position:relative;z-index:4}
  .allpages.open{display:grid;place-items:stretch;padding:0;background:rgba(7,18,49,.45)}
  .allpages .sheet{width:min(94vw,520px);height:100dvh;max-height:100dvh;margin:0 auto 0 0;border-radius:0 22px 22px 0;padding:20px 14px calc(92px + env(safe-area-inset-bottom));overflow:auto}
  .allpages .sheethead{position:sticky;top:-20px;z-index:2;background:#fff;padding:18px 0 12px}
  .allpages .sheethead h3{font-size:24px}
  .allpages .sheethead small{display:block;margin-top:5px;font-size:13px;line-height:1.4}
  .allpages .groups{grid-template-columns:1fr!important;gap:12px}
  .allpages .group{padding:12px;border-radius:14px}
  .allpages .group h4{font-size:14px;margin-bottom:9px}
  .allpages .group button{min-height:44px;font-size:13px;padding:10px 12px}
}

/* Final responsive authority: hamburger only when the persistent sidebar is unavailable. */
@media(max-width:1180px){.portal-hamburger{display:inline-flex!important}}


/* UX focus V1: collapsible canonical sidebar, never a copied or reduced page registry. */
.sidebar .nav details.portal-single-nav-group{display:block;padding:3px 0}
.sidebar .nav details.portal-single-nav-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:43px;padding:10px 12px;list-style:none;cursor:pointer;color:#344c59;letter-spacing:.012em;font-size:12px;font-weight:800;text-transform:none;border-radius:11px}
.sidebar .nav details.portal-single-nav-group>summary::-webkit-details-marker{display:none}
.sidebar .nav details.portal-single-nav-group>summary:after{content:'+';font-size:18px;font-weight:500;color:#68888b}
.sidebar .nav details.portal-single-nav-group[open]>summary:after{content:'−'}
.sidebar .nav details.portal-single-nav-group>summary:hover{background:#f1f7f7}
.sidebar .nav details.portal-single-nav-group>summary:focus-visible{outline:3px solid #2a8785;outline-offset:-3px}
.sidebar .nav details.portal-single-nav-group[open]>summary{color:#145957}
.sidebar .nav details.portal-single-nav-group>button{margin:2px 0 2px 9px;width:calc(100% - 9px)}
.portal-mobile-primary{display:none}
@media(max-width:760px){
 body:has(.portal-mobile-primary){padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}
 .portal-hamburger{display:none!important}
 .portal-mobile-primary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;position:fixed;inset:auto 0 0;z-index:90;background:rgba(255,255,255,.97);border-top:1px solid #dbe7eb;box-shadow:0 -10px 28px rgba(16,40,51,.08);padding:8px max(8px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-right));backdrop-filter:blur(16px)}
 .portal-mobile-primary button{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:51px;min-width:0;border:0;border-radius:12px;background:transparent;color:#526773;font:600 11px/1.2 system-ui,sans-serif;cursor:pointer}
 .portal-mobile-primary button.is-current{background:#e7f4f0;color:#176354;font-weight:800}
 .portal-mobile-primary-icon{font-size:24px;line-height:1}
 .portal-mobile-primary button:focus-visible{outline:3px solid #268f7f;outline-offset:1px}
 body:has(.allpages.open) .portal-mobile-primary{visibility:hidden;pointer-events:none}
}
@media(prefers-reduced-motion:reduce){.portal-mobile-primary{backdrop-filter:none}}


/* Preserve the canonical overview hierarchy while revealing technical depth on request. */
.portal-overview-depth{margin:14px 0 30px;border:1px solid #dce9e9;border-radius:18px;background:#fff;overflow:clip}
.portal-overview-depth[hidden]{display:none!important}
.portal-overview-depth-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:56px;padding:13px 18px;cursor:pointer;list-style:none;color:#23404a;font-size:14px;font-weight:750}
.portal-overview-depth-trigger::-webkit-details-marker{display:none}
.portal-overview-depth-trigger>small{font-weight:500;color:#526b77;text-align:right}
.portal-overview-depth-trigger:after{content:'+';font-size:22px;line-height:1;font-weight:400;color:#286d68}
.portal-overview-depth[open]>.portal-overview-depth-trigger:after{content:'−'}
.portal-overview-depth-trigger:focus-visible{outline:3px solid #2a8785;outline-offset:-3px}
.portal-overview-depth[open]>.portal-overview-depth-trigger{border-bottom:1px solid #dce9e9;background:#f4faf8}
.portal-overview-depth-content{padding:16px;min-width:0;overflow-x:clip}
.portal-overview-depth-content>.daily-steering,.portal-overview-depth-content>.dashboard{max-width:100%}
@media(max-width:760px){
 .portal-overview-depth{margin:12px 0 20px;border-radius:14px}
 .portal-overview-depth-trigger{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:14px;min-height:62px}
 .portal-overview-depth-trigger>span{grid-column:1;align-self:end}
 .portal-overview-depth-trigger>small{grid-column:1;text-align:left;align-self:start;font-size:12px}
 .portal-overview-depth-trigger:after{grid-column:2;grid-row:1/3}
 .portal-overview-depth-content{padding:12px;max-width:100%}
}
