@layer lineage;
@layer lineage {
 .dragon-chamber{--seal-light-x:50%;--seal-light-y:36%;--ritual-metal:#aa9060;--ritual-ink:#d1bd92;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,470px);gap:0 60px;max-width:none;margin:25px auto 0;text-align:left;padding:45px 0 0;isolation:isolate}.ritual-copy{grid-column:1;grid-row:1;padding-top:20px;align-self:end}.ritual-tools{grid-column:1;grid-row:2;align-self:start;padding-bottom:35px}.ritual-copy>.eyebrow{font-size:9px;color:#a69772;letter-spacing:.16em}.ritual-copy>h1{font:40px/1.8 var(--serif);color:#d8d0bf;letter-spacing:.07em;margin:25px 0}.ritual-description{font:13px/2.3 var(--body);max-width:455px;color:#8e9884}.ritual-registration{margin:32px 0 25px;border-left:1px solid #a38a503f;padding-left:20px}.ritual-registration>span{display:block;font-size:9px;color:#828c74;margin-bottom:11px}.ritual-registration>strong{font:21px var(--mono);letter-spacing:.15em;color:#bfb296;font-weight:400}.ritual-state-line{display:flex;align-items:flex-start;gap:11px;font:11px/2.1 var(--body);color:#aaa58b;min-height:48px;max-width:470px}.ritual-state-line>i{width:4px;height:4px;flex-shrink:0;border-radius:50%;background:#a68e58;margin-top:9px;box-shadow:0 0 0 4px #a68e580b}.ritual-copy-actions{margin:25px 0 20px;display:flex;align-items:center;gap:23px;flex-wrap:wrap}.ritual-copy-actions>.button{font-size:11px}.ritual-copy-actions>.text-link{font-size:10px;color:#9f9478}.ritual-copy-actions>p{font:12px/2.3 var(--serif);color:#838e74}.ritual-sound-row{display:flex;align-items:center;gap:20px;margin-top:28px;flex-wrap:wrap}.ritual-sound{font-size:9px;color:#b5a279;padding:8px 0;border-bottom:1px solid #9d865132;display:flex;gap:22px}.ritual-sound>span{color:#6f7d63;font-size:8px}.ritual-sound[aria-pressed=true]>span{color:#c8b282}.ritual-sound:focus-visible{outline:1px solid #a38a5066;outline-offset:5px}.ritual-sound-row>span{font-size:8px;color:#66745c}
 .ritual-visual{position:relative;min-width:0;align-self:center;grid-column:2;grid-row:1/3}.dragon-stage{min-width:0;position:relative;padding-top:18px;align-self:center}.ritual-scene-index{font:7px var(--mono);letter-spacing:.19em;color:#727c65;display:block;text-align:center;margin-bottom:5px}.dragon-plate{position:relative;width:100%;aspect-ratio:440/480;background:radial-gradient(ellipse at 50% 49%,#a8945220,#11170c00 62%);isolation:isolate}.dragon-plate::before{content:'';position:absolute;inset:12% 9% 11%;border-radius:50%;background:radial-gradient(ellipse at var(--seal-light-x) var(--seal-light-y),#a38d5c10,transparent 75%);box-shadow:inset 0 3px 20px #0003;pointer-events:none;opacity:.55}.dragon-plate-grain{position:absolute;inset:12% 9% 11%;border-radius:50%;background:url('/assets/leather-grain.svg') 0 0/115px;opacity:.075;pointer-events:none;mask-image:radial-gradient(ellipse,#000 30%,transparent 72%)}.dragon-etching{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;overflow:visible}.dragon-shadow{stroke:#000;stroke-width:3.8;transform:translateY(1.7px);opacity:.85}.dragon-metal{stroke:#84724c;stroke-width:1.15;opacity:.54;transition:opacity .7s,stroke .7s}.dragon-metal .dragon-scales{opacity:.6;stroke-width:.85}.dragon-metal .dragon-wing{stroke-width:1.1}.dragon-metal .dragon-eye{fill:#7f673b;stroke:none;opacity:.65}.dragon-awake{stroke:var(--ritual-ink);stroke-width:1.4;opacity:0;transition:opacity .45s}.dragon-awake path{stroke-dasharray:1;stroke-dashoffset:1}.dragon-awake .dragon-scales{stroke-width:1;opacity:.65}.dragon-awake .dragon-eye{fill:#d2ad60;stroke:none;opacity:0}.dragon-axis{stroke:#a28e5a;stroke-width:1;opacity:.5}.dragon-plate:has(.dragon-seal:hover) .dragon-metal,.dragon-plate:has(.dragon-seal:focus-visible) .dragon-metal{opacity:.95;stroke:#b09a6b}.dragon-plate:has(.dragon-seal:hover) .dragon-metal .dragon-eye,.dragon-plate:has(.dragon-seal:focus-visible) .dragon-metal .dragon-eye{fill:#c9a45f;opacity:1}.dragon-seal.awakening-seal{position:absolute;left:24.1%;top:26.6%;width:51.8%;height:46%;min-height:0;margin:0;display:block;padding:0;border:0;border-radius:50%;background:none;transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .6s;z-index:2;overflow:visible;outline-offset:10px;opacity:1}.dragon-seal.awakening-seal:hover:not(:disabled){background:none;border:none}.dragon-seal .seal-bezel{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:radial-gradient(ellipse at var(--seal-light-x) var(--seal-light-y),#a9946638,#22271b 45%,#10150c 76%);box-shadow:0 9px 14px #0009,inset 0 0 0 1px #c1a87659,inset 0 0 0 5px #151a10,inset 0 0 0 6px #8974465c,inset 0 0 0 10px #12180d;position:relative;transition:box-shadow .7s,background .7s,transform .5s}.dragon-seal .seal-bezel::after{content:'';position:absolute;inset:6px;border-radius:50%;background:radial-gradient(ellipse at var(--seal-light-x) var(--seal-light-y),#ead6a712,transparent 63%);pointer-events:none}.dragon-seal.awakening-seal .academy-mark{width:86%;height:86%;opacity:.8;filter:sepia(.2) saturate(.5) brightness(.73) drop-shadow(0 1px 1px #000);transition:filter .6s,opacity .6s,transform .6s}.dragon-seal.awakening-seal:hover:not(:disabled) .academy-mark,.dragon-seal:focus-visible .academy-mark{transform:translateY(-1px);opacity:.96;filter:saturate(.55) brightness(.98) drop-shadow(0 1px 1px #000)}.dragon-seal.awakening-seal:hover:not(:disabled){transform:translateY(-2px)}.dragon-seal.awakening-seal:active:not(:disabled){transform:translateY(2px) scale(.98);transition-duration:.1s}.dragon-seal.awakening-seal:active:not(:disabled) .seal-bezel{box-shadow:0 2px 5px #000c,inset 0 2px 9px #0009,inset 0 0 0 1px #b9a17166,inset 0 0 0 5px #161b11,inset 0 0 0 6px #9f8b5366}.dragon-seal:focus-visible{outline:1px solid #b8a16a77}.dragon-seal:disabled{cursor:wait}.dragon-seal .seal-touch-text{position:absolute;top:calc(100% + 29px);left:-30%;width:160%;text-align:center;color:#c1ad82;font:12px/2 var(--serif);letter-spacing:.08em;pointer-events:none;white-space:nowrap}.dragon-seal .seal-press-hint{position:absolute;top:calc(100% + 61px);left:-30%;width:160%;text-align:center;font:6px var(--mono);letter-spacing:.18em;color:#68765b;pointer-events:none}.ritual-engraving{position:absolute;left:0;right:0;bottom:2%;text-align:center;color:#6b765a;pointer-events:none}.ritual-engraving>span{display:block;font:15px Georgia;opacity:.5}.ritual-engraving>small{display:block;margin-top:9px;font:5px var(--mono);letter-spacing:.13em;opacity:.65}.seal-contact-ring{position:absolute;left:24.1%;top:26.6%;width:51.8%;height:46%;border:1px solid #b89b624d;border-radius:50%;opacity:0;pointer-events:none;z-index:1}.ritual-stage-caption{display:flex;justify-content:space-between;gap:20px;padding-top:16px;border-top:1px solid #a38a5024;font:8px/2 var(--body);color:#7b866d}.ritual-stage-caption>small{font:6px/2.4 var(--mono);color:#55664a;white-space:nowrap}
 .ritual-sequence{grid-row:3;grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px;border-block:1px solid #a38a5027;padding:24px 0;gap:30px;position:relative}.ritual-sequence>li{display:grid;grid-template-columns:35px 1fr;gap:6px 11px;align-items:baseline;color:#68765c;transition:color .5s}.ritual-sequence>li>span{grid-row:1/3;font:12px var(--mono);color:#6b745a}.ritual-sequence strong{font:14px var(--serif);font-weight:400}.ritual-sequence small{font:6px var(--mono);letter-spacing:.17em;color:#546447}.ritual-sequence>li.is-active{color:#ddc28a}.ritual-sequence>li.is-active>span{color:#c6aa6e}.ritual-sequence>li.is-finished{color:#a6a489}.ritual-bottom-note{grid-row:4;grid-column:1/-1}.ritual-bottom-note .npc-note{max-width:700px;margin:27px 0 0}.ritual-bottom-note .ritual-policy-inline{font:9px/2.2 var(--body);color:#82866d;margin:25px 0 0;text-align:left}.ritual-policy-inline>strong{font-weight:400}.ritual-policy-inline>span{margin:0 11px;color:#5d6c50}.ritual-policy-inline>a{font-size:9px;margin-left:20px;color:#ae9b6b}.dragon-chamber~.lineage-policy{margin-top:50px;max-width:none}.dragon-chamber~.lineage-policy+.fine-print{max-width:880px}
 .ritual-outcome[hidden]{display:none}.ritual-outcome{position:absolute;inset:10px 0 24px;width:100%;min-height:0;z-index:5;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px 28px;background:radial-gradient(ellipse at 50% 50%,#10130ff7 30%,#10130fc9 56%,#10130f00 78%);animation:ritual-outcome-enter .9s cubic-bezier(.16,1,.3,1) both}.ritual-outcome-mark>.academy-mark{width:38px;height:38px;opacity:.65;margin-bottom:20px}.ritual-outcome>.eyebrow{font-size:7px;color:#a79770;line-height:2.2}.ritual-outcome>h2{font:25px/1.6 var(--serif);margin:12px 0;color:#d2c6ac}.ritual-result-grade{font:100px/1.12 Georgia;font-weight:400;color:var(--ritual-ink);text-shadow:0 1px #000;margin:-8px 0 5px}.ritual-result-grade[hidden]{display:none}.ritual-outcome>p{font:11px/2.3 var(--body);color:#9d9d80;max-width:340px;margin:8px 0 25px}.ritual-outcome>.button{font-size:11px;gap:30px}.ritual-revealed .dragon-seal{opacity:.12;transition:opacity .9s}.ritual-revealed .dragon-plate-grain{opacity:.025}.ritual-revealed .ritual-copy>h1{color:#b8b29e}.ritual-revealed .ritual-state-line{color:#c3ad7c}.ritual-has-error .ritual-state-line{color:#c5a27e}.ritual-in-progress .dragon-seal{pointer-events:none}.ritual-in-progress .dragon-metal{opacity:.85;stroke:#a99565}.ritual-in-progress .dragon-seal .academy-mark{opacity:1;filter:saturate(.6) brightness(1.02) drop-shadow(0 1px 2px #000)}[data-ritual-phase=contact] .dragon-seal{animation:seal-contact .5s cubic-bezier(.2,.7,.2,1) both}[data-ritual-phase=contact] .seal-contact-ring{animation:contact-ring 1.15s .12s ease-out both}[data-ritual-phase=trace] .dragon-awake,[data-ritual-phase=confirm] .dragon-awake,[data-ritual-phase=complete] .dragon-awake{opacity:.86}[data-ritual-phase=trace] .dragon-awake path{animation:dragon-inscribe 1.25s cubic-bezier(.24,.7,.3,1) both}[data-ritual-phase=trace] .dragon-awake .dragon-horn{animation-delay:.1s}[data-ritual-phase=trace] .dragon-awake .dragon-wing{animation-delay:.22s}[data-ritual-phase=trace] .dragon-awake .dragon-scales{animation-delay:.33s}[data-ritual-phase=trace] .dragon-awake .dragon-eye{animation:dragon-eye-wake .7s .8s both}[data-ritual-phase=confirm] .dragon-awake path,[data-ritual-phase=complete] .dragon-awake path{stroke-dashoffset:0}[data-ritual-phase=confirm] .dragon-awake .dragon-eye,[data-ritual-phase=complete] .dragon-awake .dragon-eye{opacity:1}[data-ritual-phase=confirm] .seal-bezel{box-shadow:0 10px 20px #0009,inset 0 0 0 1px #d3b67899,inset 0 0 0 5px #161b11,inset 0 0 0 6px #ae935e77,inset 0 0 0 10px #12180d;transform:translateY(-2px)}[data-ritual-grade=A]{--ritual-ink:#c1abd8}[data-ritual-grade=B]{--ritual-ink:#c3d6e0}[data-ritual-grade=C]{--ritual-ink:#c6a16a}[data-ritual-grade=D]{--ritual-ink:#aab5b9}[data-ritual-grade=S]{--ritual-ink:#e3cc96}.ritual-replay-button{font-size:11px;color:#c1aa78;display:inline-flex;align-items:center;gap:11px}.ritual-replay-button::before{content:'↻';font:16px Georgia}.identity-title-break{display:none}.lineage-result{position:relative;padding-left:20px;border-left:1px solid #b49c582b}.lineage-result::after{content:'';position:absolute;right:10px;top:5px;width:100px;height:145px;background:linear-gradient(135deg,transparent,#aa905608);border-right:1px solid #a48b4f22;pointer-events:none}.modal:has(.ritual-replay){max-width:1000px;padding:35px 45px}.ritual-replay>.dragon-chamber{margin:0;padding:15px 0 0;gap:0 35px;grid-template-columns:minmax(0,1fr) minmax(310px,400px)}.ritual-replay .ritual-copy>h1{font-size:30px}.ritual-replay .ritual-copy>.eyebrow{font-size:7px}.ritual-replay .ritual-description{font-size:12px}.ritual-replay .ritual-registration{margin:23px 0}.ritual-replay .ritual-copy-actions{margin-top:15px}.ritual-replay .ritual-copy-actions>p{font-size:11px}.ritual-replay .ritual-sequence{margin-top:25px}.ritual-replay .ritual-outcome{inset:5px 0 24px;width:100%;min-height:0;padding:20px}.ritual-replay .ritual-bottom-note{display:none}.ritual-replay .ritual-state-line{font-size:10px}.ritual-replay .ritual-sound-row{margin-top:15px}
 @keyframes dragon-inscribe{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes dragon-eye-wake{from{opacity:0}to{opacity:1}}@keyframes seal-contact{0%{transform:translateY(0) scale(1)}30%{transform:translateY(3px) scale(.977)}100%{transform:translateY(0) scale(1)}}@keyframes contact-ring{0%{transform:scale(.97);opacity:0}18%{opacity:.65}100%{transform:scale(1.25);opacity:0}}@keyframes ritual-outcome-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
 @media(max-width:1100px){.dragon-chamber{gap:0 35px;grid-template-columns:minmax(0,1fr) minmax(340px,410px)}.ritual-copy>h1{font-size:34px}.ritual-description{font-size:12px}.ritual-outcome{padding:25px 20px}.ritual-outcome>h2{font-size:23px}.ritual-copy-actions{gap:20px}.ritual-copy-actions>.text-link{font-size:9px}}
 @media(max-width:800px){.dragon-chamber{grid-template-columns:1fr;gap:0;max-width:580px;padding-top:20px}.ritual-copy{grid-row:1;padding-bottom:10px;max-width:520px}.ritual-tools{grid-row:3;grid-column:1;margin-top:25px;padding-bottom:0}.ritual-sequence{grid-row:4}.ritual-bottom-note{grid-row:5}.ritual-copy>h1{font-size:33px;margin-top:20px;margin-bottom:20px}.ritual-description{font-size:12px;max-width:480px}.ritual-registration{display:flex;align-items:center;gap:22px;margin:24px 0 20px}.ritual-registration>span{margin:0}.ritual-registration>strong{font-size:18px}.ritual-state-line{min-height:0}.ritual-copy-actions{margin:22px 0 0}.ritual-copy-actions>p{font-size:11px}.ritual-sound-row{margin-top:20px}.ritual-visual{grid-column:1;grid-row:2;width:100%;max-width:430px;margin:auto}.dragon-stage{max-width:430px;width:100%;margin:10px auto 0;padding-top:10px}.ritual-sequence{margin-top:28px;gap:20px;padding:21px 0}.ritual-sequence>li{grid-template-columns:25px 1fr;gap:7px 6px}.ritual-sequence strong{font-size:13px}.ritual-sequence small{font-size:5px}.ritual-sequence>li>span{font-size:10px}.ritual-outcome{inset:5px 0 25px;width:100%;animation:ritual-outcome-enter .75s cubic-bezier(.16,1,.3,1) both}.ritual-revealed .ritual-bottom-note{opacity:.6}.ritual-bottom-note .npc-note{margin-top:26px}.ritual-bottom-note .ritual-policy-inline{font-size:9px}.ritual-policy-inline>a{display:inline-block;margin-left:14px}.modal:has(.ritual-replay){max-width:620px;padding:32px}.ritual-replay>.dragon-chamber{grid-template-columns:1fr;gap:0}.ritual-replay .ritual-copy>h1{font-size:28px}.ritual-replay .ritual-copy{padding-bottom:0}.ritual-replay .dragon-stage{max-width:350px;margin-top:8px}.ritual-replay .ritual-copy-actions{display:none}.ritual-replay .ritual-registration{margin:18px 0}.ritual-replay .ritual-sound-row{margin-top:15px}.ritual-replay .ritual-sequence{margin-top:22px}.ritual-replay .ritual-visual{max-width:350px;min-height:400px}.ritual-replay .ritual-outcome{inset:5px 0 25px;width:100%}.ritual-replay .ritual-result-grade{font-size:95px}.ritual-replay .ritual-outcome>h2{font-size:22px}.ritual-replay .ritual-outcome-mark>.academy-mark{width:30px;height:30px;margin-bottom:12px}.ritual-replay .ritual-outcome>p{font-size:10px}.ritual-replay .ritual-outcome>.button{font-size:10px}.ritual-replay .ritual-stage-caption>small{display:none}}
 @media(max-width:480px){.identity-title-break{display:block}.dragon-chamber{padding-top:20px;margin-top:12px}.ritual-copy>.eyebrow{font-size:7px}.ritual-copy>h1{font-size:29px;line-height:1.8;letter-spacing:.04em;margin:20px 0 16px}.ritual-description{font-size:11px;line-height:2.25}.ritual-registration{margin-top:21px;margin-bottom:18px;padding-left:14px;gap:18px}.ritual-registration>span{font-size:8px}.ritual-registration>strong{font-size:16px}.ritual-state-line{font-size:10px;gap:9px;line-height:2.2}.ritual-sound-row{gap:17px;margin-top:18px}.ritual-sound{font-size:9px;gap:18px}.ritual-sound-row>span{font-size:7px}.ritual-copy-actions{gap:18px}.ritual-copy-actions>.button{font-size:10px}.dragon-stage{margin-top:12px}.ritual-scene-index{font-size:5px;margin-bottom:0}.dragon-seal .seal-touch-text{font-size:11px;top:calc(100% + 25px)}.dragon-seal .seal-press-hint{font-size:5px;top:calc(100% + 54px)}.ritual-engraving{bottom:0}.ritual-engraving>span{font-size:12px}.ritual-engraving>small{font-size:4px;margin-top:6px}.ritual-stage-caption{padding-top:16px;gap:8px;font-size:7px}.ritual-stage-caption>small{font-size:4px;line-height:3.1}.ritual-sequence{margin-top:22px;gap:12px;padding:19px 0}.ritual-sequence>li{grid-template-columns:1fr;gap:7px}.ritual-sequence>li>span{grid-row:auto;font-size:9px}.ritual-sequence strong{font-size:12px}.ritual-sequence small{font-size:5px}.ritual-bottom-note .npc-note{margin-top:22px}.ritual-policy-inline>span{margin:0 7px}.ritual-bottom-note .ritual-policy-inline{font-size:8px;line-height:2.3}.ritual-policy-inline>a{font-size:8px;margin-left:0;display:block;margin-top:10px}.dragon-chamber~.lineage-policy{margin-top:35px}.ritual-visual{min-height:405px}.ritual-outcome{inset:5px 0 25px;min-height:0;padding:20px 12px}.ritual-outcome>h2{font-size:21px;margin:14px 0}.ritual-outcome>.eyebrow{font-size:6px}.ritual-result-grade{font-size:95px}.ritual-outcome-mark>.academy-mark{width:31px;height:31px;margin-bottom:15px}.ritual-outcome>p{font-size:10px;margin-bottom:20px}.ritual-outcome>.button{font-size:10px;gap:24px}.ritual-replay-button{font-size:10px}.modal:has(.ritual-replay){padding:33px 22px;width:calc(100vw - 24px)}.ritual-replay .ritual-copy>h1{font-size:25px}.ritual-replay .ritual-description{font-size:10px}.ritual-replay .ritual-copy>.eyebrow{font-size:6px}.ritual-replay .ritual-state-line{font-size:9px}.ritual-replay .ritual-outcome{inset:0 0 20px;min-height:0;padding:18px 12px}.ritual-replay .ritual-outcome>h2{font-size:20px}.ritual-replay .ritual-result-grade{font-size:80px}.ritual-replay .ritual-outcome>.eyebrow{font-size:5px}.ritual-replay .ritual-outcome>p{font-size:9px}.ritual-replay .ritual-outcome>.button{font-size:9px}.lineage-result::after{width:70px}}
 
 @media(prefers-reduced-motion:reduce){.dragon-chamber *{animation:none!important;transition:none!important}.dragon-awake path{stroke-dashoffset:0}.dragon-seal.awakening-seal:hover:not(:disabled){transform:none}}
 .reduce-motion .dragon-chamber *{animation:none!important;transition:none!important}.reduce-motion .dragon-awake path{stroke-dashoffset:0}.reduce-motion .dragon-seal.awakening-seal:hover:not(:disabled){transform:none}
}
