/* Compact Tutorial UI; the authentic THT sidebar keeps its own styles. */
#thtt-root{font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;min-width:0}
#thtt-root h1{font-size:clamp(24px,2.3vw,30px);letter-spacing:normal;margin:8px 0 10px}
#thtt-root h2{font-size:21px;margin-bottom:10px}
#thtt-root h3{font-size:17px;margin-bottom:6px}
#thtt-root p{margin-bottom:10px}
#thtt-root small,#thtt-root .tt-meta{line-height:1.45}
#thtt-root button,#thtt-root input,#thtt-root .tt-card,#thtt-root .tt-hero,#thtt-root .tt-hero-side,#thtt-root .tt-outline>details,#thtt-root .tt-diagram,#thtt-root .tt-callout,#thtt-root .tt-summary,#thtt-root .tt-steps,#thtt-root .tt-step-number,#thtt-root .tt-tag,#thtt-root .tt-unit-number,#thtt-root .tt-block-heading>span,#thtt-root .tt-check,#thtt-root .tt-check-options label,#thtt-root .tt-feedback,#thtt-root .tt-btn,#thtt-root .tt-note,#thtt-root .tt-empty,#thtt-root .tt-toast,#thtt-root .tt-practice-item,#thtt-root .tt-objectives,#thtt-root .tt-lang,#thtt-root .tt-equation,#thtt-root .tt-area-cell{border-radius:5px!important}
/* The core's :is() reset includes a class-plus-type selector. Keep its stronger
   !important rule from flattening Tutorial sections back to 4px. */
