/* Portfolio panels retain readable contrast regardless of the saved site theme. */
.portfolio-dialog { background:#151515 !important; color:#faf8f4 !important; }
.portfolio-dialog * { color:inherit; }
.portfolio-dialog .text-medium-grey { color:#d0ccc6 !important; opacity:1 !important; }
.portfolio-dialog .text-accent { color:#f2c7a2 !important; }
.portfolio-dialog a,.portfolio-dialog button { color:#faf8f4 !important; }
.portfolio-dialog a:hover,.portfolio-dialog button:hover { color:#ffd5af !important; }
.portfolio-dialog :focus-visible { outline:3px solid #ffd5af; outline-offset:4px; }
.portfolio-dialog h2 { font-size:clamp(2rem,6vw,5rem); }
.portfolio-summary { color:var(--color-ink,#1a1a1a); font-size:.875rem; line-height:1.5; max-width:38ch; }
@media (max-width:767px) {
 header nav { flex-wrap:wrap; gap:.25rem .65rem !important; }
 header nav button,header nav a { min-height:44px; min-width:44px; font-size:12px !important; display:inline-flex; align-items:center; justify-content:center; }
 main li > div > div:first-child { align-items:center; flex-wrap:wrap; gap:.25rem; }
 main li > div > div:first-child > div { opacity:1 !important; }
 main li > div > div:first-child a { min-height:44px; font-size:12px !important; }
 .portfolio-dialog { padding:1.5rem !important; }
 .portfolio-dialog a { overflow-wrap:anywhere; }
}
