:root{--green: #006633;--green-light: #e8f5e9;--red: #d21034;--gold: #ffd54f;--sky: #e3f2fd;--ink: #1a1a1a;--muted: #5f6b6b;--card: #ffffff;--shadow: 0 8px 24px rgba(0, 70, 40, .12);--radius: 20px;--touch: 52px;--font-ar: "Cairo", system-ui, sans-serif;--font-lat: "Nunito", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:linear-gradient(180deg,var(--green-light) 0%,#fff 40%,var(--sky) 100%);color:var(--ink);-webkit-tap-highlight-color:transparent}html[lang=ar] body,html[dir=rtl] body{font-family:var(--font-ar)}html[lang=fr] body,html[lang=en] body{font-family:var(--font-lat)}body{font-size:18px;line-height:1.45}#app{min-height:100dvh}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{max-width:960px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;position:sticky;top:0;z-index:20;background:#e8f5e9eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:3px solid rgba(0,102,51,.15)}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-ico{border-radius:12px;flex-shrink:0}.brand-title{font-weight:800;font-size:1.15rem;color:var(--green);line-height:1.1}.brand-slogan{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}.topbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-signin{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:800;font-size:.92rem;padding:10px 16px;border-radius:999px;min-height:44px;white-space:nowrap;box-shadow:var(--shadow);text-decoration:none;border:0}.btn-signin:hover,.btn-signin:focus-visible{filter:brightness(1.08);outline:3px solid rgba(0,102,51,.35)}.lang-switch{display:flex;gap:4px;background:#fff;padding:4px;border-radius:999px;box-shadow:var(--shadow)}.lang-btn{border:0;background:transparent;padding:8px 12px;border-radius:999px;font-weight:700;font-size:.85rem;cursor:pointer;min-height:40px;color:var(--muted)}.lang-btn.active{background:var(--green);color:#fff}.main{flex:1;padding:16px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;max-width:960px;margin-inline:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:2px solid rgba(0,102,51,.12);z-index:30;width:100%}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--touch);border-radius:14px;font-weight:700;font-size:.8rem;color:var(--muted)}.nav-item span:first-child{font-size:1.35rem}.nav-item.active{background:var(--green-light);color:var(--green)}.greeting{font-size:1.35rem;font-weight:800;color:var(--green);margin:4px 0 16px}.greeting.muted,.muted{color:var(--muted);font-weight:600}.section-title{font-size:1.25rem;margin:8px 0 14px;color:var(--ink)}.mag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}@media (min-width: 640px){.mag-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.mag-card{background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .15s ease;border:3px solid transparent}.mag-card:active{transform:scale(.98)}.mag-card:focus-visible{outline:3px solid var(--gold)}.mag-card img{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block;background:#ddd}.mag-card-body{padding:12px 14px 16px}.mag-card-body h2{margin:0 0 4px;font-size:1.1rem;color:var(--green)}.mag-card-body p{margin:0 0 10px;font-size:.85rem;color:var(--muted)}.mag-cta{display:inline-block;font-weight:800;color:var(--red);font-size:.95rem}.btn{border:0;border-radius:16px;min-height:var(--touch);padding:0 18px;font-weight:800;cursor:pointer;background:#fff;color:var(--green);box-shadow:var(--shadow)}.btn-primary{background:var(--green);color:#fff;width:100%;font-size:1.1rem}.btn-back{margin-bottom:12px}.btn-icon{width:var(--touch);min-width:var(--touch);padding:0;font-size:1.5rem;display:inline-flex;align-items:center;justify-content:center}.mag-head{display:flex;gap:16px;align-items:center;background:#fff;border-radius:var(--radius);padding:12px;box-shadow:var(--shadow);margin-bottom:18px}.mag-cover{width:96px;height:auto;border-radius:12px;box-shadow:0 4px 12px #0000001f}.mag-head h1{margin:0 0 4px;font-size:1.4rem;color:var(--green)}.page-count{font-weight:700;color:var(--red);margin:6px 0 0}.page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}@media (min-width: 600px){.page-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.page-thumb{position:relative;background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);border:3px solid transparent;min-height:120px}.page-thumb.colored{border-color:var(--gold)}.page-thumb img{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block}.page-num{position:absolute;inset-inline-start:6px;bottom:6px;background:#006633e6;color:#fff;font-weight:800;font-size:.85rem;padding:2px 8px;border-radius:999px}.badge-star{position:absolute;inset-inline-end:6px;top:6px;font-size:1.2rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.profile-form{display:flex;flex-direction:column;gap:14px;background:#fff;padding:18px;border-radius:var(--radius);box-shadow:var(--shadow)}.profile-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:var(--green)}.profile-form input{min-height:var(--touch);border:2px solid #c8e6c9;border-radius:14px;padding:0 14px;background:#fafafa}.profile-form input:focus{outline:3px solid var(--gold);border-color:var(--green)}.form-msg{color:var(--green);font-weight:800;text-align:center}.about{background:#fff;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.about .credit{font-weight:800;font-size:1.1rem;color:var(--green)}.about .small{font-size:.9rem}.about-lang{margin-top:20px}.studio-root,.studio{min-height:100dvh;display:flex;flex-direction:column;background:#1b2e24;color:#fff}.studio-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#0f1f18}.studio-bar .btn{background:#234433;color:#fff;box-shadow:none}.studio-title{flex:1;text-align:center;font-weight:800;font-size:1rem}.studio-nav{display:flex;gap:6px}.studio-stage{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:8px;min-height:0;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(255,213,79,.08),transparent 40%),#243d31}.studio-canvas-wrap{position:relative;isolation:isolate;max-width:100%;max-height:calc(100dvh - 220px);width:min(100%,calc((100dvh - 220px)*.75));aspect-ratio:3 / 4;height:auto;box-shadow:0 12px 40px #00000073;border-radius:8px;overflow:hidden;background:#fff;touch-action:none}.studio-base,.studio-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none}.studio-base{z-index:2;mix-blend-mode:multiply;pointer-events:none}.studio-overlay{z-index:1;cursor:crosshair}.studio-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;z-index:5;font-weight:800}.studio-loading[hidden]{display:none!important}.studio-toolbar{background:#0f1f18;padding:10px 10px calc(10px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}.tool-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}.tool-btn{flex:0 0 auto;min-width:72px;min-height:64px;border:2px solid transparent;border-radius:16px;background:#234433;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:6px 8px}.tool-btn.active{border-color:var(--gold);background:#2e5a44}.tool-ico{font-size:1.4rem;line-height:1}.tool-lbl{font-size:.65rem;font-weight:700;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brush-row{padding:0 4px}.brush-row label{display:flex;align-items:center;gap:12px;font-size:.9rem;font-weight:700}.brush-row input[type=range]{flex:1;accent-color:var(--gold)}.palette{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.swatch{width:44px;height:44px;border-radius:50%;border:3px solid rgba(255,255,255,.35);cursor:pointer;padding:0;box-shadow:0 2px 6px #00000059}.swatch.active{border-color:var(--gold);transform:scale(1.12);box-shadow:0 0 0 3px #ffd54f73}.swatch-white{border-color:#999}@media (min-width: 900px){.studio-bar{width:100%}.tool-row{flex-wrap:wrap}}.btn-text{padding:0 14px;font-size:.95rem;white-space:nowrap}@media (min-width: 768px) and (pointer: coarse),(min-width: 900px){.tool-btn{min-width:84px;min-height:76px;border-radius:18px}.tool-ico{font-size:1.65rem}.tool-lbl{font-size:.72rem;max-width:84px}.swatch{width:52px;height:52px}.brush-row input[type=range]{min-height:36px}}.mag-card-locked{position:relative;cursor:pointer;opacity:.95}.mag-card-locked img{filter:grayscale(.35) brightness(.92)}.mag-lock-overlay{position:absolute;inset:0 auto auto 0;right:0;height:auto;display:flex;align-items:flex-start;justify-content:flex-end;gap:6px;padding:10px;pointer-events:none}.mag-lock-overlay .mag-lock-ico{font-size:1.6rem;background:#0f1f18b8;color:#fff;border-radius:12px;padding:6px 8px;line-height:1}.mag-badge{display:inline-block;margin-top:8px;font-size:.75rem;font-weight:800;padding:4px 10px;border-radius:999px}.mag-badge.locked{background:#fdecea;color:#b71c1c}.mag-badge.unlocked{background:#e8f5e9;color:#1b5e20}.locked-view{display:flex;flex-direction:column;gap:16px}.locked-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 20px;text-align:center;max-width:480px;margin:12px auto}.locked-ico{font-size:2.6rem;margin-bottom:8px}.locked-mag{font-weight:800;color:var(--green);font-size:1.2rem}.btn-model{display:inline-flex;align-items:center;gap:8px;background:#234433;color:#fff;border:2px solid var(--gold);border-radius:14px;padding:6px 10px;min-height:56px;cursor:pointer;font-weight:800}.model-thumb{width:36px;height:48px;object-fit:cover;border-radius:6px;background:#fff;border:1px solid rgba(255,255,255,.35)}.model-lbl{font-size:.72rem;max-width:72px;line-height:1.15;text-align:start}.model-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#08120eb8;display:flex;align-items:center;justify-content:center;padding:16px}.model-overlay[hidden]{display:none!important}.model-dialog{background:#0f1f18;color:#fff;border-radius:16px;width:min(920px,100%);max-height:min(92dvh,100%);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 48px #00000073}.model-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.12)}.model-full{display:block;width:100%;height:auto;max-height:calc(92dvh - 64px);object-fit:contain;background:#fff}@media (min-width: 768px){.btn-model{min-height:64px;padding:8px 14px}.model-thumb{width:44px;height:58px}.model-lbl{font-size:.85rem;max-width:100px}}.parent-link-wrap{text-align:center;margin:28px 0 8px}.parent-link{font-size:.85rem;color:var(--muted);text-decoration:underline;font-weight:700}.parent-space .parent-form{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin:12px 0;display:flex;flex-direction:column;gap:10px}.parent-space label{display:flex;flex-direction:column;gap:6px;font-weight:700}.parent-space input{border:1px solid #d7e3db;border-radius:10px;padding:12px 14px}.parent-mag-list{list-style:none;padding:0;margin:0 0 16px}.parent-mag-list li{background:#fff;border-radius:12px;padding:12px 14px;margin-bottom:8px;box-shadow:var(--shadow);display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.msg.error{color:#b71c1c;font-weight:700}.shop-list .shop-item{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.shop-actions{display:flex;flex-wrap:wrap;gap:8px}.msg.ok{color:#1b5e20;font-weight:700}.small{font-size:.85rem}.cod-panel{margin:16px 0}.cod-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.section-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}@media (min-width: 640px){.section-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 900px){.section-grid{grid-template-columns:repeat(4,1fr)}}.section-tile{display:flex;flex-direction:column;align-items:stretch;min-height:148px;border-radius:22px;background:linear-gradient(160deg,color-mix(in srgb,var(--tile) 88%,#fff),var(--tile));color:#fff;box-shadow:var(--shadow);overflow:hidden;border:3px solid rgba(255,255,255,.35);text-decoration:none;padding:14px;gap:8px}.section-tile:active{transform:scale(.98)}.section-ico{font-size:2.2rem;line-height:1;filter:drop-shadow(0 2px 0 rgba(0,0,0,.15))}.section-ico.big{font-size:3rem}.section-tile-body h2{margin:0;font-size:1.1rem;font-weight:800}.section-tile-body p{margin:4px 0 0;font-size:.8rem;opacity:.92;line-height:1.25}.section-count{display:inline-block;margin-top:8px;background:#ffffff38;border-radius:999px;padding:4px 10px;font-weight:800;font-size:.8rem}.section-soon{display:inline-block;margin-top:8px;font-size:.75rem;font-weight:800;opacity:.95}.section-hero{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--tile) 85%,#fff),var(--tile));color:#fff;border-radius:20px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.section-hero h1{margin:0 0 4px;font-size:1.4rem}.coming-soon-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 20px;text-align:center;max-width:480px;margin:8px auto 20px}.coming-soon-ico{font-size:2.4rem;margin-bottom:8px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.gallery-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;border:3px solid transparent}.gallery-card img{width:100%;aspect-ratio:3 / 4;object-fit:cover;background:#f3f6f4;display:block}.gallery-meta{padding:10px 12px 14px;display:flex;flex-direction:column;gap:4px;font-size:.85rem}.studio-body{flex:1;display:flex;flex-direction:column;min-height:0}.studio-headline{display:block;font-size:1.05rem}.studio-page{display:block;font-size:.75rem;font-weight:600;opacity:.85}.studio-stats{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:999px;font-weight:800;font-size:.85rem;background:#234433;color:#fff;white-space:nowrap}.pill-star{background:linear-gradient(135deg,#6a4c1b,#a67c2a)}.pill-level{background:#4a2d6b}.zone-hint{margin:0;font-size:.9rem;font-weight:700;color:#ffe082;text-align:center}.tool-heading{margin:4px 0 0;font-size:.95rem;font-weight:800}.palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:10px;justify-items:center;max-height:200px;overflow-y:auto;padding:4px 2px;-webkit-overflow-scrolling:touch}.palette-grid .swatch{width:48px;height:48px;border-radius:14px}.zone-primary{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.tool-btn-zone{flex:1 1 160px;min-height:72px;background:linear-gradient(145deg,#2e7d4f,#1b5e3a);border-color:var(--gold);font-size:.95rem}.tool-btn-zone .tool-lbl{max-width:none;font-size:.85rem;white-space:normal;text-align:center}.more-tools-toggle{width:100%;min-height:48px;border:2px dashed rgba(255,213,79,.45);border-radius:14px;background:transparent;color:#ffe082;font-weight:800;font-size:.95rem;cursor:pointer;padding:10px}.more-tools[hidden]{display:none!important}.brush-presets{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.brush-preset{flex:1 1 90px;min-height:64px;border-radius:16px;border:2px solid transparent;background:#234433;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-weight:700;font-size:.8rem;padding:8px}.brush-preset.active{border-color:var(--gold);background:#2e5a44}.brush-dot{display:block;border-radius:50%;background:#fff}.studio-encourage{margin:4px 0 0;font-size:.85rem;text-align:center;opacity:.9}.studio-parent-link{display:block;text-align:center;color:#b2dfdb;font-weight:700;padding:8px;min-height:44px}.celebrate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0f1f18b8;display:flex;align-items:center;justify-content:center;padding:20px}.celebrate-overlay[hidden]{display:none!important}.celebrate-card{background:#fff;color:#1b2e24;border-radius:24px;padding:28px 24px;text-align:center;max-width:360px;width:100%;box-shadow:0 20px 60px #00000059}.celebrate-stars{font-size:2rem;margin-bottom:8px}.celebrate-card h2{margin:0 0 8px;font-size:1.8rem;color:#063}.celebrate-card p{margin:0 0 16px;font-weight:700}@media (min-width: 768px){.studio-body{flex-direction:row;align-items:stretch}html[dir=rtl] .studio-body{flex-direction:row-reverse}.studio-stage{flex:1 1 auto;min-width:0}.studio-toolbar{width:min(340px,38vw);max-height:calc(100dvh - 72px);overflow-y:auto;border-inline-start:1px solid rgba(255,255,255,.08)}.studio-canvas-wrap{max-height:calc(100dvh - 100px);width:min(100%,calc((100dvh - 100px)*.75))}.palette-grid{max-height:none;grid-template-columns:repeat(auto-fill,minmax(52px,1fr))}.palette-grid .swatch{width:52px;height:52px}}.home-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.home-title{margin:0;font-size:1.6rem;color:#063}.home-sub{margin:4px 0 0;font-weight:600;opacity:.85}.home-stars{background:linear-gradient(135deg,#6a4c1b,#c9a227)!important;color:#fff!important;font-size:1rem;box-shadow:var(--shadow)}.home-stars .home-points-lbl{font-weight:700}.home-stars strong{font-size:1.15rem}.daily-card{display:flex;gap:12px;align-items:center;background:#fff;border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);margin-bottom:16px;border:3px solid #ffe082}.daily-card.done{border-color:#66bb6a;background:#f1f8e9}.daily-ico{font-size:1.8rem}.daily-card strong{display:block}.daily-card p{margin:2px 0 0;font-size:.9rem}.gallery-hero{text-align:center;margin-bottom:16px}.gallery-bravo{margin:0;font-size:1.8rem;color:#6a1b9a}.gallery-keep{margin:4px 0 12px;font-weight:700;color:#063}.gallery-tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.gallery-tab{padding:10px 16px;min-height:44px;border-radius:999px;background:#e8f5e9;color:#1b2e24;font-weight:800;text-decoration:none}.gallery-tab.active{background:#063;color:#fff}.gallery-card{position:relative}.gallery-check{position:absolute;top:8px;inset-inline-start:8px;z-index:2;width:28px;height:28px;border-radius:50%;background:#063;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.9rem}.gallery-badge{position:absolute;top:8px;inset-inline-end:8px;z-index:2;background:#ffd54f;color:#1b2e24;font-weight:800;font-size:.72rem;padding:4px 8px;border-radius:999px;box-shadow:0 2px 8px #0003}.gallery-date{opacity:.75;font-size:.8rem}.gallery-footer-msg{text-align:center;font-weight:700;margin:20px 8px;color:#4a2d6b}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.ach-card{background:#fff;border-radius:18px;padding:16px 12px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;align-items:center;min-height:130px;border:3px solid transparent}.ach-card.unlocked{border-color:#ffd54f}.ach-card.locked{opacity:.72}.ach-card.locked .ach-ico{filter:grayscale(1);opacity:.45;-webkit-text-stroke:1px #888}.ach-ico{font-size:2rem}.ach-state{font-size:.8rem;font-weight:700;color:#666}.bottom-nav .nav-item{flex:1 1 0;min-width:0;font-size:.72rem;padding:8px 4px}
