/* v1.4.6o — child-first Judaics Music Jukebox. Teacher library controls remain intentionally plain. */
.fcc-jm-bar{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.fcc-jm-jukebox{--jm-blue:#3577d4;--jm-purple:#6f43bd;--jm-gold:#ffc52f;--jm-green:#2faa57;box-sizing:border-box;min-height:calc(100vh - 32px);padding:14px 18px 118px;border-radius:34px;background:linear-gradient(180deg,#fff7d5 0,#fffdf4 37%,#f5fbff 100%);box-shadow:inset 0 0 0 3px rgba(246,197,69,.26),0 14px 40px rgba(76,63,22,.11);overflow:hidden;color:#303041;position:relative}
.fcc-jm-jukebox::before{content:"";position:absolute;inset:0 0 auto;height:160px;pointer-events:none;background:radial-gradient(circle at 18% 25%,rgba(255,216,50,.22),transparent 17%),radial-gradient(circle at 82% 16%,rgba(93,176,255,.16),transparent 18%)}

/* Child jukebox header */
.fcc-jm-jukebox-head{position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(230px,.75fr) minmax(390px,1.5fr) auto;align-items:center;gap:18px;min-height:128px;padding:4px 8px 14px}
.fcc-jm-classrooms-btn,.fcc-jm-parent-settings{border:3px solid rgba(255,255,255,.96);background:#fff;border-radius:24px;box-shadow:0 9px 20px rgba(57,42,13,.14);font:900 15px/1.05 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;touch-action:manipulation;color:#553790}
.fcc-jm-classrooms-btn{min-height:66px;padding:10px 16px;color:#195293}.fcc-jm-classrooms-btn span{margin-left:5px}
.fcc-jm-parent-settings{min-width:136px;min-height:82px;display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 14px}.fcc-jm-parent-settings>span{font-size:34px}.fcc-jm-parent-settings b{text-align:left;font-size:15px}
.fcc-jm-jukebox-greeting{display:flex;align-items:center;gap:12px;min-width:0}.fcc-jm-mascot{width:92px;height:92px;border-radius:42% 42% 35% 35%;object-fit:cover;object-position:center 8%;border:4px solid #fff;box-shadow:0 8px 18px rgba(42,92,146,.18)}
.fcc-jm-hi{display:inline-block;padding:9px 16px;background:#fff;border-radius:25px;box-shadow:0 7px 16px rgba(67,79,96,.13);font-size:26px;font-weight:1000;color:#1957aa;white-space:nowrap}.fcc-jm-hear{display:block;margin-top:8px;border:0;background:transparent;color:#1558aa;font:900 14px system-ui;cursor:pointer;padding:6px 4px}
.fcc-jm-jukebox-title{text-align:center;min-width:0}.fcc-jm-jukebox-title>span{display:none}.fcc-jm-jukebox-title h2{margin:0;font:1000 clamp(29px,3.1vw,52px)/.95 system-ui,-apple-system,"Segoe UI",sans-serif;color:#1559b4;letter-spacing:-.04em;text-shadow:0 3px 0 #fff}.fcc-jm-jukebox-title h2 b{color:#f17820}.fcc-jm-jukebox-title p{margin:9px 0 0;color:#71441f;font-size:18px;font-weight:900}

/* Shelves / carousel rows */
.fcc-jm-shelves{display:grid;gap:18px;position:relative;z-index:1}.fcc-jm-shelf{border-radius:28px;padding:14px 15px 17px;background:linear-gradient(135deg,#ddf2ff,#eef9ff);border:2px solid #a8d8ee;box-shadow:0 8px 17px rgba(47,105,133,.09)}
.fcc-jm-shelf:nth-child(2){background:linear-gradient(135deg,#ecffd9,#fbffe6);border-color:#c7df85}.fcc-jm-shelf:nth-child(3){background:linear-gradient(135deg,#fff1d5,#fff8e8);border-color:#f1c470}.fcc-jm-shelf:nth-child(4),.fcc-jm-shelf:nth-child(5){background:linear-gradient(135deg,#f2e9ff,#fff3fb);border-color:#d6bce9}
.fcc-jm-shelf-title{display:flex;align-items:end;justify-content:space-between;margin:-32px 0 9px 10px;pointer-events:none}.fcc-jm-shelf-title>div{display:inline-flex;align-items:baseline;gap:11px;padding:10px 18px;border-radius:18px;background:#3275cf;color:#fff;box-shadow:0 6px 12px rgba(35,94,159,.22)}.fcc-jm-shelf:nth-child(2) .fcc-jm-shelf-title>div{background:#31a957}.fcc-jm-shelf:nth-child(3) .fcc-jm-shelf-title>div{background:#e49a21}.fcc-jm-shelf:nth-child(4) .fcc-jm-shelf-title>div,.fcc-jm-shelf:nth-child(5) .fcc-jm-shelf-title>div{background:#8a55c5}.fcc-jm-shelf-title strong{font-size:22px;font-weight:1000}.fcc-jm-shelf-title span{font-size:11px;font-weight:800;opacity:.88}
.fcc-jm-carousel-wrap{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:10px}.fcc-jm-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 2px 3px;overscroll-behavior-inline:contain}.fcc-jm-carousel::-webkit-scrollbar{display:none}.fcc-jm-carousel-arrow{width:54px;height:54px;border:0;border-radius:50%;background:#3275cf;color:#fff;font:1000 44px/1 system-ui;box-shadow:0 6px 0 #1e5da9,0 8px 15px rgba(27,85,147,.25);cursor:pointer;touch-action:manipulation}.fcc-jm-carousel-arrow:active{transform:translateY(4px);box-shadow:0 2px 0 #1e5da9}

/* Big album tiles */
.fcc-jm-album{position:relative;flex:0 0 clamp(150px,15vw,218px);aspect-ratio:.82;scroll-snap-align:start;border:3px solid rgba(255,255,255,.93);border-radius:22px;padding:11px 10px 12px;overflow:hidden;cursor:pointer;touch-action:manipulation;display:grid;grid-template-rows:minmax(0,1fr) auto auto;align-items:end;text-align:center;color:#fff;box-shadow:0 8px 0 rgba(35,52,84,.2),0 11px 22px rgba(43,57,87,.14);transition:transform .14s ease,filter .14s ease,box-shadow .14s ease;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.fcc-jm-album:active{transform:translateY(5px) scale(.985);box-shadow:0 3px 0 rgba(35,52,84,.2),0 7px 12px rgba(43,57,87,.12)}.fcc-jm-album:hover,.fcc-jm-album:focus-visible{filter:saturate(1.08) brightness(1.04);outline:5px solid rgba(255,255,255,.82);outline-offset:3px}
.fcc-jm-tone-blue{background:linear-gradient(145deg,#49b6f3,#2772d4)}.fcc-jm-tone-green{background:linear-gradient(145deg,#68ca5a,#2a9d4b)}.fcc-jm-tone-gold{background:linear-gradient(145deg,#ffd456,#f1a42c)}.fcc-jm-tone-rose{background:linear-gradient(145deg,#ff8e9f,#e1537e)}.fcc-jm-tone-purple{background:linear-gradient(145deg,#a66ee5,#7042ba)}.fcc-jm-tone-teal{background:linear-gradient(145deg,#55cfd0,#249aaa)}.fcc-jm-tone-amber{background:linear-gradient(145deg,#ffc96a,#ee8840)}.fcc-jm-tone-lime{background:linear-gradient(145deg,#a7d74e,#65af38)}
.fcc-jm-album::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.35) 0 2px,transparent 3px),radial-gradient(circle at 80% 25%,rgba(255,255,255,.18) 0 4px,transparent 5px),linear-gradient(180deg,rgba(255,255,255,.13),transparent 55%);pointer-events:none}
.fcc-jm-album-number{position:absolute;left:10px;top:9px;z-index:2;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#2467bf;border:3px solid #fff;color:#fff;font-size:16px;font-weight:1000;box-shadow:0 3px 8px rgba(26,63,109,.22)}
.fcc-jm-album-art{align-self:center;justify-self:center;position:relative;z-index:1;width:90%;height:74%;display:grid;place-items:center;border-radius:19px;background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 2px rgba(255,255,255,.18)}.fcc-jm-album-art>span{font-size:clamp(44px,5.5vw,84px);font-weight:1000;line-height:1;text-shadow:0 3px 0 rgba(255,255,255,.45),0 7px 12px rgba(38,41,54,.2)}.fcc-jm-album-art i,.fcc-jm-album-art b{position:absolute;font-style:normal;font-size:24px;opacity:0;pointer-events:none}.fcc-jm-album-art i{left:10%;top:13%}.fcc-jm-album-art b{right:10%;top:28%}
.fcc-jm-album>strong{z-index:1;margin-top:5px;font-size:clamp(15px,1.45vw,21px);font-weight:1000;line-height:1.03;text-shadow:0 2px 2px rgba(56,36,38,.28);overflow-wrap:anywhere}.fcc-jm-album-status{z-index:1;margin-top:4px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;opacity:.88}
.fcc-jm-album.is-current{outline:5px solid #fff5a8;outline-offset:2px;box-shadow:0 0 0 6px rgba(255,198,43,.58),0 8px 0 rgba(35,52,84,.18),0 13px 24px rgba(43,57,87,.17)}.fcc-jm-album.is-playing{animation:fccJmAlbumPulse 1.1s ease-in-out infinite alternate}.fcc-jm-album.is-playing .fcc-jm-album-art>span{animation:fccJmDance .55s ease-in-out infinite alternate}.fcc-jm-album.is-playing .fcc-jm-album-art i,.fcc-jm-album.is-playing .fcc-jm-album-art b{opacity:1;animation:fccJmNoteBounce .8s ease-in-out infinite alternate}.fcc-jm-album.is-playing .fcc-jm-album-art b{animation-delay:.22s}
@keyframes fccJmAlbumPulse{from{filter:brightness(1)}to{filter:brightness(1.09) saturate(1.08)}}@keyframes fccJmDance{from{transform:rotate(-4deg) translateY(2px)}to{transform:rotate(4deg) translateY(-5px)}}@keyframes fccJmNoteBounce{from{transform:translateY(6px) rotate(-8deg)}to{transform:translateY(-9px) rotate(8deg)}}

/* Bottom docked player */
.fcc-jm-dock{position:sticky;bottom:8px;z-index:20;margin:18px 0 -102px;padding:12px 16px;min-height:94px;border-radius:30px;background:linear-gradient(135deg,#7041bd,#9a56c9);box-shadow:0 12px 30px rgba(59,34,102,.34),inset 0 0 0 3px rgba(255,255,255,.15);display:grid;grid-template-columns:minmax(250px,1.35fr) 74px 98px 74px 126px 55px;gap:11px;align-items:center;color:#fff}.fcc-jm-dock button{touch-action:manipulation;cursor:pointer}.fcc-jm-dock button:disabled{opacity:.42;cursor:not-allowed}
.fcc-jm-dock-now{min-width:0;display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;align-items:center;background:rgba(255,255,255,.13);border-radius:22px;padding:9px 13px}.fcc-jm-mini-art{width:65px;height:65px;border-radius:18px;background:rgba(255,255,255,.2);display:grid;place-items:center;font-size:33px}.fcc-jm-mini-art.is-playing{animation:fccJmDance .55s ease-in-out infinite alternate}.fcc-jm-dock-now>div{display:grid;gap:1px;min-width:0}.fcc-jm-dock-now small{font-size:10px;font-weight:1000;letter-spacing:.08em}.fcc-jm-dock-now strong{font-size:18px;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fcc-jm-dock-now span{font-size:11px;font-weight:700;opacity:.86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fcc-jm-dock-skip,.fcc-jm-dock-stop{border:0;border-radius:50%;background:#4d2697;color:#fff;width:64px;height:64px;font-size:23px;font-weight:1000;box-shadow:0 5px 0 #3d1d7c}.fcc-jm-dock-stop{width:48px;height:48px;background:#8d2c57;box-shadow:0 4px 0 #69203f;font-size:18px}.fcc-jm-dock-play{border:5px solid rgba(255,255,255,.82);border-radius:50%;width:92px;height:92px;background:linear-gradient(145deg,#ffd84d,#ffae22);color:#fff;font-size:43px;font-weight:1000;box-shadow:0 0 0 6px rgba(255,197,44,.25),0 7px 0 #d88912,0 10px 20px rgba(46,20,76,.27)}
.fcc-jm-playall-star{border:0;clip-path:polygon(50% 0,61% 32%,95% 20%,70% 50%,96% 73%,62% 68%,50% 100%,38% 68%,4% 73%,30% 50%,5% 20%,39% 32%);width:118px;height:94px;background:linear-gradient(135deg,#ff4fab,#ffbe2c,#35c96e,#30a7ff,#864ee6);color:#fff;display:grid;place-items:center;align-content:center;filter:drop-shadow(0 5px 5px rgba(42,21,73,.32));font-family:system-ui}.fcc-jm-playall-star>span{font-size:26px;line-height:1}.fcc-jm-playall-star>b{font-size:15px;text-shadow:0 2px 2px rgba(66,24,84,.35)}.fcc-jm-playall-star.is-on{animation:fccJmStarGlow .75s ease-in-out infinite alternate}@keyframes fccJmStarGlow{to{filter:drop-shadow(0 0 12px #fff) drop-shadow(0 0 20px #ffd84d)}}

/* Teacher side remains clean and administrative. */
.fcc-hs-judaics-music-teacher-card{grid-column:1/-1}.fcc-jm-teacher-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}.fcc-jm-teacher-head>div{display:grid;gap:4px}.fcc-jm-teacher-head strong{font-size:18px}.fcc-jm-teacher-head span{font-size:13px;color:#6b746f}.fcc-jm-switch{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #d8dfdc;border-radius:12px;background:#f8fbf9;font-weight:750}.fcc-jm-switch input{width:20px;height:20px}.fcc-jm-teacher-note{padding:10px 12px;border-radius:12px;background:#eef8f3;color:#315f50;font-size:12px;font-weight:700}.fcc-jm-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0 16px}.fcc-jm-file{position:relative;display:inline-flex;align-items:center;padding:10px 13px;border:1px solid #d8dfdc;border-radius:12px;background:#fff;font-weight:800;cursor:pointer}.fcc-jm-file input{position:absolute;opacity:0;pointer-events:none}.fcc-jm-upload button,.fcc-jm-track button{border:1px solid #d8dfdc;background:#fff;border-radius:12px;padding:10px 13px;font-weight:800;color:#244d40;cursor:pointer}.fcc-jm-upload>span{font-size:13px;color:#426357}.fcc-jm-tracklist{display:grid;gap:7px;max-height:460px;overflow:auto;padding-right:4px}.fcc-jm-track{display:grid;grid-template-columns:38px minmax(0,1fr) 110px 42px 76px;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e2e7e4;border-radius:12px;background:#fff}.fcc-jm-track>span{font-weight:900;color:#8a948f}.fcc-jm-track-title{border:0!important;background:transparent!important;padding:4px!important;text-align:left!important;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:850!important;color:#244d40!important}.fcc-jm-track em{font-style:normal;font-size:11px;color:#7d8581}.fcc-jm-track button{padding:7px 8px}.fcc-jm-track button.danger{color:#923326}.fcc-jm-empty{padding:18px;border:1px dashed #ccd6d1;border-radius:12px;color:#718078}

/* In child Judaics, the Jukebox becomes the page chrome. */
#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-hs-room-head{display:none!important}
#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-hs-child-room-shell{padding:10px!important;background:linear-gradient(180deg,#fff9dd,#f3fbff)!important}
#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-hs-subjectgrid{margin-top:22px}
body:has(#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics:not(.fcc-hs-hidden)) #fccFamilyLock,
body:has(#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics:not(.fcc-hs-hidden)) #fccLocationButton{display:none!important}

@media(max-width:1200px){.fcc-jm-jukebox-head{grid-template-columns:auto minmax(200px,.7fr) minmax(330px,1.3fr) auto}.fcc-jm-album{flex-basis:176px}.fcc-jm-dock{grid-template-columns:minmax(220px,1.2fr) 62px 84px 62px 105px 48px}.fcc-jm-dock-play{width:80px;height:80px;font-size:36px}.fcc-jm-playall-star{width:102px;height:84px}.fcc-jm-shelf-title span{display:none}}
@media(max-width:900px){.fcc-jm-jukebox{padding:10px 10px 114px}.fcc-jm-jukebox-head{grid-template-columns:auto 1fr auto;grid-template-areas:"back title parent" "greet greet greet";gap:10px}.fcc-jm-classrooms-btn{grid-area:back}.fcc-jm-jukebox-title{grid-area:title}.fcc-jm-parent-settings{grid-area:parent}.fcc-jm-jukebox-greeting{grid-area:greet;justify-content:center}.fcc-jm-mascot{width:72px;height:72px}.fcc-jm-hi{font-size:20px}.fcc-jm-carousel-wrap{grid-template-columns:46px minmax(0,1fr) 46px}.fcc-jm-carousel-arrow{width:44px;height:44px;font-size:34px}.fcc-jm-album{flex-basis:155px}.fcc-jm-dock{grid-template-columns:minmax(180px,1fr) 54px 76px 54px 90px;gap:7px}.fcc-jm-dock-stop{display:none}.fcc-jm-dock-play{width:72px;height:72px}.fcc-jm-dock-skip{width:52px;height:52px}.fcc-jm-playall-star{width:88px;height:76px}.fcc-jm-dock-now{grid-template-columns:52px minmax(0,1fr)}.fcc-jm-mini-art{width:48px;height:48px;font-size:25px}}
@media(max-width:650px){.fcc-jm-jukebox-title h2{font-size:27px}.fcc-jm-jukebox-title p{font-size:13px}.fcc-jm-parent-settings{min-width:62px}.fcc-jm-parent-settings b,.fcc-jm-classrooms-btn span{display:none}.fcc-jm-shelf-title{margin:-27px 0 7px 4px}.fcc-jm-shelf-title strong{font-size:17px}.fcc-jm-album{flex-basis:138px}.fcc-jm-dock{grid-template-columns:1fr 48px 66px 48px}.fcc-jm-dock-now{grid-column:1/-1}.fcc-jm-playall-star{position:absolute;right:8px;top:-74px;width:75px;height:66px}.fcc-jm-dock-play{width:64px;height:64px;font-size:30px}}
@media(prefers-reduced-motion:reduce){.fcc-jm-album.is-playing,.fcc-jm-album.is-playing .fcc-jm-album-art>span,.fcc-jm-album.is-playing .fcc-jm-album-art i,.fcc-jm-album.is-playing .fcc-jm-album-art b,.fcc-jm-mini-art.is-playing,.fcc-jm-playall-star.is-on{animation:none!important}.fcc-jm-carousel{scroll-behavior:auto}}

/* v1.4.6p — keep child utility controls in the same fixed location as every other room. */
#fccHomeschoolWorkspace.fcc-hs-reuvain-child .fcc-jm-parent-settings{display:none!important}
#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-jm-jukebox{padding-top:138px!important}
@media(max-width:900px){#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-jm-jukebox{padding-top:116px!important}}
#fccHomeschoolWorkspace.fcc-hs-reuvain-child.fcc-hs-room-judaics .fcc-hs-child-room-welcome{display:none!important}
