.aacb{--ink:#1d2a44;--min:120px;max-width:980px;margin:1.5em auto;padding:12px;background:#fffdf7;color:var(--ink);font-family:"Trebuchet MS","Segoe UI",system-ui,sans-serif;font-size:16px;line-height:1.3;border-radius:18px;box-sizing:border-box}
.aacb--small{--min:100px}
.aacb--large{--min:160px}
.aacb *{box-sizing:border-box}
.aacb button,.aacb select,.aacb input{font:inherit;color:var(--ink);text-transform:none;letter-spacing:normal;margin:0}
.aacb-bar{display:flex;gap:8px;align-items:stretch;background:#fff;border:3px solid var(--ink);border-radius:14px;padding:8px;position:sticky;top:var(--aacb-top,0px);z-index:5}
.aacb--nosticky .aacb-bar{position:static}
.aacb p,.aacb label{color:var(--ink);margin-bottom:0}
.aacb-sentence{flex:1;min-height:56px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:1.25rem;font-weight:700}
.aacb-hint{opacity:.6;font-weight:400}
.aacb-chip{background:#ffe9a8;border:2px solid var(--ink);border-radius:10px;padding:4px 10px}
.aacb .aacb-b,.aacb .aacb-b:hover,.aacb .aacb-b:focus{font-weight:700;border:3px solid var(--ink);border-radius:12px;padding:0 14px;min-width:60px;min-height:48px;cursor:pointer;background:#e8eefc;color:var(--ink);box-shadow:none}
.aacb .aacb-speak,.aacb .aacb-speak:hover,.aacb .aacb-speak:focus{background:#1d2a44;color:#fff;min-height:56px}
.aacb-bar .aacb-b{min-height:56px}
.aacb-tabs{display:flex;gap:6px;overflow-x:auto;padding:12px 2px 8px}
.aacb .aacb-tab,.aacb .aacb-tab:hover,.aacb .aacb-tab:focus{font-weight:700;white-space:nowrap;border:3px solid var(--ink);border-radius:999px;padding:10px 16px;min-height:48px;cursor:pointer;background:#fff;color:var(--ink);box-shadow:none}
.aacb .aacb-tab[aria-pressed=true]{background:var(--c);box-shadow:0 3px 0 var(--ink)}
.aacb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--min),1fr));gap:10px;padding:6px 0}
.aacb .aacb-tile,.aacb .aacb-tile:hover,.aacb .aacb-tile:focus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:calc(var(--min) + 4px);padding:8px;border:3px solid var(--ink);border-radius:16px;background:var(--c);color:var(--ink);cursor:pointer;touch-action:manipulation;box-shadow:none}
.aacb .aacb-tile:active{transform:translateY(2px);outline:4px solid var(--ink)}
.aacb-pic{font-size:2.8rem;line-height:1}
.aacb-pic img{width:calc(var(--min) * .55);height:calc(var(--min) * .55);object-fit:contain;display:block;margin:0 auto}
.aacb-lab{font-weight:700;font-size:1rem;text-align:center;line-height:1.15}
.aacb-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 0;font-weight:700}
.aacb-row input[type=text],.aacb-row select{padding:10px;border:3px solid var(--ink);border-radius:10px;min-height:48px;min-width:180px;max-width:100%;background:#fff}
.aacb-row input[type=range]{min-height:48px;width:140px}
.aacb button:focus-visible,.aacb input:focus-visible,.aacb select:focus-visible{outline:4px solid #0a58ff;outline-offset:2px}
.aacb-note{font-size:.9rem;margin:8px 2px 0}
@media (max-width:480px){.aacb{--min:100px}.aacb--large{--min:130px}.aacb-pic{font-size:2.3rem}}
