/* Local vector scenes: no remote requests, video or animation libraries. */
.cabinet-screen .section-grid{gap:18px}
.cabinet-screen .section-card{--card-ink:#215ba1;--card-glow:#84bdff;display:flex;flex-direction:column;min-height:250px;padding:0 0 23px;overflow:hidden;isolation:isolate;border-radius:23px;background:linear-gradient(145deg,#f9fcff,#dfeeff);border-color:#c9e0fa;box-shadow:0 9px 25px #254e7910;transition:transform .25s,box-shadow .25s,border-color .25s}
.cabinet-screen .section-card::before{display:none}
.cabinet-screen .section-card:nth-child(2){--card-ink:#6946a7;--card-glow:#b8a0ff;background:linear-gradient(145deg,#fcf9ff,#e9dfff);border-color:#e0d1fb}
.cabinet-screen .section-card:nth-child(3){--card-ink:#13756e;--card-glow:#64d8bb;background:linear-gradient(145deg,#f3fff9,#d5f3e8);border-color:#bfe9da}
.cabinet-screen .section-card:nth-child(4){--card-ink:#996127;--card-glow:#ffd18c;background:linear-gradient(145deg,#fffaf1,#ffe9c8);border-color:#f4d8b1}
.cabinet-screen .section-card:nth-child(5){--card-ink:#b33c56;--card-glow:#ff9bb5;background:linear-gradient(145deg,#fff8fa,#fcdce5);border-color:#f5c4d3}
.cabinet-screen .section-card:nth-child(6){--card-ink:#7952b5;--card-glow:#c19bf5;background:linear-gradient(145deg,#fdfaff,#ebddfa);border-color:#dfc9f1}
.cabinet-screen .section-card:nth-child(7){--card-ink:#1b7890;--card-glow:#7edee5;background:linear-gradient(145deg,#f4feff,#d2edf6);border-color:#b7e0ec}
.cabinet-screen .section-card:nth-child(8){--card-ink:#976341;--card-glow:#dfb390;background:linear-gradient(145deg,#fffaf5,#f2e1d1);border-color:#e8d1bc}
.cabinet-screen .section-card:hover{transform:translateY(-6px);box-shadow:0 15px 30px #243d7920;border-color:var(--card-glow)}
.cabinet-screen .section-card:focus-visible{outline:3px solid var(--card-ink);outline-offset:4px}
.cabinet-screen .section-card h3{padding:0 22px;margin:7px 0 7px;color:var(--card-ink);font-size:15px;line-height:1.4}
.cabinet-screen .section-card p{padding:0 22px;margin:0;color:#536a87;font-size:11px;line-height:1.6}
.cabinet-screen .section-card>span{top:15px;right:15px;z-index:2;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#ffffff9c;color:var(--card-ink);font-size:16px}
.card-scene{position:relative;display:grid;place-items:center;height:165px;width:100%;overflow:hidden;flex-shrink:0;background:radial-gradient(ellipse at 50% 43%,#ffffffc9,transparent 66%)}
.card-scene::before{content:'';position:absolute;width:130px;height:130px;border-radius:50%;background:var(--card-glow);opacity:.17;filter:blur(16px);top:15px;left:calc(50% - 65px)}
.card-scene::after{content:'';position:absolute;inset:0;background-image:radial-gradient(var(--card-ink) .6px,transparent .8px);background-size:19px 19px;opacity:.1;mask-image:linear-gradient(transparent,#000,transparent);pointer-events:none}
.card-scene svg{position:relative;z-index:1;display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 5px #1b355815)}
.scene-shadow{fill:#34577a;opacity:.14;filter:blur(3px)}
.scene-spark{stroke:var(--card-ink);stroke-width:2;fill:none;animation:scene-spark 4s ease-in-out infinite}
.book-object{transform-origin:150px 100px;animation:book-breathe 6s ease-in-out infinite}
.turn-page{transform-box:fill-box;transform-origin:left center;animation:page-turn 5s ease-in-out infinite}
.formula-lines text{opacity:0;animation:formula-cycle 12s infinite}
.formula-lines .formula-two{animation-delay:4s}.formula-lines .formula-three{animation-delay:8s}
.formula-float{animation:object-float 5s ease-in-out infinite}
.bubble{animation:bubble-rise 3s ease-in infinite}.bubble.b2{animation-delay:-1s}.bubble.b3{animation-delay:-2s}
.lab-liquid{animation:liquid-glow 4s ease-in-out infinite;transform-origin:130px 138px}
.lab-indicator{animation:thermometer 5s ease-in-out infinite;transform-origin:212px 117px}
.slide-chart{transform-origin:100px 94px;animation:chart-grow 5s ease-in-out infinite}
.slide-dot{animation:scene-spark 3s ease-in-out infinite}
.play-halo{transform-origin:144px 74px;animation:play-pulse 3s ease-out infinite}
.play-button{animation:screen-glow 4s ease-in-out infinite}
.video-progress{transform-origin:64px 123px;animation:video-play 8s linear infinite}
.quiz-sheet{transform-origin:143px 90px;animation:book-breathe 7s ease-in-out infinite}
.question-float{animation:object-float 4s ease-in-out infinite}
.quiz-check{stroke-dasharray:35;stroke-dashoffset:35;animation:check-write 5s ease-in-out infinite}
.controller{transform-origin:150px 95px;animation:controller-tilt 6s ease-in-out infinite}
.game-float{animation:object-float 4.5s ease-in-out infinite}.game-key{animation:screen-glow 2s ease-in-out infinite}
.library-book{animation:book-lift 7s ease-in-out infinite}.book-b{animation-delay:-2s}.book-c{animation-delay:-4s}
@keyframes page-turn{0%,15%,85%,100%{transform:skewY(0deg) scaleX(1);opacity:1}40%{transform:skewY(-12deg) scaleX(.12);opacity:1}60%{transform:skewY(8deg) scaleX(-.92);opacity:.9}74%{transform:skewY(0deg) scaleX(-1);opacity:0}}
@keyframes book-breathe{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(1deg)}}
@keyframes formula-cycle{0%,2%{opacity:0;transform:translateY(5px)}6%,27%{opacity:1;transform:translateY(0)}32%,100%{opacity:0;transform:translateY(-5px)}}
@keyframes object-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes bubble-rise{0%{opacity:0;transform:translateY(5px)}20%{opacity:.9}85%{opacity:.7}100%{transform:translateY(-25px);opacity:0}}
@keyframes liquid-glow{0%,100%{opacity:.8;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.06)}}
@keyframes thermometer{0%,100%{transform:scaleY(.75)}50%{transform:scaleY(1)}}
@keyframes chart-grow{0%,100%{transform:scaleY(.65)}50%{transform:scaleY(1)}}
@keyframes play-pulse{0%{transform:scale(.75);opacity:.65}100%{transform:scale(1.4);opacity:0}}
@keyframes screen-glow{0%,100%{opacity:.85}50%{opacity:1}}
@keyframes video-play{0%{transform:scaleX(.05)}100%{transform:scaleX(1)}}
@keyframes check-write{0%,10%{stroke-dashoffset:35}40%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:35}}
@keyframes controller-tilt{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-5px) rotate(3deg)}}
@keyframes book-lift{0%,70%,100%{transform:translateY(0)}80%,90%{transform:translateY(-7px)}}
@keyframes scene-spark{0%,100%{opacity:.3}50%{opacity:1}}
@media(min-width:1500px){.card-scene{height:175px}.cabinet-screen .section-card{min-height:263px}}
@media(max-width:600px){.cabinet-screen .section-grid{gap:12px}.cabinet-screen .section-card{padding:0 0 17px;min-height:206px;border-radius:18px}.card-scene{height:125px}.cabinet-screen .section-card h3{padding:0 13px;font-size:12px;min-height:34px;margin:3px 0 4px;display:flex;align-items:center}.cabinet-screen .section-card p{padding:0 13px;font-size:10px}.cabinet-screen .section-card>span{width:22px;height:22px;top:10px;right:10px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.card-scene *{animation:none!important}.formula-lines .formula-one{opacity:1}.quiz-check{stroke-dashoffset:0}.cabinet-screen .section-card{transition:none}}
