:root{--paper:#f9f6ed;--ink:#2f4b3d;--muted:#899183;--green:#4e7860;--light:#e8eddd;--yellow:#e6b75f;--line:#dedfd1;--orange:#c77c4e}*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper)}button,a,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.3}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b47b38;outline-offset:5px}button{color:inherit}button,a{touch-action:manipulation}button{border:0}a{text-decoration:none;color:inherit}.lesson{height:100dvh;min-height:600px;display:grid;grid-template-rows:96px 1fr 78px;overflow:hidden;background:radial-gradient(ellipse at 85% 5%,#f1eedc 0,transparent 45%),var(--paper)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;gap:30px;border-bottom:1px solid #e2e1d4}.brand{background:none;text-align:left;display:flex;gap:12px;align-items:center;font-weight:700;font-size:20px;white-space:nowrap}.brand small{display:block;font-weight:400;font-size:10px;letter-spacing:3px;margin-top:5px;color:#88917c}.brand-mark{display:grid;place-items:center;width:39px;height:43px;background:#e2e8d7;border-radius:13px;color:var(--green);font-size:30px}.chapters{display:flex;gap:30px}.chapters button{background:none;padding:15px 0;color:#8d9487;font-size:13px;position:relative;white-space:nowrap}.chapters button.active{color:var(--ink);font-weight:600}.chapters button.active:after{content:"";position:absolute;width:5px;height:5px;background:var(--green);border-radius:50%;bottom:1px;left:50%}.top-actions{display:flex;gap:12px}.icon-button{background:transparent;border:1px solid var(--line);width:36px;height:36px;border-radius:50%;font-size:20px}.icon-button.on{background:var(--green);color:white}.footer{display:flex;align-items:center;justify-content:space-between;position:relative;padding:0 4.6%;font-size:12px;color:#8a9282}.catalog{background:none;display:flex;gap:9px;align-items:center;font-size:12px;color:#7c8876}.catalog span{font-size:20px}.page-navigation{display:flex;align-items:center;gap:25px;position:absolute;left:50%;transform:translateX(-50%)}.page-navigation button{background:#fdfbf5;border:1px solid #d4d9c9;width:39px;height:39px;border-radius:50%;font-size:18px}.page-navigation button:last-child{background:var(--green);color:white;border-color:var(--green)}.page-number{font-size:13px;letter-spacing:1px;min-width:65px}.page-number b{font-size:18px;color:var(--ink);font-weight:500}.page-number span{color:#9da28e}.keyboard-hint{font-size:11px;letter-spacing:1px}.footer-leaf{margin-left:32px;color:#b4bf9c;font-size:22px}.progress-track{position:absolute;bottom:0;left:0;right:0;height:3px;background:#e7e8dc}#progress{height:100%;background:#a6b68d;transition:width .4s}#stage{position:relative;min-height:0;outline:none}.slide{height:100%;padding:28px 5% 20px;animation:pageIn .5s ease both;overflow:auto}.eyebrow{font-size:11px;letter-spacing:3px;color:#8c9b7c;font-weight:500}.slide h1,.slide h2,.slide p{margin:0}.slide h2{font-size:clamp(26px,2.8vw,42px);letter-spacing:2px;font-weight:650}.slide-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.slide-heading .eyebrow{display:block;margin-bottom:9px}.slide-heading p{color:#8a9480;font-size:13px}.tag{border:1px solid #d4ddc8;padding:7px 12px;border-radius:30px;font-size:11px;letter-spacing:1px;color:#829375;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 24px;background:var(--green);color:#fffdf5;border-radius:10px;font-size:14px;box-shadow:0 5px 15px #36523c12;cursor:pointer;border:1px solid transparent}.button:hover{filter:brightness(1.05);transform:translateY(-1px)}.button.secondary{background:#fffdf6;color:var(--ink);border-color:#d6ddc9}.button.small{min-height:34px;padding:7px 13px;font-size:12px;border-radius:7px}.cover{display:grid;grid-template-columns:41% 59%;align-items:center;padding-top:12px;overflow:hidden}.cover-copy{position:relative;z-index:2;padding:0 0 20px 5%}.cover .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:2px}.cover .eyebrow:before{content:"";width:28px;height:1px;background:#97a67d}.cover h1{font-size:clamp(40px,4.5vw,72px);line-height:1.35;letter-spacing:3px;margin-top:22px;font-weight:650}.cover h1 em{font-style:normal;color:#bd8b44}.cover .subtitle{margin-top:20px;letter-spacing:8px;font-size:17px;color:#72826c}.cover .cover-desc{margin-top:32px;font-size:13px;letter-spacing:2px;color:#929b86}.cover .button{margin-top:32px;min-width:176px}.cover-art{height:100%;position:relative;display:flex;align-items:center;justify-content:center;perspective:1000px}.world-orbit{position:absolute;width:86%;aspect-ratio:1;border:1px dashed #c6d0b2;border-radius:50%;transform:rotateX(55deg);top:24%}.world-orbit:after{content:"";position:absolute;inset:35px;border:1px solid #dbe0cb;border-radius:50%}.world-glow{position:absolute;width:83%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#dfe8c8 0,#e9ecd9 50%,transparent 70%);top:6%}.house{--s:110px;width:var(--s);height:var(--s);position:absolute;transform-style:preserve-3d;transform:rotateX(-24deg) rotateY(-36deg);animation:float 5s ease-in-out infinite;z-index:2;top:35%;left:42%}.house .face{position:absolute;width:100%;height:100%;border:2px solid #52735f88;backface-visibility:visible;display:grid;place-items:center}.house .front{background:#ecc871;transform:translateZ(calc(var(--s)/2))}.house .back{background:#edcb74;transform:rotateY(180deg) translateZ(calc(var(--s)/2))}.house .right{background:#78a998;transform:rotateY(90deg) translateZ(calc(var(--s)/2))}.house .left{background:#d4a76c;transform:rotateY(-90deg) translateZ(calc(var(--s)/2))}.house .top{background:#a6bf83;transform:rotateX(90deg) translateZ(calc(var(--s)/2))}.house .bottom{background:#c2b075;transform:rotateX(-90deg) translateZ(calc(var(--s)/2))}.house .front:after{content:"";height:45%;width:27%;position:absolute;bottom:0;background:#c39458;border:3px solid #f4dea6;border-bottom:0;border-radius:30px 30px 0 0}.house .right:after{content:"";width:34%;height:34%;background:linear-gradient(90deg,transparent 45%,#f6ecca 45% 55%,transparent 55%),linear-gradient(0deg,transparent 45%,#f6ecca 45% 55%,transparent 55%),#b8d9d5;border:4px solid #f6ecca}.house.hero{--s:156px;top:31%;left:38%}.house.mini{--s:80px;top:56%;left:15%;animation-delay:-2s}.house.tiny{--s:62px;top:48%;left:76%;animation-delay:-1s}.art-label{position:absolute;right:5%;top:10%;font-size:12px;letter-spacing:3px;color:#9caa89;transform:rotate(8deg)}.art-note{position:absolute;bottom:8%;left:32%;font-size:12px;letter-spacing:4px;color:#899a77}.sprout{position:absolute;font-size:60px;color:#a2b380;bottom:21%;right:8%;transform:rotate(20deg)}.sun{position:absolute;top:9%;left:18%;width:50px;height:50px;background:#edce7a;border-radius:50%;box-shadow:0 0 0 13px #edce7a22,0 0 0 28px #edce7a10}.ant-character{display:inline-block;width:66px;height:70px;position:relative;vertical-align:middle;flex-shrink:0}.ant-character .abdomen{position:absolute;width:26px;height:29px;background:#b17b43;left:18px;top:39px;border-radius:50%;transform:rotate(-22deg)}.ant-character .body{position:absolute;width:16px;height:22px;background:#cc9956;left:30px;top:28px;border-radius:50%;transform:rotate(20deg)}.ant-character .head{position:absolute;width:29px;height:26px;background:#e2b96b;left:32px;top:7px;border-radius:47%;transform:rotate(12deg)}.ant-character .head:before{content:"• •";font-size:15px;letter-spacing:2px;color:#3a4834;position:absolute;top:1px;right:2px;transform:rotate(8deg)}.ant-character .head:after{content:"◡";position:absolute;right:7px;bottom:0;font-size:15px}.ant-character .feelers{position:absolute;width:17px;height:17px;left:38px;top:-4px;border:2px solid #7a6749;border-bottom:0;border-left:0;transform:rotate(-23deg)}.ant-character .legs{position:absolute;width:44px;height:27px;left:7px;top:35px;border:2px solid #8b714c;border-top:0;border-radius:0 0 35% 35%;transform:rotate(22deg)}.ant-character .arm{position:absolute;width:29px;height:22px;border:2px solid #8b714c;border-left:0;border-top:0;right:-5px;top:20px;transform:rotate(-45deg)}.cover-ant{position:absolute;bottom:20%;left:38%;transform:scale(1.4) rotate(-8deg);z-index:3;animation:bob 3s ease-in-out infinite}.ant-trail{position:absolute;bottom:18%;left:19%;width:43%;height:50px;border-bottom:3px dotted #bac59d;border-radius:50%;transform:rotate(-15deg)}.story{display:flex;flex-direction:column}.book-layout{display:flex;justify-content:center;align-items:center;flex:1;min-height:0;gap:26px}.book-frame{height:100%;min-height:0;max-width:85%;position:relative;display:flex;align-items:center;justify-content:center}.book-frame img{max-height:100%;max-width:100%;object-fit:contain;border-radius:4px;box-shadow:0 14px 34px #4d54331b;animation:bookTurn .7s ease both;transform-origin:left center}.book-frame:after{content:"";position:absolute;left:50%;top:2%;height:96%;width:14px;background:linear-gradient(90deg,transparent,#30281618,transparent);pointer-events:none}.book-aside{width:92px;display:flex;flex-direction:column;align-items:center;gap:16px}.narrator{background:#eff0df;border:1px solid #d8dfc8;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:45px;min-width:80px;padding:16px 7px 12px;gap:4px;color:#6f8262;font-size:11px}.narrator:hover .ant-character,.narrator.speaking .ant-character{animation:bob .5s ease-in-out infinite}.narrator.speaking{background:#e4eacb}.narrator .ant-character{transform:scale(.75);margin:-5px -8px}.book-prompt{writing-mode:vertical-rl;letter-spacing:5px;font-size:12px;line-height:2;color:#97a183}.story .slide-heading{margin-bottom:16px}.interactive{display:flex;flex-direction:column}.frame-shell{border:1px solid #d7dfce;background:#e8f0e8;border-radius:16px;overflow:hidden;flex:1;min-height:0;position:relative}.frame-shell iframe{display:block;width:100%;height:100%;border:0}.frame-tools{display:flex;align-items:center;gap:12px}.frame-tools a{font-size:11px;white-space:nowrap;color:#71856b}.activity{display:flex;flex-direction:column}.activity-area{flex:1;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:7%;padding:0 4%}.activity-number{font-family:Georgia,serif;color:#d6dfc4;font-size:110px;line-height:1}.activity h3{font-size:clamp(28px,3vw,46px);line-height:1.6;margin:10px 0 25px;font-weight:550;letter-spacing:3px}.activity h3 em{font-style:normal;color:#b18844}.instruction-lines{display:flex;flex-direction:column;gap:22px}.instruction-lines div{display:flex;gap:17px;align-items:center;font-size:19px;letter-spacing:2px}.instruction-lines b{font-size:12px;font-weight:500;border:1px solid #cbd6bb;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#84966f;flex-shrink:0}.timer-card{background:#eff1e2;border:1px solid #dfe4cc;border-radius:32px;padding:35px;text-align:center;position:relative}.timer-label{letter-spacing:4px;color:#9ba787;font-size:11px}.timer-digits{font-size:clamp(60px,7vw,105px);font-weight:300;letter-spacing:5px;margin:13px 0 5px;font-variant-numeric:tabular-nums;color:#507153}.timer-card .timer-caption{font-size:12px;letter-spacing:2px;color:#98a383;margin-bottom:25px}.timer-buttons{display:flex;justify-content:center;gap:10px}.timer-ant{position:absolute;right:8px;top:-44px;transform:rotate(10deg)}.activity-bottom{display:flex;gap:15px;justify-content:center;align-items:center;margin-top:18px}.ant-open{display:flex;align-items:center;gap:0;background:transparent;color:#68835f;font-size:12px}.ant-open .ant-character{transform:scale(.65);margin:-10px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;flex:1;min-height:0;padding:5px 6%}.compare-card{border:1px solid #d8ddc8;border-radius:24px;overflow:hidden;background:#eeefdc;display:flex;flex-direction:column;align-items:center;position:relative}.compare-card img{height:calc(100% - 50px);width:100%;object-fit:cover}.compare-card .cut-image{width:100%;flex:1;min-height:0;overflow:hidden;position:relative}.compare-card .cut-image img{position:absolute;width:200%;height:100%;max-width:none;object-fit:cover;left:-100%}.compare-card .label{padding:15px;font-size:16px;letter-spacing:4px}.reveal-word{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:20px 30px;border-radius:14px;background:#f5d476;color:#665b28;white-space:nowrap;font-size:30px;letter-spacing:10px;box-shadow:0 10px 30px #63532c33;animation:wordIn .5s ease both}.reveal-action{display:flex;justify-content:center;gap:15px;padding-top:18px}.gallery-slide{display:flex;flex-direction:column}.gallery-actions{display:flex;gap:10px;flex-wrap:wrap}.gallery{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:10px 0}.gallery-empty{grid-column:1/-1;display:flex;justify-content:center;align-items:center;flex-direction:column;border:1px dashed #ccd7bd;border-radius:25px;background:#eff0e044;gap:16px;color:#8a9c79;font-size:14px;letter-spacing:2px}.gallery-empty .ant-character{transform:scale(1.5);margin:20px}.work{margin:0;background:#fffdf7;border:1px solid #dbe0ce;border-radius:12px;overflow:hidden;position:relative;min-height:180px}.work img{width:100%;height:210px;object-fit:contain;cursor:zoom-in}.work figcaption{padding:12px 16px;font-size:12px;color:#87977b}.work button{position:absolute;right:7px;top:7px;width:25px;height:25px;border-radius:50%;background:#fffdf8cc;color:#8b9a7e}.camera-preview{display:flex;flex-direction:column;align-items:center;gap:12px;flex:1;min-height:0;padding:10px}.camera-preview video{max-width:100%;min-height:0;max-height:calc(100% - 60px);border-radius:18px;background:#dbe3ce}.camera-preview p{font-size:14px;color:#879677}.exercise-tabs{display:flex;gap:10px}.exercise-tabs button{background:#e9ecdc;border:1px solid #d7dfca;padding:10px 18px;border-radius:9px;font-size:13px}.exercise-tabs button.active{background:var(--green);color:#fff}.end-note{font-size:12px;color:#9ba88b;letter-spacing:4px;align-self:center;padding-top:15px}.last-story .book-frame:after{display:none}dialog{border:1px solid #d7ddcb;background:#f9f7ed;color:var(--ink);border-radius:20px;box-shadow:0 25px 90px #263c3830;padding:26px;max-width:94vw}dialog::backdrop{background:#263d365c;backdrop-filter:blur(6px)}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.dialog-header h2{font-size:23px;margin:8px 0 0;letter-spacing:2px}.dialog-header>div:last-child{display:flex;align-items:center;gap:16px}.close{font-size:28px;width:36px;height:36px;border-radius:50%;background:#e9eddd;flex-shrink:0}#contents{width:850px;max-height:85vh}#slide-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}#slide-list button{padding:16px;background:#f0f0e1;border:1px solid transparent;border-radius:10px;display:flex;align-items:center;text-align:left;gap:13px;font-size:13px}#slide-list button.active{background:#e3e9d1;border-color:#9eaf88}#slide-list b{color:#9caa86;font-size:19px;font-weight:400}#workspace{width:96vw;height:91vh;padding:18px;overflow:hidden}#workspace .dialog-header{height:42px;margin-bottom:12px}#workspace h2{margin:0;font-size:18px}#workspace-frame{height:calc(100% - 54px);width:100%;border:0;border-radius:12px}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,20px);background:#3f604eee;color:#fffdf4;padding:14px 23px;border-radius:10px;font-size:13px;z-index:10;opacity:0;pointer-events:none;transition:.2s;max-width:85vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}.view-work{height:100%;width:100%;object-fit:contain}.error-note{padding:25px;font-size:14px;line-height:2;color:#947452}.work-detail{position:absolute;inset:20px;background:#f9f6ed;z-index:8;display:flex;align-items:center;justify-content:center}.work-detail img{max-width:95%;max-height:95%;object-fit:contain}.work-detail .close{position:absolute;right:12px;top:12px}.frame-shell iframe:focus{outline:0}
@keyframes pageIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes bookTurn{from{opacity:.2;transform:perspective(1800px) rotateY(-9deg)}to{opacity:1;transform:perspective(1800px) rotateY(0)}}@keyframes float{0%,100%{transform:translateY(0) rotateX(-24deg) rotateY(-36deg)}50%{transform:translateY(-12px) rotateX(-24deg) rotateY(-31deg)}}@keyframes bob{0%,100%{margin-top:0}50%{margin-top:-7px}}@keyframes wordIn{from{opacity:0;scale:.7}to{opacity:1;scale:1}}
@media(min-width:1700px){.lesson{grid-template-rows:110px 1fr 92px}.slide{padding-top:40px;padding-bottom:30px}.slide-heading{margin-bottom:26px}.activity-area{padding:0 8%}.cover h1{font-size:78px}.house.hero{--s:200px}.house.mini{--s:110px}.house.tiny{--s:90px}}@media(max-width:1050px){.chapters{gap:15px}.chapters button{font-size:11px}.topbar{gap:15px;padding:0 3%}.brand{font-size:17px}.slide{padding:20px 3% 12px}.cover h1{font-size:45px}.cover .subtitle{font-size:14px;letter-spacing:5px}.house.hero{--s:120px}.house.mini{--s:65px}.house.tiny{--s:50px}.activity-area{gap:5%;padding:0 2%}.activity h3{font-size:29px}.instruction-lines div{font-size:16px}.timer-card{padding:25px}.keyboard-hint{display:none}.footer-leaf{display:none}.book-aside{width:72px}.narrator{min-width:68px}.book-frame{max-width:86%}.gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.lesson{min-height:560px;grid-template-rows:76px 1fr 66px}.chapters{display:none}.brand small{font-size:9px;letter-spacing:2px}.cover{grid-template-columns:1fr;grid-template-rows:53% 47%;padding:20px 7%}.cover-copy{padding:0}.cover h1{font-size:36px;line-height:1.3;margin-top:13px}.cover h1 br{display:none}.cover .eyebrow{font-size:9px}.cover .subtitle{margin-top:12px}.cover .cover-desc{display:none}.cover .button{margin-top:18px;min-height:42px}.cover-art{margin-top:-15px}.house.hero{--s:85px;top:25%;left:45%}.house.mini{--s:47px;top:51%;left:18%}.house.tiny{--s:38px;top:46%;left:79%}.world-glow{width:70%;top:-25%}.world-orbit{width:70%;top:-3%}.sun{width:30px;height:30px;left:15%;top:1%}.cover-ant{bottom:12%;left:43%;transform:scale(.85)}.art-note,.art-label{display:none}.sprout{font-size:38px;bottom:17%}.slide-heading h2{font-size:23px;letter-spacing:1px}.slide-heading .eyebrow{font-size:9px;margin-bottom:6px}.tag{display:none}.slide{padding:18px 4% 12px}.book-layout{flex-direction:column;gap:12px}.book-frame{height:calc(100% - 70px);max-width:100%;width:100%}.book-aside{flex-direction:row;width:auto;gap:15px;height:60px}.narrator{border-radius:35px;flex-direction:row;padding:3px 15px;min-width:125px}.narrator .ant-character{height:60px}.book-prompt{writing-mode:horizontal-tb;font-size:10px;letter-spacing:2px}.activity-area{grid-template-columns:1fr;gap:20px;overflow:auto}.activity-number{display:none}.activity h3{font-size:25px;margin:5px 0 15px;letter-spacing:2px}.instruction-lines{gap:13px}.instruction-lines div{font-size:14px;letter-spacing:1px}.timer-card{padding:15px}.timer-digits{font-size:50px;margin:8px}.timer-card .timer-caption{margin-bottom:12px}.timer-ant{display:none}.activity-bottom{margin-top:10px;flex-wrap:wrap}.compare-grid{padding:0;gap:12px}.compare-card .label{font-size:12px;letter-spacing:2px}.reveal-word{font-size:19px;letter-spacing:3px;padding:15px}.compare-card{border-radius:14px}.frame-tools a{display:none}.frame-shell{border-radius:10px}.exercise-tabs button{padding:8px 10px;font-size:11px}.exercise-tabs{gap:6px}.gallery-actions .button{font-size:11px;padding:8px 10px}.gallery{gap:10px}.work img{height:140px}#slide-list{grid-template-columns:repeat(2,1fr)}#slide-list button{padding:12px;font-size:11px}.dialog-header h2{font-size:18px}#workspace h2{font-size:13px}#workspace .button{font-size:10px;padding:6px}#workspace .dialog-header>div{gap:6px}.page-navigation{gap:14px;left:65%}.catalog{font-size:10px}.page-navigation button{height:34px;width:34px}.page-number b{font-size:16px}.page-number{font-size:11px;min-width:60px}.gallery-slide .slide-heading{align-items:flex-start;flex-direction:column;gap:12px}.frame-tools{gap:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-height:700px) and (min-width:701px){.lesson{min-height:500px;grid-template-rows:76px 1fr 62px}.slide{padding-top:16px;padding-bottom:10px}.slide-heading h2{font-size:27px}.cover h1{font-size:46px}.cover .cover-desc{margin-top:20px}.cover .button{margin-top:20px}.activity-number{font-size:65px}.activity h3{margin:5px 0 15px;font-size:27px}.timer-card{padding:20px}.timer-digits{font-size:65px}.timer-card .timer-caption{margin-bottom:15px}.instruction-lines{gap:14px}}
/* Keep classroom controls within one presentation screen. */
.activity-area{min-height:0}.activity-number{font-size:80px}.activity h3{font-size:clamp(26px,2.8vw,38px);line-height:1.5;margin:8px 0 22px}.timer-card{padding:22px}.timer-digits{font-size:clamp(55px,5.8vw,80px);line-height:1.15;margin:12px 0 8px}.timer-card .timer-caption{margin-bottom:18px}.activity-bottom .narrator{flex-direction:row;border-radius:35px;padding:4px 15px;gap:4px}.activity-bottom .narrator .ant-character{height:54px;margin:-4px -8px}.activity-bottom{margin-top:16px}.slide-heading{flex-shrink:0}@media(max-width:700px){.activity-number{display:none}.timer-card{padding:15px}.activity h3{font-size:25px}.timer-digits{font-size:50px}.activity-area{overflow:auto}.activity-bottom{margin-top:10px}}@media(max-height:700px) and (min-width:701px){.activity-number{font-size:55px}.activity h3{font-size:28px;margin:5px 0 16px}.timer-digits{font-size:56px}.timer-card{padding:17px}.activity-bottom{margin-top:10px}.activity-bottom .narrator .ant-character{height:42px}.instruction-lines div{font-size:16px}}
.compare,.exercise{display:flex;flex-direction:column}.compare-grid{min-height:0}.exercise .frame-shell{min-height:250px}

/* StPageFlip soft pages; activity canvases live outside the book. */
.lesson.picture-opening{display:block;position:relative;min-height:0;background:#ebe6d5}
.picture-opening>.topbar{display:none}
.picture-opening>.footer{display:flex;position:absolute;left:0;right:0;bottom:0;height:60px;background:transparent;z-index:10}
.picture-opening>#stage{height:100%;width:100%}
.picture-opening .slide.book-slide{display:block;width:100%;height:100%;padding:0;overflow:hidden;animation:none}
.picture-book-table{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(ellipse at 50% 30%,#faf7ec 0,#ede9db 58%,#e0d9c5 100%);padding:62px 30px 105px}
.picture-book-table:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.16' filter='url(%23n)'/%3E%3C/svg%3E")}
.picture-book{position:relative;width:min(94vw,calc((100dvh - 180px)*1.777));aspect-ratio:16/9;isolation:isolate;filter:drop-shadow(0 22px 20px #4d45242b)}
.book-board{position:absolute;inset:2px -8px -11px;background:#65714e;border-radius:10px 12px 15px 12px;box-shadow:0 2px 0 #45503a,0 5px 0 #d5c9ab;transform:rotate(-.25deg);z-index:-3}
.book-paper-stack{position:absolute;inset:0 -2px -7px;border:1px solid #c5bda5;border-radius:6px 9px 12px 9px;background:repeating-linear-gradient(to bottom,#eee7d4 0 1px,#fffbed 1px 3px);box-shadow:0 2px 1px #b0a688;z-index:-2}
#book-mount,#soft-flipbook{position:relative;width:100%;height:100%}#soft-flipbook{touch-action:pan-y}
.soft-leaf{background:#fff9e9;overflow:hidden;box-shadow:inset 0 0 2px #79644338}
.leaf-art{position:absolute;top:9px;bottom:23px;overflow:hidden;pointer-events:none}.leaf-left .leaf-art{left:9px;right:0}.leaf-right .leaf-art{left:0;right:9px}
.leaf-art img{position:absolute;top:0;width:200%;height:100%;max-width:none;object-fit:fill;user-select:none;-webkit-user-drag:none}.leaf-left .leaf-art img{left:0}.leaf-right .leaf-art img{left:-100%}
.soft-leaf:after{content:"";position:absolute;inset:0;pointer-events:none}.leaf-left:after{background:linear-gradient(90deg,#4b3b2008,transparent 4%,transparent 90%,#3c2c1733)}.leaf-right:after{background:linear-gradient(90deg,#3c2c1733,transparent 10%,transparent 96%,#4b3b2008)}
.book-gutter{position:absolute;left:50%;top:0;bottom:0;width:18px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#68563744 49%,#fff8dd33 53%,transparent);z-index:2;pointer-events:none;border-radius:50%}
.leaf-number{position:absolute;bottom:5px;font:italic 10px Georgia,serif;color:#9b8c68}.leaf-left .leaf-number{left:15px}.leaf-right .leaf-number{right:15px}
.book-turn-hint{position:absolute;left:50%;bottom:75px;transform:translateX(-50%);color:#968b70;font-size:11px;letter-spacing:2px;white-space:nowrap}
.book-reading-bar{position:absolute;top:16px;left:4.5%;right:4.5%;height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}#book-title{font-size:15px;letter-spacing:3px;color:#7b775e}#book-voice[hidden]{display:none}.book-reading-bar .narrator{min-width:0;border:0;flex-direction:row;border-radius:25px;padding:3px 14px;font-size:11px;background:#e8e8d6}.book-reading-bar .ant-character{display:none}
.leaf-activity{display:flex;flex-direction:column;height:100%;align-items:center;justify-content:center;padding:25px;text-align:center;gap:18px;background:#eff0df}.leaf-activity>span{font:40px Georgia,serif;color:#a6b28b}.leaf-activity h2{font-size:clamp(16px,2vw,28px);line-height:1.7}.leaf-activity p{font-size:12px;letter-spacing:2px;color:#82916e}
@media(max-width:700px){.picture-book-table{padding:53px 14px 100px}.picture-book{width:min(94vw,calc((100dvh - 170px)*1.777))}.book-gutter{width:12px}.leaf-art{top:5px;bottom:16px}.leaf-left .leaf-art{left:5px}.leaf-right .leaf-art{right:5px}.leaf-number{bottom:3px;font-size:8px}.book-turn-hint{font-size:9px;letter-spacing:1px;bottom:72px}#book-title{font-size:11px;letter-spacing:1px}.book-reading-bar .narrator{font-size:10px;padding:6px 10px}.leaf-activity{padding:12px;gap:8px}.leaf-activity h2{font-size:14px}.leaf-activity .ant-character{display:none}}

/* Full-screen picture-book spread: the illustration is the environment. */
.picture-opening .picture-book-table{padding:0;background:#e2e7cf;display:block}
.picture-opening .picture-book-table:before{display:none}
.picture-opening .picture-book{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;filter:none}
.picture-opening .book-board,.picture-opening .book-paper-stack,.picture-opening .leaf-number,.picture-opening .book-turn-hint{display:none}
.picture-opening .soft-leaf{box-shadow:none;background:#f3efd9}
.picture-opening .leaf-art,.picture-opening .leaf-left .leaf-art,.picture-opening .leaf-right .leaf-art{top:0;bottom:0;left:0;right:0}
.picture-opening .panorama-leaf .leaf-art img{object-fit:cover}
.picture-opening .soft-leaf:after{opacity:.18}
.picture-opening .book-gutter{width:10px;opacity:.25}
.picture-opening .book-reading-bar{z-index:10;pointer-events:none;top:18px;left:22px;right:22px}
.picture-opening #book-title:not([hidden]){background:#fffbedc9;border-radius:20px;padding:8px 15px;color:#596346;font-size:12px;letter-spacing:2px;box-shadow:0 2px 8px #3d4c2510}
.picture-opening #book-voice{pointer-events:auto}
.picture-opening .book-reading-bar .narrator{background:#fffbeddb;color:#52613e;box-shadow:0 2px 8px #3d4c2510}
.picture-opening>.footer{height:62px;padding:0 22px;pointer-events:none}
.picture-opening>.footer button,.picture-opening>.footer .page-navigation{pointer-events:auto}
.picture-opening>.footer .catalog{padding:10px 14px;border-radius:25px;background:#fffbeddb;color:#58664a;box-shadow:0 2px 10px #3d4c2518}
.picture-opening>.footer .page-navigation{padding:4px 7px;gap:14px;border-radius:28px;background:#fffbeddb;box-shadow:0 2px 10px #3d4c2518}
.picture-opening>.footer .page-navigation button{width:32px;height:32px;border:0;background:transparent}
.picture-opening>.footer .page-navigation button:last-child{background:#557b55}
.picture-opening>.footer .page-number{font-size:11px;min-width:58px}.picture-opening>.footer .page-number b{font-size:14px}
.picture-opening>.footer .keyboard-hint,.picture-opening>.footer .progress-track{display:none}
@media(max-width:700px){.picture-opening .book-reading-bar{top:10px;left:12px;right:12px}.picture-opening #book-title:not([hidden]){font-size:10px;padding:7px 11px;max-width:65vw}.picture-opening>.footer{height:56px;padding:0 12px}.picture-opening>.footer .catalog{font-size:10px;padding:8px 10px}.picture-opening>.footer .page-navigation{left:auto;right:12px;transform:none;gap:9px}}

/* Long panorama with separately animated, matching picture-book characters. */
.village-world{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none;transition:opacity .12s;background:#e1e8ce}.village-world canvas{display:block;width:100%;height:100%;pointer-events:none}
.book-in-motion .village-world{opacity:0;visibility:hidden}
.entrance-replay,.entrance-skip{position:absolute;right:22px;top:18px;z-index:18;padding:10px 15px;border-radius:24px;background:#fffbedda;color:#556341;font-size:11px;letter-spacing:1px;box-shadow:0 2px 10px #3d4c2518;pointer-events:auto}
.entrance-playing>.footer,.entrance-playing .entrance-replay{opacity:0;pointer-events:none}.entrance-playing .book-reading-bar{visibility:hidden}.entrance-playing #book-mount{pointer-events:none}
.entrance-skip[hidden]{display:none}
@media(max-width:700px){.entrance-replay,.entrance-skip{top:10px;right:12px;font-size:10px;padding:9px 12px}}

/* Every lesson activity belongs to the same full-screen paper spread. */
.book-content{position:absolute;inset:0;z-index:4;padding:28px 5% 78px;display:flex;flex-direction:column;overflow:auto;color:#514d38;font-family:"Kaiti SC","STKaiti","KaiTi","PingFang SC",serif;background:linear-gradient(90deg,transparent 46%,#76613b0b 49.4%,#fffef399 50.3%,transparent 54%),repeating-linear-gradient(0deg,#b6a17a06 0 1px,transparent 1px 4px),#fff9e9;isolation:isolate}
.book-content:before{content:"";position:absolute;inset:10px;border:1px solid #99855733;border-radius:47% 1% 45% 1% / 1% 45% 1% 47%;pointer-events:none;z-index:-1}
.book-content:after{content:"❧";position:absolute;right:22px;bottom:60px;font:80px Georgia,serif;color:#84976255;pointer-events:none;z-index:-1;transform:rotate(-25deg)}
.book-content .slide-heading{padding:0 8px 14px;margin-bottom:12px;border-bottom:1px solid #a18c5944;flex-shrink:0}
.book-content .slide-heading h2{font-family:inherit;font-size:clamp(24px,3.1vw,40px);font-weight:600;color:#526343}
.book-content .eyebrow{letter-spacing:2px;color:#9c875b;font-size:11px}
.book-content .tag{display:none}
.book-content .frame-shell{flex:1;min-height:280px;border:1.5px solid #99865d88;border-radius:12px 5px 14px 6px;background:#fff8e7;box-shadow:0 3px 0 #a99c6d22,inset 0 0 20px #b59a5920;overflow:hidden}
.book-content .frame-shell iframe{display:block;width:100%;height:100%;border:0}
.book-content .button,.book-content .exercise-tabs button{font-family:inherit;border:1px solid #779267;border-radius:8px 13px 7px 12px;background:#6f8c60;box-shadow:0 2px 0 #49604133}
.book-content .button.secondary,.book-content .exercise-tabs button:not(.active){background:#fff9e9;color:#586449}
.book-content .timer-card{background:#f6edcf;border:1px solid #bba76d;border-radius:7px 20px 8px 16px;box-shadow:4px 5px 0 #a18b4f18}
.book-content .timer-digits{color:#6b7f52;font-family:Georgia,serif}
.book-content .activity-area{flex:1;align-content:center}
.book-content .activity-number{color:#b5bf8c;font-family:Georgia,serif;font-style:italic}
.book-content .instruction-lines b{background:#ece7c9;color:#687b50;border:1px solid #b8bd96}
.book-content .instruction-lines div{color:#655f47}
.book-content .compare-grid{flex:1;align-items:center}
.book-content .compare-card{background:#fffdf3;border:1px solid #bca578;border-radius:7px 15px 6px 13px;box-shadow:3px 4px 0 #ab93512a}
.book-content .gallery{flex:1;min-height:200px}
.book-content .gallery-empty{border:1px dashed #a99b72;background:#f6efd8;color:#7c805c}
.book-in-motion .book-content{visibility:hidden;pointer-events:none}
.picture-opening .leaf-activity{background:linear-gradient(90deg,#f8f1dc,#fff9e9);font-family:"Kaiti SC","KaiTi",serif;color:#576647}
.picture-opening .leaf-activity>span{color:#b5a578;font-style:italic}.picture-opening .leaf-activity h2{font-family:inherit}.picture-opening .leaf-activity p{color:#938461}
@media(max-width:700px){.book-content{padding:20px 4% 76px}.book-content .slide-heading{flex-wrap:wrap;gap:10px}.book-content .slide-heading h2{font-size:24px}.book-content .frame-shell{min-height:350px}.book-content .activity-area{overflow:visible;flex-shrink:0}.book-content .slide-heading .eyebrow{font-size:10px}.book-content .compare-grid{min-height:250px}}
@media(max-height:700px) and (min-width:701px){.book-content{padding:18px 4% 70px}.book-content .slide-heading h2{font-size:27px}.book-content .slide-heading{padding-bottom:10px;margin-bottom:10px}}

.ant-character.painted-ant{background-repeat:no-repeat;background-size:300% 200%;background-position:0 0;width:70px;height:70px}
.book-content .ant-character.painted-ant{filter:none}
#contents{font-family:"Kaiti SC","KaiTi","PingFang SC",serif;background:#fff9e9;border:1px solid #b9aa7a}#contents .eyebrow{color:#a08b5d}#slide-list button{background:#f5efd8;border-color:#d2c6a2;border-radius:7px 13px 6px 10px}#slide-list button.active{background:#e4e7c9}

/* The opening story is typeset as part of both turning paper leaves. */
/* Intro narration is printed inside the full-spread illustration. */
.intro-story-leaf{background:#eef1d8!important}
.picture-opening .intro-story-leaf .leaf-art{inset:0;background:#eef1d8}
.picture-opening .intro-story-leaf .leaf-art img{object-fit:fill}
.intro-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;color:#344332;font-family:"Kaiti SC","STKaiti","KaiTi",serif;pointer-events:none}
.leaf-right .intro-copy{left:-100%}
.intro-copy>div{position:absolute;left:4.5%;top:8%;width:46%;padding:12px 16px;background:#fffbeef0;border-radius:8px 17px 9px 13px;box-shadow:0 2px 9px #68734d14}
.intro-copy p{font-size:clamp(15px,1.25vw,22px);font-weight:400;line-height:1.75;letter-spacing:0;margin:0 0 .2em}
.intro-copy p:last-child{margin-bottom:0}
@media(max-width:700px){.intro-copy>div{left:3%;top:9%;width:58%;padding:9px 11px}.intro-copy p{font-size:13px;line-height:1.65}}


/* The cube is manipulated inside the illustrated kingdom, with a transparent WebGL scene. */
.book-content.kingdom-ground{background:linear-gradient(180deg,#fffbedf5 0%,#fffbedce 12%,#fffbed00 29%),var(--kingdom-background) 78% center/cover no-repeat,#d6df9e;color:#394b2b}
.book-content.kingdom-ground:before{border-color:#526b3544}
.book-content.kingdom-ground:after{display:none}
.kingdom-ground .slide-heading{border-bottom-color:#687b4c55;text-shadow:0 1px 4px #fffbea}
.kingdom-ground .frame-shell{background:linear-gradient(135deg,#fffbeded,#f3efdbe6);border:2px solid #899569;box-shadow:inset 0 0 24px #fffdf699,0 6px 24px #35442326}
.kingdom-ground .frame-tools .button{background:#fff9e9e8}



/* Fourth spread: artwork, printed dialogue, and alternating character voices. */
.queen-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;color:#504b39;font-family:"Kaiti SC","STKaiti","KaiTi","PingFang SC",serif}
.leaf-right .queen-copy{left:-100%}
.queen-copy>div{position:absolute;left:4.2%;top:12%;width:34.5%;max-height:64%;overflow:auto;scrollbar-width:thin}
.queen-story-line{font-size:clamp(18px,1.85vw,29px);line-height:1.85;letter-spacing:.035em;margin:0 0 .9em;padding:.08em .18em;border-radius:6px;transition:background .25s,color .25s,box-shadow .25s}
.queen-story-line.queen{color:#7a443c}
.queen-story-line.is-speaking{background:#f4e9bccc;box-shadow:0 0 0 5px #f4e9bc55;color:#635029}
.queen-story-line.queen.is-speaking{background:#f4d5b9c9;box-shadow:0 0 0 5px #f4d5b955;color:#8b3b30}
@media(max-width:700px){.queen-copy>div{left:3%;top:12%;width:37%;max-height:63%}.queen-story-line{font-size:clamp(13px,3vw,18px);line-height:1.65;letter-spacing:0;margin-bottom:.6em}.picture-opening #book-voice .narrator{max-width:58vw}}
.queen-voice-controls{display:flex;gap:9px;align-items:center;pointer-events:auto}
.queen-voice-button{background:#fffbeded;color:#704d36;border:1px solid #b4a172;border-radius:22px;padding:9px 14px;font-family:"Kaiti SC","KaiTi",serif;font-size:13px;box-shadow:0 2px 8px #664f2314;white-space:nowrap}
.queen-voice-button.speaking{background:#eed6b3;border-color:#b88252;color:#864934}
@media(max-width:700px){.queen-voice-controls{gap:5px}.queen-voice-button{font-size:10px;padding:7px 8px}}
.queen-line-trigger{display:block;width:100%;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;pointer-events:auto;cursor:pointer;box-shadow:none}
.queen-line-trigger:hover{color:#913c30}
.queen-line-trigger:focus-visible{outline:2px solid #af8554;outline-offset:4px}

.queen-phrase{white-space:nowrap;pointer-events:none}

/* Turning leaves show the actual third activity spread, rather than a chapter card. */
.third-prewarm{position:fixed;left:-20000px;top:0;overflow:hidden;pointer-events:none;contain:layout paint;z-index:-10}
.activity-leaf-preview{position:absolute;top:0;bottom:0;width:200%;left:0;overflow:hidden;pointer-events:none}
.leaf-right .activity-leaf-preview{left:-100%}
.activity-leaf-preview .book-content{visibility:visible!important;pointer-events:none!important}
.activity-leaf-preview iframe{pointer-events:none!important}
.third-static-scene{position:relative;display:grid;place-items:center}
.third-static-cube{position:relative;width:180px;height:180px;transform:rotateX(-22deg) rotateY(-32deg);transform-style:preserve-3d}
.third-static-cube i{position:absolute;inset:0;display:grid;place-items:center;border:4px solid #aed3e8;font:normal 42px "Kaiti SC","KaiTi",serif;color:#eee7d6;background:#bfa641;backface-visibility:hidden}
.third-static-cube i:first-child{background:#bd6372;transform:rotateX(90deg) translateZ(90px)}
.third-static-cube i:nth-child(2){transform:translateZ(90px)}
.third-static-cube i:nth-child(3){background:#4b6f9b;transform:rotateY(90deg) translateZ(90px)}
.third-static-controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);padding:17px 35px;line-height:2.4;background:#fffbedf0;border:1px solid #b3af88;border-radius:15px;text-align:center;color:#686e4c;white-space:nowrap}

/* Redrawn picture-book scene: story text remains crisp at classroom size. */
.cut-story-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;color:#494c32;font-family:"Kaiti SC","STKaiti","KaiTi",serif}
.leaf-right .cut-story-copy{left:-100%}
.cut-story-copy>div{position:absolute;left:4%;top:5.5%;width:43%}
.cut-story-copy p{font-size:clamp(12px,1.18vw,23px);line-height:1.65;margin:0 0 .4em;letter-spacing:.025em}
.cut-story-copy p span{color:#9d4d3b;font-weight:600;white-space:nowrap}

/* Preserve the source book's four colored story panels. */
.four-panel-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;color:#383c28;font-family:"Kaiti SC","STKaiti","KaiTi",serif}
.leaf-right .four-panel-copy{left:-100%}
.four-copy{position:absolute;font-size:clamp(11px,1.12vw,22px);line-height:1.7;letter-spacing:.015em}
.four-copy p{margin:0 0 .45em}
.four-intro{left:6%;top:8%;width:32%}
.four-side{left:54%;top:5%;width:42%;font-size:clamp(10px,1.04vw,20px);line-height:1.65}
.four-roof{left:34%;top:64%;width:15%;font-size:clamp(10px,1.05vw,20px)}
.four-compare{left:56%;top:91%;width:41%;text-align:center;font-size:clamp(11px,1.12vw,22px)}
.four-face{position:absolute;transform:translate(-50%,-50%);font-size:clamp(12px,1.12vw,22px);color:#553647;font-weight:500}

.clever-story-copy,.inspection-story-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;color:#3e412c;font-family:"Kaiti SC","STKaiti","KaiTi",serif}
.leaf-right .clever-story-copy,.leaf-right .inspection-story-copy{left:-100%}
.clever-narrative{position:absolute;left:5%;top:6%;width:41%;font-size:clamp(11px,1.16vw,22px);line-height:1.8}
.clever-narrative p{margin:0 0 .5em}
.clever-bubble{position:absolute;top:40%;width:18%;padding:.6em .35em;text-align:center;border:1.4px solid #6c6346;border-radius:48% 45% 42% 46%;background:#fffcee;font-size:clamp(10px,1vw,19px);line-height:1.5}

.clever-first{left:7%}.clever-second{left:28%;top:43%}
.clever-result{position:absolute;left:58%;top:79%;width:37%;font-size:clamp(11px,1.14vw,22px);line-height:1.8}
.inspection-story-copy>div{position:absolute;left:32%;top:6%;width:29%;font-size:clamp(11px,1.16vw,22px);line-height:1.85}
.inspection-story-copy p{margin:0 0 .55em}

.clever-rustle{left:44%;top:47%;width:4.5%;font-size:clamp(10px,.95vw,18px)}
.clever-celebrate{left:70%;top:10%;width:8%;font-size:clamp(10px,1vw,19px)}



.book-content.compare{background:linear-gradient(90deg,#fff7e6ef,#fcf8e9e8),var(--kingdom-background) center/cover}
.book-content.compare .slide-heading{margin-bottom:18px}
.method-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,30px);align-items:stretch}
.method-choice{display:flex;flex-direction:column;padding:8px 8px 0;min-width:0;border:2px solid #b4ab85;border-radius:18px 14px 17px 12px;background:#fffbed;box-shadow:0 5px 0 #a7956430;overflow:hidden;transition:border-color .18s,box-shadow .18s,transform .18s}
.method-choice:hover{transform:translateY(-2px)}
.method-choice.is-chosen{border-color:#a56d2b;box-shadow:0 0 0 3px #d9b36e66,0 5px 0 #a7956430}
.method-choice.is-connected{border-color:#487353;box-shadow:0 0 0 3px #8dac7566,0 5px 0 #a7956430}
.choice-picture{display:block;position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f8edce;border-radius:10px}
.method-crop{display:block;position:relative;width:100%;height:100%;overflow:hidden}
.choice-picture img{position:absolute;max-width:none;pointer-events:none}
.clever-method .method-crop{width:auto;aspect-ratio:1;margin:auto}
.clever-method img{width:200%;height:150%;right:0;top:-7%;object-fit:fill}
.mischief-method img{width:182%;height:auto;left:0;bottom:0}
.careful-method img{width:200%;height:200%;left:-100%;top:-100%;object-fit:fill}
.method-name{display:flex;align-items:center;justify-content:center;gap:10px;padding:17px 4px;font-size:clamp(17px,1.7vw,27px);font-weight:600;white-space:nowrap}
.method-name i{display:grid;place-items:center;border:1px solid #b7aa7e;width:28px;height:28px;border-radius:50%;font-style:normal;font-size:15px;background:#f4e9c9}
.is-chosen .method-name i{background:#a56d2b;color:#fffbed;border-color:#a56d2b}
.method-discussion{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:17px 22px;background:#f3ead3;border-radius:15px;border:1px solid #c5b58e}
.method-discussion p{font-size:clamp(17px,1.8vw,27px);margin:0}.method-discussion button{flex-shrink:0}
.method-feedback{margin-top:16px;text-align:center;padding:16px;background:#e9edcf;border:1px solid #a6b084;border-radius:15px}
.method-feedback[hidden]{display:none}
.method-feedback strong{display:block;font-size:clamp(25px,3vw,42px);letter-spacing:.28em;color:#416444}
.method-feedback p{font-size:clamp(15px,1.45vw,23px);line-height:1.65;margin:8px 0}
.method-feedback small{font-size:clamp(12px,1.1vw,17px);color:#73765b}
@media(max-width:700px){.book-content.compare{padding-left:3%;padding-right:3%}.method-choices{gap:8px}.method-choice{padding:4px 4px 0}.method-name{font-size:14px;gap:4px;padding:12px 0}.method-name i{width:19px;height:19px;font-size:11px}.method-discussion{padding:12px;flex-wrap:wrap;justify-content:center;margin-top:16px}.method-discussion p{font-size:18px}}

.preview-frame-space{width:100%;height:100%}
.activity-leaf-preview .book-content{overflow:hidden}

/* The ant kingdom's paper-craft workshop, shared by the later lesson pages. */
.book-content.workshop-page{background:var(--workshop-art) center/100% 100% no-repeat,#fcf4df;color:#43533a;padding:30px 5% 78px}
.book-content.workshop-page:before{inset:11px;border-color:#78895733;border-radius:12px 18px 15px 11px}
.book-content.workshop-page:after{display:none}
.workshop-page .slide-heading{border:0;margin:0 0 12px;align-items:center;padding-bottom:0;position:relative;z-index:1}
.workshop-page .slide-heading .eyebrow{color:#8c794b;font-size:12px;letter-spacing:.18em}
.workshop-page .slide-heading h2{font-size:clamp(25px,2.7vw,43px);letter-spacing:.06em;margin-top:8px;text-shadow:0 2px 0 #fffbed}
.workshop-badge{padding:9px 23px;background:#7c975c;color:#fffbe5;transform:rotate(3deg);border:1px solid #5a7944;border-radius:70% 8% 65% 8% / 18% 70% 18% 70%;box-shadow:2px 3px 0 #4f65352b;font-size:18px;white-space:nowrap}
.workshop-stage{position:relative;flex:1;min-height:490px}
.mission-paper{position:absolute;left:0;top:3%;width:44%;bottom:17%;padding:clamp(20px,2.3vw,40px);background:repeating-linear-gradient(0deg,#af936d06 0 1px,transparent 1px 4px),linear-gradient(125deg,#fffdf1,#fbefd4);border:1.5px solid #b7a577;border-radius:7px 22px 9px 18px;box-shadow:4px 7px 0 #a8966133,0 12px 28px #5d60351c;transform:rotate(-1deg);display:flex;flex-direction:column}
.mission-paper:before,.mission-paper:after{content:"";position:absolute;top:-9px;width:61px;height:21px;background:#d1be7c99;border-left:1px dashed #a89861;border-right:1px dashed #a89861;transform:rotate(-14deg)}
.mission-paper:before{left:25px}.mission-paper:after{right:25px;transform:rotate(16deg)}
.mission-tab{display:inline-block;align-self:flex-start;padding:6px 13px;background:#e6ebc5;border:1px solid #b3bc84;border-radius:3px 10px 4px 11px;color:#697444;letter-spacing:.1em;font-size:clamp(12px,1.1vw,18px)}
.mission-paper h3{font-size:clamp(27px,2.8vw,45px);line-height:1.48;margin:22px 0 18px;font-weight:600;color:#42543c}
.mission-paper h3 em{font-style:normal;color:#a7663c;text-decoration:underline;text-decoration-color:#dfb878;text-underline-offset:8px;text-decoration-thickness:3px}
.mission-materials{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-bottom:17px;border-bottom:1px dashed #c0b28d;font-size:clamp(12px,1.1vw,18px)}
.mission-materials>span{color:#9b8b62;margin-right:3px}.mission-materials b{font-weight:400;border:1px solid #d6bf8b;background:#fff8df;border-radius:6px;padding:4px 11px;transform:rotate(-2deg)}
.mission-materials b:nth-child(3){transform:rotate(2deg);background:#e9edd0}
.mission-steps{display:grid;gap:14px;margin-top:22px}
.mission-step{display:flex;align-items:center;gap:13px;text-align:left;padding:5px 0;background:none;font-size:clamp(15px,1.55vw,24px);line-height:1.6;color:#5f6143}
.mission-step i{display:grid;place-items:center;flex-shrink:0;width:34px;height:31px;border:1px solid #a7b276;border-radius:75% 12% 70% 12%;background:#e8edcd;color:#74844a;font:18px Georgia,serif}
.mission-step.step-done i{background:#789551;color:white;border-color:#638044}.mission-step.step-done span{color:#65834f}
.mission-paper-bottom{margin-top:auto;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.mission-progress{color:#9a8c64;font-size:clamp(11px,1vw,16px);white-space:nowrap}
.mission-paper-bottom .narrator{font-size:11px;padding:5px 10px;gap:5px;background:#f2e9cc;border-color:#c9b993}
.mission-paper-bottom .narrator .ant-character{width:27px;height:28px}
.mission-paper-bottom .button{font-size:13px;min-height:35px;padding:7px 12px}
.mission-guide{position:absolute;left:56%;top:2%;max-width:39%;font-size:clamp(16px,1.65vw,26px);line-height:1.7;background:#fffdf0f5;border:1.5px solid #9b9d6b;padding:15px 33px;text-align:center;box-shadow:0 4px 0 #8c995a20}

.workshop-page .workshop-clock{position:absolute;right:0;bottom:1%;width:44%;padding:14px 23px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:repeating-linear-gradient(0deg,#a6966608 0 1px,transparent 1px 4px),#fff9e8ed;border:1.5px solid #b3a478;border-radius:19px 8px 20px 11px;box-shadow:3px 5px 0 #ad9c622e}
.workshop-clock .clock-face{text-align:center;flex:1}.workshop-clock .timer-label{display:block;font-size:12px;letter-spacing:.16em;color:#8e8d61;margin:0}
.workshop-clock .timer-digits{font-size:clamp(33px,3.8vw,58px);line-height:1.15;letter-spacing:.04em;margin-top:4px;font-variant-numeric:tabular-nums}
.clock-actions{display:grid;gap:8px}.clock-actions .button{min-height:35px;font-size:13px;padding:8px 17px;border-radius:8px 12px 7px 11px}
.workshop-page.gallery{background-image:linear-gradient(#fff9e740,#fff9e760),var(--workshop-art)}
.workshop-page.gallery .gallery-actions{background:#fff9e8d9;padding:8px 12px;border-radius:12px;box-shadow:0 3px 0 #ad9d6920}
.workshop-page .gallery{padding:22px 1% 16px;align-content:start;gap:22px}
.workshop-empty{grid-column:1/-1;background:#fff8e5c9;border:1px solid #b6a87b;border-radius:15px 26px 12px 23px;padding:30px 3% 25px;box-shadow:3px 6px 0 #aa975e29;margin-top:15px}
.gallery-invite{font-size:clamp(19px,2vw,30px);text-align:center;line-height:1.6;color:#586846}
.empty-frames{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;padding:40px 15px 22px}
.exhibit-slot{position:relative;display:flex;flex-direction:column;align-items:center;padding:12px 12px 18px;background:#fffdf0;border:1px solid #b9aa82;box-shadow:3px 7px 10px #615a382e;transform:rotate(-3deg);font-size:clamp(15px,1.5vw,23px);color:#6d6d4a}
.exhibit-slot:nth-child(2){transform:rotate(2deg)}.exhibit-slot:nth-child(3){transform:rotate(-1deg)}
.paper-clip{position:absolute;top:-19px;left:44%;width:28px;height:40px;background:linear-gradient(90deg,#ba8b54,#ebc58f 45%,#b1814c);border:1px solid #9f784c;border-radius:3px;transform:rotate(4deg);z-index:2;box-shadow:2px 2px 2px #55442625}
.paper-clip:after{content:"";position:absolute;left:12px;top:2px;bottom:2px;border-left:1px solid #997144}
.exhibit-sketch{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1.3;background:repeating-linear-gradient(0deg,#bdc7a91c 0 1px,transparent 1px 15px),repeating-linear-gradient(90deg,#bdc7a91c 0 1px,#f2efd9 1px 15px);margin-bottom:15px}
.exhibit-sketch>b{position:absolute;bottom:7px;right:12px;font-size:32px;line-height:1;font-weight:400;color:#899768}
.net-stamp{display:grid;grid-template-columns:repeat(4,25px);grid-template-rows:repeat(3,25px);transform:rotate(-12deg);opacity:.48}
.net-stamp i{border:1px solid #a07852;background:#e9b777}.net-stamp i:nth-child(1){grid-area:2/1}.net-stamp i:nth-child(2){grid-area:2/2}.net-stamp i:nth-child(3){grid-area:2/3}.net-stamp i:nth-child(4){grid-area:2/4}.net-stamp i:nth-child(5){grid-area:1/2}.net-stamp i:nth-child(6){grid-area:3/2}
.sketch-1 .net-stamp{transform:rotate(9deg)}.sketch-1 .net-stamp i{background:#a9c4c9}.sketch-2 .net-stamp i{background:#c6d49c}
.workshop-empty>p{text-align:center;font-size:clamp(13px,1.3vw,20px);color:#8e815a;margin:9px 0}
.workshop-page .work{border-radius:4px;padding:12px;background:#fffdf0;border:1px solid #bca97d;box-shadow:3px 6px 0 #9883572b;transform:rotate(-1deg)}
.workshop-page .work:nth-child(even){transform:rotate(1deg)}.workshop-page .work figcaption{font-family:inherit;color:#77724e}
.workshop-page.interactive,.workshop-page.exercise{background-image:linear-gradient(#fff8e741,#fff8e75e),var(--workshop-art)}
.workshop-page .frame-shell{background:linear-gradient(135deg,#fffceeef,#f5ecd8ed);border:2px solid #a8996d;border-radius:18px 9px 16px 11px;box-shadow:5px 7px 0 #a28c542d,inset 0 0 0 5px #f7eccd88;overflow:hidden;padding:6px}
.workshop-page .exercise-tabs,.workshop-page .frame-tools{background:#fff9e8ed;padding:8px;border:1px solid #c7b892;border-radius:12px;box-shadow:0 3px 0 #a7955e22}
@media(max-height:760px) and (min-width:701px){.book-content.workshop-page{padding-top:18px}.workshop-stage{min-height:410px}.mission-paper{top:2%;bottom:8%;padding:20px}.mission-paper h3{font-size:30px;margin:15px 0 12px}.mission-steps{gap:8px;margin-top:14px}.mission-step{font-size:16px}.mission-materials{padding-bottom:10px}.mission-paper-bottom{padding-top:14px}.mission-guide{font-size:18px;padding:10px 22px}.workshop-page .workshop-clock{bottom:0;padding:10px 16px}.workshop-clock .timer-digits{font-size:38px}.empty-frames{padding-top:30px}.workshop-empty{padding-top:20px}}
@media(max-width:700px){.book-content.workshop-page{padding:22px 5% 80px}.workshop-page .slide-heading h2{font-size:25px}.workshop-badge{font-size:13px;padding:6px 12px}.workshop-stage{min-height:760px}.mission-paper{width:89%;top:14%;bottom:25%;left:2%}.mission-guide{left:15%;top:1%;max-width:75%;font-size:18px;padding:9px 20px}.mission-paper h3{font-size:30px;margin:18px 0 14px}.mission-step{font-size:18px}.workshop-page .workshop-clock{width:89%;right:7%;bottom:3%}.mission-materials{font-size:14px}.empty-frames{gap:12px;padding-left:0;padding-right:0}.exhibit-slot{padding:7px 6px 13px;font-size:13px}.net-stamp{grid-template-columns:repeat(4,13px);grid-template-rows:repeat(3,13px)}.paper-clip{width:17px;height:28px;top:-13px}.gallery-invite{font-size:19px}.workshop-empty{padding:20px 4%}.workshop-page.gallery .slide-heading{flex-wrap:wrap}.workshop-page.gallery .gallery-actions{padding:5px}}
.workshop-page .slide-heading>div:first-child{background:linear-gradient(90deg,#fff9e9ef,#fff9e9bd 82%,#fff9e900);padding:7px 18px 10px 12px;border-radius:15px 8px 18px 7px}
@media(max-height:650px) and (min-width:701px){.workshop-page .slide-heading h2{font-size:26px}.workshop-stage{min-height:385px}.mission-paper{padding:16px}.mission-tab{font-size:11px;padding:4px 10px}.mission-paper h3{font-size:25px;line-height:1.35;margin:12px 0 10px}.mission-materials{font-size:12px;padding-bottom:8px}.mission-steps{margin-top:10px;gap:6px}.mission-step{font-size:14px;line-height:1.5;padding:3px 0}.mission-step i{width:27px;height:25px;font-size:14px}.mission-paper-bottom{padding-top:12px}.mission-guide{font-size:16px}.workshop-clock .timer-digits{font-size:32px}.workshop-page .workshop-clock{padding:8px 12px}.clock-actions .button{min-height:29px;padding:5px 12px;font-size:12px}}

/* The complete activity requirements take priority over scenery and timer. */
.mission-paper{background:repeating-linear-gradient(0deg,#a68e6205 0 1px,transparent 1px 4px),#fff9e9;color:#303d2d}
.mission-step{color:#34432e}
.workshop-page .slide-heading>div:first-child{background:#fff9e9f5}
.mission-wide .mission-paper{width:72%;top:3%;bottom:7%;transform:rotate(-.35deg);padding:clamp(24px,2.8vw,48px)}
.mission-wide .mission-tab,.mission-wide .mission-materials{display:none}
.mission-wide .mission-paper h3{font-size:clamp(29px,2.6vw,42px);line-height:1.3;margin:0 0 18px;padding-bottom:17px;border-bottom:1px dashed #c2ad80}
.mission-wide .mission-steps{gap:22px;margin-top:8px}
.mission-wide .mission-step{align-items:flex-start;font-size:clamp(22px,2.05vw,34px);line-height:1.8;gap:15px;padding:3px 0}
.mission-wide .mission-step i{margin-top:.3em}
.mission-verb{font-weight:600;color:#934d32}
.mission-reminder{margin:25px 0 0;padding:16px 18px;font-size:clamp(19px,1.7vw,28px);line-height:1.8;color:#4f543a;background:#f3e8c7;border-left:4px solid #a68c4e;border-radius:4px 11px 8px 4px}
.mission-reminder b{color:#805a2e;font-weight:600}
.mission-wide .mission-paper-bottom{padding-top:20px}
.mission-wide .mission-guide{left:76%;top:8%;max-width:24%;font-size:clamp(15px,1.4vw,23px);padding:14px 20px}
.workshop-page .mission-wide .workshop-clock{width:24%;right:0;bottom:7%;flex-direction:column;gap:12px;padding:20px 15px}
.mission-wide .workshop-clock .timer-digits{font-size:clamp(32px,3.5vw,54px)}
.mission-wide .clock-actions{width:100%;gap:9px}
@media(max-height:760px) and (min-width:701px){.mission-wide .mission-paper{padding:24px;top:2%;bottom:2%}.mission-wide .mission-paper h3{font-size:29px;margin-bottom:10px;padding-bottom:10px}.mission-wide .mission-steps{gap:11px}.mission-wide .mission-step{font-size:22px;line-height:1.65}.mission-reminder{font-size:19px;line-height:1.65;margin-top:15px;padding:12px 14px}.mission-wide .mission-paper-bottom{padding-top:12px}}
@media(max-height:650px) and (min-width:701px){.mission-wide .mission-paper{padding:18px}.mission-wide .mission-paper h3{font-size:26px}.mission-wide .mission-steps{gap:7px}.mission-wide .mission-step{font-size:20px;line-height:1.55}.mission-reminder{font-size:18px;padding:9px 12px;margin-top:10px}.mission-wide .mission-paper-bottom{padding-top:9px}}
@media(max-width:700px){.mission-wide .mission-paper{width:96%;left:0;top:8%;bottom:24%;padding:22px}.mission-wide .mission-paper h3{font-size:28px}.mission-wide .mission-step{font-size:20px;line-height:1.65}.mission-wide .mission-steps{gap:15px}.mission-reminder{font-size:18px;padding:12px;margin-top:18px}.mission-wide .mission-guide{display:none}.workshop-page .mission-wide .workshop-clock{width:96%;right:4%;bottom:1%;flex-direction:row;padding:12px}.mission-wide .clock-actions{width:auto}}
.mission-wide .mission-step.step-done span{color:#34432e}
.book-content.workshop-page.design-workshop{background:var(--design-art) center/100% 100% no-repeat,#fff9e9}
.design-workshop .mission-wide .mission-paper{background:repeating-linear-gradient(0deg,#a68e6204 0 1px,transparent 1px 4px),#fff9e9}
.design-workshop .mission-wide .mission-steps{gap:29px}
.design-workshop .mission-wide .mission-step{line-height:1.85}
.design-workshop .mission-wide .mission-paper h3{margin-bottom:23px}
@media(max-height:760px) and (min-width:701px){.design-workshop .mission-wide .mission-steps{gap:15px}.design-workshop .mission-wide .mission-step{line-height:1.65}.design-workshop .mission-wide .mission-paper h3{margin-bottom:11px}}
@media(max-height:650px) and (min-width:701px){.design-workshop .mission-wide .mission-steps{gap:11px}.design-workshop .mission-wide .mission-step{line-height:1.55}}
.design-workshop .mission-wide .mission-step{font-size:clamp(24px,2.2vw,35px);line-height:1.75}
@media(max-height:760px) and (min-width:701px){.design-workshop .mission-wide .mission-step{font-size:26px;line-height:1.65}.design-workshop .mission-wide .mission-steps{gap:18px}}
@media(max-height:650px) and (min-width:701px){.design-workshop .mission-wide .mission-step{font-size:24px;line-height:1.55}.design-workshop .mission-wide .mission-steps{gap:12px}}

.different-nets-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;color:#303f32;font-family:"Kaiti SC","STKaiti","KaiTi",serif}
.leaf-right .different-nets-copy{left:-100%}
.different-nets-copy>div{position:absolute;padding:10px 13px;background:#f8fbf1f2;border-radius:10px 17px 8px 15px;box-shadow:0 2px 8px #9baea012;font-size:clamp(15px,1.25vw,22px);line-height:1.6}
.nets-intro{left:4.5%;top:8%;width:43%}.nets-caption{left:53%;top:73.5%;width:43%}
.different-nets-copy p{margin:0 0 .25em}.different-nets-copy p:last-child{margin-bottom:0}
@media(max-width:700px){.different-nets-copy>div{font-size:12px;line-height:1.65;padding:8px}.nets-intro{left:3%;width:45%;top:8%}.nets-caption{left:52%;width:45%;top:73%}}

.day-night-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;font-family:"Kaiti SC","STKaiti","KaiTi",serif;color:#4b422d}
.leaf-right .day-night-copy{left:-100%}
.day-night-copy>div{position:absolute;width:42%;padding:9px 12px;font-size:clamp(14px,1.2vw,22px);line-height:1.6;border-radius:8px 15px 7px 12px}
.day-night-copy p{margin:0 0 .2em}.day-night-copy p:last-child{margin-bottom:0}
.day-night-copy .sun-quote,.day-night-copy .sun-story{left:5%;background:#fff4c8f2}
.sun-quote{top:7%}.sun-story{top:46.5%}
.day-night-copy .night-quote,.day-night-copy .night-story{left:53.5%;color:#fff5dd;background:#432e44ed}
.night-quote{top:7%}.night-story{top:48%}
@media(max-width:700px){.day-night-copy>div{font-size:12px;padding:7px;line-height:1.6;width:44%}.day-night-copy .sun-quote,.day-night-copy .sun-story{left:3%}.day-night-copy .night-quote,.day-night-copy .night-story{left:52%}}
.day-night-copy .sun-quote{width:28%}
@media(max-width:700px){.day-night-copy .sun-quote{width:32%}}

/* Closing picture-book spreads: full art and crisp, separate narration. */
.pyramid-copy,.finale-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;font-family:"Kaiti SC","STKaiti","KaiTi",serif;color:#344332}
.leaf-right .pyramid-copy,.leaf-right .finale-copy{left:-100%}
.pyramid-narrative,.finale-narrative{position:absolute;left:4.5%;top:7%;width:43%;padding:12px 15px;background:#fffbeeef;border-radius:8px 17px 9px 13px;font-size:clamp(15px,1.25vw,22px);line-height:1.7;box-shadow:0 2px 9px #68734d14}
.pyramid-copy p,.finale-copy p{margin:0 0 .25em}.pyramid-copy p:last-child,.finale-copy p:last-child{margin-bottom:0}
.pyramid-label{position:absolute;font-size:clamp(16px,1.45vw,24px);padding:3px 13px;background:#fffbe9ee;border:1px solid #b4b88c;border-radius:45% 40% 42% 38%;color:#3b4933}
.pentagonal-label{left:32%;top:90%}.square-label{left:76%;top:52%}.triangular-label{left:77%;top:92%}
.finale-narrative{background:#fff5d9f2;width:44%;top:6.5%;line-height:1.5;padding:10px 15px}
@media(max-width:700px){.pyramid-narrative,.finale-narrative{font-size:12px;line-height:1.65;padding:8px;left:3%;width:46%}.pyramid-label{font-size:13px;padding:2px 8px}}

/*! Bootstrap v5.3.8 component excerpts: Popover and Close button.
 * Copyright 2011-2025 The Bootstrap Authors. MIT License.
 * Source: https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.css
 * Geometry and close icon retained from upstream; lesson theme uses CSS variables.
 */
.btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: var(--bs-progress-height);
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #0d6efd;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #0d6efd;
  --bs-list-group-active-border-color: #0d6efd;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > .list-group-item::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}
.list-group-item-action:not(.active):hover, .list-group-item-action:not(.active):focus {
  z-index: 1;
  color: var(--bs-list-group-action-hover-color);
  text-decoration: none;
  background-color: var(--bs-list-group-action-hover-bg);
}
.list-group-item-action:not(.active):active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 var(--bs-list-group-border-width);
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  --bs-list-group-color: var(--bs-primary-text-emphasis);
  --bs-list-group-bg: var(--bs-primary-bg-subtle);
  --bs-list-group-border-color: var(--bs-primary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
  --bs-list-group-active-color: var(--bs-primary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
  --bs-list-group-color: var(--bs-secondary-text-emphasis);
  --bs-list-group-bg: var(--bs-secondary-bg-subtle);
  --bs-list-group-border-color: var(--bs-secondary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
  --bs-list-group-color: var(--bs-success-text-emphasis);
  --bs-list-group-bg: var(--bs-success-bg-subtle);
  --bs-list-group-border-color: var(--bs-success-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
  --bs-list-group-active-color: var(--bs-success-bg-subtle);
  --bs-list-group-active-bg: var(--bs-success-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
  --bs-list-group-color: var(--bs-info-text-emphasis);
  --bs-list-group-bg: var(--bs-info-bg-subtle);
  --bs-list-group-border-color: var(--bs-info-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
  --bs-list-group-active-color: var(--bs-info-bg-subtle);
  --bs-list-group-active-bg: var(--bs-info-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
  --bs-list-group-color: var(--bs-warning-text-emphasis);
  --bs-list-group-bg: var(--bs-warning-bg-subtle);
  --bs-list-group-border-color: var(--bs-warning-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
  --bs-list-group-active-color: var(--bs-warning-bg-subtle);
  --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
  --bs-list-group-color: var(--bs-danger-text-emphasis);
  --bs-list-group-bg: var(--bs-danger-bg-subtle);
  --bs-list-group-border-color: var(--bs-danger-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
  --bs-list-group-active-color: var(--bs-danger-bg-subtle);
  --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
  --bs-list-group-color: var(--bs-light-text-emphasis);
  --bs-list-group-bg: var(--bs-light-bg-subtle);
  --bs-list-group-border-color: var(--bs-light-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
  --bs-list-group-active-color: var(--bs-light-bg-subtle);
  --bs-list-group-active-bg: var(--bs-light-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
  --bs-list-group-color: var(--bs-dark-text-emphasis);
  --bs-list-group-bg: var(--bs-dark-bg-subtle);
  --bs-list-group-border-color: var(--bs-dark-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
  --bs-list-group-active-color: var(--bs-dark-bg-subtle);
  --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

.btn-close {
  --bs-btn-close-color: #000;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-btn-close-focus-opacity: 1;
  --bs-btn-close-disabled-opacity: 0.25;
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: var(--bs-btn-close-color);
  background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
  filter: var(--bs-btn-close-filter);
  border: 0;
  border-radius: 0.375rem;
  opacity: var(--bs-btn-close-opacity);
}
.btn-close:hover {
  color: var(--bs-btn-close-color);
  text-decoration: none;
  opacity: var(--bs-btn-close-hover-opacity);
}
.btn-close:focus {
  outline: 0;
  box-shadow: var(--bs-btn-close-focus-shadow);
  opacity: var(--bs-btn-close-focus-opacity);
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  opacity: var(--bs-btn-close-disabled-opacity);
}

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
  --bs-popover-box-shadow: var(--bs-box-shadow);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 1rem;
  --bs-popover-header-color: inherit;
  --bs-popover-header-bg: var(--bs-secondary-bg);
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: var(--bs-body-color);
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: var(--bs-popover-border-width);
  border-top-color: var(--bs-popover-bg);
}

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: var(--bs-popover-border-width);
  border-bottom-color: var(--bs-popover-bg);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: var(--bs-popover-arrow-width);
  margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
  content: "";
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
  color: var(--bs-popover-body-color);
}


/* Theme and layout adapters; outlines/arrows/icons come from Bootstrap above. */
.popover{--bs-popover-zindex:2;--bs-popover-bg:#fffcef;--bs-popover-border-width:1px;--bs-popover-border-color:#a7aa8a;--bs-popover-border-radius:.65rem;--bs-popover-body-color:#36472f;--bs-popover-max-width:none;font-family:inherit}
.popover>.popover-arrow{position:absolute;left:calc(50% - .5rem)}
.clever-bubble.popover{--bs-popover-font-size:clamp(10px,1vw,19px);padding:0;text-align:center;line-height:1.5;background:var(--bs-popover-bg);border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}
.clever-bubble .popover-body{padding:.6em .5em}
.clever-rustle.popover{--bs-popover-font-size:clamp(10px,.95vw,18px)}
.mission-guide.popover{--bs-popover-font-size:clamp(16px,1.65vw,26px);max-width:39%;padding:0;text-align:center;line-height:1.7;background:var(--bs-popover-bg);border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius);box-shadow:0 3px 10px #4e63351a;transform:none}
.mission-guide .popover-body{padding:15px 23px}
.mission-wide .mission-guide.popover{max-width:24%;--bs-popover-font-size:clamp(15px,1.4vw,23px)}
button.btn-close{box-sizing:content-box;width:16px;height:16px;padding:14px;font-size:16px;min-width:0;min-height:0;flex-shrink:0;background:transparent var(--bs-btn-close-bg) center/16px 16px no-repeat;border:0;border-radius:.375rem;color:var(--bs-btn-close-color)}
button.btn-close:hover{background-color:#e9eddd}
button.btn-close:focus-visible{outline:3px solid #4e7860;outline-offset:2px}
.work button.btn-close{padding:10px;right:7px;top:7px;background-color:#fffdf8f2}
@media(max-height:760px) and (min-width:701px){.mission-guide.popover{--bs-popover-font-size:18px}.mission-guide .popover-body{padding:10px 20px}}
@media(max-width:700px){.mission-guide.popover{max-width:75%;--bs-popover-font-size:18px}.mission-guide .popover-body{padding:9px 20px}.mission-wide .mission-guide.popover{display:none}}
.dialog-header button.close.btn-close{position:static;margin:0}
.clever-rustle.popover{left:45%;top:37%}

.refold-copy{position:absolute;inset:0 auto auto 0;width:200%;height:100%;pointer-events:none;font-family:"Kaiti SC","STKaiti","KaiTi",serif;color:#344332}
.leaf-right .refold-copy{left:-100%}
.refold-intro,.refold-result{position:absolute;padding:10px 13px;border-radius:8px 17px 9px 13px;font-size:clamp(13px,1.1vw,19px);line-height:1.65}
.refold-intro{left:4.5%;top:7%;width:43%;background:#f5fae9ed}
.refold-result{left:54%;top:75%;width:43%;background:#fff7d8ee}
.refold-copy p{margin:0 0 .12em}.refold-copy p:last-child{margin-bottom:0}
.refold-bubble.popover{position:absolute;left:73%;top:15%;width:22%;padding:0;--bs-popover-font-size:clamp(12px,1.15vw,20px);text-align:center}
.refold-bubble .popover-body{padding:.55em .7em}
.refold-bottom-label{position:absolute;left:20%;top:66%;font-size:clamp(15px,1.5vw,23px);color:#6a4026}
@media(max-width:700px){.refold-intro,.refold-result{font-size:11px;line-height:1.6;padding:7px}.refold-intro{left:3%;width:46%}.refold-result{left:52%;width:45%;top:74%}.refold-bubble.popover{left:69%;width:28%;--bs-popover-font-size:11px}}
