:root{font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif;color:#352e27;background:#f2ede4;line-height:1.6}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;padding:clamp(10px,3vw,32px)}main{max-width:880px;margin:auto;background:#fffdf7;border:2px solid #d8cbb8;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px #503c2316}header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:clamp(18px,4vw,34px);background:#f0e1cc;border-bottom:2px solid #d4bea1}h1,h2,p{margin:0 0 .6em}h1{font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.2}h2{font-size:1.5rem}.eyebrow{font-size:.95rem;font-weight:700;color:#65482f}.art{width:clamp(80px,18vw,120px);flex:none}section{padding:clamp(18px,4vw,34px)}button{font:inherit;min-height:48px;border:2px solid #755a43;border-radius:8px;padding:9px 14px;background:#fffdf7;color:#352e27;cursor:pointer;font-weight:700}button:hover:not(:disabled){background:#f4e8d7}button:focus-visible,a:focus-visible{outline:4px solid #1c6380;outline-offset:3px}button:disabled{opacity:.65;cursor:default}.choices{display:flex;flex-wrap:wrap;gap:9px}.primary{background:#315e49;color:#fff;border-color:#244637}.primary:hover:not(:disabled){background:#244637}.summary,.selected{font-weight:700;background:#edf4e8;border-radius:8px;padding:10px}.board{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:9px;max-width:590px;margin:16px 0}.cell{min-width:0;min-height:148px;padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#fbf5ea;transition:background-color .2s}.cell svg{width:80px;max-width:100%;height:75px;flex:none}.cell span{font-size:.9rem;line-height:1.4;overflow-wrap:anywhere}.cell[aria-pressed=true]{box-shadow:inset 0 0 0 3px #315e49;background:#eaf3e6}.preview{padding:12px;border:2px dashed #9aaf9d;border-radius:8px;line-height:1.7}.status{background:#fff0d8;border-left:5px solid #a57832;min-height:3em;padding:10px;margin:18px 0;font-weight:700}footer{padding:20px 30px;background:#f3ede2;border-top:1px solid #d8cbb8}a{color:#1c5874;font-weight:700}.board-scroll{overflow-x:auto}.board.dense{grid-template-columns:repeat(var(--columns),88px);width:max-content;max-width:none}@media(max-width:440px){body{padding:6px}header,section{padding:16px}.art{width:72px}.board{gap:6px}.cell{min-height:140px;padding:5px}.cell svg{width:60px;height:58px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
