/* Version 0.2: one 3D context, readable overlays and native-language menus. */
select{font:inherit;color:inherit;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-height:44px}
select:focus-visible{outline:3px solid #bd7430;outline-offset:3px}
.header-tools{display:flex;align-items:center;gap:12px;min-width:0}
.language-picker{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;min-width:0}
.language-picker select{max-width:134px;font-size:12px}
.graphics-picker{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;font-weight:700;margin:16px 0 24px}
.modal .language-picker{justify-content:space-between;margin:20px 0}
.mastery-card{margin:25px 0;border:1px solid #dddfc8;background:linear-gradient(140deg,#f5f4e7,#eaf0df);border-radius:22px;padding:24px}
.mastery-card h2{font-size:23px;line-height:1.2;margin:15px 0 10px}
.mastery-card p{font-size:13px;color:var(--muted)}
.mastery-records{display:flex;justify-content:space-between;gap:16px;margin:20px 0;font-size:12px;color:var(--muted)}
.mastery-records b{display:block;font-size:26px;color:var(--ink);margin-top:4px}
.mastery-card.unlocked{border-color:#b8a450;box-shadow:0 10px 30px #b4a05b18}
.mastery-card .primary{width:100%}
.mastery-score{display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;margin:10px 0}
.mastery-score b{font-size:28px;color:#8e6a23}
.canvas-wrap{isolation:isolate;direction:ltr}
#scene-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;display:block}
#game-canvas{position:relative;z-index:1;background:transparent}
.game-layer{z-index:2}
.game-card{transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s}
.game-card:hover{transform:translateY(-6px) rotate(-.3deg);box-shadow:0 14px 32px #243b3217}
.level.current{position:relative;box-shadow:0 5px 0 #243b3220,0 0 0 4px #ffffff,0 0 0 6px var(--pale)}
.world-title h3{overflow-wrap:anywhere}.world-title>span:last-child{margin-inline-start:auto;margin-left:0}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{letter-spacing:0;line-height:1.35}
[dir=rtl] .brand,[dir=rtl] .card-number,[dir=rtl] .result-stars{direction:ltr}
.contact-strip a[href^="tel:"],.contact-strip a[href^="mailto:"]{direction:ltr;unicode-bidi:isolate}
[dir=rtl] .card-logo{float:left;margin-inline-start:8px;margin-inline-end:0}
[dir=rtl] .back-link{direction:rtl}
[dir=rtl] .game-layer{direction:rtl}
[dir=rtl] .feature-phone{right:auto;left:2px;transform:rotate(-11deg)}
[dir=rtl] .feature-play{left:auto;right:30px}
[dir=rtl] .feature-copy{margin-inline-end:auto}
.result-panel,.pause-panel{max-height:100%;overflow-y:auto;overscroll-behavior:contain}
.pause-panel .level-goal{padding:10px 12px;border:1px solid #d4dbc9;border-radius:12px;background:#f4f6eb;font-size:12px;font-weight:700;line-height:1.5}
@media(max-width:1000px){.topbar nav{gap:17px}.header-tools{gap:7px}.language-picker>span{display:none}}
@media(max-width:600px){.topbar{height:82px;padding-inline:19px}.brand{font-size:22px;gap:9px}.brand-mark{width:40px;height:40px;font-size:34px}.brand-sub{font-size:8px}.header-tools .settings-button{display:none}.language-picker select{max-width:122px;padding:9px;font-size:11px}.mastery-card{padding:20px}.mastery-card h2{font-size:21px}.graphics-picker{flex-wrap:wrap}.world-title h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){.game-card,.level{transition:none}.game-card:hover{transform:none}}

.chapter-medals{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:20px}.chapter-medal{display:flex;align-items:center;flex-direction:column;color:#8e9a88;gap:3px;font-size:10px}.chapter-medal>span{display:grid;place-items:center;width:36px;height:36px;border:2px solid #d2d7c5;border-radius:50%;font-size:22px;background:#edf0e2}.chapter-medal.earned>span{color:#8a5c19;background:linear-gradient(135deg,#fff3b3,#dcb66a);border-color:#bf9246;box-shadow:0 3px 0 #bc985549}.chapter-medal small{font-size:8px;max-width:100%;overflow-wrap:anywhere;text-align:center}

/* The featured app has its own save and route, outside the ten-game catalog. */
.wobora-hero{--game:#136b72;--pale:#dcefeb;gap:38px;padding-block:42px 48px}
.wobora-hero .hero-copy{min-width:0}.wobora-hero h1{font-size:clamp(40px,5vw,66px);margin:16px 0 10px;letter-spacing:-.04em;color:#174a4d}
.wobora-hero .hero-copy h2{font-size:clamp(23px,2.7vw,34px);line-height:1.2;max-width:18ch;margin-bottom:15px}
.wobora-hero p.wobora-features{font-size:12px;margin:18px 0 7px}.wobora-hero p.wobora-limit{font-size:11px;margin:0;color:#59665c}
.wobora-discovery{display:flex;align-items:flex-end;min-height:380px;background:#173f47;color:#fff}
.wobora-discovery>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.wobora-discovery:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#102d39f2 0%,#102d3966 57%,transparent 90%);pointer-events:none}
.wobora-discovery-copy{position:relative;z-index:1;padding:28px;max-width:100%}.wobora-discovery-copy>span:first-child{font-size:10px;letter-spacing:.08em;font-weight:800}
.wobora-discovery-copy h2{font-size:36px;margin:10px 0}.wobora-discovery-copy p{font-size:14px;color:#f0f8ef;margin:0 0 18px}
.wobora-play-label{font-size:13px;font-weight:800;border-bottom:1px solid #ffffff80;padding-bottom:5px}
.wobora-card{--game:#136b72;--pale:#dcefeb;border-color:#aacbc6}.wobora-card .card-art{background:#173f47}
.wobora-card .wobora-cover{display:block;width:100%;height:100%;object-fit:cover}
.wobora-card-badge{position:absolute;inset-block-start:10px;inset-inline-start:10px;background:#f8f4de;color:#174a4d;font-size:10px;font-weight:800;padding:6px 9px;border-radius:20px}
.wobora-card .card-bottom{gap:7px;flex-wrap:wrap}.wobora-card .card-bottom>span:last-child{color:#174a4d}
.wobora-recommendation{display:flex;align-items:center;gap:22px;margin-block:32px;padding:26px;border:1px solid #b8d5cd;border-radius:24px;background:linear-gradient(120deg,#e8f3e7,#d9eeeb)}
.wobora-recommendation>img{flex:none;border-radius:18px}.wobora-recommendation>div{flex:1;min-width:0}.wobora-recommendation h2{font-size:25px;margin:10px 0 8px}
.wobora-recommendation p{font-size:13px;color:#53665d}.wobora-recommendation small{display:block;font-size:11px;margin-top:8px;color:#53665d}.wobora-recommendation .primary{flex:none}
[dir=rtl] .wobora-discovery-copy>span:first-child{letter-spacing:0}
@media(max-width:850px){.wobora-hero{gap:24px}.wobora-discovery{min-height:340px}.wobora-recommendation{flex-wrap:wrap}.wobora-recommendation .primary{margin-inline-start:94px}}
@media(max-width:600px){.wobora-hero{padding-block:24px 30px;gap:22px}.wobora-hero h1{font-size:44px;margin:12px 0 8px}.wobora-hero .hero-copy h2{font-size:24px;max-width:100%;margin-bottom:12px}.wobora-hero .hero-copy>p{margin-bottom:18px}.wobora-hero .hero-copy>.primary{width:100%}.wobora-discovery{min-height:270px}.wobora-discovery-copy{padding:22px}.wobora-discovery-copy h2{font-size:31px}.wobora-recommendation{padding:20px;gap:14px}.wobora-recommendation>img{width:52px;height:52px}.wobora-recommendation h2{font-size:22px}.wobora-recommendation .primary{margin-inline-start:0;width:100%}.wobora-card-badge{font-size:9px;max-width:calc(100% - 20px)}.wobora-card .card-bottom{font-size:10px}}
@media(prefers-reduced-motion:reduce){.wobora-discovery,.wobora-card{transition:none}.wobora-card:hover{transform:none}}
.wobora-store-preview{margin:32px 0 56px;padding:28px;border:1px solid #c9d9d1;border-radius:28px;background:#f7faf6}
.wobora-store-preview .section-heading{gap:20px;flex-wrap:wrap}.wobora-store-preview .section-heading h2{margin:12px 0}
.wobora-store-preview>p{max-width:80ch;color:#4a6159;font-size:14px;line-height:1.6}
.wobora-art-strip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;padding:10px 2px 18px}
.wobora-art-strip>a{flex:0 0 min(320px,80vw);scroll-snap-align:start;color:inherit;text-decoration:none}
.wobora-art-strip img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:16px;background:#183a47}
.wobora-art-strip span{display:block;font-weight:700;margin-top:12px}.wobora-art-strip>a:focus-visible{outline:3px solid #216a69;outline-offset:3px;border-radius:16px}
@media(max-width:600px){.wobora-store-preview{padding:18px;margin:24px 0 36px}.wobora-store-preview .section-heading h2{font-size:25px}}
