/* Quiet, accessible finishing layer. Content is visible without JavaScript. */
:root{--detail-line:#183b4024;--detail-ease:cubic-bezier(.22,1,.36,1)}
main>section:not(.provided-main){position:relative;scroll-margin-top:24px}
main>section:not(.provided-main):not(.original-intro){border-top:1px solid var(--detail-line)}
.original-intro{background:#fffdf7}.factory-intro{background:#e1ebdc}.factory-input-help{border-left:3px solid #b25455;padding-left:20px;border-top:0}.factory-features li>span{border:1px solid #9bb18e;border-radius:50%;width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;padding:0;color:#486344}.factory-features{gap:28px}.factory-figure figcaption{color:#506658}.factory-figure>a{width:fit-content;margin:0 auto;padding:6px 0}
.section-title{letter-spacing:-.035em;line-height:1.35}.section-lede{line-height:1.85;max-width:58ch;margin-inline:auto}.principle-card{transition:background 220ms ease}.principle-num{color:#b25455}.curr-item{transition:background 200ms ease,border-color 200ms ease}.curr-item[open]{background:#f5f0e4;border-color:#b2545555}.curr-item summary{min-height:58px;cursor:pointer;transition:color 180ms ease}.curr-item summary:hover{color:#a44749}.curr-item p{line-height:1.8}.curr-num{transition:background 180ms ease,color 180ms ease}.curr-item[open] .curr-num{background:#183b40;color:#fff4d9}
.site-nav a,.factory-figure>a,.support-link,.site-footer a{ text-underline-offset:5px;text-decoration-thickness:1px}.site-nav a{position:relative;padding-block:12px}.site-nav a:after{content:'';position:absolute;height:2px;background:#b25455;bottom:5px;inset-inline:0;transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--detail-ease)}.site-nav a:hover:after,.site-nav a:focus-visible:after{transform:scaleX(1)}
.header-language select{transition:border-color 180ms ease,background 180ms ease,box-shadow 180ms ease}.header-language select:hover,.header-language select:focus{background:#fffdf7;border-color:#b25455;box-shadow:0 3px 0 #b2545520}
button,a,summary,select{-webkit-tap-highlight-color:#b2545525}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #b25455;outline-offset:5px}button.screen-open{cursor:zoom-in;transition:transform 260ms var(--detail-ease),box-shadow 260ms ease,filter 260ms ease}.screen-open:active{transform:scale(.98)}.mission-track{padding-block:24px 32px!important}.mission-track figure{padding:0 6px}.mission-track .card-art{border-radius:10px;box-shadow:0 4px 10px #183b4012}.mission-track figcaption{transition:color 180ms ease;line-height:1.6}.mission-track figure:focus-within figcaption{color:#a44749}.mission-track .card-art:focus-visible{transform:translateY(-5px);box-shadow:0 14px 24px #183b4020}.card-flow-toggle,.zoom-close,.story-btn{transition:background 180ms ease,transform 180ms ease}.card-flow-toggle:hover,.zoom-close:hover,.story-btn:hover{background:#e8dec9}.card-flow-toggle:active,.zoom-close:active,.story-btn:active{transform:scale(.95)}
#screenZoom{background:#fffdf7;padding:22px;border-color:#b8c2b4;box-shadow:0 24px 90px #142d3b44}#screenZoom::backdrop{background:#122a32b3}#screenZoom p{line-height:1.7;color:#38565a}#screenZoom[open]{animation:zoom-in 240ms var(--detail-ease)}@keyframes zoom-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){.mission-track .card-art:hover{transform:translateY(-7px);box-shadow:0 16px 25px #183b4026}.mission-track figure:hover figcaption{color:#a44749}.screen-open:not(.card-art):hover{transform:translateY(-3px)}.principle-card:hover{background:#eee9da66}}
@media(max-width:859px){.nav-toggle:before,.nav-toggle:after{transition:transform 220ms ease,box-shadow 220ms ease,top 220ms ease}.nav-toggle[aria-expanded=true]:before{top:19px;box-shadow:none;transform:rotate(45deg)}.nav-toggle[aria-expanded=true]:after{top:19px;transform:rotate(-45deg)}.site-nav.is-open{background:#fff8e8;border-top:1px solid var(--detail-line);border-bottom:1px solid var(--detail-line);box-shadow:0 12px 18px #183b400a}.site-nav a{min-height:44px}.factory-input-help{padding-left:16px}.factory-features{gap:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.screen-open:hover,.screen-open:focus-visible,.screen-open:active{transform:none!important}}
main>.principles,main>.learning-how,main>.curriculum{background:#fffdf7}main>.story,main>.cheonjiin,main>.review-modes{background:#f5f1e7}main>.rewards,main>.mission-gallery{background:#f8eeea}main>.mission-gallery{border-top-color:transparent!important}main>.principles,main>.learning-how,main>.story,main>.cheonjiin,main>.curriculum,main>.review-modes,main>.rewards{padding-block:clamp(56px,6vw,88px)}.screen-open:focus-visible,.mission-track .card-art:focus-visible,.header-language select:focus-visible{outline:3px solid #b25455;outline-offset:5px}
/* Full-site review: contrast, readable factual answers, crawlable locale choices. */
.principle-num,.mission-track figure:focus-within figcaption,.mission-track figure:hover figcaption{color:#9c4244}.factory-features li>span{border-color:#6f8a61}.factory-note{font-size:14px!important;color:#385447}.animation-credit{font-size:12px;color:#425952}.site-faq{padding:72px 24px;background:#fffdf7}.site-faq .wrap{max-width:900px}.site-faq dl{margin:36px 0 0}.site-faq dl>div{padding:24px 0;border-top:1px solid #183b4024}.site-faq dt{font-size:19px;font-weight:500;line-height:1.5}.site-faq dd{margin:12px 0 0;font-size:15px;font-weight:300;line-height:1.9;max-width:72ch}.language-directory{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 22px;padding:32px 24px;border-top:1px solid #183b4020;max-width:1000px;margin:auto}.language-directory a{font-size:13px;color:#38565a;min-height:30px;display:inline-flex;align-items:center}.language-directory a[aria-current]{color:#9c4244;text-decoration:underline;text-underline-offset:5px}.factory-input-help{border-left:0;border-inline-start:3px solid #b25455;padding-left:0;padding-inline-start:20px}[dir=rtl] .factory-intro h2{letter-spacing:normal}[dir=rtl] .factory-grid{text-align:start}@media(max-width:760px){.site-faq{padding:52px 24px}.site-faq dt{font-size:17px}.site-faq dd{font-size:14px}.language-directory{gap:9px 17px}}
/* Visible refinement: a working recording control, a distinct card gallery, persistent navigation. */
.site-header{position:sticky;top:0;z-index:50;transition:box-shadow 200ms ease}.site-header.has-scrolled{box-shadow:0 3px 0 #b2545533,0 8px 20px #183b4010}main>section:not(.provided-main){scroll-margin-top:108px}.site-nav a[aria-current=location]:after{transform:scaleX(1)}.site-nav a[aria-current=location]{color:#9c4244}
.factory-features{position:relative;padding-inline-start:0}.factory-features:before{content:'';position:absolute;inset-inline-start:15px;top:15px;bottom:30px;width:1px;background:#92aa84}.factory-features li{position:relative}.factory-features li>span{position:relative;z-index:1;background:#183b40;color:#fff4d9;border-color:#183b40}.factory-features li>div{border-bottom:1px solid #9ab28b66;padding-bottom:20px;flex:1}.factory-figure{padding:22px 20px;background:#f5f7ef;border:1px solid #b8c9ad;border-radius:28px;box-shadow:0 18px 32px #34503912}.factory-shot{box-shadow:none;width:100%;height:auto}.factory-figure figcaption{margin:18px 0 12px}.factory-play{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:12px 16px;border:1px solid #183b40;border-radius:25px;background:#183b40;color:#fff4d9;font:500 13px/1.5 Paperlogy;cursor:pointer;transition:background 200ms ease,transform 180ms ease}.factory-play:hover{background:#2d5b5c}.factory-play:active{transform:scale(.98)}.factory-play[aria-pressed=true]{background:#fff4d9;color:#183b40}
main>.mission-gallery{background:#183b40;color:#fff4d9;padding:64px 0 70px}.mission-gallery .section-title{font-size:clamp(28px,3.2vw,42px);color:#fff4d9}.mission-gallery .section-lede{color:#d1dfd4}.mission-gallery .card-flow-toggle{color:#fff4d9;border-color:#8aa9a0;background:transparent}.mission-gallery .card-flow-toggle:hover{background:#31575a}.mission-track .card-art{position:relative;box-shadow:0 14px 24px #071c2040;border:1px solid #dfbb7966;padding:5px;background:#29494c;border-radius:14px;overflow:visible}.mission-track .card-art:after{content:'+';position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff4d9;color:#183b40;font:500 23px/1 Paperlogy;transition:transform 220ms ease}.mission-track .card-art:hover:after,.mission-track .card-art:focus-visible:after{transform:scale(1.16)}.mission-track figcaption,.mission-track figure:hover figcaption,.mission-track figure:focus-within figcaption{color:#fff4d9}.mission-track figcaption span{color:#c7d8cf}.mission-track .card-art:focus-visible{outline-color:#f2ca83}.mission-track figure{width:200px}.mission-track .card-art img{border-radius:9px}
@media(max-width:859px){.site-nav.is-open{position:absolute;top:calc(100% + 8px);left:16px;right:16px;padding:12px 22px;border:1px solid #c9c8b2;border-radius:18px;box-shadow:0 16px 30px #183b4020}.site-nav a{font-size:16px;padding:15px 4px}.site-nav a:after{bottom:9px;inset-inline-end:70%}main>section:not(.provided-main){scroll-margin-top:92px}}
@media(max-width:760px){.factory-figure{padding:18px;margin:0 -4px}.mission-track figure{width:170px}.mission-track .card-art{height:270px!important}.factory-play{font-size:12px}}
@media(prefers-reduced-motion:reduce){.factory-play:active,.mission-track .card-art:hover:after,.mission-track .card-art:focus-visible:after{transform:none}}
/* Snap only major section starts. Native proximity keeps long sections freely readable. */
html{scroll-padding-top:var(--header-height,88px);scroll-snap-type:y proximity}
main>section{scroll-margin-top:0}
main>#learn,main>#factory,main>#story,main>#curriculum,main>#rewards,main>#mission-cards,main>#try,main>#questions{scroll-snap-align:start;scroll-snap-stop:normal}
html.menu-open{scroll-snap-type:none}
.factory-figure video{display:block;width:100%;height:auto;aspect-ratio:390/844;border-radius:17px;background:#f6f4ee}
.factory-figure video[hidden],.factory-shot[hidden]{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the complete Factory recording visible within the available viewport. */
.factory-grid>*{min-width:0}
.factory-figure{min-width:0;align-self:start}
.factory-figure .factory-shot,.factory-figure video{display:block;width:auto;height:auto;max-width:100%;max-height:clamp(100px,calc(100svh - var(--header-height,88px) - 170px),680px);aspect-ratio:auto;object-fit:contain;margin-inline:auto}
.factory-figure video[hidden],.factory-figure .factory-shot[hidden]{display:none}