.thtt-document #thtt-root :is(section,article,aside,details,fieldset,button){border-radius:5px!important}
#thtt-root .tt-top{padding:10px 20px;gap:12px}
#thtt-root .tt-container{max-width:1400px;padding:16px 20px 36px}
#thtt-root .tt-breadcrumb{gap:6px;margin-bottom:12px}
#thtt-root .tt-tag{padding:3px 8px}
#thtt-root .tt-hero{grid-template-columns:minmax(0,1fr) 265px;gap:16px;padding:16px}
#thtt-root .tt-hero-side{padding:12px;gap:8px}
#thtt-root .tt-review-count{font-size:24px}
#thtt-root .tt-toolbar{gap:12px;margin:12px 0}
#thtt-root .tt-search{width:min(400px,100%);flex-shrink:0}
.thtt-document #thtt-root .tt-search input{padding:7px 10px 7px 36px!important}
#thtt-root .tt-search svg{left:10px;top:10px}
#thtt-root .tt-grid{gap:10px}
#thtt-root .tt-card{padding:14px;gap:6px}
#thtt-root .tt-card .tt-card-bottom{padding-top:8px}
#thtt-root .tt-unit-number{width:30px;height:30px}
#thtt-root .tt-btn{padding:6px 10px;min-height:34px}
#thtt-root .tt-btn.small{padding:4px 8px;min-height:30px}
#thtt-root .tt-note,#thtt-root .tt-empty{padding:12px}
#thtt-root .tt-note{margin:12px 0;gap:8px}
#thtt-root .tt-layout{grid-template-columns:200px minmax(0,1fr);gap:18px}
#thtt-root .tt-outline{top:12px;min-width:0}
#thtt-root .tt-outline>details{padding:10px}
#thtt-root .tt-outline nav{margin-top:6px;max-height:65vh;overflow-y:auto}
#thtt-root .tt-outline nav a{padding:6px 8px;line-height:1.4}
#thtt-root .tt-outline .tt-meta{margin-top:10px}
#thtt-root .tt-lesson{max-width:none}
#thtt-root .tt-lesson-header{margin-bottom:16px}
#thtt-root .tt-objectives{padding:10px 14px}
#thtt-root .tt-block{margin:18px 0;scroll-margin-top:16px}
#thtt-root .tt-block-heading{gap:8px;margin-bottom:10px}
#thtt-root .tt-block-heading h2{font-size:19px!important}
#thtt-root .tt-paragraphs p:last-child{margin-bottom:0}
#thtt-root .tt-callout{padding:12px 14px}
#thtt-root .tt-summary{padding:12px}
#thtt-root .tt-step{padding:10px 12px}
#thtt-root .tt-step summary{font-size:16px;gap:8px}
#thtt-root .tt-step>div{margin:10px 0 0 28px}
#thtt-root .tt-step-number{width:22px;height:22px}
#thtt-root .tt-diagram,#thtt-root .tt-check{padding:14px}
#thtt-root .tt-diagram-caption{margin-top:10px!important}
#thtt-root .tt-control-row{gap:12px;margin-top:12px}
#thtt-root .tt-percent-row{gap:10px;margin:10px 0}
#thtt-root .tt-bar-track{height:28px}
#thtt-root .tt-percent-row b{font-size:17px}
#thtt-root .tt-equation{padding:10px;font-size:17px}
#thtt-root .tt-area-grid{width:min(100%,260px);margin:12px auto}
#thtt-root .tt-area-controls,#thtt-root .tt-path-controls{margin-top:10px}
#thtt-root .tt-path-svg{max-height:190px;margin:10px 0}
#thtt-root .tt-check form{margin-top:10px;gap:10px}
#thtt-root .tt-check-options{gap:6px;margin-bottom:6px}
#thtt-root .tt-check-options label{padding:7px 10px}
#thtt-root .tt-feedback{padding:10px;margin-top:10px}
#thtt-root .tt-practice-list{gap:6px}
#thtt-root .tt-practice-item{padding:9px 12px;gap:10px}
#thtt-root .tt-finish{margin:18px 0;padding-top:14px}
#thtt-root .tt-footer{margin-top:24px}
#thtt-root .tt-course-lesson-links{margin-top:6px;gap:6px}
#thtt-root .tt-course-lesson-links .tt-btn{justify-content:flex-start;text-align:left}
#thtt-root .tt-icon-star{color:#0aa4df;fill:currentColor;stroke:none;width:17px;height:17px}
/* A shared panel renderer gives every imported course the same visual grammar. */
#thtt-root .tt-panel{--tt-panel-edge:#b9cfe2;--tt-panel-head:#dceaf5;--tt-panel-body:#f1f7fc;border:1px solid var(--tt-panel-edge);background:var(--tt-panel-body);padding:0;margin:12px 0;overflow:hidden}
#thtt-root .tt-panel-example{--tt-panel-edge:#b5d4c4;--tt-panel-head:#d7ebdf;--tt-panel-body:#f0f8f3}
#thtt-root .tt-panel-practice{--tt-panel-edge:#e2c6a9;--tt-panel-head:#f4dfca;--tt-panel-body:#fff7ee}
#thtt-root .tt-panel-note{--tt-panel-edge:#cfd2d9;--tt-panel-head:#e3e5ea;--tt-panel-body:#f7f8fa}
#thtt-root .tt-panel-visual{--tt-panel-edge:#c9c4dc;--tt-panel-head:#e7e2f1;--tt-panel-body:#f7f5fb}
#thtt-root .tt-panel>.tt-block-heading{background:var(--tt-panel-head);border-bottom:1px solid var(--tt-panel-edge);margin:0;padding:7px 12px;align-items:flex-start}
#thtt-root .tt-panel>.tt-block-heading>span{background:#ffffff80;color:#344b60}
#thtt-root .tt-panel>.tt-paragraphs{padding:9px 12px}
#thtt-root .tt-panel>.tt-source-image{margin:9px 12px;max-width:calc(100% - 24px)}
#thtt-root .tt-panel>.tt-steps,#thtt-root .tt-panel>.tt-diagram,#thtt-root .tt-panel>.tt-authored-figure,#thtt-root .tt-panel>.tt-bank-problem,#thtt-root .tt-panel>.tt-source-images,#thtt-root .tt-panel>.tt-step,#thtt-root .tt-panel>form,#thtt-root .tt-panel>[data-feedback]{margin:9px 12px;max-width:calc(100% - 24px)}
#thtt-root .tt-panel>.tt-bank-problem{padding:9px;background:#fff;border:1px solid var(--tt-panel-edge);border-radius:5px}
#thtt-root .tt-panel>.tt-btn,#thtt-root .tt-panel>small{margin:4px 12px 9px}
#thtt-root .tt-panel .tt-steps{background:#fafffc;border-color:#c7ded1}
#thtt-root .tt-panel .tt-step>summary{background:#e7f2eb;margin:-10px -12px;padding:8px 12px}
#thtt-root .tt-panel .tt-step[open]>summary{margin-bottom:8px}
#thtt-root .tt-panel .tt-step>div{margin:7px 0 0 28px}
#thtt-root .tt-paragraphs .tt-prose-list{padding-left:22px;margin:0}
#thtt-root .tt-paragraphs .tt-prose-list>li{margin:3px 0;overflow-wrap:anywhere}
#thtt-root .tt-paragraphs .tt-prose-list+.tt-prose-list,#thtt-root .tt-paragraphs p+.tt-prose-list,#thtt-root .tt-paragraphs .tt-prose-list+p{margin-top:7px}
#thtt-root .tt-practice-section{padding:0 0 12px}
#thtt-root .tt-practice-section>.tt-meta,#thtt-root .tt-practice-section>.tt-practice-cards,#thtt-root .tt-practice-section>.tt-practice-pages,#thtt-root .tt-practice-section>.tt-practice-list{margin:9px 12px}
#thtt-root .tt-objectives{background:#f1f7fc;border:1px solid #b9cfe2;padding:0 12px 9px}
#thtt-root .tt-objectives>strong{background:#dceaf5;margin:0 -12px 8px;padding:6px 12px;border-bottom:1px solid #b9cfe2}
@media(max-width:760px){#thtt-root .tt-panel .tt-step>div{margin-left:0}}
.thtt-integrated #thtt-root .tt-top{display:none}
.thtt-integrated #thtt-root .tt-container{padding:0 0 24px;max-width:none}
.thtt-integrated #tht-content{min-width:0}
#thtt-root .tt-visual-drawing{max-width:500px;margin:10px auto}
#thtt-root .tt-visual-drawing svg{display:block;width:100%;max-height:260px;font:16px system-ui,sans-serif;fill:#17324d}
#thtt-root .tt-fraction-strip{display:grid;gap:2px;border:1px solid #8fcaca;padding:3px;border-radius:5px;height:70px}
#thtt-root .tt-fraction-strip>span{background:#fff;border:1px solid #c3dddd;border-radius:5px}
#thtt-root .tt-fraction-strip>span.shaded,#thtt-root .tt-dice-grid>span.shaded{background:#229f9d;color:#fff;border-color:#147d83}
#thtt-root .tt-dice-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
#thtt-root .tt-dice-grid>span{font:14px/1.4 system-ui,sans-serif;padding:8px 3px;text-align:center;background:#fff;border:1px solid #d1dce5;border-radius:5px}
#thtt-root [data-visual-result]{margin-top:10px}
@media(max-width:1100px){#thtt-root .tt-layout{display:block}#thtt-root .tt-outline{position:static;margin-bottom:12px}#thtt-root .tt-outline nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:230px}#thtt-root .tt-outline .tt-meta{display:none}}
@media(max-width:980px){#thtt-root .tt-hero{grid-template-columns:minmax(0,1fr) 220px;gap:12px}#thtt-root .tt-toolbar{align-items:stretch;flex-direction:column}}
@media(max-width:760px){#thtt-root .tt-top{padding:10px 12px}#thtt-root .tt-container{padding:12px 14px 24px}#thtt-root .tt-hero{grid-template-columns:1fr;padding:12px;gap:12px}#thtt-root .tt-search{width:100%}#thtt-root .tt-outline nav{display:flex;max-height:240px}#thtt-root .tt-lesson-header{margin-top:12px}#thtt-root .tt-diagram,#thtt-root .tt-check{padding:12px}#thtt-root .tt-percent-row{gap:6px}#thtt-root .tt-step>div{margin-left:0}}
