/* Approved lantern-night cover, composed on a 1440 x 690 reference canvas. */
.is-title.game{min-height:0}
.is-title .scenery,.is-ending .scenery{background-position:center;filter:none;transform:none}
.is-title .scene-wash,.is-ending .scene-wash{background:radial-gradient(ellipse 38% 76% at 50% 43%,#101e35bc 0%,#14233a87 48%,#14233a00 100%),linear-gradient(180deg,#11213821,transparent 35%,#11243c33 65%,#102130ad 100%)}
.is-ending .ending-screen{background:linear-gradient(#11213821,#10213080);backdrop-filter:none}
.is-title #motes{display:none}
.is-title .ws-opening{display:none}
.lantern-cover{inset:0;--cover-unit:min(.069444444vw,.144927536svh);--cover-center:calc(50% - 144 * var(--cover-unit))}
.lantern-cover .title-copy{position:absolute;inset:0;pointer-events:none}
.lantern-cover .eyebrow,.lantern-cover .main-title,.lantern-cover .title-poem,.lantern-cover .title-actions,.lantern-cover .title-hint{position:absolute;margin:0;left:var(--cover-center);transform:translateX(-50%);width:max-content}
.lantern-cover .eyebrow{top:calc(50% - 242 * var(--cover-unit));white-space:nowrap;gap:calc(15 * var(--cover-unit));font-size:calc(10 * var(--cover-unit));letter-spacing:calc(4 * var(--cover-unit));color:#e4cba3}
.lantern-cover .eyebrow i{width:calc(30 * var(--cover-unit));background:linear-gradient(90deg,transparent,#d1b47b)}
.lantern-cover .eyebrow i:last-child{transform:rotate(180deg)}
.lantern-cover .main-title{left:calc(var(--cover-center) + 24 * var(--cover-unit));top:calc(50% - 64 * var(--cover-unit));transform:translate(-50%,-50%);font-size:calc(128 * var(--cover-unit));line-height:1.09;letter-spacing:calc(15 * var(--cover-unit));text-align:left}
.lantern-cover .main-title>span:nth-child(2){margin-left:calc(64 * var(--cover-unit))}
.lantern-cover .main-title em{font-size:calc(15 * var(--cover-unit));bottom:calc(14 * var(--cover-unit));padding:calc(11 * var(--cover-unit)) calc(7 * var(--cover-unit));letter-spacing:calc(7 * var(--cover-unit))}
.lantern-cover .title-poem{left:calc(var(--cover-center) + 24 * var(--cover-unit));top:calc(50% + 85 * var(--cover-unit));white-space:nowrap;text-align:center;font-size:calc(16 * var(--cover-unit));line-height:1.6;letter-spacing:calc(2.5 * var(--cover-unit));color:#f4e8cb;text-shadow:0 2px 7px #101d30}
.lantern-cover .title-actions{top:calc(50% + 152 * var(--cover-unit));display:flex;flex-direction:column;align-items:center;gap:calc(14 * var(--cover-unit));pointer-events:auto;white-space:nowrap}
.lantern-cover .title-actions .primary-button{width:calc(220 * var(--cover-unit));height:calc(54 * var(--cover-unit));min-width:0;min-height:44px;padding:0 calc(22 * var(--cover-unit));font-size:calc(21 * var(--cover-unit));line-height:1;display:flex;align-items:center;justify-content:center;letter-spacing:calc(4 * var(--cover-unit))}
.lantern-cover .title-actions .primary-button span{padding-left:calc(20 * var(--cover-unit))}
.lantern-cover .title-actions .intro-button{background:linear-gradient(115deg,#203647ed,#162c3ae8);border-color:#cdb183;color:#f4e3bd;box-shadow:0 6px 25px #101b2840,inset 0 0 0 4px #253b48,inset 0 0 0 5px #c4a37180}
.lantern-cover .title-actions .intro-button:hover{background:#2c4658}
.lantern-cover .title-actions .primary-button:active{transform:translateY(1px)}
.lantern-cover .title-actions .primary-button:focus-visible{outline:2px solid #f6e4bb;outline-offset:5px}
.lantern-cover .title-hint{top:calc(50% + 291 * var(--cover-unit));white-space:nowrap;color:#decda9;letter-spacing:calc(2 * var(--cover-unit));font-size:calc(10 * var(--cover-unit));text-shadow:0 2px 5px #102237}
.lantern-cover .title-hint span{margin-left:calc(15 * var(--cover-unit));padding-left:calc(15 * var(--cover-unit))}
.lantern-cover .vertical-verse{top:26%;pointer-events:none}
.title-utilities{position:absolute;left:6%;bottom:64px;z-index:16;display:flex;align-items:flex-start;flex-direction:column;gap:3px}
.title-utilities>.text-button{font:13px/1.5 var(--serif);color:#e3d2ae;letter-spacing:2px;min-height:32px;padding:6px 0;text-shadow:0 2px 5px #102237}
dialog:has(.cover-introduction){width:min(1080px,90vw);max-width:1080px;max-height:calc(100svh - 48px);padding:24px 32px}
.modal-content:has(.cover-introduction){padding:8px 0 0}
.cover-introduction{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px 30px;font:16px/1.8 var(--serif);color:#473b2c}
.cover-introduction p{margin:10px 0}
.cover-introduction .cover-intro-lead{font-size:20px;letter-spacing:2px;color:#8a493b;margin:10px 0 16px}
.cover-intro-controls{border-top:1px solid #ae8d5a66;padding-top:10px;margin-top:16px}
.cover-intro-controls strong{font-size:18px;color:#7d4436}
.cover-introduction>.primary-button{grid-column:1/-1;display:block;margin:0 auto;font-size:19px;min-width:180px;padding:10px 24px}
/* Named source credits sit beside the introduction on desktop. */
.cover-intro-story{min-width:0}
.cover-intro-credits{min-width:0;border-left:1px solid #ae8d5a66;padding:8px 0 0 26px}
.cover-intro-credits h3{margin:0 0 12px;font:22px/1.45 var(--serif);letter-spacing:2px;color:#7d4436}
.cover-intro-credits .cover-credits-intro{margin:0 0 14px;font-size:15px;line-height:1.85}
.cover-credits-list{margin:0}
.cover-credits-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:baseline;padding:8px 0;border-bottom:1px solid #ae8d5a30}
.cover-credits-list dt{min-width:0;font-size:16px;color:#593e2c;overflow-wrap:anywhere}
.cover-credits-list dd{margin:0;font-size:14px;white-space:nowrap;color:#786246}
.cover-intro-credits .cover-credits-note{margin:14px 0 0;font-size:13px;line-height:1.85;color:#786246}
@media(max-width:999px){
  dialog:has(.cover-introduction){width:min(760px,91vw);padding:24px}
  .cover-introduction{grid-template-columns:minmax(0,1fr)}
  .cover-intro-credits{border-left:0;border-top:1px solid #ae8d5a66;padding:18px 0 0}
}
@media(max-width:799px) and (orientation:portrait){
  .is-title .topbar{height:130px;padding:20px 5% 0;flex-wrap:wrap;align-content:flex-start;gap:8px}
  .is-title .topbar .brand{font-size:18px;height:35px;margin:0;gap:12px}
  .is-title .topbar .brand-seal{width:30px;height:35px;font-size:24px}
  .is-title .topbar nav{width:100%;margin:0;justify-content:flex-end;gap:4px}
  .is-title .topbar nav button{width:50px;font-size:10px!important;--hud-size:32px}
  .lantern-cover{--cover-unit:clamp(.65px,.2vw,1px);--cover-center:50%}
  .lantern-cover .title-copy{inset:-24px 0 24px}
  .lantern-cover .eyebrow{font-size:10px;letter-spacing:2px;gap:10px}
  .lantern-cover .eyebrow i{width:20px}
  .lantern-cover .title-poem{font-size:14px;letter-spacing:1px;line-height:1.8}
  .lantern-cover .title-actions .primary-button{width:200px;height:48px;font-size:20px;letter-spacing:3px}
  .lantern-cover .title-actions{gap:12px;top:calc(50% + 152 * var(--cover-unit) + 16px)}
  .lantern-cover .title-hint{top:calc(50% + 152 * var(--cover-unit) + 144px);font-size:10px;letter-spacing:1px}
  .lantern-cover .vertical-verse{display:none}
  .title-utilities{bottom:32px;flex-direction:row;gap:18px}
}
@media(max-height:520px) and (orientation:landscape){
  .lantern-cover .title-actions{flex-direction:row;gap:12px;top:calc(50% + 165 * var(--cover-unit))}
  .lantern-cover .title-actions .primary-button{width:156px;height:44px;font-size:17px;letter-spacing:2px}
  .lantern-cover .title-hint{top:calc(50% + 165 * var(--cover-unit) + 56px);font-size:9px}
  .title-utilities{left:4%;bottom:42px}
}
@media(prefers-reduced-motion:reduce){
  .lantern-cover button{transition:none}
}
