/* Code-card styling adapted from Uiverse.io by chase2k25; scoped to the entry sequence. */
.entry-intro{display:none}.intro-pending{overflow:hidden}.intro-pending .portfolio-shell,.intro-pending .floating-nav{visibility:hidden}.intro-pending .entry-intro{display:grid}.intro-pending.intro-reveal-profile .identity-card{visibility:visible}
.entry-intro{position:fixed;inset:0;z-index:2000;place-items:center;background:#151312;perspective:1200px;transition:background .45s ease;isolation:isolate}.entry-intro.is-docking{background:transparent}
.intro-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.intro-skip{position:absolute;top:24px;right:28px;display:flex;gap:16px;align-items:center;min-height:44px;border:1px solid #ffffff29;border-radius:8px;background:#ffffff06;padding:10px 16px;color:#c6c2be;font:12px Poppins,sans-serif;z-index:2}.intro-skip:hover{color:#fff;border-color:#ffffff60}.intro-skip:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.entry-tile{width:min(300px,calc(100vw - 48px));height:min(380px,calc(100dvh - 180px));min-height:300px;background:#1e1e1e;border-radius:8px;box-shadow:0 8px 25px #0009,inset 0 0 5px #00ff000d;border:1px solid #333;overflow:hidden;position:relative;font-family:Consolas,'Courier New',monospace;transform-origin:center;will-change:transform,opacity}
.entry-window-bar{height:30px;background:#3c3c3c;display:flex;align-items:center;gap:10px;padding:0 10px;border-bottom:1px solid #2a2a2a;color:#ccc;font-size:10px;white-space:nowrap}.entry-window-buttons{display:flex;gap:6px}.entry-window-buttons i{width:10px;height:10px;border-radius:50%;box-shadow:inset 0 1px 2px #0005;display:block}.entry-close{background:#ff605c}.entry-minimize{background:#ffbd44}.entry-maximize{background:#00ca4e}
.entry-tab-bar{height:35px;background:#252526;display:flex;border-bottom:1px solid #1a1a1a}.entry-tab{padding:10px 12px;color:#999;font-size:10px;border-right:1px solid #1a1a1a;white-space:nowrap}.entry-tab.active{color:#00ff00;background:#1e1e1e;text-shadow:0 0 5px #00ff0066}.entry-tab b{margin-left:16px;font-weight:400;color:#888}
.entry-editor-container{display:flex;height:calc(100% - 95px)}.entry-sidebar{width:30px;flex-shrink:0;background:#2b2b2b;border-right:1px solid #252526;display:flex;align-items:flex-start;justify-content:center;padding-top:16px}.entry-icon{width:14px;height:17px;background:linear-gradient(135deg,#00ff00,#00cc00);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);animation:entry-icon-pulse 2s ease-in-out infinite}
.entry-editor{flex:1;min-width:0;display:flex;background:#1e1e1e;padding:14px 7px}.entry-line-numbers{width:24px;flex-shrink:0;color:#858585;font-size:10px;text-align:right;padding-right:7px;border-right:1px solid #2a2a2a;user-select:none}.entry-line-numbers span,.entry-code-content code>span{display:block;line-height:17px}.entry-code-content{flex:1;min-width:0;padding-left:8px;overflow:hidden}.entry-code-content pre{margin:0}.entry-code-content code{color:#5ee65e;font-size:12px;line-height:17px;text-shadow:0 0 3px #00ff004d;white-space:pre-wrap;overflow-wrap:anywhere;animation:entry-code-glow 3s infinite alternate}
.entry-status-bar{height:30px;background:#007acc;display:flex;justify-content:space-between;align-items:center;padding:0 10px;border-top:1px solid #005f99;color:#fff;font-size:9px}.entry-caption{position:absolute;top:calc(50% + 205px);left:24px;right:24px;text-align:center;color:#8f8984;font:11px Poppins,sans-serif;letter-spacing:.06em;margin:0;transition:opacity .25s}.is-docking .entry-caption,.is-docking .intro-skip{opacity:0;pointer-events:none}
.entry-tile:before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,#00ff0008,transparent 50%);animation:entry-scanline 4s linear infinite;pointer-events:none;opacity:.5;z-index:1}.entry-tile:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,#ffffff03 0 1px,transparent 1px 3px);pointer-events:none}
@keyframes entry-icon-pulse{50%{transform:scale(1.1)}}@keyframes entry-code-glow{to{text-shadow:0 0 6px #00ff0080}}@keyframes entry-scanline{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
@media(max-height:650px){.entry-caption{top:auto;bottom:24px}.intro-skip{top:12px;right:16px}.entry-editor{padding-block:10px}.entry-line-numbers span,.entry-code-content code>span{line-height:14px}.entry-code-content code{line-height:14px}}
@media(prefers-reduced-motion:reduce){.entry-intro{display:none!important}.intro-pending .portfolio-shell,.intro-pending .floating-nav{visibility:visible}.intro-pending{overflow:auto}}

/* One centred surface: code → profile, then the finished profile travels home. */
.entry-morph{position:relative;width:min(300px,calc(100vw - 64px));aspect-ratio:600/844;transform-style:preserve-3d;transform-origin:50% 50%;will-change:transform,opacity}
.entry-morph .entry-tile{position:absolute;inset:0;width:100%;height:100%;min-height:0;backface-visibility:visible;transform-origin:center}
.entry-profile-card{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill;border-radius:16px;opacity:0;box-shadow:0 16px 42px #0006;transform-origin:center;pointer-events:none}
.is-morphing .entry-caption{opacity:0}
