/* Shared UI controls. Original artwork, PDF text and generated card canvases are not modified. */
:root{--mu-ui-ink:#f8edcf;--mu-ui-gold:#bda36b;--mu-ui-body:Georgia,'Times New Roman',serif}
body{font-family:var(--mu-ui-body)}
:is(.btn,.rbtn,.tool,.tab,.filter,.context-back a,.collection-back a,.back,.backhome,.random-card-trigger,.random-card-actions a,.random-card-actions button,.gallery-tools button,.pagination button,button:not(.close)):not([role="switch"]){
 display:inline-flex;align-items:center;justify-content:center;gap:8px;position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;min-height:38px;max-width:100%;padding:9px 18px!important;border:1px solid rgba(189,157,103,.85)!important;border-radius:999px!important;background:linear-gradient(180deg,rgba(177,151,107,.80),rgba(78,68,53,.94) 48%,rgba(145,117,74,.90))!important;color:var(--mu-ui-ink)!important;font:500 13px/1.4 Georgia,'Times New Roman',serif!important;letter-spacing:.025em!important;text-transform:none!important;text-align:center;text-decoration:none!important;white-space:normal;vertical-align:middle;text-shadow:0 1px 2px #58452e;box-shadow:inset 0 1px 1px #ffedb9b3,0 3px 9px #57402224;cursor:pointer;transition:filter .2s ease,box-shadow .2s ease;
}
:is(.btn,.rbtn,.tool,.tab,.filter,.context-back a,.collection-back a,.back,.backhome,.random-card-trigger,.random-card-actions a,button:not(.close))::before{content:"";position:absolute;inset-block:-50%;left:-35%;width:18%;background:linear-gradient(90deg,transparent,#fff6d580,transparent);transform:skewX(-22deg);pointer-events:none;opacity:0;z-index:-1}
:is(.btn,.rbtn,.tool,.tab,.filter,.context-back a,.collection-back a,.back,.backhome,.random-card-trigger,.random-card-actions a,button:not(.close)):hover::before{animation:mu-control-shine 1.2s ease-out}
@keyframes mu-control-shine{0%{left:-35%;opacity:0}20%{opacity:.65}100%{left:125%;opacity:0}}
:is(.btn,.rbtn,.tool,.tab,.filter,.context-back a,.collection-back a,button):focus-visible{outline:2px solid #8a632c!important;outline-offset:4px}
:is(.btn,.rbtn,.tool,.tab,.filter,button):hover{filter:brightness(1.08)}
:is(.tab.on,.filter.active,[aria-pressed="true"],.bookmarkflag.set){box-shadow:inset 0 0 0 2px #f8e3a5,0 3px 9px #57402233!important}
:is(button:disabled,[aria-disabled="true"].btn){opacity:.48!important;cursor:default!important;filter:none!important}
:is(button:disabled,[aria-disabled="true"].btn)::before{animation:none!important}
.actions{gap:10px!important;align-items:center}.actions .book-cards-menu{flex-basis:100%;width:100%;margin-top:12px}
.book-cards-menu{padding-top:18px;border-top:1px solid #d8c9ad}.book-cards-menu h2{font:normal 20px/1.4 Georgia,serif!important;margin:0 0 12px}.book-card-group{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px}.book-card-group .card-group-title{font:16px/1.5 Georgia,serif;flex-basis:100%}
#book-section{display:flex!important;width:fit-content;margin:0 0 24px!important;clear:both}.crumb{display:block;clear:both;margin:0 0 28px!important}
.wrap>.kicker,.wrap>.title,.wrap>.sub{line-height:1.4}.wrap>.title{font-size:clamp(28px,3vw,42px)}
.wrap :is(.intro,.desc){font-size:17px;line-height:1.75}.wrap .intro p{font-size:17px;line-height:1.75}
.shell .title,.library~.title{font-size:clamp(30px,3vw,42px)}
.pagebar .rbtn{min-height:32px;padding:6px 11px!important;font-size:12px!important}.pagebar{gap:8px}.tools .rbtn{min-height:34px;padding:7px 12px!important;font-size:12px!important}

@media(max-width:650px){.btn,.rbtn,.tool{font-size:13px!important}.actions{justify-content:flex-start}.book-card-group{align-items:stretch}.book-card-group .btn{flex:1 1 200px}}
@media(prefers-reduced-motion:reduce){*::before{animation:none!important}button,.btn,.rbtn{transition:none!important}}
.tabs{flex-wrap:wrap;gap:6px}.tabs .tab{flex:1 1 88px;min-width:0;padding:8px 7px!important;font-size:11px!important}
/* Keep long Bulgarian reader-tab labels readable within the sidebar. */
.tabs button.tab{flex:1 1 120px;min-width:120px;padding:8px 12px!important;font-size:12px!important}

/* Hidden controls represent unavailable actions, not placeholder buttons. */
.actions [hidden]{display:none!important}

/* Consistent, restrained headings on inner presentation pages. */
:is(.hero h1,.wrap>h1.title,.shell>h1.title,main>h1.title){font-size:clamp(24px,1.9vw,26px)!important;line-height:1.25;color:#60451d}

/* Restrained UI heading scale; printed pages, card artwork and home composition are excluded. */
:is(main>h1,.wrap h1,.shell h1,.hero h1,.audio-wrap h1){font-size:clamp(24px,1.9vw,26px)!important;line-height:1.35}
:is(.intro,.feature,.chooser,.generations-entrance,.tile,.empty,.modalbox,.research,.about,.structure) h2{font-size:22px!important;line-height:1.45}
@media(max-width:650px){:is(.intro,.feature,.chooser,.generations-entrance,.tile,.empty,.modalbox,.research,.about,.structure) h2{font-size:20px!important}}
