:root{font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:#25344d;background:#f6f8fc}
*{box-sizing:border-box}body{margin:0;min-width:0}a{color:#086f65}
.tool-container{max-width:1100px;margin-inline:auto;width:calc(100% - 32px)}
.skip{position:absolute;top:-60px;left:12px;z-index:50;background:#20354b;color:#fff;padding:12px}
.skip:focus{top:8px}
.tool-header{background:#fff;border-bottom:1px solid #e0e7ed}
.head-inner{min-height:70px;display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding-block:10px}
.tool-brand{font-weight:800;color:#204054;text-decoration:none;font-size:18px}
.back-link{font-size:13px;margin-right:auto}
.tool-languages{display:flex;gap:4px;background:#eff3f6;border-radius:12px;padding:4px}
.tool-languages a{display:block;font-weight:700;font-size:13px;text-decoration:none;color:#4f6777;padding:9px 12px;border-radius:9px}
.tool-languages a[aria-current=page]{color:#057965;background:#fff}
.tool-intro{padding:45px 0 20px;max-width:750px}
h1{font-size:clamp(30px,5vw,48px);line-height:1.2;margin:0 0 12px}
.tool-intro p{color:#53667a;line-height:1.8}
.tool-intro .tagline{font-size:19px;font-weight:750;color:#0c8c78;margin:0}
.tool-work{display:grid;grid-template-columns:1fr;gap:20px;margin:24px 0 60px}
.tool-editor,.wheel-panel{min-width:0;background:#fff;border:1px solid #e0e7ed;border-radius:20px;padding:22px}
.tool-editor label{display:block;font-size:16px;font-weight:750;margin-bottom:12px}
textarea{font:inherit;width:100%;min-width:0;min-height:215px;border:1px solid #bac9d6;border-radius:12px;padding:12px;resize:vertical;color:#25344d}
.hint{font-size:12px;line-height:1.6;color:#53667a;margin:9px 0 16px}
.actions{display:flex;flex-wrap:wrap;gap:10px}
button{font:inherit;font-size:15px;font-weight:700;cursor:pointer;min-height:48px;padding:11px 19px;border:none;border-radius:12px;background:#0b8d76;color:#fff}
button.secondary{background:#eaf0f3;color:#244153}
button:disabled{opacity:.55;cursor:not-allowed}
:focus-visible{outline:3px solid #006e60;outline-offset:3px}
.result-card{background:#effaf6;border:1px solid #c4ebdd;border-radius:14px;padding:16px;margin-top:22px}
.result-card h2{font-size:14px;margin:0 0 8px;color:#1b735c}
.result-card p{margin:0;font-size:18px;font-weight:750;overflow-wrap:anywhere}
.wheel-panel{display:flex;align-items:center;justify-content:center}
.wheel-frame{position:relative;width:min(100%,450px);aspect-ratio:1;padding:12px;display:flex;align-items:center;justify-content:center}
canvas{display:block;width:100%;max-width:100%;aspect-ratio:1;height:auto;border-radius:50%;box-shadow:0 8px 25px #193f5c1b;will-change:transform}
.pointer{position:absolute;left:50%;top:0;transform:translateX(-50%);width:0;height:0;border-left:17px solid transparent;border-right:17px solid transparent;border-top:32px solid #25344d;z-index:2;filter:drop-shadow(0 2px 2px #0003)}
.details{max-width:830px;padding:8px 0 90px;color:#455e72;line-height:1.8}
.details h2{font-size:23px;color:#243c50;margin:32px 0 8px}
.details h3{font-size:16px;color:#243c50;margin:0 0 6px}
.details ol{padding-left:24px}.details li{margin:7px 0}
.faq{background:#fff;border-radius:14px;border:1px solid #e0e7ed;padding:17px;margin-bottom:10px}
.faq p{margin:0}
footer{padding:24px 0;border-top:1px solid #e0e7ed;background:#fff;color:#65788a;font-size:12px}
.language-entry{text-align:center;padding:100px 0}
.language-entry nav{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}
.language-entry a{display:inline-block;margin-top:22px;background:#0b8d76;color:#fff;text-decoration:none;border-radius:10px;padding:14px 25px}
@media(min-width:850px){.tool-work{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px}.tool-editor,.wheel-panel{padding:26px}}
@media(max-width:380px){.tool-container{width:calc(100% - 24px)}.head-inner{gap:8px}.back-link{font-size:11px}.tool-languages a{padding:8px 9px}.tool-editor,.wheel-panel{padding:14px}.tool-intro{padding-top:30px}.actions button{flex:1;padding-inline:8px}}
@media(prefers-reduced-motion:reduce){canvas{transition:none!important}}
