.solitaire-page{max-width:960px;margin:30px auto 50px}.solitaire-page h1{font-size:clamp(42px,6vw,64px);letter-spacing:-2px;margin:12px 0}.solitaire-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:24px 0 16px}.solitaire-toolbar button,.solitaire-toolbar select{padding:12px 16px}.solitaire-table{--card-height:clamp(64px,13vw,133px);--card-step:clamp(21px,3.3vw,30px);padding:24px;background:#28544b;border-radius:18px;color:#fff;max-width:900px;min-height:420px}.solitaire-top{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:26px}.stock-area{grid-column:span 1}.waste-area{grid-column:span 2}.foundation-area{grid-column:span 4}.stock-area>span,.waste-area>span,.foundation-area>span{display:block;font-size:11px;line-height:1.4;margin-top:9px;color:#eee8d9}#waste{position:relative;height:var(--card-height)}#waste .playing-card{position:absolute;width:calc((100% - 8px)/2)}#foundations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}#tableau{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start}.solitaire-column{position:relative;min-width:0}.playing-card{height:var(--card-height);width:100%;min-width:0;border:1px solid #cfc8b9;background:#fffdf6;border-radius:7px;box-shadow:0 2px 3px #0003;padding:0;position:relative;overflow:hidden;text-align:left;color:#29252d;font-family:Georgia,serif}.playing-card:hover{transform:none;background:#fffdf6}.playing-card:focus-visible{outline:3px solid #ffdb6a;outline-offset:2px;z-index:60!important}.playing-card:disabled{opacity:1;cursor:default}.card-corner{position:absolute;top:5px;left:5px;font-size:clamp(12px,2.3vw,22px);font-weight:700;letter-spacing:-1px}.card-suit{position:absolute;top:35%;left:0;right:0;text-align:center;font-size:clamp(24px,5vw,43px)}.red-card{color:#b62d3c}.solitaire-column .playing-card{position:absolute;left:0}.solitaire-column .playing-card[hidden]{display:none}.playing-card.chosen{background:#fff1b3;outline:3px solid #ffd461;outline-offset:-3px}.playing-card.card-back{background:repeating-linear-gradient(45deg,#725b92 0px,#725b92 5px,#8871a6 5px,#8871a6 7px);border:3px solid #e8e0ed;text-align:center;display:flex;align-items:center;justify-content:center;color:#f8f1dd;font:32px Georgia,serif}.playing-card.empty-card{background:#183d3550;color:#ecedda80;border:2px dashed #dfdfd64d;display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(14px,3vw,32px);box-shadow:none}.playing-card.empty-card.red-card{color:#ffc2b9}.solitaire-page #solitaire-status{min-height:2.8em;line-height:1.5;font-weight:600;color:#65447c}.solitaire-page .about{margin-top:25px}.solitaire-page .hint{font-size:14px}@media(max-width:650px){.solitaire-table{padding:12px 8px;min-height:345px;border-radius:12px}.solitaire-top,#tableau,#foundations{gap:4px}.solitaire-top{margin-bottom:20px}#waste .playing-card{width:calc((100% - 4px)/2)}.card-corner{left:3px;top:3px;font-size:13px}.solitaire-toolbar{gap:7px}.solitaire-toolbar button,.solitaire-toolbar select{font-size:14px;padding:11px}.stock-area>span,.waste-area>span,.foundation-area>span{font-size:9px}.playing-card.card-back{border-width:2px;font-size:22px}}

.movable-card{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.drag-source{opacity:.3}.solitaire-drag-ghost{position:fixed;pointer-events:none;z-index:10000;filter:drop-shadow(0 10px 8px #0005)}.solitaire-drag-ghost *{pointer-events:none}.drop-ready{outline:3px solid #ffdb6a;outline-offset:3px}.solitaire-column.drop-ready{border-radius:7px}
