/* EIKO's new illustrated expressions, cut-paper introduction and weather scenes. */
.eiko-values-panel{position:relative;isolation:isolate;width:min(100%,510px);margin:26px 0 9px;filter:drop-shadow(7px 9px 0 #111)}
.eiko-values-panel::before{content:"";position:absolute;z-index:-1;inset:45px -10px 7px 16px;background:#fff9;clip-path:polygon(0 7%,96% 0,100% 19%,96% 99%,3% 95%);transform:rotate(2deg)}
.eiko-intro-dialogue{position:relative;z-index:4;display:flex;align-items:center;gap:8px;width:max-content;max-width:92%;margin:0 0 -22px 32%;padding:6px 13px 9px;background:#111;color:#fff;border:solid #fff;border-width:5px 7px 7px 4px;box-shadow:5px 6px 0 #e9002a,10px 11px 0 #111;transform:rotate(-3deg);font:1000 clamp(13px,1.5vw,18px)/1.1 Impact,"Arial Black",sans-serif;letter-spacing:.02em;white-space:nowrap}
.eiko-intro-dialogue::after{content:"";position:absolute;z-index:-1;left:11%;bottom:-19px;width:55px;height:26px;background:#111;clip-path:polygon(0 0,100% 0,22% 100%);filter:drop-shadow(3px 3px 0 #fff)}
.eiko-intro-dialogue strong{display:inline-block;padding:3px 6px 5px;background:#fff;color:#e9002a;border:2px solid #111;box-shadow:3px 3px 0 #ef83b7,6px 6px 0 #fff;font:italic 1000 clamp(25px,3vw,40px)/.92 Impact,"Arial Black",sans-serif;letter-spacing:-.025em;transform:rotate(5deg);-webkit-text-stroke:.5px #111}
.eiko-intro-dialogue i{font-style:normal;color:#59d8d2;font-size:23px;text-shadow:2px 2px #e9002a;transform:rotate(14deg)}
.eiko-values-art{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;background:#17171c;border:solid #fff;border-width:6px 9px 8px 5px;box-shadow:7px 8px 0 #111,13px 14px 0 #fff;clip-path:polygon(0 5%,13% 0,94% 0,100% 12%,98% 96%,90% 100%,8% 100%,0 95%);transform:rotate(-1deg)}
.eiko-values-art::before{content:"";position:absolute;z-index:1;inset:0;background:radial-gradient(#fff6 1px,transparent 1.4px) 0 0/18px 18px,linear-gradient(142deg,transparent 0 72%,#e9002a55 72% 76%,transparent 76%);pointer-events:none;mix-blend-mode:screen}
.eiko-values-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.05)}
.eiko-values-lettering{position:absolute;z-index:2;left:45%;top:46%;display:grid;justify-items:center;gap:2px;width:48%;transform:rotate(-1deg);color:#111;text-align:center;pointer-events:none}
.eiko-values-lettering small{padding:2px 5px;background:#111;color:#fff;border:2px solid #fff;box-shadow:2px 2px 0 #e9002a;font:1000 clamp(8px,1vw,12px)/1 Impact,sans-serif;letter-spacing:.09em;transform:rotate(-5deg)}
.eiko-values-lettering b{display:inline-block;padding:0 4px 2px;background:#fff9;color:#111;font:italic 1000 clamp(18px,2.45vw,31px)/.9 Impact,"Arial Black",sans-serif;letter-spacing:-.035em;text-shadow:2px 2px 0 #fff,4px 4px 0 #e9002a;-webkit-text-stroke:.35px #111;white-space:nowrap}
.eiko-values-lettering b:nth-of-type(1){transform:rotate(-5deg) translateX(-5px)}
.eiko-values-lettering b:nth-of-type(2){transform:rotate(4deg) translateX(3px)}
.eiko-values-lettering b:nth-of-type(3){transform:rotate(-2deg) translateX(-2px)}
.eiko-values-spark{position:absolute;z-index:3;right:3%;top:30%;color:#59d8d2;font-size:24px;text-shadow:3px 3px #111,5px 5px #fff;pointer-events:none;animation:eiko-spark 3.6s ease-in-out infinite alternate}
@keyframes eiko-spark{to{transform:translate(3px,-7px) rotate(20deg) scale(1.18)}}

/* A single week selector sits directly below the class report hero. */
.chapter-week-switch{position:relative;z-index:5;display:flex;align-items:center;gap:clamp(12px,2.5vw,32px);width:min(1260px,calc(100% - 34px));min-height:83px;margin:18px auto 29px;padding:13px clamp(13px,2.5vw,27px);background:#111;color:#fff;border:solid #fff;border-width:5px 7px 7px 4px;box-shadow:7px 8px 0 #e9002a,14px 15px 0 #111;clip-path:polygon(0 6%,96% 0,100% 18%,99% 91%,94% 100%,2% 95%);transform:rotate(-.45deg);isolation:isolate}
body.chapter-checking>.chapter-week-switch{visibility:hidden}
.chapter-week-switch::before{content:"";position:absolute;z-index:-1;inset:0 27% 0 auto;width:29%;background:repeating-linear-gradient(115deg,#ffffff28 0 4px,transparent 4px 15px);clip-path:polygon(30% 0,100% 0,64% 100%,0 100%)}
.week-switch-tag{display:inline-block;padding:7px 9px;background:#e9002a;color:#fff;border:3px solid #fff;box-shadow:3px 3px 0 #111;font:1000 clamp(12px,1.4vw,18px)/1 Impact,"Arial Black",sans-serif;letter-spacing:.09em;transform:rotate(-3deg);white-space:nowrap}
.chapter-week-switch label{margin-left:auto;font:1000 clamp(15px,1.8vw,23px)/1.05 "Arial Black","PingFang SC",sans-serif;white-space:nowrap;text-shadow:3px 3px 0 #e9002a}
.chapter-week-switch label strong{display:inline-block;margin-left:6px;padding:3px 7px;background:#fff;color:#111;border:2px solid #e9002a;box-shadow:3px 3px 0 #fff;font:1000 clamp(16px,2vw,27px)/1 Impact,sans-serif;transform:rotate(4deg)}
.chapter-week-switch select{min-width:190px;min-height:50px;padding:7px 38px 7px 12px;background:#fff;color:#111;border:solid #111;border-width:4px 5px 6px 4px;border-radius:0;box-shadow:4px 5px 0 #e9002a,8px 9px 0 #fff;font:1000 clamp(17px,2vw,24px)/1 Impact,"Arial Black",sans-serif;cursor:pointer;transform:rotate(2deg)}
.chapter-week-switch select:hover,.chapter-week-switch select:focus-visible{background:#f9eeee;transform:translateY(-3px) rotate(0)}
.week-switch-mark{font:1000 39px/1 Impact,sans-serif;color:#59d8d2;text-shadow:3px 3px 0 #e9002a,6px 6px 0 #fff;transform:rotate(9deg)}

/* Weather art uses the same offset registration, translucent silhouette and hand-cut edges as the page. */
.weather-poster:is([data-signal="sunny"],[data-signal="partly"],[data-signal="cloudy"],[data-signal="rain"]) .weather-icon-paper{background:#111;border:solid #fff;border-width:4px 6px 6px 4px;filter:drop-shadow(5px 5px 0 #e9002a) drop-shadow(9px 9px 0 #111)}
.weather-poster:is([data-signal="sunny"],[data-signal="partly"],[data-signal="cloudy"],[data-signal="rain"]) .weather-icon-paper img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(2px 3px 0 #111)}
.weather-eiko-feature{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(175px,265px) minmax(0,1fr);align-items:center;gap:clamp(15px,3vw,45px);min-height:270px;margin:25px 7px 22px;padding:14px clamp(16px,3vw,35px) 18px;background:#141418;color:#fff;border:solid #fff;border-width:6px 9px 8px 5px;box-shadow:6px 7px 0 #e9002a,12px 13px 0 #111;clip-path:polygon(0 4%,90% 0,100% 13%,98% 91%,93% 100%,2% 97%);transform:rotate(.5deg)}
.weather-eiko-feature[hidden]{display:none}
.weather-eiko-feature::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(#ffffff36 1px,transparent 1.4px) 0 0/18px 18px,linear-gradient(123deg,transparent 0 61%,#e9002a 61% 65%,transparent 65%),linear-gradient(161deg,#f2f2f22b 0 15%,transparent 15%);opacity:.76}
.weather-eiko-feature::after{content:"";position:absolute;z-index:-1;right:-6%;bottom:-18%;width:53%;aspect-ratio:1;background:#fff2;clip-path:polygon(50% 0,61% 34%,96% 32%,68% 55%,80% 94%,50% 70%,18% 95%,31% 56%,3% 32%,40% 34%);transform:rotate(17deg)}
.weather-eiko-illustration{position:relative;isolation:isolate;width:100%;aspect-ratio:1;display:grid;place-items:center}
.weather-eiko-illustration::before{content:"";position:absolute;z-index:-2;inset:9% 6% 7% 3%;background:#e9002a88;clip-path:polygon(12% 0,100% 9%,91% 81%,76% 100%,0 85%,5% 22%);transform:translate(11px,15px) rotate(7deg)}
.weather-eiko-illustration::after{content:"";position:absolute;z-index:-1;inset:4% 9% 11% 0;border:solid #fff;border-width:4px 6px 7px 3px;clip-path:polygon(0 7%,90% 0,100% 13%,96% 88%,82% 100%,2% 96%);transform:rotate(-4deg)}
.weather-eiko-illustration img{position:relative;z-index:2;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(4px 5px 0 #111)}
.weather-eiko-silhouette{position:absolute;z-index:1;inset:3%;background:#ffffff66;clip-path:polygon(50% 0,61% 34%,97% 28%,71% 55%,88% 96%,51% 75%,15% 98%,30% 57%,0 30%,40% 35%);opacity:.48;transform:translate(17px,14px) rotate(8deg)}
.weather-eiko-caption{position:relative;z-index:2;min-width:0}
.weather-eiko-caption small{display:inline-block;padding:6px 9px;background:#e9002a;border:3px solid #fff;box-shadow:4px 4px 0 #111;font:1000 clamp(12px,1.5vw,17px)/1 Impact,sans-serif;letter-spacing:.09em;transform:rotate(-4deg)}
.weather-eiko-caption strong{display:block;width:max-content;max-width:100%;margin:14px 0 9px;padding:4px 17px 9px;background:#fff;color:#111;border:solid #111;border-width:3px 6px 6px 3px;box-shadow:5px 5px 0 #e9002a,10px 10px 0 #fff;font:1000 clamp(33px,5vw,67px)/1 "Arial Black","PingFang SC",sans-serif;text-shadow:3px 3px 0 #e9002a;transform:rotate(3deg)}
.weather-eiko-caption p{max-width:550px;margin:16px 0 0;font:900 clamp(13px,1.5vw,18px)/1.55 "PingFang SC","Microsoft YaHei",sans-serif;color:#fff}
.weather-eiko-feature[data-weather="partly"] .weather-eiko-illustration::before{background:#59d8d288}
.weather-eiko-feature[data-weather="cloudy"] .weather-eiko-illustration::before{background:#b6b7c188}
.weather-eiko-feature[data-weather="rain"] .weather-eiko-illustration::before{background:#ef83b788}
.weather-eiko-feature{filter:drop-shadow(5px 6px 0 #e9002a88) drop-shadow(9px 10px 0 #111)}

@media(max-width:900px){.eiko-values-panel{width:min(100%,460px)}.chapter-week-switch{margin-top:15px}}
@media(max-width:640px){
  .eiko-values-panel{width:min(100%,430px);margin-top:17px}
  .eiko-intro-dialogue{margin-left:25%;margin-bottom:-11px;padding:5px 10px 7px;font-size:14px}
  .eiko-intro-dialogue strong{font-size:28px}
  .eiko-values-art{border-width:4px 6px 6px 4px}
  .eiko-values-lettering{top:46%;gap:1px}
  .eiko-values-lettering small{font-size:8px;padding:1px 3px}
  .eiko-values-lettering b{font-size:clamp(13px,4.5vw,22px);padding:0 2px 1px;text-shadow:1px 1px 0 #fff,2px 2px 0 #e9002a}
  .chapter-week-switch{width:calc(100% - 22px);min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto);gap:9px 10px;margin:13px auto 23px;padding:11px 12px 14px;border-width:4px 5px 6px 3px;box-shadow:5px 6px 0 #e9002a,9px 10px 0 #111;clip-path:polygon(0 4%,96% 0,100% 11%,99% 96%,3% 100%)}
  .week-switch-tag{grid-column:1/-1;width:max-content;font-size:11px}
  .chapter-week-switch label{margin:0;font-size:13px;white-space:normal}
  .chapter-week-switch label strong{margin:3px 0 0;font-size:18px}
  .chapter-week-switch select{width:100%;min-width:0;min-height:45px;font-size:18px;padding:6px 22px 6px 7px}
  .week-switch-mark{display:none}
  .weather-eiko-feature{grid-template-columns:minmax(0,1fr);gap:0;margin:20px 2px;padding:12px 13px 19px;border-width:4px 6px 6px 4px}
  .weather-eiko-illustration{width:min(66%,230px);margin:0 auto}
  .weather-eiko-caption strong{font-size:clamp(32px,8vw,48px)}
  .weather-eiko-caption p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.eiko-values-spark{animation:none}}
