/* proto.css — каркас сцени й шарів. Підключати ПІСЛЯ hc-kit.css кіту. Свої стилі екранів — в окремому screens.css.
   Правила кіту: тіла вікон, кнопки, стрічки, рамки — ТІЛЬКИ класами .hc-* (PNG кіту). CSS-градієнти, box-shadow-«кнопки»,
   суцільні світлі прямокутники як тіло вікна заборонені (lint_prototype.py). Дозволено: .hc-scrim, текст, тіні тексту, анімації. */
:root{
  --hc-scale:.703;                 /* кіт @2x з канви 1536 px → дизайн-висота 1080 */
  --ink:#4c2205; --ink-light:#fff6df; --gold-text:#ffe08a;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;overflow:hidden;background:#000;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
body{font-family:var(--hc-font);font-weight:700;color:var(--ink-light)}
#stage{position:absolute;left:0;top:0;transform-origin:0 0;overflow:hidden;background:#000}
.safe{position:absolute;top:0;bottom:0;left:50%;width:1920px;margin-left:-960px}
.edge-l{position:absolute;left:0}.edge-r{position:absolute;right:0}

/* екрани й модалки */
.screen,.modal{position:absolute;inset:0;display:none}
.screen.on,.modal.on{display:block}
.modal{z-index:100}
.hc-scrim{position:absolute;inset:0;background:rgba(0,0,0,.78)}           /* hc-allow-gradient: scrim */
.modal .hc-scrim{animation:fadein .18s ease-out}
.modal .win{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);animation:popin .22s cubic-bezier(.2,1.4,.4,1)}
@keyframes fadein{from{opacity:0}}
@keyframes popin{from{transform:translate(-50%,-50%) scale(.85);opacity:0}}

/* типографіка HC: PT Serif Bold; темний текст на світлих плитах, світлий з тінню на темному */
.t-title{font-size:48px;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.45),0 0 12px rgba(0,0,0,.35);letter-spacing:.01em}
.t-ribbon{font-size:40px;color:#fff;text-shadow:0 2px 0 rgba(90,0,0,.7)}
.t-body{font-size:28px;line-height:1.25;color:var(--ink)}
.t-light{font-size:28px;line-height:1.25;color:var(--ink-light);text-shadow:0 2px 0 rgba(0,0,0,.6)}
.t-num{font-size:30px;color:#fff;text-shadow:0 2px 0 #000,0 0 4px #000;font-variant-numeric:tabular-nums}
.t-btn{font-size:38px;color:#fff;text-shadow:0 2px 0 rgba(0,60,0,.55)}

/* хелпери анімацій */
.fly{position:absolute;left:0;top:0;z-index:500;pointer-events:none;font-size:40px;color:var(--gold-text);text-shadow:0 2px 0 #5a2a00,0 0 6px #000;white-space:nowrap}
.pulse{animation:pulse .35s ease-out}
@keyframes pulse{50%{transform:scale(1.12)}}
.toast{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:600;padding:14px 34px;font-size:32px;color:#fff;text-shadow:0 2px 0 #000;pointer-events:none;animation:toast 1.6s ease-out forwards}
@keyframes toast{0%{opacity:0;transform:translate(-50%,-30%)}15%,80%{opacity:1;transform:translate(-50%,-50%)}100%{opacity:0}}

/* позначки походження (видно в прототипі, щоб ніхто не прийняв заглушку за фінальний арт) */
[data-origin="placeholder"]{outline:3px dashed #ff3b6b;outline-offset:-3px}
[data-origin="placeholder"]::after{content:"PLACEHOLDER";position:absolute;left:4px;top:4px;font:700 14px system-ui;color:#fff;background:#ff3b6b;padding:1px 5px;z-index:2}
[data-origin="generated"]::after{content:"GEN";position:absolute;right:2px;bottom:2px;font:700 11px system-ui;color:#fff;background:rgba(80,40,160,.85);padding:0 4px;z-index:2;pointer-events:none}
