/* Density follows the task; optional tools and comparisons are disclosed on demand. */
:root{--stv-space-1:4px;--stv-space-2:8px;--stv-space-3:12px;--stv-space-4:16px;--stv-space-5:24px}
body{font:400 15px/1.5 'Noto Sans',system-ui,sans-serif}
:is(button,input,select,summary){font-family:inherit}
[hidden]{display:none!important}
.stv-store .stv-store-section{padding:32px 0}.stv-store .stv-store-hero{padding:28px 0}
.stv-store .stv-store-hero .row{--bs-gutter-y:20px;--bs-gutter-x:32px}
.stv-store .stv-store-hero h1{font-size:clamp(26px,3vw,38px);line-height:1.15;letter-spacing:-.025em;margin-bottom:12px!important}
.stv-store .stv-store-hero :is(.mb-4,.mb-3){margin-bottom:12px!important}
.stv-store .stv-store-lead{font-size:15px;line-height:1.55;margin-bottom:12px}
.stv-store :is(h2,.stv-arch-title){font-size:clamp(22px,2.4vw,30px);line-height:1.2;letter-spacing:-.02em}
.stv-store .stv-store-offer{padding:16px;border:0;border-left:1px solid #ddd;box-shadow:none}
.stv-store .stv-store-offer h2{font-size:20px}.stv-store .stv-store-offer>p{font-size:13px;margin:6px 0}
.stv-store .stv-store-offer-prices{font-size:13px;margin:8px 0}.stv-store .stv-store-offer-buy{font-size:14px;min-height:40px;padding:8px 12px;background:#fff;color:#111;border:1px solid #aaa}
.stv-store .stv-store-offer-saving{background:#fff;color:#444;padding:4px 0}.stv-store-offer-samples{font-size:13px}.stv-store-offer-samples summary{padding:8px 0}
body.stv-store .stv-store-offer.stv-store-live-catalog .stv-store-offer-buy,body.stv-store .stv-store-offer.stv-store-live-catalog .stv-store-offer-buy:hover{background:#fff!important;color:#111!important;border-color:#aaa}
.stv-store .btn{padding:10px 14px;min-height:40px;font-size:14px}.stv-store .btn.stv-store-secondary{background:#fff!important;color:#111!important;border:1px solid #aaa!important}
.stv-store .stv-store-closing{padding:24px 16px}.stv-store .stv-store-footer{padding:16px 0;font-size:13px}
.stv-store :is(.mb-5){margin-bottom:20px!important}.stv-store .stv-store-number{margin-bottom:8px;width:24px;height:24px}
.stv-store .stv-store-faq-item summary{padding:12px 0}.stv-store .stv-store-faq-item h3{font-size:15px}
.stv-store .stv-store-how{margin:12px auto;max-width:1180px;border-block:1px solid #ddd;padding:12px 24px}.stv-store-how>summary{font-weight:650;cursor:pointer}
/* A short collection overview replaces the full product wall at first visit. */
.stv-ux-catalog[data-filters-mounted] .stv-arch-header{margin:0 0 12px}.stv-ux-catalog[data-filters-mounted] .stv-arch-title{font-size:26px!important;line-height:1.2!important}
.stv-ux-catalog[data-filters-mounted] .stv-arch-lead{font-size:14px;margin:6px 0 12px;line-height:1.5}
.stv-catalog-browser{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:12px 0 18px;scroll-margin-top:72px}
.stv-catalog-browser label{display:grid;gap:4px;font-size:12px;font-weight:600;min-width:160px}
.stv-catalog-browser input,.stv-catalog-browser select{min-height:40px;padding:8px;border:1px solid #bbb;border-radius:0;background:#fff;color:#111;font-size:14px;max-width:100%}
.stv-catalog-advanced>summary{min-height:40px;display:list-item;padding:9px 12px;border:1px solid #ccc;cursor:pointer;font-size:13px}
.stv-catalog-advanced[open]{flex-basis:100%;order:3}.stv-catalog-advanced-fields{display:flex;gap:12px;flex-wrap:wrap;padding:12px 0}
.stv-browser-status{flex-basis:100%;font-size:12px;color:#555;margin:0}.stv-browser-back,.stv-browser-more{background:#fff;color:#111;border:1px solid #aaa;padding:8px 12px;min-height:40px;font-size:13px;cursor:pointer}
.stv-collection-overview-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.stv-ux-catalog[data-filters-mounted] .stv-collection-tile{padding:16px;border:1px solid #ddd;box-shadow:none;margin:0;min-height:0}
.stv-ux-catalog[data-filters-mounted] .stv-collection-tile :is(h2,h3){font-size:19px!important;margin:6px 0!important}.stv-ux-catalog[data-filters-mounted] .stv-collection-tile p{font-size:13px;line-height:1.5;margin:5px 0}
.stv-collection-actions{display:flex;gap:14px;margin-top:10px}.stv-collection-actions a{font-size:13px;min-height:36px;display:inline-flex;align-items:center}
.stv-ux-catalog[data-filters-mounted] .stv-arch-category-head{margin:16px 0 10px}.stv-ux-catalog[data-filters-mounted] .stv-arch-category-head h2{font-size:21px!important}
.stv-ux-catalog[data-filters-mounted] .stv-arch-category-head p{display:none}.stv-ux-catalog[data-filters-mounted] .stv-arch-subject{margin:16px 0}
.stv-ux-catalog[data-filters-mounted] .stv-arch-subject-title{font-size:18px!important}.stv-ux-catalog[data-filters-mounted] .stv-arch-subject-head{margin-bottom:10px}
.stv-ux-catalog[data-filters-mounted] .stv-arch-grid{gap:12px}.stv-ux-catalog[data-filters-mounted] .stv-arch-card{padding:16px;box-shadow:none;border:1px solid #ddd;min-height:0}
.stv-ux-catalog[data-filters-mounted] .stv-arch-card-title{font-size:17px!important;margin:10px 0}.stv-ux-catalog[data-filters-mounted] .stv-arch-card-price{font-size:19px!important}
.stv-ux-catalog[data-filters-mounted] .stv-arch-card-desc{font-size:13px;line-height:1.5;margin:8px 0}
.stv-ux-catalog[data-filters-mounted] .stv-arch-card-meta{padding:8px 0;gap:16px;margin:6px 0}.stv-ux-catalog[data-filters-mounted] .stv-arch-meta-num{font-size:16px}.stv-ux-catalog[data-filters-mounted] .stv-arch-meta-label{font-size:12px}
.stv-ux-catalog[data-filters-mounted] .stv-arch-card-foot{padding-top:10px;gap:8px}.stv-ux-catalog[data-filters-mounted] .stv-arch-cta{font:600 13px/1.4 'Noto Sans',sans-serif;letter-spacing:0;text-transform:none;min-height:40px;padding:8px 12px}
.stv-price-details{font-size:13px;margin:8px 0}.stv-price-details summary{cursor:pointer;padding:6px 0;color:#555}.stv-price-details .stv-fcpay-comparison{margin:8px 0}
/* Reading space is bounded, not stretched to fill every available pixel. */
.stv-fc{height:auto!important;min-height:0;max-width:1100px;margin:0 auto}
.stv-fc .stv-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px 16px}
.stv-fc .stv-header{grid-column:1;grid-row:1;text-align:left}.stv-fc .stv-title{font-size:clamp(15px,1.6vw,20px);letter-spacing:0;text-transform:none;line-height:1.4}
.stv-fc .stv-sub{display:none}.stv-fc .stv-meta{grid-column:1;grid-row:2;gap:12px}.stv-fc .stv-counter{font:500 12px/1.4 'Noto Sans',sans-serif}
.stv-fc .stv-reader-toolbar{grid-column:2;grid-row:1/3;align-self:start;padding:0;margin:0}
.stv-fc .stv-coverflow-wrapper{grid-column:1/-1;grid-row:3;width:100%;height:clamp(260px,45vh,360px);min-height:0;flex:none}
.stv-fc .stv-controls{grid-column:1/-1;grid-row:4;width:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}
.stv-fc .stv-btn{font:600 14px/1.4 'Noto Sans',sans-serif;letter-spacing:0;text-transform:none;padding:8px 16px;min-height:42px;min-width:90px;flex:0 0 auto;background:#fff;color:#111;border:1px solid #bbb}
.stv-fc .stv-btn.stv-primary{background:#111;color:#fff;border-color:#111}
.stv-fc .stv-controls .stv-btn:is(.stv-prev,.stv-next){background:#fff!important;color:#111!important;border:1px solid #bbb!important;box-shadow:none}
.stv-fc .stv-controls .stv-fcpay-open-modal{font:400 12px/1.4 'Noto Sans',sans-serif!important;letter-spacing:0;text-transform:none;background:#fff!important;color:#555!important;border:0!important;padding:8px!important;min-height:40px;min-width:0}
.stv-fc .stv-nav-hint{grid-column:1/-1;grid-row:5;align-self:center;text-align:center;font-size:11px}
.stv-fc:fullscreen{width:100vw!important;height:100dvh!important;max-width:none!important;min-height:0!important;margin:0!important;overflow:hidden}
.stv-fc:fullscreen .stv-shell{display:flex;flex-direction:column;align-items:center;width:100%;height:100%;min-height:0;gap:8px;padding:12px}
.stv-fc:fullscreen .stv-coverflow-wrapper{width:100%;height:auto;min-height:0;flex:1 1 0%;}
.stv-fc:fullscreen .stv-coverflow{height:100%;min-height:0}
/* Adult study surfaces use simple rows; Kids keeps its intentional softer identity. */
.stv-quiz{max-width:1000px;padding:12px 16px}.stv-quiz-header h2{font-size:18px}.stv-quiz-kicker{font-size:11px;margin:3px 0}
.stv-quiz-board{padding:8px 0}.stv-quiz-board::before,.stv-quiz-board::after{display:none}
.stv-quiz:not([data-stv-quiz-theme=kids]) .stv-quiz-card{border:0;padding:12px 0;box-shadow:none;animation:none}
.stv-quiz:not([data-stv-quiz-theme=kids]) .stv-quiz-intro h3{display:none}
.stv-quiz-intro{gap:6px;text-align:left}.stv-quiz-intro p{line-height:1.5;font-size:14px}
.stv-quiz button{min-height:40px;font:600 14px/1.4 'Noto Sans',sans-serif;letter-spacing:0;text-transform:none;padding:8px 14px}
.stv-quiz-controls{justify-content:flex-start;gap:8px;margin:10px 0}.stv-quiz-controls button{flex:0 0 auto}
.stv-quiz-controls button:not(.stv-quiz-primary){background:#fff;color:#444;border-color:#bbb}
.stv-quiz-option{font-size:15px;min-height:44px;padding:9px 12px;margin:6px 0;gap:10px}
.stv-quiz-meta{margin:8px 0}.stv-quiz-card legend{font-size:clamp(17px,2vw,22px);letter-spacing:0;text-align:left;margin-bottom:12px}
.stv-quiz-help{font-size:11px}.stv-quiz-status:empty{min-height:0;margin:0}.stv-quiz-history-panel{margin:8px 0;padding:8px 0;font-size:12px}
.stv-quiz-list>li{margin-bottom:14px}.stv-chosen-panel .stv-quiz{padding:8px}.stv-chosen-panel{padding:12px 8px}
.stv-quiz[data-stv-quiz-theme=kids] .stv-quiz-card{padding:14px;border-radius:18px!important;box-shadow:0 3px 0 #e6def6}
.stv-quiz[data-stv-quiz-theme=kids] .stv-quiz-option{min-height:48px;padding:8px 10px;font-size:16px}
.stv-quiz[data-stv-quiz-theme=kids] .stv-quiz-card legend{font-size:19px}
.stv-chosen-footer{font-size:12px;min-height:0;padding:8px 12px}.stv-chosen-footer-dot{display:none}
.stv-lms{padding:16px;border:0;margin:16px 0}.stv-lms-heading{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #ddd}
.stv-lms-heading h2{font-size:22px}.stv-lms-heading p{margin:6px 0;font-size:14px}.stv-lms-kicker{letter-spacing:.04em;font-size:11px}
.stv-lms-progress{padding:12px;background:#fafafa;margin:12px 0}.stv-lms-progress-label strong{font-size:22px}
.stv-lms-progress progress{height:6px;margin:8px 0}.stv-lms-stats{gap:8px 16px}.stv-lms-badges:empty{display:none}
.stv-lms-course-card{padding:14px;border:0;border-top:1px solid #ddd}.stv-lms-course-grid{gap:16px}.stv-lms-module li{padding:12px 0}
.stv-lms .stv-lms-button{padding:8px 14px;min-height:40px;font-size:14px;border-width:1px}.stv-lms-completion{padding-top:12px;margin-top:16px;border-top:1px solid #ddd}
.stv-study-plan{padding:16px;border:0;border-top:1px solid #ddd;border-radius:0;margin:16px 0}.stv-study-plan li{padding:10px 2px}.stv-study-plan progress{height:6px}.stv-study-plan li p{font-size:13px;margin:4px 0}
.stv-activity-tools{font-size:12px;position:relative}.stv-activity-tools>summary{cursor:pointer;padding:8px;min-height:36px;color:#555}
.stv-activity-tools[open]{border:1px solid #ddd;padding:6px;background:#fff}.stv-activity-tools>button{display:block}
.stv-remote-presentation{max-width:1000px;margin:8px auto 16px;padding:8px 16px;border-top:1px solid #eee;font-size:12px;color:#555}
.stv-remote-presentation>summary{cursor:pointer;padding:6px 0}.stv-remote-presentation .stv-remote-toolbar{margin:8px 0;padding:12px;border:1px solid #ddd;font-size:13px}
.stv-slide .stv-slide-tools{gap:4px}.stv-slide .stv-slide-controls button{flex:0 1 160px;min-height:40px;letter-spacing:0}
@media(max-width:640px){.stv-store .stv-store-section{padding:24px 0}.stv-store .stv-store-hero{padding:20px 0}.stv-store .stv-store-offer{border-left:0;border-top:1px solid #ddd;padding:12px 0}.stv-store .stv-store-hero .row{--bs-gutter-y:12px}.stv-catalog-browser{gap:8px}.stv-catalog-browser>label{flex:1 1 140px}.stv-catalog-browser select,.stv-catalog-browser input{width:100%}.stv-fc .stv-shell{padding:12px 8px}.stv-fc .stv-coverflow-wrapper{height:300px}.stv-fc .stv-controls{gap:6px}.stv-fc .stv-btn{padding:8px 12px;min-width:80px}.stv-fc .stv-controls .stv-fcpay-open-modal{flex-basis:100%}.stv-quiz{padding:10px}.stv-quiz-controls button{min-height:44px}.stv-lms-progress-label{flex-direction:row;align-items:center}.stv-lms-resource>.stv-slide{min-height:480px;height:75vh}}

/* Mobile controls stay within their own content column; Chosen section tabs wrap instead of hiding off-screen. */
@media(max-width:640px){.stv-catalog-advanced{flex:1 1 100%;width:100%;min-width:0}.stv-catalog-advanced-fields{width:100%;min-width:0}.stv-catalog-advanced-fields>label{flex:1 1 140px;min-width:min(160px,100%)}.stv-chosen-tabs{display:flex;flex-wrap:wrap;overflow:visible;white-space:normal;gap:6px;padding:6px 0}.stv-chosen-tabs .stv-chosen-tab{flex:0 1 auto;justify-content:center;min-width:max-content}}

/* Narrow phones keep Chosen artwork inside its flex stage. */
@media(max-width:360px){body.stv-navbar-offset-stv .stv-chosen-art{--s:min(96vw,calc(100vw - 48px))!important;width:var(--s);height:var(--s);min-width:0;min-height:0;flex-shrink:1}}
