/* Daily Path: soft coral, warm paper, a single uninterrupted ink trail. */
.game-tab[data-game="dailypath"],.game-tab[data-game="dailypath"][aria-current=true]{background:#f4ddd5;border-color:#e7c1b5}
.game-tab[data-game="dailypath"] .tab-icon{background:#e7b5a5}
.dp-shell{width:100%;height:100%;max-width:760px;min-height:0;margin:0 auto;display:flex;flex-direction:column;color:var(--ink,#2b2420)}
.dp-shell .dp-heading{flex:0 0 auto;gap:10px;min-height:52px;padding:3px 2px 9px}
.dp-shell .dp-badge{white-space:nowrap}
.dp-shell .dp-badge:not(.solved){background:#efd2c6;color:#814b3e}
.dp-workspace{box-sizing:border-box;display:flex;flex:1 1 0;flex-direction:column;gap:8px;min-height:0;min-width:0;padding:14px;background:#fbede6;border:1px solid #ecd1c4;border-radius:25px;box-shadow:0 9px 25px #61462c0a}
.dp-instructions{flex:0 0 auto;margin:0;text-align:center;font-size:12px;line-height:1.35;color:#765b50}
.dp-board-frame{display:flex;flex:1 1 0;align-items:center;justify-content:center;min-width:0;min-height:0;width:100%;overflow:hidden}
.dp-board{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(var(--dp-size),minmax(0,1fr));grid-template-rows:repeat(var(--dp-size),minmax(0,1fr));width:var(--dp-side,100%);height:var(--dp-side,100%);max-width:100%;max-height:100%;aspect-ratio:1;background:#fffbf6;border:1px solid #ddbeb0;border-radius:15px;overflow:hidden;box-sizing:border-box;touch-action:none;user-select:none;-webkit-user-select:none}
.dp-shell .dp-cell{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#3e302a;font-family:inherit;box-shadow:inset -1px -1px 0 #eddcd1;touch-action:none;-webkit-tap-highlight-color:transparent}
.dp-shell .dp-cell.dp-visited{background:#f6ded1}
.dp-number{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:60%;height:60%;max-width:38px;max-height:38px;aspect-ratio:1;border:2px solid #8e513f;border-radius:50%;background:#fffbf6;color:#573c30;font-size:clamp(12px,2.1vw,19px);font-weight:750;line-height:1;box-sizing:border-box}
.dp-visited .dp-number{background:#a5604a;border-color:#a5604a;color:#fffaf4}
.dp-dot{position:relative;z-index:2;width:5px;height:5px;border-radius:50%;background:#d9c2b5}
.dp-visited .dp-dot{background:#ab654f}
.dp-endpoint:not(.dp-checkpoint) .dp-dot{width:13px;height:13px;background:#874630;border:3px solid #fff7ef;box-sizing:content-box}
.dp-path{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}
.dp-path polyline{fill:none;stroke:#ad6b53;stroke-width:15;stroke-linecap:round;stroke-linejoin:round}
.dp-shell .dp-cell:focus-visible{outline:3px solid #5c463a;outline-offset:-4px;z-index:3}
.dp-status{flex:0 0 auto;display:flex;align-items:center;justify-content:center;min-height:32px;margin:0;font-size:12px;line-height:1.3;text-align:center;color:#6f4939}
.dp-controls{flex:0 0 auto;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:430px;align-self:center}
.dp-controls button{min-height:44px;border:1px solid #dfc1b1;border-radius:12px;padding:8px 5px;background:#fff9f3;color:#513b30;font-family:inherit;font-size:13px;font-weight:650;touch-action:manipulation}
.dp-controls button.primary{background:#92533f;color:#fffaf4;border-color:#92533f}
.dp-controls button:disabled{opacity:.4;cursor:default}
.dp-controls button:focus-visible{outline:3px solid #77412f;outline-offset:2px}
.dp-keyboard-hint{flex:0 0 auto;margin:0;text-align:center;font-size:10px;line-height:1.3;color:#8a6d5d}
.dp-shell.is-solved .dp-path polyline{stroke:#648153}.dp-shell.is-solved .dp-visited .dp-number{background:#648153;border-color:#648153}.dp-shell.is-solved .dp-status{color:#48653d;font-weight:650}
/* The wide desktop host has auto height; establish space for its flex board. */
@media(min-width:1401px){.dp-shell{height:calc(100dvh - 240px);max-height:680px}}
@media(max-width:600px){.dp-workspace{padding:10px;gap:6px;border-radius:20px}.dp-keyboard-hint{display:none}.dp-instructions{font-size:11px}.dp-status{font-size:11px;min-height:30px}.dp-number{font-size:clamp(12px,4vw,17px)}.dp-controls{gap:6px}.dp-controls button{font-size:12px}}
@media(max-height:620px){.dp-shell .dp-heading{min-height:43px;padding-bottom:5px}.dp-workspace{gap:5px;padding:8px}.dp-keyboard-hint{display:none}.dp-status{min-height:27px;font-size:10px}.dp-instructions{font-size:10px}.dp-controls button{min-height:38px}}
@media(prefers-reduced-motion:reduce){.dp-shell *{animation:none!important;transition:none!important}}

.dp-controls .dp-back{grid-column:1/-1}
.dp-controls button[hidden]{display:none}
