@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{color-scheme:dark;--bg:#11161b;--panel:#171e24;--panel-soft:#1d262d;--panel-lift:#222e36;--ink:#f0f2e9;--muted:#9ca8a7;--quiet:#667477;--line:#2c393e;--lime:#ccf36b;--mint:#79e1c1;--violet:#b5a6ff;--orange:#ffb36f;--mono:'DM Mono',ui-monospace,SFMono-Regular,Consolas,monospace;--sans:'Manrope',Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 12% 0%,rgba(72,111,93,.14),transparent 33%),var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;min-height:100vh}.page-shell{max-width:1640px;margin:0 auto;padding:0 42px}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(181,198,190,.12)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:33px;height:33px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;padding:4px;border:1px solid #45534e;border-radius:8px;background:#202b2a;transform:rotate(-4deg)}.brand-mark i{display:block;background:var(--lime);border-radius:2px}.brand-mark i:nth-child(2){opacity:.65}.brand-mark i:nth-child(3){opacity:.38}.brand-mark i:nth-child(4){background:var(--mint)}.brand-copy{display:grid;gap:3px}.brand-copy strong{font-size:11px;letter-spacing:.13em;font-weight:800}.brand-copy small,.live-status,.eyebrow,.checkpoint-readout .readout-label,.chrome-title,.chrome-badge,.game-statusbar,.scroll-marker,.micro-note,.file-id,.role,.section-index,.ai-tag,.page-footer{font-family:var(--mono);letter-spacing:.08em}.brand-copy small{font-size:9px;color:var(--quiet)}.top-actions{display:flex;align-items:center;gap:15px}.live-status{display:flex;align-items:center;gap:8px;font-size:9px;color:#9caaa2}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 9px rgba(204,243,107,.65)}.quiet-button{font-family:var(--mono);color:var(--ink);border:1px solid #344147;background:transparent;width:34px;height:32px;border-radius:7px;font-size:10px;cursor:pointer;transition:.2s}.quiet-button:hover{background:#253139;border-color:#718078}.layout{display:grid;grid-template-columns:minmax(0,1.68fr) minmax(315px,.84fr);gap:32px;padding-top:34px;padding-bottom:38px;align-items:start}.game-column{min-width:0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:0 0 19px}.eyebrow{display:flex;align-items:center;gap:8px;color:#9eaeaa;font-size:9px;font-weight:500}.eyebrow-line{display:inline-block;width:16px;height:1px;background:var(--lime)}.section-heading h1{font-size:clamp(26px,3vw,40px);line-height:1.16;letter-spacing:-.055em;margin:12px 0 0;font-weight:700}.section-heading h1 em{font-style:normal;color:var(--lime)}.checkpoint-readout{text-align:right;padding:0 1px 3px 12px}.readout-label{font-size:8px;color:#71807f;display:block;margin-bottom:4px}.checkpoint-readout strong{font-family:var(--mono);font-size:18px;color:var(--lime);letter-spacing:.04em}.checkpoint-readout small{font-size:10px;color:#798781;font-weight:400}.game-window{border:1px solid #384448;border-radius:12px;overflow:hidden;background:#172027;box-shadow:0 24px 60px rgba(0,0,0,.24),0 2px 0 rgba(255,255,255,.035) inset}.game-chrome{height:37px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#202a30;border-bottom:1px solid #334047}.chrome-lights{display:flex;gap:5px;width:70px}.chrome-lights i{height:6px;width:6px;background:#58635e;border-radius:50%}.chrome-lights i:first-child{background:#da8c72}.chrome-lights i:nth-child(2){background:#ddb867}.chrome-lights i:nth-child(3){background:#8bb998}.chrome-title{font-size:8px;color:#b3c0b8;display:flex;align-items:center;gap:7px}.tiny-square{width:5px;height:5px;background:var(--mint);display:inline-block;transform:rotate(45deg)}.chrome-badge{font-size:8px;color:#a6b1a9;width:70px;text-align:right;display:flex;justify-content:end;align-items:center;gap:6px}.chrome-badge .live-dot{width:5px;height:5px}.canvas-wrap{height:clamp(395px,45vw,545px);max-height:545px;min-height:385px;position:relative;overflow:hidden;background:#172b32}.canvas-wrap canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}.canvas-overlay{position:absolute;inset:0;display:grid;align-items:center;padding:clamp(24px,5vw,68px);background:linear-gradient(90deg,rgba(12,19,25,.84) 0%,rgba(12,19,25,.66) 48%,rgba(12,19,25,.06) 100%);transition:opacity .4s,visibility .4s}.canvas-overlay.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.intro-panel-inner{max-width:400px;position:relative;z-index:2}.intro-kicker{font-family:var(--mono);font-size:9px;letter-spacing:.11em;color:#b7c6bd;display:flex;align-items:center;gap:8px}.pixel-heart{color:var(--lime);font-size:15px}.intro-panel-inner h2{font-size:clamp(34px,5vw,57px);letter-spacing:-.065em;line-height:1.04;margin:20px 0 13px;font-weight:700}.intro-panel-inner h2 span{color:var(--lime)}.intro-panel-inner p{font-size:13px;line-height:1.75;color:#bac7c2;max-width:320px;margin:0 0 23px}.start-button{border:0;background:var(--lime);color:#18221a;padding:0 15px;height:42px;border-radius:6px;display:inline-flex;align-items:center;gap:24px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;font-weight:500;cursor:pointer;box-shadow:0 5px 0 #779238;transition:transform .15s,box-shadow .15s}.start-button:hover{transform:translateY(-2px);box-shadow:0 7px 0 #779238}.start-button:active{transform:translateY(3px);box-shadow:0 2px 0 #779238}.start-button b{font-size:16px;font-weight:400}.intro-foot{display:flex;align-items:center;gap:9px;margin-top:28px;font-family:var(--mono);font-size:8px;letter-spacing:.09em;color:#92a59e}.key-hint{display:flex;gap:3px}kbd{font-family:var(--mono);font-size:8px;border:1px solid #596761;border-bottom-width:2px;border-radius:3px;padding:3px 5px;color:#d4dfd8;background:rgba(255,255,255,.035)}.intro-stamp{position:absolute;right:8%;top:17%;width:83px;height:83px;border:1px solid rgba(204,243,107,.26);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(10deg);font-family:var(--mono);font-size:8px;line-height:1.5;color:#d2e4a1;letter-spacing:.08em}.intro-stamp b{position:absolute;right:-3px;bottom:1px;background:#bce45f;color:#253122;width:24px;height:24px;border-radius:50%;font-size:16px;line-height:24px;text-align:center;font-weight:400}.interaction-prompt{position:absolute;z-index:4;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:7px 11px;background:rgba(15,23,28,.92);border:1px solid rgba(204,243,107,.44);border-radius:5px;font-family:var(--mono);font-size:8px;letter-spacing:.08em;color:#e6eee8;box-shadow:0 5px 20px #0b1115}.interaction-prompt[hidden],.dialog-backdrop[hidden]{display:none}.interaction-prompt kbd{color:var(--lime);border-color:#778d4b}.dialog-backdrop{position:absolute;z-index:5;inset:0;display:grid;place-items:center;background:rgba(9,14,17,.64);backdrop-filter:blur(5px);padding:24px}.dialog-card{width:min(100%,510px);max-height:calc(100% - 12px);overflow:auto;background:#172128;border:1px solid #53635d;border-radius:10px;padding:23px 25px 25px;box-shadow:0 24px 75px rgba(0,0,0,.45);animation:card-in .2s ease-out}@keyframes card-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.dialog-topline{display:flex;align-items:center;justify-content:space-between}.dialog-type{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--lime)}.dialog-close{border:1px solid #405048;background:transparent;color:#c7d3cc;width:27px;height:27px;border-radius:5px;font-size:19px;line-height:20px;cursor:pointer}.dialog-close:hover{background:#2b3a3e}.dialog-card h2{font-size:27px;line-height:1.2;letter-spacing:-.04em;margin:15px 0 14px}.dialog-content{font-size:12px;color:#bdc9c4;line-height:1.75}.dialog-content p{margin:0 0 12px}.dialog-content ul{padding:0 0 0 17px;margin:9px 0}.dialog-content li{padding:2px 0}.dialog-tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.dialog-tags span{font:8px var(--mono);letter-spacing:.04em;border:1px solid #3c4d4b;color:#c6d5cf;background:#1d2b2e;padding:5px 7px;border-radius:4px}.dialog-date{font:9px var(--mono);color:#879992;letter-spacing:.04em;margin-bottom:8px}.dialog-link{display:inline-flex;align-items:center;gap:7px;color:var(--lime);text-decoration:none;font-family:var(--mono);font-size:9px;letter-spacing:.04em;margin-top:7px}.dialog-link:hover{text-decoration:underline}.touch-controls{display:none;position:absolute;z-index:3;bottom:14px;left:14px;right:14px;justify-content:space-between;pointer-events:none}.touch-movement,.touch-actions{display:flex;gap:8px}.touch-controls button{pointer-events:auto;width:46px;height:46px;border-radius:9px;border:1px solid rgba(215,231,218,.35);background:rgba(18,29,32,.78);backdrop-filter:blur(5px);color:#f1f4ed;font:17px var(--mono);touch-action:none}.touch-controls button:active{background:rgba(204,243,107,.25);border-color:var(--lime)}.game-statusbar{height:39px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;background:#1b252b;border-top:1px solid #334047;color:#84938d;font-size:8px;gap:10px}.control-guide{display:flex;align-items:center;gap:15px}.control-guide span{display:flex;align-items:center;gap:4px}.control-guide b{font-weight:400;color:#a5b0a8;font-size:8px}.control-guide kbd{font-size:7px;padding:2px 4px;border-color:#45544f}.game-status{color:#9daa9c;text-align:right;font-size:8px}.below-game{display:flex;justify-content:space-between;align-items:center;padding:15px 2px 0}.scroll-marker{font-size:8px;color:#abb6ae;display:flex;align-items:center;gap:8px}.scroll-marker i{width:6px;height:6px;background:var(--lime);display:inline-block;border-radius:50%;box-shadow:0 0 7px #b5db63}.micro-note{font-size:8px;color:#677579}.profile-column{display:flex;flex-direction:column;gap:0}.profile-card{background:linear-gradient(145deg,#202a30,#192126 82%);border:1px solid #334148;border-radius:10px;padding:18px 19px 17px;box-shadow:0 12px 24px rgba(0,0,0,.13)}.profile-topline{display:flex;justify-content:space-between;align-items:center}.eyebrow.compact{font-size:8px}.eyebrow.compact .eyebrow-line{width:12px}.file-id{font-size:8px;color:#667874}.profile-main{display:flex;align-items:center;gap:13px;margin:16px 0 13px}.avatar{position:relative;width:57px;height:57px;flex:0 0 57px;border-radius:10px;overflow:hidden;background:#314a4b;border:1px solid #50655a}.avatar-shadow{position:absolute;bottom:7px;left:12px;width:33px;height:10px;background:#182525;border-radius:50%;filter:blur(2px)}.avatar-body{position:absolute;z-index:1;bottom:9px;left:17px;width:25px;height:25px;border-radius:8px 8px 4px 4px;background:#d1ef7c}.avatar-head{position:absolute;z-index:2;bottom:28px;left:20px;width:20px;height:21px;border-radius:6px 6px 4px 4px;background:#ce9671}.avatar-hair{position:absolute;z-index:3;bottom:40px;left:18px;width:24px;height:12px;background:#392b28;border-radius:7px 8px 3px 2px;transform:rotate(-4deg)}.avatar-eye{position:absolute;z-index:4;bottom:34px;left:34px;width:3px;height:3px;background:#1c2827;border-radius:50%}.profile-main h2{font-size:17px;letter-spacing:-.03em;margin:0 0 5px}.role{font-size:8px;color:var(--lime);margin:0;letter-spacing:.12em}.profile-summary{font-size:10px;line-height:1.7;color:#abb8b2;margin:0 0 14px}.profile-meta{border-top:1px solid #303d41;padding-top:11px;display:flex;justify-content:space-between;align-items:center;gap:7px;color:#889791;font-family:var(--mono);font-size:7px;letter-spacing:.045em}.profile-meta span{display:flex;align-items:center;gap:5px}.meta-icon{font-style:normal;color:#c1e67b;font-size:13px}.side-section{border-bottom:1px solid #293438;padding:20px 2px 18px}.side-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.side-heading h3,.contact-copy h3{font-size:16px;letter-spacing:-.035em;margin:7px 0 0}.section-index{font-size:8px;color:#677578;padding-bottom:2px}.timeline{display:flex;flex-direction:column;gap:3px}.timeline-item{position:relative;display:grid;grid-template-columns:63px 1fr auto;align-items:center;gap:8px;padding:8px 8px;border-radius:5px;cursor:pointer;transition:background .15s}.timeline-item:hover,.timeline-item:focus-visible{background:#1c292d;outline:none}.timeline-date{font-family:var(--mono);font-size:8px;color:#91a29b;letter-spacing:.02em}.timeline-name{font-size:10px;color:#e4eae3;font-weight:600}.timeline-detail{font-size:8px;color:#7c8e88;margin-top:2px}.timeline-arrow{color:#718480;font-size:13px}.timeline-item.current .timeline-date{color:var(--lime)}.parallel-note{display:flex;gap:8px;align-items:start;padding:9px 10px;margin-top:8px;background:rgba(181,166,255,.08);border:1px solid rgba(181,166,255,.16);border-radius:5px;color:#b9c0c2;font-size:8px;line-height:1.55}.parallel-note strong{color:#d1c8ff;font-weight:600}.parallel-symbol{font-size:12px;color:#b5a6ff}.skill-sparks{font-size:9px;letter-spacing:4px;color:#71835c}.skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.skill-chip{display:flex;align-items:center;gap:7px;padding:8px 8px;border:1px solid #303d41;background:#1a2429;border-radius:5px;font-size:9px;color:#cad4cc}.skill-chip i{font-style:normal;color:var(--lime);font-family:var(--mono);font-size:9px}.skill-chip small{display:block;color:#788983;font-size:7px;margin-top:3px}.ai-tools{display:flex;align-items:center;gap:7px;margin-top:10px;flex-wrap:wrap;font:8px var(--mono);color:#b5c0ba}.ai-tag{font-size:7px;color:#c0b4ff;border:1px solid rgba(181,166,255,.3);padding:4px 5px;border-radius:3px;letter-spacing:.04em}.projects-section{padding-bottom:17px}.project-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.project-link{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;padding:8px 9px;border:1px solid #303c40;border-radius:5px;background:transparent;color:#c8d2cd;text-align:left;font-size:8px;font-family:var(--sans);cursor:pointer;transition:.15s}.project-link:hover{border-color:#839266;background:#1e292c;color:#eff5e8}.project-link span:last-child{font-family:var(--mono);color:#75857f}.contact-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 2px 0}.contact-copy h3{font-size:13px}.contact-button{display:flex;align-items:center;gap:12px;padding:9px 11px;background:#253427;border:1px solid #596848;color:var(--lime);border-radius:5px;text-decoration:none;font:8px var(--mono);letter-spacing:.06em;transition:.15s}.contact-button:hover{background:#30432f;transform:translateY(-1px)}.contact-button b{font-size:14px;font-weight:400}.page-footer{height:48px;border-top:1px solid rgba(181,198,190,.11);display:flex;justify-content:space-between;align-items:center;color:#667477;font-size:8px}.page-footer strong{color:#a1b0a9;font-weight:500}.page-footer span:last-child{letter-spacing:.03em}
@media(max-width:1120px){.page-shell{padding:0 26px}.layout{grid-template-columns:minmax(0,1.4fr) minmax(290px,.9fr);gap:22px}.profile-meta{font-size:6px}.timeline-item{grid-template-columns:57px 1fr auto;gap:6px}.intro-stamp{right:5%}}
@media(max-width:850px){.page-shell{padding:0 20px}.layout{grid-template-columns:1fr;gap:26px;padding-top:26px}.game-column{width:100%}.canvas-wrap{height:clamp(380px,58vw,510px)}.profile-column{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.profile-card,.career-section{grid-column:1/-1}.side-section{padding-top:19px}.career-section .timeline{display:grid;grid-template-columns:1fr 1fr}.timeline-item{grid-template-columns:59px 1fr auto}.profile-meta{font-size:8px}.contact-card{align-self:center}.page-footer{margin-top:8px}}
@media(max-width:560px){.page-shell{padding:0 13px}.topbar{height:68px}.brand-copy strong{font-size:9px}.brand-copy small{font-size:7px}.brand-mark{width:29px;height:29px}.top-actions{gap:9px}.live-status{font-size:7px}.layout{padding-top:22px}.section-heading{align-items:center;margin-bottom:14px}.section-heading h1{font-size:26px;margin-top:10px}.checkpoint-readout strong{font-size:15px}.readout-label{font-size:7px}.canvas-wrap{height:390px;min-height:360px}.game-chrome{padding:0 10px}.chrome-title{font-size:7px}.chrome-lights{width:42px}.chrome-badge{width:58px;font-size:7px}.canvas-overlay{padding:24px}.intro-panel-inner{max-width:280px}.intro-panel-inner h2{font-size:38px}.intro-panel-inner p{font-size:11px}.intro-stamp{right:6%;top:8%;width:64px;height:64px;font-size:7px}.intro-stamp b{width:19px;height:19px;line-height:19px;font-size:13px}.touch-controls{display:flex}.control-guide{gap:7px}.control-guide span{gap:3px}.control-guide b{font-size:6px}.control-guide kbd{font-size:6px;padding:2px 3px}.game-statusbar{font-size:7px;padding:0 9px}.game-status{font-size:7px}.micro-note{font-size:7px}.scroll-marker{font-size:7px}.below-game{gap:5px}.profile-column{display:flex}.profile-card{padding:16px}.career-section .timeline{display:flex}.timeline-item{grid-template-columns:62px 1fr auto}.side-section{padding:18px 2px}.skill-section{padding-bottom:19px}.profile-meta{font-size:7px}.dialog-card{padding:19px 18px}.dialog-card h2{font-size:23px}.dialog-content{font-size:11px}.page-footer{font-size:7px;gap:8px}.page-footer span:last-child{text-align:right}.contact-card{padding-top:15px}.contact-copy h3{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.shard-hud{position:absolute;top:13px;right:13px;z-index:2;display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(204,243,107,.35);border-radius:5px;background:rgba(15,27,30,.86);color:#d5e5d7;font:8px var(--mono);letter-spacing:.06em;pointer-events:none}.shard-hud[hidden]{display:none}.shard-hud span:first-child,.shard-hud strong{color:var(--lime)}.shard-hud strong{font-size:10px;font-weight:600}
.shard-hud.is-complete{border-color:var(--lime);box-shadow:0 0 18px rgba(204,243,107,.2)}
.timeline-item{background:transparent;border:0;color:inherit;font-family:inherit;text-align:left;width:100%;font-size:inherit}

.skill-primary{display:flex;gap:12px;align-items:flex-start;padding:15px 16px;margin-bottom:12px;border:1px solid #8da957;border-radius:8px;background:linear-gradient(125deg,rgba(204,243,107,.15),rgba(204,243,107,.045))}
.skill-primary-icon{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:6px;background:#c7ee72;color:#243121;font:21px var(--mono)}
.skill-primary strong{display:block;font-size:16px;line-height:1.25;color:#f4f8ec}
.skill-primary span:not(.skill-primary-icon){display:block;margin-top:3px;color:var(--lime);font:9px var(--mono);letter-spacing:.07em}
.skill-primary p{margin:8px 0 0;color:#c1d0c5;font-size:11px;line-height:1.55}
.skill-exploration{padding:12px;border:1px solid #3b4151;border-radius:8px;background:rgba(181,166,255,.045)}
.skill-exploration-label{color:#c7bbff;font:9px var(--mono);letter-spacing:.09em}
.skill-exploration > p{margin:6px 0 12px;color:#bdc7c8;font-size:11px;line-height:1.5}
.skill-exploration .skill-chip{border-color:#3c4350;background:#202730}
.skill-exploration .skill-chip i{color:#c4b6ff}
.ai-tools{margin-top:12px;font-size:9px}
.ai-tag{font-size:8px}

/* Keep the career history on one readable, connected axis. */
.career-section .timeline{position:relative;display:flex;flex-direction:column;gap:0;padding:2px 0}
.career-section .timeline::before{content:"";position:absolute;z-index:0;left:118px;top:24px;bottom:24px;width:1px;background:linear-gradient(#617a68,#687b70 72%,#81729c)}
.timeline-item{isolation:isolate;grid-template-columns:105px minmax(0,1fr) 16px;gap:20px;min-height:57px;padding:9px 5px;border-radius:7px}
.timeline-item::before{content:"";position:absolute;left:114px;top:calc(50% - 4px);width:9px;height:9px;border-radius:50%;border:2px solid var(--mint);background:#19252a;box-shadow:0 0 0 4px var(--bg)}
.timeline-item.current::before{border-color:var(--lime);background:var(--lime)}
.timeline-item[data-open-station="mavia"]::before{border-color:var(--violet)}
.timeline-item > span:nth-child(2){display:block;min-width:0}
.timeline-date{font-size:10px;line-height:1.35;color:#b9c9c1;white-space:nowrap;font-variant-numeric:tabular-nums}
.timeline-name,.timeline-detail{display:block}
.timeline-name{font-size:12px;line-height:1.35;color:#f0f3eb}
.timeline-detail{font-size:10px;line-height:1.4;color:#a8bab0;margin-top:3px}
.timeline-arrow{font-size:15px;color:#9aafa2}
.timeline-item:hover,.timeline-item:focus-visible{background:#223039}

/* Body copy and key controls need to remain legible on laptop and phone screens. */
.profile-summary{font-size:12px;line-height:1.65;color:#c0cec7}
.profile-meta{font-size:9px;flex-wrap:wrap;row-gap:6px}
.project-link{font-size:11px;line-height:1.4;min-height:44px}
.skill-chip{font-size:11px;min-height:48px}
.skill-chip small{font-size:9px;line-height:1.35}
.parallel-note{font-size:10px;line-height:1.55}
.dialog-content{font-size:14px;line-height:1.65;color:#d0dcd4}
.dialog-date,.dialog-link,.dialog-type{font-size:10px}
.dialog-tags span{font-size:9px}
.game-statusbar,.game-status,.control-guide b{font-size:9px}
.shard-hud{font-size:10px}
.shard-hud strong{font-size:11px}
.contact-button{font-size:10px;min-height:39px}

.completion-panel[hidden]{display:none}
.completion-panel{position:absolute;z-index:6;inset:0;display:grid;place-items:center;padding:18px;background:rgba(8,16,18,.72);backdrop-filter:blur(4px)}
.completion-card{width:min(100%,440px);padding:27px 28px;background:linear-gradient(145deg,#26352f,#19272b);border:1px solid #9fbe67;border-radius:12px;box-shadow:0 25px 80px rgba(0,0,0,.42),0 0 36px rgba(204,243,107,.12)}
.completion-kicker{font:11px var(--mono);letter-spacing:.1em;color:var(--lime)}
.completion-card h2{font-size:clamp(26px,3vw,36px);line-height:1.14;letter-spacing:-.05em;margin:11px 0 10px}
.completion-card p{font-size:14px;line-height:1.6;color:#c8d7ce;margin:0 0 16px}
.completion-stats{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:19px}
.completion-stats span{font:10px var(--mono);color:#e0efdf;padding:7px 9px;border:1px solid #526b56;border-radius:5px;background:#21342b}
.completion-actions{display:flex;gap:9px;flex-wrap:wrap}
.completion-actions a,.completion-actions button{min-height:42px;padding:10px 12px;border-radius:5px;font:11px var(--mono);text-decoration:none;cursor:pointer}
.completion-actions a{background:var(--lime);color:#18221a;border:1px solid var(--lime);font-weight:500}
.completion-actions button{background:#24342e;color:#dbe9dc;border:1px solid #647b68}
.completion-actions a:hover,.completion-actions button:hover{filter:brightness(1.1)}
@media(max-width:560px){
  .section-heading{display:block}
  .checkpoint-readout{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:8px 1px 0}
  .checkpoint-readout .readout-label{margin:0}
  .canvas-wrap:not(.is-playing) .touch-controls{display:none}
  .timeline-item{grid-template-columns:99px minmax(0,1fr) 14px;gap:16px;min-height:62px;padding:9px 4px}
  .career-section .timeline::before{left:108px}
  .timeline-item::before{left:104px}
  .timeline-date{font-size:9px}
  .timeline-name{font-size:11px}
  .timeline-detail{font-size:9px}
  .profile-summary{font-size:12px}
  .dialog-content{font-size:13px}
  .game-statusbar,.game-status{font-size:8px}
  .completion-card{padding:21px}
  .completion-card p{font-size:13px}
}
