/* Slide 34: parchment codex, bronze artifact frame and quest slots. */
.slide-historic-milestones .hm-stage{gap:12px}
.slide-historic-milestones .hm-main{grid-template-columns:minmax(0,3.2fr) minmax(230px,1fr);gap:22px}
.hm-detail{background:radial-gradient(ellipse at 5% 5%,#fffdf3b0,transparent 65%),linear-gradient(125deg,#f9f1dc,#f2e6ca);border:1px solid #a5874f;box-shadow:inset 0 0 0 3px #fdf8e6,inset 0 0 0 4px #cbb37a,0 5px 15px #70532612}
.hm-detail>header{gap:16px}.hm-detail-year{font-size:clamp(22px,4.6cqh,31px)}.teaching-slide .hm-detail h3{font-size:clamp(19px,4cqh,28px)}
.hm-detail-body{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;align-items:center}
.hm-copy{min-width:0;align-self:center}.teaching-slide .hm-copy p,.hm-copy li{line-height:1.5}.hm-copy strong{color:#963c2b;text-shadow:0 1px #fff5dc}
.hm-detail .hm-artifact{position:relative;display:flex;flex-direction:column;gap:9px;width:100%;align-self:center;margin:0;min-height:0;max-height:100%}
.hm-artifact-tag{align-self:center;position:relative;z-index:1;background:#3a4939;color:#f0d18c;border:1px solid #b69b59;padding:5px 10px;font:600 9px/1.3 var(--sans);letter-spacing:1px;box-shadow:0 2px 5px #493a2525}
.hm-artifact-window{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;padding:12px;border:3px double #d6b36f;background:linear-gradient(135deg,#a88a50,#554a33 42%,#b89a58);box-shadow:0 5px 12px #51402d35,inset 0 0 0 3px #594c34;flex:1}
.hm-artifact-window:before,.hm-artifact-window:after{content:'✥';position:absolute;color:#f3d994;font-size:22px;line-height:1;text-shadow:0 1px 2px #392b18;z-index:1}.hm-artifact-window:before{top:-9px;left:-9px}.hm-artifact-window:after{bottom:-9px;right:-9px}
.hm-detail .hm-artifact img{display:block;width:100%;height:auto;max-height:39cqh;object-fit:contain;border-radius:0;background:#e9dfc7;box-shadow:0 0 0 1px #e8d09b}
.hm-artifact figcaption{font:500 9px/1.4 var(--sans);color:#92703e;text-align:center;letter-spacing:1.1px}
.hm-picker{gap:9px}.hm-picker>h3{font-size:10px;letter-spacing:1.5px;padding-left:5px}
.hm-picker button{border-radius:3px 12px 3px 12px;border:1px solid #aa8b51;background:linear-gradient(110deg,#fdf8e8,#eee0be);padding:7px 58px 7px 16px;box-shadow:inset 0 0 0 3px #fff9e5,inset 0 0 0 4px #cfb67c,0 2px 4px #69522b12;transition:box-shadow .2s,background .2s,transform .2s}
.hm-picker button:before{content:'◆';position:absolute;left:-7px;top:50%;transform:translateY(-50%);font-size:12px;color:#a4874d;background:#f5ecd7;line-height:1}
.hm-picker button[aria-pressed=true]{background:linear-gradient(110deg,#f8e9bc,#e8d097);border-color:#b48a34;box-shadow:inset 0 0 0 3px #fff3c9,inset 0 0 0 4px #b8974b,0 0 13px #cf9c4670,0 0 3px #d6ab5d}
.hm-picker button:hover{transform:translateX(-2px);background:#f2e1b4}
.hm-pick-year{font-size:clamp(16px,3.4cqh,22px)}.hm-pick-title{font-size:clamp(10px,2.3cqh,15px)}
.hm-picker .hm-pick-check{right:8px;width:39px;height:39px;border:2px double #a87d33;border-radius:50%;background:#f2dba57a;transform:translateY(-50%) rotate(-13deg);font:750 7px/1.35 var(--sans);text-align:center;color:#8f6726;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px #f9eccb,0 1px 4px #b48a3425}
.hm-picker .is-visited .hm-pick-check{display:flex}
.hm-footer{padding-top:7px;border-top:1px solid #b99b5c}.hm-visited-row{display:flex;align-items:center;gap:12px;margin-bottom:5px;font:600 10px/1.4 var(--sans);color:#8b6b34}.hm-visited-label{letter-spacing:1.2px}.hm-visited-count{margin-left:auto;font-size:12px}
.hm-visited-track{height:11px;background:#d8ccb0;border:1px solid #ac915b;padding:2px;box-shadow:inset 0 1px 3px #6d522929;border-radius:10px;overflow:hidden}.hm-visited-track>span{display:block;width:0;height:100%;border-radius:8px;background:linear-gradient(90deg,#8e733d,#d5b66e,#eed694);transition:width .45s ease}
.hm-footer.is-complete .hm-visited-track{box-shadow:0 0 9px #cc9d4980}.hm-footer.is-complete .hm-visited-track>span{background:linear-gradient(90deg,#bc8c2e,#f2d789,#d7ad4b)}.hm-footer.is-complete .hm-status{color:#8c6420;font-weight:650}.hm-footer.is-complete 
.teaching-slide .hm-status{font-size:10px;margin:5px 0 3px}.teaching-slide .hm-source{font-size:8px}
@container(max-height:550px){.hm-detail.is-long .hm-detail-body{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.hm-detail.is-long figure{display:flex}.hm-detail{padding:12px 16px;gap:9px}.hm-detail>header{padding-bottom:8px}.hm-detail-body{gap:18px}.hm-detail .hm-artifact img{max-height:34cqh}.hm-artifact-window{padding:8px}.hm-picker{gap:7px}.hm-artifact-tag{font-size:8px;padding:4px 7px}.hm-copy ul{margin-top:6px}.hm-copy li+li{margin-top:4px}}
@media(max-width:720px){.slide-historic-milestones .hm-main{display:flex;gap:18px}.hm-picker button{padding-right:48px;min-height:82px}.hm-picker .hm-pick-check{width:33px;height:33px;font-size:6px}.hm-detail-body,.hm-detail.is-long .hm-detail-body{display:flex;flex-direction:column}.hm-detail .hm-artifact{order:-1;max-width:380px;width:95%}.hm-detail .hm-artifact img{max-height:240px}.hm-copy{align-self:stretch}.hm-pick-year{font-size:19px}.hm-pick-title{font-size:11px}.hm-visited-label{font-size:9px}.hm-visited-row{gap:6px}.hm-picker>h3{grid-column:1/-1}.hm-artifact-tag{font-size:9px}}
@media(prefers-reduced-motion:reduce){.hm-picker button,.hm-visited-track>span{transition:none}}
.hm-reset{display:grid;place-items:center;width:38px;height:38px;min-width:38px;padding:8px}.hm-reset svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hm-artifact-window{width:100%;border-radius:12px;cursor:zoom-in}.hm-artifact-window:before{top:0;left:0}.hm-artifact-window:after{bottom:0;right:0}.hm-detail .hm-artifact img{border-radius:7px}
.hm-zoom-dialog{position:fixed;inset:0;margin:auto;width:fit-content;max-width:94vw;max-height:92vh;padding:10px;border:2px solid #be9a53;border-radius:18px;background:#f8efd9;box-shadow:0 18px 70px #0009;overflow:visible}
.hm-zoom-dialog::backdrop{background:#081b20d9;backdrop-filter:blur(4px)}
.hm-zoom-dialog>img{display:block;width:auto;height:auto;max-width:calc(94vw - 24px);max-height:calc(92vh - 24px);object-fit:contain;border-radius:11px}
.hm-zoom-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #d7b36b;border-radius:50%;background:#17332feb;color:#fff0c8;box-shadow:0 2px 9px #0005;font:400 26px/1 sans-serif;cursor:pointer;z-index:1}
.hm-zoom-close:focus-visible{outline:3px solid #dcb45e;outline-offset:2px}
