.oh-reserve{--oh-metal:#94816a;--oh-ink:var(--ink,#e2ddd1);--oh-muted:var(--muted,#aaa598);--oh-magic:#91c7b1;position:relative;color:var(--oh-ink);border:1px solid #60594d;border-radius:6px 6px 17px 17px;background:repeating-linear-gradient(100deg,#1f222400 0 11px,#80715b06 12px 13px),linear-gradient(150deg,#28272a,#191f22 52%,#212326);box-shadow:inset 0 0 0 4px #13181b,inset 0 0 0 5px #6e614b55,0 10px 24px #10121444;isolation:isolate}.oh-reserve:after,.oh-reserve:before{content:"";position:absolute;top:7px;width:23px;height:23px;border:2px solid #8b7e67;border-radius:3px;transform:rotate(45deg);background:radial-gradient(circle,#aec4ac 0 2px,#373b38 3px 7px,transparent 8px);pointer-events:none;z-index:-1}.oh-reserve:before{left:7px}.oh-reserve:after{right:7px}.oh-header{display:flex;align-items:center;gap:17px;padding:27px 29px 23px}.oh-header>div{flex:1;min-width:0}.oh-header h2{font-family:var(--font-serif,Georgia,serif);font-size:clamp(21px,2vw,27px);line-height:1.25;margin:3px 0 6px;color:#eee5d3;font-weight:500}.oh-header p{font-size:12px;color:var(--oh-muted);max-width:60ch;line-height:1.6}.oh-eyebrow,.oh-step{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b4a386}.oh-header-seal{display:grid;place-items:center;width:49px;height:59px;flex-shrink:0;color:#c1b59e;background:linear-gradient(110deg,#383b39,#232725);border:1px solid #8a7a62;clip-path:polygon(10% 0,90% 0,100% 16%,90% 82%,50% 100%,10% 82%,0 16%)}.oh-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:7px 12px;border:1px solid #817058;border-radius:3px;background:linear-gradient(#353a38,#252a29);color:#dfd5c3;font-size:12px;box-shadow:inset 0 0 0 2px #1d2525,inset 0 3px 0 #a4937422;transition:background-color .15s,transform .13s cubic-bezier(.2,.8,.2,1),border-color .15s;white-space:nowrap}.oh-button-primary{background:linear-gradient(#436758,#2e493e);border-color:#8aab8a;color:#e1eed9;box-shadow:inset 0 0 0 2px #24382f,inset 0 3px 0 #b7c99d33}.oh-button:active:not(:disabled),.oh-icon-button:active:not(:disabled){transform:translateY(1px)}.oh-button:disabled,.oh-icon-button:disabled,.oh-portrait-button:disabled,.oh-text-button:disabled{opacity:.42;cursor:not-allowed}.oh-reserve button:focus-visible,.oh-reserve input:focus-visible{outline:2px solid #a9d7bb;outline-offset:4px}.oh-mode-switch{display:flex;align-items:stretch;gap:6px;margin:0 24px;border-top:1px solid #645d4d;border-bottom:1px solid #645d4d;padding:10px 0}.oh-mode-switch>button{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 16px;border:1px solid transparent;border-radius:4px;color:#b7b4a9;transition:background-color .18s,border-color .18s}.oh-mode-switch>button>span{font-family:var(--font-serif,Georgia,serif);font-size:16px}.oh-mode-switch small{display:block;font-family:inherit;font-size:10px;color:#a7a89c;margin-top:3px}.oh-mode-switch>button.is-active{background:#344038;border-color:#6d856d;color:#e4e3cf;box-shadow:inset 3px 0 0 #9db092}.oh-mode-switch>button:disabled{cursor:not-allowed}.oh-counts{display:flex;gap:19px;margin-left:auto;align-items:center;padding:0 6px;font-size:11px;color:#a9a698}.oh-counts b{display:block;font-size:22px;line-height:1.3;font-family:var(--font-serif,Georgia,serif);font-variant-numeric:tabular-nums;color:#d6cfb9;font-weight:400}.oh-manual{padding:5px 25px 24px}.oh-section-title{display:flex;align-items:baseline;gap:12px;justify-content:space-between;margin:20px 0 12px}.oh-ritual-side h3,.oh-section-title h3{font-family:var(--font-serif,Georgia,serif);font-size:19px;color:#ddd3bd;line-height:1.3}.oh-section-title>span{font-size:10px;color:#aaa596}.oh-hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:12px}.oh-hero-card{position:relative;min-width:0;padding:15px;border:1px solid #655d4d;border-radius:3px 3px 9px 3px;background:linear-gradient(115deg,#32342f,#262b2c 70%);box-shadow:inset 0 0 0 3px #151a1944}.oh-hero-card:before{content:"";position:absolute;top:6px;right:6px;width:10px;height:10px;border-top:1px solid #aa9270;border-right:1px solid #aa9270;pointer-events:none}.oh-hero-heading{display:flex;align-items:center;gap:13px;margin-bottom:16px;min-width:0}.oh-portrait{display:inline-flex;position:relative;align-items:center;justify-content:center;width:58px;height:68px;flex-shrink:0;overflow:hidden;border:2px solid #9a896e;border-radius:12px 12px 24px 24px;background:linear-gradient(160deg,#445455,#1c292a);box-shadow:0 3px 6px #0c121655,inset 0 0 0 2px #202929}.oh-portrait:after{content:"";position:absolute;inset:3px;border:1px solid #b5a48766;border-radius:8px 8px 20px 20px;pointer-events:none}.oh-portrait img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 25%;object-position:center 25%}.oh-silhouette{display:grid;place-items:center;width:100%;height:100%;color:#b4c5b5;background:repeating-linear-gradient(135deg,transparent 0 6px,#91a69609 7px 8px)}.oh-portrait-button{flex-shrink:0;display:flex;border-radius:13px 13px 25px 25px}.oh-hero-name{flex:1;min-width:0}.oh-hero-name strong{display:block;font-family:var(--font-serif,Georgia,serif);font-size:17px;line-height:1.3;overflow-wrap:anywhere;font-weight:500}.oh-hero-name>span{display:block;font-size:10px;color:#b7b3a4;margin-top:4px;line-height:1.5}.oh-hero-name small{display:flex;align-items:center;gap:5px;font-size:10px;color:#c6b997;margin-top:7px}.oh-hero-name small.is-issued{color:#a7c2b7}.oh-icon-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid #645e50;border-radius:3px;color:#b1ab97}.oh-assign-controls{display:flex;align-items:stretch;gap:8px}.oh-assign-controls .inp{height:36px!important;background:#171e1f!important;border-color:#615c50!important;font-size:12px!important}.oh-text-button{display:inline-flex;gap:6px;align-items:center;color:#b4c6b6;font-size:11px;text-decoration:underline;text-decoration-color:#6a807077;text-underline-offset:4px}.oh-return{margin-top:12px;color:#a99d86;font-size:10px}.oh-empty-line{font-size:12px;color:var(--oh-muted);padding:8px 0}.oh-help{align-items:center;color:#b4bbaa;padding-top:15px}.oh-error,.oh-help{display:flex;gap:9px;font-size:12px}.oh-error{align-items:flex-start;margin:16px 25px 0;padding:12px 15px;border:1px solid #a17462;background:#502d2444;color:#e1bbaa}.oh-error>span{flex:1}.oh-loading{justify-content:center;gap:12px;min-height:190px;color:#bcb6a3;font-size:13px}.oh-footer,.oh-loading{display:flex;align-items:center}.oh-footer{gap:8px;min-height:42px;margin:0 24px;padding:11px 0 14px;border-top:1px solid #655e4c;font-size:10px;color:#9e9e8e;line-height:1.5}.oh-footer>span{flex:1}.oh-ritual{display:grid;grid-template-columns:minmax(170px,1fr) minmax(320px,1.85fr) minmax(185px,1.1fr);gap:19px;padding:24px 25px;align-items:start}.oh-ritual-side{padding-top:13px;min-width:0}.oh-ritual-side h3{margin:7px 0 17px}.oh-ritual-side>p{font-size:11px;line-height:1.7;color:#adae9e;margin-top:12px}.oh-ritual-side .inp{background:#171f21!important;border-color:#6d7460!important;height:38px!important;font-size:12px!important}.oh-player-register{margin-top:20px;border-top:1px solid #655d4e;border-bottom:1px solid #655d4e;padding:8px 0}.oh-player-register>button{display:flex;align-items:center;gap:10px;padding:10px 8px;color:#b6b9a7;font-size:12px;border-left:2px solid transparent}.oh-player-register>button.is-chosen{border-left-color:#98bfa4;background:#6fa38c15;color:#e2e9d5}.oh-player-register small{display:block;font-size:10px;color:#9eaa9b;margin-top:4px}.oh-ritual-note{display:flex;align-items:flex-start;gap:10px;margin-top:22px;color:#c5bfa7;font-family:var(--font-serif,Georgia,serif);font-size:15px}.oh-ritual-note small{display:block;font-family:inherit;font-size:11px;line-height:1.65;color:#a6ad9e;margin-top:8px}.oh-pool-actions{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:10px;color:#aab6a5}.oh-pool-actions>span{margin-right:auto;font-variant-numeric:tabular-nums}.oh-pool-actions button{font-size:10px}.oh-candidate-list{max-height:365px;overflow-y:auto;overscroll-behavior:contain;padding-right:5px;scrollbar-width:thin;scrollbar-color:#625f50 transparent}.oh-candidate-list label{display:flex;align-items:center;gap:9px;border:1px solid #615c4d77;background:#20282a;padding:9px 8px;margin-bottom:7px;cursor:pointer;border-radius:2px 2px 6px 2px}.oh-candidate-list label.is-selected{border-color:#8baa8277;background:#34413788}.oh-candidate-list input{accent-color:#9ebd91;width:14px;height:14px;flex-shrink:0}.oh-candidate-list .oh-portrait{width:36px;height:43px;border-width:1px;border-radius:7px 7px 13px 13px}.oh-candidate-list .oh-portrait:after{inset:2px;border-radius:5px 5px 10px 10px}.oh-candidate-list label>span:last-child{font-size:12px;line-height:1.4;min-width:0;overflow-wrap:anywhere}.oh-candidate-list small{display:block;font-size:10px;color:#aeb8a2;margin-top:3px}.oh-candidate-list .oh-silhouette svg{width:19px;height:19px}.oh-pool-hint{font-size:10px!important}.oh-wheel-stage{min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.oh-wheel-caption>span{display:block;font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#a8b8a6}.oh-wheel-caption>strong{display:block;font-family:var(--font-serif,Georgia,serif);font-size:20px;font-weight:400;line-height:1.4;margin-top:7px;color:#d4ddc4}.oh-wheel{position:relative;--orbit:clamp(120px,13.4vw,175px);width:min(100%,480px);aspect-ratio:1;margin:13px 0 4px;isolation:isolate}.oh-ironwork{inset:0;width:100%;height:100%;filter:drop-shadow(0 10px 10px #0007)}.oh-ironwork,.oh-wheel-halo{position:absolute;pointer-events:none}.oh-wheel-halo{inset:11%;border-radius:50%;box-shadow:0 0 25px 7px #79bfa423,inset 0 0 30px #7ca68e25;opacity:.35;transition:opacity .24s}.is-revealed .oh-wheel-halo,.is-spinning .oh-wheel-halo{opacity:1}.oh-rotor{position:absolute;inset:0;transform-origin:center;pointer-events:none}.is-spinning .oh-rotor{will-change:transform}.oh-sectors{width:100%;height:100%;position:absolute;inset:0}.oh-wheel-hero{position:absolute;display:flex;flex-direction:column;align-items:center;width:19%;transform:translate(-50%,-50%);gap:4px}.oh-wheel-hero>.oh-portrait{width:clamp(30px,4.2vw,51px);height:clamp(36px,5vw,61px);border-radius:10px 10px 19px 19px}.oh-wheel-hero>span:last-child{font-family:var(--font-serif,Georgia,serif);font-size:11px;line-height:1.1;color:#dbe0c9;text-shadow:0 1px 3px #0e1618;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.oh-wheel-hero.is-small{width:10%;gap:3px}.oh-wheel-hero.is-small>.oh-portrait{width:32px;height:38px;border-width:1px}.oh-wheel-hero.is-small>span:last-child{font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.08em}.oh-wheel-hero.is-small .oh-silhouette svg{width:18px}.oh-candidate-number{font-family:ui-monospace,monospace;font-size:9px;color:#cad5b9}.oh-pointer{position:absolute;width:10%;height:15%;top:0;left:45%;filter:drop-shadow(0 2px 3px #0008);pointer-events:none;z-index:2}.oh-winning-sector{fill:#385a4b;stroke:#b8d2a6;stroke-width:2}.oh-wheel-hero.is-winner>.oh-portrait{border-color:#d2e0b6;box-shadow:0 0 13px #b9df9e66}.oh-hub{position:absolute;inset:36%;display:grid;place-items:center;border-radius:50%;border:2px solid #ab9172;background:radial-gradient(circle at 40% 35%,#4c5a4e,#202929 68%);box-shadow:inset 0 0 0 5px #202827,inset 0 0 0 6px #97846c77,0 0 0 4px #1a2028aa,0 7px 12px #0007}.oh-spin-seal{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:100%;height:100%;border-radius:50%;color:#d9e3c7;font-family:var(--font-serif,Georgia,serif);font-size:14px}.oh-spin-seal:disabled{cursor:default;color:#9fae9d}.oh-spin-seal:not(:disabled){cursor:pointer}.oh-spin-seal:focus-visible{outline:2px solid #b6dbad;outline-offset:6px}.oh-spin-seal span{font-size:12px;line-height:1.3;max-width:8ch}.oh-winner-portrait{width:78%;height:86%;border-radius:13px 13px 25px 25px;border-color:#b0c4a2;box-shadow:0 0 17px #b5d2aa55;animation:oh-winner-reveal .26s cubic-bezier(.16,1,.3,1) both}.oh-magic-motes{position:absolute;inset:5%;pointer-events:none;opacity:0;transition:opacity .18s}.is-revealed .oh-magic-motes,.is-spinning .oh-magic-motes{opacity:1}.oh-magic-motes i{position:absolute;left:50%;top:50%;width:4px;height:4px;background:#c3e3be;box-shadow:0 0 8px #9ed1b1;border-radius:50%;transform:rotate(var(--a)) translateY(calc(-1 * var(--orbit)))}.is-spinning .oh-magic-motes i{animation:oh-orbit-spark 1.4s cubic-bezier(.3,0,.7,1) var(--delay) infinite}.oh-wheel-status{min-height:92px;max-width:100%;display:flex;align-items:center;flex-direction:column;gap:8px;margin-top:5px;padding:8px 0 0;font-size:11px;color:#adbda6}.oh-wheel-status>strong{font-family:var(--font-serif,Georgia,serif);font-size:24px;line-height:1.2;color:#e6e6cc;font-weight:400;overflow-wrap:anywhere}.oh-wheel-status>small{font-size:10px;color:#909f93;max-width:36ch;line-height:1.6}.oh-result-label{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#aad0af}.oh-wheel-status .oh-button{margin-top:6px}.oh-player-register>button{width:100%;text-align:left}.oh-player-register>button:disabled{cursor:default}@keyframes oh-winner-reveal{0%{transform:translateY(4px) scale(.94);opacity:.25}to{transform:none;opacity:1}}@keyframes oh-orbit-spark{0%{transform:rotate(var(--a)) translateY(calc(-.94 * var(--orbit))) scale(.5);opacity:.2}55%{opacity:.85}to{transform:rotate(calc(var(--a) + 30deg)) translateY(calc(-1.09 * var(--orbit))) scale(1);opacity:0}}@media(hover:hover) and (pointer:fine){.oh-button:hover:not(:disabled){border-color:#c1aa83;background-color:#3b4b42}.oh-icon-button:hover:not(:disabled){color:#e1d9bd;border-color:#b2a080}.oh-mode-switch>button:hover:not(:disabled){background:#55665322}.oh-candidate-list label:hover{border-color:#adbf94}.oh-spin-seal:hover:not(:disabled){background:#87c6a31a}.oh-text-button:hover:not(:disabled){color:#e6e7ca}}@media(min-width:1700px){.oh-ritual{gap:28px}.oh-candidate-list{max-height:430px}}@media(max-width:1000px){.oh-ritual{grid-template-columns:1fr 1.75fr;gap:20px}.oh-candidate-side{grid-column:1/-1}.oh-candidate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:220px}.oh-candidate-list label{margin:0}.oh-counts{gap:10px}}@media(max-width:640px){.oh-header{padding:22px 18px 18px;gap:12px;flex-wrap:wrap}.oh-header>div{min-width:calc(100% - 70px)}.oh-header>.oh-button{margin-left:61px}.oh-header h2{font-size:22px}.oh-mode-switch{margin:0 15px;flex-wrap:wrap;gap:4px}.oh-mode-switch>button{flex:1;padding:9px 6px;gap:7px}.oh-mode-switch>button>span{font-size:15px}.oh-counts{width:100%;justify-content:flex-end;padding:5px 4px}.oh-counts b{display:inline;font-size:15px;margin-right:4px}.oh-manual{padding:1px 15px 18px}.oh-section-title{align-items:flex-start;gap:7px;flex-direction:column}.oh-section-title>span{font-size:10px}.oh-hero-grid,.oh-ritual{grid-template-columns:1fr}.oh-ritual{padding:20px 15px;gap:18px}.oh-wheel-stage{grid-row:2}.oh-ritual-side{padding-top:0}.oh-player-register{display:flex;flex-wrap:wrap;margin-top:12px}.oh-player-register>button{padding:8px;font-size:11px}.oh-ritual-note{display:none}.oh-candidate-side{grid-column:auto}.oh-candidate-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px}.oh-wheel{--orbit:clamp(110px,39vw,155px);max-width:380px}.oh-wheel-hero>.oh-portrait{width:38px;height:45px}.oh-wheel-hero>span:last-child{font-size:10px}.oh-wheel-hero.is-small>.oh-portrait{width:25px;height:30px}.oh-wheel-hero.is-small>span:last-child{font-size:7px}.oh-error{margin:14px 15px 0}.oh-footer{margin:0 15px;font-size:9px}.oh-hub svg{width:25px;height:25px}.oh-player-register>button{width:auto;flex:1 1 90px}}@media(prefers-reduced-motion:reduce){.oh-winner-portrait{animation:none}.oh-magic-motes i{animation:none!important}.oh-button,.oh-magic-motes,.oh-mode-switch>button,.oh-wheel-halo{transition:none}}.oh-player-settings>.oh-button{width:100%;margin-top:9px;white-space:normal}.oh-published-counts{display:grid;gap:7px;margin:14px 0;font-size:12px;color:#cabb9e}.oh-published-counts b{font:23px var(--font-serif),Georgia,serif;color:#ead3a0;margin-right:5px}.oh-eligible-list{display:grid;gap:7px;margin-top:18px;max-height:260px;overflow:auto}.oh-eligible-list>span{display:flex;gap:7px;align-items:center;padding:7px 0;border-bottom:1px solid #a78d5530;color:#cfc5b4;font-size:12px}.oh-player-entry{display:flex;align-items:center;gap:12px;margin:8px 14px;padding:12px 15px;border:1px solid #b3985a66;border-radius:5px 12px 5px 5px;background:linear-gradient(115deg,#32291e,#1c1a1d);color:#d9c08e}.oh-player-entry>div{display:grid;gap:3px;flex:1;min-width:0}.oh-player-entry strong{font:18px var(--font-serif),Georgia,serif}.oh-player-entry span{font-size:12px;color:#c1b59f}.oh-player-wheel{--oh-ink:#e6dcc8;--oh-muted:#b9ac96;--oh-magic:#c8ad72;padding:5px;min-width:0}.oh-player-wheel .oh-wheel{--orbit:clamp(110px,29vw,175px)}.oh-player-wheel .oh-error{margin:12px 0}.oh-player-wait{display:grid;justify-items:center;gap:14px;padding:24px;text-align:center;color:#d2ba88}.oh-player-wait h3{font:22px var(--font-serif),Georgia,serif}.oh-player-entry .oh-button-primary,.oh-player-settings .oh-button-primary,.oh-player-wheel .oh-button-primary{background:linear-gradient(145deg,#51402a,#33281d);border-color:#ad9159;color:#f0d7a0}@media(max-width:480px){.oh-player-entry{flex-wrap:wrap;margin-inline:8px}.oh-player-entry>.oh-button{flex:1 1 100%}.oh-player-wheel{padding:0}.oh-player-wheel .oh-wheel{margin-block:6px 12px}.oh-player-wheel .oh-wheel-caption{margin-bottom:4px}.oh-player-wheel .oh-wheel-status{min-height:60px}}.oh-header .oh-fold-button{margin-left:auto;white-space:nowrap;flex-shrink:0}.oh-reserve[data-collapsed] .oh-header{margin-bottom:0;border-bottom:0;padding-bottom:0}.oh-reserve[data-collapsed] .oh-header p{color:#c8b486}.oh-reserve>[hidden]{display:none!important}@media(max-width:640px){.oh-header .oh-fold-button{margin-left:0}.oh-reserve[data-collapsed] .oh-header{gap:10px}.oh-fold-button{min-height:38px}}