.placement-card{position:absolute;z-index:7;width:76px;overflow:hidden;border:2px solid #86e3d1;border-radius:13px;background:#21354d;box-shadow:0 8px 22px #08142388;pointer-events:none;transform:rotate(-3deg)}
.placement-card[hidden]{display:none!important}.placement-card canvas{display:block;width:72px;height:98px}.placement-card span{display:block;padding:4px 2px;color:#e1fff4;text-align:center;font-size:11px;line-height:1.35;font-weight:750;background:#24473e}
.placement-card[data-kind=swap]{border-color:#edc686}.placement-card[data-kind=swap] span{background:#57432b;color:#fff2d4}.placement-card[data-kind=cancel]{border-color:#c1bac1}.placement-card[data-kind=cancel] span{background:#443e4a;color:#f2e9f4}
#world{touch-action:none}.hintline{line-height:1.6}@media(prefers-reduced-motion:reduce){.placement-card{transform:none}}
/* Keep the introduction and its real start/restore controls inside short fields. */
@media(max-height:600px) and (min-width:650px){
 .cover{padding:8px}
 .cover .card{width:min(740px,100%);max-height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'overview steps' 'difficulty seed' 'start resume' 'note note';gap:6px 16px;padding:10px 14px;overflow:auto;overscroll-behavior:contain}
 .cover .start-overview{grid-area:overview;align-self:center}.cover .start-overview h1{margin:2px 0;font-size:22px}.cover .start-overview .intro-goal{font-size:12px;line-height:1.4;margin:3px 0}
 .cover .start-steps{grid-area:steps;display:grid;gap:4px;margin:0}.cover .start-steps li{padding:4px 8px;font-size:10px;line-height:1.45}.cover .start-steps b{display:inline;font-size:12px;margin-right:8px}
 .cover .start-difficulty{grid-area:difficulty;margin:0;width:100%;max-width:none;justify-content:center}.cover .start-difficulty .quiet{flex:1;min-height:38px;padding:5px}
 .cover .start-seed{grid-area:seed;align-self:center;margin:0}.cover .start-seed summary{padding:6px}
 .cover #start{grid-area:start;margin:0;min-height:44px}.cover #continue{grid-area:resume;margin:0;min-height:44px}.cover .start-note{grid-area:note;margin:0;line-height:1.35}
}

/* Held empty-cell taps use the same actual range projection as dragging. */
.placement-card[data-gesture=tap]{width:205px;max-width:calc(100% - 12px);transform:none;display:grid;grid-template-columns:52px minmax(0,1fr);gap:0;align-items:stretch;border-radius:12px}
.placement-card[data-gesture=tap] canvas{width:52px;height:71px;grid-row:1/3}
.placement-card[data-gesture=tap] span{padding:5px 7px;font-size:11px;text-align:left;background:#24473e}
.placement-card[data-gesture=tap] .placement-reading{display:block;padding:4px 7px;font-size:10px;line-height:1.5;color:#d7ebf4;overflow-wrap:anywhere;background:#21354d}
.placement-card[data-gesture=tap][data-kind=cancel]{grid-template-columns:52px minmax(0,1fr)}
.placement-card[data-gesture=tap][data-kind=cancel] canvas{grid-row:auto}.placement-card[data-gesture=tap][data-kind=cancel] span{display:flex;align-items:center;background:#443e4a}
