
/* Authored campaign navigation: bounded modal, generous targets, no hover dependency. */
.level-picker-trigger{min-height:44px;max-width:100%;padding:8px 14px;font:inherit;font-weight:700;border:1px solid #80739b;border-radius:16px;background:#fffaf2;color:#42345d;white-space:normal}
#dialog.level-picker-dialog{width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow-y:auto;box-sizing:border-box}
.level-picker-dialog .level-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}
.level-grid button{min-width:0;min-height:68px;padding:10px 5px;border:2px solid #cec4db;border-radius:14px;background:#fffaf2;color:#42345d;font:inherit;font-weight:700;overflow-wrap:anywhere}
.level-grid button[aria-current="true"]{border-color:#65508c;box-shadow:inset 0 0 0 1px #65508c}
.level-grid button[data-cleared="true"]{background:#e7f7ed}
.level-grid small{display:block;font-size:.72em;font-weight:500;line-height:1.3;margin-top:4px}
.level-grid button:focus-visible,.level-picker-trigger:focus-visible{outline:3px solid #55417f;outline-offset:3px}
@media(max-width:380px){.level-picker-dialog .level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-heading .game-tools{flex-wrap:wrap}}
