/* Gelara Pop: lightweight vectors. Motion changes paint only, never geometry. */
.sticker-pop{display:grid!important;place-items:center;width:100%;height:100%;padding:0;border:0!important;background:none!important;filter:drop-shadow(0 5px 2px #2442631b);overflow:visible;transform:rotate(var(--sticker-rotation,0deg)) scaleX(var(--sticker-flip,1))}
.sticker-pop svg{width:100%;height:100%;overflow:visible;display:block}.sticker-pop .pop-art{transform-origin:60px 60px;transform-box:view-box}.sticker-pop.is-hidden{visibility:hidden}.sticker-pop.is-paused *{animation-play-state:paused!important}
.sticker-pop.motion-glow .pop-art{animation:pop-glow 3s ease-in-out infinite}.sticker-pop.motion-launch .pop-moving{animation:pop-launch 3.8s ease-in-out infinite;transform-origin:center}.sticker-pop.motion-wave .pop-hand{animation:pop-wave 2.4s ease-in-out infinite;transform-origin:90px 57px}.sticker-pop.motion-point .pop-art{animation:pop-point 2.2s ease-in-out infinite}.sticker-pop.motion-beat .pop-art{animation:pop-beat 2.6s ease-in-out infinite}.sticker-pop.motion-wobble .pop-art{animation:pop-wobble 3s ease-in-out infinite}.sticker-pop.motion-float .pop-art{animation:pop-float 4.5s ease-in-out infinite}
.sticker-pop.motion-confetti.is-playing .pop-confetti{animation:pop-confetti 1.5s ease-out both}.sticker-pop.motion-confetti.is-playing .pop-art,.sticker-pop.motion-party.is-playing .pop-art{animation:pop-celebrate 1.5s ease-in-out both}
@keyframes pop-glow{0%,100%{opacity:1;transform:scale(.94)}50%{opacity:.78;transform:scale(1)}}
@keyframes pop-launch{0%,100%{transform:translateY(5px)}45%,65%{transform:translateY(-12px)}}
@keyframes pop-wave{0%,65%,100%{transform:rotate(0)}20%{transform:rotate(-25deg)}40%{transform:rotate(14deg)}}
@keyframes pop-point{0%,100%{transform:translateX(-5px)}50%{transform:translateX(9px)}}
@keyframes pop-beat{0%,35%,70%,100%{transform:scale(.90)}15%,50%{transform:scale(1)}}
@keyframes pop-wobble{0%,60%,100%{transform:rotate(0)}20%{transform:rotate(-6deg)}40%{transform:rotate(6deg)}}
@keyframes pop-float{0%,100%{transform:translateY(5px)}50%{transform:translateY(-4px)}}
@keyframes pop-confetti{0%{opacity:0;transform:translateY(16px)}30%{opacity:1}100%{opacity:0;transform:translateY(-10px)}}
@keyframes pop-celebrate{0%{transform:scale(.75)}35%{transform:scale(1)}65%{transform:scale(.94)}100%{transform:scale(1)}}
.b-sticker-choice-art .sticker-pop{width:88px;height:88px;filter:none;transform:none!important}.b-sticker-choice-art .sticker-pop *{animation-play-state:paused!important}.b-sticker-choice:hover .sticker-pop *,.b-sticker-choice:focus-visible .sticker-pop *{animation-play-state:running!important}.sticker-effect-preview:hover .pop-art,.sticker-effect-preview:focus-visible .pop-art{animation:pop-celebrate 1.5s ease-in-out infinite}.sticker-effect-preview:hover .pop-confetti,.sticker-effect-preview:focus-visible .pop-confetti{animation:pop-confetti 1.5s ease-out infinite}
.b-dialog .b-sticker-choice{min-height:155px;align-items:center;background:linear-gradient(150deg,#fff,#f4f8ff)!important;border-color:#dbe4f2!important}.b-sticker-choice-art{height:94px!important;overflow:visible!important}.b-sticker-choice-name{font-weight:650;font-size:13px}.sticker-mode-badge{font-size:11px;background:#eaf1fe;color:#365c93;padding:3px 7px;border-radius:20px;line-height:1.2}.sticker-collection-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sticker-collection-tabs [aria-pressed=true]{background:#234f99!important;color:#fff!important;border-color:#234f99!important}.sticker-collection-tabs small{opacity:.75;margin-left:5px}.sticker-gallery-tip{margin:0!important;font-size:13px!important;line-height:1.4}.b-sticker-results{max-height:43vh!important;grid-template-columns:repeat(5,minmax(0,1fr))}.sticker-settings{padding:12px 14px;background:#f1f6fd;border-radius:12px}.sticker-settings summary,.sticker-screen-list summary{cursor:pointer;font-weight:650}.sticker-quick-actions{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:10px 0}.sticker-quick-actions span{font-size:13px;margin:0 5px}.b-dialog .sticker-quick-actions button{font-size:12px;min-height:32px;padding:5px 8px}.sticker-opacity{display:flex;gap:14px;align-items:center;font-size:14px}.sticker-opacity input{flex:1;max-width:260px}.sticker-opacity output{font-variant-numeric:tabular-nums}.sticker-screen-list>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.b-dialog .sticker-screen-list button{font-size:12px;min-height:30px}
.type-sticker .b-widget-body{overflow:visible!important;position:relative}.type-sticker:has(.sticker-pop) .b-widget-body{padding:8%!important}.type-sticker .gelara-sticker.sticker-word{width:100%;height:100%}.sticker-live-tools{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;gap:4px;z-index:3}.sticker-live-tools button{display:grid;place-items:center;width:30px;height:30px;padding:4px!important;border-radius:50%!important;background:#fff!important;color:#234d81!important;border:1px solid #cadcf0!important;box-shadow:0 2px 8px #23426321}.type-sticker .sticker-live-tools button:not([data-b=sticker-play]){opacity:0}.type-sticker:hover .sticker-live-tools button,.type-sticker:focus-within .sticker-live-tools button{opacity:1}.sticker-hidden-label{position:absolute;inset:0;display:grid;place-items:center;background:#ffffff5c;border:1px dashed #6e8ab2;border-radius:16px;font-size:14px;color:#234d81}
.b-presenting .type-sticker{pointer-events:none!important}.b-presenting .type-sticker .sticker-live-tools,.b-presenting .type-sticker .sticker-live-tools button{pointer-events:auto!important}.b-presenting .type-sticker.sticker-is-hidden .sticker-live-tools{display:none}.type-sticker.sticker-locked{pointer-events:none}.type-sticker.sticker-locked .b-widget-controls{pointer-events:auto}.type-sticker.sticker-locked .b-resize{display:none!important}.screen-thumb-widget .sticker-pop *{animation:none!important}
/* Educational tools retain their own classroom activity surfaces. */
.b-widget.type-cards,.b-widget.type-classify{border:0!important;background:transparent!important;box-shadow:none!important;container-type:size;overflow:visible}.type-cards .b-widget-body,.type-classify .b-widget-body{padding:0!important;display:block!important;width:100%;height:100%;overflow:hidden!important;border-radius:20px!important}
.learn-cards,.learn-sort{width:100%;height:100%;min-width:0;min-height:0;padding:clamp(8px,3cqw,22px);display:flex;flex-direction:column;gap:clamp(5px,2cqh,14px);color:#203d62;background:#f0f6ff;border:2px solid #93b6e6;border-radius:20px;box-sizing:border-box;overflow:auto}
.learn-card-heading,.learn-sort-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;flex:none;font-size:clamp(9px,3cqw,19px);line-height:1.25}.learn-card-heading strong{overflow-wrap:anywhere}.learn-card-heading>span{background:#fff;padding:.3em .65em;border-radius:20px;white-space:nowrap;font-size:.85em;color:#3e5c85}
.learn-card-face{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(4px,2cqh,20px);background:#fff;border:1px solid #b6cdef;border-bottom:5px solid #93b6e6;border-radius:18px;box-shadow:4px 4px 0 #dce8fa;padding:8%;text-align:center;overflow:auto;box-sizing:border-box}.learn-card-face>strong{font-size:clamp(14px,min(10cqw,14cqh),100px);line-height:1.15;overflow-wrap:anywhere;font-weight:800;letter-spacing:-.025em;max-width:100%;margin:auto 0}.learn-card-kicker{font-size:clamp(8px,2.6cqw,15px);letter-spacing:.06em;text-transform:uppercase;color:#4c6b97}.learn-card-dot{width:clamp(5px,2cqw,10px);height:clamp(5px,2cqw,10px);border-radius:50%;background:#f6be43;flex:none}.learn-card-face.is-answer{background:#e5f7ed;border-color:#74b99b;border-bottom-color:#74b99b;box-shadow:4px 4px 0 #c7e9d6}
.learn-card-actions{display:flex;gap:8px;justify-content:center;flex:none}.b-widget .learn-card-actions button{background:#fff!important;border:1px solid #b8cdef!important;color:#234d81!important;border-radius:12px!important;padding:.35em .6em!important;font-size:clamp(13px,4cqw,26px)!important;line-height:1.1;min-width:1.8em}.b-widget .learn-card-actions .learn-reveal{font-size:clamp(9px,2.8cqw,18px)!important;background:#254f96!important;color:white!important;font-weight:650}
.learn-cards.design-bold{background:#2a61aa;color:#fff;border-color:#2a61aa}.learn-cards.design-bold .learn-card-face{background:#fff1c9;border-color:#f4c454;border-bottom-color:#f4c454;box-shadow:4px 4px 0 #143f7e;color:#284675}.learn-cards.design-chalk{background:#153e3a;color:#fff;border-color:#8bd0b0}.learn-cards.design-chalk .learn-card-face{background:#1f504a;border:2px dashed #8bd0b0;box-shadow:none;color:#fff}.learn-cards.design-chalk .learn-card-kicker{color:#a9dfc6}
.learn-sort{background:#fff;border-color:#84c8b4;border-radius:18px}.learn-sort-heading>strong{font-size:clamp(12px,3.3cqw,25px);overflow-wrap:anywhere}.learn-sort-heading>div{display:flex;gap:5px}.b-widget .learn-sort-heading button{font-size:clamp(9px,2cqw,16px)!important;padding:.45em .65em!important;background:#e9f6f1!important;border:1px solid #84c8b4!important;color:#205649!important;border-radius:9px!important}.learn-sort-help{flex:none;margin:0!important;font-size:clamp(8px,1.8cqw,14px)!important;line-height:1.3!important;color:#476576!important;max-height:3em;overflow:auto}
.learn-sort-bins{flex:1;min-height:0;display:grid;grid-template-columns:repeat(var(--bin-count),minmax(0,1fr));gap:clamp(4px,1.5cqw,12px);overflow:auto;padding:2px}.learn-bin{--bin:#369b7f;--bin-soft:#e9f8f1;display:flex;flex-direction:column;background:var(--bin-soft);border:2px dashed var(--bin);border-radius:13px;padding:clamp(4px,1.2cqw,10px);gap:8px;min-width:0;min-height:60px;transition:background .15s;overflow:visible}.learn-bin.bin-1,.learn-bin.bin-4{--bin:#9670ce;--bin-soft:#f3eefd}.learn-bin.bin-2,.learn-bin.bin-5{--bin:#c48a26;--bin-soft:#fff7df}.learn-bin.bin-3{--bin:#397ebb;--bin-soft:#edf5fc}.b-widget button.learn-bin-title{width:100%;background:none!important;border:0!important;color:var(--bin)!important;font-weight:750;font-size:clamp(10px,2.4cqw,19px)!important;padding:3px!important;overflow-wrap:anywhere;opacity:1!important;line-height:1.2;text-align:center}.learn-bin-items{display:flex;flex-direction:column;gap:clamp(3px,1cqh,7px);align-items:stretch;min-width:0}.b-widget .learn-token{display:block;position:relative;background:#fff!important;border:1px solid #d0dbea!important;border-bottom:3px solid #c2d4e5!important;border-radius:9px!important;color:#254365!important;box-shadow:0 2px 3px #2342630c;padding:.5em .7em!important;font-size:clamp(9px,2.2cqw,20px)!important;font-weight:650;line-height:1.15;max-width:100%;overflow-wrap:anywhere;touch-action:none;cursor:grab;user-select:none;min-width:0}.learn-token.selected{outline:3px solid #3570c3!important}.learn-token.is-dragging{z-index:99;cursor:grabbing;pointer-events:none;box-shadow:0 5px 12px #20395b55!important}.learn-token.correct{background:#d5f0de!important;border-color:#2c8f62!important}.learn-token.incorrect{background:#ffe3df!important;border-color:#c95440!important}.learn-bin.is-drop-target,.learn-sort-tray.is-drop-target{background:#d4e8ff!important;outline:3px solid #3f76bb}.learn-sort-tray{flex:none;min-height:0;max-height:35%;overflow:auto;background:#eff4fa;border-radius:12px;padding:clamp(4px,1.5cqw,10px);border:2px solid transparent}.learn-sort-tray>div{display:flex;flex-wrap:wrap;gap:clamp(4px,1cqw,8px)}.b-widget .learn-tray-label{background:none!important;border:0!important;color:#526d8d!important;font-size:clamp(8px,1.8cqw,13px)!important;padding:0 0 6px!important;opacity:1!important}.learn-sort.design-bold{background:#e4f4ef}.learn-sort.design-chalk{background:#153e3a;color:#fff}.learn-sort.design-chalk .learn-sort-help{color:#bbdfd1!important}
.learn-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:10px;padding:15px;background:#edf5ff;border:2px dashed #8dacd7;border-radius:18px;color:#284b7e;text-align:center;box-sizing:border-box}.learn-empty-mark{font-size:clamp(20px,10cqw,70px)}.learn-empty p{font-size:clamp(11px,3cqw,18px)!important;margin:0!important}.learn-empty button{font-size:clamp(10px,3cqw,16px)!important}
.b-dialog [data-b-form=learning]{display:grid;gap:14px}.b-dialog [data-b-form=learning] label{display:grid;gap:5px;min-width:0;font-size:14px;font-weight:600;color:#304d70}.b-dialog [data-b-form=learning] input,.b-dialog [data-b-form=learning] textarea,.b-dialog [data-b-form=learning] select{width:100%;min-width:0;font:inherit;border:1px solid #c8d8e9;border-radius:8px;padding:8px 10px;background:#fff;color:#203d62;box-sizing:border-box}.learning-setup-top,.learning-source{display:grid;grid-template-columns:1fr 1fr;gap:12px}.learning-list-help,.learning-manual p{font-size:14px!important;line-height:1.4;margin:0;color:#526781}.learning-card-rows,.learning-category-rows{display:grid;gap:8px}.learning-card-row{display:grid;grid-template-columns:1fr 1fr 36px;gap:7px}.learning-category-row{display:grid;grid-template-columns:1fr 36px;gap:7px}.learning-manual>button{margin-top:10px}.learning-solutions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;background:#eef6f3;border-radius:12px;max-height:35vh;overflow:auto}.learning-solutions label{grid-template-columns:1fr 1fr;align-items:center!important;font-size:13px!important;overflow-wrap:anywhere}.b-dialog [data-b-form=learning] [role=alert]{color:#a33628;background:#ffebe8;padding:10px;border-radius:8px}.b-dialog [data-b-form=learning] h3{margin:3px 0 0}.learning-list[hidden],.learning-manual[hidden],.learning-list-help[hidden],.sticker-text-language[hidden]{display:none!important}
@media(max-width:760px){.b-sticker-results{grid-template-columns:repeat(3,minmax(0,1fr))!important}.learning-solutions{grid-template-columns:1fr}}
@media(max-width:480px){.b-sticker-results{grid-template-columns:repeat(2,minmax(0,1fr))!important}.learning-setup-top,.learning-source{grid-template-columns:1fr}.learning-card-row{grid-template-columns:1fr 36px}.learning-card-row input:nth-child(2){grid-row:2;grid-column:1}.learning-card-row button{grid-row:1/3;grid-column:2}.sticker-quick-actions{gap:4px}.sticker-collection-tabs button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.sticker-pop *{animation:none!important;transition:none!important}.sticker-pop.is-playing{outline:2px solid #5793d6;outline-offset:-8px;border-radius:50%}.learn-bin{transition:none}}
@media(hover:none){.type-sticker .sticker-live-tools button{opacity:1}}
.screen-thumb-learning-card{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff9e3;border:2px solid #9ebce7;border-radius:6px;width:100%;height:100%;padding:4px;color:#284b7c;gap:6px;box-shadow:3px 3px 0 #c7d9f4}.screen-thumb-learning-card b{font-size:clamp(5px,3cqw,16px)}.screen-thumb-learning-card small{font-size:6px}.screen-thumb-learning-sort{display:flex;gap:4px;width:100%;height:100%;background:#fff;padding:5px;border-radius:6px}.screen-thumb-learning-sort i{flex:1;border:1px dashed #6baf9c;background:#e7f6ef;border-radius:4px;color:#377964;font-size:6px;padding:3px;overflow:hidden;font-style:normal}
.sticker-gallery-stopped .b-sticker-choice .sticker-pop *,.b-sticker-choice .sticker-pop.is-paused *{animation-play-state:paused!important}

.sticker-pop .pop-moving,.sticker-pop .pop-hand{transform-box:view-box}
.sticker-pop.motion-orbit .pop-art{animation:pop-orbit 4.8s ease-in-out infinite}
.sticker-pop.motion-drift .pop-art{animation:pop-drift 5.2s ease-in-out infinite}
@keyframes pop-orbit{0%,100%{transform:rotate(-8deg) translateY(2px)}50%{transform:rotate(8deg) translateY(-3px)}}
@keyframes pop-drift{0%,100%{transform:translate(-6px,2px)}50%{transform:translate(6px,-2px)}}
.sticker-motion-status{font-size:14px!important;line-height:1.4;padding:10px 12px;background:#eef5ff;border-radius:10px;color:#355783}
.sticker-day-options{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.sticker-day-options [aria-pressed=true]{background:#245acb!important;color:#fff!important}

.sticker-pop.motion-happy .emotion-head{animation:emotion-joy 3.4s ease-in-out infinite;transform-origin:60px 60px;transform-box:view-box}
.sticker-pop.motion-calm .emotion-head{animation:emotion-calm 4.6s ease-in-out infinite;transform-origin:60px 60px;transform-box:view-box}
.sticker-pop.motion-excited .emotion-head{animation:emotion-excited 2.8s ease-in-out infinite;transform-origin:60px 60px;transform-box:view-box}
@keyframes emotion-joy{0%,45%,100%{transform:rotate(0)}15%{transform:rotate(-8deg)}30%{transform:rotate(8deg)}}
@keyframes emotion-calm{0%,100%{transform:scale(.94)}50%{transform:scale(1)}}
@keyframes emotion-excited{0%,65%,100%{transform:translateY(0)}20%{transform:translateY(-9px)}40%{transform:translateY(0)}50%{transform:translateY(-4px)}}

/* v168 library: the gallery owns scrolling; filters and settings remain in place. */
#b-dialog.b-dialog-stickers{width:min(1040px,calc(100vw - 24px));max-width:1040px;height:min(790px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:hidden;display:flex;flex-direction:column}
#b-dialog.b-dialog-stickers>header{padding:10px 16px;margin:0;flex:none;border-bottom:1px solid #dce5ef;min-height:44px}
#b-dialog.b-dialog-stickers>header h2{font-size:19px;margin:0}
#b-dialog.b-dialog-stickers>.b-dialog-body{padding:0!important;overflow:hidden!important;min-height:0;flex:1;display:flex}
.b-dialog-stickers .b-sticker-picker{padding:12px 16px 8px;display:flex;flex-direction:column;gap:8px;min-height:0;width:100%;box-sizing:border-box}
.sticker-library-filters{flex:none;display:grid;gap:7px}.sticker-search-row,.sticker-filter-row{display:flex;gap:8px;align-items:center;min-width:0}
.sticker-search-row #sticker-search{flex:1;min-width:0}.sticker-search-row .sticker-text-language{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px}
.b-dialog-stickers input,.b-dialog-stickers select{margin:0;min-height:38px;font-size:14px;padding:7px 10px;border-radius:9px;border:1px solid #d4dfec;background:#fff}
#sticker-category{flex:1;min-width:0}#sticker-mode{max-width:210px}.sticker-filter-row button{font-size:12px!important;white-space:nowrap;padding:7px 10px!important;min-height:38px!important}
.sticker-library-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:#536985;min-height:16px}.sticker-motion-status{margin:0;font-size:12px;line-height:1.3}.sticker-motion-status[hidden]{display:none}
.b-dialog-stickers .b-sticker-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr))!important;gap:8px;align-content:start;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;min-height:0;flex:1;max-height:none!important;padding:4px 5px 8px 2px;scroll-padding:5px;scrollbar-gutter:stable}
.b-dialog-stickers .b-sticker-choice{min-height:124px;padding:8px 5px!important;display:flex;flex-direction:column;justify-content:center;gap:4px;border-radius:12px;min-width:0}
.b-dialog-stickers .b-sticker-choice-art{height:70px!important;width:100%;display:grid;place-items:center;overflow:hidden!important}
.b-dialog-stickers .b-sticker-choice-art .sticker-pop{width:70px;height:70px;filter:none}
.b-dialog-stickers .b-sticker-choice-art .sticker-word{width:100%;height:58px;font-size:13px;box-sizing:border-box}
.b-dialog-stickers .b-sticker-choice-art .sticker-symbol{width:64px;height:64px;box-sizing:border-box}
.b-dialog-stickers .b-sticker-choice-name{font-size:12px;line-height:1.2;max-width:100%;min-height:15px;overflow-wrap:anywhere;text-align:center}
.b-dialog-stickers .sticker-mode-badge{font-size:10px;padding:2px 6px}
.sticker-library-options{flex:none;display:flex;gap:10px;align-items:flex-start;max-height:28vh;overflow:auto;overscroll-behavior:contain;font-size:12px}
.sticker-library-options:empty{display:none}.sticker-library-options>details{flex:1;padding:7px 10px;margin:0;background:#f1f6fd;border-radius:9px}
.b-dialog-stickers .sticker-library-options summary{font-size:13px;min-height:24px;cursor:pointer}.b-dialog-stickers .sticker-opacity{font-size:12px}
@media(max-width:640px){.sticker-search-row .sticker-text-language{font-size:0}.sticker-search-row .sticker-text-language select{max-width:96px;font-size:12px}.sticker-filter-row{flex-wrap:wrap}.sticker-filter-row button{min-width:100%;min-height:30px!important}.b-dialog-stickers .b-sticker-picker{padding:8px}.b-dialog-stickers .b-sticker-results{grid-template-columns:repeat(auto-fill,minmax(94px,1fr))!important;gap:6px}.b-dialog-stickers .b-sticker-choice{min-height:116px}.sticker-library-options{flex-direction:column}.sticker-library-options>details{width:100%;box-sizing:border-box}#sticker-mode{max-width:150px}}
/* New motion targets use nested groups, leaving widget placement untouched. */
.sticker-pop [class^=next-]{transform-box:view-box;transform-origin:60px 60px}
.motion-next-butterfly .next-wing-left{animation:next-wing 1.6s ease-in-out infinite;transform-origin:58px 60px}.motion-next-butterfly .next-wing-right{animation:next-wing 1.6s ease-in-out infinite;transform-origin:62px 60px}
.motion-next-bee .next-bee{animation:next-hover 2.1s ease-in-out infinite}
.motion-next-bulb .next-light{animation:next-light 2.8s ease-in-out infinite}
.motion-next-book .next-page{animation:next-page 3.8s ease-in-out infinite;transform-origin:60px 60px}
.motion-next-pencil .next-writing{animation:next-write 3s ease-in-out infinite}.motion-next-pencil .next-writing-line{stroke-dasharray:80;animation:next-line 3s ease-in-out infinite}
.motion-next-hand .next-hand{animation:next-wave 2.7s ease-in-out infinite;transform-origin:65px 101px}
.motion-next-trophy .next-sparks{animation:next-spark 2.5s ease-in-out infinite}
.motion-next-clap.is-playing .next-clap-left{animation:next-clap-left .32s ease-in-out 5}.motion-next-clap.is-playing .next-clap-right{animation:next-clap-right .32s ease-in-out 5}.motion-next-clap.is-playing .next-sparks{animation:next-spark .32s ease-in-out 5}
.motion-next-fireworks.is-playing .next-fireworks{animation:next-burst 1.6s ease-out both}
.b-sticker-choice.sticker-effect-preview:hover .motion-next-clap .next-clap-left,.b-sticker-choice.sticker-effect-preview:focus-visible .motion-next-clap .next-clap-left{animation:next-clap-left .32s ease-in-out 5}
.b-sticker-choice.sticker-effect-preview:hover .motion-next-clap .next-clap-right,.b-sticker-choice.sticker-effect-preview:focus-visible .motion-next-clap .next-clap-right{animation:next-clap-right .32s ease-in-out 5}
.b-sticker-choice.sticker-effect-preview:hover .motion-next-fireworks .next-fireworks,.b-sticker-choice.sticker-effect-preview:focus-visible .motion-next-fireworks .next-fireworks{animation:next-burst 1.6s ease-out both}
@keyframes next-wing{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.38)}}
@keyframes next-hover{0%,100%{transform:translate(0,4px) rotate(-4deg)}50%{transform:translate(3px,-7px) rotate(4deg)}}
@keyframes next-light{0%,100%{opacity:.55}50%{opacity:1;filter:drop-shadow(0 0 6px #ffd05b)}}
@keyframes next-page{0%,20%,100%{transform:scaleX(1)}60%,75%{transform:scaleX(-.9)}}
@keyframes next-write{0%,100%{transform:translateX(0)}60%,80%{transform:translateX(10px) rotate(3deg)}}
@keyframes next-line{0%,100%{stroke-dashoffset:80}80%{stroke-dashoffset:0}}
@keyframes next-wave{0%,100%{transform:rotate(-10deg)}45%{transform:rotate(12deg)}65%{transform:rotate(-4deg)}}
@keyframes next-spark{0%,100%{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}
@keyframes next-clap-left{0%,100%{translate:-3px 0;rotate:-8deg}50%{translate:10px 0;rotate:8deg}}
@keyframes next-clap-right{0%,100%{translate:3px 0;rotate:8deg}50%{translate:-10px 0;rotate:-8deg}}
@keyframes next-burst{0%{transform:scale(.2);opacity:0}25%{opacity:1}85%{opacity:1}100%{transform:scale(1.08);opacity:0}}
@media(prefers-reduced-motion:reduce){.sticker-pop *{animation:none!important}}

.b-sticker-choice :is(.motion-next-clap,.motion-next-fireworks) .pop-art{animation:none!important}

body:has(.b-dialog-stickers[open]){overflow:hidden}
/* v169: compact thematic sections share the existing single gallery scroll. */
.b-dialog-stickers .b-sticker-results.sticker-results-grouped{display:block}
.sticker-category-section{margin:0 0 12px;padding:0}
.sticker-category-section h3{display:flex;align-items:center;gap:7px;margin:0 0 6px;font-size:13px;line-height:20px;font-weight:700;color:#355272}
.sticker-category-section h3 small{font-size:11px;font-weight:500;color:#708198}
.sticker-section-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
#sticker-order{max-width:190px;min-width:0}
@media(max-width:640px){.sticker-section-grid{grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:6px}#sticker-order{flex:1;max-width:none}#sticker-category{flex-basis:55%}.sticker-filter-row button{min-width:0!important}.sticker-category-section{margin-bottom:10px}}
@media(max-width:640px){.b-dialog-stickers .sticker-filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.b-dialog-stickers .sticker-filter-row select{width:100%;max-width:none}.b-dialog-stickers .sticker-filter-row button{width:100%;min-width:0!important}}
/* v170: computed information and state controls belong to each sticker. */
.sticker-calendar-subheading{grid-column:1/-1;font-size:12px;line-height:18px;color:#61768e;margin:4px 0 0;font-weight:650}
.smart-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0 12px;padding-bottom:10px;border-bottom:1px solid #d8e3ef}.smart-settings>strong{grid-column:1/-1}.smart-settings label{display:flex;flex-direction:column;gap:3px;font-size:12px}.smart-settings input,.smart-settings select{width:100%;box-sizing:border-box;font-size:12px;min-height:32px!important}.smart-settings .smart-detail-check{flex-direction:row;align-items:center;grid-column:1/-1}.smart-detail-check input{width:16px;min-height:16px!important}
.sticker-smart{position:relative;width:100%;height:100%;container-type:size;--smart-ink:#203d62;pointer-events:auto!important;color:var(--smart-ink)!important}
.sticker-smart .smart-face{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1cqh;box-sizing:border-box;width:100%;height:100%;padding:3cqh!important;border:0!important;border-radius:12cqw!important;background:transparent!important;color:#203d62!important;font-family:system-ui,sans-serif;line-height:1.1;overflow:hidden}
.smart-today .smart-face,.smart-date .smart-face{background:linear-gradient(145deg,#fff,#e4f4ff)!important;border:3px solid #203d62!important;box-shadow:0 5px 0 #458fea40;border-radius:9cqw!important;padding:4cqh!important}
.smart-calendar-cap{height:14%;min-height:14%;align-self:stretch;background:#458fea;color:#fff;border-radius:5cqw 5cqw 2cqw 2cqw;display:grid;place-items:center;font-size:clamp(9px,10cqw,26px);font-weight:700;margin-bottom:4cqh}
.smart-calendar-rings{position:absolute;left:20%;right:20%;top:0;height:12%;border-left:4px solid #203d62;border-right:4px solid #203d62;z-index:1;border-radius:4px}
.smart-today-word{font-size:clamp(11px,11cqw,90px);font-weight:850;max-width:100%;overflow-wrap:anywhere;line-height:1.1;text-align:center}.smart-calendar-foot{font-size:clamp(9px,8cqw,38px);margin-top:3cqh;text-align:center}.smart-date-number{font-size:clamp(20px,44cqw,180px);font-weight:900;line-height:1}.smart-date-month{font-size:clamp(11px,12cqw,50px);font-weight:750;text-align:center}
.sticker-smart svg{display:block;width:100%;height:75%;min-height:0;overflow:visible}.smart-state-label{font-size:clamp(10px,11cqw,50px);line-height:1.1;text-align:center}.smart-state-caption{font-size:clamp(8px,5.5cqw,24px);text-align:center;font-weight:500}.smart-change-dot{position:absolute;right:0;bottom:0;background:#fff;border:1px solid #c4d7e7;color:#365572;font-size:clamp(12px,10cqw,22px);width:1.4em;height:1.4em;display:grid;place-items:center;border-radius:50%;opacity:.8}
.smart-grip{display:none}
:is(.b-presenting,.b-has-spotlight) .smart-grip{display:none}
.smart-state-menu{position:absolute;inset:0;background:#fffef8;border:2px solid #203d62;border-radius:14px;box-shadow:0 5px 15px #19334c25;padding:18px 4px 4px;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;z-index:20;overflow:auto;overscroll-behavior:contain}
.b-shell .smart-state-menu button{padding:2px!important;min-height:0!important;display:flex;flex-direction:column;gap:2px;border:1px solid #d9e4ef;border-radius:7px;background:#fff;font-size:clamp(8px,6cqw,14px);overflow-wrap:anywhere}
.smart-state-menu button[aria-pressed=true]{background:#e1efff!important;border-color:#458fea!important}.smart-state-menu svg{width:100%;height:65%;min-height:20px}.b-shell .smart-state-menu .smart-state-close{position:absolute;right:3px;top:0;width:20px;height:18px;border:0;font-size:17px;padding:0!important;background:transparent}
.type-sticker:has(.smart-state-menu){z-index:9500!important;overflow:visible}
.b-dialog-stickers .b-sticker-choice-art .sticker-smart{width:92px;height:70px;filter:none}.b-dialog-stickers .sticker-smart .smart-face{border-width:1px!important;padding:2px!important}.b-dialog-stickers .smart-calendar-cap{font-size:8px}.b-dialog-stickers .smart-today-word{font-size:12px}.b-dialog-stickers .smart-date-number{font-size:30px}.b-dialog-stickers .smart-date-month{font-size:10px}
.live-art-flower-grow.live-animated .live-growing{animation:live-grow 4s ease-in-out infinite;transform-origin:60px 110px;transform-box:view-box}
.live-art-sun-rays.live-animated .live-sun-rays,.smart-weather .live-sun-rays{animation:live-rays 12s linear infinite;transform-origin:60px 60px;transform-box:view-box}
.live-art-rain-cloud.live-animated .live-rain,.smart-weather .live-rain{animation:live-rain 1.5s ease-in infinite;transform-box:view-box}.smart-weather .live-snow{animation:live-snow 3s ease-in-out infinite;transform-box:view-box}
@keyframes live-grow{0%,100%{transform:scaleY(.76)}55%{transform:scaleY(1)}}
@keyframes live-rays{to{transform:rotate(360deg)}}
@keyframes live-rain{0%{opacity:0;transform:translateY(-4px)}30%{opacity:1}100%{opacity:0;transform:translateY(10px)}}
@keyframes live-snow{0%,100%{transform:translate(-2px,0)}50%{transform:translate(3px,8px)}}
@media(prefers-reduced-motion:reduce){.live-animated *, .smart-weather *{animation:none!important}}
/* Give contained smart cards a definite grid track; their text has no intrinsic size. */
.type-sticker:has(.sticker-smart) .b-widget-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.live-art-celebrate-star.is-playing .live-star-burst,.b-sticker-choice:hover .live-art-celebrate-star .live-star-burst,.b-sticker-choice:focus-visible .live-art-celebrate-star .live-star-burst{animation:live-star-burst 1.6s ease-out both;transform-origin:60px 60px;transform-box:view-box}
.live-art-celebrate-star.is-playing .live-star-center{animation:live-star-cheer 1.6s ease-in-out both;transform-origin:60px 60px;transform-box:view-box}
@keyframes live-star-burst{0%{opacity:0;transform:scale(.4)}30%{opacity:1}100%{opacity:.3;transform:scale(1.1)}}
@keyframes live-star-cheer{0%,100%{transform:rotate(0)}25%{transform:rotate(-9deg)}55%{transform:rotate(9deg)}80%{transform:rotate(-3deg)}}
/* v171: non-overlapping calendar rows and a separate, explicit state action. */
.smart-today .smart-face,.smart-date .smart-face{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:24% minmax(0,1fr) 22%;gap:3cqh;align-items:center;justify-items:center;padding:5cqh 4cqw!important;overflow:hidden}
.smart-calendar-rings{display:none}
.smart-calendar-cap{box-sizing:border-box;width:100%;height:100%;min-height:0;margin:0;align-self:stretch;border-radius:3cqw;line-height:1.05;font-size:min(8cqw,17cqh);padding:0 2cqw;text-align:center;white-space:nowrap}
.smart-today-word{font-size:min(10cqw,23cqh);line-height:1.05;min-width:0;overflow-wrap:normal;white-space:nowrap;letter-spacing:-.025em}
.smart-calendar-foot{font-size:min(7cqw,15cqh);line-height:1.1;margin:0;white-space:nowrap}
.smart-date-number{font-size:min(44cqw,40cqh);line-height:1;margin:0}
.smart-date-month{font-size:min(10cqw,17cqh);line-height:1.1;white-space:nowrap}
.smart-date .smart-calendar-cap{font-size:min(8cqw,16cqh)}
.smart-interactive{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:2cqh}
.sticker-smart.smart-interactive .smart-face{display:grid!important;grid-template-rows:minmax(0,1fr) auto auto;gap:2cqh;padding:0!important;min-height:0;min-width:0;border-radius:0!important}
.smart-interactive .smart-face svg{width:100%;height:100%;min-height:0}
.smart-state-label{font-size:min(10cqw,12cqh);line-height:1.1;overflow-wrap:normal;max-width:100%;text-align:center}
.smart-state-caption{font-size:min(6cqw,7cqh);line-height:1.15;text-align:center}
.b-shell .smart-change-action{position:relative;display:flex;justify-content:center;align-items:center;gap:.35em;justify-self:center;box-sizing:border-box;max-width:100%;min-height:28px;padding:4px 8px!important;border:1px solid #9db8d5!important;border-radius:9px!important;background:#f5faff!important;color:#203d62!important;font-size:clamp(10px,min(6cqw,8cqh),16px)!important;font-weight:650;line-height:1.15;cursor:pointer;touch-action:manipulation}
.smart-change-action span{font-size:1.25em;line-height:1}
.type-sticker:not(.sticker-locked) .b-widget-body{cursor:grab;touch-action:none;user-select:none}
.type-sticker.b-dragging .b-widget-body{cursor:grabbing}
:is(.b-presenting,.b-has-spotlight) .type-sticker .b-widget-body{cursor:default;touch-action:pan-x pan-y}
.b-dialog-stickers .smart-calendar-cap{font-size:8px}.b-dialog-stickers .smart-today-word{font-size:12px}.b-dialog-stickers .smart-date-number{font-size:26px}.b-dialog-stickers .smart-date-month{font-size:10px}
.sticker-smart-featured .b-sticker-choice{background:linear-gradient(145deg,#f4f8ff,#edf7ff)!important;border-color:#a5c5ea!important}
.sticker-smart-featured h3{color:#254f96}
/* v172: first-use hint only; the editor toolbar owns later state changes. */
.smart-interactive:not(.smart-needs-choice){grid-template-rows:minmax(0,1fr);gap:0}
.b-shell .smart-needs-choice .smart-change-action{width:28px;height:26px;min-height:26px;padding:2px!important;border-radius:50%!important;font-size:16px!important;opacity:.8}
:is(.b-presenting,.b-has-spotlight) [data-smart-body=state]{cursor:pointer;touch-action:manipulation}
[data-smart-body=state]:focus-visible{outline:2px solid #458fea;outline-offset:3px;border-radius:8px}
.type-sticker:has(.smart-state-menu) .b-widget-body{touch-action:pan-y}
/* Date variants use the same calendar face as the intelligent stickers. */
.b-widget.type-date:is(.variant-today,.variant-live-calendar){background:none!important;border:0!important;box-shadow:none!important}
.type-date:is(.variant-today,.variant-live-calendar) .b-widget-body{padding:0!important;display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:visible!important}
.classroom-calendar-card{width:100%;height:100%;min-width:0;min-height:0}
.type-clock.variant-clock-calendar .b-widget-body{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);padding:4%!important}
.classroom-clock-calendar{width:100%;height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 22% 18%;gap:3cqh;align-items:center;text-align:center;container-type:size;color:#203d62;background:linear-gradient(150deg,#f4faff,#e0f0ff);border-radius:14px;padding:4cqh 3cqw;box-sizing:border-box}
.classroom-clock-time{font-size:min(23cqw,40cqh);line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-weight:850;white-space:nowrap;color:#1d467e}
.classroom-clock-weekday{font-size:min(9cqw,17cqh);line-height:1.1;white-space:nowrap}
.classroom-clock-date{font-size:min(8cqw,15cqh);line-height:1.1;white-space:nowrap}
.type-weather .b-widget-body{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);padding:4%!important;overflow:visible!important;cursor:grab;touch-action:none}
.classroom-weather{width:100%;height:100%;min-height:0;position:relative;display:block!important;container-type:size}
.classroom-weather-face{width:100%;height:100%;min-height:0;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;justify-items:center;align-items:center;gap:2cqh;padding:2cqh 4cqw 5cqh;color:#203d62;outline-offset:0}
.classroom-weather-face svg{height:100%;width:100%;min-height:0;overflow:visible}
.classroom-weather-label{font-size:min(13cqw,15cqh);font-weight:850;line-height:1.1;text-align:center;white-space:nowrap}
.classroom-weather-manual{font-size:min(6cqw,8cqh);line-height:1.15;color:#5a7190}
.classroom-weather-question{font-size:min(8cqw,10cqh);line-height:1.15;text-align:center;max-width:100%}
.weather-assembly .classroom-weather-face{grid-template-rows:auto minmax(0,1fr) auto auto}
.weather-compact .classroom-weather-face{grid-template-columns:32% minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:3cqw;padding:3cqh 2cqw}
.weather-compact .classroom-weather-label{font-size:min(11cqw,40cqh)}
:is(.b-presenting,.b-has-spotlight) .type-weather .b-widget-body{cursor:default;touch-action:pan-y}
.type-weather:has(.smart-state-menu){z-index:9500!important;overflow:visible}
.type-weather:has(.smart-state-menu) .b-widget-body{touch-action:pan-y}
.screen-thumb-widget:is(.type-date,.type-clock,.type-weather) .sticker-smart{width:100%;height:100%}
.screen-thumb-widget .classroom-weather-manual{display:none}
.screen-thumb-widget .classroom-weather *{animation:none!important}
/* State illustrations have one useful label; first-use weather uses the shared hint. */
.sticker-smart.smart-interactive .smart-face{grid-template-rows:minmax(0,1fr) auto}
.sticker-smart.smart-interactive .smart-face:not(:has(.smart-state-label)){grid-template-rows:minmax(0,1fr)}
.classroom-weather-face{grid-template-rows:minmax(0,1fr) auto}
.weather-assembly .classroom-weather-face{grid-template-rows:auto minmax(0,1fr) auto}
.weather-compact .classroom-weather-face{grid-template-rows:minmax(0,1fr)}
.classroom-weather.smart-needs-choice{display:grid!important;grid-template-rows:minmax(0,1fr) 26px;gap:4px}
.classroom-weather.smart-needs-choice .smart-change-action{justify-self:center}

/* Split catalogue adapts to its rail, independently of the window breakpoint. */
#b-dialog.b-dialog-stickers.b-split-panel>.b-dialog-body{display:block;padding:12px!important;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y;scrollbar-gutter:stable}
.b-dialog.b-split-panel .b-sticker-picker{display:block}
.b-dialog.b-split-panel :is(.sticker-search-row,.sticker-filter-row){display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:8px;align-items:end}
.b-dialog.b-split-panel :is(.sticker-search-row,.sticker-filter-row)>*{width:100%;min-width:0;max-width:100%!important;box-sizing:border-box}
.b-dialog.b-split-panel .sticker-text-language{font-size:12px;display:flex;flex-direction:column;align-items:stretch;gap:4px}
.b-dialog.b-split-panel .sticker-text-language select{flex:1;min-width:0;max-width:100%}
.b-dialog.b-split-panel .sticker-library-meta{flex-wrap:wrap;margin:8px 0}
.b-dialog.b-split-panel .b-sticker-choice{max-width:150px;width:100%;box-sizing:border-box}
.b-dialog.b-split-panel .b-sticker-choice-name{white-space:normal;overflow-wrap:anywhere}
.b-dialog.b-split-panel .sticker-library-options{max-height:none;overflow:visible;flex-wrap:wrap;margin-top:12px}

/* Classification 2.0: scoped creation and shared classroom player. */
.cl289-wizard{color:#172b48}.cl289-wizard nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px}.cl289-wizard button,.cl289 button{min-height:48px;border:1px solid #ced9eb;border-radius:12px;padding:10px 16px;font:inherit;cursor:pointer;background:white;color:#213851}.cl289-wizard .primary,.cl289-wizard nav .active,.cl289 button[aria-pressed=true]{background:#1944ed;color:white;border-color:#1944ed}.cl289-wizard nav .complete{background:#edf3ff;color:#1944ed}.cl289-wizard textarea{width:100%;min-height:110px;padding:14px;border:1px solid #c7d4ea;border-radius:14px;font:inherit}.cl289-methods,.cl289-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.cl289-methods button{display:flex;flex-direction:column;gap:16px;text-align:left;padding:24px;background:linear-gradient(145deg,#eef4ff,#faf7ff)}.cl289-methods button>span{font-size:42px}.cl289-options,.cl289-examples,.cl289-wizard footer,.cl289-scores{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.cl289-options label{display:flex;gap:8px;align-items:center}.cl289-options input{width:80px}.cl289-category{padding:14px;border:2px solid #ccd9ef;border-radius:18px;min-width:0;background:var(--cl-bg,#eef4ff)}.cl289-color-0{--cl-bg:#fff0f2}.cl289-color-1{--cl-bg:#eaf8ed}.cl289-color-2{--cl-bg:#e9f5ff}.cl289-color-3{--cl-bg:#fff7da}.cl289-color-4{--cl-bg:#f1ebff}.cl289-color-5{--cl-bg:#e5f8f5}.cl289-category>div{display:flex;flex-wrap:wrap;gap:8px}.cl289-category span{display:inline-block;padding:8px;background:#ffffffb0;border-radius:10px;margin-top:8px}.cl289{height:100%;width:100%;overflow:auto;box-sizing:border-box;padding:12px;container-type:inline-size}.cl289 header{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cl289 header strong{margin-right:auto}.cl289 .learn-sort-tray{display:flex;gap:12px;flex-wrap:wrap;padding:14px;border-radius:16px;background:#f3f6fc}.cl289 .learn-token{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:110px;min-height:104px;padding:10px;background:white;box-shadow:0 3px 8px #1b345012;touch-action:none;white-space:normal;overflow-wrap:anywhere}.cl289-picture{font-size:40px;line-height:1.1}.cl289-picture img{height:44px;width:44px;object-fit:contain}.cl289 .learn-token.correct{border:2px solid #19834b;background:#f0fff5;opacity:1;color:#17472b;animation:cl289-pop .35s ease-out}.cl289 .learn-token.selected{outline:3px solid #1944ed;outline-offset:2px}.cl289 .learn-bin-title{width:100%;font-weight:750;font-size:18px;background:transparent;border:0;color:#24334c;opacity:1}.cl289 .learn-bin{min-height:160px}.cl289-feedback.success{color:#126b3c}.cl289-feedback.retry{color:#aa2535}.cl289-result{text-align:center;padding:20px;background:#edfaf2;border-radius:18px;animation:cl289-pop .7s ease-out}.cl289-team-setup{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.cl289-team-setup input{width:100%;box-sizing:border-box;min-height:44px}.cl289 button:focus-visible,.cl289-wizard button:focus-visible{outline:3px solid #15294b;outline-offset:3px}.cl289 button:disabled{cursor:default}.cl289-full{position:fixed!important;inset:0!important;margin:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;background:#fff!important;z-index:2147483600!important;transform:none!important;overflow:auto!important}[data-cl-surface]:fullscreen{background:#fff;padding:20px;overflow:auto}.cl289-full .cl289{height:100%}@keyframes cl289-pop{from{transform:scale(.97);opacity:.65}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.cl289 *{animation:none!important;transition:none!important}}@media(max-width:600px){.cl289-wizard nav{grid-template-columns:repeat(2,1fr)}.cl289-methods{grid-template-columns:1fr}.cl289-team-setup{grid-template-columns:repeat(2,minmax(0,1fr))}.cl289-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.cl289 .learn-token{width:92px}.cl289 .learn-sort-bins{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ac-activity-preview .cl289>header>strong{display:none}.cl289-full .cl289>header>strong{display:block}.cl289-image-edits{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.cl289-image-edits>div{padding:10px;background:#eff4ff;border-radius:12px}.cl289-wizard input[type=color]{width:42px;height:42px;padding:2px;flex:none}.cl289-category>strong{display:block;font-size:18px;margin-bottom:8px}.cl289 .learn-token.is-dragging{z-index:10;box-shadow:0 10px 24px #17385345}.cl289 .is-drop-target{outline:3px solid #1944ed;outline-offset:2px}
.cl289>*{flex-shrink:0}.cl289 .learn-sort-bins{flex:none;min-height:180px;overflow:visible}.cl289 .learn-sort-tray{max-height:none;overflow:visible}.cl289>p{margin:6px 0}.cl289 .cl289-scores{margin:6px 0}.cl289-feedback{font-weight:650}.cl289-feedback:not(.success):not(.retry){color:#314661}.cl289 .learn-bin{background:var(--cl-bg,#eef4ff);border-style:solid;--bin:#29415f}.cl289 .learn-bin-title{font-size:18px!important;min-height:48px;padding:8px!important}.cl289 .learn-bin-items{flex-direction:row;flex-wrap:wrap}.cl289 .cl289-modes{display:flex;gap:12px;flex-wrap:wrap}.cl289 .cl289-modes button[aria-pressed=true]{background:#1944ed!important;color:white!important}.cl289-team-setup input{font-size:16px}.cl289-wizard .learning-setup-top{grid-template-columns:1fr}.cl289-wizard .learning-category-row{flex-wrap:nowrap}
.cl289 .learn-bin-title{white-space:normal;overflow:visible;overflow-wrap:anywhere}.cl289-category>strong{overflow-wrap:anywhere}@media(max-width:600px){.cl289 .learn-bin{min-height:110px;padding:8px}.cl289 .learn-bin-title{font-size:16px!important}.cl289 .learn-sort-bins{gap:8px}}
.cl289-preview-image{display:block;object-fit:contain;width:70px;height:70px;margin:0 auto 6px}
/* v290: one editor scroll surface; fixed-size interaction pages in the player. */
.cl290-wizard{color:#172b48}.cl290-wizard nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 18px}.cl290-wizard nav button{font-size:13px;white-space:normal}.cl290-wizard button,.cl290 button{min-height:44px;border:1px solid #cfdbed;background:#fff;color:#233a58;border-radius:12px;padding:9px 13px;font:inherit;cursor:pointer}.cl290-wizard button.primary,.cl290-wizard nav .active,.cl290 button[aria-pressed=true]{background:#1944ed!important;color:white!important;border-color:#1944ed}.cl290-wizard nav .complete{background:#edf3ff;color:#1944ed}.cl290-wizard button:focus-visible,.cl290 button:focus-visible{outline:3px solid #16305b;outline-offset:3px}.cl290-wizard button:disabled,.cl290 button:disabled{opacity:.5;cursor:default}.cl290-wizard label{display:flex;flex-direction:column;gap:6px;font-size:14px}.cl290-wizard input:not([type=checkbox]):not([type=color]),.cl290-wizard select{min-width:0;width:100%;box-sizing:border-box;border:1px solid #ccdaec;border-radius:10px;min-height:44px;padding:8px;font:inherit}.cl290-wizard textarea{width:100%;box-sizing:border-box;min-height:110px;padding:14px;border:1px solid #ccdaec;border-radius:12px;font:inherit;line-height:1.5}.cl290-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cl290-methods button{display:flex;flex-direction:column;gap:14px;align-items:flex-start;text-align:left;padding:24px;background:linear-gradient(145deg,#eef4ff,#faf6ff)}.cl290-methods button>span{font-size:36px}.cl290-methods small{font-weight:400;line-height:1.5}.cl290-examples,.cl290-options,.cl290-wizard footer{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.cl290-options input[type=number]{max-width:90px}.cl290-category-editor,.cl290-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}.cl290-category-editor article,.cl290-summary article{padding:14px;background:var(--cl-bg,#edf3ff);border:1px solid #d4dfed;border-radius:16px}.cl290-category-editor article>div{display:flex;gap:5px;align-items:center;margin-top:10px}.cl290-category-editor input[data-cat=icon]{max-width:65px}.cl290-wizard input[type=color]{width:40px;height:40px;flex:none;padding:2px}.cl290-summary strong,.cl290-summary span{display:block;margin-bottom:8px}.cl290-elements-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0}.cl290-elements-editor article{padding:14px;background:#f7f9ff;border:1px solid #d8e2f0;border-radius:16px;display:flex;flex-direction:column;gap:8px}.cl290-elements-editor article>div:last-child{display:flex;gap:6px;flex-wrap:wrap}.cl290-picture{height:90px;display:grid;place-items:center}.cl290-picture>span{font-size:60px}.cl290-picture img{width:100%;height:90px;object-fit:contain}.cl290-wizard input[type=checkbox],.cl290 input[type=checkbox]{width:20px;height:20px;flex:none;margin:0}.cl290-wizard label:has(input[type=checkbox]),.cl290 label:has(input[type=checkbox]){display:flex;flex-direction:row;align-items:center;gap:8px}.cl290-roster{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.cl290-roster label{padding:9px 12px;background:#edf3ff;border-radius:10px}.cl290-teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0}.cl290-teams article{padding:12px;border:1px solid #d1dfef;background:#edf3ff;border-radius:14px}.cl290-teams article>input:not([type=color]){width:100%;box-sizing:border-box;min-height:44px}.cl290-teams ul{padding:0;list-style:none}.cl290-teams li{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:6px 0}.cl290-teams select{min-width:0;max-width:110px}.cl290-modes{display:flex;gap:12px;flex-wrap:wrap}.cl290-proposal{padding:16px;background:#edf5ff;border:1px solid #c4d8f5;border-radius:16px;margin-top:18px}.cl290-proposal>div{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.cl290-proposal span{padding:9px;background:#fff;border-radius:10px}.cl290-preview-surface{height:560px;max-height:75dvh;border:1px solid #cbd9ed;border-radius:14px;margin-top:14px;padding:10px}.cl290-wizard footer{justify-content:space-between;position:sticky;bottom:0;padding:10px 0;background:#fff}.cl290-wizard [role=alert]{color:#a22231}.cl290.learn-sort{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(100px,1fr) minmax(120px,1.1fr) auto;gap:8px;overflow:visible;padding:12px;border:0;border-radius:0;background:#fff}.cl290.learn-sort.cl290-preparation{display:block;overflow:auto}.cl290>header{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-height:44px}.cl290>header>strong{margin-right:auto;font-size:16px}.cl290 .cl290-status{margin:0;font-size:14px;min-height:20px}.cl290-status.success{color:#137244}.cl290-status.retry{color:#b42332}.cl290 .learn-sort-bins.cl290-bins{display:grid;grid-template-columns:repeat(var(--cl-count),minmax(0,1fr));gap:10px;min-height:0;overflow:visible;padding:0;flex:none}.cl290 .learn-bin{min-height:0;overflow:visible;padding:8px;background:var(--cl-bg,#edf3ff);border:1px solid #cfdbed;border-radius:14px;gap:4px;display:flex;flex-direction:column}.cl290 .learn-bin-title{font-size:clamp(13px,2cqw,20px)!important;min-height:48px!important;padding:5px!important;white-space:normal;overflow-wrap:anywhere;color:#213752!important}.cl290 .cl290-placed-items{display:flex;gap:4px;flex-wrap:wrap;align-content:flex-start;font-size:12px}.cl290-placed-items span{max-width:100%;padding:4px 6px;border-radius:8px;background:#ffffffb0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cl290 .learn-sort-tray.cl290-pending{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;min-height:0;max-height:none;overflow:visible;padding:8px;background:#f1f5fc;border:0;border-radius:14px}.cl290 .learn-token{width:100%;height:100%;min-height:52px;min-width:0;padding:7px;display:flex;flex-direction:row;gap:10px;align-items:center;justify-content:center;box-shadow:0 2px 6px #19335215;font-size:clamp(14px,2.3cqw,24px);line-height:1.2;touch-action:none;overflow-wrap:anywhere;white-space:normal;border-radius:12px}.cl290 .cl290-card-image{display:grid;place-items:center;font-size:clamp(24px,5cqh,52px);flex:none}.cl290-card-image:empty{display:none}.cl290-card-image img{width:clamp(30px,6cqw,72px);height:clamp(30px,7cqh,72px);object-fit:contain}.cl290 .learn-token.selected{outline:3px solid #1944ed;outline-offset:2px}.cl290 footer{display:flex;justify-content:center;align-items:center;gap:16px;min-height:44px;font-size:14px}.cl290-scoreboard{position:relative}.cl290-scoreboard>summary{padding:10px;min-height:44px;box-sizing:border-box;cursor:pointer}.cl290-scoreboard>div{position:absolute;z-index:20;top:100%;right:0;min-width:220px;max-width:80vw;padding:12px;background:#fff;box-shadow:0 8px 30px #17345438;border:1px solid #c7d6ec;border-radius:12px;display:grid;gap:6px}.cl290-result{grid-row:3/-1;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edfaf1;border-radius:16px;padding:16px;overflow:auto}.cl290-result h2{font-size:24px;margin:0 0 12px}.cl290-result ol{padding-left:20px}.cl290 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:650px){.cl290-wizard nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.cl290-wizard nav button{font-size:10px;padding:6px 3px}.cl290-methods{grid-template-columns:1fr}.cl290 .learn-sort-bins.cl290-bins{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.cl290.learn-sort{grid-template-rows:auto auto minmax(120px,1fr) minmax(140px,1.1fr) auto;padding:6px;gap:6px}.cl290>header button{padding:7px 10px}.cl290 .learn-token{flex-direction:column;gap:3px;font-size:14px;padding:5px}.cl290 .cl290-card-image{font-size:30px}.cl290 .learn-bin-title{font-size:13px!important}.cl290-placed-items{display:none!important}.cl290-elements-editor{grid-template-columns:1fr}.cl290-summary,.cl290-category-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ac-activity-preview .cl290>header>strong{display:inline!important}.cl290 .learn-bin-title:disabled{opacity:1;color:#213752!important}

.cl290-scoreboard>div{max-height:min(60dvh,400px);overflow:auto}
/* v293: flow layout reserves navigation space; presentation surface is never remounted on a move. */
.cl290-wizard footer{position:static;bottom:auto;margin-top:20px;padding-top:16px;border-top:1px solid #dce4f1;min-height:60px;align-items:center}.cl290-wizard footer>button:last-child{margin-left:auto}.cl290-wizard textarea::placeholder{color:#6c7f99;opacity:1}.cl290-wizard h3{font-size:clamp(20px,2vw,28px);line-height:1.25}.cl290-wizard .cl290-options{align-items:end}.cl290-wizard .cl290-options select{width:160px}.cl290-elements-editor{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.cl290-elements-editor article{padding:12px;gap:7px}.cl290-picture,.cl290-picture img{height:65px}.cl290-elements-editor article>div:last-child button{min-width:44px;padding:7px}.cl290 .learn-sort-bins.cl290-bins{grid-template-columns:repeat(var(--cl-columns,4),minmax(0,1fr))}.cl290-preview-surface{box-sizing:border-box;width:100%;height:560px;min-height:400px;max-height:none;overflow:visible}.cl290-preview-surface:fullscreen,.cl290-preview-surface.cl289-full{max-height:none!important;min-height:0!important;height:100dvh!important;width:100vw!important;box-sizing:border-box;padding:16px}.cl289-full .ac-activity-preview,[data-cl-surface]:fullscreen .ac-activity-preview{height:100%!important;min-height:0!important}.cl290-roster{align-items:center}.cl290-roster label:has(input:checked){background:#dce9ff;box-shadow:inset 0 0 0 2px #4775e1}.cl290-preparation label:not(:has(input[type=checkbox])){display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}.cl290-preparation [data-cl-manual]{min-height:44px;max-width:260px;font:inherit;padding:8px;border:1px solid #ccd8e9;border-radius:10px}.cl290-preparation select{min-height:44px;max-width:100%;font:inherit}.cl293-empty{max-width:600px;color:#536b89}.cl290-wizard [data-count-notice]:empty{display:none}@media(max-width:650px){.cl290 .learn-sort-bins.cl290-bins{grid-template-columns:repeat(2,minmax(0,1fr))}.cl290-elements-editor{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.cl290-preview-surface{height:620px}.cl290-wizard footer{gap:8px}}@media(prefers-reduced-motion:reduce){.cl290 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.cl290-elements-editor article>div:last-child{gap:5px}.cl290-elements-editor article>div:last-child button{flex-shrink:0}
/* Classification team controls retain comfortable touch targets without widening cards. */
.cl290-teams li{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.cl290-teams li select{width:auto;max-width:100%;min-height:40px;padding:6px 28px 6px 8px}
.cl290-teams{overflow-anchor:none}

.cl290-wizard>nav{grid-template-columns:repeat(var(--cl-steps,5),minmax(0,1fr))}
