.affinity-page{--affinity-hue:175;max-width:1280px}.affinity-page h1,.affinity-page h2{outline:none}.affinity-start{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;min-height:70vh;gap:3rem}.affinity-start h1{font-size:clamp(3.2rem,6.5vw,6.6rem);line-height:1.02;letter-spacing:-.045em}.affinity-start h1 em{color:#d6b775}.affinity-start p{max-width:580px;line-height:1.8}.affinity-start .button{margin:1rem .5rem 0 0}.affinity-note{font-size:.875rem!important;color:#a4b2b2;line-height:1.65}.affinity-start-art{position:relative;display:grid;place-items:center;min-height:420px;background:radial-gradient(ellipse,hsl(var(--affinity-hue) 45% 17% / .8),transparent 68%)}.affinity-seal{position:relative;width:260px;aspect-ratio:1;display:grid;place-items:center;color:hsl(var(--affinity-hue) 75% 70%);filter:drop-shadow(0 0 30px currentColor)}.affinity-seal i{position:absolute;inset:0;border:1px solid currentColor;transform:rotate(45deg);animation:affinity-orbit 24s linear infinite}.affinity-seal i:nth-child(2){inset:25px;border-radius:50%;border-style:dashed;animation-direction:reverse}.affinity-seal i:nth-child(3){inset:65px;animation-duration:12s}.affinity-seal span{font-size:5rem}.affinity-art-label{position:absolute;bottom:20px;font-size:.875rem;letter-spacing:.12em;color:#a4b2b2}.affinity-trial{max-width:920px;margin:2rem auto 5rem;min-height:65vh}.affinity-top,.affinity-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.875rem;flex-wrap:wrap}.affinity-trial progress{width:100%;height:3px;margin:1.5rem 0 2.5rem;accent-color:#dabd7d}.affinity-trial h2{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.3;max-width:850px;margin:1rem 0 2rem}.affinity-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.affinity-option{display:flex;gap:1rem;align-items:center;text-align:left;min-height:125px;padding:1.6rem;background:linear-gradient(125deg,#152528,#0b1419);color:#edf0e9;border:1px solid #3a4d4f;border-radius:4px;transition:transform .2s,border-color .2s,box-shadow .2s;cursor:pointer}.affinity-option span{color:#d6b775;font-size:.875rem}.affinity-option strong{font-weight:400;font-size:1.05rem;line-height:1.6;flex:1}.affinity-option b{color:#d6b775}.affinity-option:hover,.affinity-option:focus-visible,.affinity-option.selected{border-color:#d6b775;transform:translateY(-3px);box-shadow:0 0 30px #c49e5420;outline:2px solid transparent}.affinity-option.chosen{transform:scale(.97);box-shadow:inset 0 0 60px #d6b77535}.affinity-bottom{margin-top:1.8rem;color:#a4b2b2}.affinity-cinema{isolation:isolate;position:relative;overflow:hidden;min-height:620px;height:75vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,hsl(var(--affinity-hue) 60% 17%),#03080d 68%);text-align:center}.affinity-cinema .affinity-seal{position:absolute;opacity:.65;animation:affinity-charge 1.6s ease-in both}.affinity-rays{position:absolute;inset:-50%;opacity:.2;background:repeating-conic-gradient(from 0deg,transparent 0deg 15deg,hsl(var(--affinity-hue) 80% 65% / .5) 15.5deg 16deg,transparent 16.5deg 30deg);animation:affinity-orbit 45s linear infinite}.cinema-bars:before,.cinema-bars:after{content:'';position:absolute;left:0;right:0;height:8%;background:#020508;z-index:3}.cinema-bars:before{top:0}.cinema-bars:after{bottom:0}.affinity-scene-copy{position:relative;z-index:2;max-width:900px;padding:2rem;text-shadow:0 3px 25px #000}.affinity-scene-copy h2{font-size:clamp(2.4rem,6vw,6rem);line-height:1.07;letter-spacing:-.03em;color:#f3eee3}.affinity-scene-copy p{font-size:1.1rem}.affinity-skip{position:absolute;bottom:10%;right:2rem;z-index:4}.phase-break .affinity-seal{animation:affinity-impact 1.2s ease-out both}.phase-break .affinity-scene-copy{animation:affinity-title .8s both}.phase-discipline .affinity-seal{animation:affinity-orbit 8s linear infinite;transform:scale(1.4);opacity:.25}.phase-discipline .affinity-scene-copy{animation:affinity-discipline 1s both}.mode-fire .affinity-rays,.mode-surge .affinity-rays{filter:blur(3px)}.mode-impact.phase-break{animation:affinity-recoil .5s}.mode-scan .affinity-rays,.mode-lattice .affinity-rays{background:repeating-linear-gradient(0deg,transparent 0 45px,hsl(var(--affinity-hue) 70% 65% / .25) 46px 47px)}.mode-time.phase-break .affinity-rays{animation-play-state:paused}.mode-slash .affinity-seal i{border-width:3px 0}.mode-bind .affinity-seal i{border-style:dotted}.mode-trajectory .affinity-rays{transform:skew(-20deg)}.discipline-impact .affinity-seal{border-radius:50%;box-shadow:0 0 100px hsl(var(--affinity-hue) 70% 50% / .5)}.discipline-scan .affinity-seal{filter:drop-shadow(0 0 35px #afffeb)}.affinity-result-head{position:relative;padding:4rem 3rem;text-align:center;border-top:1px solid hsl(var(--affinity-hue) 60% 55%);background:radial-gradient(ellipse at top,hsl(var(--affinity-hue) 50% 18%),transparent 75%)}.affinity-result-head h1{font-size:clamp(3rem,7vw,6rem);line-height:1.1;margin:1rem 0}.affinity-result-line{font-size:1.3rem}.affinity-result-discipline{display:inline-block;margin:1rem 0;padding:.7rem 1.2rem;border:1px solid hsl(var(--affinity-hue) 45% 45%);color:hsl(var(--affinity-hue) 80% 80%);font-size:1.2rem}.affinity-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.affinity-result-grid article{padding:2rem;background:#101c21;border:1px solid #304044}.affinity-result-grid p{line-height:1.8}.affinity-result-grid h3{margin-top:2rem}.affinity-stage{font-size:.875rem;color:#d6b775}.affinity-axis-list{margin-top:2rem}.affinity-axis-list>div{margin:1rem 0}.affinity-axis-list>div>div,.affinity-scores>div{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem}.affinity-axis-list meter{width:100%;height:10px;accent-color:#d6b775}.affinity-scores>div{padding:.6rem 0;border-bottom:1px solid #35464a}.affinity-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0}.affinity-codex{margin:3rem 0}.affinity-codex summary,.affinity-result details summary{cursor:pointer;padding:1rem 0;color:#d6b775}.affinity-index{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.affinity-index article{padding:1rem;border-top:2px solid hsl(var(--affinity-hue) 65% 60%);background:#111e23}.affinity-index p{font-size:.875rem;min-height:4rem}.affinity-index button{width:100%;display:flex;justify-content:space-between;padding:.8rem .4rem;background:transparent;color:#cfdbdb;border:0;border-bottom:1px solid #2c3d40;text-align:left;font-size:.875rem;cursor:pointer}.affinity-index button:hover{color:#f5d78d;background:#ffffff08}.affinity-index button:focus-visible{outline:2px solid #d6b775}.affinity-invite{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:radial-gradient(ellipse at right,#193a41,#101b21 75%);border:1px solid #577579;padding:2rem;margin:2rem 0}.affinity-invite h2{margin:.5rem 0}.affinity-invite p{max-width:650px}.affinity-invite .button{flex-shrink:0}@keyframes affinity-orbit{to{rotate:360deg}}@keyframes affinity-charge{from{scale:.6;filter:blur(10px)}to{scale:1.2;filter:blur(0)}}@keyframes affinity-impact{0%{scale:.3;opacity:1}70%{scale:2.7;opacity:.45}100%{scale:2.4;opacity:.2}}@keyframes affinity-title{from{transform:scale(1.15);opacity:0;filter:blur(8px)}to{transform:scale(1);opacity:1;filter:blur(0)}}@keyframes affinity-discipline{from{transform:translateY(25px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes affinity-recoil{0%,100%{transform:translate(0)}25%{transform:translateY(5px)}50%{transform:translateY(-3px)}}@media(max-width:800px){.affinity-start{grid-template-columns:1fr;gap:1rem}.affinity-start-art{min-height:230px;grid-row:1}.affinity-start-art .affinity-seal{width:150px}.affinity-art-label{display:none}.affinity-options,.affinity-result-grid{grid-template-columns:1fr}.affinity-option{min-height:95px;padding:1.2rem}.affinity-cinema{min-height:520px;height:70vh}.affinity-index{grid-template-columns:1fr 1fr}.affinity-result-head{padding:2rem 1rem}.affinity-invite{display:block}.affinity-invite .button{margin-top:1rem}}@media(max-width:440px){.affinity-index{grid-template-columns:1fr}.affinity-top{font-size:.875rem}.affinity-result-grid article{padding:1.2rem}.affinity-cinema .affinity-seal{width:180px}}@media(prefers-reduced-motion:reduce){.affinity-page *{animation:none!important;transition:none!important}.affinity-option:hover{transform:none}}html[data-motion=quiet] .affinity-page *{animation:none!important;transition:none!important}
