/* Холодильник (тикет G1): разнообразные поведения мыши.
   Базовые правила .fridge-* лежат в game.css, который править нельзя, поэтому
   здесь только переопределения (этот файл подключается после game.css) и новые
   классы для добычи, приманки и второй мыши. */
.home-fridge { cursor: crosshair; }
.fridge-shelves .fridge-mouse { z-index: 4; transition: left .12s ease-out, top .12s ease-out; }
.fridge-shelves .fridge-second { z-index: 3; opacity: .95; }
.fridge-shelves .fridge-loot, .fridge-shelves .fridge-decoy { position: absolute; z-index: 6; width: 44px; height: 40px; display: grid; place-items: center; transform: translate(-50%, -50%); font-size: 35px; filter: drop-shadow(0 2px 2px #2233); }
.fridge-shelves .fridge-loot { pointer-events: none; }
.fridge-shelves .fridge-decoy { padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: not-allowed; touch-action: manipulation; animation: fridge-bait 1.1s ease-in-out infinite alternate; }
.fridge-shelves .fridge-carrying { animation: fridge-lug .5s ease-in-out infinite alternate; }
.fridge-shelves .fridge-sneaking { opacity: .55; }
.fridge-shelves .fridge-running { animation: fridge-dash .16s ease-out 2; }
.fridge-shelves .fridge-bluff { opacity: .45; filter: grayscale(1) brightness(.45) blur(1.5px); }
.fridge-shelves .fridge-revealed { animation: fridge-pop .2s ease-out; }
@keyframes fridge-lug { from { transform: translate(-50%, -50%) rotate(-8deg); } to { transform: translate(-44%, -56%) rotate(7deg); } }
@keyframes fridge-dash { from { transform: translate(-58%, -50%) skewX(-14deg); } to { transform: translate(-42%, -50%) skewX(14deg); } }
@keyframes fridge-bait { from { transform: translate(-50%, -50%) scale(1); } to { transform: translate(-50%, -58%) scale(1.12); } }
@keyframes fridge-pop { from { transform: translate(-50%, -50%) scale(.55); } to { transform: translate(-50%, -50%) scale(1.15); } }
@media (prefers-reduced-motion: reduce) { .fridge-shelves .fridge-carrying, .fridge-shelves .fridge-running, .fridge-shelves .fridge-decoy, .fridge-shelves .fridge-revealed { animation: none; } }
/* Писуар / «Попасть струёй в унитаз» (тикет G3): игровая картинка ванны силами
   CSS + инлайнового SVG, плюс состояние «мокрый пол». Все правила ниже — только
   классы .home-bathroom/.home-bowl/.home-aim/.home-stream/.home-spilled и их
   дочерние элементы; чужих селекторов здесь нет. */
.home-bathroom { position: relative; height: 258px; overflow: hidden; border: 4px solid #b9cdd2; border-radius: 20px; background-color: #dfeaea; background-image: linear-gradient(178deg,#f6fbfb 0%,#e3eeee 46%,#cadadc 76%,#b6ccd0 100%), repeating-linear-gradient(90deg,transparent 0 43px,#a9c0c6 43px 46px), repeating-linear-gradient(0deg,transparent 0 41px,#a9c0c6 41px 44px), radial-gradient(circle at 18% 12%,#ffffffcc,transparent 42%); background-blend-mode: normal,multiply,multiply,screen; box-shadow: inset 0 -26px 40px #7d97a055, inset 0 12px 22px #ffffffaa; touch-action: none; cursor: crosshair; }
/* Пол ванной: отдельная плитка с расшивкой и бликом, отделена от стены. */
.home-tile { position: absolute; left: 0; right: 0; bottom: 0; height: 74px; background-color: #c3d2d5; background-image: repeating-linear-gradient(90deg,transparent 0 27px,#8ea7ad 27px 29px), repeating-linear-gradient(0deg,transparent 0 25px,#8ea7ad 25px 27px), linear-gradient(180deg,#e7f1f2,#b4c8cd); background-blend-mode: multiply,multiply,normal; box-shadow: inset 0 2px 0 #ffffffbb, 0 -3px 8px #6f8a9455; }
.home-tile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(103deg,transparent 34%,#ffffff55 42%,transparent 52%); pointer-events: none; }
/* Кран/душ сверху — инлайновый SVG из startBathroom. */
.home-svg-decor { position: absolute; left: 50%; top: 0; transform: translateX(-50%); width: 96px; height: 34px; z-index: 3; pointer-events: none; fill: #dfe9ee; stroke: #6d8794; stroke-width: 2.1; stroke-linecap: round; filter: drop-shadow(0 2px 2px #43606e66); }
/* Ёршик на полу — мелкий декор, чтобы сцена не была пустой. */
.home-brush { position: absolute; right: 7%; bottom: 6px; font-size: 37.8px; line-height: 1; transform: rotate(6deg); filter: drop-shadow(0 3px 3px #4b6570aa); z-index: 2; pointer-events: none; }
/* Трап в полу. */
.home-drain { position: absolute; left: 15%; bottom: 22px; width: 26px; height: 12px; border-radius: 50%; background: radial-gradient(circle at 50% 40%,#26343c,#546c76 62%,#8ba2a9); box-shadow: inset 0 1px 2px #0008, 0 1px 0 #fff8; z-index: 1; pointer-events: none; }
.home-drain::after { content: ''; position: absolute; inset: 3px 5px; background: repeating-linear-gradient(90deg,#22303a 0 2px,transparent 2px 5px); border-radius: 50%; }
/* Чаша: фарфор с водой, бликом и ободком. */
.home-bowl { position: absolute; bottom: 16px; height: 84px; transform: translateX(-50%); border: 7px solid #fbffff; border-radius: 50% 50% 46% 46%; background: radial-gradient(ellipse at 50% 26%,#1f4b5e 0 22%,#3f8199 46%,#8ec9d8 74%,#e8f7fa 100%); box-shadow: 0 9px 16px #557481aa, inset 0 -7px 12px #ffffffcc, inset 0 7px 14px #0b2b3a88; transition: left .12s linear; z-index: 2; }
.home-bowl-water { position: absolute; inset: 12% 14% 26%; border-radius: 50%; background: radial-gradient(ellipse at 42% 34%,#bfeef7 0 18%,#5fb6cf 52%,#1c5f7c 100%); box-shadow: inset 0 3px 7px #ffffff77, inset 0 -5px 9px #062531aa; overflow: hidden; }
.home-bowl-water::before { content: ''; position: absolute; inset: 0; background: repeating-radial-gradient(circle at 50% 50%,#ffffff00 0 5px,#ffffff3d 6px 7px); animation: bath-ripple 2.6s ease-out infinite; opacity: .55; }
.home-bowl-shine { position: absolute; left: 16%; top: 8%; width: 34%; height: 26%; border-radius: 50%; background: linear-gradient(150deg,#ffffffdd,#ffffff00 72%); filter: blur(.4px); transform: rotate(-16deg); pointer-events: none; }
.home-bowl-rim { position: absolute; inset: -7px; border-radius: inherit; border: 3px solid #ffffff; box-shadow: 0 0 0 2px #9fbfc8aa, inset 0 0 6px #ffffffbb; pointer-events: none; }
/* Прицел: перекрестие вместо точки. */
.home-aim { position: absolute; top: 40px; left: 50%; width: 34px; height: 34px; transform: translateX(-50%); z-index: 4; pointer-events: none; filter: drop-shadow(0 0 5px #fff9) drop-shadow(0 1px 2px #0006); }
.home-cross-v, .home-cross-h { position: absolute; background: linear-gradient(#ffd873,#e0951f); border-radius: 3px; }
.home-cross-v { left: 50%; top: 0; width: 3px; height: 100%; transform: translateX(-50%); }
.home-cross-h { top: 50%; left: 0; height: 3px; width: 100%; transform: translateY(-50%); }
.home-cross-ring { position: absolute; inset: 6px; border: 3px dashed #e0951f; border-radius: 50%; background: radial-gradient(circle,#fff6d9cc,#ffffff00 70%); animation: bath-spin 6s linear infinite; }
/* Струя: дуга через skew по переменной --land, которую пишет JS. */
.home-stream { position: absolute; top: 62px; left: 50%; width: 12px; height: var(--stream-h,64px); transform: translateX(-50%); pointer-events: none; z-index: 3; --land: 0%; }
.home-stream-core, .home-stream-mist { position: absolute; inset: 0; transform: skewX(calc(var(--land) * -0.8)); transform-origin: top center; border-radius: 45%/18px; }
.home-stream-core { width: 9px; margin: 0 auto; background: linear-gradient(180deg,#fffdf0 0%,#ffe89a 26%,#f2c25a 62%,#d79a2f 100%); box-shadow: 0 0 9px #f6d67abb, inset 2px 0 0 #ffffffcc; animation: bath-jet .22s ease-in-out infinite alternate; }
.home-stream-mist { width: 20px; margin: 0 auto; background: linear-gradient(180deg,#ffffff00 30%,#ffffff55 74%,#cdeaf3aa 100%); filter: blur(2.4px); }
.home-stream::after { content: ''; position: absolute; left: 50%; bottom: -7px; width: 22px; height: 12px; transform: translateX(-50%) translateX(var(--land)); border-radius: 50%; background: radial-gradient(ellipse at 50% 30%,#ffffffee,#a9dcef 55%,#ffffff00 78%); }
/* Лужа в месте промаха. */
.home-splash { position: absolute; bottom: 26px; left: 50%; transform: translateX(-50%); font-size: 42px; line-height: 1; z-index: 3; pointer-events: none; filter: drop-shadow(0 2px 2px #33525e99); }
/* Мокрый пол после промаха. */
.home-spilled { background-color: #cfe0e3; box-shadow: inset 0 -40px 52px #4d7f9566, inset 0 12px 22px #ffffff77; }
.home-spilled .home-tile { background-color: #aecbd4; filter: saturate(1.18) brightness(.94); }
.home-spilled .home-tile::before { content: ''; position: absolute; left: 6%; right: 6%; bottom: 6px; height: 40px; border-radius: 50% 46% 52% 48%/62% 58% 46% 44%; background: radial-gradient(ellipse at 38% 34%,#ffffff88 0 12%,#7fc4dcbb 42%,#3f7f9bcc 74%,#2b5f7acc 100%); box-shadow: 0 0 18px #4d8ea6aa, inset 0 -4px 8px #14384888; animation: bath-wet 1.5s ease-in-out infinite alternate; }
.home-spilled::after { content: '💦'; position: absolute; bottom: 14px; right: 16px; font-size: 53.2px; z-index: 5; pointer-events: none; filter: drop-shadow(0 2px 3px #24505f99); }
.home-spilled .home-bowl { filter: brightness(.97) saturate(1.05); }
/* Момент попадания — короткая вспышка на чаше. */
.home-clean-hit .home-bowl { animation: bath-flare .36s ease-out; }
.home-pouring .home-aim { animation: bath-nudge .2s ease-out; }
@keyframes bath-ripple { from { transform: scale(.55); opacity: .7; } to { transform: scale(1.25); opacity: 0; } }
@keyframes bath-spin { to { transform: rotate(360deg); } }
@keyframes bath-jet { from { width: 8px; } to { width: 11px; } }
@keyframes bath-wet { from { transform: translateY(0) scaleY(1); } to { transform: translateY(-2px) scaleY(1.07); } }
@keyframes bath-flare { 0% { box-shadow: 0 9px 16px #557481aa, inset 0 0 0 3px #ffffff; } 60% { box-shadow: 0 9px 22px #5fbfd8cc, inset 0 0 26px #d6f6ff; } 100% { box-shadow: 0 9px 16px #557481aa, inset 0 7px 14px #0b2b3a88; } }
@keyframes bath-nudge { 0% { transform: translateX(-50%) scale(1); } 50% { transform: translateX(-50%) scale(1.22); } 100% { transform: translateX(-50%) scale(1); } }
.home-book-row,.home-sort-options,.home-ingredients { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.home-book-row button,.home-sort-options button,.home-ingredients button,.home-search-grid button { border: 2px solid #8995a0; border-radius: 10px; padding: 10px; background: #f3e7cf; color: #252632; cursor: pointer; font: inherit; }
.home-book-row button.selected { border-color: #e59c34; transform: translateY(-4px); }
.home-book-row button:disabled,.home-ingredients button:disabled { opacity: .5; cursor: default; }
.home-search-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 14px 0; }
.home-search-grid button { display: grid; gap: 5px; text-align: center; }
.home-search-grid button span { font-size: 36.4px; }
.home-search-grid button small { font-size: 15.4px; }
.home-sort-card { min-height: 58px; display: grid; place-items: center; padding: 12px; border-radius: 12px; background: #354058; color: #fff; font-size: 28px; font-weight: 700; }
.home-ingredients button { min-width: 55px; font-size: 37.8px; }
@media (max-width: 480px) { .home-search-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .home-bathroom { height: 206px; } .home-bowl { height: 70px; bottom: 12px; border-width: 5px; } .home-bowl-water { inset: 6% 8% 20%; } .home-bowl-rim { inset: -5px; border-width: 2px; } .home-tile { height: 60px; } .home-stream { top: 54px; } .home-aim { top: 34px; width: 28px; height: 28px; } .home-brush { font-size: 30.8px; right: 4%; } }
@media (prefers-reduced-motion: reduce) { .home-bowl-water::before, .home-cross-ring, .home-stream-core, .home-spilled .home-tile::before, .home-clean-hit .home-bowl, .home-pouring .home-aim { animation: none; } }

/* Читаемая сцена прицеливания: отдельная стена/пол, фарфоровая цель и ясный итог выстрела. */
.home-bathroom{height:clamp(236px,54vw,318px);isolation:isolate;overflow:hidden;border:1px solid #8ca6ae;border-radius:18px;background:linear-gradient(180deg,#edf6f5 0%,#d7e8e7 49%,#c5d8da 50%,#afc8ce 100%);box-shadow:inset 0 1px 0 #fff, inset 0 -18px 30px #466a7650,0 8px 18px #203c4838;touch-action:none;cursor:crosshair}
.home-bathroom:before{content:"";position:absolute;inset:0 0 29%;z-index:0;background:linear-gradient(90deg,#fff7,transparent 22% 78%,#52737c1c),radial-gradient(ellipse at 50% 0,#fff9,transparent 65%),repeating-linear-gradient(90deg,transparent 0 58px,#8baab044 59px 60px),repeating-linear-gradient(0deg,transparent 0 48px,#8baab044 49px 50px);pointer-events:none}
.home-wall-art{position:absolute;inset:0 0 29%;z-index:1;pointer-events:none}
.home-window{position:absolute;left:8%;top:15%;width:20%;height:47%;border:5px solid #fff;border-radius:9px;background:linear-gradient(145deg,#d9f4f4,#8ac3d0);box-shadow:0 3px 8px #3c677333,inset 0 0 0 2px #a6c9cc}
.home-window:before,.home-window:after{content:"";position:absolute;background:#f8ffffb8}.home-window:before{left:50%;top:0;bottom:0;width:3px}.home-window:after{left:0;right:0;top:50%;height:3px}
.home-window i,.home-window b{position:absolute;left:10%;right:10%;height:3px;border-radius:3px;background:#fff9}.home-window i{top:18%}.home-window b{bottom:15%}
.home-towel{position:absolute;right:9%;top:16%;width:12%;height:33%;border-radius:3px 3px 12px 12px;background:repeating-linear-gradient(180deg,#fff 0 8px,#d5ecea 9px 11px);box-shadow:0 3px 6px #38586140}
.home-svg-decor{top:4%;width:86px;height:51px;z-index:5;filter:drop-shadow(0 3px 2px #39576355);fill:#e8f3f4;stroke:#597982;stroke-width:2.2}
.home-tile{height:29%;z-index:1;background-color:#bdd0d2;background-image:linear-gradient(180deg,#d8e7e8,#a9c2c7),repeating-linear-gradient(90deg,transparent 0 39px,#78949b70 40px 42px),repeating-linear-gradient(0deg,transparent 0 28px,#78949b70 29px 31px);background-blend-mode:normal,multiply,multiply;box-shadow:inset 0 3px 0 #ffffffaa,-0 3px 8px #47636d55}
.home-bowl{z-index:4;bottom:7%;height:86px;min-width:104px;border:8px solid #fff;outline:2px solid #a8c3c9;border-radius:48% 48% 38% 38%/34% 34% 62% 62%;background:linear-gradient(180deg,#fff 0 18%,#e9f4f5 20% 42%,#c5e0e4 100%);box-shadow:0 12px 15px #385c6877,inset 0 -9px 12px #759aa233,inset 0 5px 5px #fff;transition:left .12s linear}
.home-bowl:before{content:"";position:absolute;left:12%;right:12%;top:8%;height:26%;border-radius:50%;background:linear-gradient(180deg,#fff,#d9eaec);box-shadow:inset 0 -3px 4px #76959b35}
.home-bowl-water{z-index:1;inset:18% 19% 33%;background:radial-gradient(ellipse at 40% 20%,#bfeff5 0 8%,#5eb9cf 46%,#216981 100%);box-shadow:inset 0 3px 8px #fff8,inset 0 -5px 8px #092a3988}
.home-bowl-shine{z-index:2;left:25%;top:23%;width:24%;height:11%;background:#fff;opacity:.8}
.home-bowl-rim{z-index:3;inset:-7px;border:3px solid #fff;box-shadow:0 0 0 2px #8aa8ad}
.home-bowl-label{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);padding:3px 7px;border-radius:99px;background:#154b61;color:#fff;font:900 12.6px/1 system-ui,sans-serif;letter-spacing:.12em;box-shadow:0 1px 4px #06273480}
.home-aim{top:29%;z-index:7;width:38px;height:38px;filter:drop-shadow(0 2px 2px #102b35aa)}
.home-cross-v,.home-cross-h{background:#fff;border:1px solid #176175;box-shadow:0 0 0 1px #fff9}
.home-cross-ring{inset:4px;border:2px solid #fff;background:#3b879866;box-shadow:0 0 0 2px #14566a;animation:none}
.home-stream{top:calc(29% + 37px);z-index:6;--land:0%;height:var(--stream-h,72px);width:18px}
.home-stream-core{width:8px;background:linear-gradient(90deg,#8b5f19,#fff7be 35% 72%,#e8a72f);box-shadow:0 0 12px #ffe49bcc,0 0 2px #54370a;filter:drop-shadow(0 1px 1px #604318);animation:bath-jet .18s ease-in-out infinite alternate}
.home-stream-mist{width:17px;background:linear-gradient(180deg,#fff0,#d8f5ff55 70%,#d9f8ffbb);filter:blur(3px)}
.home-stream:after{bottom:-8px;width:24px;height:14px;background:radial-gradient(ellipse,#fff 0 10%,#7dd6eb 35%,#1c86a2 65%,transparent 75%);box-shadow:0 0 8px #70d9ed}
.home-drain{z-index:3;left:19%;bottom:13%;width:24px;height:10px}
.home-brush{z-index:4;right:8%;bottom:6%;font-size:32.2px}
.home-splash{z-index:8;bottom:8%;font-size:44.8px}
.home-result{position:absolute;z-index:9;left:50%;top:9%;transform:translate(-50%,-5px) scale(.8);padding:7px 14px;border:2px solid #fff;border-radius:999px;background:#153f4dcc;color:white;font:1000 19.6px/1 system-ui,sans-serif;letter-spacing:.08em;box-shadow:0 3px 10px #17354166;opacity:0;pointer-events:none;transition:opacity .12s,transform .12s}
.home-result.is-hit,.home-result.is-miss{opacity:1;transform:translate(-50%,0) scale(1)}
.home-result.is-hit{background:#16794f;border-color:#b9f3d4}.home-result.is-miss{background:#a84235;border-color:#ffd0a4}
.home-hit .home-bowl{filter:drop-shadow(0 0 11px #76f0bb);animation:bath-flare .36s ease-out}
.home-miss .home-bowl{filter:saturate(.7) brightness(.92)}
.home-spilled{background:linear-gradient(180deg,#edf6f5 0%,#d7e8e7 49%,#b2dce2 50%,#8ebcc8 100%)}
.home-spilled .home-tile:before{content:"";position:absolute;left:13%;right:12%;bottom:9%;height:39%;border-radius:50%;background:radial-gradient(ellipse at 50% 20%,#eaffff 0 8%,#84d0e0 35%,#368aa3 72%,#226179 100%);box-shadow:inset 0 3px 8px #efffffaa,0 0 15px #47a6bc99}
.home-spilled:after{content:"";position:absolute;z-index:8;inset:auto 0 0;height:30%;background:linear-gradient(180deg,transparent,#4494a744);pointer-events:none}
.home-controls-hint{margin:5px 2px 0;color:#61727b;font-size:16.8px;font-weight:700;text-align:center}
#homePour,#homeWipe{min-height:48px;touch-action:manipulation}
@media(max-width:480px){.home-bathroom{height:clamp(218px,66vw,270px);border-radius:15px}.home-window{border-width:3px}.home-bowl{height:70px;min-width:86px;bottom:7%;border-width:6px}.home-bowl-rim{inset:-5px;border-width:2px}.home-bowl-label{font-size:11.2px}.home-aim{top:29%;width:34px;height:34px}.home-stream{top:calc(29% + 33px)}.home-result{top:8%;font-size:16.8px}.home-controls-hint{font-size:15.4px}}
@media(prefers-reduced-motion:reduce){.home-stream-core,.home-hit .home-bowl{animation:none}}

/* Кухня и книжные задачи: объёмные предметы, явный фокус и крупные зоны касания. */
.fridge-game{position:relative;padding:15px;border:3px solid #a9b8aa;background:linear-gradient(145deg,#f4f5ec,#aebdb6 72%,#8eaaa7);box-shadow:inset 0 0 0 3px #ffffffa6,inset 0 -14px 22px #5d777354,0 7px 18px #1b353140}
.fridge-game:before{content:"";position:absolute;top:7px;left:12px;right:12px;height:4px;border-radius:4px;background:linear-gradient(90deg,#fff9,transparent 75%);pointer-events:none}
.fridge-shelves.home-fridge{height:210px;border:9px solid #f8faf4;border-radius:13px;background:radial-gradient(ellipse at 50% 25%,#ffffffc4,transparent 70%),repeating-linear-gradient(180deg,#d7e6dc 0 49px,#6c827b 50px 53px,#f7fff7 54px 60px),linear-gradient(#dcebe1,#a9c1b6);box-shadow:inset 0 0 0 2px #8ea79b,inset 0 0 22px #48665d8c,0 4px 0 #72877e;cursor:crosshair}
.fridge-shelves.home-fridge:after{content:"";position:absolute;inset:4px;z-index:0;background:linear-gradient(100deg,#ffffff80,transparent 20% 78%,#314a443b);pointer-events:none}
.fridge-shelves .fridge-food{z-index:2;width:56px;height:48px;border-radius:50%;background:radial-gradient(ellipse at 50% 75%,#163c2f30,transparent 65%);filter:drop-shadow(0 3px 2px #24483c78)}
.fridge-shelves .fridge-mouse{z-index:5;min-width:48px;min-height:46px;border-radius:50%;background:radial-gradient(circle at 45% 40%,#fff9,transparent 60%);filter:drop-shadow(0 3px 3px #1f3f35a6)}
.fridge-shelves .fridge-mouse:focus-visible,.fridge-shelves .fridge-decoy:focus-visible{outline:3px solid #e9a638;outline-offset:2px}
.fridge-shelves .fridge-decoy{min-width:48px;min-height:46px;background:#fff1ab70;box-shadow:0 0 0 2px #b58e4c90}
.fridge-shelves .fridge-loot{filter:drop-shadow(0 3px 3px #314a3a)}
.home-bathroom{border-color:#a8bdc6;box-shadow:inset 0 0 0 2px #fff9,inset 0 -30px 45px #66879466,0 7px 15px #294a5536}
.home-bathroom:before{content:"";position:absolute;left:0;right:0;top:49%;height:4px;background:#91aeb5a8;box-shadow:0 2px 2px #fff8;pointer-events:none}
.home-bowl{box-shadow:0 10px 15px #405f70a8,inset 0 -7px 12px #ffffffcc,inset 0 7px 14px #0b2b3a88,0 0 0 3px #9eb7bd}
.home-book-row button,.home-sort-options button,.home-ingredients button,.home-search-grid button{min-height:48px;border-color:#a59a83;background:linear-gradient(150deg,#fff5de,#e6d7b8);box-shadow:inset 0 1px #fff9,0 3px 0 #96876e;color:#302b28;font-weight:700;line-height:1.2;touch-action:manipulation}
.home-book-row button:hover,.home-sort-options button:hover,.home-ingredients button:hover,.home-search-grid button:hover{background:linear-gradient(#fff9e7,#f5e0ae);border-color:#c79040}
.home-book-row button:focus-visible,.home-sort-options button:focus-visible,.home-ingredients button:focus-visible,.home-search-grid button:focus-visible{outline:3px solid #e39b3f;outline-offset:2px}
.home-book-row button.selected{border-color:#d2882e;background:#ffdda2;box-shadow:0 0 0 3px #f4bc66b0,0 4px 0 #8c5d25}
.home-search-grid button{min-height:82px;align-content:center}.home-search-grid button span{font-size:43.4px;filter:drop-shadow(0 2px 1px #75604b66)}.home-search-grid button small{font-size:16.8px;line-height:1.25}
.home-sort-card{min-height:70px;border:3px solid #c6a980;background:radial-gradient(circle at 50% 0,#5e6670,#303948 75%);box-shadow:inset 0 2px 12px #101a29a6,0 4px 0 #918067;color:#fff3d1;text-shadow:0 2px 2px #131923}
.home-ingredients button{min-width:60px;min-height:60px;font-size:39.2px}
@media(max-width:480px){.fridge-shelves.home-fridge{height:185px}.home-search-grid{gap:7px}.home-book-row button,.home-sort-options button,.home-ingredients button,.home-search-grid button{padding:9px}.home-sort-card{font-size:23.8px}}

/* Детальная сцена холодильника для дополнительной домашней мини-игры. */
.fridge-scene{--fridge-ink:#17332b;--fridge-metal:#dce4dc;overflow:hidden;padding:11px 13px 10px;border:1px solid #71847a;border-radius:17px;background:linear-gradient(145deg,#edf2e9 0%,#cad6ce 42%,#aabbb2 100%);box-shadow:inset 0 1px 0 #fff, inset 0 -8px 18px #5972692e,0 7px 16px #182e2633}
.fridge-scene:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 12% 0%,#fff9,transparent 38%),linear-gradient(110deg,transparent 58%,#fff2)}
.fridge-level,.fridge-goal{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--fridge-ink);font-size:15.4px;font-weight:900;letter-spacing:.09em}
.fridge-level{padding:1px 3px 9px}.fridge-level b{padding:5px 9px;border-radius:999px;background:#315848;color:#fff;font-size:14px;letter-spacing:.08em;box-shadow:inset 0 1px #ffffff4d,0 2px 0 #203b31}
.fridge-cabinet{position:relative;padding:8px 9px 8px 28px;border:1px solid #82938a;border-radius:13px;background:linear-gradient(100deg,#9dac9f 0 9px,#e5ebe3 10px 15px,#c5d1c9 16px 20px,#f6f8f2 21px 100%);box-shadow:inset 0 2px 5px #31443a3d,0 3px 0 #718379}
.fridge-door-edge{position:absolute;z-index:4;left:9px;top:13px;bottom:13px;width:8px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;pointer-events:none}
.fridge-door-edge i{width:5px;height:31px;border:1px solid #819188;border-radius:4px;background:linear-gradient(90deg,#fff,#a5b2a9 55%,#eef2ed);box-shadow:1px 1px 2px #34473a55}
.fridge-shelves.home-fridge{isolation:isolate;height:clamp(198px,36vw,246px);min-height:198px;border:5px solid #f6f8f3;border-radius:8px;background:linear-gradient(180deg,#eaf3ed 0%,#d5e5db 24%,#edf3e9 25%,#d8e7dd 48%,#f1f5ed 49%,#d6e5da 73%,#eff4ed 74%,#d1e0d5 100%);box-shadow:inset 0 0 0 1px #a4b8aa,inset 0 0 19px #35544855,0 1px 2px #fff;cursor:crosshair;touch-action:manipulation}
.fridge-shelves.home-fridge:before{content:"";position:absolute;z-index:1;inset:0;background:repeating-linear-gradient(180deg,transparent 0 calc(25% - 5px),#81958a calc(25% - 5px) calc(25% - 1px),#fff calc(25% - 1px) 25%);box-shadow:inset 0 1px 2px #fff9;pointer-events:none}
.fridge-shelves.home-fridge:after{inset:0;z-index:0;background:linear-gradient(90deg,#ffffff6e,transparent 13% 86%,#52695b30),radial-gradient(ellipse at 50% 0,#fff8,transparent 66%);pointer-events:none}
.fridge-shelves.home-fridge .fridge-mouse[hidden],.fridge-shelves.home-fridge .fridge-decoy[hidden],.fridge-shelves.home-fridge .fridge-loot[hidden]{display:none}
.fridge-shelves .fridge-food{z-index:2;width:clamp(43px,11vw,57px);height:clamp(42px,10vw,52px);display:grid;place-items:center;border:1px solid #ffffffa6;border-radius:13px 13px 16px 16px;background:linear-gradient(145deg,#ffffffa3,#dce9dc77);box-shadow:0 3px 5px #203c3027,inset 0 1px 0 #fff;font-size:clamp(32.2px,8.4vw,43.4px);line-height:1;filter:drop-shadow(0 2px 1px #193b2b65)}
.fridge-shelves .fridge-mouse{z-index:5;min-width:52px;min-height:52px;border:2px solid #fff;border-radius:50%;background:radial-gradient(circle at 40% 32%,#fff 0 13%,#f3d8ca 45%,#d49a83 100%);box-shadow:0 2px 0 #744a3d,0 4px 9px #142c2580;font-size:40.6px;line-height:1;touch-action:manipulation}
.fridge-shelves .fridge-second{z-index:4;opacity:.9;filter:grayscale(.8) drop-shadow(0 2px 2px #263c34)}
.fridge-shelves .fridge-loot,.fridge-shelves .fridge-decoy{z-index:6;width:48px;height:46px;font-size:37.8px}
.fridge-shelves .fridge-decoy{border:2px solid #fff4c1;background:#f9dc8380;box-shadow:0 0 0 3px #a5732f66,0 3px 6px #35251555}
.fridge-goal{justify-content:flex-start;padding:9px 4px 1px;font-size:14px}.fridge-goal>span:first-child{padding:4px 7px;border-radius:6px;background:#304e41;color:#fff;letter-spacing:.1em}.fridge-goal b{font-size:16.8px;letter-spacing:0}.fridge-cold-indicator{margin-left:auto;color:#39798b;font-size:28px;text-shadow:0 1px #fff}
.fridge-status{border-left:4px solid #43805d;padding-left:10px;font-weight:800}
@media(max-width:520px){.fridge-scene{padding:9px;border-radius:14px}.fridge-level{font-size:12.6px}.fridge-cabinet{padding:7px 7px 7px 22px}.fridge-door-edge{left:6px;width:7px}.fridge-door-edge i{height:25px}.fridge-shelves.home-fridge{height:clamp(182px,52vw,218px);min-height:182px}.fridge-shelves.home-fridge .fridge-food{width:44px;height:42px}.fridge-shelves.home-fridge .fridge-mouse{min-width:50px;min-height:50px}.fridge-goal{padding-top:8px}}
