.puzzle-hero{display:flex;min-height:0!important;align-items:end;justify-content:space-between!important;gap:16px;padding:14px 0 4px!important}
.puzzle-layout{display:grid;grid-template-columns:minmax(320px,680px) 255px;justify-content:center;gap:16px;align-items:start;padding-top:4px!important}
.puzzle-play,.puzzle-info{padding:16px}
.puzzle-play-head{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px}
.puzzle-play h2,.puzzle-info h2{margin:3px 0;font-size:20px}
.puzzle-solved-badge{padding:6px 9px;border-radius:999px;background:#163624;color:#9be8ae;font-size:12px}
.puzzle-board-root{width:min(100%,600px);margin:auto}
.puzzle-online-board .board-frame{margin:0!important;padding:0!important;border:0!important;border-radius:3px!important;overflow:hidden}
.puzzle-online-board .board{width:100%!important;max-width:none!important;aspect-ratio:1}
.puzzle-online-board .square{cursor:pointer}
.puzzle-online-board .board-annotations{display:none}
.puzzle-live-feedback{min-height:24px;margin:12px 0 0;color:#ddd;font-size:14px;line-height:1.45}
.puzzle-feedback{min-height:22px;margin-top:12px;color:#ddd;font-size:14px;line-height:1.45}
.puzzle-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.puzzle-actions button{padding:9px 12px}
.puzzle-info{display:grid;gap:12px}
.puzzle-info>p{display:none}
.puzzle-tip{display:grid;gap:5px;padding:12px;border-radius:10px;background:#191919;color:#aaa;font-size:13px;line-height:1.45}
.puzzle-tip b{color:#fff}
.puzzle-stat{display:flex;gap:8px;align-items:baseline}
.puzzle-stat b{font-size:27px}
.puzzle-stat span{color:#aaa;font-size:13px}
.marathon-card{max-width:950px;margin:8px auto 0;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.marathon-card h2{margin:3px 0 5px;font-size:21px}.marathon-card p{margin:0;color:#b9b9b9;font-size:14px;line-height:1.4}.marathon-track{display:flex;gap:5px;margin:9px 0}.marathon-dot{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid #404040;color:#999;font-size:11px}.marathon-dot.done{background:#1a6d3a;border-color:#299950;color:#fff}.marathon-dot.current{border-color:#7fa8ff;color:#b9ceff;background:#1b2c4d}
/* The general desktop hero reserves space for the home-page photo. Tasks do not use it. */
@media(min-width:900px){.puzzle-hero{flex-direction:row!important;padding-right:0!important;align-items:end!important}}
@media(max-width:820px){.puzzle-layout{grid-template-columns:1fr;max-width:610px}.puzzle-hero{align-items:start;flex-direction:column}}
@media(max-width:520px){.puzzle-play,.puzzle-info{padding:12px}.puzzle-actions button{flex:1;font-size:13px}.puzzle-hero{gap:8px}.marathon-card{padding:13px;align-items:stretch;flex-direction:column}.marathon-card .primary{width:100%}.marathon-dot{width:21px;height:21px;font-size:10px}}
