:root{--purple:#7355e8;--purple-dark:#5a3dce;--ink:#29243d;--muted:#81798e;--line:#e9e5ef;--bg:#f7f5fa;font-family:Inter,-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:inherit;text-underline-offset:4px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a995f4;outline-offset:4px}.skip-link{position:fixed;top:-100px;left:20px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:15px}.topbar{height:88px;padding:0 max(24px,calc((100vw - 1460px)/2));display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:20px;font-weight:750}.brand-icon{display:grid;place-items:center;background:var(--purple);color:white;border-radius:13px;width:44px;height:44px;font-size:31px}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#8a8196;margin-top:5px;font-weight:650}.topbar nav,footer nav{display:flex;gap:26px;font-size:13px;color:#6e627f}.topbar nav a{text-decoration:none}.topbar nav a:hover{color:var(--purple)}main{max-width:1460px;margin:auto;padding:0 24px}.intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:40px 0 28px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700;color:#8b74b2;margin:0 0 14px}h1{font-size:30px;font-weight:750;letter-spacing:-.7px;margin:0}.lead{font-size:14px;color:var(--muted);line-height:1.8;margin:10px 0 0}.intro-note{display:flex;gap:18px;color:#857b93;font-size:12px}.intro-note span::before{content:'✓';margin-right:7px;color:#9280b4}.workspace{display:grid;grid-template-columns:minmax(250px,300px) minmax(360px,1fr) minmax(230px,270px);gap:18px;align-items:stretch}.panel{border:1px solid var(--line);border-radius:19px;background:#fff;min-width:0;box-shadow:0 6px 22px #30204b03}.settings,.results-panel{padding:24px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:28px}.panel-heading h2{font-size:14px;letter-spacing:.1px;margin:0;display:flex;align-items:center;gap:9px}.step{color:#aa9abd;font-size:10px;font-weight:500}.badge{font-size:11px;background:#f3effa;color:#8973ab;padding:5px 9px;border-radius:6px;white-space:nowrap}label{display:block;font-size:12px;font-weight:600;color:#6e637c;margin-bottom:9px}input[type=text],textarea{width:100%;border:1px solid #e4ddeb;border-radius:9px;padding:11px 12px;background:#fefeff;line-height:1.7;color:var(--ink);font-size:14px}input[type=text]{margin-bottom:20px}textarea{min-height:204px;resize:vertical}.label-row{display:flex;justify-content:space-between;align-items:baseline}.label-row>span{font-size:10px;color:#a098ad}.helper{font-size:11px;line-height:1.85;color:#90849f;margin:9px 0 14px}.button{border:1px solid #e4ddec;padding:11px 16px;min-height:42px;background:white;color:#71637f;border-radius:9px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:background .18s,transform .18s}.button:hover:not(:disabled){background:#f5f0ff;border-color:#bfb0e1}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{color:white;background:var(--purple);border-color:var(--purple);box-shadow:0 5px 14px #7355e826}.button.primary:hover:not(:disabled){background:var(--purple-dark)}.secondary{background:#f8f5fc;border-color:#e6dff0;color:#785c9f}.wide{width:100%}.input-status{font-size:11px;min-height:34px;line-height:1.65;color:#8f7fa4;margin:9px 0 0}.input-status.error{color:#aa315c}.settings-divider{height:1px;background:var(--line);margin:17px 0 21px}.count-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:19px}.count-row label{margin:0}.count-row>div{display:flex;align-items:center;gap:9px;color:#91869f;font-size:12px}.count-row input{width:62px;border:1px solid #e4ddec;border-radius:8px;padding:8px;color:var(--ink);background:white}.check-row{display:flex;align-items:center;gap:8px;margin:0;line-height:1.6}.check-row input{accent-color:var(--purple);width:16px;height:16px;flex-shrink:0}.stage{padding:19px 28px 22px;text-align:center;display:flex;align-items:center;flex-direction:column;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 34%,#f7f2ff 0,white 63%)}.stage-bar{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.live-label{font-size:10px;color:#9a87af;display:flex;align-items:center;gap:6px}.live-label i{width:5px;height:5px;border-radius:50%;background:#a98cd9}.compact{font-size:10px;min-height:32px;padding:7px 10px;background:#ffffffa6}.stage h2{font-size:21px;font-weight:650;margin:22px 0 0;line-height:1.5;overflow-wrap:anywhere;max-width:100%}.stage-subtitle{font-size:11px;color:#a092af;line-height:1.8;margin:8px 0 13px}.wheel-frame{position:relative;width:min(100%,400px);aspect-ratio:1;margin:8px auto 12px;padding:12px;border-radius:50%;background:linear-gradient(150deg,#fff,#e9e1f7);box-shadow:0 12px 42px #8567a822,0 0 0 1px #eae2f3,0 0 0 8px #fbf9fe;flex-shrink:0}canvas{display:block;width:100%;height:100%;border-radius:50%;box-shadow:0 0 0 5px white}.pointer{position:absolute;z-index:3;top:-4px;left:calc(50% - 13px);width:26px;height:37px;background:#553b82;clip-path:polygon(0 0,100% 0,80% 60%,50% 100%,20% 60%);filter:drop-shadow(0 3px 2px #0003)}.wheel-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:22%;aspect-ratio:1;background:white;border:5px solid #ffffff70;background-clip:padding-box;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#a185cc;font-size:38px;box-shadow:0 5px 15px #45315619;line-height:1}.wheel-hub small{font-size:6px;font-weight:600;letter-spacing:1px;margin-top:7px}.result{min-height:63px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;max-width:100%;padding:9px 0}.result>span{font-size:12px;color:#a294b0}.result strong{font-size:25px;color:var(--purple-dark);font-weight:750;overflow-wrap:anywhere;line-height:1.45}.result .result-label{font-size:10px;letter-spacing:1px;color:#9c83bc}.spin-button{width:220px;font-size:14px;min-height:48px;margin-top:7px}.spin-button span{font-size:17px}.stage-footnote{font-size:10px;color:#a99ab7;margin:12px 0 0;line-height:1.8}.mobile-edit{display:none}.results-panel{display:flex;flex-direction:column}.empty-state{display:flex;flex:1;min-height:285px;align-items:center;justify-content:center;flex-direction:column;text-align:center}.empty-state>div{font-size:54px;color:#d4c5e6;margin-bottom:12px}.empty-state h3{font-size:13px;color:#9a85b0;font-weight:500;margin:0 0 10px}.empty-state p{font-size:11px;line-height:1.9;color:#b0a5bb;margin:0}.history{flex:1;max-height:420px;overflow:auto;scrollbar-width:thin;scrollbar-color:#ddd1ed transparent}.history-batch{border-bottom:1px solid var(--line);padding:0 0 17px;margin-bottom:17px}.history-batch h3{font-size:10px;color:#a591b9;font-weight:500;margin:0 0 11px;display:flex;justify-content:space-between}.history-batch ol{padding:0;margin:0;list-style:none;display:grid;gap:9px}.history-batch li{display:flex;align-items:start;gap:9px;font-size:13px;color:#68517c;overflow-wrap:anywhere;line-height:1.65}.history-batch li span{font-size:9px;background:#f1eafa;color:#a08ab7;border-radius:5px;width:22px;height:22px;display:inline-grid;place-items:center;flex-shrink:0}.result-actions{display:grid;gap:8px;margin-top:23px}.text-button{border:0;background:none;color:#a592b8;font-size:11px;padding:10px;min-height:36px}.text-button:hover:not(:disabled){color:var(--purple)}.history-note{font-size:10px;margin:14px 0 0}.guide{padding:69px 0 57px;display:grid;grid-template-columns:1fr 2fr;gap:50px;border-bottom:1px solid var(--line)}.guide h2,.faq h2,.service-cta h2{font-size:23px;margin:0 0 16px;letter-spacing:-.3px;font-weight:650}.guide-intro>p:last-child{font-size:13px;color:#93869f;line-height:1.9}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:9px}.guide-cards article>span{font-size:9px;letter-spacing:1.4px;color:#ab97bf}.guide-cards h3{font-size:14px;font-weight:600;margin:16px 0 9px}.guide-cards p{font-size:12px;color:#908299;line-height:1.95;margin:0}.faq{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:55px 0}.faq details{border-bottom:1px solid var(--line);padding:17px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:13px;font-weight:500;color:#72607e;cursor:pointer;line-height:1.8}.faq details p{font-size:12px;color:#8e7e9b;line-height:1.95;padding-right:20px;margin:13px 0 0}.service-cta{margin:0 0 48px;padding:30px 34px;border:1px solid #e3d8f1;background:#f0e9f8;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:30px}.service-cta h2{font-size:20px;margin:9px 0}.service-cta p{font-size:12px;line-height:1.8;color:#9581a4;margin:0}.service-cta .button{white-space:nowrap;background:#faf7ff;border-color:#dbcee9;color:#8968a5}footer{padding:27px max(24px,calc((100vw - 1412px)/2));border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;background:white;color:#998ba4;font-size:11px}footer nav{font-size:11px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#332542;color:#fff;border-radius:10px;padding:14px 20px;max-width:90vw;font-size:13px;line-height:1.7;z-index:100}[hidden]{display:none!important}.stage:fullscreen,.stage.presentation{padding:24px;min-height:100dvh;background:radial-gradient(ellipse at 50% 40%,#f1e9ff,#fff 75%);overflow-y:auto}.stage.presentation{position:fixed;inset:0;z-index:50;border-radius:0}.stage:fullscreen .wheel-frame,.stage.presentation .wheel-frame{width:min(55dvh,600px);margin-top:20px}.stage:fullscreen h2,.stage.presentation h2{font-size:30px;margin-top:8px}.stage:fullscreen .spin-button,.stage.presentation .spin-button{margin-top:8px}.stage:fullscreen .result strong,.stage.presentation .result strong{font-size:30px}body.presenting{overflow:hidden}.stage.spinning .live-label i{background:var(--purple);box-shadow:0 0 0 3px #dcccff}.stage.spinning .result>span{color:var(--purple)}
@media(min-width:1600px){.wheel-frame{width:420px}.stage{padding:22px 30px 28px}.stage h2{margin-top:27px}.stage-subtitle{margin-bottom:18px}}@media(max-width:1100px){.workspace{grid-template-columns:280px minmax(350px,1fr)}.results-panel{grid-column:1/-1;display:grid;grid-template-columns:200px 1fr;gap:0 30px}.results-panel .panel-heading{grid-column:1/-1;margin-bottom:18px}.empty-state{min-height:100px}.empty-state>div{font-size:35px;margin:0 0 7px}.empty-state p br{display:none}.history{grid-row:2/4;max-height:240px}.result-actions{margin:0;grid-column:2}.history-note{grid-column:2}.guide,.faq{grid-template-columns:1fr 2fr;gap:30px}.intro-note{gap:10px;font-size:10px}.guide-cards{gap:20px}}@media(max-width:740px){.topbar{height:78px;padding:0 18px}.brand{font-size:18px;gap:9px}.brand-icon{width:38px;height:38px;font-size:26px}.brand small{font-size:9px}.topbar nav{font-size:11px;gap:14px}.topbar nav a:first-child{display:none}main{padding:0 16px}.intro{display:block;padding:28px 2px 24px}.intro .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:12px}h1{font-size:25px}.lead{font-size:13px;margin-top:8px}.intro-note{margin-top:14px;font-size:10px;gap:17px}.workspace{display:flex;flex-direction:column;gap:16px}.stage{order:0;padding:17px 19px 22px}.settings{order:1;padding:24px}.results-panel{order:2;display:flex;padding:24px}.stage h2{font-size:20px;margin-top:15px}.wheel-frame{width:min(95%,370px);margin:9px auto 11px}.stage-subtitle{margin-bottom:10px}.wheel-hub{font-size:32px}.wheel-hub small{font-size:5px}.mobile-edit{display:block;font-size:11px;margin-top:15px;color:#927eaa}.stage .result{min-height:56px}.result strong{font-size:22px}.spin-button{width:100%;max-width:270px}.panel-heading{margin-bottom:22px}.panel-heading h2{font-size:15px}input[type=text],input[type=number],textarea{font-size:16px}.count-row input{width:75px}.helper{font-size:12px}label,.check-row{font-size:13px}.history{max-height:350px}.empty-state{min-height:150px}.result-actions{margin-top:16px}.history-note{font-size:11px}.guide{display:block;padding:44px 4px 36px}.guide-cards{grid-template-columns:1fr;gap:24px;margin-top:26px}.guide-cards article{padding-left:18px;border-left:2px solid #e6dcf0}.guide-cards h3{margin:8px 0}.guide-cards p{font-size:13px}.guide h2,.faq h2{font-size:22px}.faq{display:block;padding:37px 4px}.faq h2{margin-bottom:26px}.faq summary{font-size:14px}.faq details p{font-size:13px}.service-cta{padding:25px 23px;display:block;margin-bottom:32px}.service-cta h2{font-size:19px}.service-cta .button{margin-top:19px;font-size:12px}footer{padding:24px 20px;display:block;line-height:1.7}footer nav{margin-top:12px;gap:20px;flex-wrap:wrap}.stage:fullscreen .wheel-frame,.stage.presentation .wheel-frame{width:min(90%,48dvh);margin-top:12px}.stage:fullscreen h2,.stage.presentation h2{font-size:22px}.stage:fullscreen .result strong,.stage.presentation .result strong{font-size:23px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.helper,.stage-subtitle,.stage-footnote,.input-status,.result>span,.guide-cards p,.guide-intro>p:last-child,.faq details p,.history-note,.service-cta p{color:#776582}.empty-state p{color:#86738f}.badge{color:#795c97}.intro-note{color:#796987}
