/* Dark illustrated jungle: applies only to Cubs and Cub leaders.
   General forest portals keep their own theme. All imagery is decorative. */
.jungle-theme{--green:#07573e;--ink:#302417;--muted:#6b583e;--line:#c7a366;--gold:#edc568;--wood:#482819;color:var(--ink)}
.jungle-theme .workspace{background:linear-gradient(#0b281a85,#0b211bea),url('../assets/jungle-background.png') center top/cover fixed}
.jungle-theme .workspace:before{display:none}
.jungle-theme .sidebar{background:linear-gradient(#102b22dd,#091e19f7),url('../assets/jungle-background.png') center/cover;border-color:#86633a}
.jungle-theme .topbar{background:linear-gradient(90deg,#2b1a12ed,#51311deb),url('../assets/wood-grain.svg');border-color:#977345}
.jungle-theme .preview-bar{background:#18392cf5;color:#efdeb3;border-color:#7f6235;gap:9px}
.jungle-theme .preview-bar select{background:#213b2d;color:#fff0ce;border-color:#9c7b43}
.jungle-theme .preview-bar .text-link{color:#edd198}
.jungle-theme .preview-note{color:#cfbf9e}
.jungle-theme main{padding-bottom:35px}
.cub-theme main{max-width:1120px;margin:auto;padding:22px 28px 48px}
.jungle-theme .page-head{padding:20px 25px;background:linear-gradient(100deg,#332014f2,#634024f5,#342116f5),url('../assets/wood-grain.svg');border:1px solid #b58b49;border-radius:18px;box-shadow:inset 0 0 0 3px #ffffff09,0 5px 16px #0004;margin-bottom:22px}
.jungle-theme .page-head h1,.jungle-theme .page-head .eyebrow{color:#ffe3a2;text-shadow:0 2px 2px #0007}
.jungle-theme .page-head .muted{color:#eee0c2}
.jungle-theme .wooden-sign{background:linear-gradient(100deg,#352113e8,#754a26e8 50%,#3a2314ed),url('../assets/wood-grain.svg') center/550px 190px;border:2px solid #c69b51;border-radius:20px 12px 18px 10px;box-shadow:inset 0 0 0 3px #d4a96833,inset 0 2px 12px #e6ad4b30,0 6px 0 #23170fcc,0 13px 25px #0c190a88;color:#fff0c8}
.jungle-theme .wooden-sign h1{color:#ffe3a0;text-shadow:0 3px 1px #251309;font-size:clamp(25px,3vw,39px);line-height:1.5}
.jungle-theme .wooden-sign p,.jungle-theme .wooden-sign>span{color:#fff0ce;font-size:15px;line-height:1.8;margin:6px 0 0}
.jungle-theme .wooden-sign:before,.jungle-theme .wooden-sign:after{background:#24160e;box-shadow:0 1px 0 #e6bc73}
.jungle-theme .panel,.jungle-theme .parchment,.jungle-theme .module-card,.jungle-theme .lesson-card,.jungle-theme .stat{background:linear-gradient(120deg,#fff8e2,#f2deb2);border:1px solid #d1ad69;box-shadow:inset 0 0 0 3px #fffcdf50,0 5px 14px #0003;color:#30271d}
.jungle-theme .panel h2,.jungle-theme .panel h3{color:#3d2918}
.jungle-theme .btn{background:linear-gradient(#0f9967,#00603e 55%,#00482f);border:2px solid #d4c183;box-shadow:inset 0 2px 1px #a5ffb35c,0 3px 0 #163421,0 6px 12px #0003;color:#fffbe8;border-radius:18px;min-height:44px}
.jungle-theme .btn.secondary{background:linear-gradient(#79502e,#482b19);border:1px solid #c9a266;color:#fff0cc;box-shadow:inset 0 1px #e4b37166,0 3px 0 #291b14}
.jungle-theme .btn.danger{background:#f2dbcf;color:#873621;border:1px solid #aa6b50}
.jungle-theme .tag{color:#604321;background:#ecd69f}.jungle-theme .tag.success{color:#075637;background:#d0e7ba}.jungle-theme .tag.danger{background:#f3c6b5;color:#802b1c}
.jungle-theme .note{background:#f6e6bb;color:#65471e;border-color:#ac8849}
.jungle-theme main>.hint,.jungle-theme .system-guidance{color:#eddfbc}
.jungle-theme main>h2{color:#ffe6ae}
.jungle-theme footer{color:#ddc99d;border-color:#64704a}
.jungle-theme .bottom-nav{background:linear-gradient(#604126ee,#352217f7),url('../assets/wood-grain.svg') center/700px 200px;border-top:2px solid #bf9959;box-shadow:0 -3px 0 #211b14,0 -10px 22px #0004}
.jungle-theme .bottom-link{color:#eee3c6}.jungle-theme .bottom-link.active{color:#ffe267;text-shadow:0 0 10px #eabf5555}.jungle-theme .bottom-link.active:before{background:#ffde6d}
.jungle-theme a:focus-visible,.jungle-theme button:focus-visible{outline:3px solid #efb744;outline-offset:4px}
.cub-scene{height:340px;position:relative;isolation:isolate;overflow:hidden;border:2px solid #ac8645;border-radius:26px 26px 18px 18px;background:linear-gradient(0deg,#0e321eee,transparent 45%),url('../assets/jungle-background.png') center 35%/cover;margin-bottom:19px}
.cub-scene:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 50px #071d1588;border-radius:inherit}
.cub-scene>.wooden-sign{position:absolute;top:27px;right:4%;width:49%;padding:18px 20px;text-align:center;z-index:2;transform:rotate(-1deg)}
.scene-cast{position:absolute;bottom:-14px;left:-3%;height:315px;width:58%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 8px 8px #0005)}
.cub-tabs{display:flex;gap:5px;background:#281e13;border:1px solid #a98547;border-radius:16px;padding:6px;margin:0 0 18px;overflow-x:auto}
.cub-tabs>a,.cub-tabs>button{flex:1;display:flex;align-items:center;justify-content:center;padding:12px 10px;border-radius:11px;color:#efdfb5;background:transparent;border:0;white-space:nowrap;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.cub-tabs>.selected{background:linear-gradient(#138e60,#065238);color:#fff7df;box-shadow:inset 0 1px #aadca866}
.story-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:23px}
.story-card{display:flex;gap:18px;align-items:center;min-height:153px;border:2px solid #bd9b59;border-radius:20px;background:linear-gradient(110deg,#fff8e8,#e9d19a);overflow:hidden;padding:0 20px 0 0;color:#332719;box-shadow:0 5px 10px #0003;margin-bottom:13px;text-decoration:none}
.story-list .story-card{margin:0}
.story-card strong{display:block;font-size:20px;line-height:1.7}.story-card small{display:block;font-size:13px;line-height:1.9;color:#675136}
.story-card>.icon{flex:none;margin-left:13px;background:#126344;border:2px solid #d4bb7d;border-radius:50%;padding:5px;color:#fff5d4;width:33px;height:33px}
.story-art{order:3;width:32%;align-self:stretch;min-height:150px;flex:none;background-image:url('../assets/jungle-cast.png'),url('../assets/jungle-background.png');background-repeat:no-repeat;background-size:auto 175%,cover;background-position:58% 23%,center;mask-image:linear-gradient(90deg,#000 82%,transparent)}
.art-akela{background-position:9% 34%,center}.art-bagheera{background-position:90% 30%,center}.art-mowgli{background-position:35% 38%,center}.art-baloo{background-position:62% 4%,center}
.story-card h2{font-size:19px;margin:0 0 8px}.story-card p{font-size:14px;line-height:1.9;margin:0}
.cub-paper{padding:24px 28px;line-height:2;margin-bottom:18px}.cub-paper h2{margin-bottom:15px}.cub-paper blockquote{border-right:4px solid #98682c;padding:15px;background:#b28d3530;font-size:20px;margin:20px 0}
.cub-welcome{max-width:800px;margin:auto;border:2px solid #9c793e;border-radius:28px;overflow:hidden;background:#142e20 url('../assets/jungle-background.png') bottom/cover}
.cub-welcome .cub-scene{height:560px;border:0;margin:0;border-radius:0;background-position:center}
.cub-welcome .wooden-sign{top:26px;right:9%;width:82%;padding:20px}
.cub-welcome .scene-cast{width:100%;left:0;height:380px;bottom:-10px}
.welcome-bottom{position:relative;background:linear-gradient(#173520d9,#10251eea);color:#fff0c6;padding:20px 26px 28px;text-align:center}
.welcome-bottom p{line-height:1.9;margin:0 0 15px}.welcome-bottom .btn{margin-top:12px;font-size:20px}
.welcome-motto{font-weight:bold;font-size:24px}.welcome-motto small{font:14px Georgia;display:block;color:#e2c38a}
.safety-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.safety-shortcuts .module-card{flex-direction:column;justify-content:center;gap:12px;text-align:center;padding:22px 10px}.safety-shortcuts .icon{width:43px;height:43px;color:#0a764f}
.help-choices{display:grid;grid-template-columns:1fr 1fr;gap:13px}.help-choice{font:inherit;background:#fff8e6;border:1px solid #c5ad78;border-radius:17px;min-height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px;gap:15px;color:#333322;cursor:pointer}.help-choice>.icon{width:40px;height:40px;color:#097752}.help-choice[aria-pressed=true]{border:3px solid #0c7353;background:#e3eed0}
.attendance-entry{display:flex;align-items:center;gap:18px;padding:18px 0;border-top:1px solid #cdb981}.attendance-entry .date-tile{position:static;margin:0;flex:none;font-size:29px;min-width:63px;padding:10px}.attendance-entry h3{font-size:17px}.attendance-entry small{color:#7a633f}.attendance-rate{display:flex;gap:24px;align-items:center}.attendance-rate strong{display:grid;place-items:center;border:9px solid #15844b;width:108px;height:108px;border-radius:50%;font-size:29px;flex:none;background:#fff6d9}
.fee-feature{display:flex;gap:25px;align-items:center;margin-bottom:24px}.fee-feature>.icon{width:70px;height:70px;color:#a77713;flex:none}.fee-feature h3{font-size:25px}
.account-identity{display:flex;align-items:center;flex-direction:column;text-align:center;padding:28px;margin-top:-40px;position:relative}.account-identity .avatar{width:95px;height:95px;border-radius:50%;border:4px solid #b4934e}.account-identity h2{margin-top:15px}
.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.account-stats>div{background:#f6e7c1;border:1px solid #c3a467;border-radius:15px;text-align:center;padding:18px 6px}.account-stats strong{display:block;font-size:25px;color:#066947}.account-stats small{font-size:12px}
.account-links{background:#f1dfb5;border:2px solid #b49657;border-radius:20px;padding:6px 20px}.account-link{display:flex;gap:16px;align-items:center;border-bottom:1px solid #c7b07b;padding:18px 0;color:#3e2e1b}.account-link:last-child{border:0}.account-link>.icon{width:29px;height:29px;color:#167455}.account-link strong{display:block;font-size:19px}.account-link small{display:block;font-size:13px;color:#75603d;margin-top:5px}
.cub-details{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.cub-details>div{border-bottom:1px solid #d5bc85;padding-bottom:10px}.cub-details dt{color:#78613c;font-size:13px}.cub-details dd{margin:0;font-weight:bold;overflow-wrap:anywhere}
.rank-detail-emblem{height:110px;display:grid;place-items:center}.rank-detail-emblem .icon{width:90px;height:90px;color:#ab7a12}.rank-steps{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.rank-steps span{background:#dfd6a4;color:#315638;padding:12px;border-radius:10px}
.hobby-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.hobby-tile{background:#f7e9c7;border:2px solid #bc9c5e;padding:20px 12px;border-radius:17px;text-align:center;color:#3d2b18}.hobby-tile h2{font-size:18px;margin:15px 0}.embroidered-badge{clip-path:polygon(50% 0,100% 100%,0 100%);width:110px;height:105px;display:grid;place-items:center;background:linear-gradient(120deg,#ffd96b,#996619);margin:0 auto;padding-top:24px}.embroidered-badge .icon{width:57px;height:57px;color:#0a5940;background:#f5e3a3;border-radius:50%;padding:10px}
.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:20px 0}.memory-card{aspect-ratio:1;border:2px solid #be934e;border-radius:15px;background:linear-gradient(135deg,#6b482b,#362619);font-size:35px;cursor:pointer;box-shadow:0 4px 0 #0003}.memory-card.revealed{background:#f8eac1;border-color:#407950}.memory-card:disabled{opacity:1}.game-status{font-weight:bold;color:#255b36}.quiz-answers{display:grid;gap:13px;margin:25px 0}
.cub-theme .passport-map{padding:35px 20px;background:linear-gradient(#103c2033,#103c20b0),url('../assets/jungle-background.png') center/cover;border:2px solid #b79c57;border-radius:22px}.cub-theme .passport-map:before{border-color:#efc860;border-width:5px}.cub-theme .passport-station{background:linear-gradient(#544231,#332a22);border:2px solid #8d846c;color:#e4ddca}.cub-theme .passport-station.earned{background:linear-gradient(#91602f,#49301c);border:2px solid #d9ab4c;color:#fff1b9}.cub-theme .passport-station h2{color:inherit}
.cub-theme .system-gateway{background:linear-gradient(110deg,#fff4d8,#dac18f);border-color:#a98543}.cub-theme .system-gateway.british{background:#e1dac5}.cub-theme .advanced-badges-bottom{border-top:4px solid #d8aa4b}
.cub-theme .library-banner{min-height:245px;background-image:linear-gradient(90deg,transparent,#13341de8 58%),url('../assets/jungle-cast.png'),url('../assets/jungle-background.png');background-size:cover,auto 115%,cover;background-position:center,left bottom,center}.cub-theme .library-banner>div{max-width:50%;text-shadow:0 2px 2px #0009}.cub-theme .library-banner>.icon{display:none}
.cub-theme .lesson-reading{position:relative}.cub-theme .lesson-reading>.tile-icon{float:left;margin:0 15px 15px 0}.cub-theme .reading p{line-height:2}
.cub-theme .jungle-stage{height:320px;margin:0;border:2px solid #a48041;border-radius:25px;background-image:linear-gradient(0deg,#13321dc9,transparent),url('../assets/jungle-background.png')}
.cub-theme .jungle-stage>.wooden-sign{right:4%;width:47%;top:25px;padding:17px}.cub-theme .jungle-stage>.wooden-sign h1{font-size:29px}.cub-theme .jungle-cast{height:295px;width:58%;left:-3%;bottom:-9px}
.cub-theme .pack-ribbon{right:4%;width:43%;bottom:35px;background:#2c2713bb;color:#fff1c7;border:1px solid #b28e42}
.cub-theme .jungle-profile{margin:-18px 10px 15px;padding:20px;gap:12px}.cub-theme .jungle-profile-info{gap:12px}.cub-theme .jungle-profile h2{font-size:23px}.cub-theme .jungle-profile-info .avatar{width:75px;height:75px;border-radius:50%}
.cub-theme .jungle-passport{margin:0 0 14px;padding:18px 22px}.cub-theme .jungle-scores{margin:0 0 15px;gap:12px}.cub-theme .jungle-scores article{background:#f7e7bf;border:1px solid #d3b264;padding:16px 20px}.cub-theme .jungle-scores strong{color:#0b6a4b;font-size:33px}
.cub-theme .jungle-discovery{grid-template-columns:repeat(3,1fr);gap:11px;margin:15px 0}.cub-theme .adventure-card{min-height:135px;padding:12px;background:linear-gradient(#fff4d6,#e8d2a1);border:1px solid #c5a465;border-radius:17px}.cub-theme .adventure-card .adventure-icon{width:70px;height:70px;margin:0}.cub-theme .adventure-card strong{font-size:16px}.cub-theme .adventure-card small{display:none}
.cub-theme .jungle-council{margin:14px 0;border-radius:16px;padding:18px;background:linear-gradient(100deg,#173b2af2,#372a16f2);color:#f4e4ba;border:1px solid #b69750}.cub-theme .jungle-council h3,.cub-theme .jungle-council p,.cub-theme .jungle-council small,.cub-theme .jungle-council .text-link{color:#f5e7c4}
.cub-theme .jungle-message{margin:15px 0;padding:18px;border-radius:17px}.cub-theme .jungle-message h2{font-size:18px}.cub-theme .jungle-story-link{color:#ffe4a7;background:#53371f;border:1px solid #b18b4b}
.cub-theme.large-text main{font-size:19px}.cub-theme.large-text main p,.cub-theme.large-text main small{font-size:1em!important}
.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(min-width:1100px){.jungle-home{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.jungle-home>.jungle-stage{grid-column:1/-1}.jungle-home>.jungle-profile{grid-column:1/-1}.jungle-home>.jungle-passport{align-self:stretch}.jungle-home>.jungle-scores{align-self:stretch}.jungle-home>.jungle-discovery{grid-column:1/-1}.jungle-home>.jungle-tasks{grid-row:span 2}.jungle-home>.jungle-story-link{grid-column:1/-1}}
@media(max-width:950px){.story-list{grid-template-columns:1fr}.cub-scene>.wooden-sign{width:54%;right:3%}.scene-cast{width:57%;left:-4%}.cub-theme main{padding:18px 18px 90px}}
@media(max-width:700px){
 .cub-theme .topbar{display:none}.cub-theme .preview-bar{padding:7px 10px;gap:7px;justify-content:space-between;min-height:46px}.cub-theme .preview-bar>span,.cub-theme .preview-bar>.text-link{display:none}.cub-theme .preview-bar select{padding:5px 9px;height:32px;font-size:11px;max-width:155px}
 .cub-theme main{padding:12px 12px 95px}.cub-theme footer{display:none}.cub-theme .page-head{padding:17px 18px;margin-bottom:15px}.cub-theme .page-head h1{font-size:24px}.cub-theme .page-head .eyebrow{font-size:11px}.cub-theme .page-head .muted{font-size:12px}
 .cub-scene{height:305px;margin-bottom:13px;border-radius:20px}.cub-scene>.wooden-sign{width:90%;right:5%;top:17px;padding:12px 14px}.cub-scene>.wooden-sign h1{font-size:26px;line-height:1.55;margin:0}.cub-scene>.wooden-sign p{font-size:12px;margin-top:3px}.scene-cast{width:104%;height:218px;left:-2%;bottom:-12px;object-position:bottom}.scene-story .scene-cast{height:215px}
 .cub-tabs{gap:2px;padding:5px;border-radius:13px;margin-bottom:13px}.cub-tabs>a,.cub-tabs>button{font-size:12px;padding:12px 6px}
 .story-card{min-height:132px;padding-right:14px;gap:7px;border-radius:17px;margin-bottom:11px}.story-card strong,.story-card h2{font-size:17px}.story-card small,.story-card p{font-size:12px}.story-card>.icon{width:28px;height:28px;padding:4px;margin-left:0}.story-art{width:29%;min-height:135px;background-size:auto 155%,cover}.story-list{gap:10px}
 .cub-paper{padding:20px 17px;border-radius:18px}.cub-paper h2{font-size:21px}.cub-paper p{font-size:14px}.cub-paper blockquote{font-size:18px}.cub-paper>.note{padding:14px;font-size:12px}
 .cub-welcome .cub-scene{height:470px}.cub-welcome .wooden-sign{width:90%;right:5%;top:22px;padding:18px 15px}.cub-welcome .wooden-sign h1{font-size:31px}.cub-welcome .wooden-sign p{font-size:16px}.cub-welcome .scene-cast{height:315px;width:132%;left:-16%;bottom:-5px}.welcome-bottom{padding:15px 17px 23px}.welcome-bottom>p:not(.welcome-motto){font-size:13px}.welcome-bottom .btn{font-size:16px;padding:13px 10px}
 .safety-shortcuts{gap:7px}.safety-shortcuts .module-card{font-size:14px;border-width:1px;padding:17px 6px}.help-choices{gap:10px}.help-choice{font-size:15px;padding:14px;min-height:150px}
 .attendance-entry{gap:11px;flex-wrap:wrap}.attendance-entry h3{font-size:15px}.attendance-entry .grow{min-width:120px}.attendance-entry .tag{font-size:10px}.attendance-rate{gap:17px}.attendance-rate strong{width:86px;height:86px;font-size:24px;border-width:7px}.attendance-rate p{font-size:12px}
 .account-identity{margin-top:-25px;padding:20px}.account-identity h2{font-size:22px}.account-stats strong{font-size:21px}.account-stats small{font-size:10px}.account-link strong{font-size:17px}.account-link small{font-size:12px}.account-links{padding:3px 15px}
 .cub-details{grid-template-columns:1fr}.hobby-grid{gap:8px}.hobby-tile{padding:14px 6px}.hobby-tile h2{font-size:13px}.hobby-tile .tag{font-size:9px;padding:5px}.embroidered-badge{width:78px;height:78px;padding-top:22px}.embroidered-badge .icon{width:44px;height:44px;padding:8px}
 .memory-board{gap:8px}.memory-card{font-size:29px;border-radius:12px}.cub-theme .passport-station{width:88%;padding:18px 14px;gap:10px}.cub-theme .passport-station h2{font-size:22px}
 .cub-theme .library-banner{min-height:230px;padding:20px 15px;background-size:cover,auto 83%,cover}.cub-theme .library-banner>div{max-width:52%;align-self:flex-start}.cub-theme .library-banner h2{font-size:22px}.cub-theme .library-banner p{font-size:12px}
 .cub-theme .jungle-stage{height:315px;margin:0}.cub-theme .jungle-stage>.wooden-sign{top:15px;right:5%;width:90%;padding:10px 13px}.cub-theme .jungle-stage>.wooden-sign h1{font-size:25px;margin:0}.cub-theme .jungle-stage>.wooden-sign p{font-size:11px;margin:0}.cub-theme .jungle-stage>.wooden-sign>span{font-size:12px}.cub-theme .jungle-cast{height:208px;width:112%;left:-6%;bottom:2px}.cub-theme .pack-ribbon{display:none}
 .cub-theme .jungle-profile{margin:-12px 3px 12px;padding:13px 12px;gap:9px;border-radius:18px}.cub-theme .jungle-profile-info{gap:10px}.cub-theme .jungle-profile-info .avatar{width:57px;height:62px;font-size:19px}.cub-theme .jungle-profile h2{font-size:18px}.cub-theme .jungle-profile p,.cub-theme .jungle-profile .six-name{font-size:11px}.cub-theme .jungle-rank{min-width:86px;padding-right:9px}.cub-theme .jungle-rank b{font-size:12px}.cub-theme .jungle-rank small{font-size:8px}.cub-theme .rank-emblem{width:47px;height:44px;padding-top:11px}.cub-theme .rank-emblem .icon{width:24px;height:24px}
 .cub-theme .jungle-passport{padding:14px 15px;gap:13px;border-radius:17px}.cub-theme .jungle-passport b{font-size:21px}.cub-theme .jungle-passport small{font-size:11px}.cub-theme .passport-mini-map{width:53px;height:53px}.cub-theme .passport-step{font-size:22px}.cub-theme .passport-step small{font-size:8px}
 .cub-theme .jungle-scores article{padding:12px;gap:12px;border-radius:17px}.cub-theme .jungle-scores small{font-size:12px}.cub-theme .jungle-scores strong{font-size:29px}.cub-theme .jungle-scores .score-medal{font-size:31px}.cub-theme .jungle-scores .score-medal .icon{width:32px;height:32px}
 .cub-theme .jungle-discovery{gap:8px}.cub-theme .adventure-card{min-height:106px;padding:9px 5px}.cub-theme .adventure-card .adventure-icon{width:58px;height:58px}.cub-theme .adventure-card strong{font-size:12px}
 .cub-theme .jungle-council{padding:14px;gap:10px}.cub-theme .jungle-council h3{font-size:13px}.cub-theme .jungle-council p,.cub-theme .jungle-council small{font-size:11px}.cub-theme .jungle-council .text-link{font-size:11px}
 .cub-theme .jungle-message{padding:13px}.cub-theme .jungle-message h2{font-size:16px}.cub-theme .jungle-message .mentor-portrait{width:57px;height:62px;flex:none}
 .jungle-theme .bottom-nav{padding-top:8px;padding-bottom:max(9px,env(safe-area-inset-bottom))}.jungle-theme .bottom-link{font-size:10px;padding:4px 0}.jungle-theme .bottom-link .icon{width:25px;height:25px}
}
@media(prefers-reduced-motion:reduce){.jungle-theme *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Layout pass against the supplied screen boards: compact home, labeled library wheel,
   five shortcuts, and a portrait-focused account rather than another repeated hero. */
.cub-illustrated-avatar{background-image:url('../assets/jungle-cast.png'),linear-gradient(#d7e7bc,#9fb87d)!important;background-size:420% auto,cover!important;background-position:34% 35%,center!important;background-repeat:no-repeat}
.library-controls .search-box{margin-bottom:14px}.library-section-tabs{margin-bottom:12px}.library-modes{justify-content:center}
.labeled-wheel{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:16px;justify-items:center}
.labeled-wheel .exploration-wheel{width:300px;height:300px;position:relative;border:5px solid #e6b54c;box-shadow:0 0 0 5px #86622b,0 6px 15px #0004;background:conic-gradient(#d5ad45 0deg 40deg,#8dc859 40deg 80deg,#eeac70 80deg 120deg,#e99791 120deg 160deg,#ac94cf 160deg 200deg,#88c2e9 200deg 240deg,#a2ca84 240deg 280deg,#65bab5 280deg 320deg,#dbca86 320deg)}
.labeled-wheel .exploration-wheel>span{width:67px;height:67px;background:radial-gradient(#ffe5a4,#bb831e);border:3px solid #fff0ae;z-index:2}
.labeled-wheel .exploration-wheel>span>.icon{color:#392915}.wheel-label{position:absolute;width:70px;display:flex;align-items:center;flex-direction:column;pointer-events:none;color:#233428;line-height:1.4;text-align:center}
.wheel-label .icon{height:25px;width:25px;color:#264b31;margin-bottom:4px}.wheel-label small{font-size:12px;white-space:normal}
.labeled-wheel .wheel-selection{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:22px}.wheel-selection h2{margin:0;font-size:20px}
.library-sections{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.library-section{display:flex;align-items:center;text-align:center;flex-direction:column;gap:12px;background:#fff4d5;color:#3b3524;padding:17px 8px;border:1px solid #d3b37a;border-radius:15px;font-size:13px;font-weight:bold}.library-section>.icon{width:34px;height:34px;color:#0b714a}
.compact-library .lesson-card{min-height:190px}.video-evidence{border-top:1px solid #bda36b;margin-top:22px;padding-top:20px}.video-evidence .btn:disabled{opacity:.65;cursor:not-allowed}
.scene-account{height:200px}.scene-account .scene-cast{display:none}.scene-account>.wooden-sign{right:20%;width:60%}
@media(max-width:700px){
 .cub-scene:not(.scene-welcome):not(.scene-account){height:auto;display:flex;flex-direction:column;padding-top:16px}
 .cub-scene:not(.scene-welcome):not(.scene-account)>.wooden-sign{position:relative;top:auto;right:auto;margin:0 5%;width:90%;flex:none}
 .cub-scene:not(.scene-welcome):not(.scene-account)>.scene-cast{position:relative;left:auto;bottom:auto;width:100%;height:210px;margin-top:-4px;object-position:bottom}
 .scene-account{height:175px}.scene-account>.wooden-sign{width:84%;right:8%;padding:10px}
 .cub-theme .account-identity{margin-top:-50px}.cub-theme .account-identity .avatar{width:80px;height:80px}
 .cub-theme .jungle-stage{height:185px}.cub-theme .jungle-stage>.wooden-sign{right:3%;width:47%;top:13px;padding:10px 6px;transform:rotate(-4deg)}.cub-theme .jungle-stage>.wooden-sign p{font-size:9px}.cub-theme .jungle-stage>.wooden-sign h1{font-size:21px;line-height:1.4}.cub-theme .jungle-stage>.wooden-sign>span{font-size:11px}
 .cub-theme .jungle-cast{height:178px;width:84%;left:-13%;bottom:-6px;object-position:bottom}
 .cub-theme .jungle-profile{margin-top:-5px}.cub-theme .jungle-profile-info .avatar{width:51px;height:58px}.cub-theme .jungle-profile h2{font-size:17px}
 .cub-theme .jungle-passport{padding:11px 14px}.cub-theme .jungle-passport b{font-size:20px}
 .cub-theme .jungle-discovery{grid-template-columns:repeat(6,1fr);margin:12px 0}.cub-theme .jungle-discovery>.adventure-card{grid-column:span 2;min-height:91px}.cub-theme .jungle-discovery>.adventure-card:nth-child(n+4){grid-column:span 3;min-height:62px;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:6px}
 .cub-theme .jungle-discovery>.adventure-card:nth-child(n+4) .adventure-icon{width:41px;height:41px}.cub-theme .adventure-card .adventure-icon{width:48px;height:48px}.cub-theme .adventure-card strong{font-size:12px}
 .cub-theme .jungle-council{margin:0;padding:12px}.cub-theme .jungle-council .grow{min-width:0}.cub-theme .jungle-council>svg{width:23px}
 .cub-theme .jungle-tasks{padding:15px}.cub-theme .jungle-tasks .task-row{padding:12px 0}.cub-theme .jungle-tasks .task-row strong{font-size:14px}
 .labeled-wheel{gap:8px;grid-template-columns:24px minmax(0,1fr) 24px;padding:22px 0 10px}
 .labeled-wheel .exploration-wheel{width:245px;height:245px;border-width:3px}.labeled-wheel .exploration-wheel>span{width:51px;height:51px}.labeled-wheel .exploration-wheel>span>.icon{width:30px;height:30px}
 .wheel-label{width:55px}.wheel-label .icon{width:22px;height:22px;margin-bottom:2px}.wheel-label small{font-size:10px}
 .labeled-wheel .btn-icon{width:28px;height:36px;padding:0}.labeled-wheel .wheel-selection{gap:12px;flex-wrap:wrap;margin-top:10px}.wheel-selection h2{font-size:17px}.wheel-selection .btn{font-size:12px}
 .library-controls{padding:14px!important}.library-modes .btn{font-size:11px;padding:10px}
 .library-sections{gap:5px}.library-section{padding:11px 4px;font-size:10px;gap:7px;border-radius:12px}.library-section .icon{width:25px;height:25px}
 .library-other-sections{padding:14px!important}.library-other-sections h2{font-size:17px}
 .compact-library{grid-template-columns:1fr!important}.compact-library .lesson-card{min-height:0;padding:17px 20px;display:block}.compact-library .lesson-card>.icon{float:left;margin:5px 0 0 10px}.compact-library .lesson-card h2{font-size:18px}.compact-library .lesson-card p{font-size:13px}.compact-library .lesson-card small{margin-top:9px}
}
@media(max-width:375px){.labeled-wheel .exploration-wheel{width:218px;height:218px}.wheel-label{width:49px}.wheel-label small{font-size:9px}.wheel-label .icon{width:19px;height:19px}}
.reference-checklist{display:grid;gap:9px}.reference-requirement{display:flex;align-items:center;gap:13px;padding:13px 15px;background:#fff8e7;border:1px solid #d5bc83;border-radius:13px;font-size:15px;line-height:1.8;cursor:pointer}.reference-requirement input{width:23px;height:23px;accent-color:#09854e;flex:none}.reference-requirement>.icon{width:31px;height:31px;color:#078047;flex:none}.reference-requirement .banana{white-space:nowrap;background:#fff;padding:5px 10px;border-radius:11px;font-size:13px}
.draft-progress{display:flex;gap:14px;align-items:center;direction:ltr}.draft-progress progress{appearance:none;flex:1;height:19px;min-width:0;border-radius:50px;overflow:hidden;background:#e4d2a7}.draft-progress progress::-webkit-progress-bar{background:#e4d2a7}.draft-progress progress::-webkit-progress-value{background:linear-gradient(#0fa971,#00794b);border-radius:50px}
.badge-detail-symbol{display:flex;align-items:center;flex-direction:column;margin:-57px auto 16px;position:relative;z-index:2;gap:8px}.badge-detail-symbol .embroidered-badge{width:120px;height:113px;filter:drop-shadow(0 3px 3px #0005)}
.badge-learning-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.badge-learning-steps>div{background:#fff7e2;border:1px solid #d3ba82;border-radius:13px;display:flex;flex-direction:column;align-items:center;padding:16px 9px;text-align:center;font-size:14px;line-height:1.6}.badge-learning-steps .icon{width:35px;height:35px;color:#14834d}.badge-learning-steps strong{margin:8px 0 3px;color:#4a3d2c}
.cub-theme button:disabled{cursor:not-allowed;opacity:.65}.cub-theme textarea:disabled{background:#e9e2cc;color:#615b45}
.achievement-section{scroll-margin-top:15px}.achievement-section .section-head{margin-bottom:15px}.certificate-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.certificate-model{border:3px double #ba8d34;background:#fff6d6;text-align:center;padding:18px 9px;position:relative;color:#513d22}.certificate-model>.icon{width:45px;height:45px;color:#c58f1c;display:block;margin:auto auto 12px}.certificate-model small{display:block;margin-top:9px;color:#876a31}.rank-gallery{display:flex;align-items:center;justify-content:space-around;gap:10px;text-align:center}.rank-gallery>div{flex:1}.rank-gallery .icon{width:51px;height:51px;color:#8b7259}.rank-gallery .current .icon{color:#b77e09}.rank-gallery strong{display:block;font-size:14px}.rank-gallery .tag{font-size:10px}
.fee-highlights{display:grid;grid-template-columns:1fr auto;gap:16px;border-top:1px solid #c7ad75;padding:18px 0}.fee-highlights ul{list-style:none;padding:0;margin:0}.fee-highlights li{display:flex;gap:8px;align-items:center;margin:8px 0}.fee-highlights .icon{color:#168a54;width:20px;height:20px}.fee-expiry{text-align:center;border-right:1px solid #c6b57e;padding:0 17px}.fee-expiry strong{font-size:38px;display:block;color:#0c7050}.fee-expiry small{font-size:12px}
.month-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.month-picker .field{margin:0;flex:1}.month-picker .btn-icon{flex:none}
@media(max-width:700px){
 .reference-requirement{padding:10px 8px;gap:9px;font-size:13px}.reference-requirement>.icon{width:24px;height:24px}.reference-requirement .banana{padding:5px 6px;font-size:11px}.reference-requirement input{width:21px;height:21px}
 .badge-learning-steps{gap:5px}.badge-learning-steps>div{padding:12px 5px;font-size:12px}.badge-learning-steps .icon{width:30px;height:30px}
 .certificate-examples{gap:6px}.certificate-model{font-size:11px;padding:13px 5px}.certificate-model small{font-size:9px}.fee-highlights{font-size:12px;gap:8px}.fee-expiry{padding:0 10px}.fee-expiry strong{font-size:30px}
 .cub-theme .scene-journey .scene-cast{display:none}.cub-theme .scene-journey{padding:13px 0}.cub-theme .scene-journey>.wooden-sign h1{font-size:23px}
}

/* Enhanced Jungle Home - Modern Design */
.cub-theme .jungle-stage{height:350px;margin:0 0 20px;border:2px solid #a48041;border-radius:25px;background-image:linear-gradient(0deg,#13321dc9,transparent),url('../assets/jungle-background.png');position:relative;overflow:hidden}
.cub-theme .wooden-sign-large{position:absolute;right:4%;width:47%;top:25px;padding:20px;background:linear-gradient(100deg,#352113e8,#754a26e8 50%,#3a2314ed),url('../assets/wood-grain.svg');border:2px solid #c69b51;border-radius:20px 12px;box-shadow:inset 0 0 0 3px #d4a96833,0 6px 0 #23170fcc;z-index:2}
.cub-theme .wooden-sign-large .jungle-greeting{font-size:12px;color:#d9c79e;margin:0;text-transform:uppercase;letter-spacing:1px}
.cub-theme .wooden-sign-large h1{font-size:27px;color:#ffe3a0;text-shadow:0 2px 1px #251309;margin:6px 0;line-height:1.4}
.cub-theme .wooden-sign-large .jungle-motto{font-size:13px;color:#e8d5a7;margin:8px 0 0;line-height:1.6}
.cub-theme .wooden-sign-large .jungle-motto [lang=en]{font-size:11px;font-style:italic;opacity:0.85;display:block}

.cub-theme .jungle-profile-card{margin:0 0 20px;padding:0;border-radius:20px;overflow:hidden}
.cub-theme .profile-header{display:flex;gap:18px;align-items:center;padding:22px;background:linear-gradient(110deg,#fff8e8,#e9d19a)}
.cub-theme .profile-header .avatar.xlarge{width:95px;height:95px;border-radius:50%;border:3px solid #b4934e;flex:none}
.cub-theme .profile-info{flex:1}
.cub-theme .profile-info h2{font-size:24px;color:#3d2918;margin:0 0 6px}
.cub-theme .profile-role{font-size:14px;color:#75603d;margin:0 0 10px}
.cub-theme .profile-six{display:inline-flex;align-items:center;gap:6px;background:var(--six-color,#6f653d);color:#fff;padding:6px 12px;border-radius:12px;font-size:13px}
.cub-theme .profile-six .six-badge{background:#ffffff33;padding:4px;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}
.cub-theme .profile-six-none{color:#75603d;font-size:13px}
.cub-theme .profile-stats{display:grid;grid-template-columns:repeat(3,1fr);background:#f2ddb0;border-top:1px solid #d5bb7d;border-bottom:1px solid #d5bb7d}
.cub-theme .stat-item{display:flex;align-items:center;gap:12px;padding:18px;border-right:1px solid #d5bb7d}
.cub-theme .stat-item:last-child{border:0}
.cub-theme .stat-icon{font-size:32px;flex:none}
.cub-theme .stat-content{text-align:right}
.cub-theme .stat-content strong{display:block;font-size:26px;color:#0b6a4b;line-height:1.2}
.cub-theme .stat-content small{font-size:11px;color:#75603d}

.cub-theme .passport-link{display:block;color:inherit;text-decoration:none;padding:18px 20px;background:#f8eac2;transition:background 0.2s}
.cub-theme .passport-link:hover{background:#f0e0b0}
.cub-theme .passport-preview{display:flex;align-items:center;gap:15px}
.cub-theme .passport-icon{background:#126344;color:#fff5d4;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:none}
.cub-theme .passport-text{flex:1}
.cub-theme .passport-text strong{display:block;font-size:16px;color:#3d2918}
.cub-theme .passport-text small{font-size:12px;color:#75603d}
.cub-theme .passport-progress{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:100px}
.cub-theme .progress-bar{width:100px;height:8px;background:#d5bb7d;border-radius:4px;overflow:hidden}
.cub-theme .progress-fill{height:100%;background:#0f9967;border-radius:4px;transition:width 0.3s}
.cub-theme .progress-label{font-size:12px;color:#75603d;font-weight:bold}

.cub-theme .jungle-meeting{margin:0 0 20px;padding:18px 22px;display:flex;gap:18px;align-items:center;border-radius:17px}
.cub-theme .meeting-icon{width:50px;height:50px;color:#0a764f;flex:none}
.cub-theme .meeting-content{flex:1}
.cub-theme .meeting-label{font-size:12px;color:#75603d;margin:0 0 5px;text-transform:uppercase;letter-spacing:0.5px}
.cub-theme .meeting-date{font-size:19px;color:#3d2918;margin:0 0 8px}
.cub-theme .meeting-time{font-size:13px;color:#5a4a30;margin:0;display:flex;align-items:center;gap:6px}
.cub-theme .meeting-time .icon{width:16px;height:16px}

.cub-theme .jungle-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 0 20px}
.cub-theme .action-link{display:block;color:inherit;text-decoration:none;border-radius:20px;overflow:hidden;position:relative;height:180px}
.cub-theme .action-card{height:100%;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:20px}
.cub-theme .action-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0e251ec9,transparent 65%);z-index:1}
.cub-theme .action-card.adventure{background:url('../assets/jungle-background.png') center/cover}
.cub-theme .action-card.library{background:url('../assets/jungle-background.png') center bottom/cover}
.cub-theme .action-content{position:relative;z-index:2;color:#fff}
.cub-theme .action-icon{background:#ffffff25;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;margin-bottom:12px}
.cub-theme .action-content h3{font-size:22px;color:#fff;margin:0 0 5px;text-shadow:0 2px 4px #0009}
.cub-theme .action-content p{font-size:13px;color:#f5f0d8;margin:0;text-shadow:0 1px 2px #0009}

.cub-theme .jungle-tasks .section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.cub-theme .jungle-tasks .section-head h2{margin:0;font-size:20px;display:flex;align-items:center;gap:8px}
.cub-theme .jungle-tasks .section-head h2 .icon{width:24px;height:24px}
.cub-theme .tasks-list{display:flex;flex-direction:column;gap:10px}

.cub-theme .jungle-quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0 0 20px}
.cub-theme .quick-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:15px;color:inherit;text-decoration:none;transition:transform 0.2s,box-shadow 0.2s}
.cub-theme .quick-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0004}
.cub-theme .quick-icon{background:#126344;color:#fff5d4;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none}
.cub-theme .quick-text{flex:1}
.cub-theme .quick-text strong{display:block;font-size:15px;color:#3d2918}
.cub-theme .quick-text small{font-size:11px;color:#75603d}
.cub-theme .quick-card .icon:last-child{width:20px;height:20px;color:#9a8050;margin-right:-4px}

.cub-theme .message-content{flex:1}
.cub-theme .message-label{font-size:12px;color:#75603d;margin:0 0 8px;text-transform:uppercase;letter-spacing:0.5px}
.cub-theme .message-text{font-size:18px;color:#3d2918;margin:0;line-height:1.7}

.cub-theme .story-link{display:block;color:inherit;text-decoration:none;border-radius:18px;overflow:hidden;margin:0 0 20px}
.cub-theme .story-banner{display:flex;align-items:center;gap:18px;padding:20px;background:linear-gradient(110deg,#4a321e,#2d1f13);position:relative;min-height:110px}
.cub-theme .story-banner .story-art{position:absolute;inset:0;width:100%;opacity:0.2}
.cub-theme .story-banner .story-content{position:relative;z-index:2;flex:1;color:#fff}
.cub-theme .story-banner .story-icon{background:#ffffff25;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;margin-bottom:10px}
.cub-theme .story-banner strong{display:block;font-size:19px;color:#ffe9b7;margin-bottom:5px}
.cub-theme .story-banner small{font-size:13px;color:#e8d5a7}
.cub-theme .story-banner>.icon{color:#e8c275;width:28px;height:28px;position:relative;z-index:2}

/* Keep the updated home cards readable within narrow phone screens. */
@media(max-width:700px){
 .cub-theme .profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cub-theme .stat-item{min-width:0;flex-direction:column;gap:6px;padding:12px 6px}
 .cub-theme .stat-content{text-align:center;min-width:0;overflow-wrap:anywhere}
 .cub-theme .jungle-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cub-theme .quick-card{min-width:0;gap:8px;padding:12px}
 .cub-theme .quick-text{min-width:0;overflow-wrap:anywhere}
 .cub-theme .quick-card>.icon{flex-shrink:0}
}
@media(max-width:400px){
 .cub-theme .jungle-quick-grid{grid-template-columns:minmax(0,1fr)}
}