/* Credential portfolio tab. Uses the tokens and card/table styles from intelligence.css. */
.pf-sim{color:var(--muted);font-size:12px}
.pf-date{white-space:nowrap}
.pf-note{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:3px}
.pf-links a{font-weight:600}
.pf-links{display:block;margin-top:6px;font-size:12px}
.pf-list{margin:0;padding-left:16px;font-size:12px;line-height:1.5}
.pf-of{font-size:15px;font-weight:600;color:var(--muted)}
.pf-kpi small{display:block;min-height:1.5em}
.pf-kpi .muted,.presentation-mode .pf-kpi .muted{margin:6px 0 0;font-size:12px;line-height:1.5}
.pf-kpi strong{margin-top:6px}
.pf-level{display:inline-block;padding:2px 7px;border-radius:10px;font-size:11px;line-height:1.5;font-weight:700;background:#edf1f0;color:#455a6e;text-transform:capitalize;white-space:nowrap}
.pf-level-high{background:#fae4e1;color:#9a3a36}
.pf-level-medium{background:#fff0dd;color:#8f4f17}
.pf-rag{min-width:58px;text-align:center;white-space:nowrap}
.pf-rag::before{content:'';display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:currentColor;vertical-align:1px}
.pf-status{white-space:nowrap}

/* Tables: words stay whole; only hashes and paths may break anywhere. */
.pf-table{min-width:0}
.pf-table td:first-child{white-space:nowrap}
.pf-table td{overflow-wrap:break-word;word-break:normal;hyphens:manual}
.pf-table th{white-space:nowrap}
.pf-cell{min-width:0}
.pf-table a,.pf-list a{color:var(--teal-ink);text-decoration-color:#9bc9c4;text-underline-offset:2px}
.pf-table a:hover,.pf-list a:hover{color:var(--navy)}
.pf-table a.pf-open{display:inline-block;padding:2px 9px;border:1px solid #9bc9c4;border-radius:10px;background:#e1f1ef;text-decoration:none;font-weight:700;white-space:nowrap}
.pf-table code,.pf-file code,.pf-path,.pf-hash{overflow-wrap:anywhere;word-break:normal}
.pf-table code,.pf-file code{display:block;font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
.pf-file{display:block;margin-top:8px}
.pf-hash{color:var(--muted)}
.pf-hashline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pf-hashline code{display:inline-block}
.pf-copy{border:1px solid #9bc9c4;background:#fff;color:var(--teal-ink);border-radius:10px;padding:0 8px;font:700 11px/1.6 'Space Grotesk',system-ui,sans-serif;cursor:pointer}
.pf-copy:hover{background:#e1f1ef}
tr[data-closed] td{opacity:.7}
.pf-more>summary,.pf-src>summary{font-size:12px;line-height:1.5;cursor:pointer}
.pf-src>summary,.pf-exams-more>summary,.pf-files>summary{color:var(--teal-ink);font-weight:600}
.pf-more .pf-full{display:block;margin-top:4px;font-size:12px;line-height:1.5}
.pf-more .pf-moretag{color:var(--teal-ink);font-weight:600;white-space:nowrap}
.pf-more .pf-moretag::after{content:' More'}
.pf-more[open] .pf-moretag::after{content:'Less'}
.pf-more[open] .pf-short{display:none}
.pf-more .pf-short{font-size:12px}
.pf-exams-more .pf-moretag,.pf-files .pf-moretag{display:none}
.pf-src .pf-list{margin-top:4px}

/* Calendar as a two-column definition list. */
.pf-cal{display:grid;gap:0;margin:0 0 12px;max-width:720px}
.pf-cal>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
.pf-cal dt{font-weight:700;color:var(--navy)}
.pf-cal dd{margin:0;min-width:0;overflow-wrap:break-word}

.pf-waves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0}
.pf-wave{border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:8px;padding:14px;background:#fff}
.pf-wave h4{margin:0 0 6px}
.pf-wave p{margin:6px 0}

/* In-page jump bar. */
.pf-jump{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:8px 0;position:sticky;top:74px;z-index:10;background:var(--cream);box-shadow:0 8px 8px -8px #12253f26}
.pf-jumplink{border:1px solid #cad7d8;background:#fff;color:var(--navy);border-radius:14px;padding:5px 12px;font:600 12px/1.4 'DM Sans',system-ui,sans-serif;cursor:pointer}
.pf-jumplink:hover{background:#e4efed;color:var(--teal-ink)}

#pfExams,#pfReleases,#pfRisks,#pfMilestones,#pfLadderCard,#pfAiLog{scroll-margin-top:130px}
/* One caveat per page, in place of per-row and per-section chips. */
.pf-caveat{margin:0 0 14px;padding:8px 12px;border:1px solid #c5aa7e;border-radius:8px;background:#fff0dd;color:#7a4a1c;font-size:13px;line-height:1.5}
.pf-working{color:var(--teal-ink);font-weight:700}
.pf-table tr.pf-flash td{animation:pfflash 1.8s ease}
@keyframes pfflash{0%,60%{background:#e1f1ef}100%{background:transparent}}
/* Collapsed sections */
.pf-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px}
.pf-fold>summary::-webkit-details-marker{display:none}
.pf-fold>summary h3{margin:0}
.pf-hint{color:var(--muted);font-size:12px}
.pf-fold>summary::after{content:'Show';margin-left:auto;font-size:12px;font-weight:700;color:var(--teal-ink)}
.pf-fold[open]>summary::after{content:'Hide'}
.pf-fold[open]>summary{margin-bottom:12px}

/* Credential ladder: a static map. Three neutral tier columns, identical cards, one status pill per tracked credential. */
.pf-ladder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:6px 0 0}
.pf-tier{min-width:0}
.pf-tier h4{margin:0 0 4px;font:700 13px 'Space Grotesk',system-ui,sans-serif;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}
.pf-tier>.muted{margin:0 0 10px;font-size:12px}
.pf-node{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:10px;font-size:13px;line-height:1.4}
.pf-node b{display:block;color:var(--navy);overflow-wrap:break-word}
.pf-kind,.pf-req{display:block;margin-top:4px;font-size:12px;line-height:1.5;color:var(--muted)}
.pf-pill{display:inline-block;max-width:100%;margin-top:8px;padding:2px 9px;border:1px solid;border-radius:10px;font:700 11px/1.5 'Space Grotesk',system-ui,sans-serif;text-decoration:none}
.pf-pill[data-rag=green]{background:#e3f3e8;color:#1f6b3a;border-color:#8cc7a0}
.pf-pill[data-rag=amber]{background:#fff0dd;color:#8f4f17;border-color:#d88945}
.pf-pill[data-rag=red]{background:#fae4e1;color:#9a3a36;border-color:#e0a49e}
.pf-pill:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.pf-verified{margin:0 0 6px;font-size:12px;font-weight:700;color:var(--teal-ink)}
.pf-nowrap{white-space:nowrap}
.pf-ladder-note{margin:0 0 6px}
.pf-legend{margin:0 0 12px;font-size:12px;color:var(--muted)}
.pf-ladder-src{margin-top:6px}
.pf-ladder-src .pf-list li{margin-bottom:4px}
.pf-soon{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}
.pf-soon h4{margin:0 0 6px}

/* Overview story hero (NetSuite only: needs the storyHeadline label). */
.story-hero{border-left:6px solid var(--orange);padding:18px 20px}
.story-hero h2{margin:4px 0 8px;font-size:26px;line-height:1.25;color:var(--navy)}
.story-hero p{margin:0 0 14px;font-size:15px;line-height:1.5;max-width:60ch}
.story-actions{display:flex;flex-wrap:wrap;gap:10px}

@media(max-width:1000px){.pf-ladder{gap:16px}.pf-waves{grid-template-columns:1fr}}
@media(max-width:820px){
 .pf-ladder{grid-template-columns:1fr;gap:18px}
 .pf-fold>summary{min-height:44px}
 .story-hero h2{font-size:22px}
}

/* Narrow screens: every table row becomes a labelled card, so nothing scrolls sideways. */
@media(max-width:760px){
 .pf-stack{display:block;width:100%}
 .pf-stack thead{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
 .pf-stack tbody,.pf-stack tr,.pf-stack td{display:block;width:100%}
 .pf-stack tr{border:1px solid var(--line);border-radius:8px;margin-bottom:10px;padding:6px 10px;background:#fff}
 .pf-stack td:first-child{white-space:normal}
 .pf-stack td{border:0;padding:6px 0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px}
 .pf-stack td::before{grid-column:1;content:attr(data-label);font:700 11px 'Space Grotesk',system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-top:2px}
 .pf-stack td>.pf-cell{grid-column:2;min-width:0}
 .pf-kpis{grid-template-columns:1fr 1fr}
 .pf-cal>div{grid-template-columns:1fr;gap:2px}
 .pf-jump{top:23px;position:sticky;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}
 #pfExams,#pfReleases,#pfRisks,#pfMilestones,#pfLadderCard,#pfAiLog{scroll-margin-top:84px}
 .pf-jumplink{white-space:nowrap;min-height:36px}
}

/* Row hover and print. */
.pf-table tbody tr:hover{background:#f7faf8}
@media print{
 .topbar,.syn-strip,.skip-link,.ribbon,.pf-jump,.demo-session-banner,.pf-copy,#presentationToggle{display:none!important}
 .card{box-shadow:none;break-inside:avoid-page}
 .table-wrap{overflow:visible}
 .pf-table tr{break-inside:avoid}
 .fade-r,.fade-l{-webkit-mask-image:none;mask-image:none}
}
