.memory-launch{pointer-events:auto;margin-top:18px;border:1px solid rgba(214,185,112,.52);background:linear-gradient(180deg,rgba(61,49,28,.92),rgba(27,24,17,.96));color:#ead9aa;padding:12px 18px;font-family:'Cinzel',Georgia,serif;text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:.2s}.memory-launch:hover{transform:translateY(-2px);filter:brightness(1.12)}
.memory-modal[hidden]{display:none}.memory-modal{position:fixed;inset:0;z-index:10020;background:rgba(2,3,3,.84);backdrop-filter:blur(5px);display:grid;place-items:center;padding:22px}.memory-panel{width:min(1080px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(214,185,112,.46);background:linear-gradient(155deg,rgba(20,21,17,.99),rgba(6,7,6,.99));box-shadow:0 35px 100px #000;padding:26px;position:relative;color:#e7dcc0}.memory-close{position:absolute;right:16px;top:13px;border:0;background:transparent;color:#cbb789;font:1.4rem Georgia;cursor:pointer}.memory-kicker{font-family:'Cinzel';text-transform:uppercase;letter-spacing:.28em;color:#b89a57;font-size:.58rem}.memory-title{font-family:'Cinzel';text-transform:uppercase;letter-spacing:.06em;font-weight:600;font-size:clamp(1.7rem,4vw,3.2rem);margin:6px 0 8px}.memory-sub{color:#a99e86;margin:0 0 20px}.memory-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.memory-mode{border:1px solid rgba(208,182,117,.22);background:rgba(12,14,12,.68);padding:20px;text-align:left;color:inherit;cursor:pointer;transition:.2s}.memory-mode:hover{border-color:rgba(222,191,112,.56);transform:translateY(-2px)}.memory-mode strong{display:block;font-family:'Cinzel';text-transform:uppercase;letter-spacing:.08em;color:#e2c980}.memory-mode span{display:block;color:#a99f89;margin-top:8px;line-height:1.4}.memory-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.memory-stat{border:1px solid rgba(210,183,115,.2);padding:8px 12px;min-width:110px}.memory-stat b{display:block;font-family:'Cinzel';font-size:.9rem;color:#e1c77d}.memory-stat small{color:#847b69;text-transform:uppercase;letter-spacing:.08em}.memory-board{display:grid;grid-template-columns:repeat(4,minmax(96px,1fr));gap:12px}.memory-card{display:block;aspect-ratio:4/5;border:0;padding:0;background:transparent;perspective:1000px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.memory-card[disabled]{cursor:default}.memory-card-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:translateZ(0);will-change:transform;transition:transform .34s cubic-bezier(.2,.72,.2,1)}.memory-card.is-open .memory-card-inner,.memory-card.is-matched .memory-card-inner{transform:rotateY(180deg)}.memory-face{display:block;position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid rgba(211,181,105,.36);box-shadow:0 13px 25px rgba(0,0,0,.48);overflow:hidden;pointer-events:none}.memory-back{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(129,100,43,.17),transparent 42%),linear-gradient(145deg,#15150f,#090a08);font-family:'Cinzel';color:#c7a85f;font-size:2.1rem}.memory-back::after{content:'';position:absolute;inset:8px;border:1px solid rgba(198,164,81,.28)}.memory-front{transform:rotateY(180deg);background:radial-gradient(circle at 50% 38%,#2a261a,#0b0c09 78%);display:grid;place-items:center;padding:10px}.memory-front img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 8px 11px #000)}.memory-card.is-matched .memory-front{box-shadow:inset 0 0 28px rgba(209,172,71,.2),0 0 22px rgba(209,172,71,.15)}.memory-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.memory-btn{border:1px solid rgba(208,180,110,.36);background:#15150f;color:#dfcca0;padding:10px 15px;font-family:'Cinzel';text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;cursor:pointer}.memory-btn.primary{background:#8b6c31;color:#120f09}.memory-lobby{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.player-add{display:flex;gap:8px}.player-add input{flex:1;background:#0b0c09;border:1px solid rgba(208,182,117,.25);color:#eadfc4;padding:11px}.player-list{display:grid;gap:8px;margin-top:12px}.player-chip{display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(208,182,117,.18);padding:10px 12px}.player-chip.active{border-color:#ba974b;background:rgba(123,94,40,.12)}.player-chip b{font-family:'Cinzel';font-size:.72rem}.player-chip span{color:#d1b76e}.memory-note{padding:14px;border:1px solid rgba(208,182,117,.16);color:#9e927a;font-size:.88rem;line-height:1.45}.memory-result{margin-top:16px;padding:16px;border:1px solid rgba(208,182,117,.26);background:rgba(123,94,40,.08)}.memory-result strong{font-family:'Cinzel';color:#e1c77d}.memory-best{color:#b49d68;font-style:italic}.memory-hidden{display:none!important}
@media(max-width:760px){.memory-mode-grid,.memory-lobby{grid-template-columns:1fr}.memory-board{grid-template-columns:repeat(3,1fr)}.memory-panel{padding:22px 16px}.memory-modal{padding:8px}}@media(max-width:470px){.memory-board{gap:8px}.memory-card{min-width:0}.memory-toolbar{gap:7px}.memory-stat{min-width:90px;padding:7px}}

.memory-board.is-checking .memory-card:not(.is-open):not(.is-matched){pointer-events:none}
.memory-card:focus-visible{outline:2px solid #d6b866;outline-offset:3px}
.memory-card.is-matched{cursor:default}
/* v23 — původní ilustrace z pexeso.zip */
.memory-setup{display:grid;gap:20px;max-width:720px}.memory-setup-label{display:block;margin-bottom:8px;font-family:'Cinzel';font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#b9a77d}.memory-segment{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:7px}.memory-choice{min-height:44px;border:1px solid rgba(208,182,117,.24);background:#0c0e0c;color:#b9ad92;font-family:'Cinzel';font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.memory-choice.active{background:#72592b;color:#f3e3b7;border-color:#c9a558}.memory-start{justify-self:start;min-width:190px}.memory-turn{text-align:center;min-height:24px;color:#cdb576;font-family:'Cinzel';font-size:.68rem;letter-spacing:.06em;margin:-4px 0 12px}.memory-board{grid-template-columns:repeat(var(--cols,8),minmax(0,1fr));gap:8px;max-width:980px;margin:0 auto}.memory-card{aspect-ratio:1/1}.memory-back{background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;color:transparent}.memory-back::after{display:none}.memory-front{padding:0;background:#0b0c09}.memory-front img{width:100%;height:100%;object-fit:cover;filter:none}.memory-stat.active{border-color:#c7a85f;background:rgba(120,91,38,.15)}
@media(max-width:900px){.memory-board{grid-template-columns:repeat(6,minmax(0,1fr))!important}.memory-card{min-width:0}}@media(max-width:650px){.memory-segment{grid-auto-flow:row}.memory-board{grid-template-columns:repeat(4,minmax(0,1fr))!important}}


/* v25 — původní ilustrace zůstávají, ale karty mají jednotný starý pergamenový vzhled */
.memory-card{aspect-ratio:620/760!important}
.memory-face{border:0;border-radius:10px;background:#15120d;box-shadow:0 12px 26px rgba(0,0,0,.50)}
.memory-front{padding:0;background:#19150f}
.memory-front img{width:100%;height:100%;object-fit:cover;filter:brightness(.98) saturate(.92)}
.memory-back{background-size:cover!important;background-position:center!important;border-radius:10px}
.memory-card.is-matched .memory-front{box-shadow:inset 0 0 32px rgba(218,176,68,.30),0 0 24px rgba(218,176,68,.18)}
.memory-board{gap:10px}
@media(max-width:650px){.memory-board{gap:7px}}

/* v42.2 — online duel a přehledný lobby panel */
.memory-online-setup{border:1px solid rgba(208,182,117,.24);background:rgba(8,10,8,.72);padding:14px;display:grid;gap:10px;max-width:720px}
.memory-online-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.memory-online-row input{min-width:170px;background:#0a0c0a;border:1px solid rgba(208,182,117,.28);color:#eadfc4;padding:10px 12px;text-transform:uppercase;letter-spacing:.16em;font-family:'Cinzel',Georgia,serif}.memory-room-code{font:700 1rem 'Cinzel',Georgia,serif;letter-spacing:.18em;color:#e4c875}.memory-online-setup p{margin:0;color:#a99d86;font-size:.84rem;line-height:1.45}.memory-player-modes{grid-template-columns:repeat(3,1fr);grid-auto-flow:initial}.memory-card.is-matched{opacity:.82}.memory-card[disabled]{pointer-events:none}
@media(max-width:650px){.memory-player-modes{grid-template-columns:1fr;}.memory-online-row{align-items:stretch}.memory-online-row input,.memory-online-row .memory-btn{width:100%}}
