/* Responsive Wii channel shelves: fill the width, then turn pages. */
.channel-stage .channel-grid{width:100%;max-width:none;flex:1;min-height:0;grid-template-columns:repeat(var(--channel-columns,4),minmax(0,1fr));grid-template-rows:repeat(var(--channel-rows,3),minmax(0,1fr));gap:16px;align-content:stretch}
.channel-stage .channel{aspect-ratio:auto;height:100%;min-height:0}
.channel-page-nav{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;height:56px;min-height:56px;margin-top:0;padding-top:12px;box-sizing:border-box;flex:none}
.channel-page-nav>button{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid #91baa84d;border-radius:50%;background:#10251e99;color:#d4e8d8}
.channel-page-nav>button svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.channel-page-nav>button:disabled{opacity:.2}
.channel-page-dots{display:flex;align-items:center;justify-content:center;gap:0}
.channel-page-dots button{display:grid;place-items:center;width:28px;height:44px;border:0;padding:0;background:none}
.channel-page-dots span{width:7px;height:7px;border-radius:50%;background:#65857366;transition:width .15s,background .15s}
.channel-page-dots [aria-current] span{width:17px;border-radius:5px;background:#b9d9be;box-shadow:0 0 12px #b8e4c94d}
.channel-page-nav button:focus-visible{outline:2px solid #e1f0d8;outline-offset:3px}
@media(max-width:650px){.channel-stage .channel-grid{gap:12px}.channel-page-nav{gap:8px}.channel-page-dots button{width:24px}}
.mode-view:has(.public-channel){display:block}
.public-channel{display:flex;flex-direction:column;gap:14px;min-height:480px;max-height:min(78vh,760px);overflow:auto;padding:32px 36px 24px;border:4px solid #18231b;border-radius:25px;background:linear-gradient(165deg,#1c2e24,#0b120e);color:#e7f2e4;box-shadow:0 0 0 1px #68766a,0 30px 90px #000}
.public-channel h1{margin:0;font-size:clamp(28px,4vw,44px);letter-spacing:.12em}
.public-channel h2{margin:8px 0 0;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#b7d4c0}
.public-channel p{margin:0;max-width:68ch;line-height:1.45}
.public-channel ul{margin:0;padding-left:1.2em}
.public-channel li{margin:8px 0}
.public-channel li span{color:#9eb8a8}
.public-channel .tap-in-actions{margin-top:auto;padding-top:8px}
.public-brand{margin:0;letter-spacing:.18em}
