/* Illustrated game shell; live camera and recognition targets stay clear. */
body{background:#f6f4eb}header{background:#fffaf0!important;border-bottom:2px solid #e4d9be!important}.art-brand{height:76px;display:flex!important;align-items:center}.art-brand img{width:130px;height:86px;object-fit:contain;filter:drop-shadow(0 3px 3px #38224922)}header:has(.art-brand){height:auto;min-height:92px;padding-top:4px;padding-bottom:4px}.sidebar-logo{width:185px;max-width:100%;height:124px;object-fit:contain}.sidebar .brand{padding:0;justify-content:center}.sidebar{background:#fff9ee!important}.title-logo{width:250px;height:166px;object-fit:contain;display:block;margin:-12px 0 0}.intro .eyebrow{display:none}.intro h1{font-size:27px!important;margin:4px 0 8px!important;letter-spacing:-1px}.intro h1 br{display:none}.intro>div:first-child{width:52%}.intro{min-height:315px!important}.intro p{font-size:17px!important}.game-card{position:relative;border:3px solid #fff!important;box-shadow:0 7px 0 #d4c4e4,0 12px 30px #42345318!important;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-7px) rotate(-.4deg)}.card-top{position:absolute;left:0;right:0;top:0;z-index:1;background:linear-gradient(#221b4a80,transparent)!important;padding:14px!important;color:#fff!important}.card-top>span{background:#3c265cda!important;color:#fff;border:1px solid #ffffff70;font-size:13px}.card-top>b{background:#fff6d6;color:#614526;border:2px solid #ffdda0;box-shadow:0 3px 0 #ab8756;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:17px!important}.game-art{height:210px!important;overflow:hidden}.game-art img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.game-card:hover .game-art img{transform:scale(1.04)}.card-copy{background:linear-gradient(#fffdf9,#fff8ed)}.play-link{border:2px solid #ffffff70;box-shadow:0 4px 0 color-mix(in srgb,var(--accent),#000 30%);font-size:18px!important}.mascot-art{object-fit:contain;filter:drop-shadow(0 8px 7px #2e244022);animation:mascot-bob 3s ease-in-out infinite;height:auto}.mascot-art.thinking{animation:mascot-think 2s ease-in-out infinite}.ttori-panel{background:linear-gradient(#fff9,#f3e7ffed),url('/assets/game-teacher.png') center/cover!important;border:2px solid #e1d3ec}.ttori-panel .robot{width:210px;max-height:230px}.speech{position:relative;z-index:1;background:#fffef7!important;color:#40305c!important;border:2px solid #e7d7bc!important;box-shadow:0 4px 0 #d8c7e23d}.panel,.mission-panel,.arena-wrap{border:2px solid #e5d8c4!important;box-shadow:0 7px 0 #dfd4c555}.fruit-card{border-radius:18px!important;box-shadow:0 3px 0 #e3dbe8;transition:transform .15s}.fruit-card:hover{transform:translateY(-3px)}.welcome{background:linear-gradient(0deg,#201a39 5%,#201a39b0 42%,#201a3900 80%),url('/assets/game-motion.png') center/cover;justify-content:flex-end;padding-bottom:75px!important}.camera-art{display:none}.welcome h2{font-size:29px!important;text-shadow:0 2px 5px #000}.welcome p{max-width:90%;line-height:1.55!important;text-shadow:0 2px 4px #000}.welcome .primary{margin-top:16px}.camera-stage:has(.welcome:not([hidden])){min-height:520px}.race-overlay:has(#connect){background:linear-gradient(0deg,#fff7e9 0%,#fff7e9ee 24%,#fff7e911 80%),url('/assets/game-race.png') center/cover!important;justify-content:flex-end;padding-bottom:25px!important}.race-overlay:has(#connect) .flag{display:none}.race-overlay:has(#connect) h2{color:#302146;text-shadow:0 1px 4px white;font-size:28px}.race-overlay:has(#connect) p{margin:8px 0 16px!important;background:#fff9e9e8;border-radius:12px;padding:8px}.mission-panel{background:#fffdf7!important}.target-wrap{border:2px solid #e5d9f5;background:radial-gradient(ellipse at bottom,#dccafb,#fffaf5)!important}.round-overlay{background:#29213aed!important}.round-overlay .big-symbol{filter:drop-shadow(0 3px 6px #ffd059);color:#ffdc69}.total-score{border:2px solid #dac297;background:linear-gradient(#fff8da,#ffeabd);color:#5d4167}.race-hud{background:#fff6e0!important}.race-coach{border-bottom:3px solid #e4c286}.boost{background:#fff2c9!important}.heading,.title-row{padding:16px 22px;background:#fffaf1dc;border-radius:20px;border:1px solid #ead9bf}.game-navigation{background:#fffcf5!important}.primary{border:2px solid #d6bbff!important;background:linear-gradient(#9361dd,#653bab)!important;box-shadow:0 5px 0 #422675,0 8px 15px #42267525!important}.primary:active{transform:translateY(3px)!important;box-shadow:0 2px 0 #422675!important}@keyframes mascot-bob{50%{transform:translateY(-7px) rotate(2deg)}}@keyframes mascot-think{50%{transform:rotate(-5deg)}}@media(min-width:900px) and (max-height:850px){.intro{min-height:260px!important;padding-top:15px!important;padding-bottom:15px!important}.title-logo{width:200px;height:133px}.intro h1{font-size:25px!important}.game-art{height:175px!important}.ttori-panel .robot{max-height:175px}.camera-stage:has(.welcome:not([hidden])){min-height:460px}}@media(max-width:600px){.art-brand{height:60px}.art-brand img{height:68px;width:105px}header:has(.art-brand){min-height:72px}.sidebar-logo{width:130px;height:86px}.intro{min-height:300px!important}.title-logo{width:205px;height:137px}.intro>div:first-child{width:100%}.intro h1{max-width:200px;font-size:24px!important}.intro h1 br{display:block}.game-art{height:220px!important}.heading,.title-row{padding:12px}.welcome h2{font-size:23px!important}.camera-stage:has(.welcome:not([hidden])){min-height:470px}.race-overlay:has(#connect) h2{font-size:23px}.race-overlay:has(#connect){padding:15px!important}.race-overlay:has(#connect) p{font-size:14px!important}.ttori-panel .robot{max-height:170px}}@media(prefers-reduced-motion:reduce){.mascot-art{animation:none}.game-card,.game-art img{transition:none}}
.intro h1 em{margin-left:.25em}
/* Friendly display face; keep longer instructions in a readable body face. */
h1,h2,h3,.primary,.train-button,.play-link,.experiment-name,#coach-title,.welcome h2,.round-overlay h2{font-family:LabJua,"Malgun Gothic",sans-serif!important;font-weight:400!important;letter-spacing:0!important}.card-copy h2{font-size:28px!important;margin-top:0}.play-link{font-size:21px!important}.card-copy p{line-height:1.65}.intro h1{line-height:1.35}.game-card .card-copy{padding-top:22px}.card-top>span{font-weight:600}.primary,.train-button{font-size:20px!important}@media(max-width:600px){.card-copy h2{font-size:27px!important}.primary,.train-button{font-size:18px!important}}
.slogan-art{display:block;width:280px;height:72px;overflow:hidden;position:relative;flex-shrink:0}.slogan-art img{position:absolute;width:100%;height:auto;left:0;top:50%;transform:translateY(-50%)}footer{flex-wrap:wrap;gap:16px}.legal-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;width:100%;border-top:1px solid #e1d7c7;padding-top:14px}.legal-links a{font-family:"Malgun Gothic",sans-serif;font-size:13px!important;color:#554369!important;text-decoration:underline;text-underline-offset:4px;min-height:32px;display:inline-flex;align-items:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:600px){.slogan-art{width:190px;height:55px}.legal-links{gap:14px}}
/* Reference: kyuz.co.kr — restrained surfaces, readable typography. */
:root,body{font-family:LabPretendard,"Malgun Gothic",sans-serif!important;background-color:#f7f6f2;color:#0f172a}button,select,input{font-family:inherit!important}h1,h2,h3,.primary,.train-button,.play-link,.experiment-name,.welcome h2{font-family:LabPretendard,"Malgun Gothic",sans-serif!important;font-weight:750!important;letter-spacing:-.035em!important}#coach-title,.round-overlay h2{font-family:LabJua,sans-serif!important;font-weight:400!important}header{background:#faf9f6!important;border-bottom:1px solid #e8e7e3!important}.game-card{border:1px solid #e9e7e2!important;border-radius:22px;box-shadow:0 1px 2px #0f172a0d,0 2px 8px #0f172a0a!important}.game-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0f172a10!important}.card-copy{background:#fff!important;padding:24px!important}.card-copy h2{font-size:25px!important}.card-copy p{color:#526073;font-size:16px;line-height:1.65}.play-link{border:0!important;box-shadow:none!important;border-radius:12px;font-size:17px!important;padding:14px 16px}.primary,.train-button{background:#6554c0!important;border:0!important;box-shadow:none!important;border-radius:12px!important;font-size:18px!important}.primary:hover{background:#5745b2!important}.primary:active{box-shadow:none!important;transform:translateY(1px)!important}.panel,.mission-panel,.arena-wrap{border:1px solid #e7e4df!important;box-shadow:0 2px 8px #0f172a08!important}.fruit-card{box-shadow:none!important;border-radius:13px!important}.speech{border:1px solid #e7e1ed!important;box-shadow:none!important;background:#fff!important}.heading,.title-row{background:transparent;border:0;padding:8px 0}.sidebar,.game-navigation{background:#faf9f6!important}.card-top>b{box-shadow:none;border:1px solid #fff8}.note{background:#f1f0ed;border:1px solid #e4e1db;color:#485363}.note p{color:#616b79}.intro h1{font-size:28px!important;font-weight:800!important}.intro p{color:#475569!important}.ttori-panel{border:1px solid #e7e1ed!important}.total-score{background:#efecf7;border:1px solid #e0dbee}.legal-links a{font-family:inherit}.race-tag{display:none}@media(max-width:600px){.card-copy{padding:22px!important}.card-copy h2{font-size:25px!important}.intro h1{font-size:25px!important}}
footer .copyright{display:block;width:100%;font-size:12px;color:#64748b;line-height:1.6;font-weight:400;letter-spacing:0}
.legal-links a{font-family:LabPretendard,"Malgun Gothic",sans-serif!important}
#game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-order{font-size:15px;color:#526073;margin:0 0 20px;line-height:1.7}.card-top>span{max-width:calc(100% - 50px)}@media(max-width:600px){#game-grid{grid-template-columns:1fr}.learning-order{font-size:14px}}
