*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#0b6fae;color:#143f63}
button,input,select,textarea{font:inherit}
.hidden{display:none!important}
button{cursor:pointer}
body{background:linear-gradient(180deg,#0f87ca,#0a5d92 72%,#073b61)}
.primary,.secondary,.back,.grade-btn{border:0;border-radius:14px;padding:11px 15px;font-weight:900}
.primary{background:#16b75f;color:#fff}
.secondary{background:#eef8ff;color:#0b5c96;border:2px solid #83c8ee}
.xl{font-size:18px;padding:14px 20px}
.back,.grade-btn{background:#0b76bc;color:#fff}
.badge{position:absolute;top:-5px;right:-5px;background:#ff4057;color:#fff;border-radius:99px;min-width:20px;height:20px;display:grid;place-items:center;font-style:normal;font-size:11px}
.account-pill{display:flex;flex-direction:column;align-items:flex-start}
.account-pill small{font-weight:800;color:#2786c6}
main{padding:12px}
.view{display:none}
.view.active{display:block}
.glass{background:linear-gradient(145deg,#0a5d9ae8,#0d78c7d9);backdrop-filter:blur(9px);color:#fff;border:2px solid #ffffff50;box-shadow:0 10px 26px #00375650}
.parrot{font-size:clamp(32px,4vw,72px)}
.mini-stats{display:flex;gap:10px;flex-wrap:wrap;font-weight:900}
.continue-btn{border:0;border-radius:15px;background:#16c457;color:#fff;padding:9px 13px;font-weight:1000}
.meter{height:8px;background:#ffffff45;border-radius:99px;overflow:hidden}
.meter i{display:block;height:100%;width:0;background:#ffd23d}
.page-head{width:min(1240px,100%);margin:0 auto 12px;background:#fffffff2;border-radius:20px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 10px 28px #002d4f33}
.page-head h1{margin:0;color:#075b96}
.page-head p{margin:4px 0 0;color:#59788f}
.activity-grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.activity-card{border:0;background:#fff;border-radius:22px;padding:18px;text-align:left;box-shadow:0 10px 30px #00324d30;min-height:150px;position:relative}
.activity-card:hover{transform:translateY(-2px)}
.activity-card .ico{font-size:36px}
.activity-card h3{margin:8px 0 5px;color:#075b96}
.activity-card p{margin:0;color:#5b788d}
.activity-card .tag{position:absolute;right:11px;top:11px;background:#e8f7ff;color:#087fc5;border-radius:99px;padding:5px 9px;font-weight:900;font-size:11px}
.game-area,.panel-body{width:min(1050px,100%);margin:0 auto;background:#f7fcff;border-radius:24px;padding:20px;box-shadow:0 16px 42px #00324d44;min-height:520px}
.scorebox{display:flex;gap:8px}
.scorebox>*{background:#e8f7ff;padding:8px 10px;border-radius:12px}
.game-panel,.panel-card{background:#fff;border-radius:20px;padding:20px;margin-bottom:14px}
.game-panel h2,.panel-card h2{margin-top:0;color:#075b96}
.prompt{font-size:clamp(22px,3vw,34px);font-weight:1000;color:#075b96;text-align:center;margin:18px 0}
.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.choice{border:3px solid #c2e5f7;background:#fff;border-radius:17px;padding:17px;font-size:20px;font-weight:900;color:#075b96;min-height:72px}
.choice.good{background:#eafff2;border-color:#16b76b}
.choice.bad{background:#fff0f3;border-color:#df4e67}
.feedback{display:none;margin-top:13px;padding:13px;border-radius:14px;font-weight:900}
.feedback.show{display:block}
.feedback.good{background:#eafff2;color:#0b743f}
.feedback.bad{background:#fff0f3;color:#9f2638}
.next{display:none;margin:13px auto 0;border:0;border-radius:13px;background:#16b75f;color:#fff;padding:11px 16px;font-weight:900}
.next.show{display:block}
.voice-btn{border:0;border-radius:13px;background:#7549d6;color:#fff;padding:10px 14px;font-weight:900}
.bubble-zone{position:relative;height:320px;border-radius:20px;overflow:hidden;background:linear-gradient(#c4f1ff,#f0fcff)}
.bubble{position:absolute;width:90px;height:90px;border-radius:50%;border:4px solid #fff;background:linear-gradient(145deg,#7cddff,#fff);box-shadow:0 7px 16px #006e9c50;display:grid;place-items:center;font-size:24px;font-weight:1000;color:#075b96;animation:floaty 8s linear infinite}
@keyframes floaty{0%{transform:translateY(350px)}100%{transform:translateY(-120px)}}
.tiles{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.tile{border:0;border-radius:15px;background:#fff1a8;color:#775100;padding:14px 18px;font-size:22px;font-weight:1000}
.dropzone{min-height:74px;border:4px dashed #78bfe7;border-radius:17px;padding:12px;display:flex;justify-content:center;align-items:center;font-size:22px;font-weight:900}
.rhythm-row{display:flex;justify-content:center;gap:12px;margin:20px}
.rhythm-dot{width:58px;height:58px;border-radius:50%;background:#d5ecf8;border:4px solid #fff}
.rhythm-dot.on{background:#ffd23d;transform:scale(1.13)}
.drum{display:block;margin:18px auto;width:130px;height:130px;border-radius:50%;border:7px solid #ffd979;background:#ee962b;color:#fff;font-size:52px}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.collect-card{position:relative;min-height:210px;border-radius:19px;padding:14px;background:linear-gradient(145deg,#ffffff,#e8f7ff);border:3px solid #c8e8f7;display:flex;flex-direction:column;justify-content:space-between}
.collect-card .art{font-size:58px;text-align:center}
.collect-card.rare{border-color:#4da0ff}
.collect-card.epic{border-color:#9b5ce8}
.collect-card.legendary{border-color:#ffbd2f;background:linear-gradient(145deg,#fff8d8,#fff)}
.collect-card.locked{filter:grayscale(1);opacity:.42}
.collect-card .qty{position:absolute;top:8px;right:8px;background:#0a6dab;color:#fff;border-radius:99px;padding:4px 8px;font-weight:900}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.tabs button{border:0;border-radius:13px;padding:10px 13px;font-weight:900;background:#eaf7fe;color:#075b96}
.tabs button.active{background:#0b76bc;color:#fff}
.friend-row,.message-row,.trade-row,.rank-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid #dbeaf2;border-radius:14px;margin:8px 0;background:#fff}
.chat-box{height:320px;overflow:auto;background:#eef9ff;border-radius:15px;padding:12px}
.msg{max-width:78%;padding:9px 12px;border-radius:14px;margin:6px 0;background:#fff}
.msg.me{margin-left:auto;background:#dff5ff}
.form-grid{display:grid;gap:10px}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:2px solid #bddff0;border-radius:12px;padding:10px}
.form-actions{display:flex;gap:8px;flex-wrap:wrap}
.notice{background:#fff5c7;border-radius:14px;padding:12px;color:#6c4d00;font-weight:800}
.safe-note{background:#e9fff1;color:#116d3c;border-radius:14px;padding:12px}
.album-progress{font-weight:900;color:#075b96}
.shop-plans{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.plan{background:#fff;border-radius:20px;padding:20px;border:3px solid #d8edf8;text-align:center}
.plan strong{display:block;font-size:32px;color:#075b96}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #e0edf4}
.modal{position:fixed;inset:0;z-index:100;background:#0029499c;display:grid;place-items:center;padding:12px}
.modal-card{width:min(650px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:22px;position:relative}
.modal-x{position:absolute;right:12px;top:12px;border:0;width:40px;height:40px;border-radius:50%;background:#e9f6fd;color:#075b96;font-weight:1000}
.modal-card h2{color:#075b96;margin-top:0}
.toast{position:fixed;z-index:120;left:50%;bottom:20px;transform:translateX(-50%);background:#063f67;color:#fff;padding:12px 18px;border-radius:14px;font-weight:900;box-shadow:0 8px 25px #0005}
.maintenance{position:fixed;inset:0;z-index:1000;background:linear-gradient(135deg,#087fc2,#11a06f);display:grid;place-items:center;padding:20px}
.maintenance-card{width:min(620px,100%);background:#fff;border-radius:28px;padding:30px;text-align:center}
.maintenance-card img{width:100px}
@media(max-width:1100px){.activity-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.activity-grid{grid-template-columns:1fr}
.choices{grid-template-columns:1fr}
.shop-plans{grid-template-columns:1fr}
.page-head{align-items:flex-start;flex-wrap:wrap}
.game-area,.panel-body{padding:11px}}
.album-book{background:linear-gradient(180deg,#fffdf4,#f4fbff);border:3px solid #d8edf8}
.album-cover-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.album-cover-row h2{margin-bottom:4px}
.album-total-progress{min-width:190px;border-radius:18px;background:#eaf7fe;padding:12px 16px;text-align:center;color:#075b96}
.album-total-progress strong{display:block;font-size:30px}
.album-total-progress span,.album-total-progress small{display:block}
.album-meter{height:12px;background:#dceef7;border-radius:99px;overflow:hidden;margin:14px 0 18px}
.album-meter i{height:100%;display:block;background:linear-gradient(90deg,#20ba6b,#ffd33f);border-radius:99px}
.album-page-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.album-page-tabs button{border:2px solid #d1e8f5;background:#fff;color:#075b96;border-radius:14px;padding:10px;font-weight:900;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;text-align:left}
.album-page-tabs button.active{background:#0b76bc;color:#fff;border-color:#0b76bc}
.album-page-tabs button small{opacity:.85}
.album-page{background:linear-gradient(90deg,#fffaf0 0 49.5%,#e9dfcf 49.5% 50.5%,#fffaf0 50.5%);border:2px solid #e2d4bd;border-radius:22px;padding:18px;box-shadow:inset 0 0 22px #9d77431c}
.album-page.complete{border-color:#edb62c}
.album-page-head{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;text-align:center;gap:10px;margin-bottom:16px}
.album-page-head h3{margin:2px 0;color:#6b421f;font-size:24px}
.album-page-head p{margin:0;color:#83684d;font-weight:800}
.album-page-number{font-size:12px;letter-spacing:1.4px;font-weight:1000;color:#9c7b58}
.album-arrow{width:46px;height:46px;border:0;border-radius:50%;background:#0b76bc;color:#fff;font-size:24px;font-weight:1000}
.album-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}
.album-slot{position:relative;min-height:190px;border-radius:16px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:3px solid #d7c9b5;background:#fff;overflow:hidden}
.album-slot-no{position:absolute;left:8px;top:6px;font-size:11px;font-weight:1000;color:#9a856d}
.album-card-art{font-size:50px;line-height:1;margin:10px 0}
.album-card-back{width:70px;height:94px;border-radius:12px;background:repeating-linear-gradient(45deg,#126ea6,#126ea6 8px,#1786c7 8px,#1786c7 16px);border:4px solid #fff;box-shadow:0 4px 12px #074a7544;display:grid;place-items:center;color:#fff;font-size:36px;font-weight:1000;margin:8px 0}
.album-slot.locked{background:#f3eee6;color:#8d8171}
.album-slot.locked strong{color:#8d8171}
.album-slot.owned.common{border-color:#a9bfd0}
.album-slot.owned.rare{border-color:#4da0ff;background:#f4f9ff}
.album-slot.owned.epic{border-color:#9b5ce8;background:#faf5ff}
.album-slot.owned.legendary{border-color:#ffbd2f;background:linear-gradient(145deg,#fff4bf,#fff)}
.album-slot strong{font-size:14px;color:#075b96}
.album-slot small{margin-top:5px}
.album-duplicate{position:absolute;right:7px;top:6px;background:#0b76bc;color:#fff;border-radius:99px;padding:3px 7px;font-size:12px}
.album-complete-banner{margin-top:15px;padding:12px;border-radius:15px;background:#fff3b6;color:#735000;font-weight:1000;text-align:center}
@media(max-width:900px){.album-slots{grid-template-columns:repeat(3,minmax(0,1fr))}
.album-page-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.album-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.album-slot{min-height:170px;padding:8px}
.album-page{padding:10px}
.album-page-tabs{grid-template-columns:1fr}
.album-page-head{grid-template-columns:42px 1fr 42px}
.album-arrow{width:40px;height:40px}
.album-card-art{font-size:42px}}
.continue-btn{min-height:42px;box-shadow:0 5px 0 #087d36}
.dock-pane{display:none;padding:0 10px 12px}
.dock-pane.active{display:block}
.dock-search{display:grid;grid-template-columns:1fr 46px;gap:7px;margin-bottom:10px}
.dock-search input,.dock-chat-form input{border:1px solid #3a7ba8;border-radius:12px;background:#062d50;color:#fff;padding:11px;min-width:0}
.dock-search input::placeholder,.dock-chat-form input::placeholder{color:#a8c9df}
.dock-search button,.dock-chat-form button{border:0;border-radius:12px;background:#15b863;color:#fff;font-weight:1000;font-size:20px}
.dock-friend-list{max-height:470px;overflow:auto}
.dock-section-label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#83d8ff;margin:10px 3px 6px}
.dock-friend{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:9px;border:1px solid #1e5f8d;border-radius:13px;margin-bottom:7px;background:#ffffff08}
.dock-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1386c6;font-size:20px}
.dock-friend-info{min-width:0}
.dock-friend-info b{display:block}
.dock-friend-info small{display:block;color:#a9ccdf}
.dock-status{display:inline-flex;align-items:center;gap:5px}
.dock-status::before{content:"";width:8px;height:8px;border-radius:50%;background:#899aa8}
.dock-status.online::before{background:#1fd06d;box-shadow:0 0 8px #1fd06d}
.dock-friend button{border:0;border-radius:10px;background:#0d8eda;color:#fff;padding:8px 9px;font-weight:900}
.dock-chat-title{padding:10px;border-radius:12px;background:#ffffff0d;font-weight:900;margin-bottom:8px}
.dock-chat-messages{height:390px;overflow:auto;background:#041f3b;border-radius:14px;padding:10px}
.dock-msg{max-width:86%;background:#164f7e;border-radius:14px;padding:9px 11px;margin:7px 0}
.dock-msg.me{margin-left:auto;background:#11a96c}
.dock-msg small{display:block;opacity:.72;margin-top:3px}
.dock-chat-form{display:grid;grid-template-columns:1fr 48px;gap:7px;margin-top:9px}
.dock-empty{padding:18px;text-align:center;color:#b6d4e7}
.panel-body .chat-box{height:460px}
@media(max-width:1400px){.dock-friend-list{max-height:400px}}
.birth-card{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:center;margin-top:20px;padding:24px}
.birth-visual{height:260px;display:grid;place-items:center;position:relative}
.babilo-egg{width:150px;height:195px;border-radius:50% 50% 46% 46%/58% 58% 42% 42%;background:radial-gradient(circle at 42% 28%,#fff 0 11%,transparent 12%),linear-gradient(155deg,#fff,#e3f4ff 55%,#b8d9ec);border:8px solid #fff;box-shadow:0 16px 35px rgba(6,80,129,.25);position:relative;animation:v16egg 2.2s ease-in-out infinite}
.babilo-egg:before,.babilo-egg:after{content:"";position:absolute;border-radius:50%;background:#6cc7ff;opacity:.55}
.babilo-egg:before{width:34px;height:22px;left:24px;top:82px;transform:rotate(24deg)}
.babilo-egg:after{width:42px;height:28px;right:20px;top:42px;transform:rotate(-18deg)}
.babilo-egg span{position:absolute;inset:0;background:linear-gradient(130deg,transparent 44%,#70a8c7 45% 47%,transparent 48%) center/70px 100px no-repeat;opacity:.7}
.birth-mascot{max-width:245px;max-height:245px;object-fit:contain;filter:grayscale(.75) saturate(.55);animation:v16float 2s ease-in-out infinite}
.birth-copy h2{font-size:32px;color:#0b6daf;margin:8px 0}
.birth-copy p{font-size:18px;line-height:1.45}
.birth-progress{height:14px;border-radius:999px;background:#dfeef5;overflow:hidden;margin:14px 0}
.birth-progress i{display:block;height:100%;width:8%;background:linear-gradient(90deg,#ffca43,#ff8a3d);transition:width .5s ease}
.pet-modal{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center}
.pet-modal img{max-width:210px;max-height:210px;object-fit:contain}
.pet-modal .pet-meter{height:14px;background:#e7eef2;border-radius:999px;overflow:hidden}
.pet-modal .pet-meter i{display:block;height:100%;background:linear-gradient(90deg,#ffcf4d,#ff7a39)}
.pet-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.pet-food-pill{font-size:20px;font-weight:900;color:#8a4d00}
.pet-stage-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}
.pet-stage-list span{padding:9px;border-radius:12px;background:#eef7fb;text-align:center;font-size:12px;font-weight:800}
.pet-stage-list span.done{background:#dff7df;color:#1c6f2c}
.pet-stage-list span.active{outline:3px solid #ffb53c;background:#fff5d9}
.reward-pet{margin-top:12px;padding:13px;border-radius:16px;background:#fff7d8;border:1px solid #f0d37a}
.reward-pet strong{color:#9a5a00}
.gold-card{box-shadow:0 0 0 3px #ffd64d inset,0 0 24px rgba(255,195,35,.45)}
.adaptive-panel{padding:14px;border-radius:16px;background:#eef9ff;border:1px solid #c9ebfa;margin-bottom:12px}
.adaptive-panel b{color:#0b6daf}
.skill-chip{display:inline-block;padding:5px 9px;border-radius:999px;margin:4px;background:#fff;border:1px solid #d4e7ef;font-size:12px;font-weight:800}
.skill-chip.weak{background:#fff1e8}
.skill-chip.growing{background:#fff9d9}
.skill-chip.mastered{background:#e5f7e6}
@keyframes v16egg{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg) translateY(-5px)}}
@keyframes v16float{50%{transform:translateY(-8px)}}
@media(max-width:900px){.birth-card{grid-template-columns:1fr}
.birth-visual{height:210px}
.pet-stage-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.birth-card{padding:16px}
.birth-copy h2{font-size:26px}
.pet-modal{grid-template-columns:1fr;text-align:center}
.pet-modal img{margin:auto}}
@media(prefers-reduced-motion:reduce){.babilo-egg,.birth-mascot{animation:none}}
.album-slot.owned.silver{border-color:#aeb8c6;background:linear-gradient(145deg,#f9fbff,#e8edf3)}
.album-slot.owned.gold{border-color:#f5b400;background:linear-gradient(145deg,#fff7c7,#fff1a0 55%,#fff)}
@keyframes babiloDance{0%,100%{transform:rotate(0) translateY(0)}20%{transform:rotate(-12deg) translateY(-12px) scale(1.04)}40%{transform:rotate(12deg) translateY(0) scale(.98)}60%{transform:rotate(-10deg) translateY(-9px) scale(1.04)}80%{transform:rotate(10deg) translateY(0)}}
.babilo-dance{animation:babiloDance 1.6s ease-in-out 1!important;filter:none!important}
@keyframes babiloSing{0%,100%{transform:translateY(0) rotate(0)}20%{transform:translateY(-8px) rotate(-4deg)}40%{transform:translateY(0) rotate(4deg)}60%{transform:translateY(-10px) rotate(-3deg)}80%{transform:translateY(0) rotate(3deg)}}
.babilo-sing{animation:babiloSing .45s ease-in-out 7!important}
.babilo-sleep{animation:none!important;transform:rotate(8deg) scale(.96);filter:saturate(.75) brightness(.9)!important;opacity:.88}
html,body{width:100%;min-width:0;overflow-x:hidden}
#app{width:100%;min-height:100vh;background:linear-gradient(#18a9e7,#0777b9)}
@keyframes siteTickerMove{to{transform:translateX(-100%)}}
main{padding:0!important}
.mini-stats{font-size:clamp(13px,.9vw,17px)!important}
.continue-btn{font-size:clamp(13px,.85vw,17px)!important;padding:10px 14px!important}
.dock-friend-list{max-height:calc(100vh - 330px)!important}
.dock-friend{padding:10px!important}
.dock-chat-messages{height:calc(100vh - 365px)!important}
@media (max-width:1180px){.dock-friend-list{max-height:360px!important}
.dock-chat-messages{height:340px!important}}html,body{background:#075d82;color:#123b56}.demo-notice{padding:4px 12px;background:#ffdf94;color:#624817;font-size:11px;text-align:center}.appbar{position:relative;display:flex;align-items:center;gap:12px;min-height:74px;padding:8px 15px;background:linear-gradient(#08aee9,#087cc2);color:white;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:7px;background:none;color:white;border:0;text-align:left}.brand img{width:45px;height:48px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand b{font-size:24px}.brand small{font-size:10px}.mainnav{display:flex;gap:3px;flex:1;flex-wrap:wrap;justify-content:center}.mainnav button{border:0;background:#ffffff15;border-radius:10px;color:white;padding:8px 9px;font-weight:700;font-size:12px;position:relative}.hud{display:flex;gap:5px;align-items:center}.hud>span{font-size:12px;white-space:nowrap}.account-pill{border:0;background:#e8f9ff;color:#0768a3;padding:6px 10px;border-radius:10px;font-size:12px}.account-pill small{display:block}.site-ticker{height:30px;background:#673cdb;color:#fff;display:flex;align-items:center;gap:10px;overflow:hidden;padding:0 12px}.site-ticker-track{overflow:hidden;flex:1}.site-ticker-track span{display:block;white-space:nowrap;animation:ticker 25s linear infinite}@keyframes ticker{from{transform:translateX(100%)}to{transform:translateX(-100%)}}main{padding:0}.home-shell{display:grid;grid-template-columns:minmax(0,1fr) 270px}.world-wrap{min-width:0}.compact-profile{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:5px 12px;background:#074f76;color:white;font-size:12px}.compact-profile .primary,.daily-mini{padding:5px 9px;font-size:12px;border-radius:8px;border:0}.daily-mini{background:#ffdc8d;color:#775014}.world-stage{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;background:#148daf}.world-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.island-label{position:absolute;transform:translateX(-50%);width:17%;padding:4px 7px;border-radius:9px;border:1px solid #ce8a29;background:linear-gradient(#ffd888,#ffedba);color:#6c400c;box-shadow:0 3px 0 #b27424,0 5px 12px #002e6144;font-weight:800}.island-label b{display:block;font-size:clamp(12px,1.25vw,19px)}.island-label small{font-size:clamp(9px,.7vw,12px);font-weight:600;display:block}.island-label:hover{filter:brightness(1.1)}.island-label.fr{left:20%;top:31%}.island-label.champ{left:51%;top:30%}.island-label.math{left:81%;top:31%}.island-label.en{left:18%;top:74%}.island-label.challenge{left:51%;top:74%}.island-label.premium{left:83%;top:78%}.world-host{position:absolute;width:12%;height:21%;object-fit:contain;left:43%;bottom:0;filter:drop-shadow(0 8px 10px #00487488);pointer-events:none;animation:host 4s ease-in-out infinite}@keyframes host{50%{transform:translateY(-4px)}}.pet-panel{position:absolute;bottom:3%;left:59%;max-width:23%;display:flex;align-items:center;gap:6px;background:#ffedbce8;color:#674515;border:1px solid #dc9a44;padding:5px 8px;border-radius:12px;box-shadow:0 5px 14px #003d6366}.pet-panel b{font-size:12px}.pet-panel small{display:block;font-size:9px}.nest-egg{font-size:24px}.pet-nid{position:relative;min-height:180px;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 90%,#9f692d 0 19%,#d7b574 20% 24%,transparent 25%),linear-gradient(#cff0f6,#deedd4);border-radius:18px;overflow:hidden}.pet-nid img{width:130px;height:140px;object-fit:contain;z-index:2}.pet-egg{font-size:75px}.snack{position:absolute;left:20%;top:65%;font-size:30px;animation:snack .85s forwards}.feeding img,.feeding .pet-egg{animation:munch .28s 3}@keyframes snack{to{left:50%;top:45%;opacity:0;transform:scale(.4)}}@keyframes munch{50%{transform:rotate(-5deg) scale(.94)}}.pet-modal{grid-template-columns:180px 1fr}.pet-modal h2{font-size:21px}.pet-actions button{font-size:13px;padding:8px 10px}.pet-stage-list{grid-template-columns:repeat(5,1fr)}.chat-dock{background:linear-gradient(#0b5383,#083c68);color:white;padding:10px;border-left:1px solid #46bbe7;min-width:0}.chat-dock-head{display:flex;justify-content:space-between;align-items:center;padding:6px 0 10px}.chat-dock-head>div{display:flex;flex-direction:column}.chat-dock-head small{font-size:11px}.chat-dock-head button{background:#ffffff20;color:white;border:0;border-radius:9px;width:30px;height:30px}.chat-dock.collapsed .chat-dock-tabs,.chat-dock.collapsed .dock-pane{display:none}.chat-dock-tabs{display:flex;gap:5px;margin-bottom:10px}.chat-dock-tabs button{flex:1;border:0;border-radius:9px;background:#ffffff20;color:white;padding:8px;font-size:12px}.chat-dock-tabs .active{background:#119ad6}.dock-pane{display:none}.dock-pane.active{display:block}.dock-search,.dock-chat-form{display:flex;gap:5px}.dock-search input,.dock-chat-form input{min-width:0;width:100%;border:1px solid #3e8aac;background:#083b63;color:white;border-radius:8px;padding:8px}.dock-search button,.dock-chat-form button{background:#14c273;color:white;border:0;border-radius:8px;padding:8px}.dock-empty{font-size:12px;text-align:center;padding:15px}.dock-friend-list{max-height:380px;overflow:auto}.page-head{padding:15px}.activity-grid,.panel-body,.game-area{padding:16px}.promo-gate{position:fixed;inset:0;z-index:200;background:#074e75;padding:0}.v17-splash{position:absolute;inset:0}.v17-splash>img{width:100%;height:100%;object-fit:contain}.v17-enter-hotspot{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);border:2px solid #fff5;background:linear-gradient(#22dd6b,#0ab347);color:white;border-radius:28px;padding:14px 32px;font-weight:900;font-size:20px;box-shadow:0 7px 0 #078d3a}.v17-intro-overlay{position:fixed;inset:0;z-index:210;background:#031823f5;display:grid;place-items:center;padding:12px}.v17-intro-box{position:relative;width:min(1100px,100%)}.v17-intro-video{width:100%;max-height:90vh;object-fit:contain;background:black}.v17-skip{position:absolute;top:10px;right:10px;background:white;color:#075c90;border:0;padding:10px 15px;border-radius:20px;font-weight:800}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.modal-card{max-height:90vh;overflow:auto}.voice-tests{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.voice-tests button{background:#e3f2fb;color:#16688a;padding:9px 12px;border-radius:10px;border:0}.maintenance{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:#053a65}.maintenance-card{padding:25px;background:white;border-radius:20px;text-align:center}.maintenance-card img{width:120px}
@media(max-width:1100px){.appbar{gap:7px}.brand small{display:none}.mainnav button{font-size:11px;padding:7px}.hud>span{display:none}.home-shell{grid-template-columns:minmax(0,1fr) 220px}.compact-profile{font-size:11px}.compact-profile>span{max-width:50%}.pet-panel small{display:none}}@media(max-width:760px){.home-shell{display:block}.mainnav{order:3;flex-basis:100%;justify-content:flex-start}.hud{margin-left:auto}.compact-profile{flex-wrap:wrap;justify-content:center}.world-stage{display:block!important}.mobile-world-buttons{display:none}.island-label{width:21%;padding:4px}.island-label small{display:none}.world-host{width:15%;height:24%;left:40%}.pet-panel{left:57%;max-width:30%;padding:4px}.pet-panel b{font-size:10px}.nest-egg{font-size:18px}.chat-dock{border-top:1px solid #46bbe7}.pet-modal{grid-template-columns:1fr}.pet-nid{min-height:150px}.v17-enter-hotspot{font-size:16px;padding:12px 20px;width:75%}.pet-stage-list{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Carte entière et conversation sous la carte, selon la maquette retenue. */
.home-shell{display:block!important}.chat-dock{border-left:0;border-top:1px solid #46bbe7;max-width:100%;margin:0}.dock-friend-list{max-height:140px!important}.dock-chat-messages{height:180px!important}.library-text{white-space:pre-line;max-width:70ch;margin:auto;letter-spacing:.02em}#curriculumPanel{margin:16px}#curriculumPanel select{max-width:100%;padding:9px;font-size:16px;border-radius:8px}#curriculumPanel summary{cursor:pointer;padding:8px}

.mobile-world-buttons{display:none!important}
