.academy-scene,.boss-valley{color:#eaf0f3;background:radial-gradient(ellipse at 12% 0,#284a58,#142333 55%,#101b29);border:1px solid #66838b55;border-radius:28px;overflow:hidden;padding:28px;box-shadow:0 20px 70px #03101b30}
.academy-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.academy-eyebrow{font-size:.67rem;font-weight:800;letter-spacing:.17em;color:#e6c58b}.academy-heading h2,.boss-valley h2{font-size:clamp(26px,3.5vw,48px);margin:10px 0;color:#fff2da;line-height:1.1}.academy-heading p,.boss-valley header p{margin:10px 0 0;color:#b6c8cf;line-height:1.5}.academy-live{color:#a6e4c2;font-size:.72rem;white-space:nowrap;border:1px solid #8ad7b13d;background:#1c463b66;border-radius:20px;padding:9px 12px}.academy-site{position:relative}.academy-building{display:block;width:100%;height:auto;overflow:visible;border:1px solid #adc4c22a;border-radius:24px}.academy-windows,.academy-roofs,.academy-sign{transition:opacity 1s}
.academy-brick-new{transform-box:fill-box;transform-origin:center;animation:academy-place .85s cubic-bezier(.2,.7,.25,1) both}
@keyframes academy-place{0%{opacity:0;transform:translate(-70px,-170px) rotate(-24deg);filter:brightness(2)}30%{opacity:1}80%{transform:translateY(2px) rotate(0);filter:brightness(1.6)}100%{transform:translate(0) rotate(0);filter:brightness(1)}}
.academy-arrival{position:absolute;top:16px;left:50%;max-width:88%;padding:12px 22px;border-radius:30px;background:#14273ee8;border:1px solid #f0ce88;color:#fff0c6;font-weight:700;text-align:center;opacity:0;transform:translateX(-50%);pointer-events:none}.academy-arrival.show{animation:academy-notice 5s both}@keyframes academy-notice{0%{opacity:0;translate:0 -12px}10%,80%{opacity:1;translate:0 0}100%{opacity:0}}
.academy-finished{position:absolute;bottom:8%;left:15%;right:15%;padding:14px;text-align:center;font-size:clamp(18px,2vw,30px);font-weight:800;color:#ffecb8;background:#19364bf0;border:1px solid #e5c57b;border-radius:16px}.academy-finished small{display:block;font-size:.6em;margin-top:6px}.academy-finished[hidden],.academy-purchase[hidden]{display:none}
.academy-dashboard{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;padding-top:24px}.academy-progress>div{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline}.academy-progress strong{font-size:clamp(26px,3vw,40px);color:#f6d99c;font-variant-numeric:tabular-nums}.academy-progress span,.academy-progress small{color:#b4c7d1;font-size:.85rem}.academy-progress progress{display:block;width:100%;height:12px;border:0;border-radius:20px;overflow:hidden;accent-color:#e5be79;margin:16px 0;background:#0d1c2c}.academy-progress progress::-webkit-progress-bar{background:#0d1c2c}.academy-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#c99567,#f4d895);border-radius:20px}.academy-purchase{padding:18px;background:#d2c4a90b;border:1px solid #b5ac883b;border-radius:20px}.academy-price{display:flex;justify-content:space-between;gap:10px;font-size:.9rem;margin-bottom:14px}.academy-price span{color:#f6d99c}.academy-purchase button{width:100%;min-height:48px;background:linear-gradient(135deg,#f2d394,#c89c58);color:#24313b;border:0;font-weight:800}.academy-purchase small{display:block;margin-top:12px;color:#bdc9cc;line-height:1.5;font-size:.75rem}.academy-message{color:#f4d694;min-height:1.4em;font-size:.85rem}.academy-recent{border-top:1px solid #cbd5d022;padding-top:18px}.academy-recent h3{font-size:.83rem;color:#b7c7cf;margin:0 0 12px}.academy-recent [data-builders-list]{display:flex;flex-wrap:wrap;gap:8px;color:#bbcad0;font-size:.85rem}.academy-recent [data-builders-list] span{padding:8px 12px;border:1px solid #abbdc12b;border-radius:12px;background:#a7bfc008;overflow-wrap:anywhere;max-width:100%}
.boss-valley{background:radial-gradient(ellipse at 50% 35%,#493322,#1c1929 60%,#151623)}.boss-valley header{text-align:center}.valley-stage{height:260px;position:relative;overflow:hidden;margin:10px -28px 0}.valley-mountain{position:absolute;bottom:0;width:65%;height:240px;background:#0f1721;clip-path:polygon(0 100%,14% 38%,27% 70%,47% 8%,64% 59%,78% 26%,100% 100%)}.valley-mountain.left{left:-10%}.valley-mountain.right{right:-15%;transform:scaleX(-1);background:#20212b}.valley-glow{position:absolute;inset:15% 15% 0;background:radial-gradient(ellipse,#f8b43944,transparent 65%)}.valley-cauldron{position:absolute;left:50%;bottom:12px;width:230px;height:210px;transform:translateX(-50%)}.valley-pot{position:absolute;left:15px;right:15px;bottom:25px;height:135px;background:linear-gradient(110deg,#66707a,#2e3845 30%,#141e2c 75%,#4b5963);border-radius:24% 24% 44% 44%;border:4px solid #73828b;box-shadow:inset 0 -18px 26px #03081066,0 8px 35px #f8903033}.valley-pot:before{content:'';position:absolute;inset:-12px -7px auto;height:27px;background:#172432;border:5px solid #9b9b88;border-radius:50%}.valley-pot:after{content:'';position:absolute;inset:0 -22px auto;height:90px;border:7px solid #8c978f;border-top:0;border-radius:0 0 60px 60px;z-index:-1}.valley-pot span{position:absolute;left:0;right:0;top:36px;text-align:center;font-size:44px;color:#b9b79d;opacity:.8}.valley-coins{position:absolute;z-index:2;left:20px;right:20px;top:25px;height:50px}.valley-coins i{position:absolute;left:calc(mod(var(--n),7)*23px);bottom:calc(mod(var(--n),3)*9px);width:27px;height:22px;border-radius:50%;background:linear-gradient(135deg,#fff2ac,#d59825);border:2px solid #f8d86d;color:#926115;font-style:normal;text-align:center;font-size:16px;transform:rotate(calc(var(--n)*19deg));box-shadow:0 2px 3px #55361c}.valley-fire{position:absolute;bottom:0;left:35px;right:35px;height:38px;display:flex;justify-content:center;filter:drop-shadow(0 0 12px #ff982f)}.valley-fire i{width:25px;height:38px;background:linear-gradient(#fbe898,#ef7823);border-radius:90% 10% 70% 30%;animation:valley-flame 1.5s ease-in-out infinite alternate}.valley-fire i:nth-child(2n){animation-delay:-.7s}@keyframes valley-flame{to{transform:scale(.85,1.2) rotate(8deg)}}.valley-total{text-align:center}.valley-total span,.valley-total small{display:block;color:#c5b498;font-size:.85rem}.valley-total strong{display:block;color:#ffda83;font-size:clamp(48px,7vw,80px);line-height:1.25;font-variant-numeric:tabular-nums;text-shadow:0 0 45px #e7ae3744}.valley-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.valley-stats>div{padding:16px;background:#e7c8950a;border:1px solid #ae997833;border-radius:16px}.valley-stats span{display:block;color:#b8a990;font-size:.78rem;margin-bottom:8px}.valley-stats b{color:#f4dfb4;font-size:1.15rem}.valley-note{font-size:.76rem;line-height:1.6;color:#aa9f91;margin:18px 0}.valley-boss-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.valley-boss-list>div{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;background:#ffffff06;font-size:.8rem}.valley-boss-list b{white-space:nowrap;color:#f0cb84}
body.ds-academy-board .topbar-inner{justify-content:center!important;max-width:none}body.ds-academy-board #topnav{margin:0!important;justify-content:center;flex-wrap:wrap}body.ds-academy-board #topnav>#academy-nav[data-nav="academy"]{display:inline-flex!important}.board-academy-screen{max-width:1800px;margin:0 auto}.board-academy-screen .academy-dashboard{grid-template-columns:1fr}.board-academy-screen .academy-heading h2{font-size:clamp(32px,4vw,64px)}.board-academy-screen .academy-building{max-height:65vh}.board-academy-screen .academy-progress strong{font-size:clamp(32px,4vw,58px)}.board-academy-screen .academy-arrival{font-size:clamp(18px,2vw,32px)}
@media(max-width:700px){.academy-scene,.boss-valley{padding:18px;border-radius:20px}.academy-heading{flex-direction:column;gap:12px;margin-bottom:18px}.academy-dashboard{grid-template-columns:1fr;gap:18px}.academy-heading h2{font-size:28px}.academy-live{font-size:.65rem}.academy-arrival{font-size:.72rem;top:8px;padding:7px 12px;width:85%}.academy-finished{left:6%;right:6%;padding:8px}.valley-boss-list{grid-template-columns:1fr}.valley-stage{margin-left:-18px;margin-right:-18px}.valley-stats{gap:8px}.valley-stats>div{padding:12px}.valley-stats b{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.academy-brick-new,.academy-arrival.show,.valley-fire i{animation:none!important}.academy-arrival.show{opacity:1}.academy-windows,.academy-roofs,.academy-sign{transition:none}}

#topnav>[data-nav="academy"][hidden]{display:none!important}

.stats-screen>.profile-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stats-screen>.profile-tabs>button{grid-column:auto;min-height:52px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.25}.profile-collection-link{margin:0 0 18px}.valley-boss-list>div{align-items:center}.valley-boss-coins{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;font-variant-numeric:tabular-nums}.valley-coin-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:linear-gradient(135deg,#fff0a6,#d99b2c);border:1px solid #f4ce69;color:#8b5a16;font:700 13px/1 sans-serif;box-sizing:border-box}@media(max-width:600px){.stats-screen>.profile-tabs{gap:4px;padding:5px}.stats-screen>.profile-tabs>button{font-size:11px;padding:10px 3px;min-height:50px}}

#profile-tab-collection{position:relative;display:flex;align-items:center;gap:16px;width:100%;min-height:90px;padding:20px 24px;margin:0 0 24px;border:1px solid #bc98ff88;border-radius:20px;background:radial-gradient(ellipse at 85% 10%,#af79ff40,transparent 65%),linear-gradient(120deg,#332052,#25345d);box-shadow:0 8px 28px #0b102733,inset 0 1px #ffffff18;color:#f7edff;font-size:22px;font-weight:800;text-align:left;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s}#profile-tab-collection:before{content:'✦';display:grid;place-items:center;flex:0 0 50px;height:50px;border-radius:16px;background:linear-gradient(135deg,#ffedb0,#e9b658);border:1px solid #fff2bd;color:#75521f;font-size:32px;box-shadow:0 0 24px #f0c87633}#profile-tab-collection:after{content:'Открыть коллекцию →';margin-left:auto;color:#d9c7f3;font-size:13px;font-weight:600}#profile-tab-collection:hover{transform:translateY(-2px);border-color:#d4b8ff;box-shadow:0 12px 32px #693cb333}#profile-tab-collection:focus-visible{outline:3px solid #f8d889;outline-offset:4px}@media(max-width:600px){#profile-tab-collection{padding:16px;gap:12px;font-size:20px;flex-wrap:wrap}#profile-tab-collection:after{flex-basis:100%;margin-left:62px;font-size:12px}}@media(prefers-reduced-motion:reduce){#profile-tab-collection{transition:none}}

.crew-smoke{animation:crew-smoke 4s ease-out infinite}.academy-paused .academy-crew *{animation-play-state:paused!important}@keyframes crew-smoke{from{transform:translateY(4px);opacity:0}30%{opacity:.45}to{transform:translate(-7px,-16px);opacity:0}}@media(prefers-reduced-motion:reduce){.academy-crew *{animation:none!important}}
.academy-finished{position:static;margin:12px 0 0}

.academy-reward{display:flex;align-items:flex-start;gap:16px;padding:20px;margin-top:20px;border:1px solid #e8c58455;border-radius:18px;background:linear-gradient(110deg,#bd924619,#9077c51a)}.academy-reward>span{font-size:32px}.academy-reward strong{display:block;color:#ffe0a0;font-size:17px}.academy-reward p{font-size:13px;line-height:1.6;color:#bed0d8;margin:10px 0}.academy-reward b{font-size:13px;color:#b2e4ce}@media(max-width:600px){.academy-reward{padding:14px;gap:10px}.academy-reward strong{font-size:15px}}

.city-overview{margin:-28px -28px 32px;border-bottom:1px solid #a6c3bd33;background:linear-gradient(155deg,#24474a,#142c38)}.city-heading{padding:32px 30px 22px;display:flex;justify-content:space-between;gap:22px;align-items:center}.city-heading h2{font-size:clamp(28px,4vw,54px);line-height:1.1;margin:9px 0;color:#ffebbc;letter-spacing:-.035em}.city-heading p{color:#bfd3d0;font-size:14px;margin:12px 0 0;line-height:1.5}.city-seal{display:flex;flex-direction:column;text-align:center;flex-shrink:0;padding:18px 23px;border-radius:24px;border:1px solid #d5c08a55;background:#efd3920a}.city-seal strong{font-size:30px;color:#f7d58e}.city-seal span{color:#b7ceca;font-size:11px;margin-top:5px}.city-map-scroll{overflow-x:auto;scrollbar-color:#91b5a0 #243e42}.city-map{position:relative;container-type:inline-size;min-width:800px;isolation:isolate;padding:20px 20px 24px;background:radial-gradient(ellipse at 50% 48%,#63948266,transparent 60%),repeating-linear-gradient(35deg,#60866b09 0 3px,transparent 3px 25px),linear-gradient(135deg,#244e4b,#315f51 48%,#23424a);border-block:1px solid #a4c9ac33}.city-plots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:10px;row-gap:88px;position:relative;z-index:2}.city-plot{display:flex;flex-direction:column;align-items:center;min-width:0;background:transparent!important;border:1px solid transparent;border-radius:24px;padding:4px 0 10px;cursor:pointer;color:#e4eee0;transition:background .2s,border-color .2s,transform .2s;font:inherit}.city-plot svg{width:100%;max-height:170px;overflow:visible;filter:drop-shadow(0 9px 9px #071e2733);transition:filter .25s}.city-plot.built svg{filter:drop-shadow(0 0 15px #f6d68c30)}.city-plot.locked svg{opacity:.38;filter:saturate(.25)}.city-plot.active{border:1px dashed #f5d48599;background:#f8d4860b!important}.city-plot[aria-pressed=true]{border:1px solid #f3d28c;box-shadow:0 0 0 4px #edcb8520;background:#f8d48613!important}.city-plot:hover{transform:translateY(-4px);background:#ddf3de0b!important}.city-plot:focus-visible{outline:3px solid #ffdd93;outline-offset:3px}.city-plot-name{font-size:12px;line-height:1.3;font-weight:800;text-align:center;padding:0 5px;min-height:32px;display:flex;align-items:center}.city-plot small{font-size:10px;color:#bad3c5;margin-top:5px}.city-plot.active small{color:#ffdd98}.city-boulevard{position:absolute;top:46%;left:0;right:0;height:63px;background:linear-gradient(#dfd8ac55 0 4px,#b6b6972b 4px 59px,#dfd8ac55 59px);transform:rotate(-1deg);display:grid;place-items:center;z-index:0}.city-boulevard span{font-size:10px;letter-spacing:.45em;color:#e2e4bb88}.city-park{position:absolute;top:46%;font-size:58px;color:#7fae85;text-shadow:0 5px #253f3e;line-height:1;z-index:1}.park-one{left:3%}.park-two{right:3%}.city-residents{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.city-letter{position:absolute;top:calc(47% + mod(var(--i),3)*13px);left:0;display:grid;place-items:center;width:21px;height:25px;background:var(--coat);border-radius:7px 7px 5px 5px;color:#254455;font-size:14px;font-weight:900;box-shadow:0 4px 5px #112e3955;animation:city-stroll calc(25s + var(--i)*3s) linear infinite;animation-delay:calc(var(--i)*-5s)}.city-letter:before{content:'';position:absolute;top:-6px;left:5px;width:11px;height:7px;border-radius:7px 7px 0 0;background:#eedfb2}.city-letter:after{content:'• •';position:absolute;top:19px;color:#b1cbbb;letter-spacing:4px;font-size:15px;line-height:1}.city-letter:nth-child(2n){animation-direction:reverse}.city-legend{padding:18px 28px;display:flex;flex-wrap:wrap;gap:12px 20px;color:#b3ccc4;font-size:11px}.city-legend b{margin-left:auto;color:#f0d596;font-size:12px}.academy-paused .city-letter{animation-play-state:paused}.city-overview~.academy-heading{padding-top:4px}@keyframes city-stroll{0%{transform:translateX(-30px) translateY(0) rotate(-3deg)}25%{translate:0 -3px}50%{translate:0 0}75%{translate:0 -3px}100%{transform:translateX(calc(100cqw + 30px)) translateY(0) rotate(3deg)}}@media(max-width:700px){.city-overview{margin:-18px -18px 24px}.city-heading{padding:22px 18px;align-items:flex-start;gap:12px}.city-heading h2{font-size:30px}.city-heading p{font-size:12px}.city-seal{padding:12px;border-radius:16px}.city-seal strong{font-size:22px}.city-seal span{font-size:9px;max-width:65px}.city-legend{padding:14px 18px;gap:10px}.city-legend b{margin-left:0;width:100%}.city-map-scroll:after{content:'← Листай карту города →';display:block;text-align:center;padding:9px;color:#c6d9cd;font-size:11px}.city-map{min-width:800px}}@media(prefers-reduced-motion:reduce){.city-letter{animation:none;left:calc(5% + var(--i)*7.5%)}.city-plot,.city-plot svg{transition:none}}

.city-human{width:15px;height:19px;border-radius:5px 5px 3px 3px;margin-top:5px}.city-human:before{width:12px;height:12px;border-radius:50%;left:1px;top:-11px;background:#eac69b}.city-human:after{top:13px;font-size:16px;letter-spacing:1px;color:#213d4e}.city-human i{position:absolute;left:-4px;right:-4px;top:3px;height:10px;border-inline:3px solid #eac69b;border-radius:4px;transform:rotate(-8deg)}

.city-letter:after,.city-human:after{content:none}.city-leg{position:absolute;bottom:-9px;width:5px;height:12px;background:#163345;border-radius:2px 2px 4px 4px;transform-origin:50% 0;animation:city-leg-step .38s ease-in-out infinite alternate}.city-leg:after{content:'';position:absolute;bottom:0;left:0;width:8px;height:4px;background:#d6d7ad;border-radius:3px}.city-leg.leg-left{left:3px}.city-leg.leg-right{right:3px;animation-delay:-.38s}.city-human .city-leg{width:4px;height:11px;bottom:-9px}.city-human .leg-left{left:2px}.city-human .leg-right{right:2px}.academy-paused .city-leg{animation-play-state:paused}[data-building-reveal]{transition:y .7s ease,height .7s ease}.city-delivery-brick{opacity:0;transform-origin:center}.academy-delivering .city-delivery-brick{animation:city-brick-flight 1.1s ease-out both}@keyframes city-leg-step{from{transform:rotate(-26deg)}to{transform:rotate(26deg)}}@keyframes city-brick-flight{0%{opacity:1;transform:translate(-270px,260px) rotate(-25deg)}65%{opacity:1;transform:translate(-80px,-20px) rotate(15deg)}100%{opacity:0;transform:translate(0,0) rotate(0)}}@media(prefers-reduced-motion:reduce){.city-leg{animation:none}[data-building-reveal]{transition:none}.academy-delivering .city-delivery-brick{animation:none}}

.city-masonry-brick{opacity:.38;stroke:#674936;stroke-width:.12}.academy-brick-flights{pointer-events:none}.academy-brick-flights rect{transform-box:view-box;transform-origin:0 0}

.city-letter:not(.city-human)::before{content:none}

.city-masonry-brick{opacity:.2;stroke:#573e32;stroke-width:.35}.academy-brick-flights rect{filter:drop-shadow(0 3px 3px #15253888)}

/* Construction stages: architectural pieces, not a brick texture over the facade. */
.city-build-stages{display:flex;list-style:none;gap:6px;margin:0 0 18px;padding:0;counter-reset:stage}.city-build-stages li{flex:1;padding:12px 8px;border-radius:12px;background:#243a49;color:#a8bdc4;font-size:12px;text-align:center;border:1px solid #a1b8b51c}.city-build-stages li:before{counter-increment:stage;content:counter(stage);display:block;margin-bottom:5px;font-size:16px;font-weight:800}.city-build-stages .done{background:#315c50;color:#c6e9cd}.city-build-stages .done:before{content:'✓'}.city-build-stages .current{background:#e9c187;color:#293f50;border-color:#ffdea1;box-shadow:0 0 20px #e6be7320;font-weight:800}[data-building-ghost]{opacity:.27}[data-building-ghost] path,[data-building-ghost] rect,[data-building-ghost] ellipse,[data-building-ghost] circle{fill:none!important;stroke:#b2c8c5!important;stroke-width:.7;stroke-dasharray:3 3}[data-building-ghost] .city-architect-window{opacity:.4}[data-build-phase="0"] [data-building-complete] .city-architect-window,[data-build-phase="1"] [data-building-complete] .city-architect-window{visibility:hidden}.city-hammer-arm{transform-box:fill-box;transform-origin:0 90%;animation:city-hammer-work .85s ease-in-out infinite alternate}.city-side-face{filter:brightness(.9)}.city-site-equipment{transition:opacity .4s}.city-scaffold{opacity:.8}[data-build-phase="5"] [data-building-complete] .city-architect-window{filter:drop-shadow(0 0 3px #ffda8a)}@keyframes city-hammer-work{to{transform:rotate(-22deg)}}.academy-paused .city-hammer-arm{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.city-hammer-arm{animation:none}}@media(max-width:600px){.city-build-stages{display:grid;grid-template-columns:repeat(3,1fr)}.city-build-stages li{padding:8px;font-size:11px}.city-build-stages li:before{display:inline;margin-right:6px;font-size:12px}}

[data-build-phase="5"] [data-building-ghost]{display:none}.city-plot.built .city-architect-window{filter:drop-shadow(0 0 2px #ffd185)}

.city-construction-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px;align-items:start;margin-bottom:20px}.city-construction-layout .academy-site{min-width:0;margin-bottom:0}.city-heroes{padding:22px 18px;border:1px solid #d8bb7938;border-radius:22px;background:linear-gradient(145deg,#293f4e,#182f3d);min-width:0;box-shadow:0 10px 30px #0b20252b}.city-heroes h3{color:#ffe3aa;font-size:21px;margin:8px 0}.city-heroes>p{font-size:12px;color:#c1d0cc;margin:0 0 18px}.city-heroes ol{list-style:none;margin:0;padding:0}.city-heroes li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #afc5c215;font-size:12px}.city-hero-rank{font-size:19px;text-align:center;color:#9bb4bf}.city-heroes strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e6eeeb;font-weight:700}.city-heroes li b{font-size:12px;white-space:nowrap;color:#f4d498}.city-heroes>small{display:block;color:#92aeb6;font-size:10px;line-height:1.6;margin-top:18px}.city-heroes .city-heroes-empty{display:block;color:#b6c9c9;line-height:1.7;padding:20px 0}.city-heroes li:first-child strong{color:#ffdfa0}@media(max-width:850px){.city-construction-layout{grid-template-columns:minmax(0,1fr)}.city-heroes{padding:20px}.city-heroes li{font-size:14px}.city-heroes li b{font-size:14px}}

.academy-purchase button + button{margin-top:12px}

/* City council: five public wallet standings beneath the recent builders. */
.city-council{margin-top:28px;padding:24px;border:1px solid #c9a66c55;border-radius:22px;background:radial-gradient(ellipse at 50% 0,#90734330,transparent 65%),#142730;color:#f2e8ce}.city-council header>span{font-size:11px;letter-spacing:.15em;color:#d9ba7c}.city-council h3{font-size:26px;margin:7px 0}.city-council p{color:#c6d1d0;line-height:1.6}.city-council ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;list-style:none;margin:24px 0}.council-seat{min-width:0;text-align:center;padding:12px 10px 16px;border:1px solid #799aa133;border-radius:16px;background:linear-gradient(#ffffff05,#ffffff02);color:#b7bfc4}.council-seat[data-place="1"]{color:#f3ce78;border-color:#f3ce7866;background:linear-gradient(#b78b2726,#ffffff02)}.council-seat[data-place="2"]{color:#d1e0ec}.council-seat[data-place="3"]{color:#d4a078}.council-statue svg{display:block;width:100%;max-width:160px;margin:auto}.council-rank{display:block;text-transform:uppercase;font-size:11px;letter-spacing:.12em}.council-name{display:block;color:#fff2d3;margin:10px 0;overflow-wrap:anywhere;font-size:16px}.council-balance{display:block;color:#ffd783;font-size:18px;font-variant-numeric:tabular-nums}.council-seal{display:block;color:#a3dbc1;font-size:11px;margin:12px 0}.council-seat details{text-align:left;font-size:12px;color:#d7e2df}.council-seat summary{cursor:pointer;text-align:center;padding:8px 2px;border-top:1px solid #ffffff18}.council-seat details p{overflow-wrap:anywhere}.council-seat small{color:#a4b5b7}.city-council footer{border-top:1px solid #ffffff1a;padding-top:16px}.city-council footer p{font-size:13px;margin:8px 0}.city-council footer small{color:#96acb0;font-size:12px}.council-empty{grid-column:1/-1;padding:25px;text-align:center}@media(max-width:900px){.city-council ol{grid-template-columns:repeat(2,minmax(0,1fr))}.council-seat:first-child{grid-column:1/-1}.council-statue svg{max-width:120px}}@media(max-width:420px){.city-council{padding:14px}.city-council ol{gap:8px}.council-name{font-size:14px}.council-balance{font-size:16px}}

.city-council .council-arrival{padding:12px 16px;border:1px solid #f3ce7877;border-radius:12px;background:#b78b2720;color:#ffe3a1;font-weight:700;overflow-wrap:anywhere}.council-statue{overflow:hidden}

/* The classroom slideshow focuses on the current construction, not the profile. */
.academy-presentation{padding:20px 24px;border-radius:24px;height:calc(100dvh - 100px);box-sizing:border-box;display:flex;flex-direction:column}
.academy-presentation [hidden]{display:none!important}
.academy-presentation .secret-city-tools{display:none!important}
.academy-presentation .academy-heading{align-items:center;margin-bottom:14px;gap:14px;flex-shrink:0}
.academy-presentation .academy-heading h2{font-size:clamp(28px,2.8vw,52px);margin:5px 0 0}
.academy-presentation .academy-eyebrow{font-size:clamp(10px,.8vw,15px)}
.academy-presentation .academy-live{font-size:clamp(11px,.9vw,17px)}
.academy-presentation .city-build-stages{margin-bottom:14px;flex-shrink:0}
.academy-presentation .city-build-stages li{padding:7px 10px;font-size:clamp(11px,.8vw,15px)}
.academy-presentation .city-build-stages li:before{display:inline;margin:0 7px 0 0;font-size:inherit}
.academy-presentation .city-construction-layout{grid-template-columns:minmax(0,1fr) clamp(260px,22vw,380px);gap:20px;margin-bottom:0;flex:1;min-height:0}
.academy-presentation .academy-site{display:grid;grid-template-rows:minmax(0,1fr);justify-items:center;align-content:start;min-width:0;height:100%;min-height:0}
.academy-presentation .academy-building{width:auto;height:100%;max-width:100%;max-height:none;aspect-ratio:5/4;border-radius:20px}
.academy-presentation .academy-arrival{font-size:clamp(15px,1.35vw,26px);max-width:92%;padding:10px 18px;top:12px;z-index:1}
.academy-presentation .academy-finished{position:absolute;bottom:4%;left:10%;right:10%;margin:0;font-size:clamp(18px,1.7vw,30px)}
.academy-presentation .city-heroes{padding:16px 18px;max-height:100%;overflow-y:auto;box-sizing:border-box;scrollbar-width:thin}
.academy-presentation .city-heroes h3{font-size:clamp(21px,1.5vw,28px)}
.academy-presentation .city-heroes>p{font-size:clamp(11px,.9vw,16px);margin-bottom:12px}
.academy-presentation .city-heroes li{padding:clamp(8px,.7vw,14px) 0;font-size:clamp(13px,1vw,20px);gap:9px}
.academy-presentation .city-heroes li b{font-size:clamp(12px,.95vw,18px)}
.academy-presentation .city-heroes>small{font-size:clamp(10px,.7vw,13px);margin-top:12px}
.academy-presentation .academy-dashboard{display:block;padding-top:14px;flex-shrink:0}
.academy-presentation .academy-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 18px}
.academy-presentation .academy-progress strong{font-size:clamp(24px,2.1vw,40px)}
.academy-presentation .academy-progress>div{gap:8px 14px}
.academy-presentation .academy-progress span,.academy-presentation .academy-progress small{font-size:clamp(11px,.8vw,15px)}
.academy-presentation .academy-progress progress{grid-column:1/-1;grid-row:2;height:9px;margin:0}
.academy-presentation .academy-message{margin:6px 0 0;min-height:0}
.academy-presentation .academy-message:empty{display:none}
@media(max-width:850px){.academy-presentation{padding:16px}.academy-presentation .city-construction-layout{grid-template-columns:minmax(0,1fr)}.academy-presentation .city-heroes{display:none}.academy-presentation .academy-building{height:100%;width:auto;max-width:100%}.academy-presentation .academy-heading{align-items:flex-start}.academy-presentation .academy-heading h2{font-size:27px}.academy-presentation .academy-progress{grid-template-columns:1fr}.academy-presentation .academy-progress progress{grid-row:auto}.academy-presentation .academy-progress small{grid-row:3}.academy-presentation .city-build-stages li{padding:6px 4px}.academy-presentation .academy-arrival{font-size:12px}}

/* Orbital shipyard: isolated from the brick construction scene. */
.shipyard{margin:0 0 32px;padding:32px;border:1px solid #344967;border-radius:28px;background:radial-gradient(ellipse at 20% 35%,#173954 0,transparent 55%),#0b1325;color:#e3efff;overflow:hidden;box-shadow:0 16px 50px #03081730;font-family:inherit}.shipyard *{box-sizing:border-box}.shipyard-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.shipyard-kicker{font-size:11px;letter-spacing:.18em;color:#86dbec;font-weight:700}.shipyard h2{font-size:clamp(26px,3vw,40px);color:#f0f7ff;margin:10px 0;line-height:1.15}.shipyard p{color:#a7bed8;line-height:1.65;margin:8px 0 18px}.shipyard-live{font-size:10px;letter-spacing:.1em;white-space:nowrap;border:1px solid #376073;padding:10px 12px;border-radius:30px;color:#9eedde}.shipyard-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,1fr);gap:24px;align-items:center}.shipyard-art{position:relative;min-width:0}.shipyard-art svg{display:block;width:100%;height:auto;overflow:visible}.shipyard-art-note{display:block;text-align:center;color:#819bb8;font-size:12px;letter-spacing:.08em}.ship-vessel{animation:ship-hover 6s ease-in-out infinite;transform-origin:400px 230px}.ship-engine{animation:ship-thrust 1.8s ease-in-out infinite;transform-origin:400px 315px}.ship-star{animation:ship-twinkle 4s ease-in-out infinite;animation-delay:var(--delay)}.shipyard-controls{padding:24px;background:#101e32c9;border:1px solid #2c405a;border-radius:20px;min-width:0}.shipyard-total{display:block;font-size:clamp(22px,2.5vw,32px);margin:10px 0}.shipyard progress{display:block;width:100%;height:8px;border:0;border-radius:10px;background:#293b56;overflow:hidden;accent-color:#70e6d6}.shipyard progress::-webkit-progress-bar{background:#293b56;border-radius:10px}.shipyard progress::-webkit-progress-value{background:linear-gradient(90deg,#6596ff,#70e6d6);border-radius:10px;transition:width .4s}.shipyard progress::-moz-progress-bar{background:#70e6d6}.shipyard-personal{display:grid;gap:7px;padding:16px 0;border-top:1px solid #2b405a;margin-top:18px}.shipyard-personal>span{color:#a5bdd7;font-size:12px}.shipyard-personal strong{color:#f4e4b5;font-size:20px}.shipyard small{font-size:12px;color:#a7bed8;line-height:1.6;overflow-wrap:anywhere}.shipyard-buy>b{font-size:13px}.shipyard-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.shipyard-buttons button{min-height:58px;padding:10px;border-radius:12px;background:#213957;border:1px solid #4a6c91;color:#eaf4ff;cursor:pointer;display:grid;gap:4px;min-width:0;white-space:normal;transition:background .2s,transform .2s;font:inherit}.shipyard-buttons button:hover:not(:disabled){background:#305275;transform:translateY(-2px)}.shipyard-buttons button:focus-visible{outline:3px solid #8bf2e0;outline-offset:3px}.shipyard-buttons button span{font-size:11px;color:#bbd3ed}.shipyard-buttons button:disabled{opacity:.5;cursor:default}.shipyard [data-ship-message]{font-size:13px;color:#a4f4dd;min-height:20px;margin:10px 0 0}.shipyard-rewards{margin-top:28px;padding-top:24px;border-top:1px solid #2a415c}.shipyard-rewards h3{color:#e6f1ff;font-size:20px;margin:0}.shipyard-rewards p{font-size:13px}.shipyard-rewards ol{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:18px 0}.shipyard-rewards li{background:#14243a;border:1px solid #334b67;border-radius:14px;padding:14px 10px;display:grid;gap:10px;min-width:0}.shipyard-rewards li>span{font-size:11px;color:#c4d9ef}.shipyard-rewards li>strong{color:#f6d496;font-size:16px}.shipyard-rewards li.claimed{border-color:#65cdb6;background:#153830}.shipyard-rewards li.claimed small{color:#9ff0d7}.shipyard-complete .shipyard-live{background:#173e39;color:#b4ffde}.academy-paused .shipyard *{animation-play-state:paused!important}
@keyframes ship-hover{50%{transform:translateY(-9px)}}@keyframes ship-thrust{50%{opacity:.65;transform:scaleY(.85)}}@keyframes ship-twinkle{50%{opacity:.3}}
@media(max-width:900px){.shipyard-layout{grid-template-columns:1fr}.shipyard-art{max-width:650px;margin:auto;width:100%}.shipyard-rewards ol{grid-template-columns:repeat(3,minmax(0,1fr))}.shipyard-heading{flex-wrap:wrap}.shipyard-live{font-size:9px}.shipyard-controls{padding:20px}}
@media(max-width:480px){.shipyard{padding:18px 14px;border-radius:20px}.shipyard h2{font-size:28px}.shipyard-layout{gap:16px}.shipyard-heading p{font-size:13px}.shipyard-art svg{min-height:180px}.shipyard-rewards ol{grid-template-columns:repeat(2,minmax(0,1fr))}.shipyard-controls{padding:16px}.shipyard-kicker{font-size:10px}.shipyard-total{font-size:26px}}
@media(prefers-reduced-motion:reduce){.shipyard *{animation:none!important;transition:none!important}}

/* Build individual assemblies instead of displaying a finished ship at zero contributions. */
.shipyard:not(.shipyard-complete) .ship-vessel{animation:none}
.shipyard:not(.shipyard-complete) .ship-engine{visibility:hidden;animation:none}
.ship-blueprint{opacity:.27}.shipyard-complete .ship-blueprint{opacity:0}
.shipyard [data-ship-reveal]{transition:y .7s ease,height .7s ease}
.shipyard h2{overflow-wrap:anywhere;font-size:clamp(24px,2.7vw,36px);max-width:680px}
.shipyard-stages{padding:0;margin:20px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.shipyard-stages li{font-size:11px;color:#829bb7;display:flex;align-items:center;gap:7px;padding:9px 7px;border:1px solid #2d435c;border-radius:9px}
.shipyard-stages li>span{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#23374e;color:#9ab4cf}
.shipyard-stages li.current{color:#e0faff;border-color:#64c8e0;background:#1c394e}
.shipyard-stages li.done{color:#9eeed6;border-color:#366759}.shipyard-stages li.done>span{background:#255849;color:#bcffe2}
@media(max-width:480px){.shipyard-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.shipyard h2{font-size:26px}}
