/* DINO POP Light v5. Toy surfaces, rarity materials and visual guidance.
   Character and egg geometry is owned exclusively by stage-layout.css. */
:root{--ivory:#fff8e9;--ink:#173f42;--lagoon:#0b6463;--mango:#ffc54a;--mint:#a7e3cc;--coral:#ff7f67}
.page-head h1{color:var(--mango);-webkit-text-stroke:1.6px var(--ink);paint-order:stroke fill;text-shadow:0 2px 0 var(--lagoon),0 4px 0 var(--ink);font-weight:900;padding-bottom:4px}
.page-head h1 small{color:var(--ink);-webkit-text-stroke:0;text-shadow:none}
.island-signal{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;color:#42675c}
.island-signal i{height:5px;width:5px;border-radius:50%;background:#4a9b7c;box-shadow:0 0 0 2px #d8ebcf}
.status-bar{padding-top:7px}.hud{padding-bottom:8px}
.balance,.icon-button,.avatar{border-color:#c8ba91;background:linear-gradient(180deg,#fffdf2,#f3e6c6);box-shadow:inset 0 2px 0 #fffdf5,0 3px 0 #b6aa86,0 5px 8px #173f4215}
.balance{border-radius:16px}.avatar{border-radius:15px}.avatar img{border-radius:12px}
.dock{background:linear-gradient(180deg,#fff9e9f9,#e9dfbbf9);border:1.5px solid #b8ad87;box-shadow:inset 0 2px 0 #fffdf5,0 5px 0 #a79e7c,0 9px 19px #173f4224}
.dock button{border:1px solid transparent;border-radius:17px;transition:transform .15s,box-shadow .15s;color:#44685b}
.dock button.active{background:linear-gradient(180deg,#ffe8a3,#ffc54a);border-color:#dcaa3e;box-shadow:inset 0 2px 0 #fff0b3,0 3px 0 #bf8b25;color:var(--ink);transform:translateY(-2px)}
.dock button.active:after{content:'';position:absolute;bottom:3px;left:calc(50% - 10px);height:3px;width:20px;border-radius:3px;background:#173f4270}
.chips{padding-top:2px;padding-bottom:5px;gap:9px}
.chip,.tool-button,.intro-toggle,.back-button,.help-icon-button{background:linear-gradient(180deg,#fffdf5,#f3e5c6);border:1px solid #c7b792;box-shadow:inset 0 2px 0 #fff,0 3px 0 #b5a786;color:var(--ink)}
.chip.active{background:linear-gradient(180deg,#ffe49a,#ffc54a);border:1.5px solid #bc8b2a;box-shadow:inset 0 2px 0 #fff0b6,0 3px 0 #c8932a;color:var(--ink)}
.primary{min-height:49px;background:linear-gradient(180deg,#ffe48b 0%,#ffc54a 75%,#f5b535 100%);border:1.5px solid #cc942b;box-shadow:inset 0 2px 0 #fff0b1,0 4px 0 #ae7e25,0 6px 9px #173f4217;border-radius:15px;color:var(--ink);font-weight:800}
.primary.teal{color:#fff8e9;background:linear-gradient(#2b9690,#0b6463);border-color:#134e50;box-shadow:inset 0 2px 0 #82c7ae,0 4px 0 #124749}
.secondary{background:linear-gradient(180deg,#fffaf0,#eee2c2);border:1px solid #c2b590;box-shadow:inset 0 2px 0 #fff,0 3px 0 #b4a783;color:var(--ink)}
button:active:not(:disabled){transform:translateY(2px)}
.chip:active:not(:disabled),.dock button.active:active,.primary:active:not(:disabled),.secondary:active:not(:disabled){box-shadow:inset 0 2px 0 #ffffff65,0 1px 0 #9f8e64}
button:disabled{opacity:.68;filter:saturate(.55)}
button:focus-visible,[role=button]:focus-visible,summary:focus-visible{outline:3px solid var(--lagoon);outline-offset:4px}
.panel,.record-sheet,.nest-receipt,.quest-card,.report-row,.guide-topic,.route-intro,.empty-state,.appearance-random,.appearance-decision,.accessory-receipt,.accessory-binding{background:linear-gradient(135deg,#fff9e9 0%,#fffdf2 55%,#f3e9ca 100%);border:1.5px solid #cabc94;box-shadow:inset 0 2px 0 #fffdf5,0 4px 0 #b9ad88,0 6px 12px #173f4210;border-radius:20px}
.panel.lilac{background:radial-gradient(ellipse at top right,#a7e3cc88,transparent 75%),linear-gradient(#fff9e8,#eee6c6)}
.panel.lime{background:radial-gradient(ellipse at top left,#ffc54a66,transparent 75%),linear-gradient(#fff9e8,#e6efcf)}
.island-board{background:linear-gradient(135deg,#fff6d9,#fffbee 55%,#e6edd0);border:1.5px solid #c6b786;box-shadow:inset 0 2px 0 #fffdf5,0 4px 0 #b2a47d,0 7px 14px #173f4212}
.notice{background:#fff8e9de;border:1px solid #d1c59d;border-left:3px solid #93b9a4;border-radius:11px;padding:10px 12px;box-shadow:inset 0 1px 0 #fff}
.building-hotspot,.island-shortcut{background:linear-gradient(#fffbea,#efe3bd);border:1px solid #bdb18a;box-shadow:inset 0 2px 0 #fff,0 4px 0 #b2a77f,0 6px 10px #173f4219}
.scene-status,.passport-stage-caption{background:linear-gradient(#fffbea,#f4edcf);border:1px solid #c4bb94;box-shadow:inset 0 1px 0 #fff,0 3px 0 #b1ab88}
/* One material contract shared by every rarity-bearing surface. */
.rarity-theme{--rarity-accent:#8d9d91;--rarity-soft:#f2ebd8;--rarity-edge:#687c72;--rarity-frame:linear-gradient(135deg,#fff8e9,#b9cbb5);--rarity-width:2px}
.rarity-theme[data-rarity=uncommon]{--rarity-accent:#4a9b7c;--rarity-soft:#def2dd;--rarity-edge:#2f755e;--rarity-frame:linear-gradient(135deg,#d9f3d8,#a7e3cc)}
.rarity-theme[data-rarity=rare]{--rarity-accent:#0b6463;--rarity-soft:#d8efdf;--rarity-edge:#124c4e;--rarity-frame:linear-gradient(135deg,#a7e3cc,#0b6463);--rarity-width:3px}
.rarity-theme[data-rarity=epic]{--rarity-accent:#d76f5d;--rarity-soft:#ffe4d8;--rarity-edge:#a64f45;--rarity-frame:linear-gradient(135deg,#ffb49a,#ff7f67);--rarity-width:3px}
.rarity-theme[data-rarity=legendary]{--rarity-accent:#c58c24;--rarity-soft:#fff0ba;--rarity-edge:#96661d;--rarity-frame:linear-gradient(135deg,#fff2b8,#ffc54a);--rarity-width:3px}
.rarity-theme[data-rarity=mythic]{--rarity-accent:#bc5a46;--rarity-soft:#ffe1b8;--rarity-edge:#8f493b;--rarity-frame:linear-gradient(135deg,#ff7f67,#ffc54a);--rarity-width:3px}
.rarity-theme[data-rarity=cosmic]{--rarity-accent:#173f42;--rarity-soft:#dcf2e6;--rarity-edge:#0b6463;--rarity-frame:linear-gradient(130deg,#0b6463,#a7e3cc 55%,#ffc54a);--rarity-width:3px}
.plot-caption,.rarity-theme .stat-card,.rarity-theme.market-card,.nest-parent.rarity-theme strong{border:var(--rarity-width) solid transparent;background:linear-gradient(150deg,#fffdf0,var(--rarity-soft)) padding-box,var(--rarity-frame) border-box;box-shadow:inset 0 1px 0 #fff8e9,0 4px 0 var(--rarity-edge),0 6px 10px #173f4217}
.plot-caption{border-radius:18px}.plot-caption strong{color:var(--ink);font-size:20px}
.plot-rarity{background:linear-gradient(#fffdf0,var(--rarity-soft));border:1px solid var(--rarity-accent);box-shadow:inset 0 1px 0 #fff,0 2px 0 var(--rarity-edge);color:var(--ink);border-radius:11px;font-weight:800}
.pet-plot.selected .plot-rarity{background:linear-gradient(#fffdf0,var(--rarity-soft))}
.pet-plot.selected .plot-caption{box-shadow:inset 0 1px 0 #fff8e9,0 4px 0 var(--rarity-edge),0 0 0 2px #ffc54a,0 7px 10px #173f4217}
.rarity-theme[data-rarity=mythic] .plot-caption,.rarity-theme[data-rarity=mythic] .stat-card,.rarity-theme[data-rarity=mythic].market-card{outline:1px solid #ffc54a;outline-offset:-6px}
.rarity-theme[data-rarity=cosmic] .plot-caption,.rarity-theme[data-rarity=cosmic] .stat-card,.rarity-theme[data-rarity=cosmic].market-card{outline:1px solid #c6f0cf;outline-offset:-6px;border-color:#0b6463}
.rarity-theme[data-rarity=epic] .plot-caption:before,.rarity-theme[data-rarity=epic] .plot-caption:after{content:'';position:absolute;top:4px;width:12px;height:2px;background:#fff8e9;border-radius:2px;transform:rotate(-20deg)}
.rarity-theme[data-rarity=epic] .plot-caption:before{left:10px}.rarity-theme[data-rarity=epic] .plot-caption:after{right:10px}
.rarity-theme .term-badge[data-term=rarity]{border:var(--rarity-width) solid var(--rarity-accent);background:linear-gradient(#fffbea,var(--rarity-soft));box-shadow:inset 0 1px 0 #fff,0 3px 0 var(--rarity-edge);color:var(--ink)}
.term-badge[data-term=genesis],.series-badge{background:linear-gradient(135deg,#fff1ba,#d3efd9);border:1px solid #b0b78a;box-shadow:inset 0 1px 0 #fff,0 2px 0 #aab184;color:var(--ink)}
.rarity-theme .stat-card{overflow:hidden}.stat-card .stat-add{background:linear-gradient(#eff7df,var(--rarity-soft));border-color:var(--rarity-accent)}
.stat-info>small{font-size:12px;line-height:1.5}.stat-info>strong{font-size:14px}
/* Egg tokens are independent of pet rarity. The entire purchase is one object. */
.egg-choice-list{padding:3px 3px 10px;gap:10px}
.egg-choice{background:radial-gradient(ellipse at 50% 28%,#fff3b9 0%,transparent 62%),linear-gradient(#fffdf1,#e9e7cc);border:1.5px solid #bcbd96;border-radius:18px;box-shadow:inset 0 2px 0 #fff,0 4px 0 #a8ae87;min-height:127px}
.egg-choice img{height:66px;filter:drop-shadow(0 3px 2px #173f4226)}
.egg-choice[data-egg=sea]{background:radial-gradient(ellipse at 50% 28%,#a7e3cc 0%,transparent 63%),linear-gradient(#fffdf1,#dfebd5)}
.egg-choice[data-egg=crystal]{background:radial-gradient(ellipse at 50% 28%,#e7d6f4 0%,transparent 63%),linear-gradient(#fffdf1,#e9e1d2)}
.egg-choice[data-egg=solar]{background:radial-gradient(ellipse at 50% 28%,#ffda78 0%,transparent 65%),linear-gradient(#fffdf1,#f1dfb2)}
.egg-choice[data-egg=cosmic]{background:radial-gradient(ellipse at 50% 28%,#abd9cd 0%,transparent 65%),linear-gradient(#fffdf1,#d9e9d3)}
.egg-choice.active{border:2px solid var(--lagoon);box-shadow:inset 0 0 0 2px #ffdf84,inset 0 3px 0 #fff,0 4px 0 #0b6463}
.egg-capsule{position:relative;isolation:isolate;overflow:hidden;margin:5px 0 18px;border-radius:29px;border:2px solid #afbc8f;background:radial-gradient(ellipse at 0% 0%,#ffe48da8 0%,transparent 36%),radial-gradient(ellipse at 100% 4%,#a7e3ccb8 0%,transparent 43%),linear-gradient(125deg,#f6f7d7,#fff8e9 55%,#e5efcf);box-shadow:inset 0 0 0 2px #fff9e9cc,inset 0 3px 0 #fff,0 5px 0 #9fae83,0 10px 16px #173f4224}
.egg-capsule[data-egg=crystal]{border-color:#b3a5ba;box-shadow:inset 0 0 0 2px #fff9e9cc,inset 0 3px 0 #fff,0 5px 0 #9d8fab,0 10px 16px #173f4220}
.egg-capsule[data-egg=solar]{border-color:#c6a04c;box-shadow:inset 0 0 0 2px #fff9e9cc,inset 0 3px 0 #fff,0 5px 0 #af852f,0 10px 16px #173f4220}
.egg-capsule[data-egg=cosmic]{border-color:#1c6760;box-shadow:inset 0 0 0 2px #c9edce,inset 0 3px 0 #fff,0 5px 0 #174e4c,0 10px 16px #173f4225}
.egg-card-heading{padding:18px 16px 0;text-align:center;position:relative;z-index:2}
.series-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:29px;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:800}
.series-badge .ui-icon{height:22px;width:22px}
.egg-card-heading h2{font-size:24px;line-height:1.3;margin-top:11px;color:var(--ink);text-shadow:0 1px 0 #fff8e9}
.egg-card-hero{background:radial-gradient(ellipse at 50% 52%,#fff8dc,#ecf2cc77 47%,transparent 72%);border-radius:0;overflow:hidden;isolation:isolate}
.egg-card-body{padding:0 15px 18px;position:relative;z-index:2}
.egg-purpose{font-size:15px;font-weight:800;line-height:1.5;text-align:center;color:var(--ink)}
.egg-origin{font-size:12px;line-height:1.6;text-align:center;color:#456557;margin-top:5px}
.egg-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0 9px}
.egg-facts>div{display:flex;flex-direction:column;gap:4px;min-width:0}.egg-facts>div:last-child{text-align:right}
.egg-facts small{font-size:12px;color:#4e6b5b}.egg-facts b{font-size:13px;color:var(--ink)}
.edition-meter{height:8px;border-radius:8px;background:#c3ceb0;box-shadow:inset 0 2px 2px #173f4222;overflow:hidden}
.edition-meter i{display:block;height:100%;background:linear-gradient(90deg,#6bad8b,#0b6463);border-radius:8px}
.egg-chances{margin-top:18px}.egg-chances h3{font-size:14px;line-height:1.5;text-align:center}
.chance-ribbon{display:flex;width:100%;height:12px;border:1px solid #63755f;border-radius:8px;overflow:hidden;margin-top:10px;box-shadow:inset 0 1px 0 #fff}
.chance-ribbon i{display:block;height:100%;flex:none;background:var(--chance);border-right:0;box-shadow:inset -1px 0 #fff8e988;min-width:0}
.egg-odds{margin-top:6px}.egg-odds>summary{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;font-size:12px;font-weight:800;color:var(--lagoon);cursor:pointer;list-style:none}
.egg-odds>summary::-webkit-details-marker{display:none}.egg-odds>summary .ui-icon{height:16px;width:16px;transform:rotate(90deg)}.egg-odds[open]>summary .ui-icon{transform:rotate(-90deg)}
.egg-odds .probabilities{padding:4px 10px 3px;background:#fffdf0b3;border-radius:17px;border:1px solid #d0d5b4;box-shadow:inset 0 1px 0 #fff}
.egg-odds .prob-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;border-bottom:1px solid #cbd4b766;padding:4px 0;font-size:12px;color:var(--ink)}
.egg-odds .prob-row:last-child{border-bottom:0}.egg-odds .prob-row>span{display:flex;align-items:center;gap:7px}.egg-odds .prob-row>span i{height:10px;width:10px;background:var(--prob);border-radius:50%;box-shadow:inset 0 1px 0 #ffffff80}
.egg-odds .prob-row>b{font-size:13px}.egg-odds>p{font-size:12px;line-height:1.6;color:#456557;margin:10px 2px 0}
.egg-series-help{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;background:transparent;color:var(--lagoon);font-size:12px;font-weight:800;margin-top:5px}
.egg-buy{width:100%;margin-top:3px;justify-content:space-between}.egg-buy span{white-space:nowrap;font-size:14px}
.egg-buy:disabled{opacity:1;background:linear-gradient(#ede8cf,#ddd7b8);border-color:#b9b18b;color:#687966;box-shadow:inset 0 1px 0 #fff,0 3px 0 #aaa382;filter:none}
.purchase-limit{font-size:12px;line-height:1.6;text-align:center;margin-top:12px;color:#705840}
/* Selected island light is visible in both the scene and profile, including previews. */
.phone[data-decor=coral]{--decor-tint:#ffae7070;--decor-filter:sepia(.13) saturate(1.15) hue-rotate(-12deg)}
.phone[data-decor=aqua]{--decor-tint:#71d4d456;--decor-filter:saturate(.85) hue-rotate(16deg)}
.phone[data-decor=violet]{--decor-tint:#fff2b322;--decor-filter:none}
.home-scene:after{content:'';position:absolute;inset:0;background:var(--decor-tint);mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.profile-card{background:none;isolation:isolate;border:2px solid #9bb38c;box-shadow:inset 0 1px 0 #fff,0 5px 0 #91a47d}
.profile-card:before{content:'';position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,#e9f2d4ed,#fff8e922),var(--profile-scene);background-size:cover;background-position:center 55%;filter:var(--decor-filter)}
.profile-card:after{content:'';position:absolute;inset:0;z-index:-1;background:var(--decor-tint);mix-blend-mode:multiply;pointer-events:none}
.profile-card h2,.profile-card p{background:#fff8e9df;box-shadow:inset 0 1px 0 #fff,0 2px 0 #9aaa80}
.profile-decor-label{position:relative;display:table;background:#fff8e9dc;border-radius:8px;font-size:12px;padding:5px 8px;margin-top:7px;color:#315f53}
.profile-metrics>div{background:linear-gradient(#fffdf0,#e6ecd0);border:1px solid #b5bf9d;box-shadow:inset 0 1px 0 #fff,0 3px 0 #acb390}
.decor-preview{height:230px;border-radius:27px;overflow:hidden;position:relative;margin:15px 0 20px;background:#dcebc9;isolation:isolate}
.decor-preview .decor-image{width:100%;height:100%;object-fit:cover;filter:var(--decor-filter)}
.decor-preview:after{content:'';position:absolute;inset:0;background:var(--decor-tint);mix-blend-mode:multiply;pointer-events:none}
.decor-preview>span{position:absolute;bottom:15px;left:15px;z-index:2;padding:7px 11px;border:1px solid #c0c69e;border-radius:12px;background:#fff8e9ec;box-shadow:0 3px 0 #abb38d;font-weight:800;font-size:14px}
.decor-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.decor-choice{padding:5px 5px 10px;background:linear-gradient(#fffdf0,#ece5c5);border:1px solid #c0b58e;border-radius:17px;box-shadow:inset 0 1px 0 #fff,0 3px 0 #aaa17d;min-width:0;text-align:center}
.decor-swatch{height:70px;display:block;border-radius:11px;overflow:hidden;margin-bottom:7px;position:relative}.decor-swatch img{height:100%;width:100%;object-fit:cover}
.decor-choice[data-decor=coral] .decor-swatch{background:#ffb56a}.decor-choice[data-decor=coral] img{filter:sepia(.3) saturate(1.4);mix-blend-mode:multiply}
.decor-choice[data-decor=aqua] .decor-swatch{background:#a7e3cc}.decor-choice[data-decor=aqua] img{filter:hue-rotate(18deg) saturate(.8);mix-blend-mode:multiply}
.decor-choice strong{font-size:12px;line-height:1.4;display:block;min-height:34px}.decor-choice small{font-size:12px;display:block;margin-top:4px;color:#506c5a}
.decor-choice.active{border:2px solid #0b6463;background:linear-gradient(#fff0b5,#e0eccb);box-shadow:inset 0 0 0 1px #ffc54a,0 3px 0 #0b6463}
.payment-status{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid #c4b893;border-radius:18px;background:linear-gradient(135deg,#fff1ce,#e1edce);margin:15px 0;box-shadow:inset 0 1px 0 #fff,0 3px 0 #b1ac86}
.payment-status>.ui-icon{height:38px;width:38px}.payment-status strong{font-size:15px}.payment-status p{font-size:13px;line-height:1.6;margin-top:5px;color:#456557}
/* Visual coaching shares real screen targets; skipping is always available. */
.learning-banner{position:relative;margin:5px 0 15px;padding:12px;border-radius:21px;background:radial-gradient(ellipse at 0 0,#ffdd8299,transparent 70%),linear-gradient(135deg,#fff8dc,#ddedce);border:2px solid #a8b88c;box-shadow:inset 0 2px 0 #fff,0 4px 0 #9eae81}
.learning-banner-top{min-height:29px}.learning-banner-top>b{font-size:12px}.learning-skip{min-height:31px;font-size:12px}
.learning-step-dots{display:flex;gap:4px}.learning-step-dots i{height:5px;flex:1;border-radius:5px;background:#b5c5a3}.learning-step-dots i.done{background:#0b6463}.learning-step-dots i.current{background:#ffc54a;border:1px solid #be8d2c}
.learning-visual{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;align-items:center;margin-top:11px}
.learning-art{width:66px;height:76px;display:flex;align-items:center;justify-content:center;border-radius:19px;background:radial-gradient(#fff8d4,#cce7cb);box-shadow:inset 0 1px 0 #fff,0 3px 0 #acba90}
.learning-art img{height:69px;width:62px;filter:drop-shadow(0 3px 1px #173f4222)}
.learning-banner h2{font-size:16px;line-height:1.35;margin:0}.learning-banner .learning-tip{font-size:12px;line-height:1.55;margin-top:5px;color:#345d51}
.learning-banner .learning-live{font-size:12px;line-height:1.5;margin-top:8px;padding:7px 9px;background:#fff8e9a8;border:1px solid #d2d4af;border-radius:10px}
.learning-target-hint{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.5;color:#0b6463;font-weight:800;margin-top:9px}
.learning-target-hint .ui-icon{height:22px;width:22px}
.learning-target{position:relative!important;outline:3px solid #ffc54a!important;outline-offset:5px;box-shadow:0 0 0 7px #173f42aa!important;cursor:pointer;scroll-margin-top:20px}
.learning-target:after{content:'Нажми сюда';position:absolute;right:4px;top:4px;z-index:9;padding:5px 8px;background:#ffc54a;color:#173f42;border:1px solid #a17423;border-radius:9px;font-size:12px;font-weight:800;box-shadow:inset 0 1px 0 #fff2b8,0 2px 0 #8d722f;pointer-events:none}
.learning-controls{margin-top:3px}.learning-controls>.primary,.learning-controls>.secondary{min-height:44px;margin-top:9px;font-size:12px}
.learning-welcome{position:relative;text-align:center}.learning-welcome>img{height:170px;width:170px;filter:drop-shadow(0 4px 2px #173f4226)}
.learning-welcome h3{font-size:18px;line-height:1.4;margin:3px 0 8px}.learning-welcome p{text-align:left}
.welcome-trail{display:flex;align-items:center;justify-content:center;gap:9px;padding:10px;margin:10px 0;border:1px solid #c1c9a1;border-radius:15px;background:linear-gradient(#fff8e9,#e4efcf)}
.welcome-trail .ui-icon{height:34px;width:34px}.welcome-trail>span{height:3px;width:16px;background:#a7b58a;border-radius:3px}
/* Season trail and achievement medallions retain game objects as the visual focus. */
.season-summary{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:19px;border:1px solid #b4bf98;background:linear-gradient(130deg,#fff0ba,#d5edd2);box-shadow:inset 0 1px 0 #fff,0 4px 0 #a4b089;margin:14px 0}
.season-medallion{display:flex;flex-direction:column;align-items:center;justify-content:center;height:71px;width:71px;flex:none;border-radius:50%;background:linear-gradient(#fff0a9,#ffc54a);border:3px solid #b0842c;box-shadow:inset 0 0 0 2px #fff6cd,0 4px 0 #8e722c;color:var(--ink)}
.season-medallion b{font-size:27px;line-height:1.1}.season-medallion small{font-size:12px}.season-summary h2{font-size:17px}.season-summary p{font-size:12px;line-height:1.5;margin-top:5px;color:#456557}
.season-progress{height:10px;background:#becbab;border-radius:9px;box-shadow:inset 0 2px 2px #173f4222;overflow:hidden;margin-top:9px}.season-progress i{height:100%;display:block;background:linear-gradient(90deg,#ffc54a,#ecab31);border-radius:9px}
.season-path{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 9px;padding:15px 0 11px}
.season-reward{min-width:0;min-height:142px;display:flex;flex-direction:column;align-items:center;text-align:center;border:2px solid #b4c1a1;border-radius:20px;background:linear-gradient(#fffdf0,#e7e9ce);padding:10px 6px;box-shadow:inset 0 1px 0 #fff,0 4px 0 #a5b08e;position:relative}
.season-reward.current{border-color:#0b6463;box-shadow:inset 0 0 0 2px #ffc54a,0 4px 0 #0b6463;background:linear-gradient(#fff2c7,#deefce)}
.season-reward.credited{border-color:#5e9670;background:linear-gradient(#f4f8df,#cde7c8)}
.season-reward>span{font-size:12px;font-weight:800;color:#52715c}.season-reward>.ui-icon{height:44px;width:44px;margin:8px auto}.season-reward>strong{font-size:12px;line-height:1.4}.season-reward>small{font-size:12px;color:#4d6c59;line-height:1.4;margin-top:5px}
.achievement-summary{display:flex;align-items:center;gap:12px;padding:14px;border-radius:20px;background:linear-gradient(135deg,#ffe59c,#e2efcf);border:2px solid #b3ba8c;box-shadow:inset 0 1px 0 #fff,0 4px 0 #a0ad80;margin-bottom:17px}
.achievement-summary>.ui-icon{height:59px;width:59px}.achievement-summary b{display:block;font-size:26px}.achievement-summary p{font-size:12px;line-height:1.5;color:#456557;margin-top:3px}
.achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px}
.achievement-card{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 10px;border:2px solid #bdc4a0;border-radius:22px;background:radial-gradient(ellipse at top,#fff8d5,transparent 72%),linear-gradient(#fffbee,#e4e7cb);box-shadow:inset 0 1px 0 #fff,0 4px 0 #abb28e;overflow:hidden}
.achievement-card.completed{border-color:#6b9b70;background:radial-gradient(ellipse at top,#fff0a9,transparent 73%),linear-gradient(#f8f6dc,#cfe5c4);box-shadow:inset 0 1px 0 #fff,0 4px 0 #668a61}
.achievement-medal{height:74px;width:74px;display:grid;place-items:center;border:3px solid #a4b594;border-radius:50%;background:linear-gradient(#f5f5dc,#c3d4af);box-shadow:inset 0 0 0 2px #fff8e9,0 4px 0 #91a67c;margin-bottom:13px}
.achievement-medal .ui-icon{width:48px;height:48px}.completed .achievement-medal{border-color:#c79935;background:linear-gradient(#fff0ac,#ffc54a);box-shadow:inset 0 0 0 2px #fff6cc,0 4px 0 #9f7929}
.achievement-card h3{font-size:14px;line-height:1.4}.achievement-card p{font-size:12px;line-height:1.55;color:#496b59;margin-top:6px;min-height:55px}.achievement-card .season-progress{width:100%;height:7px;margin-top:auto}.achievement-card>small{font-size:12px;margin-top:8px;color:#486957}.achievement-card .achievement-reward{font-size:12px;line-height:1.45;font-weight:800;color:#365f4e;margin-top:8px}.achievement-card>button{font-size:12px;min-height:40px;padding:4px 7px;margin-top:9px;width:100%}
.leaderboard-card{padding:17px;border:2px solid #9bb58e;border-radius:24px;background:radial-gradient(ellipse at top right,#ffc54a73,transparent 70%),linear-gradient(#f6f8dc,#d4e7c8);box-shadow:inset 0 1px 0 #fff,0 4px 0 #8da57d}
.leaderboard-card>h2{font-size:19px}.leaderboard-player{display:flex;gap:12px;align-items:center;padding:12px 0}.leaderboard-player>.ui-icon{height:55px;width:55px}.leaderboard-player strong{font-size:17px}.leaderboard-player p{font-size:12px;line-height:1.6;color:#456557;margin-top:4px}
.leaderboard-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px}.leaderboard-stats>div{padding:11px 7px;border:1px solid #b5c099;border-radius:14px;background:#fff8e9bd;text-align:center;box-shadow:inset 0 1px 0 #fff,0 2px 0 #a5b38c}.leaderboard-stats b{font-size:22px;display:block}.leaderboard-stats small{font-size:12px;line-height:1.4;display:block;margin-top:3px;color:#456557}
.weekly-goals{margin-top:15px}.weekly-goal{display:flex;gap:10px;align-items:center;border:1px solid #bcc4a0;border-radius:16px;background:linear-gradient(#fffbea,#e8edcd);box-shadow:inset 0 1px 0 #fff,0 3px 0 #abb58e;padding:12px;margin-top:11px}.weekly-goal>.ui-icon{height:38px;width:38px}.weekly-goal>div{flex:1;min-width:0}.weekly-goal strong{font-size:14px}.weekly-goal p{font-size:12px;line-height:1.5;margin-top:4px;color:#456557}.weekly-goal .season-progress{height:7px}
.rules-v5{margin-top:15px}.rules-v5>summary{min-height:49px;font-weight:800;font-size:14px;cursor:pointer;color:#0b6463}.rules-v5 p,.rules-v5 li{font-size:13px;line-height:1.6;color:#456557}.rules-v5 ul{padding-left:20px;margin:6px 0 14px}
.demo-console{padding-top:18px}.demo-console>h1{font-size:18px}.console-panel{background:linear-gradient(#fff8e9,#e7e7cc);border:1px solid #b9bb98;box-shadow:inset 0 1px 0 #fff,0 4px 0 #aab18c}.console-panel>button{border-bottom:1px solid #c1c7a4;margin-top:2px}.console-panel>button:last-child{border-bottom:0}
@container phone (max-width:359px){.page-head h1{font-size:27px;-webkit-text-stroke:1.5px var(--ink)}.page-head{gap:7px}.intro-toggle{padding-left:5px;padding-right:5px}.egg-card-body{padding-left:12px;padding-right:12px}.egg-card-heading{padding-left:12px;padding-right:12px}.egg-card-heading h2{font-size:22px}.egg-facts b{font-size:12px}.learning-visual{grid-template-columns:56px minmax(0,1fr);gap:9px}.learning-art{width:56px;height:69px}.learning-art img{height:62px;width:53px}.learning-banner h2{font-size:15px}.learning-banner{padding:10px}.achievement-grid{gap:13px 8px}.achievement-card{padding-left:8px;padding-right:8px}.achievement-card h3{font-size:13px}.season-path{gap:14px 7px}.season-reward{padding-left:4px;padding-right:4px}.profile-metrics small{font-size:11px!important}.decor-choices{gap:7px}.decor-choice{padding-left:4px;padding-right:4px}.decor-choice strong{font-size:12px}.egg-choice{flex-basis:112px;min-width:112px}}
@media(prefers-reduced-motion:reduce){.dock button{transition:none}.learning-target{animation:none}}

.hatch-result.rarity-theme{border:var(--rarity-width) solid transparent;background:linear-gradient(150deg,#fffdf0,var(--rarity-soft)) padding-box,var(--rarity-frame) border-box;box-shadow:inset 0 1px 0 #fff8e9,0 4px 0 var(--rarity-edge)}
.nest-parent.rarity-theme{border:var(--rarity-width) solid var(--rarity-accent);background:linear-gradient(150deg,#fffdf0e8,var(--rarity-soft));box-shadow:inset 0 1px 0 #fff8e9,0 4px 0 var(--rarity-edge)}
.route-nest .nest-parent strong,.route-nest .nest-parent small{background:none;border:0;box-shadow:none;padding-top:2px;padding-bottom:2px}.route-nest .nest-parent small{margin-top:3px;color:#426457}.nest-parent strong{font-size:12px!important}
