.modal-overlay{background:#00000080;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:100}.modal-content,.modal-overlay{align-items:center;display:flex}.modal-content{background:var(--gray-1);border-radius:24px;box-shadow:0 20px 60px 0 #524b4933;flex-direction:column;gap:48px;max-height:95vh;max-width:95vw;overflow:auto;padding:12px;pointer-events:auto;position:relative;width:-webkit-fit-content;width:fit-content;z-index:101}.x-modal-button{align-items:center;background:var(--gray-2);border:none;border-radius:4px;display:flex;gap:10px;padding:6px;position:absolute;right:10px;top:10px;z-index:100}.x-modal-button:hover{cursor:pointer}.app-button{align-items:center;background:var(--pure-white);border:2px solid var(--gray-3);border-radius:12px;color:var(--pure-black);display:inline-flex;gap:3px;max-height:50px;padding:5px}.app-button.shake{animation:pulse 3s ease-in-out infinite;animation-delay:calc(3s + 5s*random())}.app-button button.button-content:disabled{background-color:initial!important;cursor:inherit}@keyframes wiggle{0%{transform:rotate(0deg)}25%{transform:rotate(2deg)}50%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}to{transform:rotate(0deg)}}.button-content{align-items:center;align-self:stretch;background:var(--gray-2);border:none;border-bottom:1px solid #524b494d;border-radius:7px 4px 4px 7px;display:flex;flex:1 0;font-size:28px;gap:6px;letter-spacing:1.12px;line-height:100%;padding:8px 12px}.button-content img{height:24px;width:24px}.button-content:hover{background-color:var(--gray-3);cursor:pointer}.arrow-forward{align-items:center;display:flex;height:36px;justify-content:center;transform:scaleX(-1);width:36px}.audio-assistance-button:hover{cursor:pointer}.audio-assistance-button img{width:15px!important}.audio-assistance-button{max-height:-webkit-fit-content;max-height:fit-content}.action-button{align-items:center;background:var(--gray-3);border:none;border-bottom:1px solid #524b494d;border-radius:7px;box-shadow:0 1px 3px 0 #524b4980;color:var(--pure-black);display:flex;gap:6px;height:40px;justify-content:center;padding:8px 12px}.action-button.xs{gap:6px;height:25px;padding:5px,5px}.action-button.small{gap:6px;height:30px;padding:6px,6px}.action-button.normal{gap:6px;height:40px;padding:6px,12px}.action-button.large{gap:6px;height:50px;padding:8px,16px}.action-button img{height:16px;width:16px}.action-button.go{background:var(--dark-green);color:var(--pure-white)}.action-button.go:hover{background:var(--dark-green-hover)}.action-button.edit{background:var(--purple);color:var(--pure-white)}.action-button.edit:hover{background:var(--purple-hover)}.action-button.delete{background:var(--dark-pink);color:var(--pure-white)}.action-button.option{background:var(--moss-green);color:var(--pure-white)}.action-button.option:hover{background:var(--moss-green-hover)}.action-button:hover{cursor:pointer}.action-button:disabled{background-color:var(--gray-3)!important;cursor:auto}.landing-button{border:none;border-radius:7px;box-shadow:0 1px 3px 0 #524b4980;justify-content:center;padding:8px 12px}.landing-button,.landing-button span{align-items:center;display:flex;flex-direction:row;gap:10px}.landing-button:hover{cursor:pointer}.landing-button.black{background:var(--pure-black);color:var(--pure-white)}.landing-button.white{background:var(--pure-white);color:var(--pure-black)}.landing-button.green{background:var(--dark-green);color:var(--pure-white)}.landing-button.grey{background:var(--gray-2);border-bottom:1px solid #524b494d}.landing-button.blue{background:var(--dark-blue);color:var(--pure-white)}.landing-button img{height:20px!important;width:20px!important}.icon-button{align-items:center;background:var(--gray-3);border:none;border-radius:4px;display:flex;flex:0 0 auto!important;padding:6px}.icon-button:hover{background:var(--gray-3);cursor:pointer}.icon-button.transparent{background:#0000}.icon-button.edit{background:var(--purple);color:#fff}.icon-button.edit:hover{background:var(--purple-hover)}.icon-button.go{background:var(--dark-green);color:#fff}.icon-button.go:hover{background:var(--dark-green-hover)}.sidebar-button{align-items:center;align-self:stretch;border:none;border-radius:7px;box-shadow:0 1px 3px 0 #524b4980;display:flex;flex-direction:row;gap:14px;height:60px;justify-content:center;justify-content:left;padding:15px;text-align:center}.sidebar-button img{height:24px;width:24px}.sidebar-button:hover{cursor:pointer}.sidebar-button.go{background:var(--dark-green);color:var(--pure-white)}.sidebar-button.go:hover{background:linear-gradient(0deg,#0003 0,#0003 100%),var(--dark-green)}.sidebar-button.default{background:var(--gray-3);color:var(--gray-10)}.sidebar-button.default:hover{background:var(--gray-4)}.sidebar-button.option{background:var(--purple);color:var(--pure-white)}.sidebar-button.option:hover{background:var(--purple-hover)}.sidebar-button.view{background:var(--moss-green);color:var(--pure-white)}.sidebar-button.view:hover{background:var(--moss-green-hover)}@media screen and (max-width:700px){.button-content{font-size:18px}}.user-input{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column;gap:6px;justify-content:center}.user-input .hint{align-items:center;display:flex;flex-direction:row;gap:3px}.invalid{border:1px solid var(--dark-pink);outline:none}.field-error{color:var(--dark-pink);font-size:.875rem;margin-top:4px}.user-input-header{align-self:stretch;height:24px;justify-content:space-between;padding:0 6px}.user-input-header,.user-input-label{align-items:center;display:flex;flex-direction:row}.user-input-label{flex:1 0;gap:10px}.user-input .hint{color:var(--dark-green)}.alert{display:flex;flex-direction:column;height:35vh;max-height:300px;max-width:400px;min-height:150px;min-width:200px;width:35vw}.alert img{width:20%}.scheduler-embed{align-items:center;height:min(1000px,100%);min-height:min(1000px,100%);min-width:min(1000px,100%);overflow-x:auto;overflow-y:auto;text-align:center;width:min(1000px,100%)}.social-media-icon{height:35px;width:35px}.social-media-icon:hover{cursor:pointer}.contact-page{display:flex;flex-direction:column;gap:25px}.horizontal-carousel{align-items:center;display:flex;flex-direction:row;height:100%;justify-content:center;max-height:100%;max-width:100%;width:100%}.horizontal-carousel,.main-page{overflow:hidden;position:relative}.main-page{-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;display:inline-block;filter:none;height:-webkit-fit-content;height:fit-content;opacity:1;transform:rotateY(0deg) translateZ(0);transform-style:preserve-3d;width:-webkit-fit-content;width:fit-content;will-change:transform;z-index:5}.flip-next{animation:flipNext .8s forwards}.flip-prev{animation:flipPrev .8s forwards}@keyframes flipNext{0%{transform:rotateY(0deg)}50%{transform:rotateY(-90deg)}50.01%{transform:rotateY(90deg)}to{transform:rotateY(0deg)}}@keyframes flipPrev{0%{transform:rotateY(0deg)}50%{transform:rotateY(90deg)}50.01%{transform:rotateY(-90deg)}to{transform:rotateY(0deg)}}.horizontal-carousel .next-page,.horizontal-carousel .prev-page{filter:blur(4px);height:-webkit-fit-content;height:fit-content;opacity:.5;overflow:hidden;position:absolute;top:50%;transform:scale(.5);transition:transform .8s ease-out,filter .8s ease-out,opacity .8s ease-out;width:-webkit-fit-content;width:fit-content;z-index:1}.horizontal-carousel .prev-page{right:50%;transform:translateY(-50%) scale(.6)}.horizontal-carousel .next-page{left:50%;transform:translateY(-50%) scale(.6)}.landing-page{flex-direction:column;margin-top:100px;min-height:-webkit-fit-content;min-height:fit-content}.landing-page,.landing-page-nav{align-items:center;background:#fff;background:var(--Gray-Pure-White,#fff);display:flex;width:100vw}.landing-page-nav{box-sizing:border-box;flex-shrink:0;height:100px;justify-content:space-between;left:0;padding:0 5vw;position:fixed;top:0;z-index:100}.landing-page-nav img{flex-shrink:0;height:46px;width:132px}.landing-page-nav .actions{align-items:center;display:flex;gap:30px;justify-content:flex-end}.landing-page hr{background:#d4d4d4;background:var(--Gray-Gray-4,#d4d4d4);height:2px;width:80vw}.landing-page .welcome-content{align-items:center;background:linear-gradient(180deg,#fff,#fdfffc 33.33%,#ddfecb 66.67%,#bafc95);background:var(--Gradient,linear-gradient(180deg,#fff 0,#fdfffc 33.33%,#ddfecb 66.67%,#bafc95 100%));border-bottom:4px solid #447d00;border-bottom:4px solid var(--Color-Dark-Green,#447d00);box-sizing:border-box;display:flex;flex-direction:column;height:-webkit-fit-content;height:fit-content;justify-content:center;padding:8vh 70px 20vh;width:100vw}.landing-page .hero{align-items:center;align-self:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:10vw;min-height:-webkit-fit-content;min-height:fit-content;width:85vw}.landing-page .speech-bubble{left:25%}.hero .text-content{align-items:flex-start;max-width:50%;width:35vw}.landing-page .hero video{min-width:380px;width:35vw}.landing-page .reading-container{max-height:60vh;max-width:35vw!important;min-height:60vh;min-width:300px!important;width:35vw!important}.landing-page .missed-word-popup{max-width:30vw!important}.landing-page .reading-frame{max-height:40vh!important;min-height:40vh!important}.landing-page h1{font-size:50px}.landing-page h1.green{color:#447d00;color:var(--Color-Dark-Green,#447d00)}.landing-page h1.white{color:#fff;color:var(--Color-Dark-Green,#fff)}.landing-page .summary-content{align-items:center;background:#fafaf7;background:var(--Gray-Gray-1,#fafaf7);box-sizing:border-box;display:flex;flex-direction:column;gap:10vh;height:-webkit-fit-content;height:fit-content;justify-content:center;padding:10vh 70px;text-align:center;width:100vw}.landing-page .summary-content .content{align-content:flex-start;align-items:flex-start;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:34px 3vw;width:90vw}.landing-page .summary-content .content .card{width:28vw}.landing-page .summary-content .content .card,.landing-page .summary-content .content .card img{align-items:center;box-sizing:border-box;color:#000;color:var(--Gray-Pure-Black,#000);display:flex;flex-direction:column;flex-shrink:0;gap:3vh}.landing-page .summary-content .content .card img{width:20vw}.landing-page .demo-content{align-items:center;background:#447d00;background:var(--Color-Dark-Green,#447d00);box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:10vh;height:-webkit-fit-content;height:fit-content;justify-content:center;padding:10vh 70px;width:100vw}.landing-page .demo-content .text-content{color:#fff}.landing-page .demo-content hr{background:#bafc95;background:var(--Color-Light-Green,#bafc95);height:2px;opacity:.5;width:80vw}.landing-page .horizontal-carousel{align-items:center;display:flex;flex-direction:row;gap:45px;height:-webkit-fit-content;height:fit-content;justify-self:center;margin-left:5vw;margin-right:5vw;overflow-x:auto;width:100vw}.landing-page .horizontal-carousel img{height:auto;width:50vw}.landing-page .teacher-demo{align-items:center;display:inline-flex;flex-wrap:wrap-reverse;gap:95px;width:80vw}.landing-page .teacher-demo .examples{align-items:flex-start;display:flex;flex-direction:column;gap:32px}.landing-page .teacher-demo .examples img{height:auto;width:40vw}.landing-page .logistics-content{align-items:center;background:#fafaf7;background:var(--Gray-Gray-1,#fafaf7);box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:10vh;height:-webkit-fit-content;height:fit-content;justify-content:center;padding:10vh 70px;width:100vw}.landing-page .text-content{display:flex;flex-direction:column;gap:25px;max-width:80vw;text-align:left}.landing-page .faqs{align-items:flex-start;display:inline-flex;flex-direction:column;gap:25px;text-align:left}.landing-page .faqs .classroom-panel{box-sizing:border-box;text-align:left;width:80vw}.landing-page .faqs .classroom-panel.expanded{align-items:flex-start;background:#016d89;background:var(--Color-Dark-Blue,#016d89);display:flex;flex-direction:column;gap:10px}.landing-page .faqs .classroom-panel .row{justify-content:space-between;width:100%}.landing-page .signup-content{align-items:center;background:linear-gradient(180deg,#fff,#fdfffc 33.33%,#ddfecb 66.67%,#bafc95);background:var(--Gradient,linear-gradient(180deg,#fff 0,#fdfffc 33.33%,#ddfecb 66.67%,#bafc95 100%));box-sizing:border-box;display:flex;flex-direction:column;gap:10vh;height:-webkit-fit-content;height:fit-content;justify-content:center;padding:10vh 60px;width:100vw}.social-media-row{gap:10vw;justify-content:space-between;overflow-x:auto}.landing-page .signup-header,.social-media-row{box-sizing:border-box;display:flex;flex-direction:row;width:80vw}.landing-page .signup-header{align-items:center;background:#447d00;background:var(--Color-Dark-Green,#447d00);border-radius:25px;box-shadow:9px 2px 41.2px 6px #00000026;flex-wrap:wrap-reverse;gap:5vw;height:-webkit-fit-content;height:fit-content;justify-content:center;max-width:1250px;padding:40px 60px}.landing-page .signup-header .text-content{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:35px;justify-content:center;max-width:700px;text-align:center;width:40vw}.landing-page .signup-header span{color:#fff}.landing-page .signup-header .landing-button span{color:#447d00}.landing-page .signup-header img{border-radius:15px;height:auto;max-height:50vh;width:50vw}.landing-page footer{align-items:center;background:linear-gradient(0deg,#0003,#0003),#447d00;background:linear-gradient(0deg,#0003 0,#0003 100%),var(--Color-Dark-Green,#447d00);box-sizing:border-box;display:flex;flex-direction:row;gap:10vh;height:250px;justify-content:space-between;min-height:-webkit-fit-content;min-height:fit-content;min-width:100vw;padding:5vh 10vw 3vh}.landing-page footer .brand-info{align-items:flex-start;align-self:stretch;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:space-between}.landing-page footer img{max-width:215px;width:30vw}.landing-page footer .links{align-items:flex-end;display:flex;flex-direction:column;gap:5px;height:-webkit-fit-content;height:fit-content;width:-webkit-fit-content;width:fit-content}.landing-page footer .links a{color:#fff;color:var(--Gray-Pure-White,#fff);font-family:Poppins;font-size:21px;font-style:normal;font-weight:300;line-height:123.5%;text-align:right;text-decoration:none}.social-media-button{align-items:center;background:#f0efed;background:var(--Gray-Gray-2,#f0efed);border-radius:100px;display:flex;gap:10px;justify-content:center;padding:12px 22px 12px 18px}.social-media-button:hover{cursor:pointer}.fade-in-section{animation-duration:1s;animation-fill-mode:forwards;animation-name:fadeIn;opacity:0}@media screen and (max-width:600px){.landing-page-nav .actions{gap:10px}.landing-page .welcome-content{padding:20px 10px 10vh}.landing-page .summary-content{padding:10vh 10px}.landing-page .summary-content .content .card{width:43.5vw}.landing-page .demo-content,.landing-page .logistics-content{padding:10vh 10px}.landing-page .footer-content{padding:10px 10px 20px}.landing-page .signup-header p{font-size:20px}.landing-page .teacher-demo .examples{align-items:center;flex-direction:row;overflow-x:auto;width:100vw}.landing-page footer{width:95vw}.landing-page footer .links a{font-size:16px}}@media screen and (max-width:750px){.landing-page .welcome-content .hero{flex-direction:column;justify-content:center}.landing-page .welcome-content .hero .text-content{align-items:center;text-align:center;width:100%}.landing-page .welcome-content .hero video{min-width:300px}.landing-page .signup-header{padding:20px 30px}.landing-page .signup-header .text-content{max-width:100%}.landing-page .reading-container{height:70vh;max-height:70vh}.landing-page .reading-container .app-button{width:150px}.landing-page h1{font-size:40px}}.loading-indicator{display:flex;height:250px;width:250px}.loading-indicator svg{height:100px}.loading-indicator image{align-self:center;height:auto;position:relative;width:120px}.spinner{animation:spin 1s ease infinite;border:4px solid #0000001a;border-left:4px solid var(--dark-green);border-radius:50%;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-indicator--pixel-reveal{align-items:center;background:#0000;display:flex;justify-content:center;overflow:visible;padding:0}.loading-indicator--pixel-reveal .pixel-reveal-canvas{display:block;object-fit:contain}@media (prefers-reduced-motion:reduce){.loading-indicator--pixel-reveal .pixel-reveal-canvas{image-rendering:auto}}.loading-indicator--spinning{background:#0000;overflow:visible;padding:0}.loading-indicator--spinning img.momentum-spin{animation:momentum-spin 1.4s infinite;height:100%;object-fit:contain;width:100%}@keyframes momentum-spin{0%{animation-timing-function:cubic-bezier(.4,0,.8,.4);transform:rotate(0deg)}50%{animation-timing-function:cubic-bezier(.2,.6,.6,1);transform:rotate(180deg)}to{transform:rotate(1turn)}}@keyframes bounceAndSquish{0%{transform:translateX(-150px) scaleX(.9)}5%{transform:translateX(-120px) scaleX(1.15)}15%{transform:translateX(-90px) scaleX(.9)}25%{transform:translateX(-60px) scaleX(1.15)}35%{transform:translateX(-30px) scaleX(.9)}45%{transform:translateX(0) scaleX(1.15)}55%{transform:translateX(30px) scaleX(.9)}65%{transform:translateX(60px) scaleX(1.15)}75%{transform:translateX(90px) scaleX(.9)}85%{transform:translateX(120px) scaleX(1.15)}95%,to{transform:translateX(150px) scaleX(.9)}}.loading-indicator{--ring-color:var(--dark-green);--ring-thickness:6px;--ring-radius:12px;--ring-gap:6px;--ring-speed:5s;align-items:center;background:#0000;border-radius:var(--ring-radius);box-sizing:border-box;display:inline-flex;justify-content:center;overflow:hidden;padding:calc(var(--ring-gap) + var(--ring-thickness));position:relative}.loading-indicator .ring{height:auto;inset:calc(var(--ring-thickness)/2);pointer-events:none;position:absolute;width:auto}.loading-indicator .ring__dash{fill:none;stroke:var(--ring-color);stroke-width:var(--ring-thickness);stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:10 90;animation:ring-offset var(--ring-speed) linear infinite}@keyframes ring-offset{to{stroke-dashoffset:-100}}@media (prefers-reduced-motion:reduce){.loading-indicator .ring__dash{animation:none}}.loading-indicator-wrapper{align-items:center;display:flex;flex-direction:column;gap:16px}.loading-label{animation:label-pulse 2s ease-in-out infinite;background-color:var(--pure-white);border-radius:3px;color:#2d5a3d;color:var(--dark-green,#2d5a3d);font-size:14px;font-weight:500;letter-spacing:.04em;line-height:1.5;max-width:260px;padding:10px;text-align:center;text-transform:uppercase}@keyframes label-pulse{0%,to{opacity:.85}50%{opacity:1}}.level-config-editor{display:flex;flex-direction:column;gap:12px;width:100%}.level-config-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding:0 6px}.level-range-info{align-items:center;display:flex;gap:6px}.level-range-info .hint{color:var(--gray-6);font-style:italic}.level-config-table{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.level-config-row{grid-gap:12px;align-items:center;border-bottom:1px solid var(--gray-2);display:grid;gap:12px;grid-template-columns:70px 1fr 1fr 48px;padding:10px 12px}.level-config-row:last-child{border-bottom:none}.level-config-row.header{background:var(--gray-1);color:var(--gray-8);font-size:.85rem;font-weight:600;padding:8px 12px}.level-col{justify-content:flex-start}.level-badge,.level-col{align-items:center;display:flex}.level-badge{background:var(--dark-green);border-radius:50%;color:var(--pure-white);font-size:.95rem;font-weight:600;height:32px;width:32px}.level-badge,.level-config-row.header .level-col{justify-content:center}.grade-col,.wida-col{align-items:center;display:flex}.level-config-row select{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:6px;color:var(--gray-10);cursor:pointer;font-size:.9rem;padding:8px 10px;transition:border-color .15s ease;width:100%}.level-config-row select:hover{border-color:var(--gray-5)}.level-config-row select:focus{border-color:var(--dark-green);outline:none}.action-col,.remove-level-btn{align-items:center;display:flex;justify-content:center}.remove-level-btn{background:#0000;border:none;border-radius:6px;color:var(--gray-5);cursor:pointer;height:32px;transition:all .15s ease;width:32px}.remove-level-btn:hover{background:var(--dark-pink);color:var(--pure-white)}.add-level-btn{align-items:center;background:#0000;border:2px dashed var(--gray-4);border-radius:8px;color:var(--gray-7);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .15s ease}.add-level-btn:hover:not(:disabled){background:#0080000a;border-color:var(--dark-green);color:var(--dark-green)}.add-level-btn:disabled{cursor:not-allowed;opacity:.5}.range-input-group{align-items:center;display:flex;gap:8px}.range-input{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:6px;color:var(--gray-10);font-size:.9rem;padding:8px 6px;text-align:center;transition:border-color .15s ease;width:52px}.range-input:hover{border-color:var(--gray-5)}.range-input:focus{border-color:var(--dark-green);outline:none}.range-separator{color:var(--gray-6);font-size:.85rem;font-weight:500}.level-warning{animation:fadeIn .2s ease}@media screen and (max-width:500px){.level-config-row{gap:6px;grid-template-columns:1fr 70px 70px 36px!important;padding:8px}.level-badge{font-size:.85rem;height:28px;width:28px}.level-config-row select{font-size:.8rem;padding:6px 4px}.level-config-row.header{font-size:.7rem}.range-input{font-size:.8rem;padding:6px 4px;width:40px}.range-input-group{gap:4px}.range-separator{font-size:.75rem}}.searchbar{align-items:center;align-self:stretch;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:5px 0}.searchbar img{height:auto;width:30px}.searchbar-title{gap:10px;padding-top:1px}.searchbar-dropdown,.searchbar-title{align-items:center;align-self:stretch;display:flex}.searchbar-dropdown{background-color:var(--pure-white);border:2px solid var(--gray-7);border-radius:0 0 6px 6px;border-top:none;flex-direction:column;gap:0;overflow-x:hidden;overflow-y:auto}.filter-item{align-items:flex-start;align-self:stretch;display:flex;gap:8px;justify-content:center;padding:1px 0 0 31px}.filter-content{padding-left:10px}.word-list{flex-wrap:wrap}.word,.word-list{display:flex;flex-direction:row;gap:10px}.word{align-items:center;animation:poofAppear .6s ease-out forwards;background-color:var(--gray-2);border-radius:12px;padding:5px 8px}.word .x:hover{cursor:pointer}.word.clickable:hover{cursor:pointer;transform:scale(1.05)}.book-card-cover{align-items:center;background:var(--gray-2);border-radius:6px;display:flex;flex-shrink:0;height:260px;justify-content:center;overflow:hidden;width:165px}.book-card-cover img{border-radius:6px;height:auto;width:100%}.book-label{align-items:center;display:flex;flex-direction:column;gap:3px;overflow-y:auto;padding:0 5px}@media screen and (max-width:600px){.book-card-cover{height:157px;width:100px}}.book-card{align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:12px;box-shadow:0 5px 10px 0 #524b4933;container-name:book-card;container-type:inline-size;display:flex;flex:1 0;flex-direction:row;gap:10px;height:290px;max-height:60vh;min-height:30vh;min-width:min(250px,90vw);overflow-y:auto;padding:12px}.book-card:hover{background:var(--gray-1);cursor:pointer}.book-card-details{align-items:stretch;display:flex;flex-direction:column;flex-grow:1;gap:10px}.book-card-metadata{display:flex;flex-direction:row;gap:10px}.book-card .action-button{width:-webkit-fit-content;width:fit-content}@media screen and (max-width:600px){.book-card{height:-webkit-fit-content;height:fit-content;min-height:0;min-height:auto}.book-card-details{display:flex;flex-direction:column;max-width:100%}}@container book-card (max-width: 250px){.book-card .book-card-cover,.book-card img{display:none}.book-catalog-row{grid-template-columns:1fr}}.book-catalog-row{grid-gap:min(2%,30px);align-items:flex-start;display:grid;flex:1 1 auto;gap:min(2%,30px);grid-template-columns:1fr 1fr;height:-webkit-fit-content;height:fit-content;max-width:100%;min-height:-webkit-fit-content;min-height:fit-content;overflow-x:hidden;overflow-y:auto;padding-left:max(2%,30px);padding-right:max(2%,30px);transition:all .5s ease-in-out;width:100%}@media screen and (max-width:1000px){.book-catalog-row{grid-template-columns:1fr}}.speech-bubble{background:#0000;border:solid var(--gray-10);border-radius:10px;padding:5px;position:relative;text-align:center;width:80%;z-index:1}.speech-bubble.correct{animation:glow-green 2s ease-out}.sb3:before{border-bottom:10px solid #0000;border-left:10px solid var(--gray-10);border-right:10px solid #0000;border-top:9px solid var(--gray-10);bottom:-19px;content:"";height:0;left:19px;position:absolute;width:0}.reading-container{align-items:center;align-self:stretch;display:flex;flex-direction:column;gap:12px;height:calc(100vh - 234px);max-height:100%;max-width:100%;min-height:calc(100vh - 234px);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.reading-container:has(.reading-frame+.assignment-controls){gap:0}.reading-container:has(.reading-frame+.assignment-controls)>:not(.reading-frame):not(.assignment-controls){margin-bottom:12px}.reading-container .app-button{min-width:-webkit-fit-content;min-width:fit-content;width:200px}.reading-frame{align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;color:var(--gray-10);display:flex;flex:1 0;flex-direction:column;font-size:calc(20px*var(--font-scale));gap:10px;height:100%;letter-spacing:.8px;line-height:calc(250%*var(--line-spacing-scale));overflow-y:auto;padding:50px;position:relative;width:100%}.reading-frame:has(+.assignment-controls){border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.reading-frame p{width:100%}.reading-frame.inline{border:none;padding:initial}.reading-frame.dyslexic *{font-family:OpenDyslexic!important}.reading-frame .ql-size-huge{font-size:calc(2.5em*var(--font-scale))}.reading-frame .ql-size-large{font-size:calc(1.5em*var(--font-scale))}.reading-frame .ql-size-small{font-size:calc(.75em*var(--font-scale))}.reading-frame blockquote{border-left:4px solid var(--gray-3);margin-bottom:5px;margin-top:5px;padding-left:16px}.reading-frame.blurred{align-self:stretch;filter:blur(6px);opacity:.5}.right-click-menu{background-color:var(--gray-1);border-radius:4px;box-shadow:0 2px 5px #0003;font-size:14px;margin:0;padding:4px 0;position:absolute;width:200px;z-index:1000}.right-click-menu li{background-color:initial;cursor:pointer;list-style-type:none;padding:8px 16px}.right-click-menu li:hover{background-color:var(--gray-3)}.brw.incorrect{-webkit-text-decoration:underline 3px var(--yellow);text-decoration:underline 3px var(--yellow)}.brw.current{color:#000;font-weight:var(--font-weight-bold);transform:scale(1.1)}.brw.read{color:var(--gray-8)}.brw.insertion,.brw.read{font-weight:var(--font-weight)}.brw.insertion{color:var(--gray-5)}.brw.missed{-webkit-text-decoration:underline 3px var(--dark-pink);text-decoration:underline 3px var(--dark-pink)}.brw.match,.brw.missed{color:#000;font-weight:var(--font-weight-bold);transform:scale(1.1)}.brw.match{-webkit-text-decoration:underline 3px var(--dark-green);text-decoration:underline 3px var(--dark-green)}.questions-viewer{align-items:flex-start;background:var(--pure-white);border:3px solid var(--pure-white);border-radius:24px;display:flex;flex-wrap:wrap;height:75vh;overflow:auto;padding:2px;width:95vw}.questions-viewer-sidebar-container{flex-shrink:0;gap:10px;min-height:100%;padding:12px;width:260px}.questions-viewer-sidebar,.questions-viewer-sidebar-container{align-items:center;align-self:stretch;display:flex;flex-direction:column}.questions-viewer-sidebar{border:2px solid var(--gray-2);border-radius:12px;flex:1 0;gap:30px;padding:2px}.questions-viewer-sidebar .question-list{align-self:stretch}.questions-viewer-content{align-items:center;background:var(--gray-1);border-radius:12px;display:flex;flex:1 0;flex-direction:column;gap:48px;margin-right:12px;margin-top:12px;min-height:100%;padding:12px}.questions-viewer-content label{color:var(--gray-10);text-align:left}.questions-viewer .grade-input{align-items:center;border:2px solid var(--gray-2);border-radius:6px;display:flex;flex-direction:row;gap:10px;padding:20px}.questions-viewer .grade-input input{padding:3px;width:50px}.question-input{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column;gap:6px;justify-content:center}.question-input label{color:var(--gray-10)}.question-input textarea{align-items:flex-end;align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:6px;color:var(--gray-10);display:flex;flex:1 0;font-size:20px;gap:10px;letter-spacing:.8px;line-height:250%;max-height:240px;min-height:-webkit-fit-content;min-height:fit-content;overflow-y:scroll;padding:8px 24px}.question-select,.questions-viewer-content .app-button{align-self:stretch}.question-select{align-items:center;border-bottom:2px solid var(--gray-2);color:var(--gray-8);display:flex;gap:10px;padding:12px 22px 12px 18px}.question-select label{flex:1 0}.question-select.selected{border-radius:6px 6px;border-right:10px solid var(--dark-green)}.missed-word-popup{align-items:center;align-self:center;background:var(--gray-1);border:3px solid var(--pure-white);border-radius:12px;border-radius:24px;box-shadow:0 20px 60px 0 #524b4933;display:flex;flex:1 0;flex-direction:column;gap:3%;height:50vh;justify-content:space-between;max-height:50vh;min-width:500px;padding:12px;perspective:1000px;position:relative;transform-origin:center;transform-style:preserve-3d;width:40vw}.missed-word-popup .icon-button{height:35px;position:absolute;right:12px;top:8px;width:35px}.missed-word-popup .back,.missed-word-popup .front{align-items:center;align-self:stretch;-webkit-backface-visibility:visible;backface-visibility:visible;display:flex;flex-direction:column;height:calc(85% - 12px);left:12px;position:absolute;top:15%;transition:transform 1s;width:calc(100% - 24px)}.missed-word-popup .back{transform:rotateY(180deg)}.missed-word-popup-content{align-items:center;align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:0 0 10px 10px;color:var(--gray-9);display:flex;flex:1 0;flex-direction:column;height:100%;justify-content:space-around;max-height:42vh;padding:12px 24px}.missed-word-definition{align-self:stretch;overflow-y:auto;text-align:left}.missed-word-popup img{width:50px}.word-known-prompt{align-items:center;display:flex;flex-direction:column;justify-content:space-evenly;text-align:center}.word-known-prompt .app-button{height:-webkit-fit-content;height:fit-content;width:-webkit-fit-content;width:fit-content}.book-emoji{align-items:center;align-self:center;background:var(--pure-white);border-radius:50%;box-shadow:0 20px 60px 0 #524b4933;display:flex;height:130px;justify-content:center;padding:40px;position:absolute;top:40%;width:130px}.book-emoji img{width:20vw}.question-feedback{background:var(--gray-2);border:solid var(--gray-3);border-radius:6px;display:flex;height:100%;overflow-y:auto;padding:12px 20px 12px 12px;position:relative;resize:both;width:100%}.question-feedback:empty{display:none}.question-feedback.correct{animation:glow-green 4s ease-out infinite}.question-feedback.wrong{animation:glow-red 4s ease-out infinite}.page-header{grid-gap:8px;align-items:center;align-self:stretch;display:grid;gap:8px;grid-template-columns:1fr auto 1fr}.page-header .title{grid-column:2;justify-self:center;line-height:1.1;margin:0}.page-header .back-btn{align-self:center;grid-column:1;justify-self:start}@keyframes glow-green{0%{box-shadow:0 0 2px #0f00}50%{box-shadow:0 0 10px var(--dark-green)}to{box-shadow:0 0 2px #0f00}}@keyframes glow-red{0%{box-shadow:0 0 2px #0f00}50%{box-shadow:0 0 10px var(--dark-pink)}to{box-shadow:0 0 2px #0f00}}.pbs-video-container{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px dashed #cbd5e1;border-radius:12px;display:flex;height:405px;justify-content:center;width:100%}.pbs-video-card{align-items:center;display:flex;flex-direction:column;gap:16px;max-width:400px;padding:40px;text-align:center}.pbs-video-card .pbs-icon{font-size:64px;line-height:1}.pbs-video-card h3{color:#1e293b;font-size:20px;font-weight:600;margin:0}.pbs-video-card p{color:#64748b;font-size:14px;line-height:1.5;margin:0}.pbs-watch-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:transform .15s ease,box-shadow .15s ease}.pbs-watch-button:hover{box-shadow:0 6px 20px #3b82f659;transform:translateY(-2px)}.pbs-watch-button:active{transform:translateY(0)}@media screen and (max-width:600px){.modal .reading-container{height:98vh;width:98vw}.reading-frame{padding:30px 40px}.missed-word-popup{min-height:50vh;min-width:80vw}.missed-word-popup-content{min-height:42vh}.book-completed-text{width:18vw}.book-completed-text .app-button{width:15vw}}@media screen and (max-height:650px){.reading-frame{padding:30px 40px}}.assignment-controls{align-items:center;align-self:stretch;background-color:var(--gray-1);border:2px solid var(--gray-2);border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:none;display:flex;flex-direction:row;flex-wrap:wrap;gap:min(20px,5vw);justify-content:center;margin-top:-2px;padding:12px 20px}@media screen and (min-width:601px){.assignment-controls{max-width:100%}}@media screen and (max-width:600px){.assignment-controls{gap:10px;padding:10px 12px}}.confetti-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%}.confetti{animation:fall 2s linear infinite;background-color:red;border-radius:50%;height:10px;opacity:.8;position:absolute;width:10px}@keyframes fall{0%{transform:translateY(0) rotate(0)}to{transform:translateY(100vh) rotate(1turn)}}.celebration-image{animation:spinExpandSlowDown 2s cubic-bezier(.17,.67,.83,.67) forwards;opacity:0;width:250px;z-index:5}@keyframes spinExpandSlowDown{0%{opacity:0;transform:scale(.3) rotate(0deg)}20%{opacity:1;transform:scale(1.1) rotate(8turn)}40%{opacity:1;transform:scale(1.4) rotate(15turn)}60%{opacity:1;transform:scale(1.5) rotate(20turn)}80%{opacity:1;transform:scale(1.3) rotate(22turn)}to{opacity:1;transform:scale(1) rotate(23turn)}}.fireworks-button{background:#ff9800;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px;transition:.3s}.fireworks-button:hover{background:#e68900}.firework-container{background-color:initial;height:10px;pointer-events:none;position:fixed;transform-origin:center;width:10px}.firework-particle{animation:explode-particle linear forwards;background-color:red;border-radius:50%;height:6px;opacity:1;position:absolute;width:6px}@keyframes explode-particle{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(calc(var(--velocity)*cos(var(--angle))),calc(var(--velocity)*sin(var(--angle))))}}.firework-container:before{animation:smoke-trail 1.2s ease-out forwards;background:radial-gradient(circle,#fffc 10%,#0000);border-radius:50%;content:"";height:8px;opacity:0;position:absolute;width:8px}@keyframes smoke-trail{0%{opacity:1;transform:scale(.5) translateY(10px)}to{opacity:0;transform:scale(1.2) translateY(-50px)}}.sidebar-container{align-self:stretch;display:flex;position:relative}.app-sidebar{align-items:center;align-self:stretch;background-color:var(--gray-1);border:2px solid var(--gray-3);border-radius:24px;display:flex;flex:1 1;flex-direction:column;gap:28px;height:var(--app-page-content-height);justify-content:space-between;max-height:var(--app-page-content-height);max-width:var(--app-sidebar-width);min-height:var(--app-page-content-height);min-width:min(var(--app-sidebar-width),95vw);padding:20px 20px 10px;transition:all 1s ease;width:var(--app-sidebar-width)}.app-sidebar.collapsed{border:none;max-width:0;min-width:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;width:0}.sidebar-container .expand-button{background-color:var(--gray-3);border:none;border-radius:0 6px 6px 0;color:var(--gray-10);height:40px;position:absolute;right:-15px;top:50%;transform:translateY(-50%);width:15px;z-index:50}.sidebar-container .expand-button:hover{cursor:pointer}.app-sidebar .col{gap:20px;overflow:hidden}.app-sidebar .app-button,.app-sidebar .col{align-self:stretch}.app-sidebar h1{color:var(--dark-green);text-align:center}.app-sidebar hr{background:var(--gray-3);height:2px;width:250px}.sidebar-content{align-self:stretch;display:flex;flex-direction:column;font-size:14px;gap:28px;letter-spacing:.56px;line-height:150%;overflow-y:auto}.sidebar-content b{color:var(--gray-10);font-size:22px;letter-spacing:.88px;line-height:100%}.sidebar-content-data{align-items:flex-start;align-self:stretch;border-bottom:1px solid var(--gray-3);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:5px 5px 12px}.sidebar-content-label,.sidebar-text{align-items:center;align-self:stretch;display:flex;gap:10px;padding-top:1px}.sidebar-text{justify-content:center}.sidebar-text label{flex:1 0}@media screen and (max-width:700px){.sidebar-container{position:absolute;width:-webkit-fit-content;width:fit-content}.app-sidebar{height:var(--app-page-content-height-small);max-height:var(--app-page-content-height-small);min-height:var(--app-page-content-height-small);padding:5px;width:300px;z-index:99}}.item-panel{align-items:center;align-self:stretch;border-bottom:2px solid var(--gray-2);display:flex;gap:14px;height:75px;justify-content:space-between;max-height:-webkit-fit-content;max-height:fit-content;min-height:75px;overflow:hidden;padding:24px 18px 24px 28px}.item-panel.expanded{align-items:normal;background:var(--gray-3);border-bottom:2px solid var(--gray-7);flex-direction:column;height:-webkit-fit-content;height:fit-content;overflow-y:auto}.item-panel:hover{background:var(--gray-2);cursor:pointer}.item-panel.selected{background:var(--dark-green);color:var(--pure-white)}.item-panel.selected:hover{background:linear-gradient(0deg,#0003 0,#0003 100%),var(--dark-green);cursor:pointer}.item-panel.highlighted{box-shadow:0 0 30px var(--dark-green);z-index:10}.image-choice{border:2px solid var(--gray-3);border-radius:12px;display:flex;flex:1 1;height:200px;justify-content:center;padding:20px;width:200px}.image-choice img{height:auto!important;max-height:100%!important;max-width:100%!important;min-width:100%!important;object-fit:contain}.image-choice.expanded{align-items:normal;background:var(--gray-3);border-bottom:2px solid var(--gray-7);flex-direction:column;height:-webkit-fit-content;height:fit-content;overflow-y:auto}.image-choice:hover{background:var(--gray-2);cursor:pointer}.image-choice.selected{background:var(--dark-green);color:var(--pure-white)}.image-choice.selected:hover{background:linear-gradient(0deg,#0003 0,#0003 100%),var(--dark-green);cursor:pointer}.image-choice.highlighted{box-shadow:0 0 30px var(--dark-green);z-index:1000}.image-choice.incorrect{border-color:var(--dark-pink)}.multiple-choice-options-container{align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:6px;display:flex;flex:1 0;flex-direction:column;gap:12px;gap:10px;max-height:240px;min-height:240px;overflow-y:scroll;padding:8px 24px}.user-alert-popup{align-items:center;border-radius:20px;display:flex;flex-direction:column;justify-content:center;margin:auto;max-width:min(700px,90vw);padding:1rem;width:min(700px,90vw)}.user-alert-popup img{height:auto;max-width:200px}.user-alert-popup .col{align-items:baseline;gap:12px}.game-menu-content{align-items:center;display:flex;gap:24px;width:100%}.game-menu-image{flex-shrink:0}.game-menu-content .col{flex:1 1;min-width:0}@media (max-width:600px){.game-menu-image{display:none}.game-menu-content{justify-content:center}.game-menu-content .col{align-items:center;text-align:center}.badges-grid{justify-content:center}}.assignment-settings{background-color:var(--pure-white);display:flex;flex-direction:row;gap:10px;height:45vh;max-height:100%;min-height:240px;min-height:-webkit-fit-content;min-height:fit-content;width:60vw}.assignment-settings-tools{align-items:center;background-color:#fafaf7;border-radius:10px 10px 10px 10px;display:flex;flex:1 0 1;flex-direction:column;overflow-y:auto;padding:12px;width:50%}.assignment-settings h3{text-align:center}.assignment-settings h3,.assignment-settings-item{border-bottom:2px solid #d4d4d4;padding-bottom:20px;width:100%}.assignment-settings-item{display:flex;flex:1 0 1;flex-direction:column;gap:20px;padding-top:20px}.assignment-settings-tools-footer{padding-top:20px}.assignment-settings-preview{background:#fff;border:2px solid #fcf095;border-radius:10px 10px 10px 10px;display:flex;flex:1 0 1;flex-direction:column;gap:10px;width:50%}.assignment-settings-preview-header{background:#fcf095;border:2px solid #fcf095;flex:1 0 1}.assignment-settings-preview-content,.assignment-settings-preview-header{align-items:center;display:flex;gap:10px;justify-content:center;width:100%}.assignment-settings-preview-content{background:var(--pure-white);border:none;flex:1 0 1;flex-direction:row;overflow:hidden;padding:12px}.assignment-settings-preview-content .reading-frame{background:#0000;border:none;flex:1 0 1;height:100%;max-height:100%;max-width:100%;overflow:hidden;overflow-y:auto;padding:0}.conversation-frame{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:space-between;width:100%}.conversation-frame .wormy{height:auto;width:100px}.conversation-frame textarea{display:flex;flex-grow:1}.generate-form-wrapper{display:flex;flex-direction:column;gap:24px;width:100%}.generate-form-wrapper>.action-btn{align-self:center;font-size:1.05rem;min-width:220px}.generate-form-columns{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 1fr}.generate-form-section{background:linear-gradient(145deg,#fafafa,#fff);border:1px solid var(--light-green);border-radius:16px;display:flex;flex-direction:column;gap:16px;height:100%;padding:24px}.generate-form-section .section-header{align-items:center;border-bottom:2px solid var(--light-green);display:flex;gap:8px;margin-bottom:4px;padding-bottom:12px}.generate-form-section .section-title{color:var(--dark-green);font-size:1.1rem;font-weight:700;letter-spacing:.01em}.selector-group{display:flex;flex-direction:column;gap:10px}.selector-label{color:#555;color:var(--text-secondary,#555);font-size:.85rem;font-weight:500;padding-left:4px}.grade-cluster-options{display:flex;flex-wrap:wrap;gap:10px}.grade-cluster-btn{background:#fff;border:2px solid var(--light-green);border-radius:8px;color:var(--dark-green);cursor:pointer;font-size:1rem;font-weight:600;min-width:70px;padding:10px 20px;transition:all .2s ease}.grade-cluster-btn:hover{background:var(--light-beige);border-color:var(--dark-green);transform:translateY(-1px)}.grade-cluster-btn.selected{background:var(--dark-green);border-color:var(--dark-green);box-shadow:0 2px 8px #00000026;color:#fff}.card-btn-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.card-btn-grid.cols-3{grid-template-columns:repeat(3,1fr)}.card-btn-grid.cols-4{grid-template-columns:repeat(4,1fr)}.card-btn{align-items:center;background:#fff;border:2px solid var(--light-green);border-radius:10px;cursor:pointer;display:flex;flex-direction:column;padding:12px 8px;text-align:center;transition:all .2s ease}.card-btn:hover{background:var(--light-beige);border-color:var(--dark-green);box-shadow:0 4px 12px #1f6c1114;transform:translateY(-1px)}.card-btn.selected{background:linear-gradient(145deg,var(--dark-green) 0,var(--medium-green) 100%);border:2px solid var(--dark-green);box-shadow:0 4px 16px #0003}.card-btn__value{color:var(--dark-green);font-size:1.25rem;font-weight:700;line-height:1}.card-btn__title{color:var(--dark-green);font-size:.8rem;font-weight:600;margin-top:4px}.card-btn__subtitle{color:#666;color:var(--text-secondary,#666);font-size:.65rem;line-height:1.2;margin-top:4px;opacity:.85}.card-btn.card-btn--sm{padding:8px 6px}.card-btn.card-btn--sm .card-btn__value{font-size:1rem}.card-btn.card-btn--sm .card-btn__title{font-size:.75rem}.card-btn.card-btn--lg{padding:16px 12px}.card-btn.card-btn--lg .card-btn__value{font-size:1.5rem}.card-btn.card-btn--lg .card-btn__title{font-size:.9rem}@media (max-width:900px){.generate-form-columns{grid-template-columns:1fr}.card-btn-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.card-btn-grid{grid-template-columns:repeat(2,1fr)}.grade-cluster-btn{font-size:.9rem;padding:8px 14px}.generate-form-section{padding:16px}}.question-layout{display:flex;flex-direction:row;gap:24px;height:100%;width:100%}.question-layout .question-content{display:flex;flex:1 1;flex-direction:column;gap:12px;min-width:0}.question-layout.with-image .question-content{flex:2 1}.question-image-panel{align-items:center;background:linear-gradient(145deg,#1f6c1108,#1f6c1114);border:1px solid #1f6c111a;border-radius:20px;display:flex;flex:1 1;justify-content:center;min-height:200px;padding:12px}.question-image-panel .question-image-frame{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;transition:box-shadow .3s ease;width:100%}.question-image-panel .question-image-frame:before{background:linear-gradient(145deg,#1f6c1126,#1f6c110d 50%,#1f6c111a);border-radius:16px;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:2px;pointer-events:none;position:absolute}.question-image-panel .question-image-frame:hover{box-shadow:0 8px 12px -2px #0000001a,0 4px 6px -1px #0000000f}.question-image-panel .question-image-frame img{border-radius:12px;display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;padding:8px;transition:opacity .3s ease;width:auto}.question-image-loading{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:flex;flex-direction:column;justify-content:center;min-height:180px;width:100%}.question-image-loading:after{animation:question-image-spin .8s linear infinite;border:3px solid #90c67c;border-top-color:#1f6c11;border:3px solid var(--light-green,#90c67c);border-radius:50%;border-top-color:var(--dark-green,#1f6c11);content:"";height:40px;width:40px}@keyframes question-image-spin{to{transform:rotate(1turn)}}@media (max-width:768px){.question-layout{flex-direction:column}.question-layout.with-image .question-content{flex:none}.question-image-panel{flex:none;max-height:280px;order:-1}.question-image-panel .question-image-frame img{max-height:240px}}.book-completed-text{color:var(--dark-green);flex:1 0;gap:18px;text-align:center}.book-completed-text,.reading-footer{align-items:center;display:flex;justify-content:center}.reading-footer{align-self:stretch;flex-direction:row;height:60px}.reading-frame.listening-assessment img{max-width:80%;width:80%}:root{--ask-wormy-primary:#1cb05f;--ask-wormy-primary-hover:#189a53;--ask-wormy-bg:var(--gray-1,#fff);--ask-wormy-text:var(--gray-6,#333);--ask-wormy-muted:var(--gray-4,#666);--ask-wormy-border:var(--gray-3,#ddd);--ask-wormy-chat-system-bg:#f3f4f6;--ask-wormy-chat-system-fg:#2e3138;--ask-wormy-chat-user-bg:#1cb05f;--ask-wormy-chat-user-fg:#fff;--ask-wormy-button-size:72px;--ask-wormy-button-size-mobile:60px;--ask-wormy-modal-width:480px;--ask-wormy-animation-height:200px;--ask-wormy-pulse-duration:2s;--ask-wormy-transition-speed:0.2s}@media (prefers-color-scheme:dark){:root{--ask-wormy-chat-system-bg:#282c33;--ask-wormy-chat-system-fg:#f5f5f5;--ask-wormy-chat-user-bg:#1aa85a}}.ask-wormy-button{background:#fff;background:var(--ask-wormy-bg);border:none;border-radius:50%;box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;cursor:pointer;height:72px;height:var(--ask-wormy-button-size);overflow:hidden;padding:8px;position:fixed;transition:transform .2s ease,box-shadow .2s ease;transition:transform var(--ask-wormy-transition-speed) ease,box-shadow var(--ask-wormy-transition-speed) ease;width:72px;width:var(--ask-wormy-button-size);z-index:50}.ask-wormy-button:hover{box-shadow:0 6px 20px #0003,0 3px 6px #00000026;transform:scale(1.08)}.ask-wormy-button:active{transform:scale(.98)}.ask-wormy-button:focus{outline:3px solid #1cb05f;outline:3px solid var(--ask-wormy-primary);outline-offset:2px}.ask-wormy-button--bottom-right{bottom:24px;right:24px}.ask-wormy-button--bottom-left{bottom:24px;left:24px}.ask-wormy-button--inline{bottom:auto;left:auto;position:relative;right:auto}.ask-wormy-button--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.ask-wormy-button__image{border-radius:50%;height:100%;object-fit:contain;width:100%}.ask-wormy-button__pulse{animation:ask-wormy-pulse 2s ease-out infinite;animation:ask-wormy-pulse var(--ask-wormy-pulse-duration) ease-out infinite;border:3px solid #1cb05f;border:3px solid var(--ask-wormy-primary);border-radius:50%;height:100%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%}@keyframes ask-wormy-pulse{0%{opacity:.6;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.4)}}@media (max-width:768px){.ask-wormy-button{bottom:16px;height:60px;height:var(--ask-wormy-button-size-mobile);right:16px;width:60px;width:var(--ask-wormy-button-size-mobile)}.ask-wormy-button--bottom-left{left:16px;right:auto}}.ask-wormy-modal{align-items:center;display:flex;flex-direction:column;gap:16px;max-width:100%;padding:20px;width:480px;width:var(--ask-wormy-modal-width)}.ask-wormy-modal__header{align-items:center;display:flex;gap:12px;justify-content:center;width:100%}.ask-wormy-modal__title{color:#333;color:var(--ask-wormy-text);font-size:1.5rem;font-weight:600;margin:0}.ask-wormy-modal__context-badge{background:#1cb05f;background:var(--ask-wormy-primary);border-radius:999px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 12px;text-transform:capitalize}.ask-wormy-modal__animation{align-items:center;background:linear-gradient(180deg,#0000,#93c5931a);border-radius:16px;display:flex;height:200px;height:var(--ask-wormy-animation-height);justify-content:center;overflow:hidden;position:relative;width:100%}.ask-wormy-modal__wormy-image{background:#0000;max-height:100%;max-width:100%;object-fit:contain}.ask-wormy-modal__connecting-overlay{align-items:center;background:#fffc;color:#333;color:var(--ask-wormy-text);display:flex;font-size:1rem;font-weight:500;inset:0;justify-content:center;position:absolute}.ask-wormy-modal__status{min-height:24px;text-align:center;width:100%}.ask-wormy-modal__greeting{color:#666;color:var(--ask-wormy-muted);font-size:.95rem;line-height:1.5;margin:0}.ask-wormy-modal__status-indicator{align-items:center;display:flex;gap:8px;justify-content:center}.ask-wormy-modal__status-text{color:#666;color:var(--ask-wormy-muted);font-size:.9rem}.ask-wormy-modal__status-text--speaking{color:#1cb05f;color:var(--ask-wormy-primary);font-weight:500}.ask-wormy-modal__status-text--listening{color:#0d80f2;font-weight:500}.ask-wormy-modal__status-text--user-speaking{color:#f2870d;font-weight:500}.ask-wormy-modal__transcript{background:#fff;background:var(--ask-wormy-bg);border:1px solid #ddd;border:1px solid var(--ask-wormy-border);border-radius:12px;max-height:200px;overflow-y:auto;width:100%}.ask-wormy-modal__controls{display:flex;gap:12px;justify-content:center;width:100%}.ask-wormy-modal__controls-row{display:flex;gap:12px}.ask-wormy-modal__help-text{color:#666;color:var(--ask-wormy-muted);font-size:.8rem;margin:0;text-align:center}.ask-wormy-chat{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:12px}.ask-wormy-chat__empty{align-items:center;color:#666;color:var(--ask-wormy-muted);display:flex;font-size:.9rem;justify-content:center;padding:24px}.ask-wormy-chat__empty p{margin:0}.ask-wormy-chat__message{border-radius:16px;display:flex;flex-direction:column;gap:4px;line-height:1.4;max-width:85%;padding:10px 14px}.ask-wormy-chat__message--system{align-self:flex-start;background:#f3f4f6;background:var(--ask-wormy-chat-system-bg);border-bottom-left-radius:4px;color:#2e3138;color:var(--ask-wormy-chat-system-fg)}.ask-wormy-chat__message--user{align-self:flex-end;background:#1cb05f;background:var(--ask-wormy-chat-user-bg);border-bottom-right-radius:4px;color:#fff;color:var(--ask-wormy-chat-user-fg)}.ask-wormy-chat__message-meta{font-size:.7rem;opacity:.7}.ask-wormy-chat__message-speaker{font-weight:600}.ask-wormy-chat__message-text{word-wrap:break-word;font-size:.9rem;white-space:pre-wrap}@media (max-width:600px){.ask-wormy-modal{gap:12px;padding:16px}.ask-wormy-modal__title{font-size:1.25rem}.ask-wormy-modal__animation{height:150px}.ask-wormy-chat,.ask-wormy-modal__transcript{max-height:150px}}.writing-panel{display:flex;flex-direction:column;font-size:14px!important;gap:12px;height:100%;letter-spacing:normal!important;line-height:1.5!important}.writing-panel-prompt{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-left:3px solid #6366f1;border-left:3px solid var(--primary,#6366f1);border-radius:8px;padding:12px 16px}.writing-panel-prompt-label{color:#64748b;color:var(--text-secondary,#64748b);display:block;font-size:12px;font-weight:600;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.writing-panel-prompt-text{color:#1e293b!important;color:var(--text-primary,#1e293b)!important;font-size:14px!important;letter-spacing:normal!important;line-height:1.5!important}.writing-panel-content{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e2e8f0;border:1px solid var(--border,#e2e8f0);border-radius:8px;flex:1 1;overflow:auto;padding:16px}.writing-panel-content,.writing-panel-text{font-size:15px!important;letter-spacing:normal!important;line-height:1.8!important}.writing-panel-text{word-wrap:break-word!important;color:#1e293b!important;color:var(--text-primary,#1e293b)!important;white-space:pre-wrap!important}.writing-panel-segment{transition:all .2s ease}.writing-panel-segment.has-feedback{border-radius:2px;cursor:pointer}.writing-panel-segment.has-feedback:hover{filter:brightness(.95)}.writing-panel-segment.has-highlight{animation:highlight-fade-in .3s ease;border-radius:3px;padding:1px 2px}@keyframes highlight-fade-in{0%{opacity:.5;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.writing-panel-segment.highlight-positive{background:linear-gradient(180deg,#22c55e33,#22c55e4d);box-shadow:0 0 0 1px #22c55e66}.writing-panel-segment.highlight-attention{background:linear-gradient(180deg,#fbbf2433,#fbbf244d);box-shadow:0 0 0 1px #fbbf2466}.writing-panel-segment.highlight-suggestion{background:linear-gradient(180deg,#6366f133,#6366f14d);box-shadow:0 0 0 1px #6366f166}.writing-panel-segment.has-feedback{border-bottom:2px solid #0000;padding-bottom:1px}.writing-panel-segment.feedback-grammar{background:#ff57571a;border-bottom-color:#ff5757e6}.writing-panel-segment.feedback-spelling{background:#ffc1071a;border-bottom-color:#ffc107e6}.writing-panel-segment.feedback-vocabulary{background:#2196f31a;border-bottom-color:#2196f3e6}.writing-panel-segment.feedback-punctuation{background:#9c27b01a;border-bottom-color:#9c27b0e6}.writing-panel-segment.feedback-style{background:#0096881a;border-bottom-color:#009688e6}.writing-panel-segment.feedback-clarity{background:#4caf501a;border-bottom-color:#4caf50e6}.writing-panel-segment.feedback-coherence{background:#7955481a;border-bottom-color:#795548e6}.writing-panel-segment.feedback-organization{background:#3f51b51a;border-bottom-color:#3f51b5e6}.writing-panel-segment.feedback-tone{background:#e91e631a;border-bottom-color:#e91e63e6}.writing-panel-segment.feedback-format{background:#607d8b1a;border-bottom-color:#607d8be6}.writing-panel-segment.feedback-other{background:#6b72801a;border-bottom-color:#6b7280e6}.writing-panel-segment.feedback-private{background:#1f29371a;border-bottom-color:#1f2937e6}.writing-panel-segment.feedback-purpose{background:#10b9811a;border-bottom-color:#10b981e6}.writing-panel-segment.feedback-fluency{background:#0ea5e91a;border-bottom-color:#0ea5e9e6}.writing-panel-segment.feedback-pronunciation{background:#f43f5e1a;border-bottom-color:#f43f5ee6}.writing-panel-segment.has-feedback.active{border-radius:3px;box-shadow:0 0 0 2px #6366f1;box-shadow:0 0 0 2px var(--primary,#6366f1);filter:brightness(.9)}.writing-panel-segment.change-type-deletion{border-bottom-style:dashed}.writing-panel-segment.deletion-active,.writing-panel-segment.has-feedback.deletion-active{background:#ef444426!important;border-bottom-color:#ef4444;box-shadow:0 0 0 2px #ef444480;text-decoration:line-through;-webkit-text-decoration-color:#ef4444;text-decoration-color:#ef4444;text-decoration-thickness:2px}.writing-panel-insertion-marker{color:#22c55e;cursor:pointer;display:inline;font-size:.8em;font-weight:700;opacity:.7;padding:0 1px;transition:opacity .2s ease;vertical-align:super}.writing-panel-insertion-marker:hover{opacity:1}.writing-panel-segment.insertion{border-radius:3px;cursor:pointer;display:inline;padding:1px 4px}.writing-panel-segment.insertion.active{background:#22c55e40!important;border-bottom:none;box-shadow:0 0 0 2px #22c55e99;color:#15803d;filter:none;font-weight:500;text-decoration:none}.writing-panel-segment.has-pending{position:relative}.writing-panel-segment.pending-saving{animation:pending-pulse 1.5s ease-in-out infinite;background:repeating-linear-gradient(45deg,#6366f11a,#6366f11a 5px,#6366f133 0,#6366f133 10px)}@keyframes pending-pulse{0%,to{opacity:1}50%{opacity:.7}}.writing-panel-segment.pending-error{background:#ef444426;border-bottom:2px dashed #ef4444}.writing-panel-legend{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-radius:6px;display:flex;font-size:12px;gap:16px;padding:8px 12px}.legend-item{align-items:center;display:flex;gap:6px}.legend-dot{border-radius:3px;height:12px;width:12px}.legend-dot.highlight-positive{background:#22c55e80;border:1px solid #22c55ecc}.legend-dot.highlight-attention{background:#fbbf2480;border:1px solid #fbbf24cc}.legend-dot.highlight-suggestion{background:#6366f180;border:1px solid #6366f1cc}.legend-label{color:#64748b;color:var(--text-secondary,#64748b)}.writing-panel-content::-webkit-scrollbar{width:6px}.writing-panel-content::-webkit-scrollbar-track{background:#0000}.writing-panel-content::-webkit-scrollbar-thumb{background:#e2e8f0;background:var(--border,#e2e8f0);border-radius:3px}.writing-panel-content::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary,#94a3b8)}.expanded-wormy-modal{background:#fff!important;background:var(--bg-primary,#fff)!important;display:flex!important;flex-direction:column!important;font-size:14px!important;height:85vh!important;letter-spacing:normal!important;line-height:1.5!important;max-height:800px!important;max-width:1200px!important;overflow:hidden!important;padding:0!important;width:90vw!important}.expanded-wormy-modal__header{align-items:center!important;background:#f8fafc!important;background:var(--bg-secondary,#f8fafc)!important;border-bottom:1px solid #e2e8f0!important;border-bottom:1px solid var(--border,#e2e8f0)!important;display:flex!important;flex-shrink:0!important;gap:12px!important;padding:16px 24px!important}.expanded-wormy-modal__title{color:#1e293b;color:var(--text-primary,#1e293b);font-size:20px;font-weight:600;margin:0}.expanded-wormy-modal__context-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:4px 10px}.expanded-wormy-modal__content{display:grid!important;flex:1 1!important;grid-template-columns:400px 1fr!important;overflow:hidden!important}.expanded-wormy-modal__chat-panel{background:#fff!important;background:var(--bg-primary,#fff)!important;border-right:1px solid #e2e8f0!important;border-right:1px solid var(--border,#e2e8f0)!important;display:flex!important;flex-direction:column!important;font-size:14px!important;letter-spacing:normal!important;line-height:1.5!important;overflow:hidden!important;padding:16px!important}.expanded-wormy-modal__animation{align-items:center;background:linear-gradient(180deg,#f8fafc,#0000);background:linear-gradient(180deg,var(--bg-secondary,#f8fafc) 0,#0000 100%);border-radius:12px;display:flex;flex-shrink:0;height:140px;justify-content:center;margin-bottom:12px;position:relative}.expanded-wormy-modal__wormy-image{height:120px;object-fit:contain;width:auto}.expanded-wormy-modal__connecting-overlay{align-items:center;background:#fffc;border-radius:12px;color:#64748b;color:var(--text-secondary,#64748b);display:flex;font-size:14px;inset:0;justify-content:center;position:absolute}.expanded-wormy-modal__status{flex-shrink:0;margin-bottom:12px;min-height:24px}.expanded-wormy-modal__greeting{color:#64748b;color:var(--text-secondary,#64748b);font-size:14px;line-height:1.5;margin:0;text-align:center}.expanded-wormy-modal__status-indicator{display:flex;justify-content:center}.expanded-wormy-modal__status-text{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-radius:12px;font-size:13px;padding:4px 12px}.expanded-wormy-modal__status-text--speaking{background:#22c55e1a;color:#16a34a}.expanded-wormy-modal__status-text--listening{background:#3b82f61a;color:#2563eb}.expanded-wormy-modal__status-text--user-speaking{background:#8b5cf61a;color:#7c3aed}.expanded-wormy-modal__transcript{border:1px solid #e2e8f0;border:1px solid var(--border,#e2e8f0);border-radius:8px;flex:1 1;margin-bottom:12px;overflow:hidden}.expanded-wormy-chat{display:flex;flex-direction:column;gap:12px;height:100%;overflow-y:auto;padding:12px}.expanded-wormy-chat__empty{align-items:center;color:#94a3b8;color:var(--text-tertiary,#94a3b8);display:flex;font-size:14px;height:100%;justify-content:center}.expanded-wormy-chat__message{border-radius:12px;font-size:14px;line-height:1.5;max-width:90%;padding:10px 14px}.expanded-wormy-chat__message--user{align-self:flex-end;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom-right-radius:4px;color:#fff}.expanded-wormy-chat__message--assistant{align-self:flex-start;background:#f1f5f9;background:var(--bg-secondary,#f1f5f9);border-bottom-left-radius:4px;color:#1e293b;color:var(--text-primary,#1e293b)}.expanded-wormy-chat__message-meta{font-size:11px;margin-bottom:4px;opacity:.8}.expanded-wormy-chat__message--user .expanded-wormy-chat__message-meta{text-align:right}.expanded-wormy-chat__message-text{word-wrap:break-word}.expanded-wormy-modal__controls{display:flex;flex-shrink:0;gap:8px;justify-content:center;margin-bottom:8px}.expanded-wormy-modal__controls-row{display:flex;gap:8px}.expanded-wormy-modal__help-text{color:#94a3b8;color:var(--text-tertiary,#94a3b8);flex-shrink:0;font-size:12px;margin:0;text-align:center}.expanded-wormy-modal__writing-panel{background:#f8fafc!important;background:var(--bg-secondary,#f8fafc)!important;display:flex!important;flex-direction:column!important;font-size:14px!important;letter-spacing:normal!important;line-height:1.5!important;overflow:hidden!important;padding:16px!important}.expanded-wormy-modal__writing-header{align-items:center;display:flex;flex-shrink:0;gap:12px;margin-bottom:12px}.expanded-wormy-modal__writing-header h3{color:#1e293b;color:var(--text-primary,#1e293b);font-size:16px;font-weight:600;margin:0}.expanded-wormy-modal__feedback-count{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e2e8f0;border:1px solid var(--border,#e2e8f0);border-radius:10px;color:#64748b;color:var(--text-secondary,#64748b);font-size:12px;padding:2px 8px}.expanded-wormy-modal__no-writing{align-items:center;color:#94a3b8;color:var(--text-tertiary,#94a3b8);display:flex;flex:1 1;font-size:14px;justify-content:center}.expanded-wormy-modal__writing-content{display:flex!important;flex:1 1!important;gap:16px!important;min-height:0!important;overflow:hidden!important}.expanded-wormy-modal__writing-text{flex:1 1;min-width:0;overflow:auto}.expanded-wormy-modal__feedback-sidebar{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e2e8f0;border:1px solid var(--border,#e2e8f0);border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:280px}.expanded-wormy-modal__feedback-sidebar-header{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border,#e2e8f0);display:flex;flex-direction:column;gap:2px;padding:12px 14px}.expanded-wormy-modal__feedback-sidebar-title{color:#1e293b;color:var(--text-primary,#1e293b);font-size:14px;font-weight:600}.expanded-wormy-modal__feedback-sidebar-hint{color:#94a3b8;color:var(--text-tertiary,#94a3b8);font-size:11px}.expanded-wormy-modal__feedback-list{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto;padding:8px}.expanded-wormy-modal__feedback-item-wrapper{border:2px solid #0000;border-radius:6px;cursor:pointer;transition:all .15s ease}.expanded-wormy-modal__feedback-item-wrapper:hover{background:#f8fafc;background:var(--bg-secondary,#f8fafc)}.expanded-wormy-modal__feedback-item-wrapper.active{background:#6366f10d;border-color:#6366f1;border-color:var(--primary,#6366f1);box-shadow:0 0 0 3px #6366f11a}.expanded-wormy-modal__feedback-item-wrapper .feedback-item{cursor:pointer;margin:0}.expanded-wormy-modal__feedback-list::-webkit-scrollbar{width:6px}.expanded-wormy-modal__feedback-list::-webkit-scrollbar-track{background:#0000}.expanded-wormy-modal__feedback-list::-webkit-scrollbar-thumb{background:#e2e8f0;background:var(--border,#e2e8f0);border-radius:3px}.expanded-wormy-modal__feedback-list::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary,#94a3b8)}@media (max-width:1100px){.expanded-wormy-modal__feedback-sidebar{width:220px}}@media (max-width:900px){.expanded-wormy-modal{height:90vh!important;width:95vw!important}.expanded-wormy-modal__content{grid-template-columns:1fr!important;grid-template-rows:1fr 1fr!important}.expanded-wormy-modal__chat-panel{border-bottom:1px solid #e2e8f0!important;border-bottom:1px solid var(--border,#e2e8f0)!important;border-right:none!important}.expanded-wormy-modal__animation{height:100px!important}.expanded-wormy-modal__wormy-image{height:80px!important}.expanded-wormy-modal__writing-content{flex-direction:column!important}.expanded-wormy-modal__feedback-sidebar{flex-shrink:0!important;max-height:200px!important;width:100%!important}}.expanded-wormy-chat::-webkit-scrollbar{width:6px}.expanded-wormy-chat::-webkit-scrollbar-track{background:#0000}.expanded-wormy-chat::-webkit-scrollbar-thumb{background:#e2e8f0;background:var(--border,#e2e8f0);border-radius:3px}.expanded-wormy-chat::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary,#94a3b8)}.status-icon{align-items:center;background:var(--pure-white);border-bottom:1px solid var(--gray-4);border-radius:30px;display:flex;gap:6px;padding:4px 14px 4px 8px}.status-icon img{width:16px}.status-icon.clickable{cursor:pointer}.blank-slot{align-items:center;background-color:#fff;border-radius:20px;min-width:min(-webkit-fit-content,50px);min-width:min(fit-content,50px);padding:10px;width:-webkit-fit-content;width:fit-content}.blank-slot,.ordering-blanks-container{border:thin solid var(--gray-7);display:flex}.ordering-blanks-container{border-radius:12px;flex-direction:row;flex-wrap:wrap;gap:10px;min-width:100%;padding:12px}.option-slot{align-items:center;background-color:var(--gray-2);border:thin solid var(--gray-7);border-radius:20px;display:flex;min-width:min(-webkit-fit-content,50px);min-width:min(fit-content,50px);padding:10px}.lines-svg{left:0;pointer-events:none;position:fixed;top:0;z-index:1}.matching-columns{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;position:relative;width:100%;z-index:2}.matching-columns .col{gap:15px}.matching-card{align-items:center;background:var(--pure-white);border:2px solid var(--gray-2);border-radius:12px;cursor:pointer;display:flex;height:70px;justify-content:center;min-height:-webkit-fit-content;min-height:fit-content;padding:5px;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none;width:100%}.matching-card img{height:60px}.matching-card.selected{border-color:var(--dark-blue);box-shadow:0 0 0 3px #596a8c33}.matching-card.locked{cursor:default;opacity:.7}.matching-card.correct{border-color:var(--dark-green);box-shadow:0 0 0 3px #47ab6833}.matching-card.wrong{animation:shake .3s linear 2;border-color:var(--dark-pink);box-shadow:0 0 0 3px #b34f5933}.icon-button.edit-tool{position:absolute;right:1rem;top:1rem;z-index:10}.grading-content{font-size:1rem;line-height:1.6;padding:1rem;position:relative}.general-comments-section{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;margin:1rem 0;padding:1rem}.section-header{align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.2rem}.general-comments-list{list-style:none;margin:0;padding:0}.comment-item{background-color:#fff;border-left:4px solid #ccc;border-radius:4px;display:flex;margin-bottom:.75rem;padding:.75rem}.feedback-sections{display:flex;flex-direction:column;gap:20px;margin-top:15px}.general-comments-section,.inline-annotations-section{background-color:#f9f9f9;border-radius:6px;padding:15px}.section-header{display:flex;justify-content:space-between;margin-bottom:10px}.section-header h3{color:#555;font-size:1rem;margin:0}.annotations-list,.comments-list,.general-comments-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;max-height:300px;overflow-y:auto;padding:0}.feedback-item:hover{box-shadow:0 2px 5px #0000001a}.feedback-item.active{background-color:#f0f9ff;box-shadow:0 2px 8px #0003;transform:translateY(-2px)}.comment-type-tag{color:#555;flex:0 0 100px;font-weight:600;padding-right:.75rem}.comment-text{flex:1 1}.no-comments-message{color:#888;font-style:italic}.highlighted-text{border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer;display:inline;position:relative;transition:background-color .3s,outline .3s;white-space:pre-wrap}.highlighted-text.active{z-index:10}.highlighted-text.active:hover{z-index:15}.highlighted-text.active:hover:after{background:#000000d9;border-radius:4px;bottom:100%;box-shadow:0 2px 5px #0003;color:#fff;content:attr(title);font-size:.85rem;left:0;max-width:300px;min-width:150px;padding:8px 12px;pointer-events:none;position:absolute;white-space:normal;z-index:100}.highlighted-text.active.has-feedback{background-color:#9e9e9e40;border-bottom:1px solid #9e9e9e80}.highlighted-text.active.grammar{background-color:#ff575740;border-bottom:1px solid #ff575780}.highlighted-text.active.spelling{background-color:#ffc10740;border-bottom:1px solid #ffc10780}.highlighted-text.active.vocabulary{background-color:#2196f340;border-bottom:1px solid #2196f380}.highlighted-text.active.punctuation{background-color:#9c27b040;border-bottom:1px solid #9c27b080}.highlighted-text.active.style{background-color:#00968840;border-bottom:1px solid #00968880}.highlighted-text.active.clarity{background-color:#4caf5040;border-bottom:1px solid #4caf5080}.highlighted-text.active.coherence{background-color:#79554840;border-bottom:1px solid #79554880}.highlighted-text.active.organization{background-color:#3f51b540;border-bottom:1px solid #3f51b580}.highlighted-text.active.format{background-color:#607d8b40;border-bottom:1px solid #607d8b80}.highlighted-text.active.tone{background-color:#e91e6340;border-bottom:1px solid #e91e6380}.highlighted-text.active.other{background-color:#6b728040;border-bottom:1px solid #6b728080}.highlighted-text.active.private{background-color:#1f293740;border-bottom:1px solid #1f293780}.highlighted-text.active.purpose{background-color:#10b98140;border-bottom:1px solid #10b98180}.highlighted-text.active.fluency{background-color:#0ea5e940;border-bottom:1px solid #0ea5e980}.highlighted-text.active.pronunciation{background-color:#f43f5e40;border-bottom:1px solid #f43f5e80}.highlighted-text .highlighted-text{background-blend-mode:multiply}.annotation-form{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:1rem 0;padding:1rem}.annotation-form h4{margin-top:0}.annotation-form h4,.form-group{margin-bottom:.75rem}.form-group label{display:block;font-weight:600;margin-bottom:.25rem}.form-group select,.form-group textarea{border:1px solid #ccc;border-radius:4px;padding:.5rem;width:100%}.form-actions{gap:.5rem;margin-top:1rem}.grading-actions{border-top:1px solid #eee;display:flex;justify-content:flex-end;margin-top:1rem;padding:1rem}.highlighted-text.change-type-deletion{border-bottom-style:dashed}.highlighted-text.active.deletion-active,.highlighted-text.deletion-active{background-color:#ef444426!important;border-bottom-color:#ef4444;box-shadow:0 0 0 2px #ef444480;text-decoration:line-through;-webkit-text-decoration-color:#ef4444;text-decoration-color:#ef4444;text-decoration-thickness:2px}.highlighted-text.insertion-marker{background:none;border:none;color:#22c55e;cursor:pointer;display:inline;font-size:.8em;font-weight:700;opacity:.7;padding:0 1px;transition:opacity .2s ease;vertical-align:super}.highlighted-text.insertion-marker:hover{opacity:1}.highlighted-text.insertion.active{background-color:#22c55e40!important;border-bottom:none;border-radius:3px;box-shadow:0 0 0 2px #22c55e99;color:#15803d;display:inline;font-weight:500;padding:1px 4px;text-decoration:none}.chat-transcript{--ai-bg:#f3f4f6;--ai-fg:#2e3138;--user-bg:#1cb05f;--user-fg:#fff;--fb-bg:#f9fafb;--ring:#1cb05f;--soft:14px;--bubble-radius:16px;--shadow:0 1px 2px #0000000f,0 4px 14px #0000000f;display:flex;flex-direction:column;gap:10px;padding:4px 0}@media (prefers-color-scheme:dark){.chat-transcript{--ai-bg:#282c33;--ai-fg:#f5f5f5;--user-bg:#1aa85a;--user-fg:#fff;--fb-bg:#1f2228;--ring:#1fc76a;--shadow:0 1px 2px #00000059,0 6px 20px #0000004d}}.thread{flex-direction:column;gap:6px}.bubble-row,.thread{display:flex}.align-left{justify-content:flex-start}.align-right{justify-content:flex-end}.bubble{border-radius:var(--bubble-radius);box-shadow:var(--shadow);line-height:1.35;max-width:min(740px,86%);padding:10px 12px 12px;position:relative}.bubble.system{background:var(--ai-bg);border-top-left-radius:6px;color:var(--ai-fg)}.bubble.user{background:var(--user-bg);border-top-right-radius:6px;color:var(--user-fg)}.bubble.feedback{background:var(--fb-bg);color:inherit}.bubble-meta{display:flex;font-size:11px;gap:8px;margin-bottom:4px;opacity:.7}.bubble-text{word-wrap:break-word;font-size:14.5px;white-space:pre-wrap}.tutor-toggle{align-items:center;background:#fff;border:1px solid #e2e4e9;border-radius:999px;box-shadow:var(--shadow);color:#454954;cursor:pointer;display:inline-flex;gap:6px;padding:6px 8px;position:absolute;right:6px;top:-10px;transition:transform .15s ease,background .15s ease,border-color .15s ease}@media (prefers-color-scheme:dark){.tutor-toggle{background:#1f2228;border-color:#40454f;color:#f2f2f2}}.tutor-toggle:hover{transform:translateY(-1px)}.tutor-toggle .count{background:var(--ring);border-radius:999px;color:#fff;font-size:11px;padding:0 6px}.tutor-toggle .chev{font-size:12px;opacity:.7;transition:transform .2s ease}.tutor-toggle.open .chev{transform:rotate(180deg)}.feedback-panel{grid-gap:6px;display:grid;gap:6px;margin-left:18px;margin-right:18px}.feedback-panel.left{justify-items:start}.feedback-panel.right{justify-items:end}.feedback-panel.collapsed .feedback-body{display:none}.feedback-panel.expanded .feedback-body{display:flex}.feedback-panel.collapsed .feedback-header{opacity:.85}.feedback-panel.expanded .feedback-header{opacity:1}.feedback-header{align-items:center;background:#0000;border:1px dashed #c7cad1;border-radius:999px;color:inherit;cursor:pointer;display:inline-flex;font-size:12px;gap:8px;padding:6px 10px;transition:border-color .2s ease,background .2s ease}@media (prefers-color-scheme:dark){.feedback-header{border-color:#40454f}}.feedback-header:hover{background:#00000008}.feedback-header .chev{font-size:12px;opacity:.7;transition:transform .2s ease}.feedback-panel.expanded .feedback-header .chev{transform:rotate(180deg)}.feedback-body{display:flex;flex-direction:column;gap:6px}.feedback .bubble-text{font-size:14px}.feedback{max-width:min(700px,82%)}.pp-word{background:var(--pure-white);border-radius:999px;box-shadow:0 6px 14px #524b4933;color:var(--pure-black);font-weight:700;padding:12px 16px;pointer-events:none;position:absolute;top:0;transform:translate(-50%);transition:transform .06s linear;-webkit-user-select:none;user-select:none;white-space:nowrap;will-change:transform,opacity,filter}.pp-word.popping{animation:pp-pop-scale .28s ease-out forwards;z-index:2}.pp-word.popping:after{animation:pp-pop-ring .32s ease-out forwards;border:2px solid;border-radius:999px;content:"";inset:-4px;opacity:.7;pointer-events:none;position:absolute}@keyframes pp-pop-scale{0%{filter:blur(0);opacity:1;transform:translate(-50%) scale(1);transform:translate(-50%,var(--y,0)) scale(1)}55%{transform:translate(-50%) scale(1.18);transform:translate(-50%,var(--y,0)) scale(1.18)}to{filter:blur(1px);opacity:0;transform:translate(-50%) scale(.8);transform:translate(-50%,var(--y,0)) scale(.8)}}@keyframes pp-pop-ring{0%{opacity:.8;transform:scale(.85)}to{opacity:0;transform:scale(1.4)}}.pp-help{color:#334155;font-size:13px;padding-bottom:6px;text-align:center}.game-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px;max-width:95%}.game-header-title{font-size:18px;font-weight:700}.game-header-stats{display:flex;font-size:14px;gap:16px}.game-over{background:#fffffff2;border-radius:8px;box-shadow:0 4px 6px #0000001a;justify-content:center;padding:2rem;text-align:center}.game-over,.game-over-content{align-items:center;display:flex;flex-direction:column}.game-over-content{gap:1rem}.game-over .score{color:var(--dark-green);font-weight:700}.game-over-stats{margin:1rem 0}.game-over-stats,.new-high-score{display:flex;flex-direction:column;gap:.5rem}.new-high-score{animation:pulse 1s infinite;color:var(--dark-green)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.wdp-item{contain:layout paint style;left:50%;max-width:100%;min-width:100%;pointer-events:none;position:absolute;text-align:center;top:0;transform:translate(-50%);transition:left .12s ease;will-change:transform}.wdp-area{contain:layout paint}.wdp-item-text{display:inline-block;font-size:20px;font-weight:700;max-width:40%;padding:10px 14px}.wdp-item-picture,.wdp-item-text{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 6px 16px #0000000f}.wdp-item-picture{align-items:center;display:inline-flex;flex-direction:column;gap:6px;max-width:38%;padding:8px}.wdp-item-picture img{border-radius:10px;max-width:100%;object-fit:cover;width:140px}.wdp-item-caption{color:#4b5563;font-size:13px}.wdp-bins{grid-gap:12px;bottom:8%;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);left:0;padding:0 16px;position:absolute;right:0}.wdp-bin{align-items:center;background:#fff;border:2px dashed #d1d5db;border-radius:12px;display:flex;height:78px;justify-content:center;transition:border-color .12s ease,box-shadow .12s ease}.wdp-bin.active{border-color:#6366f1;box-shadow:0 4px 18px #6366f12e}.wdp-bin-label{color:#111827;font-size:16px;font-weight:700;padding:0 8px;text-align:center}.wdp-pointer{border-left:12px solid #0000;border-right:12px solid #0000;border-top:16px solid #111827;bottom:6.2%;height:0;left:16px;position:absolute;transform:translateX(0);transition:left .1s ease;width:0}.wdp-pointer[data-lane="0"]{left:16px}.wdp-pointer[data-lane="1"]{left:calc(9.33333px + 33.33333%)}.wdp-pointer[data-lane="2"]{left:calc(2.66667px + 66.66667%)}.wdp-help{color:#4b5563;font-size:14px;margin-top:10px;text-align:center}.wdp-overlay{display:grid;inset:0;place-items:center;position:absolute}.wdp-panel{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 10px 30px #00000014;display:flex;flex-direction:column;min-width:260px;padding:18px 20px;text-align:center}.wdp-error{background:#fff7f7;border-color:#fecaca;color:#b91c1c}.wdp-bin{transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,opacity .15s ease,transform .15s ease}.wdp-bin--correct{background:#05966914;border-color:var(--dark-green);box-shadow:0 0 0 2px var(--dark-green),0 8px 18px #05966940}.wdp-bin--wrong{background:#ec489914;border-color:var(--dark-pink);box-shadow:0 0 0 2px var(--dark-pink),0 8px 18px #ec489940}.wdp-bin--faded{opacity:.35}.wdp-item{transition:left .12s ease,opacity .12s ease}.wdp-item--hide{opacity:0}.wdp-area{touch-action:none;-webkit-user-select:none;user-select:none}.wdp-bin{cursor:pointer}.presentation-audience-stage{display:flex;justify-content:center;position:relative;width:100%}.presentation-audience-img{display:block;height:auto;max-height:100%;pointer-events:none;-webkit-user-select:none;user-select:none;width:90%}.presentation-question-bubble{background:#fffffff2;border:2px solid #0000002e;border-radius:999px;box-shadow:0 6px 18px #0000001f;cursor:pointer;font-size:20px;font-weight:800;height:44px;line-height:1;position:absolute;transform:translate(-50%,-50%);width:44px}.presentation-question-bubble:hover{transform:translate(-50%,-50%) scale(1.06)}.presentation-question-bubble:active{transform:translate(-50%,-50%) scale(.98)}.presentation-question-bubble.popping{animation:bubble-pop .5s cubic-bezier(.2,.9,.2,1) forwards}@keyframes bubble-pop{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.25)}to{opacity:0;transform:translate(-50%,-50%) scale(.05)}}.sidebar-feedback-section{border-bottom:1px solid var(--gray-3);padding:5px 5px 28px}.feedback-list,.sidebar-feedback-section{align-self:stretch;display:flex;flex-direction:column;gap:12px}.feedback-list{margin-top:10px;max-height:300px;overflow-y:auto}.feedback-item{align-self:stretch;background-color:var(--gray-2);border-left:4px solid var(--gray-4);border-radius:4px;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;padding:10px;transition:transform .2s,box-shadow .2s,background-color .2s}.feedback-item:hover{background-color:var(--gray-3);box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.feedback-item:not(.active) .x-modal-button{display:none}.feedback-item.active{background-color:#e0f3ff;box-shadow:0 2px 6px #00000026}.feedback-type{color:var(--gray-8);font-size:.8rem;font-weight:600;margin-bottom:3px;text-transform:uppercase}.feedback-text{color:var(--gray-10)}.feedback-selection{font-size:.85rem;font-style:italic;margin-top:8px}.feedback-label{color:var(--gray-7)}.feedback-selection-text{color:var(--gray-9)}.feedback-loading,.no-feedback{color:var(--gray-6);font-style:italic;padding:10px;text-align:center}.feedback-item.grammar{border-left-color:#ff5757b3}.feedback-item.spelling{border-left-color:#ffc107b3}.feedback-item.vocabulary{border-left-color:#2196f3b3}.feedback-item.punctuation{border-left-color:#9c27b0b3}.feedback-item.style{border-left-color:#009688b3}.feedback-item.clarity{border-left-color:#4caf50b3}.feedback-item.coherence{border-left-color:#795548b3}.feedback-item.organization{border-left-color:#3f51b5b3}.feedback-item.format{border-left-color:#607d8bb3}.feedback-item.tone{border-left-color:#e91e63b3}.feedback-item.other{border-left-color:#6b7280b3}.feedback-item.private{border-left-color:#1f2937b3}.feedback-item.purpose{border-left-color:#10b981b3}.feedback-item.fluency{border-left-color:#0ea5e9b3}.feedback-item.pronunciation{border-left-color:#f43f5eb3}.feedback-text blockquote.feedback-tag-content{border-radius:3px;display:inline;font-style:normal;font-weight:500;margin:0;padding:2px 6px}.feedback-text blockquote.feedback-tag-content.insertion{background-color:#22c55e33;border-left:2px solid #22c55e;color:#15803d}.feedback-text blockquote.feedback-tag-content.deletion{background-color:#ef444426;border-left:2px solid #ef4444;color:#b91c1c}.book-catalog-content{align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;display:flex;flex:1 1 auto;flex-direction:column;gap:45px;min-width:100%;overflow-y:auto;padding:0 0 35px}.book-catalog-content .tab-headers{margin-left:0;margin-right:0;width:100%}.modal-content .app-page-content{max-height:65vh;max-width:75vw}.modal-content .book-catalog-content{width:58vw}@media screen and (max-width:600px){.book-catalog-content{gap:20px}}.tab-headers{align-self:stretch;border-bottom:2px solid var(--gray-2);display:flex;margin-left:10%;margin-right:10%;padding:0;width:80%}.tab-header-label{background-color:var(--gray-1);border-right:1px solid #ccc;cursor:pointer;flex:1 1;list-style:none;padding:10px;text-align:center;transition:background-color .3s}.tab-header-label:last-child{border-right:none}.tab-header-label:hover{background-color:#e2e2e2}.tab-header-label.active-label{background-color:var(--gray-2);font-weight:700;position:relative;top:1px}.form-contents.add-student{justify-content:center;justify-items:center}.classroom-list,.form-contents.add-student{align-items:center;align-self:stretch;display:flex;flex-direction:column}.classroom-list{background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;flex:1 0;gap:10px;height:100%;max-height:100%;overflow-y:auto;padding:24px}@media screen and (max-width:600px){.classroom-list{padding:5px}}.collapsible-word-list{background:#fff;border-radius:0 0 8px 8px;bottom:0;box-shadow:0 -2px 4px #0000001a;left:0;position:absolute;right:0;transition:all .3s ease;z-index:1000}.collapsible-header{align-items:center;background:var(--light-green);color:var(--dark-green);cursor:pointer;display:flex;justify-content:space-between;padding:.5rem 1rem}.collapsible-header:hover{background:var(--medium-green)}.collapsible-content{background:#fff;border-top:1px solid var(--light-green);max-height:200px;overflow-y:auto;padding:1rem}.game-modal{padding-bottom:3rem}.flgm-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.flgm-modal{background:#fff;border-radius:8px;font-family:sans-serif;max-height:min(400px,70vh);max-width:min(500px,100vw);padding:24px;position:relative;text-align:center;width:90%}.flgm-close{background:none;border:none;cursor:pointer;font-size:20px;position:absolute;right:8px;top:8px}.flgm-score{font-size:1.2rem;font-weight:700;margin-bottom:1rem}.flgm-display{cursor:text;flex-wrap:nowrap;gap:.5rem;margin:1rem 0;min-height:3.5rem;overflow-x:hidden;position:relative;width:100%}.flgm-display,.flgm-display span{display:flex;justify-content:center}.flgm-display span{align-items:center;background:#f0f0f0;border:2px solid #ddd;border-radius:8px;font-size:1.5rem;font-weight:700;height:3rem;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:3rem}.flgm-blank{background:#f5f5f5;border:2px dashed #ddd;color:#666}.flgm-gameover{align-items:center;align-self:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;text-align:center}.flgm-instructions{color:#666;font-size:.9rem;margin:.5rem 0;text-align:center}.flgm-used-words{display:none}@media (max-width:768px){.flgm-display{padding:0 .5rem}.flgm-display span{font-size:1.3rem;height:2.5rem;width:2.5rem}}@media (max-width:300px){.flgm-display span{font-size:1.1rem;height:2rem;width:2rem}}.game-modal.word-snake{align-items:center;justify-content:start;padding-bottom:3rem}.flgm-input{border:0;height:0;margin:0;opacity:0;padding:0;pointer-events:none;position:absolute;width:0}.game-overlay{background-color:#00000080;bottom:0;left:0;position:fixed;right:0;top:0}.game-modal,.game-overlay{align-items:center;display:flex;justify-content:center;z-index:2000}.game-modal{background:var(--gray-1);border-radius:8px;flex-direction:column;gap:1rem;height:min(600px,95vh);padding:2rem;position:relative;width:min(800px,95vw)}.game-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;position:absolute;right:1rem;top:1rem}.game-close:hover{color:#333}.item-card{align-items:center;align-self:stretch;background:var(--dark-green);border-radius:6px;color:var(--pure-white);display:flex;flex-direction:row;gap:10px;justify-content:space-between;padding:12px;text-align:center}.game-modal.word-builder{align-items:center;justify-content:start}.wbg-stats{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.wbg-score,.wbg-timer{font-size:1.2rem;font-weight:700}.wbg-letters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.wbg-letter,.wbg-letters{display:flex;justify-content:center}.wbg-letter{align-items:center;background:#f0f0f0;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-size:1.5rem;font-weight:700;height:3rem;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:3rem}.wbg-letter:hover{background:#e0e0e0;transform:translateY(-2px)}.wbg-letter.used{background:#e8f5e9;border-color:#81c784;color:#2e7d32}.wbg-letter.in-use{background:#e3f2fd;border-color:#64b5f6;color:#1976d2}.wbg-current-word{flex-wrap:nowrap;gap:.5rem;margin:1rem 0;min-height:3.5rem;overflow-x:hidden;width:100%}.wbg-current-word,.wbg-letter-slot{display:flex;justify-content:center}.wbg-letter-slot{align-items:center;background:#f5f5f5;border:2px dashed #ddd;border-radius:8px;color:#666;flex:1 1;font-size:1.5rem;font-weight:700;height:3rem;max-width:3rem;min-width:1.5rem;transition:all .2s ease}.wbg-letter-slot.active{background:#e3f2fd;border-color:#64b5f6}.letter-count-5 .wbg-letter-slot{font-size:1.3rem}.letter-count-6 .wbg-letter-slot{font-size:1.2rem}.letter-count-7 .wbg-letter-slot{font-size:1.1rem}.letter-count-8 .wbg-letter-slot{font-size:1rem}.letter-count-9 .wbg-letter-slot{font-size:.9rem}.letter-count-10 .wbg-letter-slot{font-size:.8rem}.wbg-error{color:#d32f2f;margin:.5rem 0;min-height:1.5rem;text-align:center}.wbg-controls{display:flex;justify-content:center;margin:1rem 0}.wbg-used-words{display:flex;flex:1 1;flex-direction:column;margin-top:1rem;min-height:0;width:100%}.wbg-used-words h3{color:#666;font-size:1.1rem;margin:0 0 .5rem}.wbg-word-list{align-self:stretch;background:#f5f5f5;border-radius:8px;display:flex;flex:1 1;flex-wrap:wrap;gap:.5rem;max-height:150px;overflow-y:auto;padding:.5rem;width:100%}.wbg-word-list span{background:#fff;border:1px solid #ddd;border-radius:16px;color:#666;font-size:.9rem;padding:.25rem .75rem}.wbg-instructions{color:#666;font-size:.9rem;margin:.5rem 0;text-align:center}.wbg-gameover{align-items:center;align-self:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;text-align:center}.wbg-word-list::-webkit-scrollbar{width:8px}.wbg-word-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.wbg-word-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.wbg-word-list::-webkit-scrollbar-thumb:hover{background:#666}.wbg-letter-controls{align-items:center;display:flex;gap:.5rem}.wbg-control-button{background:none;border:none;border-radius:4px;color:var(--dark-green);cursor:pointer;padding:.5rem;transition:all .2s ease}.wbg-control-button:hover{background:#0064001a;transform:translateY(-1px)}.wbg-control-button:active{transform:translateY(0)}.floating-score{font-size:1.2rem;font-weight:700;pointer-events:none;position:fixed;text-shadow:0 0 2px #fffc;z-index:2000}.floating-score:not(.negative){animation:float-up 1s ease-out forwards;color:var(--dark-green)}.floating-score.negative{animation:float-down 1s ease-out forwards;color:var(--dark-pink)}@keyframes float-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-50px)}}@keyframes float-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(50px)}}@media (max-width:768px){.wbg-current-word{padding:0 .5rem}.wbg-letter-slot{height:2.5rem;min-width:1.2rem}.letter-count-5 .wbg-letter-slot{font-size:1.1rem}.letter-count-6 .wbg-letter-slot{font-size:1rem}.letter-count-7 .wbg-letter-slot{font-size:.9rem}.letter-count-8 .wbg-letter-slot{font-size:.8rem}.letter-count-9 .wbg-letter-slot{font-size:.7rem}.letter-count-10 .wbg-letter-slot{font-size:.6rem}}@media (max-width:300px){.wbg-letter-slot{font-size:clamp(.6rem,1.2vw,.9rem);height:2rem;min-width:1rem}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.wbg-current-word.invalid{animation:shake .5s ease-in-out}.wbg-current-word.invalid .wbg-letter-slot{background-color:#ff00001a;border-color:#ff00004d}.game-container{color:#141414;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;margin:16px auto;min-width:min(900px,95vw);width:min(900px,95vw)}.game-area{background:linear-gradient(#f8fafc,#eef2ff);border:1px solid #e5e7eb;border-radius:16px;height:480px;overflow:hidden;position:relative;width:100%}.assignment-details-container{align-items:flex-start;align-self:stretch;border-radius:12px;display:flex;flex:1 0;flex-direction:column;gap:12px;justify-content:center;padding:5px}.assignment-details-container hr{background:var(--gray-3);height:1px;width:250px}.assignment-detail-header{align-self:stretch;color:var(--dark-green);display:flex;flex-direction:row;justify-content:space-between}.assignment-details-list{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column;gap:4px;justify-content:center;padding-top:8px}.assignment-detail{align-items:center;align-self:stretch;border-bottom:1px solid var(--gray-3);color:var(--gray-9);display:flex;flex-direction:row;gap:12px;justify-content:space-between}.assignment-detail b{font-size:14px;letter-spacing:.56px;line-height:150%}.autopilot-calendar-view{display:flex;flex-direction:column;gap:12px;margin-top:12px;width:100%}.calendar-header{align-items:center;display:flex;justify-content:space-between;padding:8px 4px}.calendar-title{color:var(--gray-7);font-size:.9rem;font-weight:600}.calendar-nav-btn{align-items:center;background:var(--pure-white);border:1.5px solid var(--gray-3);border-radius:6px;color:var(--gray-6);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.calendar-nav-btn:hover{background:#447d000d;border-color:var(--dark-green);color:var(--dark-green)}.calendar-timeline-container{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:10px;overflow-x:auto;overflow-y:visible;scrollbar-color:var(--gray-4) #0000;scrollbar-width:thin}.calendar-timeline-container::-webkit-scrollbar{height:8px}.calendar-timeline-container::-webkit-scrollbar-track{background:var(--gray-1);border-radius:4px}.calendar-timeline-container::-webkit-scrollbar-thumb{background:var(--gray-4);border-radius:4px}.calendar-timeline-container::-webkit-scrollbar-thumb:hover{background:var(--gray-5)}.calendar-timeline{min-height:140px;padding-bottom:16px;position:relative}.timeline-weeks{background:var(--gray-1);border-bottom:1px solid var(--gray-3);display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:20}.timeline-week-header{border-right:1px solid var(--gray-2);min-width:120px;padding:10px 8px;text-align:center;width:120px}.timeline-week-header:last-child{border-right:none}.week-date{color:var(--gray-7);font-size:.8rem;font-weight:600}.timeline-grid{bottom:0;display:flex;left:0;pointer-events:none;position:absolute;right:0;top:41px}.timeline-grid-line{border-right:1px dashed var(--gray-2);min-width:120px;width:120px}.timeline-grid-line:last-child{border-right:none}.timeline-topics{min-height:80px;padding:12px 4px;position:relative}.timeline-empty{align-items:center;color:var(--gray-5);display:flex;font-size:.9rem;font-style:italic;justify-content:center;min-height:60px}.timeline-topic{align-items:center;border:2px solid;border-radius:8px;cursor:grab;display:flex;gap:8px;height:56px;overflow:hidden;padding:8px 12px;position:absolute;top:12px;transition:transform .1s ease,box-shadow .15s ease;-webkit-user-select:none;user-select:none}.timeline-topic:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.timeline-topic:active{cursor:grabbing}.timeline-topic.dragging{cursor:grabbing;opacity:.4}.timeline-topic.preview{border-style:dashed;pointer-events:none}.timeline-topic.has-errors{background:#ff634726!important;border-color:var(--dark-pink)!important}.topic-order-badge{align-items:center;background:#0000001a;border-radius:4px;display:flex;flex-shrink:0;font-size:.7rem;font-weight:700;height:20px;justify-content:center;min-width:24px;padding:0 6px}.topic-name{flex:1 1;font-size:.85rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-duration{flex-shrink:0;font-size:.75rem;font-weight:500;opacity:.8}.topic-override{background:#0000001a;border-radius:3px;flex-shrink:0;font-size:.7rem;font-weight:600;padding:2px 6px}.calendar-edit-overlay{align-items:center;animation:fadeIn .15s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.calendar-edit-modal{animation:slideUp .2s ease;background:var(--pure-white);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:420px;overflow:hidden;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.edit-modal-header{align-items:center;background:linear-gradient(135deg,#447d001a,#fff);border-bottom:1px solid var(--gray-3);display:flex;justify-content:space-between;padding:16px 20px}.edit-modal-header h3{color:var(--dark-green);font-size:1.1rem;font-weight:600;margin:0}.edit-modal-close{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--gray-5);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.edit-modal-close:hover{background:var(--gray-2);color:var(--gray-8)}.edit-modal-body{gap:16px;padding:20px}.edit-field,.edit-modal-body{display:flex;flex-direction:column}.edit-field{gap:6px}.edit-field label{align-items:center;color:var(--gray-7);display:flex;font-size:.85rem;font-weight:500;gap:6px}.edit-field .field-icon{color:var(--gray-5);font-size:.8rem}.edit-field input{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:8px;color:var(--gray-10);font-size:.95rem;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.edit-field input:hover{border-color:var(--gray-4)}.edit-field input:focus{border-color:var(--dark-green);box-shadow:0 0 0 3px #447d001a;outline:none}.edit-field input.invalid{background:#ff634708;border-color:var(--dark-pink)}.edit-field .field-hint,.edit-field input::placeholder{color:var(--gray-5);font-style:italic}.edit-field .field-hint{font-size:.8rem}.edit-field .field-error{align-items:center;color:var(--dark-pink);display:flex;font-size:.8rem;gap:5px}.edit-field .field-error svg{font-size:.8rem}.edit-modal-footer{background:var(--gray-1);border-top:1px solid var(--gray-3);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.edit-btn-cancel{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:8px;color:var(--gray-7);cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 18px;transition:all .15s ease}.edit-btn-cancel:hover{background:var(--gray-1);border-color:var(--gray-5)}.edit-btn-save{align-items:center;background:var(--dark-green);border:2px solid var(--dark-green);border-radius:8px;color:var(--pure-white);cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 18px;transition:all .15s ease}.edit-btn-save:hover:not(:disabled){background:var(--dark-green-hover);border-color:var(--dark-green-hover)}.edit-btn-save:disabled{background:var(--gray-4);border-color:var(--gray-4);cursor:not-allowed;opacity:.7}.calendar-hint{padding:4px;text-align:center}.calendar-hint span{color:var(--gray-5);font-size:.8rem;font-style:italic}@media screen and (max-width:500px){.calendar-edit-modal{max-height:90vh;overflow-y:auto;width:95%}.edit-modal-body{gap:14px;padding:16px}.edit-modal-footer{flex-direction:column}.edit-btn-cancel,.edit-btn-save{justify-content:center;width:100%}}.autopilot-config-editor{background:linear-gradient(135deg,#447d0014,#fffffff2);border:2px solid #447d0066;border-radius:12px;display:flex;flex-direction:column;gap:16px;margin-top:8px;padding:16px;width:100%}.autopilot-header{border-bottom:1px solid #447d004d;justify-content:space-between;padding-bottom:8px}.autopilot-header,.autopilot-header-left{align-items:center;display:flex;gap:10px}.autopilot-icon{color:var(--dark-green);font-size:1.2rem}.autopilot-header .label-normal{color:var(--dark-green);font-weight:600}.view-toggle{background:var(--gray-2);border-radius:8px;display:flex;gap:4px;padding:4px}.view-toggle-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--gray-6);cursor:pointer;display:flex;font-size:.8rem;font-weight:500;gap:6px;padding:6px 12px;transition:all .15s ease}.view-toggle-btn:hover:not(.active){background:#ffffff80;color:var(--gray-8)}.view-toggle-btn.active{background:var(--pure-white);box-shadow:0 1px 3px #0000001a;color:var(--dark-green)}.view-toggle-btn svg{font-size:.85rem}.autopilot-field{display:flex;flex-direction:column;gap:8px}.autopilot-field .label-small{align-items:center;color:var(--gray-8);display:flex;font-weight:500;gap:6px}.autopilot-field .field-icon{color:var(--gray-6);font-size:.85rem}.autopilot-field input[type=date],.autopilot-field input[type=number],.autopilot-field input[type=text]{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:8px;color:var(--gray-10);font-size:.95rem;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.autopilot-field input:hover{border-color:var(--gray-5)}.autopilot-field input:focus{border-color:var(--dark-green);box-shadow:0 0 0 3px #0080001a;outline:none}.autopilot-field input.invalid{background:#ff634708;border-color:var(--dark-pink)}.autopilot-field input.invalid:focus{box-shadow:0 0 0 3px #ff63471a}.autopilot-field input.calculated-field{background:var(--gray-1);color:var(--gray-7);cursor:not-allowed}.autopilot-field .field-hint{color:var(--gray-6);font-size:.8rem;font-style:italic}.autopilot-field .field-error{align-items:center;color:var(--dark-pink);display:flex;font-size:.85rem;gap:6px}.autopilot-field .field-error svg{font-size:.9rem}.topics-input-container{display:flex;gap:8px}.topics-input-container input{flex:1 1}.add-topic-btn{align-items:center;background:var(--dark-green);border:2px solid var(--dark-green);border-radius:8px;color:var(--pure-white);cursor:pointer;display:flex;height:42px;justify-content:center;transition:all .15s ease;width:42px}.add-topic-btn:hover:not(:disabled){background:var(--dark-green-hover);border-color:var(--dark-green-hover);transform:scale(1.05)}.add-topic-btn:disabled{background:var(--gray-4);border-color:var(--gray-4);cursor:not-allowed;opacity:.6}.topics-list{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:8px;gap:8px;min-height:50px;padding:12px}.topic-card,.topics-list{display:flex;flex-direction:column}.topic-card{background:linear-gradient(135deg,var(--pure-white) 0,var(--gray-1) 100%);border:2px solid var(--gray-3);border-radius:10px;cursor:grab;overflow:hidden;transition:all .15s ease;-webkit-user-select:none;user-select:none}.topic-card:hover{border-color:var(--dark-green);box-shadow:0 2px 12px #00000014}.topic-card:active{cursor:grabbing}.topic-card.dragging{opacity:.5;transform:scale(.98)}.topic-card.drag-over,.topic-card.dragging{background:#447d001a;border-color:var(--dark-green)}.topic-card.drag-over{border-style:dashed}.topic-card.has-errors{background:linear-gradient(135deg,#ff634708 0,var(--gray-1) 100%);border-color:var(--dark-pink)}.topic-card-header{align-items:center;cursor:pointer;display:flex;gap:10px;padding:12px;transition:background-color .15s ease}.topic-card-header:hover{background:#447d000d}.drag-handle{align-items:center;border-radius:4px;color:var(--gray-5);cursor:grab;display:flex;justify-content:center;padding:4px;transition:color .15s ease}.drag-handle:hover{background:var(--gray-2);color:var(--gray-7)}.topic-card:active .drag-handle{cursor:grabbing}.topic-order{align-items:center;background:var(--dark-green);border-radius:6px;color:var(--pure-white);display:flex;font-size:.75rem;font-weight:700;justify-content:center;min-width:32px;padding:4px 8px}.topic-name-display{color:var(--gray-9);flex:1 1;font-size:.95rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-name-placeholder{color:var(--gray-5);font-style:italic;font-weight:400}.topic-summary{align-items:center;display:flex;flex-shrink:0;gap:8px}.topic-date-badge,.topic-override-badge,.topic-weeks-badge{align-items:center;background:var(--gray-2);border-radius:4px;color:var(--gray-7);display:flex;font-size:.75rem;font-weight:500;gap:4px;padding:4px 8px;white-space:nowrap}.topic-date-badge svg,.topic-weeks-badge svg{color:var(--gray-5);font-size:.7rem}.topic-override-badge{background:var(--light-blue);color:var(--dark-blue)}.topic-expand-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--gray-5);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s ease;width:28px}.topic-expand-btn:hover{background:var(--gray-2);color:var(--gray-8)}.remove-topic-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--gray-5);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s ease;width:28px}.remove-topic-btn:hover{background:var(--dark-pink);color:var(--pure-white);transform:scale(1.1)}.topic-card-details{grid-gap:12px;animation:slideDown .2s ease-out;background:var(--gray-1);border-top:1px solid var(--gray-3);display:grid;gap:12px;grid-template-columns:repeat(2,1fr);padding:12px 16px 16px}.topic-field{display:flex;flex-direction:column;gap:4px}.topic-field:first-child{grid-column:1/-1}.topic-field label{align-items:center;color:var(--gray-7);display:flex;font-size:.8rem;font-weight:500;gap:4px}.topic-field .field-icon{color:var(--gray-5);font-size:.75rem}.topic-field input{background:var(--pure-white);border:1.5px solid var(--gray-3);border-radius:6px;color:var(--gray-10);font-size:.9rem;padding:8px 10px;transition:border-color .15s ease,box-shadow .15s ease}.topic-field input:hover{border-color:var(--gray-4)}.topic-field input:focus{border-color:var(--dark-green);box-shadow:0 0 0 2px #00800014;outline:none}.topic-field input.invalid{background:#ff634705;border-color:var(--dark-pink)}.topic-field .field-hint,.topic-field input::placeholder{color:var(--gray-5);font-style:italic}.topic-field .field-hint{font-size:.75rem}.topic-field .field-error{align-items:center;color:var(--dark-pink);display:flex;font-size:.75rem;gap:4px}.topic-field .field-error svg{font-size:.75rem}.no-topics-hint{color:var(--gray-5);font-size:.9rem;font-style:italic;padding:8px 4px;text-align:center}@keyframes topicAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.topic-card{animation:topicAppear .2s ease-out}@media screen and (max-width:700px){.topic-card-details{grid-template-columns:1fr}.topic-field:first-child{grid-column:1}.topic-summary{display:none}}@media screen and (max-width:600px){.autopilot-header{align-items:flex-start;flex-direction:column;gap:12px}.view-toggle{width:100%}.view-toggle-btn{flex:1 1;justify-content:center}}@media screen and (max-width:500px){.autopilot-config-editor{gap:12px;padding:12px}.topics-input-container{flex-direction:column}.add-topic-btn{height:38px;width:100%}.topic-card-header{gap:8px;padding:10px}.topic-order{font-size:.7rem;min-width:28px;padding:3px 6px}.topic-name-display{font-size:.9rem}.drag-handle{display:none}.topic-card-details{gap:10px;padding:10px 12px 14px}.topic-field input{font-size:.85rem;padding:8px}.view-toggle-btn span{display:none}.view-toggle-btn{padding:8px 16px}}.login-page{background:var(--pure-white);height:100vh;min-height:-webkit-fit-content;min-height:fit-content;width:100vw}.login,.login-page{align-items:center;display:flex;flex-direction:column}.login{background:var(--gray-1);border-radius:24px;box-shadow:0 20px 60px 0 #524b4933;gap:24px;height:650px;justify-content:center;left:50%;max-height:min(100vh,-webkit-fit-content);max-height:min(100vh,fit-content);max-width:min(100vw,480px);min-height:min(-webkit-fit-content,600px);min-height:min(fit-content,600px);padding:12px;position:absolute;top:50%;transform:translate(-50%,-50%);width:480px}.login img{max-width:114px}.login-title{border-bottom:.5px solid var(--gray-7);padding-bottom:10px;text-align:center}.login-content{align-self:center;gap:24px;max-height:100%;min-width:-webkit-fit-content;min-width:fit-content;overflow-y:auto;padding:0 18px;width:100%}.login-content,.login-footer{align-items:center;display:flex;flex-direction:column}.login-footer{gap:8px}@media screen and (max-width:600px){.login{gap:4vh;left:10px;margin:auto;position:absolute;top:10px;transform:none}.login .row input{max-width:35vw}}@media screen and (max-width:400px){.login{min-height:95vh;min-width:95vw}}.student-details{background:var(--gray-1);border-radius:12px;flex:1 0;flex-direction:column;gap:10px;max-height:60vh;overflow:auto;padding:6px;width:70vw}.student-details,.student-details-header{align-items:center;align-self:stretch;display:flex}.student-details-header{background:var(--dark-green);border-bottom:2px solid var(--gray-3);border-radius:12px 12px 0 0;color:#fff;gap:25px;min-height:-webkit-fit-content;min-height:fit-content;padding:12px 18px 12px 28px}.student-details-header select{background-color:initial;border:none;color:var(--pure-white);max-height:-webkit-fit-content;max-height:fit-content;max-width:-webkit-fit-content;max-width:fit-content}.student-details-content{align-self:stretch;overflow:auto}@media screen and (max-width:600px){.student-details{height:-webkit-fit-content;height:fit-content;max-width:100%;width:95vw}}.inline-value-editor{align-items:center;display:inline-flex;flex-direction:row;gap:10px}.inline-value-editor select{border:none;padding:0}.inline-value-editor select:focus-visible{outline:none}.inline-value-editor input{border:none;padding:0}.inline-value-editor input:focus-visible{outline:none}.inline-value-editor .buttons{display:inline-flex;flex-direction:row;gap:0}.inline-value-editor .editor{align-items:flex-start;display:inline-flex;flex-direction:column;gap:5px}.user-info-dropdown-row{align-self:stretch;border-bottom:1px solid var(--gray-7);display:flex;flex-direction:row;gap:10px;justify-content:space-between;padding:6px 9px}.user-info-dropdown-row:hover{background-color:var(--gray-2)}.user-display-name{align-items:flex-start;display:flex;flex-direction:column;gap:5px;max-width:75%}.user-info-dropdown-row .col{align-items:center}.user-info-dropdown-row input[type=number]{background-color:var(--pure-white);border:none!important;gap:0;margin:0;padding:0;width:40px}.user-info-dropdown-row input[type=number]:focus-visible{outline:none}.user-display-name select{max-width:80px;width:80px}.input-table-container{align-items:center;justify-content:center;max-height:68vh;max-width:100vw;overflow:auto;overflow-x:auto;width:100%}.input-table .action-buttons{align-items:center;justify-content:normal;justify-content:center;width:auto}.input-table{max-width:100%;overflow-x:auto;width:100%}.input-table th{background-color:#f2f2f2;border:1px solid var(--gray-4);color:#333;font-size:14px;padding:6px;text-align:left}.input-table td{border:1px solid var(--gray-4);font-size:12px;padding:0}.input-table tr:nth-child(2n){background-color:#f9f9f9}.input-table tr:hover{background-color:#f1f1f1}.input-table input[type=text]{border:none;border-radius:0}@media screen and (max-width:600px){.input-table-container input{width:90px}}.file-input{align-items:center;align-self:stretch;background:var(--pure-white);border-radius:12px;display:flex;gap:10px;height:-webkit-fit-content;height:fit-content;max-width:100%;min-width:-webkit-fit-content;min-width:fit-content;padding:5px}.file-input img{width:20px!important}.file-upload-button{align-items:center;background:var(--gray-2);border-bottom:1px solid #524b494d;border-radius:7px 4px 4px 7px;display:flex;gap:6px;height:52px;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 12px;width:100%}.file-upload-button:hover{cursor:pointer}input#file-upload{max-width:0;opacity:0}.file-input.inline{align-self:auto}.file-input.inline .file-upload-button{align-items:center;background:var(--gray-2);border:none;border-radius:4px;display:flex;height:-webkit-fit-content;height:fit-content;padding:6px;width:-webkit-fit-content;width:fit-content}.item-selector{display:flex;gap:20px;width:100%}.item-column{box-sizing:border-box;width:50%}.item-column-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.item-list{list-style:none;margin:0;padding:0}.form.assignment-type{max-width:100%;min-width:min(600px,95vw);width:min(600px,95vw)}.help-section{width:90%}.help-section img,.help-section video{width:100%}.sidebar-group .label-normal{color:#6b7280;display:block;font-weight:600;letter-spacing:.04em;margin-bottom:.5rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar-group .col ul,.sidebar-group nav ul{list-style:none;margin:0 0 1.25rem;padding:0}.sidebar-group li{margin:0;padding:0}.sidebar-group .label-small{border-radius:.5rem;color:#374151;cursor:pointer;display:block;font-weight:500;line-height:1.4;padding:.4rem .5rem;transition:background-color .12s ease,color .12s ease;-webkit-user-select:none;user-select:none}.sidebar-group .label-small:focus,.sidebar-group .label-small:hover{background-color:#f3f4f6;color:#111827}.sidebar-group .label-small[aria-current=true]{background-color:#eef2ff;border-left:3px solid #6366f1;color:#4338ca;font-weight:600;padding-left:.5rem}.sidebar-group{margin-bottom:.5rem;margin-top:1.5rem}.sidebar-group-title{align-items:center;color:#111827;display:flex;font-size:.75rem;font-weight:600;gap:.4rem;letter-spacing:0;margin-bottom:.5rem;text-transform:none;-webkit-user-select:none;user-select:none}.sidebar-divider{background-color:#e5e7eb;border:0;height:1px;margin:1rem 0}.sidebar-group::-webkit-scrollbar{width:6px}.sidebar-group::-webkit-scrollbar-track{background:#0000}.sidebar-group::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:999px}.sidebar-group::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.toc-root{list-style:none;margin:0;padding-left:0}.toc-section-header{align-items:flex-start;cursor:pointer;display:flex;gap:.5rem;padding:.25rem 0}.toc-section-header[aria-current=true],.toc-section-text[aria-current=true]{font-weight:600}.toc-children{list-style:none;margin:.25rem 0 .5rem;padding-left:1.5rem!important}.toc-child{cursor:pointer;padding:.15rem 0}.toc-child [aria-current=true]{font-weight:600;text-decoration:underline}

/*!
 * Quill Editor v2.0.3
 * https://quilljs.com
 * Copyright (c) 2017-2024, Slab
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;-o-tab-size:4;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre{margin:0;padding:0}@supports (counter-set:none){.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor p{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor p{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor li,.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"\2022"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"\2611"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"\2610"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor .ql-code-block-container,.ql-snow .ql-editor code{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.text-editor{align-self:stretch;display:flex;flex-direction:column;height:calc(100vh - 294px)}.quill{gap:15px;height:calc(100vh - 360px);width:100%}.ql-container,.quill{border-radius:12px;display:flex;flex-direction:column}.ql-container{align-items:stretch;background:var(--gray-1);border:2px solid var(--gray-2);flex:1 0;overflow:auto;padding:26px}.ql-editor{font-family:Poppins;font-size:20px;font-style:normal;font-weight:500;height:100%;letter-spacing:.8px;line-height:250%;position:relative}.ql-editor.ql-blank:before{left:auto;right:auto}.ql-toolbar{align-items:flex-start;align-self:stretch;background:var(--gray-2);border-bottom:1px solid #524b494d;border-radius:12px;display:flex;gap:15px;padding:15px 26px}.ql-toolbar .ql-generateButton{align-items:center!important;background:linear-gradient(135deg,#4c1d95,#7c3aed 50%,#a78bfa)!important;border:0!important;border-radius:10px!important;box-shadow:0 1px 2px #0000001f,inset 0 0 0 1px #ffffff0f!important;color:#fff!important;cursor:pointer!important;display:inline-flex!important;height:24px!important;justify-content:center!important;transition:transform .08s ease,box-shadow .2s ease,filter .2s ease!important;width:24px!important}.ql-toolbar .ql-formats .ql-generateButton{margin:0 2px!important}.ql-toolbar .ql-generateButton svg{height:18px!important;pointer-events:none!important;width:18px!important}.ql-toolbar .ql-generateButton svg *{fill:currentColor!important}.ql-toolbar .ql-generateButton:hover{box-shadow:0 2px 8px #7c3aed40,inset 0 0 0 1px #ffffff1a!important;filter:brightness(1.04)!important;transform:scale(1.05)!important}.ql-toolbar .ql-generateButton:active{transform:scale(1.05)!important}.ql-toolbar .ql-generateButton:focus-visible{box-shadow:0 0 0 3px #818cf84d,0 1px 2px #0006,inset 0 0 0 1px #ffffff80!important;outline:none!important}.ql-disabled .ql-toolbar .ql-generateButton,.ql-toolbar .ql-generateButton[disabled]{cursor:not-allowed!important;opacity:.6!important}.question-editor{align-items:center;background:var(--gray-1);border-radius:12px;display:flex;flex:1 0;flex-direction:column;gap:20px;max-height:80vh;max-width:80vw;min-height:80vh;min-width:80vw;overflow-y:scroll;padding:12px 12px 35px}.multiple-choice-options-default,.multiple-choice-options-visual{align-self:stretch;display:flex;flex-direction:column;gap:10px}.multiple-choice-option{align-items:center;align-self:center;display:inline-flex;flex:1 1;flex-direction:row;gap:30px;justify-content:space-between;max-width:100%;width:100%}.multiple-choice-option .action-buttions{max-width:-webkit-fit-content;max-width:fit-content;min-width:-webkit-fit-content;min-width:fit-content}.multiple-choice-option input[type=text]{flex-grow:1}.multiple-choice-option textarea{display:flex;flex:1 1;width:90%}.multiple-choice-option input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--pure-white);border:2px solid var(--gray-7);border-radius:10px;cursor:pointer;height:20px;width:20px}.multiple-choice-img{background-color:var(--gray-2);border:2px solid var(--gray-7);border-radius:6px;display:flex;height:100px;justify-content:center;overflow:hidden;padding:6px;width:100px}.multiple-choice-img img{height:auto;width:80%}.multi-part-assignment-component{align-items:center;display:flex;flex-direction:column;gap:5%;height:100%;width:100%}.multi-part-assignment-component textarea{height:100%;width:100%}.question-icon{align-items:center;background:var(--dark-green);border-radius:6px;color:var(--pure-white);display:flex;gap:2px;height:30px;justify-content:flex-start;padding:8px;text-align:center;white-space:nowrap;width:-webkit-fit-content;width:fit-content}.video-import-panel{max-height:95vh;max-width:95vw;width:90%}.video-import-panel .import-area{display:flex;flex-direction:column;gap:12px}.video-import-panel .import-box{border:2px dashed #ccc;border-radius:12px;cursor:pointer;padding:30px;text-align:center;transition:background .2s ease}.video-import-panel .import-box:hover{background:#fafafa}.import-subtext{color:#666;font-size:12px;margin-top:6px}.video-source-toggle{background:#f3f4f6;border-radius:10px;display:flex;gap:8px;padding:4px;width:-webkit-fit-content;width:fit-content}.video-source-toggle .source-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.video-source-toggle .source-btn:hover{background:#ffffff80}.video-source-toggle .source-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#111827}.video-source-toggle .source-icon{font-size:12px}.video-preview-area{width:100%}.preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.current-source-badge{align-items:center;background:#f3f4f6;border-radius:6px;color:#374151;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.change-video-btn{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;padding:8px 14px;transition:all .15s ease}.change-video-btn:hover{background:#f9fafb;border-color:#d1d5db}.video-preview{width:100%}.video-preview iframe{border:none;border-radius:8px;width:100%}.video-modal-overlay{background:#00000073;display:grid;inset:0;padding:12px;place-items:center;position:fixed;z-index:1000}.video-modal{background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000040;display:flex;flex-direction:column;overflow:hidden;width:min(1100px,95vw)}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.modal-header h3{font-size:18px;font-weight:700}.close-button{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:8px 12px}.modal-body{display:grid;grid-template-columns:1fr;max-height:85%;max-width:100%;overflow:auto;width:100%}.modal-body.with-preview{grid-template-columns:1fr 1.15fr}.results-section{border-right:1px solid #f2f2f2;padding:16px;width:100%}.search-bar{display:flex;gap:8px;margin-bottom:12px}.search-bar input{border:1px solid #e5e7eb;border-radius:10px;flex:1 1;font-size:14px;padding:10px 12px}.search-bar button{background:#111827;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;padding:10px 14px}.search-bar button:disabled{cursor:not-allowed;opacity:.6}.error-text{color:#b91c1c;font-size:13px;margin-bottom:8px}.results-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.result-item{background:#fff;border:1px solid #eee;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:8px;text-align:left;transition:box-shadow .15s ease,transform .15s ease}.result-item:hover{box-shadow:0 6px 18px #0000000f;transform:translateY(-1px)}.result-item img{border-radius:8px;width:100%}.result-title{font-size:14px;font-weight:600;line-height:1.3}.result-channel{color:#6b7280;font-size:12px}.pagination{align-items:center;display:flex;justify-content:space-between;margin-top:12px}.pagination button{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:8px 12px}.pagination button:disabled{cursor:not-allowed;opacity:.5}.preview-section{display:flex;flex-direction:column;gap:12px;max-height:100%;padding:16px}.video-player{aspect-ratio:16/9;width:100%}.video-player iframe{background:#000;border:0;border-radius:12px;height:100%;width:100%}.preview-details h4{font-size:16px;font-weight:700}.preview-meta{color:#6b7280;font-size:13px}.preview-description{background:#f9fafb;border:1px solid #f3f4f6;border-radius:10px;color:#374151;font-size:13px;padding:10px;white-space:pre-wrap}.preview-actions{display:flex;gap:8px}.preview-actions button{background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;padding:10px 14px}.preview-actions .use-video{background:#065f46;background:var(--dark-green,#065f46);border:none;color:#fff}.pbs-section{display:flex;flex-direction:column;gap:20px}.pbs-instructions{background:linear-gradient(135deg,#f0f7ff,#e8f4fd);border:1px solid #d0e8ff;border-radius:12px;padding:20px}.pbs-instructions h4{color:#1e40af;font-size:15px;margin:0 0 12px}.pbs-instructions ol{color:#374151;font-size:14px;line-height:1.8;margin:0 0 16px;padding-left:20px}.pbs-instructions li{margin-bottom:4px}.pbs-url-input{display:flex;flex-direction:column;gap:8px}.pbs-url-input label{color:#374151;font-size:14px;font-weight:600}.pbs-example{background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px}.pbs-example .example-label{color:#6b7280;font-size:12px;font-weight:500}.pbs-example code{color:#374151;font-size:12px}.pbs-example code,.pbs-url-display{font-family:SF Mono,Monaco,Cascadia Code,monospace;word-break:break-all}.pbs-url-display{font-size:12px!important}.pbs-preview-card{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:20px}.pbs-preview-card.large{align-items:center;flex-direction:column;padding:24px;text-align:center}.pbs-preview-card.large .pbs-preview-info{align-items:center;display:flex;flex-direction:column;gap:12px}.pbs-preview-icon{font-size:48px;line-height:1}.pbs-preview-info{flex:1 1;min-width:0}.pbs-preview-info h4{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 8px}.pbs-resource-id{color:#64748b;font-size:13px;margin-bottom:8px}.pbs-resource-id code{background:#e2e8f0;border-radius:4px;font-family:SF Mono,Monaco,Cascadia Code,monospace;padding:2px 6px}.pbs-verify-section{align-items:center;background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:16px}.pbs-verify-text{color:#92400e;font-size:13px;line-height:1.5;margin:0;text-align:center}.pbs-selected-preview{width:100%}.pbs-selected-preview .pbs-preview-card{justify-content:center;min-height:200px}.assignment-editor-title,.optional-book-details{align-items:center;align-self:stretch;display:flex;gap:15px;padding:12px 0 18px}.book-details-editor{display:flex;flex-direction:column;width:100%}.book-details-editor input{flex:1 0;height:52px}.optional-book-details select{height:52px}.book-details-editor input.title{font-size:26px;letter-spacing:.52px;line-height:140%}.book-details-editor input.normal,.optional-book-details select.normal{font-size:16px;letter-spacing:.64px;line-height:150%}.optional-book-details input.normal{height:52px}.assignment-editor-title img{height:48px;width:48px}.book-details-editor .file-input{height:52px}.assignment-sidebar-content{align-items:center;align-self:stretch;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:0 5px}.assignment-sidebar-content .file-upload-button{height:45px}.assignment-attribute-container{align-items:center;align-self:stretch;border-top:2px solid var(--gray-3);display:flex;flex-direction:column;gap:10px;padding-top:10px}.assignment-attribute-container .book-card-cover{display:block;margin:0 auto}.from-to{align-items:flex-start;align-self:stretch;border-radius:12px;display:flex;gap:12px;justify-content:center;padding:5px 0}.assignment-sidebar-content input[type=text],input[type=datetime-local],input[type=number]{font-size:14px;height:45px;letter-spacing:.56px;line-height:150%;min-height:45px;width:100%}.assignment-sidebar-content select{font-size:14px;letter-spacing:.56px;line-height:150%}.assignment-sidebar-content .app-button{align-self:stretch}.assignment-editor-actions{align-items:center;align-self:stretch;display:flex;gap:20px;justify-content:center;padding:12px 26px 0}input#book-cover-upload{max-width:0;opacity:0}.assignment-content-form{align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;color:var(--gray-10);display:flex;flex:1 0;flex-direction:column;gap:20px;height:100%;overflow-y:auto;padding:30px 40px;position:relative;width:100%}.progress-report-table{border:1px solid #ddd;width:100%}.progress-report-table th{background-color:#f2f2f2;color:#333;font-size:16px;padding:12px;text-align:left}.progress-report-table td{border-bottom:1px solid #ddd;font-size:14px;padding:12px}.progress-report-table tr:nth-child(2n){background-color:#f9f9f9}.progress-report-table tr:hover{background-color:#f1f1f1}@media screen and (max-width:600px){.progress-report-table table,.progress-report-table tbody,.progress-report-table td,.progress-report-table th,.progress-report-table thead,.progress-report-table tr{display:block}.progress-report-table th{left:-9999px;position:absolute;top:-9999px}.progress-report-table tr{border:1px solid #ccc}.progress-report-table td{border:none;border-bottom:1px solid #ddd;padding-left:50%;position:relative;text-align:right}.progress-report-table td:before{font-weight:700;left:6px;padding-right:10px;position:absolute;text-align:left;top:12px;white-space:nowrap;width:45%}.progress-report-table td:first-of-type:before{content:"Active"}.progress-report-table td:nth-of-type(2):before{content:"Name"}.progress-report-table td:nth-of-type(3):before{content:"Option"}}.graph-container{align-content:center;align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;display:flex;flex:1 0;flex-direction:column;gap:25px;height:100%;justify-content:center;max-height:100%;overflow-y:auto;position:relative;width:100%}.graph-container .labeled-input{align-items:center;align-self:auto;max-height:50px;max-width:180px;min-width:180px;width:40%}.graph-container .labeled-input input{align-self:auto;max-width:100px}.graph-container .labeled-input label{min-width:70px;width:40%}.bar-chart{align-self:stretch;display:flex;height:auto;overflow:auto;width:calc(100% - 20px)}.missed-words-table-container table th,td{border-collapse:collapse;font-size:20px;height:-webkit-fit-content;height:fit-content;table-layout:auto;width:-webkit-fit-content;width:fit-content}.missed-words-table{align-self:flex-start;border-collapse:collapse;border-radius:10px;font-size:20px;left:0;position:absolute;table-layout:fixed;top:0;width:100%}.missed-words-table tr{border-bottom:1px solid var(--gray-3)}.missed-words-table tbody{overflow-y:auto}.missed-words-table tr:first-child th:first-child{border-top-left-radius:10px}.missed-words-table tr:first-child th:last-child{border-top-right-radius:10px}.missed-words-table tr:last-child td:first-child{border-bottom-left-radius:10px}.missed-words-table tr:last-child td:last-child{border-bottom-right-radius:10px}.missed-words-table td{background:var(--gray-2);box-shadow:0 0 0 1pt var(--gray-2)}.missed-words-table th{background-color:var(--pure-white);box-shadow:0 0 0 1pt var(--gray-2)}.missed-words-table th,td{display:auto;font-size:32px;height:100%;max-width:-webkit-fit-content;max-width:fit-content;padding:8px;text-align:center;width:-webkit-fit-content;width:fit-content}.graph-container .student-insights{align-items:center;align-self:flex-start;border-collapse:collapse;border-radius:10px;display:flex;flex-direction:column;font-size:20px;left:0;position:absolute;table-layout:fixed;top:0;width:100%}.student-insights .missed-words-table{position:static;top:auto}.graph-container .tab-headers{background-color:#fff;border-bottom:1px solid #ddd;display:flex;justify-content:space-around;left:0;margin-left:0;margin-right:0;position:-webkit-sticky;position:sticky;right:0;top:0;width:100%;z-index:10}.graph-container canvas{min-height:100%;min-width:100%}.question-analytics-container{height:100%;position:relative;width:100%}.question-analytics-loading{align-items:center;display:flex;flex-direction:column;gap:15px;justify-content:center;padding:40px}.question-analytics-loading .loading-text{color:var(--gray-9);font-size:16px}.question-analytics-error{align-items:center;display:flex;flex-direction:column;gap:10px;justify-content:center;padding:30px;text-align:center}.question-analytics-error .error-message{color:var(--dark-pink);font-size:16px}.question-analytics-error .retry-button{background:var(--dark-pink);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:8px 16px}.question-analytics-error .retry-button:hover{opacity:.9}.question-analytics-empty{align-items:center;color:var(--gray-8);display:flex;flex-direction:column;gap:10px;justify-content:center;padding:40px}.question-analytics-empty .empty-message{font-size:16px}.missed-words-table .summary-row td{background:var(--gray-3);font-weight:600}.key-insights-container{box-sizing:border-box;overflow-y:auto;padding:24px;width:100%}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);width:100%}@media (max-width:1024px){.insights-grid{grid-template-columns:1fr}}.insight-card{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:12px;min-height:280px;padding:20px}.insight-header{align-items:center;display:flex;gap:12px}.insight-header h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:18px;font-weight:600;margin:0}.insight-icon{border-radius:8px;font-size:20px;padding:8px}.insight-icon.warning{background:#fff7ed;color:#c2410c}.insight-icon.success{background:#f0fdf4;color:#15803d}.insight-icon.info{background:#eff6ff;color:#1d4ed8}.insight-icon.skills{background:#f5f3ff;color:#7c3aed}.insight-description{color:#64748b;color:var(--text-secondary,#64748b);font-size:14px;line-height:1.4;margin:0}.insight-list{display:flex;flex:1 1;flex-direction:column;gap:8px}.insight-item{align-items:center;background:#f8fafc;background:var(--gray-1,#f8fafc);border-radius:10px;display:flex;gap:12px;padding:12px 14px;transition:background-color .15s ease,transform .15s ease}.insight-item:hover{background:#f1f5f9;background:var(--gray-2,#f1f5f9);transform:translateX(2px)}.rank{align-items:center;background:#e2e8f0;background:var(--gray-2,#e2e8f0);border-radius:50%;color:#64748b;color:var(--text-secondary,#64748b);display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.rank.trophy{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.item-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.item-name{color:#1e293b;color:var(--text-primary,#1e293b);font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-meta,.item-type{color:#94a3b8;color:var(--text-secondary,#94a3b8);font-size:12px}.item-grade{border-radius:20px;flex-shrink:0;font-size:15px;font-weight:700;padding:6px 12px}.grade-excellent{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534}.grade-good{background:linear-gradient(135deg,#fef9c3,#fef08a);color:#854d0e}.grade-needs-work{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#9a3412}.grade-struggling{background:linear-gradient(135deg,#fecaca,#fca5a5);color:#991b1b}.no-data{color:#94a3b8;color:var(--text-secondary,#94a3b8);font-size:14px;margin:0;padding:20px;text-align:center}.insights-empty-state{align-items:center;color:#64748b;color:var(--text-secondary,#64748b);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.insights-empty-state .empty-icon{color:#cbd5e1;color:var(--gray-3,#cbd5e1);font-size:48px;margin-bottom:20px}.insights-empty-state h3{color:#1e293b;color:var(--text-primary,#1e293b);font-size:20px;font-weight:600;margin:0 0 8px}.insights-empty-state p{font-size:15px;margin:0;max-width:300px}.struggling-assignments{border-top:3px solid #f97316}.struggling-students{border-top:3px solid #ef4444}.top-students{border-top:3px solid #22c55e}.assignment-types{border-top:3px solid #3b82f6}.skills-performance{border-top:3px solid #8b5cf6}.completion-stats{border-top:3px solid #0ea5e9}.insight-item.clickable{cursor:pointer}.insight-item.clickable:hover{background:#e2e8f0;background:var(--gray-2,#e2e8f0);transform:translateX(4px)}.insight-item.clickable:active{transform:translateX(2px)}.item-arrow{color:#94a3b8;color:var(--text-secondary,#94a3b8);flex-shrink:0;font-size:12px;opacity:0;transition:opacity .15s ease,transform .15s ease}.insight-item.clickable:hover .item-arrow{opacity:1;transform:translateX(2px)}.type-group{display:flex;flex-direction:column;gap:4px}.insight-item.expandable{cursor:pointer;-webkit-user-select:none;user-select:none}.insight-item.expandable:hover{background:#e2e8f0;background:var(--gray-2,#e2e8f0)}.expand-icon{font-size:10px;transition:transform .2s ease}.nested-assignments{animation:slideDown .2s ease-out;border-left:2px solid #e2e8f0;border-left:2px solid var(--gray-2,#e2e8f0);display:flex;flex-direction:column;gap:4px;margin-left:14px;padding-left:16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.insight-item.nested{background:#fff;background:var(--pure-white,#fff);border:1px solid #e2e8f0;border:1px solid var(--gray-2,#e2e8f0);padding:10px 12px}.insight-item.nested:hover{background:#f8fafc;background:var(--gray-1,#f8fafc);border-color:#cbd5e1;border-color:var(--gray-3,#cbd5e1)}.insight-item.nested .item-name{font-size:14px}.insight-item.nested .item-grade{font-size:13px;padding:4px 10px}.domain-indicator{border-radius:50%;display:inline-block;height:10px;margin-right:8px;vertical-align:middle;width:10px}.insight-item.criterion{background:#fff;background:var(--pure-white,#fff)}.item-score{border-radius:20px;flex-shrink:0;font-size:13px;font-weight:700;padding:4px 10px;white-space:nowrap}.advanced-analytics-container{background:var(--gray-1);border-radius:12px;display:flex;flex-direction:column;gap:1.5rem;height:100%;overflow-y:auto;padding:1.5rem;width:100%}.advanced-analytics-header{align-items:center;border-bottom:1px solid var(--gray-3);display:flex;flex-wrap:wrap;gap:1rem;padding-bottom:1rem}.advanced-analytics-header h2{color:var(--gray-9);flex:1 1;font-size:1.5rem;font-weight:600;margin:0}.advanced-analytics-header .header-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.advanced-analytics-header .header-info h2{margin:0}.advanced-analytics-header .assignment-title{color:var(--gray-6);font-size:.875rem}.back-button{align-items:center;background:var(--pure-white);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-7);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.back-button:hover{background:var(--gray-2);border-color:var(--gray-4)}.domain-selector{align-items:center;display:flex;gap:.5rem}.domain-selector label{color:var(--gray-6);font-size:.875rem;font-weight:500}.domain-selector select{background:var(--pure-white);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-8);cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.domain-badge{align-items:center;border-radius:9999px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem;text-transform:uppercase}.advanced-analytics-charts{display:flex;flex-direction:column;gap:2rem}.chart-section{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:12px;padding:1.5rem}.chart-section h3{color:var(--gray-8);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.chart-description{color:var(--gray-6);font-size:.875rem;margin:0 0 1rem}.chart-wrapper{height:300px;position:relative;width:100%}.chart-wrapper-large{height:400px}.analytics-summary{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:12px;padding:1.5rem}.analytics-summary h3{color:var(--gray-8);font-size:1.125rem;font-weight:600;margin:0 0 1rem}.summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.summary-card{background:var(--gray-1);border:1px solid var(--gray-2);border-radius:8px;padding:1rem}.summary-card h4{color:var(--gray-7);font-size:.875rem;font-weight:600;margin:0 0 .75rem}.score-display{align-items:baseline;display:flex;gap:.25rem;margin-bottom:.5rem}.score-value{color:var(--gray-9);font-size:2rem;font-weight:700}.score-max{color:var(--gray-5);font-size:1rem}.score-bar{background:var(--gray-2);border-radius:4px;height:8px;margin-bottom:.75rem;overflow:hidden}.score-bar-fill{border-radius:4px;height:100%;transition:width .3s ease}.summary-stats{display:flex;flex-direction:column;gap:.375rem}.stat{display:flex;font-size:.8125rem;justify-content:space-between}.stat-label{color:var(--gray-5)}.stat-value{color:var(--gray-7);font-weight:500}.stat.diff.positive .stat-value{color:#16a34a}.stat.diff.negative .stat-value{color:#dc2626}.loading-spinner,.no-data-message{align-items:center;color:var(--gray-5);display:flex;font-size:1rem;justify-content:center;padding:3rem}.no-data-message{text-align:center}.advanced-analytics-button{align-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;box-shadow:0 2px 4px #2563eb33;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.625rem 1.25rem;transition:all .2s ease}.advanced-analytics-button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 8px #2563eb4d;transform:translateY(-1px)}.advanced-analytics-button:disabled{background:var(--gray-4);box-shadow:none;cursor:not-allowed;transform:none}.advanced-analytics-button svg{height:16px;width:16px}.analytics-tab-actions{background:var(--gray-1);border-top:1px solid var(--gray-2);display:flex;justify-content:flex-end;padding:.75rem 1rem}.submission-skills-content{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;width:100%}.skills-header{align-items:center;border-bottom:1px solid var(--gray-3);display:flex;gap:1rem;justify-content:flex-start;padding-bottom:.5rem}.submission-comparison-content{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;width:100%}.submission-comparison-content .chart-section{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:12px;padding:1.5rem;width:100%}.grade-comparison-section{padding-bottom:1rem}.grade-comparison-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-top:1rem}.grade-comparison-card{align-items:center;background:var(--gray-1);border:1px solid var(--gray-2);border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:1.25rem 1rem;text-align:center}.grade-comparison-card .grade-label{color:var(--gray-6);font-size:.875rem;margin-bottom:.5rem}.grade-comparison-card .grade-value{color:var(--gray-9);font-size:1.75rem;font-weight:700}.grade-comparison-card.diff.positive .grade-value{color:#16a34a}.grade-comparison-card.diff.negative .grade-value{color:#dc2626}.not-completed-banner{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:10px;display:flex;gap:1rem;margin:1rem 1rem 0;padding:1rem 1.25rem}.not-completed-icon{font-size:1.75rem;line-height:1}.not-completed-text{display:flex;flex-direction:column;gap:.25rem}.not-completed-title{color:#92400e;font-size:1rem;font-weight:600}.not-completed-description{color:#b45309;font-size:.875rem}.submission-questions-content{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;width:100%}.questions-insights-header{border-bottom:1px solid var(--gray-3);padding-bottom:.5rem}.questions-insights-header h3{color:var(--gray-8);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.questions-insights-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));width:100%}.question-insight-card{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:10px;display:flex;flex-direction:column;gap:.75rem;padding:1rem}.question-insight-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.question-number{background:var(--gray-2);border-radius:6px;color:var(--gray-8);font-size:1rem;font-weight:700;padding:.25rem .5rem}.question-type-badge{background:var(--gray-1);border-radius:4px;color:var(--gray-6);font-size:.7rem;font-weight:500;letter-spacing:.03em;padding:.2rem .5rem;text-transform:uppercase}.question-text-preview{color:var(--gray-6);font-size:.8125rem;line-height:1.4;min-height:2.8em}.question-insight-scores{display:flex;flex-direction:column;gap:.5rem;margin-top:auto}.question-insight-scores .score-item{align-items:center;background:var(--gray-1);border-radius:6px;display:flex;justify-content:space-between;padding:.5rem .75rem}.question-insight-scores .score-item.class-avg{background:var(--gray-2)}.question-insight-scores .score-item.diff{background:var(--gray-1)}.question-insight-scores .score-item.diff.positive .score-value{color:#16a34a;font-weight:600}.question-insight-scores .score-item.diff.negative .score-value{color:#dc2626;font-weight:600}.question-insight-scores .score-item.correct{background:#dcfce7;border:1px solid #86efac}.question-insight-scores .score-item.correct .score-value{color:#16a34a;font-weight:600}.question-insight-scores .score-item.incorrect{background:#fee2e2;border:1px solid #fca5a5}.question-insight-scores .score-item.incorrect .score-value{color:#dc2626;font-weight:600}.question-insight-scores .score-label{color:var(--gray-6);font-size:.8125rem}.question-insight-scores .score-value{color:var(--gray-8);font-size:.875rem;font-weight:500}.question-progress{margin-top:.25rem}.progress-bar-container{background:var(--gray-2);border-radius:4px;height:8px;overflow:visible;position:relative}.progress-bar-fill.student{background:#2563eb;border-radius:4px;height:100%;transition:width .3s ease}.progress-bar-marker{background:#6b7280;border-radius:2px;height:12px;position:absolute;top:-2px;transform:translateX(-50%);width:3px}.submission-skills-content .summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));width:100%}.submission-skills-content .summary-card{background:var(--pure-white);border:1px solid var(--gray-2);border-radius:8px;padding:1rem}.submission-skills-content .summary-card h4{color:var(--gray-7);font-size:.875rem;font-weight:600;margin:0 0 .75rem}@media (max-width:768px){.advanced-analytics-container{padding:1rem}.advanced-analytics-header{align-items:flex-start;flex-direction:column}.chart-wrapper{height:250px}.summary-grid{grid-template-columns:1fr}.submission-comparison-content,.submission-skills-content{padding:1rem}.grade-comparison-grid,.submission-skills-content .summary-grid{grid-template-columns:1fr}.submission-questions-content{padding:1rem}.questions-insights-grid{grid-template-columns:1fr}}.home-page{align-items:center;display:flex;flex-direction:column;justify-content:center}.clever-btn{background:#0000;border:none;cursor:pointer;display:inline-flex;height:-webkit-fit-content;height:fit-content;line-height:0;padding:0;width:-webkit-fit-content;width:fit-content}.clever-btn__img{display:block;height:40px;max-width:none!important;white-space:nowrap;width:auto}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.account-type-select{align-items:center;border:2px solid var(--gray-3);border-radius:12px;display:flex;flex-direction:row;height:95px;justify-content:space-between;padding:20px;width:290px}.account-type-select.selected{border:2px solid var(--dark-green)}.account-type-select:hover{background-color:var(--gray-3);cursor:pointer}.account-type-select img{max-height:70px;width:80px}.subscription-select{align-items:center;border:2px solid var(--gray-3);border-radius:12px;display:flex;flex-direction:row;justify-content:space-between;padding:20px;width:290px}.subscription-select.selected{border:2px solid var(--dark-green)}.subscription-select:hover{background-color:#e1e1e0;cursor:pointer}.subscription-select img{height:70px}.subscription-select:focus-within{border:2px solid var(--dark-green)}.student-row-info{align-items:center;display:flex;flex:1 0;gap:16px}.header-row-button{align-items:center;align-self:stretch;background:var(--gray-2);border-radius:7px;box-shadow:0 1px 3px 0 #524b4980;color:var(--gray-10);display:flex;gap:14px;justify-content:center;max-height:60px;padding:20px 42px}.header-row-button:hover{background:var(--gray-3);cursor:pointer}.header-row-button.view{background-color:var(--moss-green);color:var(--pure-white)}.header-row-button.view:hover{background-color:var(--moss-green-hover)}@media screen and (max-width:700px){.header-row-button{padding:5px 10px}}.privacy-policy{max-height:100%;text-align:left}.notification-bell-container{display:inline-flex;position:relative}.notification-bell-button{align-items:center;background:var(--gray-2);border:none;border-radius:8px;color:var(--gray-6);cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px 12px;position:relative;transition:background-color .2s ease}.notification-bell-button:hover{background-color:var(--gray-3)}.notification-badge{background-color:var(--dark-green);border:2px solid var(--gray-2);border-radius:50%;height:10px;position:absolute;right:4px;top:2px;width:10px}.notification-dropdown{background-color:var(--pure-white);border:1px solid var(--gray-2);border-radius:12px;box-shadow:0 4px 20px #00000026;left:0;max-height:400px;overflow:hidden;position:absolute;top:calc(100% + 8px);width:320px;z-index:1000}.notification-header{border-bottom:1px solid var(--gray-2);padding:12px 16px}.notification-header h4{color:var(--gray-6);font-size:14px;font-weight:600;margin:0}.notification-empty{padding:32px 16px;text-align:center}.notification-empty p{color:var(--gray-4);font-size:14px;margin:0}.notification-list{list-style:none;margin:0;max-height:340px;overflow-y:auto;padding:0}.notification-item{align-items:flex-start;border-bottom:1px solid var(--gray-2);cursor:pointer;display:flex;gap:8px;padding:12px 16px;transition:background-color .15s ease}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--gray-1)}.notification-content{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.notification-title{color:var(--gray-6);font-size:14px;font-weight:600;line-height:1.3}.notification-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--gray-5);display:-webkit-box;font-size:13px;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.notification-time{color:var(--gray-4);font-size:11px;margin-top:2px}.notification-dismiss{align-items:center;background:none;border:none;border-radius:4px;color:var(--gray-4);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:color .15s ease,background-color .15s ease}.notification-dismiss:hover{background-color:var(--gray-2);color:var(--gray-6)}@media (max-width:400px){.notification-dropdown{left:0;width:280px}}.hamburger-icon{background:none;border:none;cursor:pointer;font-size:24px}.dropdown-menu{align-self:flex-start;background-color:var(--gray-2);box-shadow:0 8px 16px 0 #0003;min-width:160px;position:absolute;right:5px;top:100%;z-index:15}.dropdown-menu ul{list-style-type:none;margin:0;padding:0}.dropdown-menu li{display:block;min-width:-webkit-fit-content;min-width:fit-content;text-decoration:none}.dropdown-menu li:hover{background-color:var(--gray-3)}.dropdown-menu li button{all:unset;color:#000;cursor:pointer;display:block;font-family:inherit;max-width:100%;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.dropdown-menu li:not(:last-child) button{border-bottom:1px solid #ccc}.dropdown-menu li button:hover{background-color:var(--gray-3)}.fixed-header{align-items:center;align-self:stretch;background:var(--pure-white);display:flex;gap:1vw;height:50px;justify-content:space-between;left:0;padding:15px 4vw;position:fixed;top:0;width:100%;z-index:100}.fixed-header img{height:40px;object-fit:contain;width:114px}.fixed-header .col{align-items:center;max-width:30vw;min-width:30vw;width:30vw}.fixed-header .landing-button img{height:20px;width:auto}.fixed-header .row{gap:20px}.badge-item{align-items:center;background:radial-gradient(circle at center,var(--pure-white) 0,var(--gray-1) 60%,var(--gray-3) 100%);border:thin solid var(--gray-7);border-radius:12px;box-shadow:0 20px 60px #524b4933;display:flex;flex-direction:column;max-height:200px;max-width:200px;padding:10px}.badge{animation:badge-glow 1.5s ease-in-out infinite alternate;border-radius:50%;display:block;filter:drop-shadow(0 0 10px rgba(173,216,230,.7)) drop-shadow(0 0 20px rgba(173,216,230,.5));margin:0 auto;max-height:150px;max-width:150px}@keyframes badge-glow{0%{filter:drop-shadow(0 0 5px rgba(173,216,230,.6)) drop-shadow(0 0 10px rgba(173,216,230,.4))}to{filter:drop-shadow(0 0 20px rgba(173,216,230,1)) drop-shadow(0 0 30px rgba(173,216,230,.8))}}.badge-item.clickable{cursor:pointer}.badge-large{margin-bottom:1rem;width:150px}.badge-popup{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:10px;width:min(600px,90vw)}.badges-grid{grid-gap:12px;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;box-shadow:0 6px 20px #0000001a;box-sizing:border-box;display:grid;flex:1 0;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));height:100%;max-height:100%;overflow-y:auto;padding:24px;width:100%}.avatar-preview{height:200px;position:relative;width:200px}.avatar-preview img.layer{height:100%;left:0;object-fit:contain;pointer-events:none;position:absolute;top:0;width:100%}.avatar-preview img{transform:scale(1)}.balance-row{align-items:center;display:flex;flex-direction:row;gap:5px}.balance-row img{width:20px}.avatar-display-card,.avatar-meta{align-items:center;display:flex;flex-direction:column}.item-preview{background-color:initial;border-radius:6px;height:110px;overflow:hidden;position:relative;width:100%}.item-preview img.hat-preview{object-position:top}.item-preview img.face-preview,.item-preview img.hat-preview{left:50%;max-height:100%;object-fit:cover;pointer-events:none;position:absolute;top:0;transform:translateX(-50%);width:100%}.item-preview img.face-preview{object-position:50% 25%}.item-preview img.body-preview{object-position:top}.item-preview img.body-preview,.item-preview img.neck-preview{left:50%;max-height:100%;object-fit:scale-down;pointer-events:none;position:absolute;top:0;transform:translateX(-50%);width:100%}.item-preview img.neck-preview{object-position:center;object-position:50% 25%}.item-preview img.shirt-preview{left:50%;max-height:100%;object-fit:cover;object-position:50% 80%;pointer-events:none;position:absolute;top:-10%;transform:translateX(-50%);width:100%}.shop-item{align-items:center;background:radial-gradient(circle at center,var(--pure-white) 0,var(--gray-1) 60%,var(--gray-3) 100%);border:thin solid var(--gray-7);border-radius:12px;box-shadow:0 20px 60px #524b4933;display:flex;flex-direction:column;justify-content:center;max-height:250px;max-width:250px;padding:10px;text-align:center}.shop-item.clickable{cursor:pointer}.shop-grid{grid-gap:12px;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;box-shadow:0 6px 20px #0000001a;box-sizing:border-box;display:grid;flex:1 0;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));height:100%;max-height:100%;overflow-y:auto;padding:24px;width:100%}.practice-modal,.shop-card-info{align-items:center;display:flex;flex-direction:column}.practice-modal{gap:12px;height:90vh;width:80vw}.flashcard{align-items:center;background-color:var(--pure-white);border:thin solid var(--gray-10);box-shadow:0 20px 60px 0 #524b4933;display:flex;flex-direction:column;height:400px;justify-content:center;max-height:100%;max-width:100%;padding:20px;position:relative;width:600px}.flashcard .icon-button{position:absolute;right:10px;top:10px}.flashcard-image{pointer-events:none!important}.flashcard .flashcard-image{height:150px!important;width:150px!important}.flashcard-image.right{right:10px}.flashcard-image.left,.flashcard-image.right{height:100px!important;position:absolute;top:60px;width:100px!important}.flashcard-image.left{left:10px}.solver-area.division .row{align-items:flex-start;display:flex;line-height:1.2rem}.divisor-cell{align-items:flex-end;display:flex;flex-direction:column;font-size:1rem;font-weight:600;line-height:1.2rem;min-width:2.5rem;position:relative}.bar-cell{display:flex;flex:1 1;flex-direction:column}.quotient-digits{display:flex}.q-digit{color:#111;font-size:1rem;font-weight:600;min-width:1rem;text-align:center}.active-quot{background:#dbeafe;border-radius:.4rem;box-shadow:inset 0 0 0 2px #3b82f6;color:#1e40af}.top-bar-line{border-top:2px solid #000;margin-top:.15rem;width:100%}.divisor-value{font-size:1.2rem;font-weight:600}.left-bar-top{border-top:0;height:.7rem;top:0}.left-bar-bottom,.left-bar-top{border-right:2px solid #000;position:absolute;right:-2px;width:0}.left-bar-bottom{border-bottom:0;bottom:auto;height:calc(100% - .7rem);top:.7rem}.dividend-digits{display:flex;font-size:1.2rem;font-weight:600;margin-left:.25rem}.dividend-digit{min-width:1rem;text-align:center}.active-dividend{background:#fffaab;border-radius:.4rem;box-shadow:inset 0 0 0 2px #ffc600}.work-steps{color:#111;font-size:1rem;margin-top:.75rem}.work-step{margin-bottom:.5rem}.work-digits{display:flex;margin-left:.25rem}.work-digit{font-size:1rem;font-weight:500;min-width:1rem;text-align:center}.underline-row .work-digit{min-height:.6rem}.underline-short{border-top:2px solid #000;height:.6rem;line-height:.6rem;width:100%}.highlight-math{color:#111}.highlight-remainder{color:#1e40af;font-weight:600}.bring-seq{align-items:center;display:inline-flex;gap:.15rem;margin-left:.25rem}.bring-arrow{color:#f59e0b;font-size:.9rem;font-weight:600}.bring-val{font-size:1rem;font-weight:600}.highlight-bring{color:#f59e0b}.final-remainder-note{color:#111;font-size:.8rem;font-weight:500;margin-top:.5rem;text-align:center}.math-practice-wrapper{color:#111;padding:1rem}.math-quiz-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.question-list{display:flex;flex-wrap:wrap;gap:1rem}.solver-wrapper{font-family:Inter,system-ui,sans-serif;margin-top:1rem}.solver-card{background:#fff;border:2px solid #222;border-radius:1rem;box-shadow:4px 4px 0 #222;max-width:360px;padding:1rem}.solver-header{font-size:.9rem;font-weight:600;margin-bottom:.75rem;text-align:center}.solver-area{background:#fafafa;border:1px solid #ddd;border-radius:.5rem;box-shadow:inset 0 0 0 2px #fff;display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;justify-content:center;padding:.5rem .75rem;width:100%}.solver-card .row{display:flex;flex-wrap:nowrap;justify-content:flex-end}.solver-card .cell{font-size:1.1rem;line-height:1.4rem;min-width:1.25rem;position:relative;text-align:center}.carry-cell{color:#777;font-size:.7rem;line-height:1rem;min-height:1rem}.digit-cell{font-size:1.2rem;line-height:1.4rem}.underline-cell{min-height:.8rem}.underline-cell,.underline-span{font-size:.8rem;line-height:.8rem}.underline-span{font-weight:600;text-align:left}.answer-row .answer-cell{font-size:1.2rem;font-weight:600;line-height:1.4rem}.active-col{background:#fffaab;border-radius:.4rem;box-shadow:inset 0 0 0 2px #ffc600}.solver-instructions{color:#333;font-size:.8rem;margin-top:.75rem;text-align:center}.solver-controls{align-items:center;display:flex;justify-content:space-between;margin-top:.75rem}.solver-btn{background:#222;border:2px solid #222;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.75rem;font-weight:600;padding:.4rem .6rem}.solver-btn:disabled{background:#999;border-color:#999;cursor:default}.step-label{font-size:.75rem;font-weight:500}.assignment-plan-card{background:var(--pure-white);border:2px solid var(--gray-3);border-radius:12px;cursor:grab;overflow:hidden;transition:all .2s ease}.assignment-plan-card:hover{border-color:var(--gray-4);box-shadow:0 4px 12px #00000014}.assignment-plan-card.dragging{cursor:grabbing;opacity:.5;transform:scale(.98)}.assignment-plan-card.drag-over{background:#447d000d;border-color:var(--dark-green);border-style:dashed}.assignment-plan-card.is-exam{border-left:4px solid var(--dark-pink)}.assignment-plan-card .card-header{align-items:center;background:var(--gray-1);border-bottom:1px solid var(--gray-3);display:flex;gap:12px;padding:14px 16px}.assignment-plan-card .drag-handle{align-items:center;color:var(--gray-7);cursor:grab;display:flex;padding:4px}.assignment-plan-card .drag-handle:hover{color:var(--gray-9)}.assignment-plan-card .card-number{background:var(--gray-10);border-radius:50%;font-size:13px;font-weight:600;height:28px;justify-content:center;width:28px}.assignment-plan-card .card-number,.assignment-plan-card .type-badge{align-items:center;color:var(--pure-white);display:flex;flex-shrink:0}.assignment-plan-card .type-badge{border-radius:20px;font-size:12px;font-weight:500;gap:6px;padding:6px 12px}.assignment-plan-card .type-badge svg{font-size:11px}.assignment-plan-card .card-title-section{align-items:center;display:flex;flex:1 1;gap:10px;min-width:0}.assignment-plan-card .title-display{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;margin:-4px -8px;min-width:0;padding:4px 8px;transition:background-color .15s ease}.assignment-plan-card .title-display:hover{background-color:var(--gray-2)}.assignment-plan-card .title-display:hover .edit-title-btn{opacity:1}.assignment-plan-card .card-title{color:var(--gray-10);font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-plan-card .edit-title-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--gray-6);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;opacity:0;transition:all .15s ease;width:24px}.assignment-plan-card .edit-title-btn:hover{background:var(--gray-3);color:var(--dark-green)}.assignment-plan-card .inline-title-edit{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.assignment-plan-card .inline-title-input{background:var(--pure-white);border:2px solid var(--dark-green);border-radius:6px;color:var(--gray-10);flex:1 1;font-size:14px;font-weight:500;min-width:120px;outline:none;padding:6px 10px}.assignment-plan-card .inline-title-input:focus{box-shadow:0 0 0 3px #447d0026}.assignment-plan-card .inline-title-input::placeholder{color:var(--gray-6);font-weight:400}.assignment-plan-card .inline-title-save{align-items:center;background:var(--dark-green);border:none;border-radius:6px;color:var(--pure-white);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .15s ease;width:28px}.assignment-plan-card .inline-title-save:hover{background:var(--dark-green-hover);transform:scale(1.05)}.assignment-plan-card .exam-badge{background:var(--dark-pink);border-radius:4px;color:var(--pure-white);flex-shrink:0;font-size:10px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.assignment-plan-card .card-actions{align-items:center;display:flex;gap:4px}.assignment-plan-card .delete-btn,.assignment-plan-card .expand-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--gray-8);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.assignment-plan-card .expand-btn:hover{background:var(--gray-3);color:var(--gray-10)}.assignment-plan-card .delete-btn:hover{background:#b1243f1a;color:var(--dark-pink)}.assignment-plan-card .card-body{background:var(--pure-white);display:flex;flex-direction:column;gap:18px;padding:20px}.assignment-plan-card .form-row{display:flex;flex-direction:column;gap:8px}.assignment-plan-card .form-label{color:var(--gray-9);font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.assignment-plan-card .description-input,.assignment-plan-card .title-input,.assignment-plan-card .type-select{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-10);font-family:inherit;font-size:14px;padding:10px 14px;transition:border-color .15s ease,box-shadow .15s ease}.assignment-plan-card .description-input:focus,.assignment-plan-card .title-input:focus,.assignment-plan-card .type-select:focus{border-color:var(--dark-green);box-shadow:0 0 0 3px #447d001a;outline:none}.assignment-plan-card .description-input{min-height:80px;resize:vertical}.assignment-plan-card .checkbox-row{align-items:center;flex-direction:row}.assignment-plan-card .checkbox-label{align-items:center;color:var(--gray-10);cursor:pointer;display:flex;font-size:14px;gap:10px}.assignment-plan-card .checkbox-label input[type=checkbox]{accent-color:var(--dark-green);cursor:pointer;height:18px;width:18px}.assignment-plan-card .row.stretch{display:flex;gap:8px}.assignment-plan-card .row.stretch input{border:1px solid var(--gray-3);border-radius:8px;flex:1 1;font-size:14px;padding:8px 12px}.assignment-plan-card .scaffolded-vocabulary{display:flex;flex-direction:column;gap:8px}.assignment-plan-card .scaffolded-vocabulary>.form-label{margin-bottom:4px}.assignment-plan-card .level-vocabulary-section{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:14px}.assignment-plan-card .level-vocabulary-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.assignment-plan-card .level-badge-small{align-items:center;background:var(--dark-green);border-radius:12px;color:var(--pure-white);display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px}.assignment-plan-card .level-info{color:var(--gray-7);font-size:12px;font-weight:500}.assignment-plan-editor{display:flex;flex-direction:column;gap:16px;max-width:700px;width:100%}.assignment-plan-editor .editor-header{align-items:center;display:flex;justify-content:flex-end;padding:8px 0}.assignment-plan-editor .assignment-count{color:var(--gray-8);font-size:14px;font-weight:500}.assignment-plan-editor .assignments-grouped-list{display:flex;flex-direction:column;gap:12px;max-height:500px;overflow-y:auto;padding:4px}.assignment-plan-editor .assignments-grouped-list::-webkit-scrollbar{width:8px}.assignment-plan-editor .assignments-grouped-list::-webkit-scrollbar-track{background:var(--gray-2);border-radius:4px}.assignment-plan-editor .assignments-grouped-list::-webkit-scrollbar-thumb{background:var(--gray-4);border-radius:4px}.assignment-plan-editor .assignments-grouped-list::-webkit-scrollbar-thumb:hover{background:var(--gray-7)}.assignment-plan-editor .empty-state{align-items:center;background:var(--gray-1);border:2px dashed var(--gray-3);border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.assignment-plan-editor .empty-icon{color:var(--purple);font-size:40px;margin-bottom:16px;opacity:.4}.assignment-plan-editor .empty-state p{color:var(--gray-9);font-size:16px;font-weight:500;margin:0}.assignment-plan-editor .empty-hint{color:var(--gray-7)!important;font-size:14px!important;font-weight:400!important;margin-top:8px!important}.assignment-plan-editor .assignment-count-chip{background:var(--dark-green);border-radius:12px;color:var(--pure-white);font-size:11px;font-weight:500;padding:4px 12px}.assignment-plan-editor .subtopic-card{cursor:default}.assignment-plan-editor .subtopic-card .subtopic-header{padding-left:18px}.assignment-plan-editor .subtopic-assignments-list{display:flex;flex-direction:column;gap:10px}.assignment-plan-editor .no-assignments-hint{background:var(--gray-1);border:2px dashed var(--gray-3);border-radius:8px;color:var(--gray-7);font-size:14px;padding:20px;text-align:center}.assignment-plan-editor .add-to-subtopic-section{margin-top:8px}.assignment-plan-editor .add-to-subtopic-btn{align-items:center;background:#0000;border:1px dashed var(--gray-4);border-radius:8px;color:var(--gray-8);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s ease;width:100%}.assignment-plan-editor .add-to-subtopic-btn:hover{background:#447d000a;border-color:var(--dark-green);color:var(--dark-green)}.assignment-plan-editor .add-to-subtopic-btn svg{font-size:12px}.assignment-plan-editor .add-form-container{animation:fadeIn .15s ease;background:var(--gray-1);border:2px solid var(--dark-green);border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.assignment-plan-editor .add-form-row{align-items:center;display:flex;gap:10px}.assignment-plan-editor .add-form-title-input{background:var(--pure-white);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-10);flex:1 1;font-size:14px;font-weight:500;padding:10px 14px;transition:border-color .15s ease,box-shadow .15s ease}.assignment-plan-editor .add-form-title-input:focus{border-color:var(--dark-green);box-shadow:0 0 0 3px #447d001a;outline:none}.assignment-plan-editor .add-form-title-input::placeholder{color:var(--gray-6);font-weight:400}.assignment-plan-editor .add-form.inline{align-items:center;background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;display:flex;gap:10px;padding:10px 12px}.assignment-plan-editor .add-form-select{background:var(--pure-white);border:1px solid var(--gray-3);border-radius:6px;color:var(--gray-10);cursor:pointer;flex:1 1;font-size:13px;padding:8px 12px}.assignment-plan-editor .add-form-select:focus{border-color:var(--dark-green);outline:none}.assignment-plan-editor .cancel-btn,.assignment-plan-editor .confirm-add-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.assignment-plan-editor .cancel-btn{background:var(--gray-2);color:var(--gray-9)}.assignment-plan-editor .cancel-btn:hover{background:var(--gray-3)}.assignment-plan-editor .confirm-add-btn{align-items:center;background:var(--dark-green);color:var(--pure-white);display:flex;gap:8px}.assignment-plan-editor .confirm-add-btn:hover:not(:disabled){background:var(--dark-green-hover)}.assignment-plan-editor .confirm-add-btn:disabled{background:var(--gray-4);cursor:not-allowed;opacity:.7}.assignment-plan-editor .cancel-btn.small,.assignment-plan-editor .confirm-add-btn.small{font-size:13px;padding:8px 14px}.assignment-plan-editor .confirm-add-btn.small{align-items:center;display:flex;gap:6px}.subtopic-card{background:var(--pure-white);border:2px solid var(--gray-3);border-left:4px solid var(--purple);border-radius:12px;cursor:grab;min-height:-webkit-fit-content;min-height:fit-content;transition:all .2s ease}.subtopic-card:hover{border-color:var(--gray-4);box-shadow:0 4px 12px #00000014}.subtopic-card.dragging{cursor:grabbing;opacity:.5;transform:scale(.98)}.subtopic-card.drag-over{background:#6816890d;border-color:var(--purple);border-style:dashed}.subtopic-card .subtopic-header{align-items:center;background:var(--gray-1);display:flex;gap:12px;padding:14px 16px}.subtopic-card .drag-handle{align-items:center;color:var(--gray-7);cursor:grab;display:flex;padding:4px}.subtopic-card .drag-handle:hover{color:var(--gray-9)}.subtopic-card .subtopic-number{align-items:center;background:var(--purple);border-radius:50%;color:var(--pure-white);display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:28px;justify-content:center;width:28px}.subtopic-card .subtopic-title-section{flex:1 1;min-width:0}.subtopic-card .subtopic-title{color:var(--gray-10);display:block;font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtopic-card .title-input-inline{background:var(--pure-white);border:1px solid var(--gray-4);border-radius:6px;color:var(--gray-10);font-size:15px;font-weight:500;padding:6px 10px;width:100%}.subtopic-card .title-input-inline:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6816891a;outline:none}.subtopic-card .subtopic-keywords-preview{align-items:center;display:flex;flex-shrink:0;gap:6px}.subtopic-card .keyword-chip{background:var(--light-purple);border-radius:12px;color:var(--purple);font-size:11px;font-weight:500;padding:4px 10px}.subtopic-card .keyword-more{color:var(--gray-8);font-size:11px;font-weight:500}.subtopic-card .subtopic-actions{align-items:center;display:flex;gap:4px}.subtopic-card .delete-btn,.subtopic-card .expand-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--gray-8);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.subtopic-card .expand-btn:hover{background:var(--gray-3);color:var(--gray-10)}.subtopic-card .delete-btn:hover{background:#b1243f1a;color:var(--dark-pink)}.subtopic-card .subtopic-body{background:var(--pure-white);border-top:1px solid var(--gray-3);display:flex;flex-direction:column;gap:18px;min-height:-webkit-fit-content;min-height:fit-content;padding:20px}.subtopic-card .form-row{display:flex;flex-direction:column;gap:8px}.subtopic-card .form-label{color:var(--gray-9);font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.subtopic-card .description-input{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-10);font-family:inherit;font-size:14px;min-height:80px;padding:10px 14px;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.subtopic-card .description-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6816891a;outline:none}.subtopic-card .row.stretch{display:flex;gap:8px}.subtopic-card .row.stretch input{border:1px solid var(--gray-3);border-radius:8px;flex:1 1;font-size:14px;padding:8px 12px}.subtopic-card .scaffolded-vocabulary{display:flex;flex-direction:column;gap:8px}.subtopic-card .scaffolded-vocabulary>.form-label{margin-bottom:4px}.subtopic-card .level-vocabulary-section{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:14px}.subtopic-card .level-vocabulary-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.subtopic-card .level-badge-small{align-items:center;background:var(--purple);border-radius:12px;color:var(--pure-white);display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px}.subtopic-card .level-info{color:var(--gray-7);font-size:12px;font-weight:500}.subtopic-card .subtopic-dates-inline{align-items:center;display:flex;flex-shrink:0;gap:6px}.subtopic-card .date-input-inline{background:var(--pure-white);border:1px solid var(--gray-3);border-radius:6px;color:var(--gray-9);cursor:pointer;font-size:12px;padding:4px 8px;width:120px}.subtopic-card .date-input-inline:hover{border-color:var(--gray-5)}.subtopic-card .date-input-inline:focus{border-color:var(--purple);box-shadow:0 0 0 2px #6816891a;outline:none}.subtopic-card .date-separator{color:var(--gray-6);font-size:12px;font-weight:500}.subtopic-card .date-row{display:flex;flex-direction:row!important;gap:16px}.subtopic-card .date-field{display:flex;flex:1 1;flex-direction:column;gap:8px}.subtopic-card .date-input{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;color:var(--gray-10);cursor:pointer;font-size:14px;padding:10px 14px;transition:border-color .15s ease,box-shadow .15s ease}.subtopic-card .date-input:hover{border-color:var(--gray-5)}.subtopic-card .date-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6816891a;outline:none}@media (max-width:768px){.subtopic-card .subtopic-dates-inline{display:none}.subtopic-card .date-row{flex-direction:column!important}}.subtopic-editor{display:flex;flex-direction:column;gap:16px;max-width:700px;width:100%}.subtopic-editor .editor-header{align-items:center;display:flex;justify-content:flex-end;padding:8px 0}.subtopic-editor .subtopic-count{color:var(--gray-8);font-size:14px;font-weight:500}.subtopic-editor .subtopics-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding:4px}.subtopic-editor .subtopics-list::-webkit-scrollbar{width:8px}.subtopic-editor .subtopics-list::-webkit-scrollbar-track{background:var(--gray-2);border-radius:4px}.subtopic-editor .subtopics-list::-webkit-scrollbar-thumb{background:var(--gray-4);border-radius:4px}.subtopic-editor .subtopics-list::-webkit-scrollbar-thumb:hover{background:var(--gray-7)}.subtopic-editor .empty-state{align-items:center;background:var(--gray-1);border:2px dashed var(--gray-3);border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.subtopic-editor .empty-icon{color:var(--purple);font-size:40px;margin-bottom:16px;opacity:.4}.subtopic-editor .empty-state p{color:var(--gray-9);font-size:16px;font-weight:500;margin:0}.subtopic-editor .empty-hint{color:var(--gray-7)!important;font-size:14px!important;font-weight:400!important;margin-top:8px!important}.subtopic-editor .add-subtopic-btn{align-items:center;background:#0000;border:2px dashed var(--gray-4);border-radius:12px;color:var(--gray-9);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.subtopic-editor .add-subtopic-btn:hover{background:#6816890a;border-color:var(--purple);color:var(--purple)}.subtopic-editor .add-subtopic-btn svg{font-size:16px}.subtopic-editor .max-reached-notice{background:var(--gray-2);border-radius:8px;color:var(--gray-8);font-size:13px;padding:12px;text-align:center}.assessment-container{height:90%;width:100%}.assessment-section{align-items:center;display:flex;flex-direction:column;height:98%;margin-top:35px}.assessment-section.listening{justify-content:space-between}.assessment-section.listening img{max-height:60%;max-width:50%}.assessment-section .conversation-frame{justify-content:center;padding-left:10%;padding-right:10%}.assessment-section .reading-frame{padding:5% 10%}.evaluation-admin{--accent-teal:#0d9488;--accent-teal-light:#14b8a6;--accent-amber:#f59e0b;--accent-rose:#e11d48;--accent-violet:#7c3aed;--accent-sky:#0ea5e9}.evaluation-admin .page-header{align-items:center;border-bottom:2px solid var(--gray-3);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.evaluation-admin .page-header h1{align-items:center;color:var(--gray-10);display:flex;font-size:1.75rem;gap:12px;margin:0;padding:0}.evaluation-admin .page-header h1 svg{color:var(--accent-teal)}.evaluation-admin .stats-summary{border-top:1px solid var(--gray-3);display:flex;flex-direction:column;gap:12px;margin-top:20px;padding-top:20px}.evaluation-admin .stat{align-items:center;background:var(--gray-2);border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.evaluation-admin .stat-value{color:var(--accent-teal);font-size:1.5rem;font-weight:700}.evaluation-admin .stat-label{color:var(--gray-7);font-size:.875rem}.evaluation-filters{align-items:flex-end;background:var(--gray-1);border:1px solid var(--gray-3);border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px}.evaluation-filters .filter-group{display:flex;flex-direction:column;gap:4px;min-width:150px}.evaluation-filters .filter-group label{color:var(--gray-6);font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.evaluation-filters select{background:#fff;border:1px solid var(--gray-4);border-radius:8px;cursor:pointer;font-size:.875rem;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.evaluation-filters select:hover{border-color:var(--accent-teal)}.evaluation-filters select:focus{border-color:var(--accent-teal);box-shadow:0 0 0 3px #0d948826;outline:none}.evaluation-filters .clear-filters-btn{background:#0000;border:1px solid var(--gray-4);border-radius:8px;color:var(--gray-7);cursor:pointer;font-size:.875rem;padding:8px 16px;transition:all .2s}.evaluation-filters .clear-filters-btn:hover{background:var(--gray-2);border-color:var(--gray-5)}.evaluation-admin .empty-state,.evaluation-admin .loading-state{align-items:center;color:var(--gray-6);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.evaluation-admin .empty-state svg,.evaluation-admin .loading-state svg{color:var(--gray-4);margin-bottom:16px}.evaluation-admin .empty-state h3{color:var(--gray-8);margin:0 0 8px}.evaluation-admin .empty-state p{margin:0 0 20px;max-width:400px}.sections-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));max-height:100%;overflow-y:auto}.pagination-controls{align-items:center;border-top:1px solid var(--gray-3);display:flex;gap:20px;justify-content:center;margin-top:24px;padding:16px 0}.pagination-controls .pagination-btn{align-items:center;display:flex;font-size:.9rem;gap:8px;justify-content:center;min-width:110px;padding:10px 16px}.pagination-controls .pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-controls .pagination-info{color:var(--gray-7);font-size:.9rem;font-weight:500}.section-card{background:#fff;border:1px solid var(--gray-3);border-radius:12px;cursor:pointer;min-height:200px;overflow:hidden;transition:transform .2s,box-shadow .2s}.section-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.section-card.inactive{background:var(--gray-1);opacity:.7}.section-card-header{align-items:flex-start;background:linear-gradient(135deg,var(--gray-1) 0,var(--gray-2) 100%);border-bottom:1px solid var(--gray-3);display:flex;justify-content:space-between;padding:12px 16px}.section-card-badges{display:flex;flex-wrap:wrap;gap:6px}.section-card-id{color:var(--gray-5);font-family:monospace;font-size:.75rem}.badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.7rem;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase}.badge.category-badge{background:var(--accent-teal);color:#fff}.badge.category-badge.wida_listen{background:var(--accent-violet)}.badge.category-badge.wida_read{background:var(--accent-teal)}.badge.category-badge.wida_speak{background:var(--accent-amber)}.badge.category-badge.wida_write{background:var(--accent-rose)}.badge.category-badge.lexile_read{background:var(--accent-sky)}.badge.grade-badge{background:var(--gray-7);color:#fff}.badge.wida-badge{background:var(--accent-violet);color:#fff}.badge.status-badge{background:var(--gray-4);color:var(--gray-8)}.badge.status-badge.active{background:#dcfce7;color:#166534}.badge.status-badge.inactive{background:#fef2f2;color:#991b1b}.badge.type-badge{background:var(--gray-6);color:#fff}.badge.type-badge.choice{background:var(--accent-teal)}.badge.type-badge.text{background:var(--accent-amber)}.badge.type-badge.conversation{background:var(--accent-violet)}.section-card-body{padding:16px}.section-prompt{color:var(--gray-8);font-size:.9rem;line-height:1.5;margin:0 0 12px}.section-meta{color:var(--gray-6);display:flex;flex-wrap:wrap;font-size:.8rem;gap:12px}.section-meta .question-count{align-items:center;display:flex;gap:4px}.section-media-indicators{display:flex;gap:8px;margin-top:8px}.media-indicator{background:var(--gray-2);border-radius:4px;font-size:.75rem;padding:2px 6px}.section-card-actions{background:var(--gray-1);border-top:1px solid var(--gray-3);display:flex;gap:8px;justify-content:flex-end;padding:12px 16px}.action-btn{align-items:center;background:#fff;border:none;border-radius:6px;color:var(--gray-6);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.action-btn:hover{background:var(--gray-2)}.action-btn.toggle-btn svg.active{color:var(--accent-teal)}.action-btn.edit-btn:hover{background:#0d94881a;color:var(--accent-teal)}.action-btn.delete-btn:hover{background:#e11d481a;color:var(--accent-rose)}.action-btn.view-btn:hover{background:#0ea5e91a;color:var(--accent-sky)}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--accent-teal);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-teal-light)}.btn-secondary{background:var(--gray-2);border:1px solid var(--gray-4);color:var(--gray-8)}.btn-secondary:hover:not(:disabled){background:var(--gray-3)}.btn-danger{background:var(--accent-rose);color:#fff}.btn-danger:hover:not(:disabled){background:#be123c}.btn-back{background:#0000;color:var(--gray-7);padding:8px 12px}.btn-back:hover{background:var(--gray-2);color:var(--gray-9)}.btn-sm{font-size:.8rem;padding:6px 12px}.btn-add{background:var(--accent-teal);color:#fff}.btn-add:hover{background:var(--accent-teal-light)}.section-detail{max-width:100%;overflow-y:auto;padding:0}.section-detail-header{align-items:center;border-bottom:1px solid var(--gray-3);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.section-detail-header .section-nav-actions{align-items:center;display:flex;gap:16px}.section-detail-header .section-navigation{border-right:1px solid var(--gray-3);display:flex;gap:8px;padding-right:16px}.section-detail-header .section-navigation .nav-btn{align-items:center;display:flex;gap:6px;justify-content:center;min-width:80px}.section-detail-header .section-navigation .nav-btn:disabled{cursor:not-allowed;opacity:.5}.section-detail-header .section-actions{display:flex;gap:8px}.section-info-panel{background:#fff;border:1px solid var(--gray-3);border-radius:12px;margin-bottom:24px;padding:24px}.section-info-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.section-info-header h2{color:var(--gray-9);margin:0}.section-badges{display:flex;gap:8px}.section-prompt-full{margin-bottom:16px}.section-prompt-full h3{color:var(--gray-6);font-size:.875rem;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.section-prompt-full p{background:var(--gray-1);border-radius:8px;color:var(--gray-8);line-height:1.6;margin:0;padding:16px;white-space:pre-wrap}.section-meta-info{color:var(--gray-6);display:flex;flex-wrap:wrap;font-size:.875rem;gap:16px}.section-meta-info a{color:var(--accent-teal);text-decoration:none}.section-meta-info a:hover{text-decoration:underline}.section-book-editor{background:#fff;border:1px solid var(--gray-3);border-radius:12px;margin-bottom:24px;padding:24px}.book-editor-header{align-items:center;border-bottom:1px solid var(--gray-3);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.book-editor-header h3{align-items:center;color:var(--gray-9);display:flex;font-size:1.1rem;gap:10px;margin:0}.book-editor-header h3 svg{color:var(--accent-teal)}.book-editor-info{align-items:center;display:flex;gap:16px}.book-editor-info .book-title{color:var(--gray-8);font-weight:600}.book-editor-info .book-difficulty{background:var(--gray-2);border-radius:4px;color:var(--gray-6);font-size:.875rem;padding:4px 10px}.section-book-editor .text-editor{border:1px solid var(--gray-3);border-radius:8px;overflow:hidden}.section-book-editor .text-editor .ql-toolbar{background:var(--gray-1);border:none;border-bottom:1px solid var(--gray-3)}.section-book-editor .text-editor .ql-container{border:none;font-size:1rem;min-height:300px}.section-book-editor .text-editor .ql-editor{line-height:1.7;min-height:300px;padding:16px}.book-editor-actions{border-top:1px solid var(--gray-3);display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px}.book-editor-actions .btn{align-items:center;display:flex;gap:8px}.book-editor-actions .btn:disabled{cursor:not-allowed;opacity:.6}.section-questions{background:#fff;border:1px solid var(--gray-3);border-radius:12px;padding:24px}.questions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.questions-header h3{color:var(--gray-8);margin:0}.no-questions{color:var(--gray-6);padding:40px 20px;text-align:center}.no-questions p{margin-bottom:16px}.questions-list{display:flex;flex-direction:column;gap:16px}.question-card{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:10px;overflow:hidden}.question-card.inactive{opacity:.7}.question-card-header{align-items:center;background:var(--gray-2);border-bottom:1px solid var(--gray-3);display:flex;justify-content:space-between;padding:10px 14px}.question-card-badges{display:flex;gap:6px}.question-card-id{color:var(--gray-5);font-family:monospace;font-size:.7rem}.question-card-body{padding:14px}.question-text{color:var(--gray-8);font-size:.9rem;line-height:1.5;margin:0 0 10px}.question-prompt{color:var(--gray-6);font-size:.8rem;margin:0 0 10px}.question-choices{border-top:1px solid var(--gray-3);margin-top:12px;padding-top:12px}.question-choices .choices-label{color:var(--gray-6);font-size:.75rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.question-choices ul{list-style:none;margin:8px 0 0;padding:0}.question-choices li{align-items:center;color:var(--gray-7);display:flex;font-size:.85rem;gap:8px;padding:6px 0}.question-choices li.correct{color:#166534;font-weight:500}.question-choices .correct-icon{color:#22c55e}.question-choices .incorrect-icon{color:var(--gray-4)}.question-choices .has-image{font-size:.75rem;margin-left:auto}.question-meta{color:var(--gray-5);display:flex;font-size:.75rem;gap:10px;margin-top:10px}.question-card-actions{background:var(--gray-2);border-top:1px solid var(--gray-3);display:flex;gap:6px;justify-content:flex-end;padding:10px 14px}.question-form,.section-form{max-height:80vh;max-width:700px;overflow-y:auto;padding:8px}.question-form h2,.section-form h2{color:var(--gray-9);font-size:1.25rem;margin:0 0 24px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.form-row.three-col{grid-template-columns:repeat(3,1fr)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--gray-7);font-size:.8rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--gray-4);border-radius:8px;font-size:.9rem;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-teal);box-shadow:0 0 0 3px #0d948826;outline:none}.form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.form-group.checkbox-group{align-items:center;flex-direction:row;gap:12px;margin:16px 0}.form-group.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.form-group.checkbox-group input[type=checkbox]{accent-color:var(--accent-teal);height:18px;width:18px}.form-group .hint{color:var(--gray-5);font-size:.75rem}.form-actions{border-top:1px solid var(--gray-3);display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.choices-section{background:var(--gray-1);border-radius:10px;margin:20px 0;padding:16px}.choices-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.choices-header h3{color:var(--gray-8);font-size:1rem;margin:0}.no-choices{color:var(--gray-5);font-style:italic;padding:20px;text-align:center}.choices-list{display:flex;flex-direction:column;gap:10px}.choice-row{background:#fff;border:1px solid var(--gray-3);gap:10px;padding:10px}.choice-index{color:var(--gray-5);font-weight:600;min-width:24px}.choice-text{flex:2 1;font-size:.85rem!important}.choice-img,.choice-text{padding:8px 10px!important}.choice-img{flex:1 1;font-size:.8rem!important}.correct-checkbox{align-items:center;color:var(--gray-6);display:flex;font-size:.8rem;gap:4px;white-space:nowrap}.correct-checkbox input[type=radio]{accent-color:var(--accent-teal)}.btn-remove-choice{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--gray-5);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s;width:28px}.btn-remove-choice:hover{background:#e11d481a;color:var(--accent-rose)}@media (max-width:768px){.sections-grid{grid-template-columns:1fr}.evaluation-filters{flex-direction:column}.evaluation-filters .filter-group{width:100%}.form-row,.form-row.three-col{grid-template-columns:1fr}.choice-row{flex-wrap:wrap}.choice-text{flex:1 1 100%;order:1}.choice-img{flex:1 1 100%;order:2}.correct-checkbox{order:3}.btn-remove-choice{order:4}.media-pickers{flex-direction:column}}.media-section{background:var(--gray-1);border-radius:10px;margin:20px 0;padding:16px}.media-section h3{color:var(--gray-8);font-size:1rem;margin:0 0 16px}.media-pickers{display:flex;gap:24px}.media-picker-group{display:flex;flex:1 1;flex-direction:column;gap:8px}.media-picker-group>label{color:var(--gray-7);font-size:.8rem;font-weight:500}.evaluation-image-picker{position:relative}.evaluation-image-picker .image-picker-box{min-height:120px}.evaluation-image-picker .image-actions{position:absolute;right:4px;top:4px}.evaluation-audio-picker{display:flex;flex-direction:column;gap:8px}.evaluation-audio-picker .audio-picker-box{min-height:60px}.evaluation-audio-picker .audio-controls{align-items:center;background:var(--gray-2);border-radius:6px;display:flex;gap:4px;padding:4px 8px}.evaluation-audio-picker .audio-url-preview{color:var(--gray-6);flex:1 1;font-size:.75rem;margin-left:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-media-display{border-top:1px solid var(--gray-3);display:flex;gap:24px;margin-top:20px;padding-top:20px}.section-media-display .media-preview-group{flex:1 1;min-width:0}.section-media-display .media-preview-group h3{color:var(--gray-6);font-size:.875rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.section-media-display .image-preview-container{align-items:center;background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;display:flex;justify-content:center;min-height:150px;padding:12px}.image-preview-container img,.section-media-display .section-image-preview{border-radius:4px;max-height:250px;object-fit:contain}.section-media-display .section-image-preview{max-width:100%}.section-media-display .image-load-error{color:var(--accent-rose);font-size:.8rem;word-break:break-all}.section-media-display .audio-preview-container{background:var(--gray-1);border:1px solid var(--gray-3);border-radius:8px;padding:12px}.section-media-display .audio-player{align-items:center;display:flex;gap:12px}.section-media-display .audio-icon{color:var(--accent-teal);font-size:1.25rem}.section-media-display .audio-control-btn{align-items:center;background:var(--accent-teal);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.section-media-display .audio-control-btn:hover{background:var(--accent-teal-light);transform:scale(1.05)}.section-media-display .audio-control-btn:active{transform:scale(.95)}.section-media-display .audio-filename{color:var(--gray-7);flex:1 1;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.section-media-display{flex-direction:column}}.evaluation-image-picker.compact{width:60px}.evaluation-image-picker.compact .image-picker-box{min-height:60px!important}.evaluation-image-picker.compact .image-actions{right:2px;top:2px}.evaluation-image-picker.compact .image-filename{display:none}.evaluation-image-picker .image-actions{align-items:center;display:flex;gap:8px;margin-top:4px}.evaluation-image-picker .image-filename{color:var(--gray-6);font-size:.75rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.choice-row .choice-image-picker{flex-shrink:0}.choice-row{align-items:center;background:var(--gray-1);border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:12px}.choice-row .choice-index{color:var(--gray-6);flex-shrink:0;font-weight:600;width:24px}.choice-row .choice-text{flex:1 1;min-width:150px}.section-preview-container{background:var(--gray-1);border-radius:12px;display:flex;flex-direction:column;height:85vh;max-width:1000px;overflow:hidden;width:90vw}.section-preview-container .preview-header{align-items:center;background:linear-gradient(135deg,var(--accent-teal) 0,var(--accent-teal-light) 100%);color:#fff;display:flex;gap:16px;padding:16px 24px}.section-preview-container .preview-header h2{font-size:1.25rem;font-weight:600;margin:0}.section-preview-container .preview-badge{background:#fff3;border-radius:20px;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.section-preview-container .preview-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;margin-left:auto;transition:all .2s;width:36px}.section-preview-container .preview-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.section-preview-container .preview-content{background:var(--gray-9);flex:1 1;overflow:auto;padding:24px}.section-preview-container .preview-content .assessment-container{background:var(--gray-9);height:100%}.section-preview-container .preview-empty,.section-preview-container .preview-loading{align-items:center;color:var(--gray-6);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.section-preview-container .preview-loading svg{color:var(--accent-teal);margin-bottom:16px}.section-preview-container .preview-empty p{margin:8px 0;max-width:400px}.btn-preview{background:var(--accent-sky);color:#fff}.btn-preview:hover:not(:disabled){background:#0284c7}.forum-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 3px #0000000d;margin-bottom:1rem;padding:1rem;width:100%}.posts{width:100%}.forum-heading{color:#111827;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.forum-input,.forum-textarea{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:.875rem;outline:none;padding:.5rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.forum-input:focus,.forum-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.forum-input{margin-bottom:.5rem}.forum-textarea{margin-bottom:.75rem;min-height:6rem;resize:none}.forum-btn{background-color:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .15s ease,opacity .15s ease}.forum-btn:hover{background-color:#1e40af}.forum-btn:disabled{cursor:not-allowed;opacity:.5}.forum-post-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.forum-post-title{color:#111827;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.4;text-decoration:none}.forum-post-title:hover{text-decoration:underline}.forum-post-timestamp{color:#9ca3af;font-size:.6875rem;line-height:1.2;white-space:nowrap}.forum-post-body{color:#1f2937;cursor:pointer;font-size:.875rem;line-height:1.5;margin-bottom:.5rem;white-space:pre-line}.forum-post-meta{color:#6b7280;font-size:.75rem;line-height:1.4;margin-bottom:.75rem}.forum-post-meta-author{color:#374151;font-weight:500}.content-area{align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;color:var(--gray-10);display:flex;flex:1 0;flex-direction:column;font-size:calc(20px*var(--font-scale));gap:10px;height:100%;letter-spacing:.8px;line-height:calc(250%*var(--line-spacing-scale));overflow-y:auto;padding:30px 40px;position:relative;width:100%}.forum-post-expanded{border-top:1px solid #e5e7eb;margin-top:.75rem;padding-top:.75rem}.forum-comments-heading{align-items:baseline;color:#1f2937;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;margin-bottom:.75rem}.forum-comment-input{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:.875rem;line-height:1.4;min-height:5rem;outline:none;padding:.5rem .75rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.forum-comment-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.forum-comment-composer{margin-bottom:1rem;position:relative}.forum-comment-actions{align-items:center;display:flex;justify-content:flex-end;margin-top:.5rem;text-align:right}.forum-btn-sm{background-color:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;line-height:1.2;padding:.4rem .75rem;transition:background-color .15s ease,opacity .15s ease}.forum-btn-sm:hover{background-color:#1e40af}.forum-btn-sm:disabled{cursor:not-allowed;opacity:.5}.forum-comment{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;color:#1f2937;font-size:.875rem;line-height:1.4;margin-bottom:.75rem;padding:.75rem}.forum-comment-head{color:#6b7280;display:flex;font-size:.6875rem;justify-content:space-between;line-height:1.2;margin-bottom:.25rem}.forum-comment-author{color:#374151;font-weight:500}.forum-comment-time{color:#6b7280;white-space:nowrap}.forum-comment-body{color:#1f2937;font-size:.875rem;line-height:1.4;white-space:pre-line}.forum-comment-children{border-left:2px solid #e5e7eb;margin-left:1rem;padding-left:.75rem;position:relative}.forum-reply-hook{border-bottom:2px solid #9ca3af;border-bottom-left-radius:6px;border-left:2px solid #9ca3af;height:10px;left:-2px;position:absolute;top:.75rem;width:10px}.forum-reply-action-row{color:#6b7280;display:flex;font-size:.75rem;gap:.75rem;line-height:1.2;margin-top:.5rem}.forum-reply-link{color:#4b5563;cursor:pointer;font-weight:500}.forum-reply-link:hover{color:#1f2937;text-decoration:underline}.forum-inline-reply-composer{margin-bottom:.75rem;margin-top:.5rem}.forum-inline-reply-input{border:1px solid #d1d5db;border-radius:8px;font-size:.75rem;line-height:1.4;min-height:3rem;outline:none;padding:.5rem .75rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.forum-inline-reply-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.forum-inline-reply-actions{display:flex;gap:.5rem;margin-top:.5rem}.forum-btn-xs{background-color:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;line-height:1.2;padding:.35rem .6rem;transition:background-color .15s ease,opacity .15s ease}.forum-btn-xs:hover{background-color:#1e40af}.forum-btn-xs:disabled{cursor:not-allowed;opacity:.5}.forum-btn-cancel{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:.75rem;font-weight:500}.forum-btn-cancel:hover{color:#1f2937;text-decoration:underline}.forum-trending-item{border-radius:8px;padding:.4rem .25rem}.forum-trending-item:hover{background:#f3f4f6}.forum-trending-item--active{background:#e5edff;outline:1px solid #c7d2fe}.forum-selected-banner{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:.875rem;margin:.5rem 0 .75rem;padding:.5rem .75rem}.forum-inline-link{background:none;border:none;color:#2563eb;cursor:pointer;font:inherit;margin:0;padding:0}.forum-inline-link:hover{text-decoration:underline}.forum-comment-attachments{display:flex;flex-wrap:wrap;gap:.5rem}.forum-comment-attachment-chip{background:var(--gray-2);border:1px solid var(--gray-3);border-radius:12px;color:var(--dark-blue);display:inline-block;font-size:.7rem;max-width:min(200px,100%);overflow:hidden;padding:2px 6px;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.forum-comment-attachment-chip:hover{background:var(--gray-3)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-family:OpenDyslexic;font-style:normal;font-weight:400;src:url(/static/media/OpenDyslexic-Regular.d9b06c5ffd7d312017e5.otf) format("opentype")}@font-face{font-family:OpenDyslexic;font-style:normal;font-weight:700;src:url(/static/media/OpenDyslexic-Bold.1082cfdbbc04743cc3f1.otf) format("opentype")}@font-face{font-family:OpenDyslexic;font-style:italic;font-weight:400;src:url(/static/media/OpenDyslexic-Italic.5ff9ce0dd64351704ef0.otf) format("opentype")}*{--dark-blue:#016d89;--dark-blue-hover:#015b71 9;--dark-green:#447d00;--dark-green-hover:#3e7000;--dark-pink:#b1243f;--gray-1:#fafaf7;--gray-2:#f0efed;--gray-3:#e1e1e0;--gray-4:#d4d4d4;--gray-7:#a8a5a4;--gray-8:#979392;--gray-9:#756f6d;--gray-10:#524b49;--gray-11:#3e3735;--gray-12:#2a2423;--gray-13:#171413;--pure-black:#000;--pure-white:#fff;--yellow:#fcf095;--light-purple:#c7afee;--purple:#681689;--purple-hover:#55136b;--orange:#b87800;--moss-green:#42493a;--moss-green-hover:#3a3f33;--app-page-height:calc(100vh - 70px);--app-page-content-height:calc(var(--app-page-height) - 60px);--app-page-content-height-small:calc(var(--app-page-height) - 25px);--app-sidebar-width:350px;--font-weight:500;--font-weight-bold:700;--font-scale:1;--line-spacing-scale:1;box-sizing:border-box;font-family:Poppins,Arial,OpenDyslexic}body{font-style:normal;font-weight:500}body,input{color:var(--gray-10)}input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=text],textarea{align-items:center;align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:6px;display:flex;gap:10px;padding:9px 12px}textarea{max-width:100%}input[type=number]{padding-right:4px;width:60px}input[type=file]{border:none;display:none;padding:0}input[type=checkbox]:checked,input[type=radio]:checked{accent-color:var(--dark-green);background:var(--dark-green);color:var(--dark-green)}select{padding:9px 12px}.mui-select,select{align-items:center;align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:6px;color:var(--gray-10);display:flex}.select-header{align-self:auto;border:none;font-size:x-large;width:-webkit-fit-content;width:fit-content}h1{font-size:34px;letter-spacing:1.44px}h1,h2{font-weight:500;line-height:140%;margin:0;padding:0}h2{font-size:32px;letter-spacing:.64px}h3{font-size:26px;font-weight:500;letter-spacing:.52px;line-height:140%;margin:0;padding:0}.label-xl{font-size:28px;letter-spacing:1.12px;line-height:100%}.label-large{font-size:22px;letter-spacing:.88px;line-height:100%}.label-medium{font-size:18px;letter-spacing:.72px;line-height:160%}.label-normal{font-size:16px;letter-spacing:.64px;line-height:150%}.label-small{font-size:14px;letter-spacing:.56px;line-height:150%}.label-xs{font-size:12px;letter-spacing:.48px;line-height:150%}.label-hint{color:var(--dark-green)}.fine-print{align-items:center;align-self:stretch;color:var(--gray-7);display:flex;font-size:11px;letter-spacing:.36px;line-height:150%}.book-text{font-size:20px;letter-spacing:.8px;line-height:250%}.fine-print.danger{color:var(--dark-pink)}.fine-print.success{color:var(--dark-green)}.danger{color:var(--dark-pink)}@media screen and (max-width:600px){h1{font-size:26px}h2{font-size:22px}h3{font-size:16px}.label-xl{font-size:18px}.label-large{font-size:14px}.label-medium{font-size:12px}.label-normal{font-size:10px}.label-small{font-size:8px}.label-xs{font-size:6px}}.app-page{align-items:center;align-self:stretch;background:var(--gray-1);border-radius:36px 36px 0 0;border-top:2px solid var(--pure-white);box-shadow:0 0 16px 0 #524b491f;display:flex;flex:1 0;flex-direction:column;height:100%;max-height:var(--app-page-height);max-width:100vw;min-height:var(--app-page-height);padding:30px 40px 40px;position:relative;top:70px;width:100vw}.app-page-content{align-items:flex-start;flex:1 0;flex-grow:1;gap:30px;max-width:calc(100vw - 80px);min-width:100%}.app-main-content,.app-page-content{align-self:stretch;display:flex;height:var(--app-page-content-height);max-height:var(--app-page-content-height);min-height:var(--app-page-content-height)}.app-main-content{align-items:center;background:var(--pure-white);border-radius:24px;box-shadow:0 20px 60px 0 #524b4933;flex:1 1 auto;flex-direction:column;max-width:100%;min-width:500px;overflow:hidden;padding:12px;position:relative;transition:all 1s ease}.app-main-content h1{color:#756f6d;padding:12px 26px 18px}.app-main-content h1,.join-classroom-panel{align-items:center;align-self:stretch;display:flex;justify-content:center}.join-classroom-panel{background:var(--gray-2);border-radius:6px;color:var(--gray-10);gap:14px;padding:28px 42px;text-align:center}.join-classroom-panel:hover{background:linear-gradient(0deg,#0000001a 0,#0000001a 100%),var(--gray-2);cursor:pointer}.classroom-panel{align-items:center;align-self:stretch;background:var(--dark-green);border-radius:6px;color:var(--pure-white);display:flex;flex-direction:row;gap:10px;justify-content:space-between;padding:36px 42px;text-align:center}.classroom-panel:hover{background:linear-gradient(0deg,#0003 0,#0003 100%),var(--dark-green);cursor:pointer}.row{align-items:center;flex-direction:row;gap:14px}.col,.row{display:flex}.col{flex-direction:column}.row.stretch{align-self:stretch;justify-content:space-evenly}.row.stretch>*{flex:1 1}.row.spaced{align-self:stretch;justify-content:space-between;width:100%}.item-list{align-items:center;align-self:stretch;background:var(--gray-1);border:2px solid var(--gray-2);border-radius:12px;display:flex;flex:1 0;flex-direction:column;height:100%;max-height:100%;overflow-y:auto}.pin-top-right{position:absolute;right:20px;top:15px}.pin-top-left{left:20px;position:absolute;top:15px}.pin-bottom-right{bottom:15px;position:absolute;right:20px}.pin-bottom-left{bottom:15px;left:20px;position:absolute}.centered{left:50%;position:absolute;transform:translateX(-50%)}@media screen and (max-width:700px){.app-page{padding:10px}.app-page-content{gap:10px;min-height:var(--app-page-height-small)}.app-main-content,.app-page-content{height:var(--app-page-content-height-small);max-height:var(--app-page-content-height-small)}.app-main-content{max-width:calc(100vw - 20px);min-height:var(--app-page-content-height-small);min-width:calc(100vw - 20px);padding:5px;width:calc(100vw - 20px)}.app-main-content h1{height:80px;padding:6px 10px 8px}.classroom-panel,.join-classroom-panel{padding:10px}.row{gap:4vh}}.welcome-panel{align-items:center;align-self:stretch;display:flex;flex:1 0;flex-direction:column;gap:28px;justify-content:center;padding-bottom:0}.welcome-panel img{width:120px}.labeled-input{align-items:center;align-self:stretch;background:var(--pure-white);border:2px solid var(--gray-7);border-radius:6px;display:flex;flex:1 0;flex-direction:row;justify-content:space-between}.labeled-input:focus-within{outline:1px auto -webkit-focus-ring-color}.labeled-input input{border:none!important;width:100%!important}.labeled-input input:focus-visible{outline:none}.labeled-input.label-right{padding-right:10px}.labeled-input.label-left{padding-left:10px}.labeled-input.valid{outline:var(--dark-green) auto 1px}.labeled-input.invalid{outline:var(--dark-pink) auto 1px}.action-buttons{align-items:center;align-self:stretch;display:flex;gap:15px;justify-content:flex-end}.css-1gv0vcd-MuiSlider-track{border-radius:30px!important}.css-187mznn-MuiSlider-root,.css-1gv0vcd-MuiSlider-track{color:var(--gray-4)!important}.css-eg0mwd-MuiSlider-thumb,.css-eg0mwd-MuiSlider-thumb:after{border-radius:0!important;color:var(--gray-4)!important;height:10px!important;width:5px!important}.form-contents{align-self:stretch;gap:18px;overflow:auto}.form,.form-contents{align-items:center;display:flex;flex-direction:column}.form{color:var(--gray-10);gap:48px;margin-top:20px;max-width:90vw;min-width:min(500px,95vw);padding:12px;text-align:center;width:100%}.form .app-button{align-self:stretch}@keyframes poofAppear{0%{filter:blur(5px);opacity:0;transform:scale(.5) rotate(-10deg)}50%{filter:blur(2px);opacity:.5;transform:scale(1.1) rotate(5deg)}to{filter:blur(0);opacity:1;transform:scale(1) rotate(0deg)}}
/*# sourceMappingURL=main.4ef48d6f.css.map*/