/* v7: original fictional presenters; scoped to birth inputs and the reveal only. */
.oraclys-birth-presenter{display:flex;align-items:start;gap:18px;flex-wrap:wrap;margin:6px 0 16px;padding-bottom:14px;border-bottom:1px solid #aa92663b;text-align:left}
.oraclys-gender{border:0;padding:0;margin:0;min-width:0;flex:1 1 280px}
.oraclys-gender legend{font-family:inherit;font-size:13px;line-height:1.5;padding:0;margin:0 0 8px}
.oraclys-gender-options{display:flex;flex-wrap:wrap;gap:7px}
.oraclys-gender-options label{position:relative;display:block;cursor:pointer;max-width:100%}
.oraclys-gender-options input{position:absolute;width:1px;height:1px;opacity:0}
.oraclys-gender-options span{display:flex;min-height:42px;align-items:center;box-sizing:border-box;padding:8px 14px;border:1px solid #ac95665c;border-radius:10px;font:13px/1.45 system-ui,sans-serif;color:inherit;background:#bda77d09}
.oraclys-gender-options input:checked+span{border-color:#b09358;background:#c5ac7730;box-shadow:inset 0 0 0 1px #c5ac774d}
.oraclys-gender-options input:focus-visible+span{outline:2px solid #b09358;outline-offset:3px}
.oraclys-presenter-preference{flex:1 1 210px;font:12px/1.6 system-ui,sans-serif;min-width:0;max-width:100%;padding-top:4px}
.oraclys-presenter-preference summary{padding:8px 0;cursor:pointer;color:inherit}
.oraclys-presenter-preference label{display:block;margin:7px 0 5px}
.oraclys-presenter-preference select{box-sizing:border-box;width:100%;max-width:310px;min-height:42px;padding:8px;border:1px solid #a58a5c70;border-radius:8px;background:transparent;color:inherit;font:inherit}
.oraclys-presenter-preference option{background:#f4efe6;color:#393a38}
.oraclys-presenter-preference p{margin:6px 0 0;font-size:11px;line-height:1.6;opacity:.8}
.oraclys-cast-portrait{display:block;flex-shrink:0;width:38px;height:57px;aspect-ratio:2/3;border-radius:9px;background-image:var(--cast-image);background-size:cover;background-position:center top;background-repeat:no-repeat;background-color:#25202b;box-shadow:inset 0 0 0 1px #d9be8736}
.has-cast .oraclys-lab-scene{height:auto;padding:0;margin-top:14px;margin-bottom:14px}
.has-cast .oraclys-lab-scene:before,.has-cast .oraclys-lab-connections,.has-cast .oraclys-lab-aura,.has-cast .oraclys-lab-sphere,.has-cast .oraclys-lab-depth{display:none}
.oraclys-council-frame{position:relative;isolation:isolate;overflow:hidden;margin:0;width:100%;height:clamp(160px,28dvh,250px);border-radius:14px;border:1px solid #c4a77335;background:#08070c;box-sizing:border-box}
.oraclys-council-image{display:block;width:100%;height:100%;object-fit:contain}
.oraclys-council-frame:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 12% 26% at 50% 75%,#d2a4f027,transparent 80%);mix-blend-mode:screen;animation:oraclys-crystal-shimmer 4.5s ease-in-out infinite}
.has-cast .oraclys-lab-ring{position:relative;box-sizing:border-box;left:auto;top:auto;transform:none;width:100%;height:48px;padding:8px 102px 8px 0;perspective:none;text-align:left}
.has-cast .oraclys-lab-core-label{position:static;display:block;text-align:left;font:10px/1.5 system-ui,sans-serif;letter-spacing:.08em}
.has-cast .oraclys-lab-count{--number-size:32px;inset:5px 4px auto auto;display:flex;gap:6px;align-items:baseline;justify-content:end;width:95px;height:38px;font-size:32px}
.has-cast .oraclys-lab-count>span{position:static;transform:none;font-size:11px}
.oraclys-cast-progress{height:2px;background:#c3a57525;margin-top:12px;border-radius:2px;overflow:hidden}
.oraclys-cast-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#9f7f4e,#f6dfaf);box-shadow:0 0 12px #f7ca8188}
.has-cast .oraclys-lab-traditions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.has-cast .oraclys-lab-school{position:static;width:auto;height:auto;min-height:65px;padding:5px;display:grid;grid-template-columns:35px minmax(0,1fr);gap:6px;border-radius:10px;color:#c3b7cd}
.has-cast .oraclys-lab-school .oraclys-cast-portrait{width:35px;height:52.5px;opacity:.78;transition:opacity .8s,box-shadow .8s}
.has-cast .oraclys-lab-school b{font-size:11px;line-height:1.4;color:#e4d3b4;letter-spacing:0}
.has-cast .oraclys-lab-school small{display:block;font-size:9px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;overflow:visible;color:#a698b0}
.has-cast .oraclys-lab-school.is-lit .oraclys-cast-portrait{opacity:1;box-shadow:0 0 12px #d6b77738}
.has-cast .oraclys-lab-school.is-lit b{color:#ffe4b9}
.has-cast .oraclys-lab-steps{font-size:10px;gap:8px}
.has-cast .oraclys-lab-steps li{padding-top:7px}
.has-cast .oraclys-lab-steps li:before{margin-bottom:2px}
.has-cast .oraclys-lab-footer{margin-top:14px}
.has-cast .oraclys-lab-note{margin-top:10px}
.oraclys-reader-card{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid #bda27336;text-align:left;min-width:0}
.oraclys-reader-card>div{min-width:0}
.oraclys-reader-card p{font:10px/1.5 system-ui,sans-serif;color:inherit;opacity:.7;margin:0 0 3px}
.oraclys-reader-card strong{display:block;font-size:18px;font-weight:400;line-height:1.5;color:inherit}
.oraclys-reader-card div>span{display:block;font:11px/1.65 system-ui,sans-serif;opacity:.75;margin-top:3px}
.oraclys-reader-card.is-full .oraclys-cast-portrait{width:62px;height:93px;border-radius:12px}
.oraclys-reader-card.is-full strong{color:#e8cf9f;font-size:23px}
.is-story .oraclys-story-presenter{animation:oraclys-theme-arrive .8s ease .2s both}
@keyframes oraclys-crystal-shimmer{50%{opacity:.25}}
@media(max-width:760px){
 .has-cast .oraclys-lab-reveal-inner{padding:18px 12px 14px}
 .has-cast .oraclys-lab-scene{margin:10px 0}
 .oraclys-council-frame{height:clamp(145px,23dvh,190px);border-radius:10px}
 .has-cast .oraclys-lab-traditions{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
 .has-cast .oraclys-lab-school{display:flex;flex-direction:column;justify-content:start;gap:3px;text-align:center;padding:5px 2px;min-height:0}
 .has-cast .oraclys-lab-school .oraclys-cast-portrait{width:28px;height:42px;border-radius:6px}
 .has-cast .oraclys-lab-school b{font-size:9px;line-height:1.25}
 .has-cast .oraclys-lab-school small{font-size:8px;line-height:1.3;margin-top:3px}
 .has-cast .oraclys-lab-ring{height:43px;padding-top:5px}
 .has-cast .oraclys-lab-count{--number-size:28px;font-size:28px;top:2px}
 .has-cast .oraclys-lab-steps{font-size:9px}
 .has-cast .oraclys-lab-footer{margin-top:10px}
 .has-cast .oraclys-lab-note{font-size:9px;line-height:1.55}
 .oraclys-birth-presenter{gap:6px;margin:4px 0 10px;padding-bottom:9px}
 .oraclys-gender{flex-basis:100%}
 .oraclys-gender-options{gap:5px}
 .oraclys-gender-options span{font-size:12px;padding:7px 11px}
 .oraclys-presenter-preference{flex-basis:100%;padding:0}
 .oraclys-presenter-preference summary{font-size:11px;padding:5px 0}
 .oraclys-reader-card.is-full .oraclys-cast-portrait{width:48px;height:72px}
 .oraclys-reader-card.is-full strong{font-size:20px}
 .oraclys-reader-card{margin-bottom:12px;padding-bottom:10px}
}
@media(max-height:650px){.has-cast .oraclys-lab-reveal-inner{padding-top:14px}.oraclys-council-frame{height:145px}.has-cast .oraclys-lab-caption{margin-top:5px}.has-cast .oraclys-lab-eyebrow{margin-bottom:4px}}
@media print{.oraclys-birth-presenter,.oraclys-reader-card{display:none!important}}
