/* Reading preferences override presentation, never official artwork pixels. */
.koma-reading [hidden]{display:none!important}
.koma-reading [data-reading-copy]{font:inherit!important;letter-spacing:inherit!important;display:inline!important}
.koma-reading #ovMode .panel{overflow-y:auto;max-height:92dvh;overscroll-behavior:contain}
.koma-reading #ovMode .modegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.koma-reading #ovMode .modecard{min-width:0;min-height:100px;height:auto;padding:18px;text-align:left;border:2px solid #241b12;border-radius:2px;white-space:normal;line-height:1.5;background:#fff9eb;color:#241b12}
.koma-reading #ovMode .modecard[aria-pressed=true]{background:#f9dd74;box-shadow:inset 0 0 0 2px #241b12}
.koma-reading #ovMode .mn2{display:block;font-size:1.05rem;font-weight:750}
.koma-reading #ovMode .md2,.koma-reading #ovMode .reading-help{font-size:.85rem;line-height:1.7}
.koma-reading #ovMode .x{float:right;position:relative;inset:auto;min-height:44px;min-width:44px;margin:0 0 12px 12px}
.koma-reading #ovMode .reading-braille-guide{margin:0 0 24px;padding:18px;border:2px solid currentColor;background:#fff9eb;color:#241b12;overflow-wrap:anywhere}
.koma-reading #ovMode .reading-braille-guide h3{font-size:1.15rem;margin:0 0 12px;line-height:1.5}
.koma-reading #ovMode .reading-braille-guide p{font-size:1rem;line-height:1.7;margin:12px 0}
.koma-reading #ovMode .reading-braille-guide button{min-height:44px;padding:10px 14px}
.koma-reading #ovMode h2{padding:0;overflow-wrap:anywhere}
.koma-reading #motionToggle{min-height:48px;margin:0 0 10px;padding:10px 16px;border:2px solid currentColor}
.koma-reading #motionToggle[aria-pressed=true]{background:#f9dd74;color:#241b12}
.koma-reading .reading-guide{font-family:inherit;max-width:100%;margin:24px 0;padding:20px;border-left:4px solid #a8431a;background:#fff9eb;color:#241b12;grid-column:1/-1;text-align:left}
.koma-reading .inv-content>.reading-guide{margin:24px 6%}
.koma-reading .reading-guide h2{font-size:1.25rem!important;line-height:1.5!important;margin:0 0 10px!important;color:inherit!important}
.koma-reading .reading-guide ul{padding-left:1.3em;margin:0;list-style:disc;display:block}
.koma-reading .reading-guide li{margin:8px 0;font-size:1rem;line-height:1.8}
.koma-reading .reading-language-note{margin-top:16px!important;font-size:.85rem!important;line-height:1.7!important}
.koma-reading .reading-detail{display:contents}
.koma-reading .reading-detail>summary{display:none}
html[data-mode=visual].koma-reading .reading-detail{display:block;margin:12px 0}
html[data-mode=visual].koma-reading .reading-detail>summary{display:list-item;cursor:pointer;min-height:44px;padding:10px 0;text-decoration:underline;font-weight:650;font-size:1rem}
html[data-mode=visual].koma-reading .prose{display:block}
html[data-mode=visual].koma-reading .reading-detail:not([open])>p{display:none!important}
html[data-mode=visual].koma-reading :is(form,dialog,.ov,.legalwrap) .prose{display:block!important}
html[data-mode=visual].koma-reading .inv-activities .reading-detail{grid-column:2}
.koma-reading :is(main,dialog,.ov) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #842b4b!important;outline-offset:3px!important}
.koma-reading :is(main,dialog,.ov) :is(button,a,input,select,textarea,summary){scroll-margin-block:120px}
.koma-reading .festival-zones dt>span{color:#713815}
.koma-reading .inv-rail-count{white-space:nowrap;flex:0 0 auto;min-width:48px}
.koma-reading .inv-rail-controls button{flex:0 0 44px}
.koma-reading .festival-arrival .arrival-route h3{font-size:22px;line-height:1.4;margin:12px 0 16px}
.koma-reading .arrival-card-head h3{margin:8px 0 12px!important;font-size:22px;line-height:1.4}
html[data-mode=clear].koma-reading .festival-zones dt>span{color:#000}
html[data-mode=clear].koma-reading .koma-unified main .koma-wash{--wash-color:#fff;--wash-ink:#000;background-image:none!important;background-color:#fff!important;color:#000!important}
/* Avoid pixel-sized legacy rules neutralising the two enlarged-text modes. */
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(main,.soonscreen,dialog,.ov) :is(p,li,dd,dt,label,input,select,textarea,summary,button,a,figcaption,output){font-size:max(1rem,18px)!important;line-height:1.75!important;letter-spacing:normal;overflow-wrap:break-word}
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(main,dialog,.ov) :is(h2,h3,h4){line-height:1.45!important;overflow-wrap:break-word}
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(main,dialog,.ov) h3{font-size:max(1.2rem,22px)!important}
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(main,dialog,.ov) h4{font-size:max(1.05rem,20px)!important}
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(.inv-small,.inv-kicker,.inv-attendance,.inv-author-book,.inv-rail-count,.arrival-category,.arrival-mini-steps span,.inv-timeline dd>span,.formhelp,.secnote){font-size:.9rem!important;line-height:1.65!important}
html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(input,select,textarea){min-height:48px}
html:is([data-mode=easy],[data-mode=clear]).koma-reading input:is([type=checkbox],[type=radio]){min-height:0;width:22px;height:22px;flex-shrink:0}
html:is([data-mode=easy],[data-mode=clear]).koma-reading .gnb2 nav :is(a,button){font-size:16px!important}
html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-timeline>div{grid-template-columns:minmax(130px,.6fr) minmax(0,1.4fr)}
html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-activities .reading-detail p{font-size:1rem!important}
html[data-mode=clear].koma-reading :is(main,.soonscreen,dialog,.ov) :is(p,li,dd,dt,label,h1,h2,h3,h4,figcaption,output,summary){color:#000!important}
html[data-mode=clear].koma-reading :is(main,.soonscreen,dialog,.ov) :is(section,article,aside,header,.panel,.inwrap,.reading-guide,.reading-detail,.arrival-card,.arrival-route,.inv-booktalk-count,.inv-partners){background-color:#fff!important;background-image:none!important;color:#000!important}
html[data-mode=clear].koma-reading :is(main,.soonscreen,dialog,.ov) :is(a,button,input,select,textarea){background:#fff!important;color:#000!important;border-color:#000!important;box-shadow:none!important}
html[data-mode=clear].koma-reading :is(a,button,summary):focus-visible{outline:3px solid #000!important;outline-offset:4px!important}
html[data-mode=clear].koma-reading :is(main,.soonscreen,dialog,.ov) :is(a,button){text-decoration:underline!important;text-underline-offset:4px}
html[data-mode=clear].koma-reading :is(input,textarea)::placeholder{color:#444!important;opacity:1}
html[data-mode=clear].koma-reading #ovMode .modecard[aria-pressed=true]{border:4px double #000!important}
html[data-motion=off].koma-reading{scroll-behavior:auto!important}
html[data-motion=off].koma-reading *{scroll-behavior:auto!important}
@media(max-width:767px){
 .koma-reading .kick2{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 html[data-mode=en].koma-reading .legonums{display:flex;flex-wrap:wrap;gap:16px}
 html[data-mode=en].koma-reading .legonums .ln{min-width:0;max-width:120px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .booth-application{grid-template-columns:minmax(0,1fr)}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading :is(.booth-checklist,.booth-contact){min-width:0;overflow-wrap:anywhere}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .booth-email{overflow-wrap:anywhere!important}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-welcome:not(.is-sealed)>:not([hidden]),html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-letter-copy,html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-hero-details{grid-column:1!important;grid-row:auto!important;width:100%;min-width:0}
 .koma-reading .festival-arrival .arrival-route h3,.koma-reading .arrival-card-head h3{font-size:20px}
 .koma-reading #ovMode .modegrid{grid-template-columns:1fr 1fr;gap:10px}
 .koma-reading #ovMode .modecard{padding:12px;min-height:110px}
 .koma-reading .reading-guide{padding:16px;margin:20px 0}
 .koma-reading .inv-content>.reading-guide{margin:20px 16px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .gnb2{padding:8px 12px;gap:6px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .gnb2 nav{gap:4px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .gnb2 nav :is(a,button){padding:8px 6px!important;font-size:14px!important}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .gnb2 .logo2 img{max-width:56px;height:auto}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-welcome:not(.is-sealed){grid-template-columns:1fr!important}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-welcome:not(.is-sealed)>.inv-poster{max-width:210px;margin:0 auto}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-activities article.koma-wash{grid-template-columns:52px minmax(0,1fr);padding:14px 10px;gap:8px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-activities img{width:52px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .festival-zones.inv-swipe-rail{grid-auto-columns:calc(100% - 24px)}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-timeline>div{grid-template-columns:1fr;gap:4px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-timeline dt{font-weight:750}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-hero-details .inv-facts>div{grid-template-columns:1fr;gap:4px}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-hero-details .inv-map-actions{grid-template-columns:1fr}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-hero-details>.inv-actions{grid-template-columns:1fr}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-authors{gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-authors li{min-width:0}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .inv-author-heading{display:block}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-main .arrival-steps{grid-template-columns:1fr}
 html:is([data-mode=easy],[data-mode=clear]).koma-reading .inv-mobile-actions{position:static}
 html[data-mode=en].koma-reading .gnb2 nav :is(a,button){font-size:12px;padding:8px 5px}
 html[data-mode=en].koma-reading .gnb2 .logo2 img{max-width:54px;height:auto}
}
@media(max-width:360px){.koma-reading #ovMode .modegrid{grid-template-columns:1fr}.koma-reading #ovMode .modecard{min-height:84px}}
