/* 7.9.6.5 — interactive, responsive home matching the approved Adventure Map reference.
 * Does not alter daily assignments, completion, rewards or other page layouts. */
#caa2-root .caa7965-home-shell{grid-template-columns:210px minmax(0,1fr)}
#caa2-root .caa7965-home-shell .caa76-sidebar{gap:8px;padding:15px 10px 14px}
#caa2-root .caa7965-home-shell .caa76-sidebar nav{gap:3px}
#caa2-root .caa7965-home-shell .caa76-sidebar nav button{min-height:43px;padding:8px 10px;font-size:12px}
#caa2-root .caa7965-home-shell .caa76-sidebar .caa76-side-mascot{max-height:94px}
#caa2-root .caa7965-home-shell .caa76-sidebar .caa76-side-mascot img{height:100px}
#caa2-root .caa7965-profile-shortcut{background:#071d4b;border:1px solid #447cb8!important;color:#ddebff;font-size:10px!important;border-radius:11px;padding:8px!important}
#caa2-root .caa7965-header{min-height:164px;padding:10px 15px;gap:clamp(8px,1.2vw,22px);background:linear-gradient(110deg,#c3dcf9c9,#7dbcffb5,#e4e8ff8c),url('kingdom-stage.webp') center 36% /cover no-repeat}
#caa2-root .caa7965-header .caa76-student-hello{min-width:270px;flex:1 1 45%;gap:12px}
#caa2-root .caa7965-header .caa76-profile{width:102px;height:102px}
#caa2-root .caa7965-header .caa76-student-hello h1{font-size:clamp(29px,3vw,43px)}
#caa2-root .caa7965-header .caa76-bubble{max-width:230px;font-size:12px;padding:12px;flex-shrink:1}
#caa2-root .caa7965-header-friends{width:150px;align-self:flex-end;margin-right:12px;flex-shrink:0}
#caa2-root .caa7965-header-friends img{height:140px;width:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 3px 4px #0654b848)}
#caa2-root .caa7965-header .caa76-top-tools{position:absolute;right:15px;top:10px;gap:7px}
#caa2-root .caa7965-header .caa76-top-tools button{height:38px;border-radius:28px;border:2px solid #8ec8ff;background:#052459eb;box-shadow:0 2px 8px #00236468;padding:4px 10px}
#caa2-root .caa7965-home-content{padding:10px 14px 23px;background:linear-gradient(135deg,#dbeeffc7,#e9f4ffed 54%,#c7dafa)}
#caa2-root .caa7965-home-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,26%);align-items:start;gap:13px;max-width:1650px;margin:auto}
#caa2-root .caa7965-home-primary{min-width:0}
#caa2-root .caa7965-adventure{position:relative;isolation:isolate;overflow:hidden;border:3px solid #f4ffff;border-radius:24px;background:#74bbfb;box-shadow:0 12px 21px #174c8555,inset 0 0 0 1px #a8dfff}
#caa2-root .caa7965-adventure-header{height:110px;position:absolute;top:0;left:0;right:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:20px 20px 13px;color:white;background:linear-gradient(180deg,#065baceb 0%,#0662a0ce 68%,#1263af00);text-shadow:0 2px 3px #093c70b7}
#caa2-root .caa7965-map-title{display:flex;align-items:center;gap:12px;min-width:0}
#caa2-root .caa7965-sun{font-size:45px;filter:drop-shadow(0 3px 3px #003b81)}
#caa2-root .caa7965-adventure-header h2{color:white;font-size:clamp(22px,2.6vw,38px);margin:0;line-height:1.1;letter-spacing:-.03em;font-weight:950}
#caa2-root .caa7965-adventure-header p{font-size:clamp(11px,1.15vw,15px);margin:6px 0 0;font-weight:750;color:#fff}
#caa2-root .caa7965-map-count{border-radius:30px;border:2px solid #e4f6ff;background:linear-gradient(140deg,#fff,#e7f2ff);box-shadow:0 3px 9px #064e85aa;color:#0a3075;text-shadow:none;padding:10px 14px;white-space:nowrap;font-size:clamp(11px,1vw,15px);font-weight:950}
#caa2-root .caa7965-map-world{height:clamp(470px,37.5vw,650px);min-height:485px;position:relative;background:url('academy-scenes-v795/map-desktop.webp') center 58%/cover no-repeat}
#caa2-root .caa7965-map-world:after{content:'';inset:0;position:absolute;pointer-events:none;background:linear-gradient(180deg,#1563b01d 0%,transparent 26%,#082a5907 100%);z-index:0}
#caa2-root .caa7965-golden-trail{position:absolute;inset:13% 3% 5%;width:94%;height:82%;z-index:1;overflow:visible;pointer-events:none}
#caa2-root .caa7965-golden-trail path{fill:none;stroke:#fff5bf;stroke-width:6;stroke-linecap:round;stroke-dasharray:11 15;filter:drop-shadow(0px 2px 2px #bb7514)}
#caa2-root .caa7965-landmarks{position:absolute;inset:0;z-index:2}
#caa2-root .caa7965-map-stop{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:19%;min-width:103px;max-width:182px;color:#0d2d64;text-align:center;border:0;background:transparent!important;padding:0;filter:none;cursor:pointer;transition:transform .18s ease,filter .18s ease}
#caa2-root .caa7965-map-stop:nth-child(1){left:6.8%;top:23%}
#caa2-root .caa7965-map-stop:nth-child(2){left:32%;top:24%}
#caa2-root .caa7965-map-stop:nth-child(3){left:65%;top:24%}
#caa2-root .caa7965-map-stop:nth-child(4){left:14.5%;top:62%}
#caa2-root .caa7965-map-stop:nth-child(5){left:44.7%;top:65%}
#caa2-root .caa7965-map-stop:nth-child(6){left:72%;top:60%}
#caa2-root .caa7965-map-stop:nth-child(7){left:12%;top:79%}
#caa2-root .caa7965-map-stop:nth-child(8){left:35%;top:81%}
#caa2-root .caa7965-map-stop .caa7965-stop-art{width:clamp(70px,8.6vw,124px);height:clamp(70px,8.6vw,124px);border-radius:50%;border:3px solid #ffe68e;box-shadow:0 0 0 4px #fff7dc80,0 10px 20px #0a365b75,0 0 25px #ffcd41b0;background:radial-gradient(circle at 35% 20%,#fcfdffec,#e5edffca 65%,#5a9ddc80);display:grid;place-items:center;position:relative;overflow:visible;transition:transform .15s}
#caa2-root .caa7965-map-stop .caa7965-stop-art img{width:95%;height:95%;object-fit:contain;filter:drop-shadow(0 4px 3px #123e7199);border-radius:50%}
#caa2-root .caa7965-stop-num{position:absolute;top:-18px;left:50%;transform:translateX(-50%);z-index:2;width:38px;height:38px;border-radius:50%;background:linear-gradient(#ffe264,#e69d19);border:3px solid #fff5c6;box-shadow:0 4px 8px #6344119d;display:grid;place-items:center;color:white;text-shadow:0 1px 3px #ad6111;font-size:20px;font-weight:950}
#caa2-root .caa7965-stop-caption{position:relative;z-index:1;min-width:115px;width:100%;max-width:180px;margin-top:-6px;border:2px solid #fff;border-radius:19px;background:linear-gradient(130deg,#fffefffa,#e7f2ffef);box-shadow:0 5px 13px #002c6695;padding:9px 4px 6px;display:flex;flex-direction:column;align-items:center;gap:1px;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
#caa2-root .caa7965-stop-caption b{font-size:clamp(12px,1.2vw,16px);color:#092759;font-weight:950;line-height:1.13}
#caa2-root .caa7965-stop-caption small{font-size:clamp(9px,.8vw,11px);font-weight:750;color:#37609b;line-height:1.15}
#caa2-root .caa7965-stop-state{font-size:10px;border-radius:12px;background:#072e73d9;color:#fff;margin-top:3px;padding:2px 8px;font-weight:900}
#caa2-root .caa7965-map-stop.is-now .caa7965-stop-art{box-shadow:0 0 0 6px #ffdf57a6,0 0 29px #ffe961,0 8px 23px #2650a9}
#caa2-root .caa7965-map-stop.is-now .caa7965-stop-state{background:#037ee7}
#caa2-root .caa7965-map-stop.is-done .caa7965-stop-num{background:linear-gradient(#46e8b4,#008f62)}
#caa2-root .caa7965-map-stop.is-done .caa7965-stop-state{background:#068660}
#caa2-root .caa7965-map-stop:disabled{opacity:1;cursor:default}
#caa2-root .caa7965-map-stop.is-upcoming .caa7965-stop-art{filter:saturate(.82)}
#caa2-root .caa7965-map-stop:not(:disabled):hover{transform:translateY(-3px)}
#caa2-root .caa7965-map-stop:not(:disabled):focus-visible{outline:4px solid #fff000;outline-offset:6px;border-radius:15px}
#caa2-root .caa7965-castle{position:absolute;right:5%;bottom:8%;z-index:1;font-size:clamp(45px,6.5vw,90px);filter:drop-shadow(0 6px 6px #22467a93)}
#caa2-root .caa7965-finish{position:absolute;right:6.1%;bottom:4.4%;z-index:3}
#caa2-root .caa7965-finish button{border:3px solid #fff4a5;background:linear-gradient(#ffce17,#e38b03);color:#fff;text-shadow:0 2px 2px #9b6100;box-shadow:0 0 18px #ffdd21;font-weight:950;font-size:16px;padding:6px 15px;border-radius:15px;min-height:44px}
#caa2-root .caa7965-finish button:disabled{opacity:1;background:linear-gradient(#dba851,#a26c22);cursor:default}
#caa2-root .caa7965-map-world[data-stops="6"] .caa7965-map-stop:nth-child(6){left:72%;top:62%}
#caa2-root .caa7965-map-world[data-stops="6"] .caa7965-castle{bottom:20%}
#caa2-root .caa7965-map-world.is-dense{height:auto;min-height:650px}
#caa2-root .caa7965-map-world.is-dense .caa7965-landmarks{position:relative;inset:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px 3px;padding:125px 18px 115px}
#caa2-root .caa7965-map-world.is-dense .caa7965-map-stop{position:relative;left:auto!important;top:auto!important;width:100%;min-width:0;max-width:none}
#caa2-root .caa7965-extras{margin-top:10px;border:2px solid #fff;border-radius:22px;padding:12px 13px 15px;background:linear-gradient(130deg,#f5fafff0,#ecf7ffeb);box-shadow:0 6px 15px #21598b42}
#caa2-root .caa7965-extras header{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:10px}
#caa2-root .caa7965-extras h2{margin:0;color:#0c3072;font-size:20px;font-weight:950}
#caa2-root .caa7965-extras p{font-size:11px;font-weight:650;color:#3565ad;margin:0}
#caa2-root .caa7965-extras header>button{border:1px solid #c3dcff;border-radius:30px;padding:9px 12px;background:#fff;color:#0651a4;font-size:11px;font-weight:900;box-shadow:0 3px 8px #12427a35;white-space:nowrap}
#caa2-root .caa7965-extras-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#caa2-root .caa7965-extras-grid button{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:repeat(2,auto);align-items:center;gap:0 9px;min-height:70px;text-align:left;border-radius:15px;border:1px solid #d9eaff;background:#fff;box-shadow:0 3px 8px #1e4b7d25;padding:7px}
#caa2-root .caa7965-extras-grid button>span{grid-row:1 / span 2;font-size:29px;border-radius:12px;background:linear-gradient(140deg,#deecff,#fff8d9);padding:5px;display:grid;place-items:center}
#caa2-root .caa7965-extras-grid button strong{color:#0a2f70;font-size:11px;line-height:1.25}
#caa2-root .caa7965-extras-grid button small{font-size:9px;color:#4e6e9c}
#caa2-root .caa7965-game-rail{display:flex;flex-direction:column;gap:9px;min-width:0}
#caa2-root .caa7965-game-rail .caa7965-rail-card{min-height:184px;border:3px solid #b2ecff;border-radius:21px;box-shadow:0 6px 17px #0a22586b,inset 0 0 6px #ffffff77;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;text-align:center;overflow:hidden;padding:12px;position:relative;color:white;text-shadow:0 2px 3px #021744f2;isolation:isolate}
#caa2-root .caa7965-game-rail .caa7965-rail-card:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#02163480 0%,#00102b24 42%,#051c53dd 74%,#04184be8 100%)}
#caa2-root .caa7965-rail-card .caa7965-rail-title{font-size:clamp(16px,1.8vw,23px);font-weight:950;color:white;line-height:1.03}
#caa2-root .caa7965-rail-card .caa7965-rail-sub{font-size:11px;font-weight:700;line-height:1.26;margin:auto 0 7px;max-width:240px;align-self:center}
#caa2-root .caa7965-rail-card .caa7965-rail-cta{display:block;border:2px solid #bfefff;border-radius:14px;background:linear-gradient(#2b9bff,#0069dc);box-shadow:0 0 12px #09a8ff97;padding:8px 5px;font-size:14px;font-weight:950;text-shadow:none}
#caa2-root .caa7965-rail-arcade{background:linear-gradient(#00276566,#0c398f22),url('home-reference-v7965/rail-arcade.webp') center 39%/cover no-repeat,#082f83}
#caa2-root .caa7965-game-rail .caa7965-rail-store{background:linear-gradient(#6c2d0075,#411b0061),url('home-reference-v7965/rail-store.webp') center/cover no-repeat,#4d2307;border-color:#ffe0a0}
#caa2-root .caa7965-rail-store .caa7965-rail-cta{background:linear-gradient(#ffe164,#ff9c00);border-color:#fff1a6;color:#5c2700}
#caa2-root .caa7965-game-rail .caa7965-rail-friends{background:linear-gradient(#1c0b5b61,#27007533),url('home-reference-v7965/rail-friends.webp') center 42%/cover no-repeat,#2f087a;border-color:#cfabff}
#caa2-root .caa7965-rail-friends .caa7965-rail-cta{background:linear-gradient(#b86aff,#7532df);border-color:#efd1ff}
#caa2-root .caa7965-game-rail .caa7965-rail-battle{background:linear-gradient(#120a297d,#34001e4d),url('home-reference-v7965/rail-battle.webp') center/cover no-repeat,#200b2c;border-color:#ffdb99}
#caa2-root .caa7965-rail-battle .caa7965-rail-cta{background:linear-gradient(#ee4747,#ac0314);border-color:#ffa1a1}
#caa2-root .caa7965-character-mini{padding:9px 12px;border:1px solid #a0c9fa;border-radius:18px;background:linear-gradient(130deg,#041b52,#1953a3);display:flex;flex-direction:column;gap:7px;color:white;font-size:11px;font-weight:850}
#caa2-root .caa7965-character-progress{height:9px;border:1px solid #9fcdff;background:#0b3470;border-radius:20px;overflow:hidden}
#caa2-root .caa7965-character-progress i{display:block;height:100%;border-radius:20px;background:linear-gradient(#ffef63,#e6ab18)}
#caa2-root .caa7965-character-mini button{background:#0b77df;border-radius:11px;color:white;font-size:11px;padding:8px}
#caa2-root .caa7965-record-footer{margin-top:11px;display:flex;align-items:center;gap:12px;border:1px solid #a9c4f2;background:#fffdf5;border-radius:15px;padding:10px;color:#0b3474;font-size:11px}
#caa2-root .caa7965-record-footer>div{display:flex;flex-direction:column;flex:1;gap:3px}
#caa2-root .caa7965-record-footer>div strong{font-size:13px}
#caa2-root .caa7965-record-footer button{background:#006cdd;border:1px solid #b6ddff;border-radius:11px;color:#fff;font-weight:850;padding:9px}
@media(min-width:1450px){#caa2-root .caa7965-extras-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1180px){#caa2-root .caa7965-home-shell{grid-template-columns:174px minmax(0,1fr)}#caa2-root .caa7965-home-grid{grid-template-columns:minmax(0,1fr) 215px;gap:9px}#caa2-root .caa7965-home-content{padding:9px}#caa2-root .caa7965-header-friends{width:105px}#caa2-root .caa7965-header .caa76-bubble{display:none}#caa2-root .caa7965-rail-card .caa7965-rail-title{font-size:17px}#caa2-root .caa7965-game-rail .caa7965-rail-card{min-height:176px}}
@media(max-width:950px){#caa2-root .caa7965-home-grid{grid-template-columns:1fr}#caa2-root .caa7965-game-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#caa2-root .caa7965-character-mini{grid-column:1/-1}#caa2-root .caa7965-map-world{height:570px}}
@media(max-width:760px){#caa2-root .caa7965-home-shell{grid-template-columns:1fr}#caa2-root .caa7965-header{min-height:118px;padding:10px}#caa2-root .caa7965-header .caa76-student-hello{min-width:0;gap:8px}#caa2-root .caa7965-header .caa76-profile{height:70px;width:70px}#caa2-root .caa7965-header .caa76-student-hello h1{font-size:28px}#caa2-root .caa7965-header .caa76-student-hello p{font-size:10px}#caa2-root .caa7965-header-friends{display:none}#caa2-root .caa7965-header .caa76-top-tools{right:6px;top:6px}#caa2-root .caa7965-header .caa76-top-tools button{font-size:10px;padding:4px}#caa2-root .caa7965-header .caa76-day-meter{min-width:0;max-width:250px}#caa2-root .caa7965-map-world{height:570px;min-height:570px;background-image:url('academy-scenes-v795/map-mobile.webp')}#caa2-root .caa7965-map-stop{width:27%;min-width:0}#caa2-root .caa7965-map-stop:nth-child(1){left:5%;top:23%}#caa2-root .caa7965-map-stop:nth-child(2){left:35%;top:25%}#caa2-root .caa7965-map-stop:nth-child(3){left:68%;top:24%}#caa2-root .caa7965-map-stop:nth-child(4){left:13%;top:54%}#caa2-root .caa7965-map-stop:nth-child(5){left:44%;top:55%}#caa2-root .caa7965-map-stop:nth-child(6){left:70%;top:54%}#caa2-root .caa7965-map-stop .caa7965-stop-art{height:72px;width:72px}#caa2-root .caa7965-stop-caption{min-width:0}#caa2-root .caa7965-map-stop .caa7965-stop-caption b{font-size:11px}#caa2-root .caa7965-stop-caption small{font-size:8px}#caa2-root .caa7965-sun{font-size:26px}#caa2-root .caa7965-adventure-header{padding:14px 10px;min-height:90px;gap:4px}#caa2-root .caa7965-adventure-header h2{font-size:22px}#caa2-root .caa7965-adventure-header p{font-size:10px}#caa2-root .caa7965-map-count{padding:7px;font-size:10px}#caa2-root .caa7965-extras-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#caa2-root .caa7965-golden-trail{display:none}#caa2-root .caa7965-castle{right:15%;bottom:3%}}
@media(max-width:440px){#caa2-root .caa7965-home-content{padding:7px}#caa2-root .caa7965-game-rail{gap:8px}#caa2-root .caa7965-game-rail .caa7965-rail-card{min-height:157px;padding:8px}#caa2-root .caa7965-game-rail .caa7965-rail-card .caa7965-rail-title{font-size:13px}#caa2-root .caa7965-game-rail .caa7965-rail-card .caa7965-rail-sub{font-size:9px}#caa2-root .caa7965-game-rail .caa7965-rail-card .caa7965-rail-cta{font-size:10px;padding:7px 4px}#caa2-root .caa7965-adventure-header h2{font-size:19px}#caa2-root .caa7965-map-count{font-size:9px}#caa2-root .caa7965-map-world{height:530px;min-height:530px}#caa2-root .caa7965-map-stop .caa7965-stop-art{width:59px;height:59px}#caa2-root .caa7965-stop-num{width:28px;height:28px;font-size:15px;top:-11px}#caa2-root .caa7965-stop-state{font-size:8px}#caa2-root .caa7965-finish button{font-size:12px;padding:5px 8px}#caa2-root .caa7965-record-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){#caa2-root .caa7965-map-stop{transition:none}}

#caa2-root .caa7965-extras-grid .caa7965-print-link{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:repeat(2,auto);align-items:center;gap:0 9px;min-height:70px;text-decoration:none;text-align:left;border-radius:15px;border:1px solid #d9eaff;background:#fff;box-shadow:0 3px 8px #1e4b7d25;padding:7px}
#caa2-root .caa7965-extras-grid .caa7965-print-link>span{grid-row:1 / span 2;font-size:29px;border-radius:12px;background:linear-gradient(140deg,#deecff,#fff8d9);padding:5px;display:grid;place-items:center}
#caa2-root .caa7965-extras-grid .caa7965-print-link strong{color:#0a2f70;font-size:11px;line-height:1.25}
#caa2-root .caa7965-extras-grid .caa7965-print-link small{font-size:9px;color:#4e6e9c}
#caa2-root .caa7965-extras-grid .caa7965-print-link:focus-visible{outline:3px solid #fbcf2e;outline-offset:3px}
