/* Shared library components: compact navigation, clear reading, persistent audio. */
:root{--muted:#526357;--primary:#2f6f5e}body{padding-bottom:0}button,a,input,select{touch-action:manipulation}button,input,select{min-height:44px}button{color:inherit}h1{font-size:clamp(28px,4vw,44px);overflow-wrap:anywhere}h2{font-size:clamp(22px,3vw,30px)}.muted{color:#526357;font-size:13px}.header-inner{min-height:80px;gap:24px;flex-wrap:nowrap}.nav-hubs{gap:0}.nav-hub{display:flex;align-items:center;min-height:44px;padding:10px 14px}.search-open{margin-left:auto;white-space:nowrap}.mobile-nav{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.page-space{padding-top:26px}.breadcrumbs{margin-bottom:20px}.section-heading{margin-bottom:14px}.section-heading h1{margin-bottom:10px}.compact-hero{padding:32px 40px;grid-template-columns:1.1fr 1fr;align-items:center}.compact-hero h1{font-size:clamp(34px,4vw,52px);margin:15px 0}.hero-book{background:#fffdf6;padding:25px;border:1px solid #dedfcd;border-radius:20px;display:grid;grid-template-columns:1fr;gap:10px}.hero-book img{float:right;object-fit:contain;margin:0 0 12px 18px;max-width:42%;height:130px}.hero-book h2{margin-top:20px;font-size:25px;line-height:1.3}.hero-book .btn{justify-self:start}.age-row{padding:20px 0}.chip{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;white-space:normal}.chip.selected{background:#e8f0eb;border-color:#2f6f5e;color:#224f42}.hub-types,.active-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.active-filters:empty{display:none}.hub-types{padding:4px 0}.filter-toggle{display:none}.filters h2{font-size:18px;margin:0}.filters label{font-size:12px}.filters{gap:14px}.catalog-layout{grid-template-columns:230px minmax(0,1fr);gap:24px}.cover-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;height:185px;padding:20px;color:#344b3a}.cover-placeholder .cover-ornament{font-size:30px;line-height:1;color:#56714e}.cover-placeholder strong{font:600 19px/1.3 Literata,'Literata Fallback',Georgia,serif;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cover-placeholder small{font-size:12px}.book-cover{aspect-ratio:1.3;object-fit:contain}.card-content{padding:16px;display:flex;flex-direction:column;flex:1}.book-card{display:flex;flex-direction:column}.card-content h3{font-size:16px}.card-meta{font-size:13px;flex-wrap:wrap;margin-top:auto;padding-top:10px}.card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.card-play{margin:0}.save-work{border:1px solid #cbd8cc;background:#fff;color:#2f6f5e;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:700}.save-work[aria-pressed=true]{background:#e8f0eb}.book-card:hover{transform:translateY(-2px)}.work-heading{margin:10px auto 24px}.work-heading h1{margin:12px 0}.work-heading p{font-size:14px;line-height:1.7}.work-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.work-heading .meta-chips{margin:14px 0}.reader-settings,.contents{max-width:850px;margin:12px auto;padding:0;background:#fffdf8;border:1px solid #dce3d7;border-radius:14px}.reader-settings summary,.contents summary{padding:14px 18px;min-height:48px;font-size:14px}.contents ol{padding:0 30px 16px 45px}.contents li{margin:8px 0;line-height:1.5}.reader-toolbar{position:static;border:0;margin:0;padding:8px 12px 16px;align-items:center}.reader-toolbar button{min-width:44px;min-height:44px;border:1px solid #dce3d7;background:#fff;font-size:13px}.reading-paper{padding:35px 45px;margin-top:18px;line-height:1.85}.reading-paper h2,.reading-paper h3{scroll-margin-top:24px;line-height:1.4}.reading-paper details{background:#edf3e9;padding:14px 18px;border-radius:12px;margin-bottom:26px}.reading-paper summary{font:600 15px Manrope;min-height:44px;display:flex;align-items:center}.reading-paper details[open] summary{margin-bottom:12px}.reading-finish{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:24px 0}.track{flex-wrap:wrap;justify-content:center}.audio-tracks{background:#edf1e7;border-radius:20px;padding:20px}.audio-cover{margin:0 auto 20px;width:200px;height:180px}.coloring-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.coloring-gallery figure{margin:0;background:white;padding:20px;border-radius:20px}.coloring-gallery img{width:100%;height:340px;object-fit:contain}.coloring-gallery h2{font-size:20px}.coloring-gallery figcaption{padding-top:15px}.coloring-gallery .btn{margin:4px 4px 0 0}.shelf-grid{display:grid;gap:12px;margin:22px 0}.shelf-item{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid #dce3d7;background:#fff;border-radius:14px}.shelf-item>a{flex:1;font-weight:700;line-height:1.5}.shelf-item small{display:block;color:#526357;font-weight:400}.shelf-item button{border:1px solid #d4dfd3;background:#f5f8f0;border-radius:8px;min-width:44px}.continue-home{margin-top:25px;padding:20px;border-radius:16px;background:#f2e9dd}.continue-home h2{font-size:20px}.continue-home a{display:block;padding:8px 0;font-weight:600}.empty-state{padding:50px 15px}.notice{line-height:1.7}.notice .btn{margin:5px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#243c2e;color:#fff;border-radius:12px;z-index:100;max-width:calc(100% - 24px);box-shadow:0 5px 20px #0003}.toast button{background:#fff;color:#243c2e;border:0;border-radius:8px;margin-left:10px}.has-player .toast{bottom:180px}
#search-dialog{width:min(640px,calc(100% - 30px));max-height:85dvh;border:1px solid #d7e0d1;border-radius:22px;padding:25px;color:#1f2a24;background:#fbf7f0}dialog::backdrop{background:#15231e88}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading h2{font-size:24px;margin:0 0 20px}.icon-button{border:1px solid #d3ddd1;background:#fff;width:44px;border-radius:50%;font-size:24px;flex-shrink:0}.search-form{display:flex;gap:8px;margin:8px 0 15px}.search-form input{min-width:0;flex:1;padding:13px;border:1px solid #bccdbe;border-radius:12px;background:white;font-size:16px}.search-result{display:flex;align-items:center;gap:12px;padding:14px 5px;border-bottom:1px solid #dce3d7;font-size:14px;font-weight:600}.search-result small{display:block;color:#526357;font-weight:400;margin-top:4px}.search-result img{width:44px;height:50px;object-fit:contain;border-radius:5px}.search-result:hover{background:#edf2e8}.night .site-header,.night .footer{background:#202920;color:#eff0e5}.night .reading-paper{background:#273126;color:#eff0e5}.night .reader-settings,.night .contents{background:#273126;color:#eff0e5}.night .reading-paper details{background:#344231}.night .work-heading .chip{color:#253c30}.night .breadcrumbs,.night .muted{color:#cad4c4}
#audio-dock{padding:12px max(20px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;background:#264f42}#audio-title{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px;color:white}#audio-dock audio{width:100%;height:36px}#audio-dock button{min-width:44px;min-height:44px;background:#f7f8ef;color:#224d3e;font-size:13px}#audio-dock label{font-size:13px;display:inline-flex;align-items:center;gap:5px}.audio-actions{display:flex;gap:5px;align-items:center}#audio-options{grid-column:1/-1;display:flex;gap:16px;align-items:center;flex-wrap:wrap}#audio-options select{border-radius:8px}#audio-options a{font-size:13px;text-decoration:underline}#audio-error{margin:8px 0;color:#fff1cd;font-size:13px}.has-player{padding-bottom:140px}.footer{padding-bottom:35px}.author-grid{overflow-wrap:anywhere}.author-grid a{min-height:44px}
@media(max-width:1000px){.header-inner{gap:10px}.nav-hub{padding:10px}.search-open span{display:none}.search-open{padding:10px 16px}.catalog-layout{grid-template-columns:200px minmax(0,1fr)}.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-book h2{font-size:22px}}
@media(max-width:700px){body{padding-bottom:66px}.header-inner{min-height:70px;padding-top:8px;padding-bottom:8px;flex-wrap:nowrap}.header-inner .nav-hubs{display:none}.header-inner .logo{font-size:21px}.search-open span{display:inline}.search-open{padding:8px 12px;font-size:12px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;z-index:18;background:#fffdf8;border-top:1px solid #dce3d7;padding:5px 8px max(5px,env(safe-area-inset-bottom))}.mobile-nav a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:10px;font-size:12px;font-weight:700}.mobile-nav a[aria-current=page]{background:#e8f0eb;color:#235742}.welcome-line{padding:16px 0;font-size:12px;letter-spacing:.3px}.welcome-line span:last-child{display:none}.compact-hero{grid-template-columns:1fr;padding:22px;gap:20px}.compact-hero h1{font-size:35px;margin:10px 0}.compact-hero h1 br{display:none}.compact-hero p{font-size:13px;margin:0;line-height:1.6}.compact-hero .hero-actions{margin-top:16px;gap:8px}.compact-hero .btn{padding:11px 14px}.hero-book{padding:18px;gap:8px}.hero-book h2{font-size:21px;margin:12px 0}.hero-book img{width:100px;height:90px;margin-left:8px}.hero-book .eyebrow{font-size:12px}.page-space{padding-top:18px}.breadcrumbs{font-size:13px;margin-bottom:16px}.section-heading{align-items:flex-start;gap:8px}.section-heading h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px}.section-heading p{margin-bottom:0}.filter-toggle{display:inline-flex;flex-shrink:0;padding:11px 13px}.catalog-layout{display:block}#catalog-filters{display:none;margin-bottom:20px}#catalog-filters.open{display:block}.filters{padding:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.filters h2,.filters>label:first-of-type{grid-column:1/-1}.filters label{min-width:0}.filters select{max-width:100%;font-size:14px}.active-filters{margin-bottom:16px;gap:6px}.active-filters .chip{font-size:13px;padding:8px 12px}.books-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.book-cover,.cover-placeholder{height:145px;padding:12px}.cover-placeholder strong{font-size:15px}.cover-placeholder small{display:none}.cover-placeholder .cover-ornament{font-size:25px}.card-content{padding:12px}.card-content h3{font-size:14px}.card-content .eyebrow{font-size:12px;letter-spacing:1px}.card-content .muted{font-size:13px;line-height:1.5}.card-meta{gap:4px;font-size:12px}.card-meta span{padding:4px}.card-actions>*{width:100%;font-size:13px;padding:8px}.library-section{padding-top:28px}.library-section .section-heading{align-items:center}.section-heading>a{font-size:13px;white-space:nowrap}.work-heading{text-align:left;margin:5px 0 20px}.work-heading h1{font-size:29px;letter-spacing:-.8px}.work-heading .meta-chips,.work-actions{justify-content:flex-start;gap:8px}.work-actions .btn{padding:10px 13px}.reading-paper{padding:22px 18px;font-size:21px;margin:14px -4px;border-radius:12px}/* На телефоне текст по умолчанию 21 px — столько же ставит скрипт настроек
   чтения (cfg.size в app.js). Было 20: с переносом панели чтения текст оказался
   на первом экране и перестраивался на глазах, CLS «Детства Никиты» 0,013.
   Обзорам скрипт размер не задаёт, им оставлено 20. Меняешь одно — меняй другое. */.reading-paper.work-overview{font-size:20px}.reader-toolbar{justify-content:flex-start}.reader-toolbar .btn{font-size:12px}.coloring-gallery{grid-template-columns:1fr;gap:16px}.coloring-gallery img{height:300px}.shelf-item{flex-wrap:wrap;padding:14px;gap:8px}.shelf-item>a{flex-basis:100%}.audio-tracks{padding:18px}.track{gap:8px}.track .btn{font-size:12px;padding:11px 14px}.track>a{min-height:44px;display:flex;align-items:center}.toast{bottom:78px}.has-player .toast{bottom:200px}.has-player{padding-bottom:200px}#audio-dock{bottom:58px;padding:9px 12px;gap:6px;grid-template-columns:minmax(0,1fr) auto}#audio-dock .audio-main{grid-column:1/-1;min-width:0}#audio-dock audio{height:32px}#audio-dock .audio-actions{grid-column:1/-1;justify-content:flex-end}#audio-dock button{min-height:36px;min-width:44px;padding:6px 10px}#audio-title{margin:0 0 4px;font-size:12px}#audio-options{max-height:35dvh;overflow:auto;gap:10px}#audio-options label{font-size:12px}.has-player .mobile-nav{z-index:21}.author-grid{grid-template-columns:1fr 1fr;gap:10px}#search-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:22px 18px;margin:0}.dialog-heading h2{font-size:23px}.search-form .btn{padding:11px 14px}.night .mobile-nav{background:#273126;color:#eff0e5}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.book-card:hover{transform:none}}
@media print{body,body.night{background:white!important;color:black!important;padding:0}.site-header,.footer,.mobile-nav,.reader-settings,.contents,.breadcrumbs,.work-actions,.meta-chips,.library-section,.reading-finish,.audio-tracks,#audio-dock,.toast,.downloads,.notice{display:none!important}.reading-paper{max-width:none!important;padding:0!important;margin:0!important;color:black!important;background:white!important;font-size:14pt!important;line-height:1.6!important}.reading-paper img{max-height:80vh;break-inside:avoid}.work-heading{margin:0 0 20px}.coloring-gallery{display:block}.coloring-gallery figure{break-after:page;padding:0}.coloring-gallery figcaption{display:none}.coloring-gallery img{height:90vh;object-fit:contain}.printing-sheet .coloring-gallery figure:not(.print-target),.printing-sheet .work-heading{display:none!important}.reading-paper details>*{display:block!important}.reading-paper summary{display:none!important}@page{size:A4;margin:15mm}}
.quiz-player{max-width:800px;margin:24px auto;background:white;border:1px solid #d7e1d4;border-radius:20px;padding:30px}.quiz-player fieldset{border:0;padding:0;margin:20px 0}.quiz-player legend{font-size:21px;font-weight:700;line-height:1.5;margin-bottom:16px}.quiz-player fieldset label{display:flex;align-items:center;gap:12px;min-height:52px;margin:8px 0;padding:12px;border:1px solid #d7e1d4;border-radius:12px;cursor:pointer}.quiz-player input{width:20px;height:20px;min-height:20px;flex-shrink:0;accent-color:#2f6f5e}.quiz-feedback{padding:15px;background:#fff2dc;border-radius:12px;line-height:1.6}.quiz-feedback.correct{background:#e4f0e2}@media(max-width:700px){.quiz-player{padding:20px 16px}.quiz-player legend{font-size:18px}}
.feedback-form{max-width:800px;margin:24px auto;padding:16px 20px;background:#f0f3e9;border-radius:14px}.feedback-form summary{font-size:14px;min-height:44px;display:flex;align-items:center}.feedback-form form{display:grid;gap:14px;padding-top:14px}.feedback-form label:not(.sr-only){display:grid;gap:6px;font-size:13px}.feedback-form select,.feedback-form textarea{width:100%;padding:10px;border:1px solid #bccdbb;border-radius:8px;background:white;font-size:16px}.feedback-form button{justify-self:start}@media print{.feedback-form{display:none!important}}
@media(max-width:360px){.search-open span{display:none}.search-open{min-width:44px;padding:8px 12px}.header-inner .logo{font-size:19px}.container{padding-left:15px;padding-right:15px}.filters{grid-template-columns:1fr}.filters>label,.filters h2{grid-column:auto}.section-heading h1{font-size:27px}}
.chapter-navigation{max-width:850px;margin:12px auto;display:flex;justify-content:space-between;gap:10px}.chapter-navigation button{font-size:12px}.dictionary-word{font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px dashed #65846b;border-radius:0;padding:0;min-height:0;display:inline;text-align:inherit;line-height:inherit}#word-dialog{width:min(480px,calc(100% - 30px));border:1px solid #d7e0d1;border-radius:20px;padding:25px;background:#fffdf7;color:#1f2a24}#word-meaning{line-height:1.8}#word-source{font-size:13px;text-decoration:underline}.reader-toolbar button[aria-pressed=true]{background:#dcebdc}@media print{.chapter-navigation{display:none!important}.dictionary-word{border:0}}
#paint-dialog{width:min(1000px,100% - 24px);max-height:95dvh;border:1px solid #d7e1d4;border-radius:18px;padding:22px;background:#fbf7f0;color:#1f2a24}.paint-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.paint-controls label{display:flex;align-items:center;gap:6px;font-size:12px}.paint-controls button,.paint-controls select{border:1px solid #c6d5c4;border-radius:8px;background:#fff;padding:8px;font-size:12px}.paint-controls .btn-primary{background:#2f6f5e}.paint-controls input[type=color]{width:48px;padding:2px}.paint-controls input[type=range]{width:100px}.paint-canvas-wrap{background:#e7e9de;padding:12px;border-radius:12px;overflow:auto;max-height:66dvh;text-align:center}#paint-canvas{display:block;max-width:100%;max-height:none;height:auto;margin:auto;touch-action:none;background:white;cursor:crosshair}#paint-status{font-size:13px;line-height:1.5;margin:14px 0}@media(max-width:700px){#paint-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:16px}.paint-canvas-wrap{max-height:62dvh;padding:6px}.paint-controls{gap:7px}}
.night .parent-tips,.night .feedback-form,.night .notice{background:#344231;color:#eff0e5}.night .book-card{color:#1f2a24}.night .book-card .muted,.night .library-section>.muted{color:#526357}.night .library-section>.muted{color:#cad4c4}.night .reader-toolbar{background:#273126}.image-fallback{display:block;font-size:12px;padding:12px;text-align:center;color:#526357}

.reading-paper.reader-light{background:#fff;color:#202a24}

@media print{.quiz-player,.parent-tips,.feedback-form,dialog{display:none!important}.work-heading .eyebrow{display:none}.reading-paper button.dictionary-word{background:none;color:black}}

.reader-diary{max-width:800px;margin:24px auto;padding:20px;border:1px solid #d7e1d4;border-radius:16px;background:#fffdf7;color:#202a24}.reader-diary summary{min-height:44px;font-weight:700;cursor:pointer}.reader-diary form{display:grid;gap:16px}.reader-diary label{display:grid;gap:8px}.reader-diary textarea{width:100%;padding:12px;font:inherit;border:1px solid #bacaba;border-radius:10px}.reader-diary form button{justify-self:start}@media print{.reader-diary{display:none!important}}

.quiz-editor fieldset{border:1px solid #bdcdbd;border-radius:12px;padding:20px;margin:20px 0}.quiz-editor legend{font-weight:700}.quiz-editor label{display:grid;gap:8px;margin-bottom:14px}.quiz-editor button{margin:6px}

.activity-plan{max-width:850px;margin:24px auto;padding:24px;background:#edf3e9;border-radius:18px;line-height:1.8;color:#202a24}.activity-plan p{white-space:pre-line}.activity-plan li{margin:12px 0}.activity-plan h3{font-size:19px}

.illustration-zoom{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}#image-dialog{width:min(1100px,100% - 24px);max-height:95dvh;border:1px solid #d7e0d1;border-radius:18px;padding:20px;background:#fffdf7;color:#202a24}#large-illustration{display:block;max-width:100%;max-height:75dvh;object-fit:contain;margin:0 auto 15px}#illustration-original{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline}@media(max-width:700px){#audio-dock button{min-height:44px}}

.activity-plan summary{font-weight:700;min-height:44px;cursor:pointer}.activity-plan[open] summary{margin-bottom:16px}

@media(max-width:700px){.compact-hero h1{letter-spacing:-1px;line-height:1.2}}

.chapter-position{max-width:850px;margin:16px auto;line-height:1.6;color:#526357}.chapter-navigation{flex-wrap:wrap}.contents [aria-current=page]{font-weight:800;text-decoration:underline}
.site-header{position:sticky;top:0;z-index:25}.reading-paper [data-read-block],.coloring-gallery figure{scroll-margin-top:96px}@media print{.site-header{position:static}}

.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.collection-tile{border:1px solid #d7e1d4;border-radius:18px;padding:24px;background:#fffdf7;line-height:1.7}.collection-tile h2{font-size:24px}.collection-description{max-width:850px;line-height:1.8;white-space:pre-line}.collection-details{padding:16px;border:1px solid #d7e1d4;border-radius:12px;margin:20px 0}.collection-details summary{min-height:44px;cursor:pointer}.collection-entry{display:flex;flex-direction:column;gap:10px}.collection-entry .book-card{flex:1}.collection-entry>button{width:100%}.collection-entry>button[aria-pressed=true]{background:#e0eddf}.reading-role{font-size:12px;font-weight:700;margin:0}.collection-filters{display:flex;gap:16px;flex-wrap:wrap;align-items:end;margin:24px 0}.collection-filters label{display:grid;gap:6px}.collection-filters select{padding:10px;border:1px solid #bdcdbb;border-radius:8px;background:white}#collection-selected{padding-left:25px}#collection-selected li{padding:18px;border:1px solid #bdcdbb;border-radius:12px;margin:15px 0}#collection-selected strong{display:block;margin-bottom:12px}#collection-selected button,#collection-search-results button{margin:5px}#collection-search-results{display:grid;gap:8px}@media(max-width:700px){.collection-grid{grid-template-columns:1fr}.collection-tile{padding:20px}.collection-entry>button{font-size:13px;padding:8px}.collection-filters{gap:10px}.collection-filters label{flex:1;min-width:100px}}

.collection-page>.meta-chips:empty{display:none}.collection-page .collection-description{font-size:15px;line-height:1.65;margin-bottom:16px}.collection-page .collection-details{padding:8px 16px;margin:16px 0}.collection-page .collection-progress{padding:14px 16px;font-size:14px;line-height:1.6}

.collection-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.collection-controls label{display:grid;gap:6px}.collection-controls select{max-width:100%;font:inherit;padding:10px;border:1px solid #bdcdbb;border-radius:8px;background:white}.collection-entry[hidden]{display:none!important}
@media(max-width:360px){.collection-books{grid-template-columns:1fr}.collection-books .book-card{display:grid;grid-template-columns:80px minmax(0,1fr)}.collection-books .cover-link{align-self:start}.collection-books .book-cover,.collection-books .cover-placeholder{height:110px}.collection-books .cover-placeholder{padding:8px}.collection-books .cover-placeholder strong{font-size:12px}.collection-books .cover-ornament,.collection-books .cover-placeholder small{display:none}.collection-books .card-content{padding:12px}.collection-books .card-content h3{font-size:16px}.collection-books .card-meta{margin-top:10px}}
@media print{.collection-controls,.collection-progress,.collection-details,.collection-entry>button,.collection-books .cover-link,.collection-books .card-actions,.collection-books .eyebrow,.collection-books .card-meta{display:none!important}.collection-books{display:block!important;counter-reset:reading-list}.collection-entry{display:block;break-inside:avoid;margin:0 0 12px;counter-increment:reading-list}.collection-books .book-card{display:block;border:0;border-radius:0;box-shadow:none}.collection-books .card-content{padding:0}.collection-books h3{font-size:12pt;margin:0}.collection-books h3:before{content:counter(reading-list) ". "}.collection-books .muted{margin:3px 0;font-size:10pt}.collection-entry:has([aria-pressed=true][data-collection-read]) h3:after{content:" — прочитано";font-size:10pt;font-weight:400}}

.print-options form{padding:16px 0}.print-options form>p{font-size:14px;line-height:1.6}.print-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.print-options-grid label{display:grid;gap:8px;font-size:14px}.print-options-grid select{width:100%;min-height:44px;padding:10px;font:inherit;border:1px solid #bdcdbb;border-radius:8px;background:white}@media(max-width:700px){.print-options-grid{grid-template-columns:1fr}}

.print-options form{padding:16px 20px}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #2f6f5e;outline-offset:3px}.night a:focus-visible,.night button:focus-visible,.night summary:focus-visible{outline-color:#e4c777}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.feedback-ticket{padding:24px;border:1px solid #d7e1d4;border-radius:18px;background:#fffdf7;margin:24px 0}.feedback-ticket h2{font-size:23px}.feedback-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.feedback-ticket form>label{display:grid;gap:8px;margin:16px 0}.feedback-ticket textarea{width:100%;font:inherit;padding:12px;border:1px solid #bdcdbb;border-radius:8px}.feedback-ticket details{margin-top:20px}.feedback-ticket summary{min-height:44px;cursor:pointer}.feedback-history{border-top:1px solid #d7e1d4;padding-top:16px;margin-top:16px;font-size:14px}.feedback-history p{margin:8px 0}@media(max-width:700px){.feedback-ticket{padding:16px}}
.collection-filters>label{min-width:0;flex:1 1 180px}.collection-filters select{width:100%;max-width:100%}@media(max-width:700px){.collection-filters{display:grid;grid-template-columns:1fr}.collection-filters>label{width:100%}.collection-filters>button,.collection-filters>a{justify-self:start}}
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea,.btn-secondary{border-color:#718773}.reading-paper a,.feedback-ticket a:not(.btn),.collection-details a{text-decoration:underline;text-underline-offset:.18em}
.entity-row,.entity-create{border:1px solid #d7e1d4;border-radius:12px;padding:16px 20px;background:#fffdf7;margin:12px 0}.entity-row summary,.entity-create summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700}.entity-row[open] summary,.entity-create[open] summary{margin-bottom:16px}.collection-filters input{width:100%;min-width:0;padding:10px;border:1px solid #718773;border-radius:8px;font:inherit;min-height:44px}

.entity-row summary,.entity-create summary{gap:16px;overflow-wrap:anywhere}.entity-row summary::after,.entity-create summary::after{content:"+";margin-left:auto;font-size:24px;flex-shrink:0}.entity-row[open] summary::after,.entity-create[open] summary::after{content:"−"}

.work-preview{margin:24px 0;padding:20px;border:1px solid #718773;border-radius:16px;background:#fffdf7}.work-preview>summary{min-height:44px;cursor:pointer;font-weight:700}.work-preview>p{line-height:1.6}.preview-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.preview-controls label{display:grid;gap:8px}.preview-controls select{min-height:44px;padding:8px;font:inherit;max-width:100%}.preview-stage{position:relative;overflow:hidden;width:100%;background:#e8eee4}.preview-stage iframe{display:block;border:0;transform-origin:top left;background:white}@media(max-width:600px){.work-preview{padding:12px}.preview-controls{display:grid;grid-template-columns:minmax(0,1fr)}.preview-controls>a{overflow-wrap:anywhere}}

.admin-search{display:flex;gap:8px;flex-wrap:wrap;max-width:100%}.admin-search input{min-width:0;max-width:100%}.admin-table-wrap{max-width:100%;overflow-x:auto}.admin-table td:first-child{overflow-wrap:anywhere}

.bulk-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:end;padding:20px;margin:24px 0;border:1px solid #718773;border-radius:16px}.bulk-controls label{display:grid;gap:8px;min-width:0}.bulk-controls select{min-height:44px;max-width:100%;padding:8px;font:inherit}.bulk-controls p{flex-basis:100%;margin:0;line-height:1.5}.batch-history,.batch-item{border:1px solid #d7e1d4;border-radius:16px;padding:20px;margin:20px 0;background:#fffdf7;overflow-wrap:anywhere}.batch-item h3{margin-top:0}.batch-item dl{display:grid;grid-template-columns:1fr 1fr;gap:16px}.batch-item dt{font-size:14px;color:#526552}.batch-item dd{margin:4px 0;line-height:1.5}.batch-item p{line-height:1.6}@media(max-width:600px){.bulk-controls{display:grid;grid-template-columns:minmax(0,1fr);padding:12px}.bulk-controls select{width:100%}.batch-item dl{grid-template-columns:1fr}.batch-item{padding:16px}}

.admin-dashboard .section-heading{flex-wrap:wrap}.admin-dashboard .section-heading>*{min-width:0;max-width:100%}.bulk-selection{display:flex;gap:12px;align-items:center;flex-wrap:wrap;width:100%}.bulk-controls [hidden]{display:none!important}.admin-table td:nth-child(2){overflow-wrap:anywhere}@media(max-width:600px){.admin-dashboard .section-heading{align-items:start}.admin-search{width:100%}.admin-search input{flex:1 1 150px;width:100%}.admin-dashboard .admin-table thead{display:none}.admin-dashboard .admin-table,.admin-dashboard .admin-table tbody{display:block;width:100%}.admin-dashboard .admin-table tr{display:grid;grid-template-columns:44px minmax(0,1fr);padding:12px 0;border-bottom:1px solid #d7e1d4}.admin-dashboard .admin-table td{display:block;border:0;padding:6px;min-width:0}.admin-dashboard .admin-table td:first-child{grid-row:1/4;align-self:start}.admin-dashboard .admin-table td:not(:first-child){grid-column:2}.admin-dashboard .admin-table td:nth-child(3):before{content:"Раздел: "}.admin-dashboard .admin-table td:nth-child(4):before{content:"Статус: "}.admin-dashboard .admin-table input[type=checkbox]{width:24px;height:24px}.bulk-selection{display:grid;grid-template-columns:minmax(0,1fr)}}

.recommendation-filter{display:flex;align-items:center;gap:10px;min-height:44px;margin:16px 0;line-height:1.5}.recommendation-filter input{width:20px;height:20px;flex-shrink:0}.recommendation-item{min-width:0;display:flex;flex-direction:column}.recommendation-item[hidden]{display:none}.recommendation-item .book-card{flex:1}.recommendation-reason{font-size:14px;line-height:1.5;padding:0 8px;color:#365846}

@media(max-width:360px){.recommendation-books{grid-template-columns:1fr}.recommendation-books .book-card{display:grid;grid-template-columns:80px minmax(0,1fr)}.recommendation-books .cover-link{align-self:start}.recommendation-books .book-cover,.recommendation-books .cover-placeholder{height:110px}.recommendation-books .cover-placeholder{padding:8px}.recommendation-books .cover-placeholder strong{font-size:12px}.recommendation-books .cover-ornament,.recommendation-books .cover-placeholder small{display:none}.recommendation-books .card-content{padding:12px}.recommendation-books .card-content h3{font-size:16px}.recommendation-books .card-meta{margin-top:10px}}

.parent-tips h3{font-size:18px;margin:20px 0 8px}.parent-tips ol{padding-left:24px;line-height:1.8}.parent-tips li{padding-left:4px;margin:12px 0;white-space:pre-line}

.parent-pilot{padding:20px;border:1px solid #718773;border-radius:16px;margin:24px 0;background:#fffdf7}.parent-pilot summary{font-weight:700;min-height:44px;cursor:pointer}.parent-pilot p,.parent-pilot li{line-height:1.7;overflow-wrap:anywhere}.pilot-copy{white-space:pre-line}.pilot-actions{display:flex;gap:12px;flex-wrap:wrap}.pilot-actions .btn{white-space:normal;text-align:left}@media(max-width:600px){.parent-pilot{padding:12px}.pilot-actions{display:grid;grid-template-columns:minmax(0,1fr)}}

.catalog-lookup{min-width:0;position:relative;display:grid;gap:8px}.catalog-lookup>label{display:block}.catalog-lookup>input{width:100%;min-width:0}.catalog-options{list-style:none;margin:0;padding:4px;border:1px solid #718773;border-radius:8px;background:#fff;max-height:260px;overflow-y:auto}.catalog-options[hidden]{display:none}.catalog-options button{display:block;width:100%;text-align:left;min-height:44px;padding:10px;border:0;background:transparent;font:inherit;color:inherit;white-space:normal}.catalog-options button:hover,.catalog-options button[aria-selected=true]{background:#e8f0eb;outline:2px solid #2f6f5e;outline-offset:-2px}.lookup-status{font-size:13px;line-height:1.5;margin:0}.lookup-status:empty{display:none}.filters label.age-unknown-option{display:flex;align-items:start;gap:10px;font-size:14px;line-height:1.5}.age-unknown-option input{width:20px!important;height:20px;flex-shrink:0;margin:1px 0}

.quiz-storage{font-size:14px;line-height:1.5;color:#526458;margin-top:18px}.quiz-review{margin:20px 0;border:1px solid #bdcdbd;border-radius:12px;padding:16px}.quiz-review summary{cursor:pointer;min-height:44px;font-weight:700;display:list-item}.quiz-review ol{padding-left:24px}.quiz-review li{padding:12px 0;border-bottom:1px solid #d7e1d4}.quiz-review li:last-child{border:0}.quiz-review h3{font-size:18px;line-height:1.5}.quiz-review p{line-height:1.6}.quiz-feedback:focus{outline:3px solid #2f6f5e;outline-offset:3px}

[data-riddle-card]{border-bottom:1px solid #d7e1d4;padding:18px 0 28px;margin-bottom:12px}[data-riddle-card]>h3{font-family:var(--font-ui, sans-serif);font-size:17px;scroll-margin-top:100px;color:#526458}[data-riddle-answer] img{max-width:240px;max-height:200px;object-fit:contain}[data-riddle-card] .riddle-next{margin-top:18px;font-size:15px}@media print{.riddle-next{display:none!important}}

.activity-steps{padding-left:26px}.activity-steps li{margin:12px 0;padding-left:4px}.activity-steps label{display:flex;align-items:flex-start;gap:12px;min-height:44px;cursor:pointer;line-height:1.65}.activity-steps input{width:22px;height:22px;flex:0 0 22px;margin-top:4px;accent-color:#2f6f5e}.activity-steps input:checked+span{color:#526458}.activity-check-help,[data-activity-progress]{font-size:14px;line-height:1.6}@media print{[data-activity-reset],.activity-check-help,[data-activity-progress]{display:none!important}}

.card-formats{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.card-formats a{font-size:13px;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center;color:#245747}.card-meta{flex-wrap:wrap;row-gap:6px}
@media(max-width:380px){.catalog-grid{grid-template-columns:minmax(0,1fr)!important}.catalog-grid>.book-card{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:start}.catalog-grid .cover-link{min-width:0}.catalog-grid .book-cover,.catalog-grid .cover-placeholder{height:140px;width:100%;min-height:0}.catalog-grid .cover-placeholder{padding:10px}.catalog-grid .cover-placeholder strong{font-size:12px}.catalog-grid .cover-placeholder small{display:none}.catalog-grid .card-content{padding:12px;min-width:0}.catalog-grid h3{font-size:16px;line-height:1.4}.catalog-grid .card-meta span{font-size:12px}.catalog-grid .card-actions{flex-wrap:wrap}.catalog-grid .card-formats a{font-size:13px}}

.shelf-search{display:grid;gap:8px;max-width:540px;margin-top:20px}.shelf-search input{width:100%;min-width:0;min-height:44px;padding:12px;border:1px solid #d9d5cb;border-radius:12px;font:inherit}#reader-diary{scroll-margin-top:90px}

.navigation-error{max-width:1100px;margin:20px auto;scroll-margin-top:90px}.navigation-error button{margin:4px}.empty-state .search-form{max-width:600px;margin:20px auto}.empty-state .search-form input{min-width:0;flex:1;padding:12px;border:1px solid #d9d5cb;border-radius:12px;font:inherit}.empty-state .hub-types{justify-content:center}

.image-gallery-controls{display:flex;gap:12px;justify-content:space-between}.image-gallery-controls button{min-height:44px;padding:10px 16px;border:1px solid #d9d5cb;border-radius:12px;font:inherit;background:#fff}.image-gallery-controls button:disabled{opacity:.45}#image-status{font-size:14px;line-height:1.5}#image-dialog [hidden]{display:none!important}

@media(min-width:900px){.admin-form.metrics-filters{max-width:none;display:grid;grid-template-columns:1fr 2fr 1fr auto;align-items:end;gap:16px}.metrics-filters .btn{min-height:48px}}

.image-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.image-role-card{min-width:0;padding:18px;border:1px solid var(--line,#ddd);border-radius:18px}.image-role-card img{display:block;max-width:100%;width:100%;height:240px;object-fit:contain}.image-role-card .admin-form{padding:0;margin:12px 0}
/* Light quiz panels retain dark text when the reading page uses the night theme. */
.quiz-player{color:#202a24}.night .quiz-player .muted{color:#526357}
.night .work-heading>.eyebrow,.night .chapter-position,.night .recommendation-reason{color:#cad4c4}
#quiz-player{scroll-margin-top:100px}

.image-role-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto auto;gap:12px;align-items:end}.image-role-filters label,.image-role-filters select{min-width:0;width:100%}@media(max-width:700px){.image-role-filters{grid-template-columns:minmax(0,1fr)}.image-role-filters .btn{width:100%}}

#quiz-player h2,#quiz-player .quiz-feedback{scroll-margin-top:100px}

/* Material actions stay near the title; optional tools expand in normal flow. */
.work-heading h1,.work-authors{overflow-wrap:anywhere}
.work-primary-actions{align-items:stretch}
.work-primary-actions .btn{min-height:44px;white-space:normal}
.work-more-actions{margin:12px auto 0;max-width:850px;text-align:left}
.work-more-actions summary{padding:12px 4px;min-height:44px;cursor:pointer;color:#365a49;font-size:14px;overflow-wrap:anywhere}
.work-more-actions .work-actions{justify-content:flex-start;margin:8px 0}
.night .work-more-actions summary{color:#d1dfca}
#audio-records,#after-reading,.coloring-gallery figure,#activity-sheets,#quiz-player{scroll-margin-top:100px}
@media(max-width:700px){
 [data-work-id]>.breadcrumbs{margin-bottom:16px;line-height:1.6}
 [data-work-id]>.breadcrumbs [aria-current]{display:none}
 .work-heading .meta-chips{justify-content:flex-start;gap:8px;margin:16px 0}
 .work-heading .chip{white-space:normal}
 .work-heading .work-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .work-primary-actions .btn{padding:11px 12px}
 .work-primary-actions .save-work{grid-column:1/-1;justify-self:start}
 .audio-tracks .audio-cover{width:96px;height:96px;object-fit:contain;margin:0 auto 12px}
 .audio-tracks .track-description{min-width:0;overflow-wrap:anywhere}
 .work-heading h1{letter-spacing:-.04em}
}
@media print{.work-more-actions,.after-reading{display:none!important}}
/* Keep the primary reading action visible on narrow screens. */
#reader [data-read-block]{scroll-margin-top:90px}
@media(max-width:700px){
 .work-heading{margin:16px 0 20px;text-align:left}
 .work-heading h1{font-size:30px;line-height:1.2;margin:12px 0}
 .work-heading .work-actions{justify-content:flex-start;gap:8px}
 .compact-hero{padding:22px}
 .compact-hero h1{font-size:36px;margin:14px 0}
 .compact-hero .hero-book{padding:16px;margin-top:16px}
 .compact-hero .hero-book img{width:74px;height:84px;object-fit:contain}
 .compact-hero .hero-book h2{font-size:20px}
 .compact-hero .hero-book .eyebrow{display:none}
}

.audio-mobile-seek{display:none}
@media(max-width:700px){
 #audio-dock{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:8px 10px}
 #audio-dock .audio-main{display:contents}
 #audio-title{grid-column:1/-1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #global-audio{grid-column:1;grid-row:2;width:100%;min-width:0}
 #audio-dock .audio-actions{grid-column:2;grid-row:2;gap:4px}
 #audio-dock .audio-actions [data-audio=back],#audio-dock .audio-actions [data-audio=forward],#audio-dock .audio-actions [data-audio=next]{display:none}
 #audio-error,#audio-options{grid-column:1/-1}
 .audio-mobile-seek{display:flex;flex-wrap:wrap;gap:6px;width:100%}
}

.search-intent{grid-column:1/-1;margin:0 0 18px;font-size:14px}.search-intent a{text-decoration:underline}

.quick-choice{margin:24px 0;padding:24px;background:#edf1e7;border:1px solid #d9e1d4;border-radius:20px}.quick-choice h2{font-size:24px;margin-bottom:18px}.quick-choice form{display:grid;grid-template-columns:1.3fr .7fr 1fr auto;gap:14px;align-items:end}.quick-choice label{font-size:13px;font-weight:700;display:grid;gap:8px}.quick-choice select{min-width:0;max-width:100%;min-height:46px;border:1px solid #9aaa9e;border-radius:9px;padding:8px;background:white;color:#24372e}.quick-choice p{font-size:12px;color:#526451;margin:14px 0 0}@media(max-width:700px){.quick-choice{padding:18px}.quick-choice form{grid-template-columns:1fr 1fr}.quick-choice label:first-child,.quick-choice button{grid-column:1/-1}.quick-choice h2{font-size:23px}}

.catalog-view{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap}.catalog-list{grid-template-columns:minmax(0,1fr)!important;gap:12px}.catalog-list .book-card{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:start}.catalog-list .cover-link{height:130px;min-height:0;margin:12px 0 12px 12px}.catalog-list .book-cover{width:100%;height:130px;object-fit:contain}.catalog-list .cover-placeholder{height:130px;min-height:0;padding:8px}.catalog-list .cover-placeholder strong,.catalog-list .cover-placeholder small{display:none}.catalog-list .card-content{padding:14px 18px}.catalog-list .card-content h3{font-size:18px;line-height:1.4;margin:5px 0 8px}.catalog-list .card-content p{margin-bottom:8px}.catalog-list .card-actions{margin-top:10px}.catalog-list .card-meta{flex-wrap:wrap}@media(max-width:700px){.catalog-list .book-card{grid-template-columns:70px minmax(0,1fr)}.catalog-list .cover-link,.catalog-list .book-cover,.catalog-list .cover-placeholder{height:90px}.catalog-list .card-content{padding:12px}.catalog-list .card-content h3{font-size:17px}.catalog-list .card-actions{flex-wrap:wrap}.catalog-list .card-actions button{min-width:0}}
@media(min-width:1000px){.catalog-list .card-content{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;align-content:start}.catalog-list .card-content>*{grid-column:1}.catalog-list .card-content .card-actions{grid-column:2;grid-row:1/6;align-self:center;display:flex;flex-direction:column;margin:0}.catalog-list .cover-link,.catalog-list .book-cover,.catalog-list .cover-placeholder{height:110px}}

.audio-tracks>h2{width:100%;font-size:25px}.track-description{min-width:125px;margin-right:auto}.track-description h3{font-size:17px;margin:0 0 5px}.track-description p{font-size:14px;margin:0;color:#586957}.night .track-description p{color:#cad4c4}@media(max-width:700px){.track-description{width:100%}.audio-tracks .track{gap:10px}.audio-tracks .track>a{min-height:44px;display:inline-flex;align-items:center}}

/* Search mode is a distinct touch target, including when its label wraps. */
.search-intent .text-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;margin-top:4px}

.search-excerpt{font-size:.9rem;line-height:1.5;overflow-wrap:anywhere;margin:.65rem 0;color:var(--ink,#293c35)}

.search-authors ul{list-style:none;padding:0}.search-authors li{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .8rem;margin:.6rem 0}.search-authors .text-link{display:inline-flex;align-items:center;min-height:44px}.search-authors strong{overflow-wrap:anywhere}

.search-collections ul{list-style:none;padding:0}.search-collections li{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .8rem;margin:.6rem 0}.search-collections .text-link{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}

.search-authors h2,.search-collections h2{font-size:1.15rem;margin:0 0 .5rem}.search-authors>p,.search-collections>p{font-size:.9rem;margin:.3rem 0 .5rem}.search-authors ul,.search-collections ul{margin:0}.search-authors li,.search-collections li{margin:.2rem 0}

.pack-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.pack-actions .text-link,.pack-preview-grid .text-link{display:inline-flex;align-items:center;min-height:44px}.pack-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px}.pack-preview-grid img,.pack-answer-preview{display:block;width:100%;height:auto;max-width:637px;border:1px solid #d8ded8;margin:14px 0}.pack-preview-grid h3{font-size:1.1rem}

.pack-text summary{min-height:44px;display:list-item;padding:10px 0;cursor:pointer}.pack-readable{white-space:pre-line;overflow-wrap:anywhere;font-size:1rem;line-height:1.65;max-width:70ch;margin:12px 0}.pack-text[open]{grid-column:1/-1}

.pack-page-choice{display:flex;align-items:center;gap:10px;min-height:48px}.pack-page-choice input{width:22px;height:22px;flex-shrink:0}

.empty-filter-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.empty-filter-actions .btn{min-height:44px;white-space:normal}

.quiz-reading-question{margin:24px 0;padding-bottom:20px;border-bottom:1px solid var(--line,#ddd);overflow-wrap:anywhere}
.quiz-reading-question h3{line-height:1.45}
.quiz-reading-question li{padding:5px 0;line-height:1.6}
.quiz-reading-question summary{cursor:pointer;min-height:44px;padding:10px 0}
.quiz-reading-question details p{line-height:1.7;max-width:70ch}

.quiz-player > .btn{margin:6px 8px 6px 0}

.landing-editor fieldset{min-width:0;border:1px solid #bdcdbb;border-radius:12px;padding:16px;margin:18px 0}
.landing-editor label:has(input[type="checkbox"]){display:flex;align-items:flex-start;gap:10px;line-height:1.6;margin:12px 0}
.landing-editor input[type="checkbox"]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:2px 0;accent-color:#2f6f5e}
.landing-editor textarea,.landing-editor input:not([type="checkbox"]){font-size:16px}

.catalog-intro{max-width:75ch;line-height:1.7;margin:0 0 20px;color:#526357}
.catalog-guide{margin-top:32px;padding:24px;border:1px solid #dce2d9;border-radius:18px;background:#fffdf8;line-height:1.75}
.catalog-guide h2{font-size:24px}.catalog-guide p{max-width:75ch}
.catalog-guide .chip{white-space:normal}
.night .catalog-intro{color:#cad4c4}.night .catalog-guide{background:#273126;border-color:#526357}
@media(max-width:700px){.catalog-intro{font-size:14px;line-height:1.6}.catalog-guide{padding:18px}.catalog-guide h2{font-size:22px}}

/* Catalog controls retain their state without pushing results below the fold. */
.school-selector{margin:16px 0;border:1px solid #dce2d9;border-radius:14px;background:#fffdf8;padding:0 16px}
.school-selector summary{min-height:48px;padding:13px 0;cursor:pointer;font-weight:700;font-size:14px;overflow-wrap:anywhere}
.school-selector .hub-types{margin:12px 0}
.catalog-results-jump{margin-bottom:12px}
.filter-actions{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1}
.filter-actions>.btn{flex:1}
.filter-close{display:none}
#catalog-filters,#catalog-results{scroll-margin-top:100px}
.section-heading>div{min-width:0}
.active-filters .chip{white-space:normal;overflow-wrap:anywhere;max-width:100%}
.night .school-selector{background:#273126;border-color:#526357}
@media(max-width:700px){
 .filter-close{display:inline-flex}
 .filters input,.filters select{font-size:16px}
 .filters .filter-actions{flex-direction:column}
 .catalog-results-jump{min-height:44px}
 .school-selector .chip{white-space:normal}
}

/* Compact author cards; native disclosure keeps the full biography in the document. */
.author-profile{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;margin:20px 0 32px;align-items:start}
.author-profile figure{margin:0}
.author-profile img{display:block;width:120px;height:150px;object-fit:cover;border-radius:12px}
.author-profile figcaption{font-size:12px;line-height:1.4;margin-top:8px;color:var(--muted,#617267)}
.author-profile-copy{min-width:0}
.author-profile-copy>.eyebrow{margin:0 0 8px}
.author-profile-copy h2{font-size:clamp(22px,2.3vw,28px);margin:0 0 12px}
.author-profile-copy h3,.author-profile-text h3{font-size:20px;margin:20px 0 10px}
.author-profile-copy p,.author-profile-text p{max-width:75ch;font-size:17px;line-height:1.65;margin:0 0 12px}
.author-profile-text{margin:20px 0 32px}
.author-biography-more{margin:0;padding:0;border:0;background:transparent;border-radius:0}
.author-biography-more>summary{display:list-item;width:fit-content;list-style:none;padding:8px 0;margin:0;min-height:44px;box-sizing:border-box;color:#356b59;font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.author-biography-more>summary::-webkit-details-marker{display:none}
.author-biography-more>summary:focus-visible{outline:2px solid #356b59;outline-offset:4px;border-radius:3px}
.author-biography-more .author-hide,.author-biography-more[open] .author-show{display:none}
.author-biography-more[open] .author-hide{display:inline}
.author-biography-rest{padding-top:8px}
@media(max-width:600px){.author-profile{grid-template-columns:80px minmax(0,1fr);gap:16px;margin:16px 0 24px}.author-profile img{width:80px;height:100px;border-radius:10px}.author-profile figcaption{font-size:13px}.author-profile-copy p,.author-profile-text p{font-size:16px}.author-profile-copy h2{font-size:22px}}
@media print{.author-biography-more>summary{display:none}.author-biography-more:not([open])>.author-biography-rest{display:block!important}}


/* A material is one continuous column; only the text measure changes in reader settings. */
@media screen{
 .work-page{max-width:1048px;padding-top:28px;padding-bottom:48px;--work-gap:24px;--work-inset:28px}
 .work-page>*{min-width:0;max-width:100%}
 .work-page>:is(.work-heading,.reader-settings,.contents,.reading-paper,.quiz-player,.quiz-reading,.reading-finish,.after-reading,.activity-plan,.reader-diary,.audio-tracks,.video-tracks,.downloads,.parent-tips,.feedback-form,.library-section,.meta-chips,.chapter-navigation,.chapter-position,.notice){width:100%;max-width:none;margin:0 0 var(--work-gap)}
 .work-page .work-heading{padding:12px 0 8px}
 .work-page .work-heading h1{font-size:clamp(29px,3.3vw,42px);line-height:1.2}
 .work-page .work-more-actions{max-width:none;margin:24px 0 0;padding:18px var(--work-inset);border:1px solid #dce3d7;border-radius:16px;background:#fffdf8;color:#202a24}
 .work-page .work-more-actions summary{min-height:44px;display:list-item;align-content:center;cursor:pointer}
 .work-page .work-more-actions[open] summary{margin-bottom:12px}
 .work-page :is(.reader-settings,.contents,.reader-diary,.feedback-form){border:1px solid #dce3d7;border-radius:16px;background:#fffdf8;color:#202a24;padding:0}
 .work-page :is(.reader-settings,.contents,.reader-diary,.feedback-form)>summary{padding:18px var(--work-inset);min-height:60px;display:list-item;align-content:center;font-size:15px;font-weight:700;cursor:pointer}
 .work-page :is(.reader-diary,.feedback-form)>:not(summary){margin:0 var(--work-inset) 24px}
 .work-page :is(.reader-diary,.feedback-form) form{padding-top:0}
 .work-page .reader-toolbar{padding:0 var(--work-inset) 20px;gap:10px}
 .work-page .reading-paper{padding:32px var(--work-inset);border:1px solid #e4e5dd;border-radius:16px}
 .work-page .reading-paper>*{max-width:min(100%,var(--reading-measure,710px));margin-left:auto;margin-right:auto}
 .work-page :is(.quiz-player,.after-reading,.parent-tips,.downloads){padding:var(--work-inset);border-radius:16px;border:1px solid #dce3d7}
 .work-page .downloads{background:#fffdf8;color:#202a24;display:flex;flex-wrap:wrap;gap:12px}
 .work-page .downloads h2{flex-basis:100%;margin:0 0 6px}
 .work-page .downloads .btn{margin:0;white-space:normal;text-align:left;min-width:0}
 .work-page :is(.after-reading,.parent-tips,.quiz-player,.downloads)>h2{font-size:25px;line-height:1.3;margin:0 0 16px}
 .work-page :is(.after-reading,.parent-tips)>p{font-size:16px;line-height:1.75;margin:0 0 16px;white-space:pre-line}
 .work-page :is(.after-reading,.parent-tips)>:last-child{margin-bottom:0}
 .work-page .parent-tips{white-space:normal}
 .work-page .quiz-reading>.reader-settings{width:100%;max-width:none;margin:0}
 .work-page .quiz-reading>.reader-settings>:not(summary){margin-left:var(--work-inset);margin-right:var(--work-inset)}
 .work-page .reading-finish{justify-content:flex-start;gap:12px;padding:0}
 .work-page>.meta-chips{justify-content:flex-start;gap:8px}
 .work-page [data-recommendations]{padding-top:12px}
 .work-page [data-recommendations]>h2{margin:0 0 12px;font-size:28px}
 .work-page .recommendation-books{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
 .work-page .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 @media(max-width:700px){
  .work-page{--work-gap:18px;--work-inset:18px;padding-top:20px;padding-bottom:28px}
  .work-page .reading-paper{padding:24px var(--work-inset)}
  .work-page .recommendation-books{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .work-page :is(.after-reading,.parent-tips,.quiz-player,.downloads)>h2{font-size:22px}
  .work-page .reading-finish{display:grid;grid-template-columns:minmax(0,1fr)}
  .work-page .downloads .btn{width:100%}
 }
 @media(max-width:380px){.work-page .recommendation-books{grid-template-columns:minmax(0,1fr)}}
}

@media screen{.work-page .after-reading>.btn{margin:0}}

/* The firefly silhouette remains legible at header and app-icon sizes. */
.header-inner .logo{gap:12px}.header-inner .logo img{width:56px;height:56px;object-fit:contain;border-radius:0}.header-inner .logo small{letter-spacing:.65px}@media(max-width:700px){.header-inner .logo{gap:9px}.header-inner .logo img{width:46px;height:46px}}@media(max-width:360px){.header-inner .logo img{width:42px;height:42px}.header-inner .logo{gap:7px}}

/* Author and folklore introductions share the same compact, responsive card. */
.author-overview{padding:24px;border:1px solid #dce4d8;border-radius:18px;background:#f1f4eb}
.author-profile-without-photo{grid-template-columns:minmax(0,1fr)}
.author-genres{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.author-genres a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #c9d6cc;border-radius:24px;text-decoration:none;color:#315b4c;background:#fff}
.author-genres a[aria-current=page]{background:#3e7060;color:white;border-color:#3e7060}
.author-genres a span{font-size:13px;opacity:.8}
.author-genres a:focus-visible{outline:2px solid #315b4c;outline-offset:3px}
.author-catalog-heading{display:flex;gap:16px;align-items:baseline;justify-content:space-between;margin-bottom:20px}
.author-catalog-heading h2{margin:0}.author-catalog-heading>span{color:#617267;white-space:nowrap;font-size:14px}
@media(max-width:600px){.author-overview{padding:18px}.author-profile-without-photo{grid-template-columns:minmax(0,1fr)}.author-catalog-heading{flex-wrap:wrap;gap:8px}.author-genres{margin-bottom:24px}}

/* Compact work introduction: keep the story within the first screen. */
@media screen {
 .work-page{padding-top:16px}
 .work-page>.breadcrumbs{margin-bottom:14px}
 .work-page>.work-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;row-gap:8px;text-align:left;padding:0;margin-bottom:12px}
 .work-page .work-heading>.eyebrow{display:none}
 .work-page .work-heading>h1{grid-column:1;grid-row:1;margin:0;font-size:clamp(28px,3vw,38px);line-height:1.2}
 .work-page .work-heading>.work-authors{grid-column:1;grid-row:2;margin:0;font-size:15px;line-height:1.5}
 .work-page .work-heading>.meta-chips{grid-column:1;grid-row:3;justify-content:flex-start;gap:8px;margin:0}
 .work-page .work-heading .chip{min-height:30px;padding:4px 10px;font-size:12px}
 .work-page .work-heading>.work-primary-actions{grid-column:2;grid-row:1 / 4;align-self:center;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:0;max-width:390px}
 .work-page .work-heading .work-primary-actions>.btn{min-height:44px;padding:10px 14px;font-size:14px;line-height:1.4}
 .work-page .work-heading>.work-more-actions{grid-column:1 / -1;margin:4px 0 0;padding:0 16px;border-radius:12px}
 .work-page .work-more-actions>summary{min-height:44px;padding:10px 0;font-size:14px;line-height:1.5}
 .work-page .work-more-actions[open]>summary{margin-bottom:4px}
 .work-page .work-heading>div.work-more-actions{padding:0;border:0;background:transparent}
 .work-page>.reader-settings{margin-bottom:10px;border-radius:12px}
 .work-page>.reader-settings>summary{min-height:44px;padding:10px 16px;font-size:14px;line-height:1.5}
 .work-page>.reading-paper{padding-top:22px}
 @media(max-width:700px){
  .work-page{padding-top:12px}
  .work-page>.breadcrumbs{margin-bottom:12px}
  .work-page>.work-heading{grid-template-columns:minmax(0,1fr);row-gap:8px}
  .work-page .work-heading>h1{font-size:28px}
  .work-page .work-heading>.work-primary-actions{grid-column:1;grid-row:4;justify-content:flex-start;max-width:none;margin-top:4px}
  .work-page .work-heading .work-primary-actions>.btn{flex:0 1 auto;width:auto;padding:10px 12px;font-size:13px}
  .work-page .work-heading>.work-more-actions{margin-top:2px}
 }
}

/* Expand the painting workspace without resizing its backing bitmap. */
body.paint-open{overflow:hidden}
#paint-dialog .dialog-heading{gap:12px;margin-bottom:10px;align-items:center}
#paint-dialog .dialog-heading h2{margin:0;font-size:22px;line-height:1.25;min-width:0;overflow-wrap:anywhere}
.paint-window-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
[data-paint-fullscreen]{border:1px solid #c6d5c4;border-radius:9px;background:#fff;color:#2f594b;min-height:44px;padding:8px 12px;font-family:inherit;font-weight:600;font-size:14px;line-height:1.3;cursor:pointer}
#paint-dialog.paint-expanded{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:12px;overflow:hidden}
#paint-dialog.paint-expanded[open]{display:flex;flex-direction:column;gap:8px}
#paint-dialog.paint-expanded .dialog-heading{margin:0;flex-shrink:0}
#paint-dialog.paint-expanded .paint-controls{gap:8px;flex-shrink:0}
#paint-dialog.paint-expanded #paint-status{margin:0;font-size:12px;flex-shrink:0}
#paint-dialog.paint-expanded .paint-canvas-wrap{flex:1;min-height:0;max-height:none;display:flex;align-items:center;justify-content:center;padding:8px;overflow:hidden}
#paint-dialog.paint-expanded #paint-canvas{flex:none;max-width:none;max-height:none;margin:0}
@media(max-width:700px){
 #paint-dialog .dialog-heading h2{font-size:17px}
 .paint-window-actions{gap:5px}
 [data-paint-fullscreen]{font-size:12px;padding:8px}
 #paint-dialog.paint-expanded{padding:8px 8px max(8px,env(safe-area-inset-bottom))}
 #paint-dialog.paint-expanded .paint-controls{gap:5px}
 #paint-dialog.paint-expanded .paint-controls label{font-size:13px}
 #paint-dialog.paint-expanded .paint-controls input[type=range]{width:70px}
}

/* Editorial overviews on pages whose imported text is unavailable. */
.work-page .work-overview{font-family:inherit;font-size:18px;line-height:1.7}

.work-overview h2{font-family:inherit;font-size:28px;line-height:1.25;margin:28px 0 14px}
.work-overview h3{font-family:inherit;font-size:21px;line-height:1.35;margin:26px 0 12px}
.work-overview p{margin:0 0 16px}
.work-overview ul{padding-left:24px;margin:12px 0 0}
.work-overview li{margin:8px 0}
@media(max-width:700px){.work-page .work-overview{font-size:16px;line-height:1.65}.work-overview h2{font-size:24px}.work-overview h3{font-size:19px}}

.work-overview .work-access-notice{display:flex;align-items:flex-start;gap:16px;padding:22px;margin:0 auto 28px;border:1px solid #dca58c;border-left:5px solid #b95735;border-radius:14px;background:#fff1e8;color:#66321f}
.work-access-icon{flex-shrink:0;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#f8dbc9;font-size:27px;line-height:1}
.work-overview .work-access-notice h2{margin:0 0 8px;font-size:22px;line-height:1.3;color:#77391f}
.work-overview .work-access-notice p{margin:0;font-size:16px;line-height:1.55}
.work-overview .work-access-notice .work-access-help{margin-top:10px;font-size:14px;color:#735847}
@media(max-width:700px){.work-overview .work-access-notice{gap:10px;padding:16px 12px}.work-access-icon{width:34px;height:36px;font-size:22px;border-radius:9px}.work-overview .work-access-notice h2{font-size:19px}.work-overview .work-access-notice p{font-size:14px}.work-overview .work-access-notice .work-access-help{font-size:13px}}

.work-overview figure{margin:26px 0;}
.work-overview figure img{display:block;width:100%;height:auto;max-height:none;border-radius:14px}
.work-overview figcaption{font-family:inherit;font-size:13px;line-height:1.5;color:#526357;text-align:center;margin-top:9px}
.work-overview blockquote{margin:24px 0;padding:18px 22px;border:0;border-left:4px solid #568777;border-radius:0 12px 12px 0;background:#edf3ed;color:#294d40}
.work-overview blockquote p:first-child{font-size:21px;font-weight:600;line-height:1.45;margin:0 0 8px}
.work-overview blockquote p:last-child{font-size:12px;line-height:1.5;font-weight:400;margin:0;color:#526357}
@media(max-width:700px){.work-overview blockquote{padding:16px}.work-overview blockquote p:first-child{font-size:18px}}

.video-tracks{background:#edf1e7;border-radius:20px;padding:20px;margin:18px auto}
.video-tracks>.muted{margin:0 0 16px}
.video-track+.video-track{margin-top:22px}
.video-embed{margin:0;max-width:720px}
.video-embed .video-play{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:1px solid #dce3d7;border-radius:14px;overflow:hidden;background:#243c2e;cursor:pointer}
.video-embed .video-play:focus-visible{outline:3px solid #2f6f5e;outline-offset:3px}
.video-embed .video-poster{width:100%;height:100%;object-fit:contain;display:block;background:#243c2e}
.video-embed .video-play-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:0}
.video-embed .video-play-mark::before{content:'▶';display:flex;align-items:center;justify-content:center;width:76px;height:76px;padding-left:6px;border-radius:50%;background:#1f2a24c7;border:2px solid #fffdf8;color:#fffdf8;font-size:29px;line-height:1;box-shadow:0 6px 20px #00000059;transition:transform .15s ease,background .15s ease}
.video-embed .video-play:hover .video-play-mark::before,.video-embed .video-play:focus-visible .video-play-mark::before{transform:scale(1.08);background:#1f2a24ed}
.video-embed .video-frame{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:14px;display:block}
.video-embed figcaption{font-size:13px;line-height:1.5;color:#526357;margin-top:9px}
@media(max-width:700px){.video-tracks{padding:18px}.video-embed .video-play-mark::before{width:64px;height:64px;font-size:24px}}
@media print{.video-tracks{display:none!important}}

/* Редакция: собственная оболочка. Публичная шапка тут только мешает — у редактора
   свои разделы, и переходить между ними он должен, не возвращаясь на главную. */
.admin-shell{max-width:1180px;margin:0 auto;padding:18px 16px 56px}
.admin-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;margin-bottom:22px;
 background:var(--surface,#fff);border:1px solid var(--line,#e4e7e4);border-radius:14px}
.admin-nav-brand{font-weight:700;font-size:1.05rem;text-decoration:none;color:inherit}
.admin-nav-links{display:flex;flex-wrap:wrap;gap:4px 6px;flex:1 1 auto}
.admin-nav-link{padding:6px 11px;border-radius:9px;text-decoration:none;color:inherit;font-size:.94rem;white-space:nowrap}
.admin-nav-link:hover{background:rgba(0,0,0,.05)}
.admin-nav-link.is-current{background:var(--accent-soft,#e8f1ea);font-weight:600}
.admin-nav-exit{margin-left:auto}
.admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0 0 26px}
.admin-card{padding:14px 16px;border:1px solid var(--line,#e4e7e4);border-radius:14px;background:var(--surface,#fff)}
.admin-card b{display:block;font-size:1.7rem;line-height:1.15}
.admin-card span{color:var(--muted,#6b7280);font-size:.88rem}
.admin-card a{font-size:.88rem}
.notice-alert{border-color:#e6b0aa;background:#fdf1ef}
@media (max-width:700px){.admin-nav{gap:8px}.admin-nav-exit{margin-left:0;width:100%}}

/* Страница ожидания перед скачиванием. */
.download-page { max-width: 560px; margin: 0 auto; text-align: center; }
.download-file { margin: 18px 0 22px; font-size: 1.05rem; line-height: 1.5; }
.download-timer { font-weight: 600; margin: 0 0 16px; min-height: 1.5em; }
.download-page .btn { min-width: 220px; }
.download-page .btn[disabled] { opacity: .55; cursor: not-allowed; }

/* Цели для пальца — не меньше 24 px по высоте (WCAG 2.2, уровень AA).
   Хлебные крошки и ссылки подвала были по 15 px, заголовки карточек — 19 px,
   переходы между листами раскраски — 22 px. Поле нажатия расширяем отступом и
   тут же гасим его отрицательным полем: вёрстка не сдвигается ни на пиксель,
   а попасть пальцем становится можно. */
.breadcrumbs a,.footer-row a:not(.logo),.section-heading>a,.card-content h3 a,.coloring-gallery figcaption p a,.work-authors a,.notice h2 a,.back-link,.download-page .text-link,.filters>a,.reader-settings>.text-link{display:inline-block;padding-block:8px;margin-block:-8px}
/* С 25.10.2026 запас 8 px вместо 5: цели вырастают до 34–37 px (норма — не меньше
   32), вёрстка не меняется. Логотип в подвале — flex, ему запас поменьше. Ссылка
   вокруг листа раскраски была строчной, и её рамка выходила 22 px при картинке
   во весь лист. */
.footer .logo{padding-block:4px;margin-block:-4px}
/* Ссылка «Скачать аудио ↓» у записи — 44 px и на компьютере: строка записи — flex
   с выравниванием по центру и кнопками по 44 px, так что текст остаётся на месте. */
.audio-tracks .track>a:not(.btn){min-height:44px;display:inline-flex;align-items:center}
.coloring-gallery figure>a{display:block}
/* Оглавление — список, и расширять поле отрицательным отступом там нельзя:
   соседние пункты перекрыли бы друг друга. Отступ настоящий. */
.contents li a{display:block;padding-block:8px}
/* «Далее →» — главный переход по каталогу, а был строчной ссылкой в 18 px. */
.pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pagination a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--line,#d9e2dc);border-radius:999px;background:#fff;text-decoration:none;font-weight:600}

/* Каталог на телефоне: двенадцать кнопок возраста вставали в три ряда, ещё
   ряд-два занимали разделы, и первая карточка уезжала на второй экран. Теперь
   это одна строка с прокруткой вбок. Строка доходит до краёв экрана: обрезанная
   кнопка у края — подсказка, что дальше есть ещё. Длинная ссылка на подборку
   («Сказки на ночь — …») остаётся как была: в строку она не влезет. */
@media (max-width:700px){
  nav.hub-types:not(.scenario-links){flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;margin-inline:-18px;padding-inline:18px;scroll-padding-inline:18px}
  nav.hub-types:not(.scenario-links)::-webkit-scrollbar{display:none}
  nav.hub-types:not(.scenario-links)>*{flex:0 0 auto;scroll-snap-align:start}
}
@media (max-width:360px){
  nav.hub-types:not(.scenario-links){margin-inline:-15px;padding-inline:15px;scroll-padding-inline:15px}
}

/* Аудиокарточка: обложка рядом с записями. Раньше она стояла по центру плашки
   отдельным блоком, а под ней шла та же зелёная «▶ Слушать», что и наверху. */
.audio-tracks .audio-body.has-cover{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:24px;align-items:center}
.audio-tracks .audio-body.has-cover .audio-cover{width:100%;height:auto;max-width:none;max-height:none;margin:0;border-radius:16px;object-fit:contain}
.audio-tracks .audio-body.has-cover .track{justify-content:flex-start}
@media (max-width:700px){
  .audio-tracks .audio-body.has-cover{grid-template-columns:1fr;gap:12px}
  .audio-tracks .audio-body.has-cover .audio-cover{max-width:240px;justify-self:center}
}

/* Панель чтения над текстом (25.10.2026): три кнопки — настройки, главы,
   скачивание — и по панели на каждую, открыта не больше одной. Класс js на
   <html> ставит layout до первой отрисовки: без JavaScript кнопок нет, а все
   панели раскрыты, и скачивание с оглавлением остаются доступны. */
.work-page>.reader-bar{width:100%;max-width:none;margin:0 0 var(--work-gap)}
.reader-bar-buttons{display:none}
.js .reader-bar-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:1px solid #cfdccf;border-radius:14px;background:#fffdf8;overflow:hidden}
.reader-bar-buttons button{min-height:48px;border:0;border-left:1px solid #dce3d7;background:none;padding:6px 8px;font-size:13px;font-weight:700;line-height:1.25;color:#2f6f5e}
.reader-bar-buttons button:first-child{border-left:0}
.reader-bar-buttons button:hover{background:#f2f6ef}
.reader-bar-buttons button[aria-expanded=true]{background:#e8f0eb;color:#224f42}
.reader-panel{margin-top:10px;padding:16px var(--work-inset,18px);border:1px solid #dce3d7;border-radius:16px;background:#fffdf8;color:#202a24}
.js .reader-panel:not(.is-open){display:none}
.reader-panel-title{margin:0 0 12px;font-size:15px}
.js .reader-panel-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.reader-panel h3{margin:16px 0 8px;font-size:13px;font-weight:600;color:#526357}
.reader-panel h3:first-of-type{margin-top:0}
.reader-panel-row{display:flex;flex-wrap:wrap;gap:8px}
.reader-panel .btn{padding:10px 14px}
.reader-panel .reader-toolbar{max-width:none;margin:0;padding:0;border:0;background:none;justify-content:flex-start;gap:10px}
.reader-contents{margin:12px 0 0;padding-left:24px;line-height:1.5}
.reader-contents a{display:block;padding-block:8px}
.reader-contents a[aria-current]{font-weight:800;color:#2f6f5e}
.reader-panel .print-options{max-width:none;margin:16px 0 0}
.night .reader-bar-buttons,.night .reader-panel{background:#273126;color:#eff0e5;border-color:#3c4a3a}
.night .reader-bar-buttons button{color:#d1dfca;border-color:#3c4a3a}
.night .reader-bar-buttons button:hover,.night .reader-bar-buttons button[aria-expanded=true]{background:#33402f;color:#fff}
.night .reader-panel h3,.night .reader-contents a[aria-current]{color:#d1dfca}
@media print{.reader-bar{display:none!important}}

/* Заглушки обложек по видам (25.10.2026): вид мелко, короткое имя крупно, у
   школьной библиотеки, викторин, загадок и игр со словами — свой цвет, корешок
   слева и рисунок из cover-icons.svg. Полное название — в карточке под заглушкой. */
.cover-placeholder .cover-kind{font:700 12px/1.25 Manrope,'Manrope Fallback',system-ui,sans-serif;letter-spacing:.2px;color:var(--ph-ink,#526357)}
.cover-placeholder .cover-name{max-width:100%;font:600 21px/1.25 Literata,'Literata Fallback',Georgia,serif;color:#1f2a24;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cover-ph{position:relative;gap:6px;padding-left:28px;overflow:hidden}
.cover-ph::before{content:"";position:absolute;inset:0 auto 0 0;width:12px;background:var(--ph-spine)}
.cover-ph::after{content:"";position:absolute;inset:0 auto 0 12px;width:2px;background:#fff6}
.cover-ph .cover-icon{width:54px;height:54px;flex:none}
.cover-ph-school{background:#e1eaf3;--ph-spine:#9fb7cf;--ph-ink:#3c5a78}
.cover-ph-quiz{background:#f6e8c8;--ph-spine:#dcb66c;--ph-ink:#6f5219}
.cover-ph-riddle{background:#ece5f5;--ph-spine:#b9a6d8;--ph-ink:#5b4a80}
.cover-ph-page{background:#e3efdc;--ph-spine:#a7c598;--ph-ink:#3d6340}
@media(max-width:700px){.cover-ph{gap:4px;padding:10px 10px 10px 20px}.cover-ph::before{width:9px}.cover-ph::after{left:9px}.cover-ph .cover-icon{width:40px;height:40px}.cover-placeholder .cover-name{font-size:16px}}
.collection-books .cover-ph .cover-icon,.recommendation-books .cover-ph .cover-icon{width:30px;height:30px}
.collection-books .cover-placeholder .cover-kind,.recommendation-books .cover-placeholder .cover-kind,.catalog-list .cover-placeholder .cover-kind,.catalog-list .cover-placeholder .cover-name{display:none}
.collection-books .cover-placeholder .cover-name,.recommendation-books .cover-placeholder .cover-name{font-size:13px}
@media(max-width:380px){.catalog-grid .cover-ph{gap:4px;padding:8px 6px 8px 16px}.catalog-grid .cover-ph::before{width:7px}.catalog-grid .cover-ph::after{left:7px}.catalog-grid .cover-ph .cover-icon{width:32px;height:32px}.catalog-grid .cover-placeholder .cover-kind{display:none}.catalog-grid .cover-placeholder .cover-name{font-size:14px;-webkit-line-clamp:3}}
/* Указатель авторов (25.10.2026): поиск, ряд букв, прилипающий под шапкой
   (её высота: 81 px, 87 px на 701–1000, 71 px на телефоне), группы по буквам и
   народные традиции плашками. Поиск без JavaScript не работает и потому скрыт. */
.author-index-intro{margin:-6px 0 18px;max-width:720px;font-size:15px;line-height:1.6;color:#526357}
.author-search{display:none;max-width:560px;margin:0 0 14px}
.js .author-search{display:flex}
.author-search input{flex:1;min-width:0;min-height:48px;padding:0 16px;border:1px solid #cfdccf;border-radius:14px;background:#fff;font-size:16px}
.author-sections{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.author-sections a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid #dce3d7;border-radius:30px;background:#fff;font-size:13px;font-weight:700;color:#2f6f5e}
.author-sections span{font-weight:500;color:#526357}
.author-letters{position:sticky;top:81px;z-index:5;display:flex;gap:4px;margin:0 0 8px;padding:8px 0;overflow-x:auto;scrollbar-width:none;background:#fbf7f0;border-bottom:1px solid #e7e5da}
.author-letters::-webkit-scrollbar{display:none}
.author-letters a{flex:none;display:grid;place-items:center;min-width:36px;height:36px;border:1px solid #e1e7dc;border-radius:10px;background:#fff;font-size:15px;font-weight:700;color:#2f6f5e}
.author-letters a:hover{background:#e8f0eb}
.author-letters a.is-active{background:#2f6f5e;border-color:#2f6f5e;color:#fff}
.author-letter{display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 16px;padding:14px 0;border-bottom:1px solid #ece9df;scroll-margin-top:150px}
.author-letter h2{margin:0;font:600 30px/1 Literata,'Literata Fallback',Georgia,serif;color:#b48236}
.author-letter ul{margin:0;padding:0;list-style:none;columns:3 220px;column-gap:24px}
.author-letter li{break-inside:avoid}
.author-letter li a{display:flex;align-items:center;min-height:40px;padding:4px 0;font-size:15px;color:#1f2a24;overflow-wrap:anywhere}
.author-letter li a:hover{color:#2f6f5e}
.author-traditions{margin-top:34px;scroll-margin-top:150px}
.author-traditions h2{margin:0 0 6px;font-size:24px}
.author-traditions p{margin:0 0 14px;font-size:14px;color:#526357}
.author-traditions ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.author-traditions li a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:30px;background:#e8f0eb;font-size:14px;font-weight:600;color:#224f42}
.author-traditions li a:hover{background:#dbe8df}
.author-search-empty{padding:30px 0;color:#526357}
@media(max-width:1000px){.author-letters{top:87px}}
@media(max-width:700px){.author-letters{top:71px}.author-letters a{min-width:34px;height:34px}.author-letter{grid-template-columns:36px minmax(0,1fr);gap:2px 10px;scroll-margin-top:130px}.author-letter h2{font-size:24px}.author-letter ul{columns:1}.author-traditions{scroll-margin-top:130px}}
/* Иллюстрации в тексте: отступ 25 px внутренний, а не внешний. app.js оборачивает
   картинку в кнопку «Увеличить иллюстрацию», а кнопка не даёт её отступам
   схлопнуться с отступами абзаца или figure. До скрипта отступы схлопывались, после —
   нет, и на «Колобке» текст под первой иллюстрацией прыгал на 40 px (CLS 0,002).
   Внутренний отступ не схлопывается никогда, и раскладка до и после скрипта —
   та, что читатель видит сейчас. Селектор — те же картинки, что оборачивает app.js. */
#reader :not(a,button)>img:not([data-decorative="true"]){padding-block:25px;margin:0 auto}
/* Текущий чип в рядах разделов и возрастов — как выбранный фильтр: «5 лет» на /tale/age/5/
   был помечен aria-current, но ничем не выделен. */
nav.hub-types a.chip[aria-current]{background:#e8f0eb;border-color:#2f6f5e;color:#224f42}
/* Типографика компьютера (26.10.2026, согласовано по макету). На 1440 px почти весь
   текст интерфейса был 12–13 px: навигация 14, кнопки 13, чипы 12 в «пилюлях»
   высотой 44 px. Только шире 1000 px — телефон и планшет не меняются; текст книг,
   заголовки страниц и ширина колонки тоже. */
@media(min-width:1001px){
 .nav-hub{font-size:16px;font-weight:600}
 .search-open{font-size:15px}
 .btn{font-size:15px}
 .chip{font-size:14px}
 .breadcrumbs{font-size:14px}
 .muted{font-size:14px}
 .eyebrow,.card-content .eyebrow{font-size:13px}
 .welcome-line{font-size:13px}
 .main-hero p{font-size:16px}
 .card-content h3{font-size:18px;line-height:1.35}
 .card-content .muted,.card-meta{font-size:14px}
 .save-work,.card-play{font-size:14px}
 .filters label{font-size:14px}
 .filters select,.filters input{font-size:15px}
 .section-heading>a,.text-link{font-size:14px}
 .footer-row{font-size:15px}
}
