.potion-brew-launch{display:block;margin-top:12px;border:1px solid #d1ad60;background:linear-gradient(180deg,#c59a4c,#795326);color:#120c06;padding:13px 17px;font:700 .58rem 'Cinzel',Georgia,serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 0 #382411,0 12px 24px rgba(0,0,0,.38)}
.potion-brew-launch:hover{transform:translateY(-2px);filter:brightness(1.08)}
.brew-modal{position:fixed;inset:0;z-index:4000;display:grid;place-items:center;background:rgba(0,0,0,.91);padding:10px;backdrop-filter:blur(8px)}.brew-modal[hidden]{display:none}
.brew-panel{width:min(1180px,99vw);height:min(900px,97vh);overflow:auto;position:relative;padding:22px;background:linear-gradient(rgba(6,8,6,.94),rgba(3,5,4,.985)),url('img/wall.webp') center/cover;border:1px solid rgba(214,181,104,.38);color:#eadfc8;box-shadow:0 35px 120px #000}
.brew-close{position:sticky;float:right;right:10px;top:4px;z-index:12;border:0;background:#0a0c09cc;color:#dec68b;font-size:2rem;line-height:1;width:42px;height:42px;cursor:pointer}
.brew-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:12px}.brew-head h2{font:600 clamp(1.45rem,3.2vw,2.6rem) 'Cinzel',Georgia,serif;margin:2px 0 5px;text-transform:uppercase;letter-spacing:.06em}.brew-head p{margin:0;color:#a79a82}.brew-timer{text-align:center;min-width:88px;border:1px solid rgba(216,184,107,.25);padding:8px 12px;background:#080a07}.brew-timer strong{display:block;color:#e4c46e;font:700 1.8rem 'Cinzel';line-height:1}.brew-timer span{font-size:.68rem;color:#9f927b;text-transform:uppercase;letter-spacing:.12em}
.snape-strip{display:grid;grid-template-columns:98px 1fr;gap:15px;align-items:center;min-height:106px;padding:8px 15px;margin:12px 0 16px;border:1px solid rgba(199,174,112,.2);background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(39,32,26,.32))}.snape-strip img{width:90px;height:94px;object-fit:cover;object-position:50% 18%;filter:grayscale(.12) contrast(1.06);border:1px solid rgba(205,179,115,.25)}.snape-strip small{display:block;color:#9b8d78;font:600 .5rem 'Cinzel';letter-spacing:.13em;text-transform:uppercase}.snape-strip p{margin:5px 0 0;font-style:italic;color:#d8cbb5;line-height:1.45}
.recipe-memory{border:1px solid rgba(216,184,107,.27);padding:20px;background:linear-gradient(135deg,rgba(53,44,29,.38),rgba(5,7,5,.55));position:relative}.recipe-label{color:#a58d5a;font:600 .5rem 'Cinzel';text-transform:uppercase;letter-spacing:.16em}.recipe-memory h3{font:600 1.25rem 'Cinzel';margin:5px 0 15px;color:#ecd9aa}.recipe-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;margin:0 0 18px;padding-left:24px}.recipe-steps li{padding:7px 4px;color:#d8ccb2;line-height:1.35}.recipe-steps li::marker{color:#c9a458;font-weight:700}.recipe-memory button,.brew-outcome button{border:1px solid #c5a25c;background:#9b7334;color:#130e08;padding:11px 15px;font-weight:700;cursor:pointer}
.brew-game{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.brew-game[hidden],.brew-outcome[hidden]{display:none}.ingredient-shelf{display:grid;grid-template-columns:repeat(4,minmax(112px,1fr));gap:10px;align-content:start}.ingredient-card{min-height:150px;border:1px solid rgba(213,183,109,.18);background:rgba(7,10,7,.72);color:#d9c9a8;cursor:pointer;padding:7px;display:grid;grid-template-rows:108px auto;align-items:center;transition:.16s}.ingredient-card:hover{border-color:#c59b4d;background:#17170f;transform:translateY(-2px)}.ingredient-card img{width:100%;height:105px;object-fit:contain;filter:drop-shadow(0 7px 7px #000)}.ingredient-card span{text-align:center;font:600 .48rem 'Cinzel';letter-spacing:.06em;text-transform:uppercase;line-height:1.25}.ingredient-card:disabled{opacity:.45;cursor:default;transform:none}
.brew-center{border:1px solid rgba(213,183,109,.18);background:rgba(4,7,5,.68);padding:14px}.brew-cauldron{height:250px;display:grid;place-items:center;position:relative;overflow:hidden}.brew-cauldron img{height:225px;max-width:95%;object-fit:contain;filter:drop-shadow(0 18px 15px #000)}.brew-steam{position:absolute;top:18px;color:#9ec6a0;font-size:1.6rem;opacity:.15}.brew-cauldron.active .brew-steam{animation:brewSteam .8s ease infinite;opacity:.85}@keyframes brewSteam{50%{transform:translateY(-14px) scale(1.08);opacity:.32}}
.brew-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.brew-controls button{border:1px solid rgba(205,175,106,.3);background:#13160f;color:#ead8b0;min-height:48px;padding:9px;cursor:pointer;font-weight:700}.brew-controls button:hover{background:#2b2517}.brew-controls .finish{grid-column:1/-1;background:#8b6931;color:#130e08;border-color:#caa75d}.brew-controls button:disabled{opacity:.45;cursor:default}.brew-progress{margin-top:13px}.brew-progress>span{color:#8e836f;font-size:.72rem}.brew-progress>strong{float:right;color:#d9bc74}.brew-sequence{clear:both;margin-top:7px;min-height:48px;max-height:98px;overflow:auto;border-top:1px solid rgba(255,255,255,.08);padding-top:8px;color:#a99b80;font-size:.8rem;line-height:1.5}
.brew-outcome{text-align:center;padding:22px;border:1px solid rgba(216,184,107,.25);background:rgba(0,0,0,.35)}.brew-outcome #brewResult{min-height:240px;display:grid;place-items:center}.brew-outcome img{height:230px;max-width:240px;object-fit:contain;filter:drop-shadow(0 20px 22px #000)}.brew-outcome .slop{font:700 clamp(1.5rem,4vw,2.8rem) 'Cinzel';color:#9db18d}.brew-status{font-size:1rem;color:#d5be83;min-height:26px;margin:10px auto 17px;max-width:660px}
@media(max-width:820px){.brew-panel{height:98vh;padding:15px}.brew-game{grid-template-columns:1fr}.ingredient-shelf{grid-template-columns:repeat(3,1fr)}.recipe-steps{grid-template-columns:1fr}.brew-cauldron{height:190px}.brew-cauldron img{height:172px}.snape-strip{grid-template-columns:74px 1fr}.snape-strip img{width:68px;height:78px}}
@media(max-width:520px){.ingredient-shelf{grid-template-columns:repeat(2,1fr)}.ingredient-card{min-height:126px;grid-template-rows:84px auto}.ingredient-card img{height:82px}.brew-head{align-items:start}.brew-head p{font-size:.84rem}.brew-timer{min-width:70px}}
/* v41 — větší dohled profesora a výraznější komentáře */
.snape-strip{grid-template-columns:clamp(130px,17vw,210px) 1fr;min-height:180px;padding:14px 20px;gap:22px;border-color:rgba(214,181,105,.36);background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(39,32,26,.54))}
.snape-strip img{width:clamp(124px,16vw,200px);height:clamp(154px,19vw,235px);object-fit:cover;object-position:50% 18%;border-color:rgba(219,187,110,.42);box-shadow:0 12px 30px rgba(0,0,0,.55)}
.snape-strip small{font-size:.62rem}.snape-strip p{font-size:clamp(1rem,1.55vw,1.28rem);line-height:1.55;color:#eee0c4}.snape-penalty{display:block;margin-top:8px;color:#e6b05f;font-family:'Cinzel',Georgia,serif;font-style:normal;font-size:.78em;letter-spacing:.04em}
.cauldron-large{cursor:pointer}.cauldron-large:hover img{filter:brightness(1.12) drop-shadow(0 0 18px rgba(215,172,76,.28))}
@media(max-width:820px){.snape-strip{grid-template-columns:105px 1fr;min-height:140px}.snape-strip img{width:100px;height:126px}.snape-strip p{font-size:.95rem}}

/* v42 — nová učebna a přirozeně zasazený profesor */
.v42-potions{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.17) 60%,rgba(0,0,0,.62)),url('img/lektvary-v19.webp') center/cover no-repeat!important;background-color:#080706;overflow:hidden}
.v42-snape-character{position:absolute;z-index:14;right:2.5%;bottom:-3%;height:min(80vh,850px);border:0;background:transparent;padding:0;cursor:pointer}.v42-snape-character img{height:100%;width:auto;display:block;filter:drop-shadow(0 24px 30px #000);transition:.22s}.v42-snape-character:hover img{transform:translateY(-4px);filter:brightness(1.04) drop-shadow(0 28px 34px #000)}
.v42-cauldron-hotspot{position:absolute;z-index:16;right:26%;top:45%;width:14%;height:18%;border:0;background:transparent;cursor:pointer;border-radius:45%}.v42-cauldron-hotspot span{position:absolute;left:50%;bottom:-6px;transform:translate(-50%,100%);white-space:nowrap;padding:6px 9px;border:1px solid rgba(211,180,103,.28);background:rgba(6,7,6,.84);color:#d9bf79;font:600 .46rem 'Cinzel';letter-spacing:.08em;text-transform:uppercase;opacity:0;transition:.2s}.v42-cauldron-hotspot:hover span,.v42-cauldron-hotspot:focus-visible span{opacity:1}.v42-cauldron-hotspot:hover{box-shadow:0 0 44px rgba(220,176,83,.12)}
.v42-potions .scene-copy{max-width:500px!important;left:2.5%!important;bottom:3%!important;background:linear-gradient(90deg,rgba(7,8,7,.76),rgba(7,8,7,.18) 78%,transparent)!important}
@media(max-width:820px){.v42-snape-character{right:-9%;height:55vh;opacity:.9}.v42-cauldron-hotspot{right:19%;top:49%;width:22%;height:17%}.v42-potions .scene-copy{max-width:70vw!important}}
