.game-route{width:100%;min-width:0}.game-route .game-status button,.game-route .game-status select,.game-route .game-actions>button,.game-route .game-action-overflow summary,.game-route .game-action-overflow>button{min-height:2.75rem;padding:.55rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--ink);font-weight:700}.game-route .game-route-retry{min-height:2.75rem;padding:.55rem .8rem;border:1px solid var(--garden);border-radius:var(--radius-sm);background:var(--garden);color:var(--paper-raised);cursor:pointer;font-weight:750}.game-route .game-status button,.game-route .game-actions>button,.game-route .game-action-overflow summary,.game-route .game-action-overflow>button{cursor:pointer}.game-route .game-status button:hover:not(:disabled),.game-route .game-actions>button:hover:not(:disabled),.game-route .game-action-overflow summary:hover,.game-route .game-action-overflow>button:hover:not(:disabled){border-color:var(--garden);background:color-mix(in srgb,var(--paper-raised) 88%,var(--garden))}.game-route button:disabled{cursor:not-allowed;opacity:.48}.game-route .game-action-overflow summary{display:grid;min-width:2.75rem;place-items:center}.game-route .game-notice,.game-route .game-how-to-play{color:var(--ink-muted)}.game-route .game-how-to-play summary{min-height:2.75rem;padding-block:.7rem;cursor:pointer;font-weight:750}.game-route-number-link .number-link-board{margin-inline:auto}.game-route-loading{margin:2rem auto;color:var(--ink-muted);text-align:center}.game-route-error{width:min(100%,var(--board-max));margin:2rem auto;padding:1rem;border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--ink)}.game-route-error p{margin:0 0 .75rem}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:clamp(1.5rem,4vw,2.75rem);color:var(--ink-muted);font-size:.9rem}.breadcrumb a{text-underline-offset:.22em}.game-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.82fr);align-items:center;gap:clamp(2rem,7vw,6rem)}.game-detail-copy .page-title{max-width:12ch}.game-summary{max-width:38rem;margin:1.25rem 0 0;color:var(--ink);font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:750;line-height:1.5}.game-detail-copy .page-intro{margin-bottom:1.5rem}.game-detail-thumbnail-frame{position:relative;margin:0;padding:clamp(1rem,4vw,2.2rem);border:1px solid var(--line);border-radius:.25rem 1.6rem;background:linear-gradient(90deg,transparent 2.9rem,rgb(232 100 74 / 22%) 2.9rem 3rem,transparent 3rem),repeating-linear-gradient(0deg,transparent 0 1.7rem,rgb(31 102 83 / 9%) 1.7rem calc(1.7rem + 1px)),var(--paper-raised);box-shadow:var(--shadow);transform:rotate(.8deg)}.game-detail-thumbnail-frame:before{position:absolute;inset:-.8rem auto auto 1.25rem;padding:.35rem .65rem;border:1px solid var(--ink);background:var(--ochre);color:var(--ink);content:attr(data-marker);font-size:.72rem;font-weight:850;letter-spacing:.12em}.game-detail-thumbnail{display:block;width:100%;border:1px solid var(--line);background:var(--paper)}.game-rules,.difficulty-panel{display:grid;grid-template-columns:minmax(11rem,.65fr) minmax(0,1.35fr);gap:clamp(1.5rem,5vw,4rem);margin-top:clamp(3rem,8vw,6rem);padding-top:1.5rem;border-top:2px solid var(--garden-dark)}.section-kicker{margin:0 0 .5rem;color:var(--coral);font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.game-rules h2,.difficulty-panel h2{margin:0;color:var(--garden-dark);font-size:clamp(1.5rem,3vw,2.25rem)}.game-rules ol{display:grid;gap:1rem;margin:0;padding:0;list-style:none;counter-reset:garden-rule}.game-rules li{position:relative;min-height:2.4rem;padding-inline-start:3.25rem;color:var(--ink-muted);line-height:1.65;counter-increment:garden-rule}.game-rules li:before{position:absolute;inset:0 auto auto 0;display:grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid var(--garden);border-radius:50%;color:var(--garden-dark);content:counter(garden-rule);font-weight:850}.difficulty-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.difficulty-links a{display:grid;min-height:4.25rem;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);color:var(--garden-dark);font-weight:800;text-decoration:none}.difficulty-links a:hover{border-color:var(--garden);background:#1f665314}.game-play-page{width:min(calc(100% - 1rem),var(--content));overflow-x:clip;padding-top:clamp(1.25rem,3vw,2.5rem)}.game-play-heading{width:min(100%,var(--board-max));margin-inline:auto}.game-back-link{display:inline-flex;align-items:center;gap:.45rem;min-height:2.75rem;color:var(--ink-muted);text-underline-offset:.22em}.game-play-heading h1{margin:.35rem 0 0;color:var(--garden-dark);font-size:clamp(1.75rem,5vw,3rem);line-height:1.1}@media(max-width:46rem){.game-detail-hero,.game-rules,.difficulty-panel{grid-template-columns:1fr}.game-detail-thumbnail-frame{order:-1}.game-detail-copy .page-title{font-size:clamp(2.4rem,13vw,4rem)}}@media(max-width:30rem){.difficulty-links{grid-template-columns:1fr}.game-play-page{width:min(calc(100% - 1rem),var(--content))}}@media(prefers-reduced-motion:no-preference){.difficulty-links a,.game-primary-play{transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.difficulty-links a:hover,.game-primary-play:hover{transform:translateY(-2px)}}
