:root{color-scheme:light}body{margin:0}.word-page{max-width:1240px;margin:24px auto 40px;padding:0 18px;color:#233d33;font-family:'Zen Maru Gothic','Yu Gothic',Meiryo,sans-serif}.page-intro h1{font-size:clamp(26px,3vw,35px);margin:0 0 5px}.page-intro p{margin:0 0 22px}.word-app{background:#f4eedc;color:#233d33;box-shadow:0 12px 35px #44381722;border:1px solid #8a927b;border-radius:16px;overflow:hidden}.word-app *{box-sizing:border-box}.word-app [hidden]{display:none!important}.word-app button,.word-app input{font:inherit}.word-app button{min-width:44px;min-height:44px;padding:10px 18px;border:1px solid #9aab98;border-radius:8px;background:#fffaf0;color:#233d33;font-size:15px;font-weight:800;cursor:pointer}.word-app button:hover:not(:disabled){background:#ece8ce}.word-app button:disabled{cursor:default;opacity:1}.word-app button:focus-visible,.word-app a:focus-visible,.word-app input:focus-visible{outline:3px solid #dca52f;outline-offset:3px}.word-app .primary{color:#fffaf0;background:#315944;border-color:#274c39;box-shadow:0 4px 0 #1b3e2b}.word-app .primary:hover{background:#214833}.toolbar{display:flex;gap:18px;align-items:center;padding:12px 22px;background:#284b3b;color:#fff8dd;border-bottom:5px solid #d7b56e}.toolbar a{color:#fff8dd;display:grid;place-items:center;min-height:44px;font-size:13px;font-weight:800}.room-label{font-size:12px;letter-spacing:.12em;margin-right:auto}.game-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.game-tools button{padding:8px 10px;font-size:11px;background:#f7f0dc}.game-tools button[aria-pressed=true]{background:#ecd292}.scene{padding:32px}.cover{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:center;min-height:570px}.cover-art{position:relative;min-width:0;background:#ccaa71;border:8px solid #b58c54;box-shadow:4px 5px 0 #6a523028}.cover-art img{width:100%;height:auto;aspect-ratio:1.05;object-fit:cover;display:block}.cover-art>span{display:block;text-align:center;background:#f8efd4;padding:12px;font-size:13px;font-weight:800;letter-spacing:.06em;border-top:1px solid #b89964}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:800;color:#75623c}.invitation h2{font-size:clamp(36px,4vw,51px);line-height:1.5;letter-spacing:.03em;margin:15px 0}.invitation p{font-size:17px;line-height:1.9}.invitation p.small{font-size:12px}.sample{display:flex;align-items:center;gap:17px;margin:23px 0}.sample span{display:grid;place-items:center;width:68px;height:68px;background:#fffaf0;box-shadow:0 4px 0 #c2ae84;border:1px solid #d3c296;border-radius:8px;font-size:36px;font-weight:900}.sample b{color:#8e7b52;font-size:24px}.word-app .large{padding:15px 22px;font-size:19px;min-height:62px;width:100%;margin-top:6px}.play-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 25px}.play-heading h2{font-size:27px;margin:5px 0}.stats{display:flex;gap:0}.stats>span{text-align:center;padding:0 22px;border-left:1px solid #ccbea0}.stats small{display:block;font-size:11px;margin-bottom:4px}.stats b{font-size:27px;color:#315944}.workbench{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:35px;align-items:start}.board-area{min-width:0}.drawer{background:#d0ab72 url('./assets/maple.webp') center/cover;border:10px solid #ad7c42;padding:17px 17px 25px;box-shadow:inset 0 0 0 2px #eed3a1,4px 6px 0 #80613625;position:relative;border-radius:6px}.letter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;min-width:0}.word-app .tile{min-width:44px;min-height:44px;width:100%;padding:0;aspect-ratio:1;display:grid;place-items:center;font-size:clamp(27px,3.2vw,41px);font-weight:900;line-height:1;color:#303c2d;background:#fff9e9;border:1px solid #b9a27c;border-radius:7px;box-shadow:0 3px 0 #947749;position:relative}.word-app .tile.found::after{content:'✓';position:absolute;right:4px;bottom:3px;font-size:10px;font-weight:900}.word-app .tone-0{background:#e5be64;border-color:#9f7b2f}.word-app .tone-1{background:#a8c0ad;border-color:#638e73}.word-app .tone-2{background:#b5c7d4;border-color:#628ca5}.word-app .tone-3{background:#e1b39c;border-color:#af7a61}.word-app .tile.selected{background:#315944;color:#fff9dc;outline:3px solid #dab563;outline-offset:-4px}.word-app .tile.wrong{outline:3px dashed #9a5945;outline-offset:-4px}.drawer-pull{display:block;width:62px;height:11px;border:3px solid #8e713e;border-radius:0 0 9px 9px;margin:20px auto -13px;background:#c7a362}.selection{display:flex;align-items:center;gap:12px;margin-top:20px;font-size:12px;min-height:48px}.selection strong{font-size:20px;color:#315944;flex:1}.selection button{font-size:12px;padding:8px 12px}.find-list{background:#e5dfc9;border:1px solid #d0c4a5;padding:24px 22px;border-radius:5px}.find-list h3{margin:0 0 17px;font-size:20px}.word-slips{display:grid;gap:15px}.word-slip{display:flex;align-items:center;gap:13px;padding:13px 15px;background:#fffaf0;border:1px solid #d5c7a5;box-shadow:2px 3px 0 #a3967330;position:relative;border-radius:2px}.slip-number{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;font:700 13px Georgia,serif;border:1px solid #aa9b78;border-radius:50%;color:#736645}.word-slip strong{font-size:23px;letter-spacing:.13em;flex:1}.slip-state{font-size:10px;font-weight:900}.word-slip.done .slip-state{color:#243d30}.find-list #feedback{font-size:14px;line-height:1.8;min-height:54px;margin:20px 0 10px}.direction-note{border-top:1px dashed #ad9e7e;padding-top:17px;color:#756343}.direction-note b{font-size:18px}.direction-note p{font-size:13px;line-height:1.8;margin:8px 0 0}.find-list .primary{width:100%;margin-top:12px}.bench{margin:28px -32px -32px;padding:19px 32px;display:flex;gap:12px;justify-content:flex-end;background:#dfd4b6;border-top:1px solid #c8ba97}.record-heading{text-align:center;padding:5px 0 20px}.record-heading h2{font-size:clamp(28px,3vw,41px);margin:10px 0}.record-heading p{font-size:16px;font-weight:800}.notebook{background:linear-gradient(90deg,#fffaf0 49.6%,#dbd1b9 50%,#fffaf0 50.4%);padding:30px;border:1px solid #d5c4a2;border-bottom:9px solid #3f5e44;box-shadow:4px 6px 0 #967c4c22;display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;border-radius:4px 12px 5px 5px}.record-map{min-width:0}.record-map p{font-size:12px;text-align:center;margin-top:15px}.record-map .tile{font-size:27px;box-shadow:none}.record-actions{display:flex;justify-content:center;gap:13px;margin-top:28px;flex-wrap:wrap}.record-actions button{min-height:51px}.record-note{text-align:center;font-size:12px;line-height:1.7;margin:22px 0 0}.word-app dialog{width:min(92vw,550px);max-height:90dvh;padding:27px;border:3px solid #ae9462;border-radius:12px;background:#fff8e5;color:#233d33;box-shadow:0 20px 70px #233c3344}.word-app dialog::backdrop{background:#142e2499}.word-app dialog h2{margin:0 0 18px;font-size:25px}.word-app dialog p{font-size:16px;line-height:1.9}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}#sound-settings input{width:100%;min-height:44px;accent-color:#315944}#sound-settings output{float:right}#screen-note{margin:0;text-align:center;font-size:13px}#screen-note:not(:empty){padding:12px}.parent-note{margin:20px 10px;font-size:13px;line-height:1.9}.parent-note summary{display:flex;align-items:center;min-height:44px;font-weight:800;cursor:pointer}.word-app:fullscreen{width:100%;height:100dvh;border:0;border-radius:0;overflow:auto}.word-app:fullscreen .scene{max-width:1200px;margin:auto}.word-app:fullscreen .cover{min-height:calc(100dvh - 73px)}.word-app[data-paused=true] *{animation-play-state:paused!important}
@media(max-width:1000px){.room-label{display:none}.toolbar{justify-content:space-between}.scene{padding:23px}.cover{gap:28px}.cover-art img{aspect-ratio:.85}.invitation h2{font-size:37px}.invitation p{font-size:15px}.workbench{gap:24px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.drawer{padding:10px 10px 21px;border-width:7px}.letter-grid{gap:5px}.word-app .tile{font-size:29px}.find-list{padding:18px 15px}.word-slip{gap:9px;padding:11px}.word-slip strong{font-size:20px}.slip-state{font-size:9px}.stats>span{padding:0 15px}.bench{margin:25px -23px -23px;padding:19px 23px}.notebook{padding:23px;gap:40px}.record-map .tile{min-width:0;min-height:0;font-size:23px}}
@media(max-width:820px){.word-page{padding:0 10px}.scene{padding:19px}.toolbar{padding:10px 13px;gap:8px}.game-tools{gap:5px;justify-content:flex-end}.game-tools button{font-size:10px;padding:7px}.cover{gap:22px;min-height:520px}.invitation h2{font-size:32px}.sample span{width:55px;height:55px;font-size:29px}.invitation p.small{font-size:11px}.word-app .large{font-size:16px}.play-heading h2{font-size:22px}.stats>span{padding:0 12px}.stats small{font-size:10px}.workbench{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px}.drawer{padding:8px 8px 20px;border-width:5px}.word-slip{flex-wrap:wrap;padding:10px;gap:6px}.word-slip strong{font-size:21px}.word-slip .slip-state{width:100%;padding-left:33px}.find-list{padding:16px 13px}.word-slips{gap:11px}.direction-note{display:none}.bench{margin:25px -19px -19px;padding:18px 19px;gap:8px}.bench button{font-size:12px;padding:8px 11px}.selection{gap:7px;font-size:10px}.selection strong{font-size:17px}.selection button{font-size:11px;padding:8px}.notebook{padding:20px;gap:35px}.record-map .letter-grid{gap:4px}.record-map .tile{font-size:21px}}
@media(max-width:660px){.word-page{padding:0 4px;margin-top:17px}.page-intro{padding:0 10px}.toolbar{flex-wrap:wrap;padding:9px 11px}.game-tools{margin-left:auto}.word-app{border-radius:10px}.scene{padding:18px}.cover{display:flex;flex-direction:column;gap:23px}.cover-art{width:100%;border-width:5px}.cover-art img{aspect-ratio:1.8}.cover-art>span{font-size:11px;padding:10px}.invitation{text-align:center;width:100%}.invitation h2{font-size:33px;margin:10px 0}.invitation h2 br{display:none}.sample{justify-content:center;margin:17px 0}.invitation p{font-size:14px;margin:14px 0}.invitation p br{display:none}.word-app .large{font-size:18px;min-height:58px}.play{padding:4px}.play-heading{display:block;text-align:center;margin:17px 9px 20px}.play-heading h2{font-size:23px}.eyebrow{font-size:10px}.stats{justify-content:center;margin-top:18px}.stats>span{flex:1;padding:0 7px}.stats>span:first-child{border:0}.stats b{font-size:25px}.workbench{display:flex;flex-direction:column;gap:22px}.board-area{width:100%}.drawer{border-width:3px;padding:5px 5px 18px}.letter-grid{gap:4px}.word-app .tile{font-size:clamp(25px,7.4vw,39px);border-radius:5px}.drawer-pull{margin-top:17px;margin-bottom:-13px;height:9px;width:52px;border-width:2px}.selection{margin:16px 5px 0;gap:8px;font-size:10px}.selection strong{font-size:18px}.selection button{font-size:11px;padding:8px 10px}.find-list{width:100%;padding:15px}.find-list h3{font-size:18px;margin:0 0 14px}.word-slips{grid-template-columns:1fr 1fr;gap:11px}.word-slip{padding:10px 9px;gap:6px}.word-slip strong{font-size:22px;letter-spacing:.05em}.slip-number{width:23px;height:23px;font-size:12px}.word-slip .slip-state{padding-left:29px;font-size:10px}.find-list #feedback{margin:15px 0 0;min-height:50px;font-size:14px}.bench{margin:23px -4px -4px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.bench button{font-size:13px;padding:8px}.record{padding:14px}.record-heading h2{font-size:29px}.record-heading p{font-size:13px;line-height:1.8}.notebook{display:flex;flex-direction:column;gap:22px;padding:14px;background:#fffaf0}.record-map{width:100%}.notebook .word-slips{width:100%}.record-map .tile{font-size:24px}.record-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.record-actions .primary{grid-column:1/-1}.record-actions button{font-size:13px;min-height:48px;padding:9px}.record-note{font-size:11px}.word-app dialog{padding:20px}.word-app dialog p{font-size:14px}.word-app:fullscreen .cover{min-height:0}}
@media(max-width:350px){.game-tools button{font-size:10px;padding:7px}.toolbar{padding:8px}.word-slip strong{font-size:20px}.selection{gap:6px}.selection strong{font-size:16px}.find-list{padding:13px}.record{padding:12px}.notebook{padding:11px}.record-map .tile{font-size:20px}.notebook .word-slip{padding:9px 7px}.notebook .word-slip strong{font-size:18px}}
@media(max-height:500px) and (min-width:661px){.word-app:fullscreen .cover{min-height:0}.cover-art img{aspect-ratio:1.7}.invitation h2{font-size:29px}.sample{margin:12px 0}.invitation p{margin:10px 0}.word-app .large{min-height:50px}}
@media(prefers-reduced-motion:reduce){.word-app *{animation:none!important;transition:none!important}}
@media(max-width:350px){.word-page{padding:0}.play{padding:0}.drawer{border-width:2px;padding:2px 2px 18px}.letter-grid{gap:3px}.bench{margin-left:0;margin-right:0;margin-bottom:0}.selection{margin-left:5px;margin-right:5px}}
