body[data-tool=letters] #score{display:none}
body[data-tool=letters] .setup-panel{background:transparent;border:0;gap:12px;box-shadow:none}
.letters-summary{flex:none;padding:16px;border:1px solid var(--control);border-radius:12px;background:#fff;text-align:center;min-width:0}
.letters-last{display:block;float:none;width:100%;font-size:52px;line-height:1.08;font-weight:750;letter-spacing:-.02em;color:var(--ink)}
.letters-last-empty{font-size:22px;line-height:1.3;font-weight:550;letter-spacing:normal}
#letters-last-label{margin:5px 0 0;font-size:14px;color:var(--muted)}
.letters-count{margin:14px 0 0;font-size:14px;color:var(--muted)}
.letters-controls{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;background:#edf2fa;border-radius:12px;overflow:hidden}
body[data-tool=letters] .round-toolbar{flex:none;flex-wrap:wrap;padding:14px 14px 0}
body[data-tool=letters] .letters-repeat{flex:none;margin:12px 14px 14px;min-height:44px;width:fit-content;max-width:calc(100% - 28px)}
body[data-tool=letters] .tabs{flex:none}
body[data-tool=letters] .tabs [aria-selected=true]{background:var(--active);color:#fff;font-weight:650}
body[data-tool=letters] #settings{padding:0;min-width:0}
body[data-tool=letters] #choiceCount{display:none}
.letters-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.letters-presets button{min-height:44px;padding:8px 12px;font-size:14px}
.letters-case{display:flex;gap:6px;border:0;margin:0 0 16px;padding:0;min-width:0}
.letters-case legend{font-size:14px;font-weight:650;margin-bottom:8px}
body[data-tool=letters] .letters-case label{position:relative;display:flex;margin:0;cursor:pointer}
.letters-case input,.letters-grid input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0}
.letters-case span{display:grid;place-items:center;min-height:44px;min-width:64px;padding:8px 16px;border:1px solid var(--control);border-radius:7px;background:#fff;font-size:20px;font-weight:650}
.letters-case input:checked+span{background:var(--active);border-color:var(--active);color:#fff}
.letters-selection-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:14px;font-weight:650}
#letters-clear{min-height:44px;padding:6px 12px}
.letters-grid{display:grid;grid-template-columns:repeat(6,minmax(44px,1fr));gap:6px}
body[data-tool=letters] .letters-grid label{position:relative;display:block;margin:0;min-width:0;cursor:pointer}
.letters-grid span{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--control);border-radius:7px;background:#fff;color:var(--ink)}
.letters-grid strong{font-size:18px;font-weight:700;line-height:1}
.letters-grid svg{position:absolute;top:3px;right:3px;width:9px;height:9px;visibility:hidden;pointer-events:none}
.letters-grid input:checked+span{background:var(--active);border-color:var(--active);color:#fff}
.letters-grid input:checked+span svg{visibility:visible}
.letters-grid input:not(:disabled)+span:hover,.letters-case input:not(:disabled)+span:hover{border-color:var(--ink)}
.letters-grid input:focus-visible+span,.letters-case input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px;position:relative;z-index:1}
.letters-grid input:disabled+span,.letters-case input:disabled+span{opacity:.55;cursor:default}
body[data-tool=letters] #settings .hint{font-size:13px;line-height:1.5}
body[data-tool=letters] #settings .error:empty{display:none}
body[data-tool=letters] #settings .error{font-size:14px;margin:8px 0 0}
#letters-exclusions{margin-top:16px}
#letters-exclusions summary{min-height:44px;padding-block:10px;cursor:pointer;font-size:14px;font-weight:650}
#letters-exclusions textarea{width:100%;min-height:80px;margin-top:8px;resize:vertical;font-size:16px}
body[data-tool=letters] .result-strip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.letters-presentation{display:none}
body[data-tool=letters].presenting .wheel-wrap{width:min(calc(100dvh - 170px),calc(100vw - 40px))}
body[data-tool=letters].presenting .letters-presentation{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;box-sizing:border-box;height:88px;min-height:88px;margin:12px 0 0;color:var(--ink);text-align:center}
#letters-presentation-value{font-size:52px;line-height:1.08;font-weight:750;letter-spacing:-.02em}
#letters-presentation-value.letters-presentation-empty{font-size:22px;font-weight:550;letter-spacing:normal}
#letters-presentation-label{font-size:14px;line-height:1.5;color:var(--muted)}
@media(max-width:380px){.letters-grid{grid-template-columns:repeat(5,minmax(44px,1fr))}.letters-presets{gap:6px}.letters-presets button{padding-inline:9px}}
