/* Hero's Adventure Camp. Presentation only: existing navigation, actions and game rules. */
:root{--camp-ink:#183d42;--camp-muted:#546153;--camp-gold:#e9b94f;--camp-paper:#fff9e8;--camp-teal:#176777}
html{background:#d9eee6;color-scheme:light}
.friendlyUI{color:var(--camp-ink);background:linear-gradient(180deg,#c6e9eeeb 0,#e8f0dce8 55%,#eadabcef 100%),url('/assets/player/camp-landscape.webp') center top/cover fixed;font-family:ui-rounded,'Trebuchet MS',system-ui,sans-serif}
.friendlyUI .appTopbar{background:linear-gradient(180deg,#fffbed,#f5e6bf);border-bottom:3px solid #b78a3e;box-shadow:0 4px 0 #ffffff70,0 8px 22px #36503920;color:var(--camp-ink)}
.friendlyUI .brandButton{color:#194c56}.friendlyUI .brandButton small{color:#66634a}
.friendlyUI .miniShield,.friendlyUI .wordmarkShield{background:linear-gradient(145deg,#348e92,#125766);border:2px solid #e9bc5c;box-shadow:0 3px 0 #745020,inset 0 1px 2px #fff9}
.friendlyUI .miniShield svg,.friendlyUI .wordmarkShield svg{stroke:#fff4cf}
.friendlyUI .userChip{background:#fff8e6;border:2px solid #d6b36d;box-shadow:0 2px 0 #b88b48;color:#214b4e}.friendlyUI #userInitial{background:#236c72;color:#fff8dd}
.friendlyUI .homeIdentity h1,.friendlyUI .viewHeader h1,.friendlyUI .seriesHeader h2,.friendlyUI .cupHeading h2{color:#153f45;text-shadow:0 2px 0 #fff9}
.friendlyUI .homeIdentity>span,.friendlyUI .viewHeader>.eyebrow{color:#476050}
.friendlyUI .viewHeader p,.friendlyUI .seriesHeader span,.friendlyUI .seriesHeader>b,.friendlyUI .verseGalleryPaging>span,.friendlyUI .leaderboardFootnote{color:#4b6257}
.friendlyUI .streakChip{background:#fff8e6d9;border:1px solid #ceb477;border-radius:18px;padding:7px 12px 7px 7px;box-shadow:0 3px 0 #b7b59455}
.friendlyUI .streakChip b{color:#285243}.friendlyUI .streakChip small{color:#5b6753}
.friendlyUI .streakFlame{background:linear-gradient(155deg,#ffe7a0,#edb642);border:1px solid #d39532;box-shadow:0 3px 0 #ad7228,inset 0 2px 0 #fff5c3;color:#62400e}
/* The existing next-verse panel sits within the illustrated camp. */
.friendlyUI .homeHero{isolation:isolate;background:linear-gradient(0deg,#183d35aa,transparent 48%),url('/assets/player/camp-landscape.webp') 63% center/cover;border:3px solid #efcb80;border-radius:28px;box-shadow:0 5px 0 #956132,0 8px 0 #f9e8b7,0 16px 30px #28534a30;grid-template-columns:1.2fr .85fr}
.friendlyUI .questPanel{align-self:start;padding:18px;margin:22px 0 18px 22px;background:linear-gradient(120deg,#fffbeaFA,#fff2cbeF);border:1px solid #e4c682;border-radius:17px 6px 17px 6px;box-shadow:0 3px 0 #a7793d55,0 5px 16px #15372c20}
.friendlyUI .questLabel{background:#1b6670;border:1px solid #cfab5e;color:#fff3cd;border-radius:6px;font-size:.75rem;letter-spacing:.045em;padding:5px 8px}
.friendlyUI .questPanel h2{color:#184b50;font-size:clamp(1.9rem,4.4vw,3rem);text-shadow:0 2px 0 #fff;line-height:1.12;margin-top:12px}
.friendlyUI .questPanel>p{color:#51614b;font-weight:700}.friendlyUI .questEncouragement{color:#565b40;font-size:.95rem;margin-top:12px}
.friendlyUI .questScene{mask-image:none;overflow:visible;height:230px;align-self:end;z-index:1;background:url('/assets/player/camp-bible.webp') center/contain no-repeat;margin:0 4px 0 -8px;filter:drop-shadow(0 8px 8px #123c3640)}
.friendlyUI .questScene:not(.cardScene)>img{visibility:hidden}
.friendlyUI .questScene.cardScene{background:none;filter:none;padding:16px;margin:0;height:260px;align-self:center}
.friendlyUI .questScene.cardScene img{filter:drop-shadow(0 8px 8px #123c3670)}
.friendlyUI .homeActions{position:relative;z-index:2;padding:4px 20px 24px;gap:12px}
/* Dimensional, framed controls; all labels remain live, accessible text. */
.friendlyUI .learnButton,.friendlyUI .passButton{border:2px solid #ffe5a2;border-radius:15px;min-height:82px;padding:14px 16px;box-shadow:0 5px 0 #835223,0 7px 10px #173c343b,inset 0 2px 0 #fff7;transition:transform .12s,box-shadow .12s}
.friendlyUI .learnButton{background:linear-gradient(180deg,#ffe49a 0,#f4c657 49%,#e7ac37 50%,#f3c45b 100%);color:#47320e}
.friendlyUI .passButton{background:linear-gradient(180deg,#4a9770,#2b7853 49%,#216743 50%,#327e51);color:#fff9dd;border-color:#d2dd92;box-shadow:0 5px 0 #17442b,0 7px 10px #173c343b,inset 0 2px 0 #d9ffc35c}
.friendlyUI .learnButton strong,.friendlyUI .passButton strong{font-size:1.13rem;text-shadow:0 1px 0 #ffffff30}
.friendlyUI .learnButton small,.friendlyUI .passButton small{opacity:1;font-size:.82rem}
.friendlyUI .learnButton>b,.friendlyUI .passButton>b{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;font-size:1.2rem;opacity:.85}
.friendlyUI .learnButton:active,.friendlyUI .passButton:active{transform:translateY(3px);box-shadow:0 2px 0 #765328,inset 0 2px 5px #183d4230}
.friendlyUI .statCard,.friendlyUI .heroMeter,.friendlyUI .verseCard,.friendlyUI .profileCard,.friendlyUI .modalCard,.friendlyUI .loginPanel,.friendlyUI .trainingChoice,.friendlyUI .cupCourse,.friendlyUI .cupPast,.friendlyUI .leaderRow,.friendlyUI .podiumCard,.friendlyUI .emptyState,.friendlyUI .loadingCard,.friendlyUI .leaderboardPicker{background:linear-gradient(115deg,#fffdf2,#fff6df);border:2px solid #d4b478;box-shadow:inset 0 0 0 3px #fffdf3,0 4px 0 #b99a5a66,0 7px 15px #31553e12;color:#234b4e}
.friendlyUI .statCard{border-radius:19px 7px 19px 7px}.friendlyUI .statCard b{color:#1c7377;text-shadow:0 2px 0 #fff}.friendlyUI .statCard span{color:#264b42}.friendlyUI .statCard small{color:#5d6550}
.friendlyUI .cupHomeLink{border:2px solid #edc67a;border-radius:14px;background:linear-gradient(180deg,#a84b38,#813423);box-shadow:0 4px 0 #643c25,inset 0 2px 0 #ffffff35;color:#fff7d9}.friendlyUI .cupHomeLink small{color:#fff0cf}
.friendlyUI .heroMeter{position:relative;overflow:hidden;padding-right:100px;min-height:160px}
.friendlyUI .heroMeter:before{display:block;content:'';position:absolute;right:-12px;top:12px;width:122px;height:128px;background:url('/assets/player/camp-chest.webp') center/contain no-repeat;pointer-events:none}
.friendlyUI .heroMeterTop strong{color:#215d5e}.friendlyUI .heroMeterTop>b{color:#976718}.friendlyUI .heroMeter p{color:#5e634d}
.friendlyUI .heroMeter button{background:linear-gradient(#fff3ce,#f2d994);color:#4d421f;border:1px solid #c7a251;box-shadow:0 3px 0 #bea064}
.cardProgress,.cardProgress::-webkit-progress-bar{background:#e3d4ad}.cardProgress::-webkit-progress-value{background:linear-gradient(90deg,#237b75,#66ab6b)}.cardProgress::-moz-progress-bar{background:#31877a}
.friendlyUI .bottomNav{height:78px;border:2px solid #c59b55;border-radius:23px;background:linear-gradient(#fffae8,#ebd7a5);box-shadow:0 4px 0 #80613c,0 9px 25px #193c3840,inset 0 2px 0 #fff}
.friendlyUI .bottomNav button{color:#4e5d47;border-radius:15px;transition:background .12s}
.friendlyUI .bottomNav button.active{color:#fff4d3;background:linear-gradient(#31818a,#145965);border:1px solid #e2be6c;box-shadow:0 3px 0 #0b424c,inset 0 1px 0 #ffffff50}
.friendlyUI .bottomNav button.active svg{color:#ffdb81}.friendlyUI .bottomNav span{font-size:.85rem}
.friendlyUI .segmentTabs{background:#d6dfc8;box-shadow:inset 0 0 0 1px #a1ae85}.friendlyUI .segmentTabs button{color:#3b594d}.friendlyUI .segmentTabs button.active{background:linear-gradient(#36838a,#155963);color:#fff5d9;box-shadow:0 3px 0 #163f44}
.friendlyUI .verseCard.featured{border-color:#cba058;box-shadow:0 4px 0 #ac855b55}.friendlyUI .verseCard h2{color:#1c575e}
.friendlyUI .collectionHero{position:relative;isolation:isolate;overflow:hidden;padding-right:155px;background:linear-gradient(90deg,#174f51f5,#184f4ee8),url('/assets/player/camp-landscape.webp') center/cover;border:2px solid #deb15d;box-shadow:0 4px 0 #aa7635}
.friendlyUI .collectionHero:before{display:block;content:'';position:absolute;right:0;top:12px;width:165px;height:190px;background:url('/assets/player/camp-chest.webp') center/contain no-repeat;pointer-events:none;z-index:-1}
.friendlyUI .collectionHero h2{color:#fff1c6}.friendlyUI .collectionHero p{color:#f0e6c7}.friendlyUI .collectionHero>span{color:#f4cb73}
.friendlyUI .collectionHero>button,.friendlyUI .confirmActions .confirm,.friendlyUI .drawReveal button{background:linear-gradient(#ffe39a,#e9b344);color:#47300f;border:1px solid #ffe5a6;box-shadow:0 4px 0 #8a5d26}
.friendlyUI .cardTile{background:linear-gradient(#246b70,#14434b);border:2px solid #cda65e;box-shadow:0 4px 0 #8b6a3c,0 8px 16px #31553e20;border-radius:12px}
.friendlyUI .cardTile>span:not(.ownedTag):not(.earnTag){color:#ffe4a0}
.friendlyUI .cupHero{background:linear-gradient(90deg,#80321eef,#883820b5),url('/assets/player/camp-landscape.webp') center/cover;border:2px solid #e6ba65;box-shadow:0 4px 0 #975f2f}
.friendlyUI .cupProgress,.friendlyUI .chompCup>p.muted{color:#53634f}.friendlyUI .cupProgress>b,.friendlyUI .cupProgress strong{color:#285f57}
.friendlyUI .modalOverlay{background:#113f41bd;backdrop-filter:blur(5px)}
.friendlyUI .modalCard{border-radius:24px 9px 24px 9px}.friendlyUI .modalCard h1{color:#1c5056}
.friendlyUI .finalChoices button{background:linear-gradient(#fff8df,#f4dda6);border:2px solid #d3ad64;box-shadow:0 4px 0 #bc9450;color:#5b421b}
.friendlyUI .finalChoices .chompChoice{background:linear-gradient(#e9f4d5,#c7e3aa);border-color:#82a864;color:#285937;box-shadow:0 4px 0 #709350}
.friendlyUI .finalChoices .voiceChoice{background:linear-gradient(#f0e7fa,#decbed);border-color:#b29bc3;color:#674274;box-shadow:0 4px 0 #9d80b1}
.friendlyUI .finalChoices small{color:#4c573e}
.friendlyUI .gameOverlay:has(.trainingHub),.friendlyUI .gameOverlay:has(.trainingHub) .gameShell{background:linear-gradient(#dcefe8eb,#e5e6cfee),url('/assets/player/camp-landscape.webp') center/cover fixed}
.friendlyUI .gameOverlay:has(.trainingHub) .gameGlobalTop{background:#fff5d9;border-bottom:2px solid #c6a461}
.friendlyUI .gameOverlay:has(.trainingHub) .gameGlobalTop span,.friendlyUI .trainingHubHeader h1{color:#1a5257}.friendlyUI .gameOverlay:has(.trainingHub) .gameGlobalTop small,.friendlyUI .trainingHubHeader>span{color:#596344}.friendlyUI .trainingHubHeader p{color:#52614c}
.friendlyUI .trainingPrimary,.friendlyUI .primaryButton{background:linear-gradient(#32858b,#195967);border:1px solid #b4d5b4;color:#fff5d8;box-shadow:0 4px 0 #143e47}
.friendlyUI .trainingModeRow button{background:linear-gradient(#fff4d6,#ebd7a5);border-color:#c3a15f;color:#3d5345}
.friendlyUI .trainingSudden{background:linear-gradient(#984c34,#75331f);border:2px solid #d6ac5d}
.friendlyUI .loginArtwork{background:linear-gradient(0deg,#143c3fdd,transparent 70%),url('/assets/player/camp-landscape.webp') 65% center/cover;border:3px solid #e6bc68;box-shadow:0 5px 0 #97723b}
.friendlyUI .loginArtwork>img{visibility:hidden}.friendlyUI .loginArtwork h1{color:#fff7e1}.friendlyUI .loginArtwork h1 strong{color:#ffe197}.friendlyUI .loginArtwork p{color:#fff0cf}
.friendlyUI .bootScreen{background:linear-gradient(#153e47bb,#153e47dd),url('/assets/player/camp-landscape.webp') center/cover;color:#fff4d2}
.friendlyUI .bootScreen p{color:#fff0c7}
.cardRoom header,.cardRoom footer{background:linear-gradient(#24636a,#16454f);border-color:#cfaa60}.cardRoomControls button,.cardRoom header button{border:1px solid #bd9d5c;box-shadow:inset 0 1px 0 #fff3}
.friendlyUI button:focus-visible,.friendlyUI a:focus-visible,.friendlyUI select:focus-visible,.friendlyUI input:focus-visible{outline:3px solid #087a9b;outline-offset:4px}
@media(min-width:1000px){.friendlyUI .homeHero{grid-row:2/6;grid-template-columns:1.2fr .85fr;min-height:470px;background-position:60% center}.friendlyUI .homeHero .questScene{height:245px}.friendlyUI .homeHero .homeActions{grid-template-columns:1fr;padding:8px 22px 26px}.friendlyUI .heroMeter{margin-top:0}.friendlyUI .questPanel{margin:24px 0 10px 22px}}
@media(max-width:700px){.friendlyUI .homeHero{grid-template-columns:1.25fr .75fr;border-radius:23px;background-position:62% center}.friendlyUI .questPanel{padding:13px;margin:16px 0 14px 14px;border-radius:13px 5px}.friendlyUI .questPanel h2{font-size:1.9rem}.friendlyUI .questPanel>p{font-size:.82rem}.friendlyUI .questLabel{font-size:.68rem;padding:5px 6px}.friendlyUI .questEncouragement{font-size:.85rem}.friendlyUI .questScene{height:180px;margin-left:-12px}.friendlyUI .questScene.cardScene{height:205px;padding:10px}.friendlyUI .homeActions{padding:0 12px 19px;gap:10px;grid-template-columns:1.1fr 1fr}.friendlyUI .learnButton,.friendlyUI .passButton{min-height:84px;padding:12px 10px;gap:4px}.friendlyUI .learnButton strong,.friendlyUI .passButton strong{font-size:1rem}.friendlyUI .learnButton small,.friendlyUI .passButton small{font-size:.78rem}.friendlyUI .learnButton>b,.friendlyUI .passButton>b{display:none}.friendlyUI .homeStats{margin-top:23px}.friendlyUI .statCard{padding:14px}.friendlyUI .heroMeter{padding:20px 90px 20px 18px}.friendlyUI .heroMeter:before{width:100px;right:-8px;top:22px}.friendlyUI .heroMeterTop strong{font-size:1.2rem}.friendlyUI .collectionHero{padding:20px 115px 22px 20px}.friendlyUI .collectionHero:before{width:130px;height:150px;right:-10px;top:35px}.friendlyUI .collectionHero h2{font-size:1.4rem}.friendlyUI .collectionHero p{font-size:.85rem}.friendlyUI .streakChip{padding:4px 7px 4px 4px;gap:6px}.friendlyUI .streakChip small{font-size:.7rem}.friendlyUI .loginArtwork{background-position:65% 40%}.friendlyUI .bottomNav span{font-size:.8rem}}
@media(max-width:370px){.friendlyUI .questPanel{margin-left:10px;padding:10px}.friendlyUI .questPanel h2{font-size:1.6rem}.friendlyUI .homeActions{grid-template-columns:1fr}.friendlyUI .learnButton,.friendlyUI .passButton{min-height:66px}.friendlyUI .learnButton>b,.friendlyUI .passButton>b{display:grid}.friendlyUI .questScene{height:155px}.friendlyUI .streakChip small{display:none}.friendlyUI .collectionHero{padding-right:90px}.friendlyUI .collectionHero:before{width:100px}.friendlyUI .heroMeter{padding-right:75px}.friendlyUI .heroMeter:before{width:90px}}
@media(prefers-reduced-motion:reduce){.friendlyUI button{transition:none}.friendlyUI .learnButton:active,.friendlyUI .passButton:active{transform:none}}
/* Clear legacy left/bottom anchors so illustrations stay in their reserved space. */
.friendlyUI .heroMeter:before,.friendlyUI .collectionHero:before{left:auto;bottom:auto}
.friendlyUI a.cupHomeLink{text-decoration:none}
@media(min-width:1000px){.friendlyUI .homeStatusRow{margin-bottom:0}.friendlyUI .homeStats{grid-template-columns:repeat(2,minmax(0,1fr))}.friendlyUI .homeStats .statCard{display:block;padding:16px;min-height:124px}.friendlyUI .homeStats .statCard b{display:block;margin-bottom:8px}.friendlyUI .homeStats .statCard span,.friendlyUI .homeStats .statCard small{display:block;font-size:.85rem}.friendlyUI .homeHero{min-height:440px}.friendlyUI .heroMeter{padding-right:100px}}
