/* Four new daily rituals, built around a comfortable phone-sized board. */
.game-kinship,.game-color-kinship{--game-accent:#b8a3d7;--game-accent-soft:#eee7f7;--tile-color:#eee7f7}
.game-rungs,.game-color-rungs{--game-accent:#8db8a3;--game-accent-soft:#e4eee7;--tile-color:#e4eee7}
.game-tally,.game-color-tally{--game-accent:#e4aa79;--game-accent-soft:#f8e6d6;--tile-color:#f8e6d6}
.game-lightsout,.game-color-lightsout{--game-accent:#a3acdc;--game-accent-soft:#e8e9f7;--tile-color:#e8e9f7}
.extra-game .page-shell{max-width:740px}.extra-game .game-card{padding-bottom:0}.extra-game .puzzle-header{margin-bottom:12px}
.extra-game .status-line{min-height:1.6em;text-align:center;font-size:.9rem;line-height:1.5;margin:12px 0;color:#515843}
.extra-meter{text-align:center;font-size:.8125rem;color:#626951;margin:14px 0 24px;line-height:1.5}
#extra-board{max-width:520px;margin:0 auto}.extra-tile,.tally-op,.light-cell{font-family:inherit;font-weight:750;border:1px solid #cbd0c0;border-radius:9px;background:white;color:#20271a;cursor:pointer;transition:background .14s,transform .14s}
.extra-tile:focus-visible,.tally-op:focus-visible,.light-cell:focus-visible{outline:3px solid #20271a;outline-offset:3px}
.extra-tile.selected,.tally-op.selected{background:#293220;color:white;border-color:#293220}
.extra-tile:disabled,.tally-op:disabled{cursor:default;opacity:.65}.extra-game .nav-row{max-width:520px;margin:22px auto 0}.extra-game .nav-row .btn{padding:11px 12px;font-size:.875rem;white-space:nowrap}
.extra-secondary{text-align:center;margin:18px 0}.extra-secondary button{font:inherit;font-size:.8rem;padding:12px 16px;min-height:44px;border:0;background:none;color:#686e5c;text-decoration:underline;cursor:pointer}
.kinship-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.kinship-grid .extra-tile{font-size:clamp(.75rem,3vw,.9rem);line-height:1.25;min-height:74px;padding:8px 3px;overflow-wrap:anywhere;text-transform:uppercase;background:#edece3;border-color:transparent;letter-spacing:-.01em}.kinship-grid .extra-tile.selected{background:#333929;color:#fff}
.kinship-group{border-radius:9px;padding:15px 8px;text-align:center;margin-bottom:7px;min-height:73px;display:flex;flex-direction:column;justify-content:center;gap:5px}.kinship-group strong{font-size:.85rem}.kinship-group span{font-size:.76rem;line-height:1.5}.level-0{background:#ead47d}.level-1{background:#a8c593}.level-2{background:#a4bbd8}.level-3{background:#c4acd9}
.rungs-destination{text-align:center;padding:15px 0 22px;border-bottom:1px solid var(--line);margin-bottom:20px}.rungs-destination>span,.tally-target>span{font-size:.68rem;letter-spacing:.14em;display:block;font-weight:650;color:#667157}.rungs-destination strong{font-size:2.3rem;letter-spacing:.18em;display:block;margin-top:7px}.rungs-ladder{list-style:none;padding:0;max-width:300px;margin:auto;display:grid;gap:7px}.rungs-ladder li{display:grid;grid-template-columns:28px repeat(4,1fr);gap:7px;align-items:center}.rung-index{font-size:.75rem;color:#7b8270}.rung-letter{height:52px;display:grid;place-items:center;border:1px solid #cbd4c4;border-radius:6px;background:white;font-size:1.6rem;font-weight:750}.rung-letter.changed{background:#bdd8bb;border-color:#8aa685}
.rungs-form{display:flex;max-width:330px;margin:22px auto 0;gap:10px}.rungs-form input{min-width:0;width:100%;flex:1;font-family:inherit;font-weight:700;font-size:1.35rem;letter-spacing:.18em;text-align:center;text-transform:uppercase;border-radius:8px;border:1px solid #a7b29e;padding:12px 8px;background:white;min-height:48px}.rungs-form button{flex:0 0 auto}
.tally-target{text-align:center;padding:10px 0 24px}.tally-target strong{display:block;font-size:clamp(4.5rem,16vw,6rem);line-height:1.2;font-weight:750;letter-spacing:-.07em}.tally-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:160px;align-content:start}.tally-numbers .extra-tile{height:75px;font-size:1.9rem;background:#f2e5d3;border-color:#d8c3a8}.tally-numbers .extra-tile.selected{background:#3b3026;color:#fff;border-color:#3b3026}.tally-operators{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0 0}.tally-op{height:55px;font-size:1.65rem}.tally-instruction{text-align:center;font-size:.85rem;color:#69705d;min-height:22px;margin:14px 0}.tally-history{padding-left:24px;font-size:1rem;line-height:1.7;font-variant-numeric:tabular-nums;max-width:290px;margin:0 auto}.tally-history li{padding-left:8px}
.lights-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:16px;background:#292d41;border-radius:16px;max-width:380px;margin:26px auto 0;box-shadow:inset 0 0 0 1px #202537}.light-cell{aspect-ratio:1;min-height:50px;background:#3e435c;border:1px solid #545c7b;color:#737e9f;font-size:2rem;border-radius:9px}.light-cell.on{background:#eed88b;color:#473e26;border-color:#f5e5b0;box-shadow:0 0 18px #eed88b26}.light-cell:active{transform:scale(.94)}.light-cell:focus-visible{outline-color:white;outline-offset:1px}.lights-caption{font-size:.85rem;line-height:1.6;color:#687059;text-align:center;margin:20px auto;max-width:290px}
.extra-game .results-card{max-width:520px;margin:24px auto}.extra-game #extra-solution{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}.extra-game .howto-card{max-width:520px;margin:25px auto}.extra-game .game-dayline{margin-bottom:20px}
@media(max-width:420px){.kinship-grid{gap:5px}.kinship-grid .extra-tile{min-height:66px}.extra-game .nav-row{gap:7px}.extra-game .nav-row .btn{padding:10px 13px;font-size:.85rem}.lights-grid{padding:13px;gap:8px}.rung-letter{height:48px}}
@media(prefers-reduced-motion:reduce){.extra-tile,.tally-op,.light-cell{transition:none}}

.extra-game .nav-row{display:grid;grid-template-columns:1fr 1fr;position:static;background:none;padding:0}
.extra-game #submit-btn{grid-column:1/-1;min-height:48px}
@media(min-width:600px){.extra-game .nav-row{grid-template-columns:1fr 1fr 1.4fr}.extra-game #submit-btn{grid-column:auto}}
