
:root{
  --navy:#072f57;--navy2:#0b4f86;--blue:#126caa;--gold:#ffbd2e;--gold2:#f28a00;
  --cream:#fff8ea;--paper:#fffdf7;--ink:#153454;--muted:#687485;--border:#e4d7c3;
  --shadow:0 16px 36px rgba(7,47,87,.18)
}
*{box-sizing:border-box}
html{background:#eaf0f6}
body{margin:0;font-family:Tahoma,Arial,sans-serif;background:linear-gradient(180deg,#eef3f8,#dfe9f2);color:var(--ink);min-height:100vh}
button,select,input{font:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
button:focus-visible,select:focus-visible,input:focus-visible{outline:4px solid #ffd154;outline-offset:3px}
#app{max-width:1500px;margin:auto;padding:14px 14px 92px}
.top-nav{position:sticky;top:8px;z-index:20;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:20px}
.glass{background:rgba(7,47,87,.91);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 24px rgba(0,0,0,.16)}
.brand-mini{display:flex;align-items:center;gap:10px;color:#fff;font-weight:900}.brand-mini img{width:42px;height:42px;border-radius:12px;object-fit:cover}
.icon-btn{width:48px;height:48px;border:0;border-radius:15px;background:#0b3d6d;color:#fff;font-size:21px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 5px 0 #042747}
.top-actions{display:flex;gap:8px}
.screen{display:none}.screen.active{display:block;animation:fade .2s ease}
@keyframes fade{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}
.hero-card{display:grid;grid-template-columns:1fr;gap:0;overflow:hidden;border-radius:32px;background:radial-gradient(circle at 15% 15%,#1a72b4,transparent 34%),linear-gradient(145deg,#0b5b99,#062f58 68%);box-shadow:var(--shadow);border:2px solid rgba(255,255,255,.18)}
.hero-image-wrap{min-height:520px;background:#073a67}.hero-image{width:100%;height:100%;object-fit:cover;object-position:left center;display:block}
.hero-copy{padding:clamp(30px,5vw,72px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;position:relative}
.hero-copy:before{content:"✦  ✧  ✦";position:absolute;top:22px;right:30px;color:#ffd55e;font-size:28px;opacity:.65}
.eyebrow{display:inline-flex;padding:8px 15px;background:#0a345d;border:1px solid #4e8fc1;border-radius:999px;color:#ffd45b;font-weight:900;margin-bottom:14px}
.hero-copy h1{font-size:clamp(3rem,6.8vw,6rem);line-height:.98;margin:0;text-shadow:0 6px 0 rgba(0,0,0,.23);letter-spacing:-.04em}
.hero-copy h1 span{display:block;color:#ffbd2e}
.hero-tag{display:inline-block;background:linear-gradient(180deg,#ffca4a,#ee8f0b);color:#153454;border-radius:999px;padding:9px 17px;font-weight:1000;font-size:clamp(1rem,2.2vw,1.35rem);box-shadow:0 6px 0 #a95808}
.hero-desc{max-width:560px;color:#e7f2fb;font-size:1.12rem;line-height:1.9}
.btn{border:0;border-radius:18px;min-height:54px;padding:0 22px;font-weight:1000;box-shadow:0 6px 0 rgba(0,0,0,.18);transition:.13s ease}
.btn:active{transform:translateY(3px);box-shadow:0 3px 0 rgba(0,0,0,.18)}
.btn-xl{min-height:64px;padding:0 32px;font-size:1.2rem}
.btn-gold{background:linear-gradient(180deg,#ffd45b,#f39209);color:#153454;border:2px solid #ffe89b}
.btn-blue{background:linear-gradient(180deg,#197bc2,#0b4b85);color:#fff;border:2px solid #58a6dc}
.btn-green{background:linear-gradient(180deg,#42cf8d,#139a61);color:#fff;border:2px solid #7ce5b1}
.btn-light{background:#fff;color:#153454;border:2px solid #d8ccbb}
.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.feature-card,.menu-card,.activity-card,.stat-card,.progress-card{background:linear-gradient(180deg,#fff,#fbf7ef);border:1px solid var(--border);box-shadow:0 7px 0 #d7cbb9,0 12px 23px rgba(0,0,0,.08)}
.feature-card{border-radius:20px;padding:18px;text-align:center}.feature-card b{display:block;font-size:1.05rem}.feature-card span{display:block;color:var(--muted);margin-top:5px;font-size:.9rem}
.home-menu{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.menu-card{min-height:145px;border-radius:22px;padding:16px;border-top:5px solid #0d66a5;color:var(--ink)}
.menu-card span{display:block;font-size:38px}.menu-card b{display:block;margin:8px 0 4px;font-size:1rem}.menu-card small{color:var(--muted)}
.cream-panel{background:linear-gradient(180deg,#fffdf7,#f9eddb);border-radius:30px;padding:clamp(20px,4vw,42px);min-height:650px;box-shadow:var(--shadow);border:2px solid #fff}
.section-title{text-align:center;margin-bottom:26px}.section-title.compact{margin-bottom:20px}.section-title h2{font-size:clamp(2.3rem,5vw,4.2rem);margin:5px 0;color:#14365d}.section-title p{color:var(--muted);font-size:1.06rem}.big-icon{font-size:76px;filter:drop-shadow(0 8px 7px rgba(0,0,0,.15))}
.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1100px;margin:auto}
.time-card{min-height:180px;border:2px solid rgba(255,255,255,.95);border-radius:26px;padding:15px;color:#153454;font-weight:1000;box-shadow:0 9px 0 rgba(30,49,68,.16),0 15px 24px rgba(0,0,0,.11);position:relative}
.time-card strong{display:block;font-size:1.8rem}.time-card span{display:block;margin-top:5px}.time-card em{display:inline-block;font-style:normal;background:rgba(255,255,255,.8);padding:7px 12px;border-radius:999px;margin-top:12px}
.time-emoji{font-size:50px;filter:drop-shadow(0 6px 4px rgba(0,0,0,.15))}
.yellow{background:linear-gradient(145deg,#ffd75c,#eda716)}.green{background:linear-gradient(145deg,#62dfac,#1ab27d)}.blue{background:linear-gradient(145deg,#66bff4,#4388d3)}.purple{background:linear-gradient(145deg,#d58bf0,#9e59ca)}.red{background:linear-gradient(145deg,#ff8489,#e64559)}.wide{grid-column:1/-1}
.game-shell{background:linear-gradient(155deg,#0d62a2,#052e57);border-radius:30px;padding:clamp(16px,3vw,30px);min-height:690px;color:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}
.game-shell:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 25%,rgba(77,177,242,.24),transparent 40%);pointer-events:none}
.game-toolbar,.round-bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px}
.pill-btn,.status-pill{border-radius:999px;padding:9px 15px;font-weight:900}.pill-btn{background:#0a3c69;color:#fff;border:2px solid #5895c3}.status-pill{background:#fff1ce;color:#153454;border:1px solid #e2b852}
.game-intro,.game-play,.result-view{position:relative;z-index:2;text-align:center}
.game-visual{max-width:520px;margin:18px auto;border-radius:25px;overflow:hidden;border:2px solid rgba(255,255,255,.2);box-shadow:0 16px 30px rgba(0,0,0,.25)}.game-visual img{display:block;width:100%;height:300px;object-fit:cover}
.wood-sign{display:inline-block;background:linear-gradient(180deg,#ffc854,#dc7c17);color:#13345a;border-radius:19px;padding:10px 25px;box-shadow:0 7px 0 #9b5012;font-weight:1000;font-size:clamp(2rem,5vw,3.6rem)}
.game-intro p{font-size:clamp(1.05rem,2.5vw,1.5rem);line-height:1.8}
.round-bar{max-width:900px;margin:8px auto 20px;padding:8px 12px;background:#083967;border-radius:16px}.round-bar span{font-weight:900}
.game-play h2{font-size:clamp(2rem,5vw,3.5rem);margin:10px 0 18px}
#playArea{max-width:900px;margin:0 auto;min-height:230px;display:grid;place-items:center}
.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:760px}.memory-cell{min-height:105px;background:linear-gradient(180deg,#fff,#efe5d4);border-radius:18px;display:grid;place-items:center;font-size:44px;box-shadow:0 6px 0 #bca98d;color:#153454}
.question-card{width:100%;max-width:760px;background:#fff8e8;color:#153454;border:3px solid #eab13b;border-radius:24px;padding:24px}.question-card h3{font-size:clamp(1.45rem,3vw,2.2rem);margin:0 0 18px}
.options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.option{min-height:58px;border:0;border-radius:16px;background:#e9f2fb;color:#153454;font-weight:900;border:2px solid #c4d9ec}.option.correct{background:#c7f2d9;border-color:#3bb477}.option.wrong{background:#ffd7d7;border-color:#dd6565}
.team-board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:850px}.team-card{background:#fff;color:#153454;border-radius:20px;padding:16px}.team-score{font-size:3rem;font-weight:1000}.team-card button{width:50px;height:50px;border:0;border-radius:14px;background:#ffae20;font-size:1.5rem;font-weight:1000}
.timer-ring{width:155px;height:155px;border-radius:50%;margin:22px auto 12px;display:grid;place-items:center;background:#062e55;border:10px solid #f5b82f;box-shadow:0 0 0 6px #0d4677,inset 0 0 25px rgba(0,0,0,.28);font-size:2.3rem;font-weight:1000;color:#ffd45d;font-variant-numeric:tabular-nums}
.game-actions,.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.result-view{padding:38px 0}.trophy-3d{font-size:120px;filter:drop-shadow(0 12px 8px rgba(0,0,0,.3))}.result-view h2{font-size:clamp(2.8rem,6vw,5rem);color:#ffd25d;margin:0}.result-view p{font-size:1.25rem}
.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:700px;margin:28px auto}.result-stats div{background:#fff8e8;color:#153454;border-radius:20px;padding:15px}.result-stats span{font-size:28px;display:block}.result-stats b{font-size:2.2rem;display:block}.result-stats small{color:#667}
.activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.activity-card{border-radius:22px;padding:14px;position:relative;text-align:center}.activity-card img{width:100%;height:150px;object-fit:cover;border-radius:17px}.activity-card .activity-icon{font-size:52px}.activity-card h3{margin:9px 0 5px}.activity-card p{color:var(--muted);font-size:.9rem;min-height:43px}.activity-meta{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:8px 0}.activity-meta span{background:#edf4fb;border-radius:999px;padding:5px 8px;font-size:.78rem}.fav-btn{position:absolute;left:12px;top:12px;width:42px;height:42px;border:0;border-radius:13px;background:#fff;font-size:20px;box-shadow:0 4px 10px rgba(0,0,0,.16)}
.empty-state{text-align:center;padding:40px;color:var(--muted);font-size:1.1rem}.hidden{display:none!important}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat-card{border-radius:22px;padding:24px;text-align:center}.stat-card span{font-size:42px;display:block}.stat-card b{font-size:3rem;display:block}.stat-card small{color:var(--muted)}
.progress-card{margin:18px 0;border-radius:22px;padding:22px}.progress-track{height:18px;background:#e7e7e7;border-radius:999px;overflow:hidden}.progress-track div{height:100%;width:0;background:linear-gradient(90deg,#18a979,#ffb626);border-radius:inherit;transition:width .4s ease}.progress-card p{color:var(--muted)}
.settings{max-width:900px;margin:auto}.setting-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid #e7dcca}.setting-row span b,.setting-row span small{display:block}.setting-row span small{color:var(--muted);margin-top:4px}.setting-row input{width:24px;height:24px}.setting-row select{min-width:150px;padding:11px;border-radius:13px;border:1px solid #cfc4b3;background:#fff}
.bottom-nav{position:fixed;bottom:10px;left:50%;transform:translateX(-50%);width:min(760px,calc(100% - 24px));display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;background:rgba(6,47,87,.94);backdrop-filter:blur(12px);border-radius:22px;z-index:30;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.bottom-nav button{border:0;background:transparent;color:#fff;border-radius:15px;min-height:55px;font-weight:800}.bottom-nav span{display:block;font-size:20px}
@media(max-width:950px){
 .feature-strip{grid-template-columns:repeat(2,1fr)}.home-menu{grid-template-columns:repeat(2,1fr)}
 .time-grid{grid-template-columns:repeat(2,1fr)}.activity-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
 #app{padding:8px 8px 88px}.brand-mini span{display:none}
 .hero-copy{padding:26px 16px 34px}.hero-copy h1{font-size:3.1rem}
 .feature-strip{grid-template-columns:1fr 1fr}.feature-card{padding:13px}.home-menu{grid-template-columns:1fr 1fr}
 .time-grid{grid-template-columns:1fr 1fr;gap:10px}.time-card{min-height:150px}.wide{grid-column:1/-1}
 .memory-grid{grid-template-columns:repeat(3,1fr)}.memory-cell{min-height:78px;font-size:34px}
 .options{grid-template-columns:1fr}.team-board{grid-template-columns:1fr}
 .activity-grid{grid-template-columns:1fr}.stats-grid,.result-stats{grid-template-columns:1fr 1fr}.result-stats div:last-child{grid-column:1/-1}
 .setting-row{align-items:flex-start;flex-direction:column}.setting-row select{width:100%}
}

.hero-card-clean{min-height:560px;position:relative;background:
 radial-gradient(circle at 16% 20%,rgba(255,190,46,.19),transparent 22%),
 radial-gradient(circle at 84% 72%,rgba(85,177,238,.18),transparent 25%),
 linear-gradient(145deg,#0b5b99,#062f58 68%)}
.hero-copy-clean{min-height:560px;overflow:hidden}
.hero-orbit{display:grid;grid-template-columns:repeat(4,74px);gap:12px;margin:0 auto 22px;direction:ltr}
.hero-orbit span{width:74px;height:74px;display:grid;place-items:center;border-radius:23px;font-size:38px;background:linear-gradient(180deg,#fff9e8,#f4e2bc);box-shadow:0 8px 0 rgba(0,0,0,.17),0 13px 25px rgba(0,0,0,.17);border:2px solid rgba(255,255,255,.8)}
@media(max-width:560px){.hero-card-clean,.hero-copy-clean{min-height:500px}.hero-orbit{grid-template-columns:repeat(4,58px);gap:8px}.hero-orbit span{width:58px;height:58px;font-size:30px;border-radius:18px}}

/* v4: visual animal challenge + distinct taboo game */
.animal-question{width:100%;max-width:980px;margin:auto}.animal-question h3{font-size:clamp(1.3rem,2.6vw,2rem);margin:0 0 16px;color:#fff}
.animal-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.animal-photo-grid.hard{grid-template-columns:repeat(4,1fr)}
.animal-photo{position:relative;padding:0;border:3px solid rgba(255,255,255,.75);border-radius:18px;overflow:hidden;background:#fff;aspect-ratio:1/1;box-shadow:0 7px 0 rgba(0,0,0,.18)}
.animal-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .2s}.animal-photo:hover img{transform:scale(1.04)}
.animal-photo span{position:absolute;right:7px;bottom:7px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#153454;font-weight:1000;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.animal-photo.correct-animal{border:6px solid #4be08e;box-shadow:0 0 0 5px rgba(75,224,142,.28)}.animal-photo.wrong-animal{border:6px solid #ff6565;animation:shake .25s}
.animal-reason{margin:14px auto 0;max-width:800px;background:#fff4cf;color:#153454;border-radius:16px;padding:13px 18px;font-weight:900;line-height:1.7}
.taboo-card{width:100%;max-width:760px;background:linear-gradient(180deg,#fffaf0,#f6e8cf);color:#153454;border:4px solid #f3b62d;border-radius:28px;padding:24px;box-shadow:0 10px 0 #b97612}
.taboo-label{font-weight:900;color:#667;margin-bottom:7px}.taboo-label.danger{color:#b52835;margin-top:20px}.taboo-word{font-size:clamp(2.5rem,6vw,4.8rem);font-weight:1000;color:#0b4f86}.banned-words{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.banned-words span{background:#c93445;color:#fff;border-radius:999px;padding:9px 16px;font-weight:1000;font-size:1.15rem}.taboo-card p{font-size:1.05rem;font-weight:800}
@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@media(max-width:620px){.animal-photo-grid.hard{grid-template-columns:repeat(3,1fr)}.animal-photo-grid{gap:7px}.animal-photo{border-radius:13px}}


/* v5 — التحدي المتكامل التفاعلي */
.mixed-instruction{max-width:820px;margin:0 auto 16px;background:linear-gradient(135deg,#fff5cf,#fff);color:#153454;border:2px solid #f0bc3f;border-radius:20px;padding:14px 18px;text-align:center}.mixed-instruction b{display:block;font-size:1.35rem}.mixed-instruction span{display:block;margin-top:5px;color:#5d6876}
.mixed-memory-grid{transition:filter .45s ease,opacity .45s ease}.mixed-memory-cell{transition:filter .55s ease,transform .4s ease,opacity .4s ease}.blurred-memory{filter:blur(14px) grayscale(.35);transform:scale(.96);opacity:.62;user-select:none}
.round-note{max-width:760px;margin:12px auto;color:#d6ecff;font-size:.9rem}
.recall-panel{width:100%;max-width:880px;margin:18px auto 0;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.25);border-radius:22px;padding:18px}.recall-panel h3{font-size:1.45rem;margin:0 0 5px}.recall-panel p{color:#d7ecff}.recall-choices{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.recall-choice{min-height:68px;border-radius:16px;border:2px solid #d9e8f5;background:#fff;color:#153454;font-size:32px;transition:.15s ease}.recall-choice.selected-recall{border-color:#ffc43b;box-shadow:0 0 0 4px rgba(255,196,59,.25);transform:translateY(-2px)}.recall-choice.recall-correct{background:#c8f3db;border-color:#2fb371}.recall-choice.recall-wrong{background:#ffd5d5;border-color:#e25d5d}.recall-status{margin-top:12px;font-weight:900;color:#ffe077}
.letter-challenge{width:100%;max-width:780px;background:linear-gradient(145deg,#fff9e8,#fff);color:#153454;border:3px solid #f0b62e;border-radius:28px;padding:24px;text-align:center}.letter-badge{width:128px;height:128px;margin:0 auto 15px;border-radius:34px;display:grid;place-items:center;background:linear-gradient(145deg,#1d77be,#093d72);color:#fff;font-size:5rem;font-weight:1000;box-shadow:0 10px 0 #062e56}.letter-challenge h3{font-size:clamp(1.4rem,3vw,2.3rem)}.word-counter{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:18px}.word-counter button{width:60px;height:60px;border:0;border-radius:17px;background:#ffb522;color:#173654;font-size:2rem;font-weight:1000;box-shadow:0 5px 0 #c97108}.word-counter b{font-size:4rem;min-width:90px}.word-counter span{font-weight:900;color:#647080}.counter-complete{animation:counterPulse .8s ease 2}@keyframes counterPulse{50%{transform:scale(1.06)}}
.link-challenge{width:100%;max-width:820px;background:#fff8e7;color:#153454;border:3px solid #e9ae2d;border-radius:26px;padding:24px}.link-items{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.link-items span{background:#e8f3fd;border:2px solid #b8d7ef;border-radius:18px;padding:13px 20px;font-size:1.45rem;font-weight:1000}.link-items b{font-size:1.8rem;color:#e89112}.link-feedback{min-height:34px;margin-top:14px;font-weight:1000;color:#0b5f3c}
@media(max-width:700px){.recall-choices{grid-template-columns:repeat(4,1fr)}.blurred-memory{filter:blur(10px) grayscale(.35)}.letter-badge{width:100px;height:100px;font-size:4rem}}

.animal-photo{position:relative;overflow:hidden;min-height:150px;background:#eef4f8}
.animal-photo img{display:block;width:100%;height:100%;min-height:150px;object-fit:cover;object-position:center}
.animal-fallback{display:none;position:absolute;inset:0;place-items:center;font-size:5rem;background:linear-gradient(180deg,#fff,#edf4f8);z-index:1}
.animal-photo > span:last-child{position:absolute;z-index:3;right:10px;bottom:10px}

/* v15 subtle-difference animal game */
.animal-photo{background:#dfeaf2!important}
.animal-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.animal-photo-grid.easy .animal-photo{min-height:190px}
.animal-photo-grid.medium .animal-photo{min-height:170px}
.animal-photo-grid.hard .animal-photo{min-height:145px}

/* v16 precise animal differences */
.animal-photo img{
  object-fit:cover!important;
  object-position:center!important;
  filter:none!important;
  transform:none!important;
}
