/* Existing card dimensions, palette and typography are inherited unchanged. */
.project-monogram { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 20px; box-sizing: border-box; color: var(--mint, #39f4c8); font-family: Unbounded, sans-serif; font-size: clamp(16px, 2vw, 26px); overflow-wrap: anywhere; text-align: center; background: radial-gradient(ellipse at center, #12382e, #06110e 70%); }
.ai-license img { display: block; margin: 12px 0; }
.collage.portfolio-capture .screen-main { object-fit: contain; object-position: center; }
.preview-window img[src*="/portfolio/"] { object-fit: contain; object-position: center; }
.portfolio-shots figure { margin: 24px 0; }
.portfolio-shots img { display: block; width: 100%; height: auto; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; }
.portfolio-shots figcaption { margin-top: 10px; color: var(--muted, #b1beb8); }
#detail button:focus-visible { outline: 2px solid var(--mint, #39f4c8); outline-offset: 4px; }
.case-shot a, .portfolio-shots figure > a { display: block; cursor: zoom-in; }
.case-shot a:focus-visible, .portfolio-shots figure > a:focus-visible { outline: 2px solid var(--mint, #39f4c8); outline-offset: 4px; }
.portfolio-image-viewer { width: min(1500px, calc(100vw - 32px)); max-width: calc(100vw - 32px); max-height: 90svh; padding: 16px; box-sizing: border-box; color: #edf8f4; background: #06110e; border: 1px solid #39f4c8; border-radius: 12px; }
.portfolio-image-viewer::backdrop { background: rgba(0,0,0,.85); }
.image-tools { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 12px; }
.image-tools button { font: inherit; color: inherit; background: #12382e; border: 1px solid #39f4c8; padding: 10px 14px; cursor: pointer; }
.image-tools button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.image-scroll { overflow: auto; max-height: 65svh; }
.image-scroll img { display: block; width: 100%; height: auto; max-width: none; }
.is-zoomed .image-scroll img { width: auto; }
