.t2-root{overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;font-size:16px}.t2-root :is(main,section,article,figure,header,footer,nav,form,fieldset,div,label){min-width:0}.t2-root :is(button,input,select,textarea){min-width:44px;max-width:100%;min-height:44px;font-size:16px}.t2-root button{white-space:normal;overflow-wrap:anywhere;line-height:1.45}.t2-root :is(input,select,textarea){width:auto;font-size:16px}.t2-root textarea{width:100%}.t2-root :is(p,li,dd){overflow-wrap:anywhere}.t2-root :is(img,svg,canvas){max-width:100%}.t2-root :is(.t2-toy,.t2-learning-scene>svg){width:100%;height:auto;max-height:clamp(150px,38dvh,340px);display:block}.t2-root .t2-learning-scene{width:100%;min-width:0;margin:0;padding:12px}.t2-root .t2-learning-scene figcaption{gap:5px;height:auto;min-height:0}.t2-root .t2-learning-scene figcaption :is(strong,span){font-size:16px;line-height:1.6}.t2-root .t2-visual-controls{flex-wrap:wrap;gap:8px}.t2-root .t2-visual-controls button{min-height:44px;padding:9px 8px;font-size:16px}.t2-root .t2-visual-controls button>span{font-size:14px}.t2-root .t2-top{flex-wrap:wrap;gap:10px;min-height:64px;padding:10px clamp(12px,3vw,36px)}.t2-root .t2-top>:is(a,button){min-height:44px}.t2-root .t2-top>strong{max-width:100%;font-size:16px}.t2-root .t2-room-title{min-width:min(160px,100%)}.t2-root .t2-room-title small{white-space:normal;text-overflow:clip;max-width:100%;font-size:14px;overflow:visible}.t2-root .t2-code{flex:none}.t2-root .t2-code b{font-size:16px}.t2-root .t2-entry{width:100%;padding:clamp(20px,4vw,48px) clamp(16px,3vw,32px) 36px}.t2-root .t2-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,3vw,36px)}.t2-root .t2-intro h1{font-size:clamp(28px,3.4vw,44px)}.t2-root :is(.t2-intro p,.t2-product strong,.t2-preparation,.t2-past p,.t2-note){font-size:16px}.t2-root .t2-product{min-width:0}.t2-root .t2-product>svg{flex:none}.t2-root .t2-entry-actions{flex-wrap:wrap;gap:12px}.t2-root .t2-entry-actions :is(button,a){white-space:normal;min-height:44px;font-size:16px}.t2-root .t2-entry-actions a{margin-left:0;padding:10px}.t2-root .t2-entry-form{width:100%;max-width:600px;margin:24px auto;padding:clamp(18px,3vw,30px)}.t2-root .t2-entry-form input{width:100%}.t2-root .t2-past summary{min-height:44px;padding:10px 0;font-size:16px}.t2-root .t2-past a{flex-wrap:wrap;gap:12px;min-height:44px}.t2-root:has(.t2-bottom){flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.t2-root:has(.t2-bottom)>:is(.t2-top,.t2-progress,.t2-bottom,.t2-error){flex:none;width:100%}.t2-root:has(.t2-bottom)>.t2-stage{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;width:100%;min-height:0;margin:0 auto;padding:14px clamp(14px,3vw,32px) 24px;overflow:auto}.t2-root .t2-progress{flex-wrap:wrap;gap:8px;width:100%;padding:10px clamp(14px,3vw,32px)}.t2-root .t2-progress>span:first-child{font-size:14px}.t2-root .t2-progress select{flex:210px;min-width:min(210px,100%);max-width:100%;min-height:44px;font-size:16px}.t2-root .t2-progress .t2-material-button{min-height:44px;margin-left:auto;padding:8px 12px;font-size:16px}.t2-root .t2-bottom{background:#fff;flex-wrap:wrap;align-items:center;gap:10px;min-height:70px;padding:10px clamp(12px,3vw,32px);display:flex;position:static}.t2-root .t2-bottom button{min-width:88px;max-width:100%;min-height:44px;padding:10px 14px;font-size:16px}.t2-root .t2-bottom>span{flex:1;min-width:0;font-size:16px}.t2-root .t2-bottom small{max-width:none;font-size:14px;line-height:1.45}.t2-root .t2-bottom>a{align-items:center;min-height:44px;font-size:16px;display:inline-flex}.t2-root .t2-page-heading h1{font-size:clamp(25px,2.8vw,36px)}.t2-root .t2-page-heading>p{font-size:17px;line-height:1.65}.t2-root .t2-scene-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:start;gap:clamp(16px,3vw,32px);min-height:0}.t2-root .t2-content{min-width:0}.t2-root .t2-concepts :is(h2,p),.t2-root .t2-choices>button{font-size:17px}.t2-root .t2-concepts article{padding:18px 20px}.t2-root .t2-concepts .t2-card-number{top:20px;left:20px}.t2-root .t2-concepts .t2-unrevealed{padding:8px}.t2-root .t2-unrevealed button{min-height:44px;font-size:16px}.t2-root .t2-card-tray,.t2-root .t2-records{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.t2-root .t2-card-tray h2{min-height:0;margin:8px 0 18px;font-size:22px}.t2-root .t2-card-tray p{font-size:16px}.t2-root .t2-bins button{white-space:normal;min-height:44px;font-size:16px}.t2-root .t2-order{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.t2-root .t2-order-choices button{min-height:44px;font-size:16px}.t2-root .t2-order-path>div{min-width:0}.t2-root .t2-order-path>div>span{min-width:0;font-size:16px}.t2-root .t2-talk li{min-width:0}.t2-root .t2-talk li>span{flex:none}.t2-root .t2-talk p{font-size:17px}.t2-root .t2-timer{flex-wrap:wrap}.t2-root .t2-timer button{min-height:44px;font-size:16px}.t2-root .t2-writing{grid-template-columns:minmax(160px,230px) minmax(0,1fr)}.t2-root .t2-write-tabs button{min-height:44px;font-size:16px}.t2-root .t2-paper{padding:clamp(18px,3vw,28px)}.t2-root .t2-paper label{font-size:clamp(20px,2.2vw,24px)}.t2-root .t2-paper p{font-size:16px}.t2-root .t2-paper textarea{max-width:100%;min-height:160px;font-size:18px}.t2-root .t2-field-nav{flex-wrap:wrap;font-size:16px}.t2-root .t2-field-nav button{min-height:44px;font-size:16px}.t2-root :is(.t2-submit,.t2-feedback,.t2-local-preview,.t2-record-detail){max-width:100%}.t2-root :is(.t2-submit>span,.t2-feedback,.t2-records span,.t2-records small,.t2-roster span,.t2-error){font-size:16px}.t2-root .t2-local-preview{min-width:0}.t2-root .t2-teacher-note{font-size:16px}.t2-root .t2-teacher-note summary{min-height:44px;padding:10px 0;font-size:16px}.t2-root .t2-result-filter{flex-wrap:wrap;gap:10px;font-size:16px}.t2-root .t2-result-filter select{min-width:min(220px,100%);max-width:100%;font-size:16px}.t2-root .t2-roster article{flex-wrap:wrap}.t2-root .t2-roster select{max-width:100%;min-height:44px}.t2-root .t2-material-dialog{width:min(880px,100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:auto}.t2-root .t2-material-dialog>header{align-items:start;gap:12px;padding:12px 16px}.t2-root .t2-material-dialog>header button{flex:none;min-width:44px;min-height:44px;padding:10px;font-size:16px}.t2-root .t2-material-dialog h2{font-size:22px}.t2-root .t2-material-dialog small{font-size:14px}.t2-root .t2-material-dialog>nav{flex-wrap:wrap;max-height:180px;padding:12px 16px;overflow:auto}.t2-root .t2-material-dialog>nav button{max-width:100%;min-height:44px;font-size:16px}.t2-root .t2-material-body{padding:0 16px 20px;font-size:16px}.t2-root .t2-material-body p{font-size:16px}@media (max-width:900px){.t2-root .t2-intro,.t2-root .t2-scene-layout{grid-template-columns:minmax(0,1fr)}.t2-root .t2-illustration{order:1;width:100%;max-width:540px;margin:0 auto}.t2-root .t2-content{order:0}.t2-root .t2-intro>.t2-toy{max-width:480px;max-height:clamp(150px,28dvh,240px);margin:auto}.t2-root .t2-writing,.t2-root .t2-order{grid-template-columns:minmax(0,1fr)}.t2-root .t2-write-tabs{flex-flow:wrap;overflow:visible}.t2-root .t2-write-tabs button{flex:180px;max-width:100%}.t2-root .t2-top button{font-size:16px}.t2-root .t2-top .launcher-brand{max-width:100%}.t2-root .t2-top>strong{font-size:16px}.t2-root .t2-entry-actions button{flex:180px;padding:13px 16px}}@media (max-width:560px){.t2-root .t2-top{gap:8px;padding:8px 12px}.t2-root .t2-top .launcher-brand-caption{display:none}.t2-root .t2-top>strong{flex:140px}.t2-root .t2-top>a:last-child{font-size:16px}.t2-root .t2-room-title{flex:130px}.t2-root .t2-room-title small{font-size:14px}.t2-root .t2-progress{align-items:stretch}.t2-root .t2-progress select{flex-basis:100%;width:100%}.t2-root .t2-progress .t2-material-button{margin-left:0}.t2-root .t2-bottom{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:7px;padding:8px 12px;display:grid}.t2-root .t2-bottom button{width:100%;min-width:0;padding:9px 8px;font-size:16px}.t2-root .t2-bottom>span{max-width:110px;font-size:14px}.t2-root .t2-bottom small{font-size:14px}.t2-root .t2-panel-head{flex-wrap:wrap}.t2-root .t2-panel-head>div{flex-basis:100%}.t2-root .t2-pager{flex-wrap:wrap;gap:12px}.t2-root .t2-concepts article{padding:16px}.t2-root .t2-concepts .t2-card-number{top:18px;left:16px}.t2-root .t2-bins button{flex:80px}}@media (max-height:500px) and (min-width:700px){.t2-root .t2-top{min-height:54px;padding-top:5px;padding-bottom:5px}.t2-root .t2-top :is(.launcher-brand-caption,.t2-room-title small){display:none}.t2-root .t2-progress{padding-top:4px;padding-bottom:4px}.t2-root .t2-scene-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}.t2-root .t2-illustration{order:0}.t2-root :is(.t2-toy,.t2-learning-scene>svg){max-height:160px}.t2-root .t2-bottom{min-height:58px;padding-top:6px;padding-bottom:6px}.t2-root .t2-bottom small{display:none}}@media print{.t2-root:has(.t2-bottom){height:auto;min-height:0;display:block;overflow:visible}.t2-root:has(.t2-bottom)>.t2-stage{height:auto;max-height:none;overflow:visible}.t2-root .t2-print{overflow:visible}}
