/* Six Rubik cube faces; each face always shows exactly 3 columns × 3 rows. */
.skill-deck-section{position:relative;z-index:2;padding-top:28px}
.skill-deck{padding:30px;display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:40px;align-items:center;border-color:rgba(118,166,255,.24)}
.skill-deck-intro h2{margin:12px 0 16px}
.skill-deck-intro p{max-width:420px;margin-bottom:22px;line-height:1.75}
.skill-deck-body{min-width:0}
.face-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.face-tab{display:flex;gap:9px;align-items:center;min-width:0;min-height:43px;padding:7px 10px;color:#b4c7e9;border:1px solid rgba(135,172,241,.17);background:rgba(9,17,41,.75);border-radius:11px;text-align:left;cursor:pointer;font:600 10px/1.25 var(--font);transition:background .2s,border-color .2s}
.face-tab span{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:7px;background:rgba(122,145,245,.11);color:var(--face-accent);font:bold 12px var(--display)}
.face-tab:hover,.face-tab.active{background:rgba(50,65,122,.5);color:white;border-color:var(--face-accent)}
.face-tab:focus-visible{outline:2px solid var(--face-accent);outline-offset:2px}
.skill-deck-display{background:linear-gradient(135deg,rgba(10,19,45,.94),rgba(19,20,55,.84));border:1px solid rgba(145,173,241,.21);border-radius:16px;padding:16px}
.cube-face-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.cube-face-heading span{color:#e8f5ff;font:700 15px var(--display)}
.cube-face-heading small{font-size:9px;letter-spacing:.08em;color:#88a6d8}
.cube-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.cube-skill-tile{position:relative;min-width:0;min-height:86px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:11px 12px;border:1px solid rgba(139,176,240,.17);border-radius:12px;background:linear-gradient(145deg,rgba(49,74,137,.28),rgba(12,23,60,.53));transition:border-color .2s,transform .2s}
.cube-skill-tile:hover{border-color:rgba(101,220,255,.65);transform:translateY(-2px)}
.cube-skill-abbr{font:700 15px/1 var(--display);color:#8fe2ff;letter-spacing:.025em}
.cube-skill-name{font:500 11px/1.3 var(--font);color:#b1c4e3;overflow-wrap:anywhere;max-width:100%}
.cube-skill-tile small{position:absolute;top:9px;right:9px;color:#617aaf;font:600 8px var(--display)}
/* Friendly, CSS-only companion — no permanent full-screen canvas. */
.orbit-guide{--bot-glow:#65ceff;position:fixed;right:23px;bottom:20px;z-index:980;display:flex;align-items:flex-end;gap:9px;max-width:315px;opacity:0;transform:translate3d(0,42px,0) scale(.93);pointer-events:none;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.orbit-guide.guide-visible{opacity:1;transform:translate3d(0,0,0) scale(1);pointer-events:auto}
.guide-bubble{position:relative;width:196px;padding:12px 28px 13px 13px;border:1px solid rgba(122,185,255,.4);border-radius:14px 14px 3px 14px;background:linear-gradient(135deg,rgba(19,29,66,.94),rgba(9,15,38,.97));box-shadow:0 16px 36px rgba(0,0,0,.35),0 0 18px rgba(67,126,247,.16);backdrop-filter:blur(9px);transition:opacity .2s,transform .2s}
.guide-bubble.guide-bubble-hidden{opacity:0;pointer-events:none;transform:translateY(8px)}
.guide-bubble small{display:block;font:700 9px/1.2 var(--font);letter-spacing:.11em;color:#79d9ff;margin-bottom:6px}
.guide-bubble p{font:500 12px/1.45 var(--font);color:#e2edff;margin:0}
.guide-dismiss{position:absolute;top:5px;right:6px;width:23px;height:23px;border:0;background:transparent;color:#a9c2e9;font-size:18px;cursor:pointer}
.guide-robot{position:relative;width:77px;height:90px;padding:0;border:0;background:transparent;flex:none;cursor:pointer;animation:guide-hover 3s ease-in-out infinite}
.guide-robot:focus-visible{outline:2px solid #8edbff;outline-offset:4px;border-radius:18px}
.guide-face{position:absolute;top:19px;left:9px;width:59px;height:52px;border:3px solid #84c9fb;border-radius:20px;background:linear-gradient(150deg,#1f4e90,#132455 62%,#402c92);display:flex;justify-content:center;align-items:center;gap:12px;box-shadow:inset 0 3px 10px rgba(175,220,255,.4),0 0 19px rgba(65,166,255,.7),0 9px 15px rgba(0,0,0,.25)}
.guide-eye{width:8px;height:13px;border-radius:10px;background:#a6f8ff;box-shadow:0 0 11px #a6f8ff;animation:guide-blink 6s ease-in-out infinite}
.guide-eye:nth-child(2){animation-delay:.08s}
.guide-smile{position:absolute;left:24px;top:31px;width:13px;height:7px;border-bottom:2px solid #9dfaff;border-radius:50%}
.guide-antenna{position:absolute;top:4px;left:37px;height:16px;width:3px;background:#8dcaff;border-radius:4px}
.guide-antenna:before{content:"";position:absolute;top:-5px;left:-5px;width:13px;height:13px;border-radius:50%;background:#b5a7ff;box-shadow:0 0 15px #9a8aff}
.guide-ear{position:absolute;top:37px;width:10px;height:20px;border:2px solid #84ceff;background:#1d3974;border-radius:7px}
.guide-ear-left{left:2px}.guide-ear-right{right:2px}
.guide-body{position:absolute;left:21px;bottom:0;width:35px;height:22px;border:2px solid #79b8ff;border-radius:7px 7px 12px 12px;background:linear-gradient(160deg,#3b5aa5,#171b56);box-shadow:0 0 15px #6e88ff55}
.guide-body::after{content:"";position:absolute;left:12px;top:5px;width:8px;height:8px;border-radius:50%;background:#9ffff2;box-shadow:0 0 13px #7bffee}
@keyframes guide-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes guide-blink{0%,45%,48%,100%{transform:scaleY(1)}46%,47%{transform:scaleY(.12)}}
@media(max-width:1050px){.skill-deck{grid-template-columns:1fr;gap:22px}.skill-deck-intro p{max-width:690px}.face-switcher{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
 .skill-deck{padding:18px;gap:20px}
 .face-switcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .face-tab{min-height:42px;font-size:10px}
 .skill-deck-display{padding:12px}
 .cube-skill-grid{gap:6px}
 .cube-skill-tile{min-height:80px;padding:9px 6px}
 .cube-skill-abbr{font-size:14px}
 .cube-skill-name{font-size:10px}
 .cube-face-heading{align-items:flex-start}
 .cube-face-heading small{text-align:right;max-width:97px}
 .orbit-guide{right:9px;bottom:12px;max-width:190px;gap:5px}
 .guide-bubble{width:131px;padding:10px 18px 10px 10px}
 .guide-bubble small{font-size:7px}
 .guide-bubble p{font-size:10px}
 .guide-robot{transform-origin:right bottom;scale:.72;margin-left:-13px;margin-right:-12px;margin-bottom:-8px}
 .guide-robot:focus-visible{scale:.72}
 .cube-controls{flex-wrap:wrap;justify-content:center}
 .hero-canvas{touch-action:pan-y}
}
@media(max-width:360px){.cube-skill-tile{min-height:88px}.cube-skill-name{font-size:9px}.face-tab{padding:7px 6px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.orbit-guide,.guide-bubble,.guide-robot,.guide-eye{animation:none!important;transition:none!important}.cube-skill-tile{transition:none!important}}
