/* Additive view styles; reuse Phase 8.20 tokens without changing its five screens. */
.sub8201-header{position:relative}.sub8201-header h1{overflow-wrap:anywhere}.sub8201-header .sub820-brand{align-self:center}
.sub8201-active .sub820-page h2{color:#ffe6a7}.sub8201-active .sub820-page .btn:active:not(:disabled){transform:translateY(1px);background:#294459}.sub8201-active .sub820-page p{line-height:1.85}.sub8201-active .sub820-page .m85-heading{margin:0 0 18px;flex-wrap:wrap;justify-content:flex-end}
.sub8201-final{background:radial-gradient(ellipse at 50% 0,#5e3e773d,transparent 58%),linear-gradient(140deg,#11162e,#080e1c 75%)!important;border-color:#d4b260!important;box-shadow:inset 0 0 0 4px #080e1c,0 0 30px #c6a34b20,0 12px 32px #0006!important}
.sub8201-final[data-final-open=true]{border-color:#ffe398!important;box-shadow:inset 0 0 0 4px #080e1c,0 0 36px #e9c96635,0 12px 32px #0006!important}
.sub8201-final .sub8201-header{padding-top:65px;border-bottom-color:#bda46c}.sub8201-final .sub8201-header h1{font-size:clamp(25px,3vw,36px);color:#fff0b3;letter-spacing:.06em}
.sub8201-royal-seal{position:absolute;width:58px;height:58px;top:0;left:calc(50% - 29px);color:#d6bb74;filter:drop-shadow(0 0 10px #d6bb7438);pointer-events:none}.sub8201-royal-seal svg{display:block;width:100%;height:100%}
.sub8201-final-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px;align-items:start}
.sub8201-final .master-battle{margin:0;width:100%;border:1px solid #bba16b;border-radius:6px;overflow:hidden;background:#0c1727;box-shadow:inset 0 0 0 3px #080e1c}
.sub8201-final .master-battle-heading{background:#191f37;color:#f8e7bc;padding:12px;gap:8px}.sub8201-final .master-battle-heading strong{color:#ffe9a5}
.sub8201-final .master-battle-field{height:245px;background:radial-gradient(ellipse at 50% 55%,#a58a4e33,transparent 67%),linear-gradient(#151a32,#0a1425);image-rendering:auto}
.sub8201-final .master-battle-frame{height:218px;width:200px;border:1px solid #d2b97b;box-shadow:0 0 0 4px #bda46c18;background:#091322}
.sub8201-final .master-battle-dialogue{margin:0;border:0;border-top:1px solid #bda46c66;border-radius:0;background:#101c2c;color:#f6f1df;padding:16px}.sub8201-final .master-battle-dialogue p{font-size:18px;margin:0}
.sub8201-final .final89-checklist{margin:0;width:100%;max-width:none}.sub8201-final .final89-checklist>p:first-child{margin-top:0}.sub8201-final .final89-checklist h2{font-size:24px;padding-bottom:12px;border-bottom:1px solid #bda46c66}
.sub8201-final .final89-checklist li{background:#171e34;border:1px solid #9c8c6455;border-radius:4px;padding:12px;font-size:15px;line-height:1.6}.sub8201-final .final89-checklist li b{color:#ffe4a0;flex:none}.sub8201-final [data-start-final85]{display:block;width:min(100%,560px);margin:20px auto;font-size:20px!important}.sub8201-final>.notice{margin-top:22px}
@media(max-width:800px){.sub8201-final-layout{grid-template-columns:1fr}.sub8201-final .master-battle{max-width:540px;margin:auto}.sub8201-final .master-battle-field{height:215px}.sub8201-final .master-battle-frame{height:195px;width:180px}}
@media(max-width:600px){.sub8201-final .sub8201-header{padding-top:62px}.sub8201-final .final89-checklist li{flex-wrap:wrap;gap:4px}.sub8201-final .master-battle-dialogue p{font-size:17px}}
.sub8201-passport{background:linear-gradient(110deg,#b79d5d0c 0 3%,transparent 3% 97%,#b79d5d0c 97%),linear-gradient(145deg,#142f35,#0a1c28 75%)!important}
.sub8201-passport>.m85-heading{justify-content:flex-start!important}.sub8201-passport>.m85-heading .eyebrow{font-size:12px;letter-spacing:.18em}.sub8201-passport>.m85-heading:empty{display:none}
.sub8201-passport .passport-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.sub8201-passport .passport-page{position:relative;padding:22px;border:1px solid #baa26b;border-radius:6px;background:linear-gradient(100deg,#cba7510a 0 4%,transparent 4%),linear-gradient(145deg,#1b353c,#0a202b);box-shadow:inset 0 0 0 4px #071b26,0 5px 16px #0003;min-width:0}
.sub8201-passport .passport-page header{align-items:center;gap:16px}.sub8201-passport .passport-page header>img{width:90px;height:76px;object-fit:contain;border:1px solid #c5b47d66;background:#071725;border-radius:4px}.sub8201-passport .passport-page h2{font-size:24px}.sub8201-passport .passport-page header p{font-size:15px}
.sub8201-passport .passport-stamps{gap:10px;margin:24px 0}.sub8201-passport .passport-stamp{flex:1;min-width:0}.sub8201-passport .stamp-image{box-sizing:border-box;width:80px;height:80px;max-width:100%;border:3px solid #bca36c;background:#102936;padding:4px}.sub8201-passport .stamp-image b{background:#102532;color:#ffe5a4;border:1px solid #c1a66a;font-size:15px}.sub8201-passport .passport-stamp.locked .stamp-image{opacity:.4}.sub8201-passport .passport-stamp.earned .stamp-image{box-shadow:0 0 0 3px #d7b75f26}.sub8201-passport .passport-stamp strong{font-size:17px;color:#ffedb9}.sub8201-passport .passport-stamp small{font-size:13px}
.sub8201-passport .m85-medal-state{background:#0a1b28;color:#b5c7cf;border:1px solid #718a8e66;font-size:13px;border-radius:4px;padding:7px}.sub8201-passport .m85-medal-state.earned{background:#584829;color:#ffe8ae;border-color:#d4b77a}.sub8201-passport .passport-page>.btn{width:100%;margin-top:5px}
.sub8201-passport .passport-common{padding:20px;border:1px dashed #bba77499;border-radius:6px;background:#0a172c99}.sub8201-passport .passport-common>.passport-page{max-width:none}.sub8201-passport .passport-common .passport-stamps{max-width:480px}.sub8201-passport .m85-final-entry{padding:20px;border:1px solid #c6a768;border-radius:6px;background:linear-gradient(130deg,#302c40,#142334);color:#ffe6a6;gap:18px}.sub8201-passport .m85-final-entry p{color:#dfdfcf}.sub8201-passport .m85-final-entry.earned{background:linear-gradient(130deg,#554528,#182e3b)}
@media(max-width:760px){.sub8201-passport .passport-grid{grid-template-columns:1fr}.sub8201-passport .m85-final-entry{flex-direction:column;align-items:stretch}.sub8201-passport .passport-page{padding:18px}.sub8201-passport .passport-common{padding:14px}}
@media(max-width:400px){.sub8201-passport .stamp-image{width:64px;height:64px}.sub8201-passport .passport-stamp strong{font-size:15px}.sub8201-passport .passport-stamp small{font-size:12px}.sub8201-passport .passport-page header>img{width:72px;height:64px}.sub8201-passport .passport-page h2{font-size:21px}}
.sub8201-header #home{padding:10px 8px!important;font-size:16px!important;white-space:nowrap!important}
/* Card collection reuses the existing explore stage and original question/answer nodes. */
body.sub8201-collection main#app{max-width:none;margin:0;padding:0;min-height:100vh}
.sub8201-collection .explore89-top .btn,.sub8201-collection .explore89-feedback-head .btn,.sub8201-collection .explore89-result .btn{color:#fff0bd;border:1px solid #c5ad71;border-radius:5px;background:linear-gradient(#213e51,#0a2031);box-shadow:inset 0 0 0 2px #071421;min-height:48px}
.sub8201-collection .explore89-top{background:none}.sub8201-collection .explore89-heading{border:1px solid #bda46c;border-radius:5px;background:#091a2bea;color:#ffe5a1;box-shadow:inset 0 0 0 3px #071421}.sub8201-collection .explore89-heading strong{color:#ffe6a7}.sub8201-collection .explore89-heading span{color:#cbdce6}
.sub8201-collection .explore89-hint{width:auto!important;flex:none}.sub8201-collection .explore89-question>.panel,.sub8201-collection .explore89-explanation>.panel,.sub8201-collection .explore89-result>.panel{background:linear-gradient(145deg,#183245f2,#081b2bf5);border:1px solid #c7ad70;border-radius:6px;color:#f5f7fc;box-shadow:inset 0 0 0 3px #081421}
.sub8201-collection .explore89-question h1{color:#fff0c2;line-height:1.65}.sub8201-collection .explore89-question .eyebrow{color:#e4cb8c}.sub8201-collection .choice{color:#f5f7fc;background:linear-gradient(#1b3b50f5,#0b2437f5);border:1px solid #b6a16b;border-radius:5px;box-shadow:inset 0 0 0 2px #0a1e2c;min-height:56px}.sub8201-collection .choice b{background:#e2c783;color:#112638}.sub8201-collection .choice.selected{background:#285266;border:3px solid #ffe7a2}.sub8201-collection :is(button,a,summary):focus-visible{outline:3px solid #ffe194;outline-offset:3px}
.sub8201-collection .explore89-feedback-head{background:#0c2032f5;border:1px solid #c6ac6d;color:#ffe8ad;border-radius:5px}.sub8201-collection .explore89-explanation :is(p,h2,h3),.sub8201-collection .explore89-result :is(p,h1,h2,h3){color:#f1f5f9}.sub8201-collection .result-row{background:#0c2436;border-color:#687b85;color:#eef4f8}.sub8201-collection .score{color:#ffe19a}
.sub8201-collection-complete{text-align:center}.sub8201-collection-complete .btn{margin:8px}
@media(max-width:600px){.sub8201-collection .explore89-top .btn{font-size:15px;padding:10px}.sub8201-collection .explore89-heading strong{font-size:18px}.sub8201-collection .choice{font-size:19px}}
@media(prefers-reduced-motion:reduce){.sub8201-collection *{animation:none!important;transition:none!important}}
.sub8201-collection .explore89-stage .panel{background:linear-gradient(145deg,#183245f2,#081b2bf5)!important;border:1px solid #c7ad70!important;box-shadow:inset 0 0 0 3px #081421!important}.sub8201-collection .explore89-shade{background:linear-gradient(#07142144,#07142133 45%,#07142177)}
.sub8201-regions .progress89-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.sub8201-regions .progress89-list>article{position:relative;min-width:0;padding:22px;border:1px solid #a9905e;border-top:3px solid var(--region-color);border-radius:6px;background:linear-gradient(145deg,#1b3346,#0a1e2e);box-shadow:inset 0 0 0 3px #081421;display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:10px 16px;align-items:center}
.sub8201-regions .progress89-list h2{margin:0;font-size:24px;line-height:1.65;grid-column:1;grid-row:1}.sub8201-regions .progress89-list p{grid-column:1/-1;margin:2px 0;font-size:16px}.sub8201-regions .progress89-list p:nth-of-type(2){padding:12px;background:#071725a8;border:1px solid #a58f5d55;border-radius:4px;color:#ffe9ae;font-size:16px;line-height:1.9}.sub8201-regions .progress89-list .btn{grid-column:1/-1;width:100%}.sub8201-regions .progress89-list [data-master85-region]{background:linear-gradient(#53482e,#302e25)!important}
.sub8201-region-ring{grid-column:2;grid-row:1;width:88px;height:88px;justify-self:end}.sub8201-region-ring svg{width:100%;height:100%;overflow:visible}.sub8201-ring-track,.sub8201-ring-arc{fill:none;stroke-width:7}.sub8201-ring-track{stroke:#354a58}.sub8201-ring-arc{stroke:var(--region-color);transform:rotate(-90deg);transform-origin:44px 44px;stroke-linecap:round}.sub8201-region-ring text{fill:#fff0b7;font:700 18px sans-serif}
@media(max-width:760px){.sub8201-regions .progress89-list{grid-template-columns:1fr}.sub8201-regions .progress89-list>article{padding:18px}}
/* Board styling is inherited by midnight-replaced mission children; no observer or timer. */
.sub8201-missions{background:linear-gradient(135deg,#1d2d36,#091a29 80%)!important}.sub8201-missions .daily-missions{position:relative;padding:26px;border:1px solid #baa16a;border-radius:6px;background:linear-gradient(90deg,#b99e6210 0 2%,transparent 2% 98%,#b99e6210 98%),linear-gradient(145deg,#1b3241,#0c2231);box-shadow:inset 0 0 0 5px #081a29,0 8px 18px #0004}
.sub8201-missions .mission-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:20px;border-bottom:1px solid #a48b5855;padding-bottom:16px}.sub8201-missions .mission-heading h2{margin:0;font-size:25px}.sub8201-missions .mission-heading small{font-size:14px}
.sub8201-missions .mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sub8201-missions .mission{position:relative;margin:0!important;min-width:0;border:1px solid #a18e61!important;border-radius:5px!important;background:linear-gradient(145deg,#203a49,#10283a)!important;box-shadow:0 4px 12px #0004;overflow:visible}
.sub8201-missions .mission::before{content:'';position:absolute;width:9px;height:9px;border:1px solid #d3ba79;border-radius:50%;top:-5px;left:calc(50% - 5px);background:#897343;box-shadow:0 1px 4px #0008;pointer-events:none}
.sub8201-missions .mission summary{display:flex;align-items:flex-start;gap:12px;min-height:150px;padding:24px 18px;list-style:none;line-height:1.8;font-size:19px;color:#fff0bd}.sub8201-missions .mission summary::-webkit-details-marker{display:none}.sub8201-missions .mission-check{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border:1px solid #b39b63;border-radius:50%;color:#c9b888;background:#071725;font-size:19px;margin-top:2px}.sub8201-missions .mission summary small{display:block;font-size:16px;color:#cbd9e1;margin-top:14px;padding-top:10px;border-top:1px solid #a88e5955}
.sub8201-missions .mission.complete{border-color:#e6c977!important;background:linear-gradient(140deg,#404632,#1a3537)!important}.sub8201-missions .mission.complete .mission-check{background:#dac082;color:#112b31;border-color:#ffe3a4;font-weight:700}.sub8201-missions .mission.complete summary small{color:#ffe9a8}.sub8201-missions .mission p{padding:0 18px 18px;margin:0;color:#e7edf2;font-size:16px;line-height:1.85}.sub8201-missions .mission-optional{font-size:15px;color:#c5d3df!important;margin-bottom:0}
@media(max-width:1000px){.sub8201-missions .mission-grid{grid-template-columns:1fr}.sub8201-missions .mission summary{min-height:96px;padding:18px 20px;align-items:center}.sub8201-missions .mission summary small{margin-top:8px;padding-top:8px}}
@media(max-width:600px){.sub8201-missions .daily-missions{padding:18px}.sub8201-missions .mission-heading h2{font-size:22px}.sub8201-missions .mission summary{font-size:18px;padding:18px 14px}.sub8201-missions .mission summary small{font-size:15px}}
.sub8201-passport .sub8201-header h1>.c87-icon{width:30px;height:30px;display:inline-block;vertical-align:-5px;color:#e2c780}.sub8201-passport .sub8201-header h1>.c87-icon svg{width:100%;height:100%;display:block}
