.fortune-wheel{color-scheme:dark;--site-bg:#080f1c;--site-panel:#111e30;--site-text:#edece6;--site-muted:#a2afbf;--gold:#d9bd83;--line:#c6aa7042;--input:#0b1626;--sector1:#182c44;--sector2:#213449;--sector3:#10283d;--sector4:#24394c;--selected:#78613c;--shadow:#0005;--focus:#8ddbdc}
.fortune-wheel *{box-sizing:border-box}
.fortune-wheel button,.fortune-wheel input,.fortune-wheel textarea{font:inherit}
.fortune-wheel button{cursor:pointer;color:inherit}
.fortune-wheel button:disabled{cursor:default;opacity:.45}
.fortune-wheel button:focus-visible,.fortune-wheel input:focus-visible,.fortune-wheel textarea:focus-visible,.fortune-wheel summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.fortune-wheel button{transition:background .2s,border-color .2s}
.fortune-wheel button:hover:not(:disabled){border-color:var(--gold)}
.fortune-wheel svg{display:block}
.fortune-wheel .tw-secondary{border:1px solid var(--line);border-radius:7px;background:transparent;padding:9px 14px;font-size:13px}
.fortune-wheel .tw-symbol{font:21px Georgia,serif;color:var(--gold);margin-right:6px}
.fortune-wheel .tw-layout{max-width:1450px;padding:32px clamp(18px,4vw,58px) 32px;margin:auto;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,.85fr);gap:24px 48px;align-items:start}
.fortune-wheel .tw-wheel-panel{grid-column:1;grid-row:1/3;text-align:center;position:relative}
.fortune-wheel .tw-title-row{display:flex;align-items:center;justify-content:center;gap:24px}
.fortune-wheel .tw-title-row:before,.fortune-wheel .tw-title-row:after{content:"";width:70px;height:1px;background:linear-gradient(90deg,transparent,var(--line))}
.fortune-wheel .tw-title-row:after{transform:rotate(180deg)}
.fortune-wheel h1{font:400 clamp(28px,3vw,40px)/1.3 "Noto Serif SC","STSong","SimSun",serif;letter-spacing:.15em;margin:2px 0 8px;color:var(--gold)}
.fortune-wheel .tw-wheel-wrap{position:relative;width:min(100%,640px);aspect-ratio:1;margin:8px auto 0;filter:drop-shadow(0 12px 22px var(--shadow))}
.fortune-wheel .tw-wheel-wrap>svg{width:100%;height:100%;overflow:visible}
.fortune-wheel .tw-wheel-disc{transform-origin:350px 350px}
.fortune-wheel .tw-sector{stroke:var(--gold);stroke-opacity:.27;stroke-width:1;fill:var(--sector1)}
.fortune-wheel .tw-sector:nth-of-type(4n+2){fill:var(--sector2)}
.fortune-wheel .tw-sector:nth-of-type(4n+3){fill:var(--sector3)}
.fortune-wheel .tw-sector:nth-of-type(4n+4){fill:var(--sector4)}
.fortune-wheel .tw-sector.tw-selected{fill:var(--selected);stroke:var(--gold);stroke-opacity:1;stroke-width:2}
.fortune-wheel .tw-wheel-label{fill:var(--site-text);font-family:"Microsoft YaHei UI","PingFang SC",sans-serif;font-size:19px;letter-spacing:1px;pointer-events:none}
.fortune-wheel .tw-gold{stroke:var(--gold);fill:none}
.fortune-wheel .tw-orbit{stroke:var(--gold);fill:none;opacity:.3}
.fortune-wheel .tw-emblem{color:var(--gold)}
.fortune-wheel .tw-pointer{filter:drop-shadow(0 2px 7px #0009)}
.fortune-wheel .tw-probability{margin:0 0 15px;color:var(--site-muted);font-size:13px}
.fortune-wheel .tw-spin{display:block;margin:auto;min-width:250px;padding:13px 30px;background:linear-gradient(105deg,#b7975e,#e2c78e 55%,#c2a36b);border:1px solid #f2dca6;border-radius:7px;color:#182234;font-size:17px;font-weight:700;letter-spacing:3px;box-shadow:0 5px 25px #c5a86d16}
.fortune-wheel .tw-spin:hover:not(:disabled){background:linear-gradient(105deg,#d0b279,#efdaac,#d2b67c)}
.fortune-wheel .tw-spin .tw-symbol{color:inherit}
.fortune-wheel .tw-stage-status{height:24px;margin:10px 0 0;color:var(--site-muted);font-size:12px}
.fortune-wheel .tw-panel{background:linear-gradient(130deg,color-mix(in srgb,var(--site-panel) 96%,transparent),color-mix(in srgb,var(--site-panel) 80%,transparent));border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #00000012;padding:25px;position:relative;min-width:0}
.fortune-wheel .tw-panel:before{content:"";position:absolute;top:-1px;left:25px;right:25px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}
.fortune-wheel .tw-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px}
.fortune-wheel .tw-panel-heading h2{font:400 22px/1.4 "Noto Serif SC","STSong","SimSun",serif;letter-spacing:2px;margin:0}
.fortune-wheel .tw-count{color:var(--site-muted);font-size:12px}
.fortune-wheel .tw-editor{grid-column:2;grid-row:1}
.fortune-wheel .tw-option-list{max-height:246px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;display:flex;flex-direction:column;gap:9px;padding:4px}
.fortune-wheel .tw-option-row{display:flex;align-items:center;gap:10px}
.fortune-wheel .tw-option-mark{color:var(--gold);width:18px;text-align:center;font-size:17px}
.fortune-wheel .tw-option-row input{flex:1;width:0;min-width:0;border:1px solid var(--line);border-radius:6px;background:var(--input);padding:10px 12px;color:var(--site-text)}
.fortune-wheel .tw-remove{border:0;background:transparent;color:var(--site-muted);font-size:20px;width:30px;min-height:40px}
.fortune-wheel .tw-remove:hover:not(:disabled){color:var(--site-text)}
.fortune-wheel .tw-editor-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;padding-top:16px}
.fortune-wheel .tw-editor-actions .tw-secondary{border-style:dashed;flex:1}
.fortune-wheel .tw-link-button{border:0;background:transparent;color:var(--site-muted);padding:8px;font-size:12px}
.fortune-wheel .tw-validation{color:#efc08a;min-height:20px;margin:8px 0 0;font-size:12px}
.fortune-wheel .tw-panel-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;color:var(--site-muted);font-size:12px}
.fortune-wheel details summary{cursor:pointer;list-style:none;font-size:13px}
.fortune-wheel summary::-webkit-details-marker{display:none}
.fortune-wheel summary:after{content:"＋";float:right;color:var(--gold)}
.fortune-wheel details[open] summary:after{content:"−"}
.fortune-wheel .tw-bulk{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}
.fortune-wheel .tw-bulk textarea{display:block;margin:12px 0;width:100%;height:140px;resize:vertical;border:1px solid var(--line);border-radius:6px;background:var(--input);color:var(--site-text);padding:12px}
.fortune-wheel .tw-bulk label{color:var(--site-muted);display:block;margin-top:10px;font-size:12px}
.fortune-wheel .tw-result{grid-column:2;grid-row:2;padding-top:22px}
.fortune-wheel .tw-tarot-layout{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:22px}
.fortune-wheel .tw-card{height:166px;perspective:800px;position:relative}
.fortune-wheel .tw-card-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.7,.2,1)}
.fortune-wheel .tw-card.tw-flipped .tw-card-inner{transform:rotateY(180deg)}
.fortune-wheel .tw-card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:5px;border:1px solid var(--gold);padding:6px;background:var(--input);box-shadow:0 4px 12px var(--shadow)}
.fortune-wheel .tw-card-face svg{width:100%;height:100%}
.fortune-wheel .tw-card-front{transform:rotateY(180deg);display:flex;align-items:center;justify-content:center;color:var(--gold);flex-direction:column;border:1px solid var(--gold);background:radial-gradient(ellipse at 50% 35%,var(--sector4),var(--input))}
.fortune-wheel .tw-card-front .tw-result-icon{font-size:38px}
.fortune-wheel .tw-card-front .tw-card-rank{font:18px Georgia;margin-top:9px}
.fortune-wheel .tw-result-copy{min-width:0}
.fortune-wheel .tw-result-copy p{margin:0 0 7px;color:var(--site-muted);font-size:12px}
.fortune-wheel .tw-result-copy h3{font:400 25px/1.6 "Noto Serif SC","STSong","SimSun",serif;margin:0;color:var(--site-text);overflow-wrap:anywhere}
.fortune-wheel .tw-again{margin-top:14px;color:var(--gold);padding:0;border:0;background:transparent;font-size:13px}
.fortune-wheel .tw-history{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}
.fortune-wheel .tw-history summary{color:var(--site-muted);font-size:12px}
.fortune-wheel .tw-history ol{padding-left:22px;color:var(--site-muted);margin-bottom:0;font-size:12px}
.fortune-wheel .tw-history li{overflow-wrap:anywhere;padding:4px 0}
.fortune-wheel .tw-mobile-edit{display:none}
html[data-theme=sakura] .fortune-wheel{color-scheme:light;--site-bg:#f6edf1;--site-panel:#fff8fa;--site-text:#473743;--site-muted:#7d6879;--gold:#8e6b3b;--line:#936c4940;--input:#fffafc;--sector1:#ead9e3;--sector2:#f2e3e7;--sector3:#dfd9e9;--sector4:#eadfe9;--selected:#dcc4a5;--shadow:#6e455618;--focus:#7551aa}
html[data-theme=sakura] .fortune-wheel .tw-validation{color:#945327}
html[data-theme=sakura] .fortune-wheel .tw-sector.tw-selected{stroke:#704c99;stroke-width:3}
.fortune-wheel .tw-fast .tw-card-inner{transition:none}
@media(min-width:1450px){.fortune-wheel .tw-layout{padding-top:36px}
.fortune-wheel .tw-wheel-wrap{width:640px}
}
@media(max-width:850px){.fortune-wheel .tw-layout{grid-template-columns:1fr;max-width:650px;padding:24px 18px;gap:20px}
.fortune-wheel .tw-wheel-panel{grid-column:1;grid-row:1}
.fortune-wheel .tw-result{grid-column:1;grid-row:2}
.fortune-wheel .tw-editor{grid-column:1;grid-row:3}
.fortune-wheel .tw-wheel-wrap{width:min(100%,510px)}
.fortune-wheel .tw-panel{padding:20px}
.fortune-wheel .tw-title-row{gap:14px}
.fortune-wheel h1{font-size:30px}
.fortune-wheel .tw-probability{margin-top:2px}
.fortune-wheel .tw-mobile-edit{display:inline-block}
.fortune-wheel .tw-editor.tw-is-collapsed .tw-panel-heading{margin-bottom:0}
.fortune-wheel .tw-spin{width:min(100%,340px)}
.fortune-wheel .tw-tarot-layout{grid-template-columns:96px minmax(0,1fr)}
.fortune-wheel .tw-card{height:144px}
.fortune-wheel .tw-stage-status{margin-bottom:0}
}
@media(max-width:420px){.fortune-wheel .tw-panel-heading h2{font-size:20px}
.fortune-wheel .tw-wheel-label{font-size:21px}
}
@media(prefers-reduced-motion:reduce){.fortune-wheel *,.fortune-wheel *:before,.fortune-wheel *:after{transition:none!important;scroll-behavior:auto!important}
}
.fortune-wheel .tw-card-front:after{content:"";position:absolute;inset:6px;border:1px solid var(--line);pointer-events:none}
.fortune-wheel .tw-card-answer{font:14px/1.5 "STSong","SimSun",serif;max-width:86px;padding:7px;text-align:center;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--site-text)}

.fortune-wheel{font:inherit;line-height:1.6;padding:clamp(12px,2vw,24px);width:100%;min-width:0;background:transparent;color:var(--site-text)}
.fortune-wheel .tw-layout{max-width:none;padding:0;gap:24px 36px}
.fortune-wheel .tw-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}
.fortune-wheel .tw-wheel-disc{border:0;border-radius:0;background:none;box-shadow:none;transition:none}
.fortune-wheel .tw-spin .tw-symbol{display:inline-block}
.fortune-wheel .tw-option-summary{margin:14px 0 0;padding-left:24px;max-height:160px;overflow:auto;color:var(--site-muted);font-size:12px;overflow-wrap:anywhere}
.fortune-wheel .tw-option-summary[hidden]{display:none}
html[data-perf=low] .fortune-wheel .tw-card-inner{transition:none}
.game-page[data-game-layout=wheel]{overflow:auto;display:block}
@media(max-width:850px){.fortune-wheel .tw-layout{gap:20px;padding:0}.fortune-wheel .tw-wheel-wrap{max-width:510px}.fortune-wheel .tw-spin{min-width:0}}
@media(min-width:851px){.fortune-wheel .tw-wheel-wrap{width:min(100%,640px,max(320px,calc(100dvh - 430px)))}}
