/* MEATONOMY 0.3 — warstwa oprawy, pomocy i zegara. Zasady gry pozostają 0.2. */
.brand{
  width:min(430px,46vw);height:68px;min-width:240px;
  background:url('./art/meatonomy/logo_meatonomy.webp') left center/contain no-repeat;
  font-size:0!important;letter-spacing:0!important;line-height:0!important;gap:0!important;
}
.brand .brand-mark,.brand>span{display:none!important}
@media(max-width:560px){.brand{width:220px;height:50px;min-width:195px;background-size:contain}.topbar{align-items:center}}

/* Pełne ilustracje zamiast historycznych sprite'ów. */
.art-R,.art-D,.art-Z,.art-contract{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.art-R{background-image:url('./art/meatonomy/MEATONOMY_L1_rzemieslnicza.webp')!important}
.art-D{background-image:url('./art/meatonomy/MEATONOMY_L2_rozwinieta.webp')!important}
.art-Z{background-image:url('./art/meatonomy/MEATONOMY_L3_zautomatyzowana.webp')!important}
.machine-card .art{aspect-ratio:1.49!important}

.event-card.meato-event-visual,.commission.meato-commission-visual,.catalog-upgrade.meato-upgrade-visual{overflow:hidden}
.event-card.meato-event-visual::before,.commission.meato-commission-visual::before,.catalog-upgrade.meato-upgrade-visual::before{
  content:"";display:block;width:100%;aspect-ratio:1.49;background-image:var(--meato-art);background-size:cover;background-position:center;border-radius:6px;margin-bottom:14px;
}
.commission.meato-commission-visual::before{margin:0 0 12px;border-radius:5px}
.catalog-upgrade.meato-upgrade-visual{padding-top:0!important}
.catalog-upgrade.meato-upgrade-visual::before{margin:0 -20px 16px;width:calc(100% + 40px);border-radius:8px 8px 0 0}

.goods-cell .token.meato-symbol-token{background-image:var(--meato-symbol)!important;background-size:cover!important;background-position:center!important;border:0!important;color:transparent!important;box-shadow:0 2px 5px #2b3f3526!important}
.finance-row .meato-finance-symbol{background-image:var(--meato-symbol);background-size:48px 48px;background-position:calc(100% - 8px) 8px;background-repeat:no-repeat;padding-right:58px!important}
.finance-row .meato-finance-symbol svg{opacity:.55}
.firm-tab.meato-first-player{position:relative}
.firm-tab.meato-first-player::after{content:"";position:absolute;right:8px;top:7px;width:28px;height:28px;border-radius:50%;background:url('./art/meatonomy/MEATONOMY_S10_gracz_rozpoczynajacy.webp') center/cover no-repeat;box-shadow:0 2px 7px #162c2440;border:2px solid #fff9e9}
.firm-tab.meato-first-player>svg{margin-right:31px}

/* Timer działa poza drzewem React, więc nie zakłóca zapisu gry. */
#meato-timer{
  position:fixed;z-index:80;right:18px;bottom:18px;display:none;align-items:center;gap:10px;
  background:#fffaf0;border:1px solid #cdbb9e;border-radius:999px;padding:8px 13px 8px 8px;
  box-shadow:0 8px 28px #173f3526;color:#173f35;font-variant-numeric:tabular-nums;
}
#meato-timer.active{display:flex}
#meato-timer img{width:38px;height:38px;border-radius:50%;object-fit:cover}
#meato-timer .time-copy{display:grid;line-height:1.08}
#meato-timer small{font-size:9px;letter-spacing:1.2px;color:#7d705e;font-weight:750}
#meato-timer strong{font-size:20px;min-width:56px}
#meato-timer.warning{border-color:#bf7c3d;background:#fff3dc}
#meato-timer.critical{border-color:#9e4030;background:#f7e1d7;animation:meato-pulse 1s infinite}
@keyframes meato-pulse{50%{box-shadow:0 0 0 5px #9e403020,0 8px 28px #173f3526}}
@media(max-width:560px){#meato-timer{right:10px;bottom:10px;padding:6px 10px 6px 6px}#meato-timer img{width:32px;height:32px}#meato-timer strong{font-size:18px}}

#meato-help-trigger{
  position:fixed;z-index:81;right:18px;bottom:84px;width:46px;height:46px;border-radius:50%;border:1px solid #cdbb9e;background:#173f35;color:#fffaf0;
  font-weight:800;font-size:22px;box-shadow:0 8px 28px #173f3530;display:grid;place-items:center;
}
#meato-help-trigger:hover{background:#2a5c48}
@media(max-width:560px){#meato-help-trigger{right:10px;bottom:72px;width:42px;height:42px}}

#meato-help-overlay{position:fixed;z-index:200;inset:0;background:#10271f99;display:grid;place-items:center;padding:18px}
#meato-help-overlay[hidden]{display:none}
.meato-help-panel{width:min(620px,100%);max-height:min(740px,88vh);overflow:auto;background:#fffaf0;border:1px solid #cdbb9e;border-radius:14px;box-shadow:0 24px 70px #09181170;padding:24px;color:#213e35}
.meato-help-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.meato-help-panel h2{font-size:24px}.meato-help-panel p{margin:10px 0}.meato-help-panel ul{padding-left:20px}.meato-help-panel li{margin:7px 0}
.meato-help-panel .meato-close{border:1px solid #cdbb9e;background:#f8f2e6;border-radius:50%;width:38px;height:38px;font-size:22px;line-height:1}
.meato-help-panel .meato-help-kicker{font-size:10px;letter-spacing:1.5px;color:#a36138;font-weight:750}
.meato-help-panel .meato-time-note{padding:12px 14px;border-radius:8px;background:#f0e9da;margin-top:18px;font-size:13px}

/* Katalog uzupełniający P06–P08 i S01–S10. */
#meato-catalog-extra{max-width:1300px;margin:0 auto 45px;padding:0 4%;color:#213e35}
#meato-catalog-extra h2{margin:35px 0 18px}
.meato-extra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.meato-extra-card{border:1px solid #d5cbb6;background:#fcf8ee;border-radius:8px;overflow:hidden;box-shadow:0 3px 10px #173f3510}
.meato-extra-card img{display:block;width:100%;aspect-ratio:1.49;object-fit:cover}
.meato-extra-card.square img{aspect-ratio:1/1}
.meato-extra-card div{padding:14px 16px}.meato-extra-card small{display:block;color:#a36138;font-size:10px;letter-spacing:1.2px;font-weight:750}.meato-extra-card b{display:block;margin-top:4px;font-size:16px}
@media(max-width:850px){.meato-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.meato-extra-grid{grid-template-columns:1fr}}

/* Czytelny kod linii dla gracza, bez zmiany identyfikatorów zapisu R/D/Z. */
.meato-line-code{letter-spacing:.7px}

.art-contract.meato-contract-placeholder{background-size:contain!important;background-repeat:no-repeat!important;background-color:#f4eee3!important}

/* Okna decyzji są portalami Radix i muszą pozostać position:fixed.
   W 0.3.0 reguła position:relative nadpisywała centrowanie z bundla,
   przez co modal trafiał do przepływu dokumentu i wymuszał przewijanie strony. */
[data-slot="dialog-content"].game-dialog{
  position:fixed!important;top:50%!important;left:50%!important;translate:-50% -50%!important;margin:0!important;
  max-height:min(88dvh,880px)!important;overflow-y:auto;overscroll-behavior:contain;
}
.meato-dialog-help{position:absolute;right:54px;top:18px;z-index:3;width:34px;height:34px;border-radius:50%;border:1px solid #cdbb9e;background:#173f35;color:#fffaf0;font-weight:800;font-size:18px;display:grid;place-items:center}
@media(max-width:700px),(max-height:760px){
  [data-slot="dialog-content"].game-dialog{
    width:calc(100% - 20px)!important;max-height:calc(100dvh - 20px)!important;padding:20px!important;gap:14px!important;
  }
  .game-dialog [data-slot=dialog-title]{font-size:clamp(20px,4.8vw,24px)}
  .meato-dialog-help{right:48px;top:12px}
}
@media(max-width:560px){
  [data-slot="dialog-content"].game-dialog{width:calc(100% - 12px)!important;max-height:calc(100dvh - 12px)!important;padding:16px!important;border-radius:10px!important}
  .meato-dialog-help{right:44px;top:10px;width:32px;height:32px;font-size:17px}
  .game-dialog .loans{grid-template-columns:1fr!important}
}
.meato-inline-help{margin:10px 0 16px;padding:12px 14px;border:1px solid #d5cbb6;border-radius:8px;background:#f0e9da;font-size:13px;line-height:1.5}
.meato-inline-help b{display:block;margin-bottom:5px;color:#173f35}
