:root{
  --paper:#f0e6cf; --paper-2:#e8dcbf; --paper-3:#ded0ad; --ink:#211c14; --ink-soft:#5a503e;
  --red:#c23a2b; --blue:#283c6e; --terra:#cf5a31;
  --shadow:rgba(40,30,15,.28);
  --page-fade:620ms;
  --nav-h:96px;
}
*{ box-sizing:border-box; }
html{
  overflow-x:clip;
  -webkit-text-size-adjust:100%;
}
body{
  margin:0;
  background:#c9bda3 !important;
  font-family:'Old Standard TT',serif;
  color:var(--ink);
  overflow-x:clip;
  max-width:100%;
  padding:calc(var(--nav-h) + env(safe-area-inset-top, 0px) + 12px) 8px 8px;
}

.stagewrap,
.stack{
  width:100%;
  max-width:100%;
  margin:0 auto;
}
.stack{ position:relative; }

.sheet-back,
.page-cast-shadow,
.dogear{ display:none; }

.page-slot{ position:relative; z-index:2; }
.page-under{
  position:absolute; left:0; right:0; top:0; z-index:3;
  pointer-events:none; opacity:0; visibility:hidden;
}
.page-top{
  position:relative; z-index:5;
  transition:opacity var(--page-fade) cubic-bezier(.25,.46,.45,.94);
}
body.is-turning{ pointer-events:none; }

@media (prefers-reduced-motion: reduce){
  .page-top{ transition:none !important; }
}

.sheet-shape{
  position:relative;
  background:var(--paper);
  border-radius:3px;
  box-shadow:0 8px 22px var(--shadow), 0 1px 3px rgba(0,0,0,.12);
  overflow:hidden;
}
.grain{
  position:absolute; inset:0; pointer-events:none; z-index:6;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/></svg>");
  mix-blend-mode:multiply; opacity:.10;
}
.pad{ position:relative; z-index:4; padding:18px 16px 20px; }

/* ---------- header (mobile) ---------- */
.head{
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.cal{
  flex:0 0 88px;
  background:var(--paper);
  border:2px solid var(--ink);
  text-align:center;
  box-shadow:3px 4px 0 rgba(33,28,20,.18);
  overflow:hidden;
}
.cal-wd{
  background:var(--ink); color:var(--paper);
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  letter-spacing:.12em; font-size:10px; padding:5px 2px 4px;
}
.cal-day{
  font-family:'Anton',sans-serif; color:var(--terra);
  font-size:clamp(36px, 11vw, 52px); line-height:.9;
  padding:6px 0 0; letter-spacing:-.01em;
}
.cal-mo{
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  letter-spacing:.10em; font-size:10px; color:var(--ink); padding:4px 2px 7px;
}
.titleblock{ flex:1; min-width:0; position:relative; }
.svejk{
  display:block;
  position:absolute; right:-2px; top:-4px;
  height:clamp(70px, 22vw, 96px);
  z-index:0; pointer-events:none; opacity:.55;
}
.svejk svg{ height:100%; width:auto; display:block; fill:var(--terra); }
.titleblock > .eyebrow,
.titleblock > .mast{ position:relative; z-index:1; }
.eyebrow{
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  letter-spacing:.18em; font-size:10px; color:var(--terra);
}
.mast{
  font-family:'Anton',sans-serif; text-transform:uppercase; color:var(--ink);
  font-size:clamp(26px, 7.5vw, 36px); line-height:.92;
  letter-spacing:.005em; margin:4px 0 0;
  overflow-wrap:anywhere;
}
.mast .terra{ color:var(--terra); }
.hr{ border:none; border-top:2px solid var(--ink); margin:14px 0 0; }

/* ---------- scoreboard (mobile) ---------- */
.board{
  background:var(--ink); color:var(--paper);
  border-top:3px solid var(--terra);
  margin-top:14px; padding:14px 16px 16px;
}
.board-kick{
  text-align:center; font-family:'Oswald',sans-serif; font-weight:600;
  text-transform:uppercase; letter-spacing:.16em; font-size:10px;
  color:var(--terra); margin-bottom:10px;
}
.board-main{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:10px;
}
.bteam{
  display:flex;
  align-items:baseline;
  gap:8px;
}
.bteam.l{
  justify-content:flex-end;
  text-align:right;
}
.bteam.r{
  justify-content:flex-start;
  text-align:left;
}
.bcolon{
  font-family:'Anton',sans-serif;
  font-size:clamp(24px, 7vw, 32px);
  color:var(--paper-3);
  line-height:.7;
}
.bnum{
  font-family:'Anton',sans-serif;
  font-size:clamp(36px, 10vw, 48px);
  line-height:1; color:var(--paper);
}
.bteam.l .bnum{ color:var(--paper); }
.bteam.r .bnum{ color:var(--terra); }
.blbl{
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  letter-spacing:.06em; font-size:clamp(10px, 2.8vw, 13px); line-height:1.15;
  color:var(--paper);
  max-width:9ch;
}
.board-stats{
  text-align:center; font-family:'Oswald',sans-serif; font-weight:500;
  text-transform:uppercase; letter-spacing:.06em; font-size:11px;
  color:var(--paper-3); margin-top:10px; padding-top:10px;
  border-top:1px solid rgba(240,230,207,.22);
}
.board-note{
  text-align:center;
  font-family:'Oswald',sans-serif;
  font-weight:500;
  letter-spacing:.06em;
  font-size:11px;
  line-height:1.45;
  color:var(--paper-3);
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(240,230,207,.22);
}

/* ---------- items (mobile) ---------- */
.item{
  display:block;
  padding:18px 0 16px;
  border-bottom:1.5px solid rgba(33,28,20,.25);
}
.numcol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 12px;
  margin-bottom:10px;
}
.num{
  font-family:'Anton',sans-serif;
  font-size:clamp(44px, 12vw, 56px);
  line-height:1; color:var(--terra); letter-spacing:-.03em;
}
.item.i2 .num{ color:var(--blue); }
.kick{
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  letter-spacing:.10em; font-size:11px; color:var(--ink-soft);
}
.h{
  font-family:'Anton',sans-serif; text-transform:uppercase;
  font-size:clamp(19px, 5.2vw, 24px); line-height:1.1; margin:0;
  overflow-wrap:anywhere;
}
.hl{ display:block; }
.p{
  font-size:16px; line-height:1.5; margin:12px 0 0;
  overflow-wrap:anywhere;
}
.mean{
  margin-top:10px; font-size:15px; line-height:1.45;
  color:var(--ink); font-weight:600;
  overflow-wrap:anywhere;
}
.mean b{
  font-style:normal; font-family:'Oswald',sans-serif; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase; font-size:11px; color:var(--terra);
}
.item.i2 .mean b{ color:var(--blue); }
.stamp{
  display:inline-block;
  font-family:'Anton',sans-serif; text-transform:uppercase;
  letter-spacing:.10em; font-size:13px; color:var(--red);
  padding:4px 10px 3px; transform:rotate(-4deg);
  border:2px solid var(--red); box-shadow:inset 0 0 0 1.2px var(--red);
  border-radius:3px; opacity:.95;
}
.item.i2 .stamp{ transform:rotate(3deg); }
.stamp.zamiteno{ color:var(--ink-soft); border-color:var(--ink-soft); box-shadow:inset 0 0 0 1.2px var(--ink-soft); }
.stamp.odlozeno{ color:var(--blue); border-color:var(--blue); box-shadow:inset 0 0 0 1.2px var(--blue); }

/* ---------- verdict (mobile) ---------- */
.verdict{
  position:relative; margin-top:16px;
  padding:18px 14px 16px; background:var(--ink); color:var(--paper);
}
.verdict .qm{
  font-family:'Old Standard TT',serif; font-style:italic;
  font-size:clamp(48px, 14vw, 64px); line-height:.5;
  color:var(--terra); position:absolute; top:12px; left:10px; opacity:.9;
}
.verdict .q{
  font-style:italic;
  font-size:clamp(17px, 4.8vw, 22px); line-height:1.25;
  padding-left:36px; text-wrap:pretty; margin:0;
  overflow-wrap:anywhere;
}
.verdict .q .key{
  font-family:'Anton',sans-serif; font-style:normal; font-weight:400;
  color:var(--terra); text-transform:uppercase; letter-spacing:.01em;
}
.verdict .sign{
  font-family:'Anton',sans-serif; text-transform:uppercase;
  letter-spacing:.18em; font-size:9px; color:var(--paper-3);
  margin:14px 0 0 36px;
}

/* ---------- subscribe ---------- */
.subscribe{
  margin-top:24px; padding:20px 0 0;
  border-top:1px solid rgba(33,28,20,.14);
  display:flex; flex-direction:column; align-items:center;
  text-align:center;
}
.subscribe-gloss{
  margin:0 0 14px;
  font-family:'Old Standard TT',serif; font-style:italic;
  font-size:17px; line-height:1.45; color:var(--ink-soft);
  max-width:48ch; text-align:center;
}
.subscribe-form{
  margin:0; width:100%; max-width:22rem;
  display:flex; flex-direction:column; align-items:center;
}
.subscribe-hp{
  position:absolute; left:-9999px; width:1px; height:1px; opacity:0;
}
.subscribe-row{
  display:flex; flex-direction:column; gap:10px; align-items:stretch;
  width:100%; max-width:22rem; margin:0 auto;
}
.subscribe-input{
  width:100%;
  font-family:'Old Standard TT',serif; font-size:17px;
  padding:10px 12px; border:2px solid rgba(33,28,20,.25);
  background:var(--paper); color:var(--ink);
  border-radius:2px;
}
.subscribe-input:focus{
  outline:2px solid var(--terra); outline-offset:2px;
}
.subscribe-btn{
  width:100%;
  font-family:'Anton',sans-serif; text-transform:uppercase; letter-spacing:.08em;
  font-size:14px; padding:10px 18px; border:0; border-radius:2px;
  background:var(--terra); color:var(--paper); cursor:pointer;
}
.subscribe-btn:hover{ filter:brightness(1.05); }
.subscribe-btn:disabled{ cursor:default; opacity:.7; }
.subscribe-form--success .subscribe-row{ display:none; }
.subscribe-success{
  margin:8px 0 0; padding:0;
  font-family:'Anton',sans-serif; text-transform:uppercase;
  letter-spacing:.06em; font-size:22px; line-height:1.35;
  color:var(--ink); text-align:center;
  max-width:28ch;
}
.subscribe-error{
  margin:10px 0 0;
  font-family:'Old Standard TT',serif;
  font-size:15px; line-height:1.4;
  color:var(--red);
  text-align:center;
}
.subscribe-hint{
  color:var(--ink-soft);
}
.subscribe--success .subscribe-gloss{ display:none; }

/* ---------- nav (mobile) ---------- */
.edition-nav{
  position:fixed;
  left:8px; right:8px; top:calc(8px + env(safe-area-inset-top, 0px));
  display:flex; align-items:center; justify-content:space-between;
  gap:8px; z-index:100;
  padding:8px 10px;
  background:rgba(240,230,207,.96);
  border:2px solid rgba(33,28,20,.22); border-radius:6px;
  box-shadow:0 8px 24px var(--shadow);
}
.edition-arrow{
  display:flex; align-items:center; gap:8px;
  font-family:'Anton',sans-serif; text-transform:uppercase; letter-spacing:.08em;
  font-size:13px; color:var(--ink); text-decoration:none;
  min-height:44px; min-width:44px; justify-content:center;
  padding:6px; border-radius:4px;
  flex-shrink:0;
  transition:background .15s, color .15s;
}
.edition-arrow:hover{ background:rgba(207,90,49,.12); color:var(--terra); }
.edition-arrow.disabled{ opacity:.28; pointer-events:none; }
.edition-glyph{ font-size:22px; line-height:1; letter-spacing:0; }
.edition-meta{ display:none; }
.edition-now{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  flex:1 1 auto; min-width:0; max-width:58vw;
  padding:4px 8px; text-align:center;
}
.edition-now-day{
  font-family:'Anton',sans-serif; color:var(--terra);
  font-size:clamp(42px, 14vw, 56px); line-height:.95; letter-spacing:-.02em;
}
.edition-now-sub{
  font-family:'Oswald',sans-serif; font-weight:600; text-transform:uppercase;
  font-size:clamp(13px, 4vw, 17px); letter-spacing:.06em;
  color:var(--ink); margin-top:5px; line-height:1.2;
  overflow-wrap:anywhere;
}

/* ---------- desktop (721px+) ---------- */
@media (min-width: 721px){
  body{ padding:calc(72px + env(safe-area-inset-top, 0px)) 16px 46px; }

  .stagewrap{ width:840px; max-width:840px; }
  .stack{ width:840px; max-width:840px; }

  .sheet-back{
    display:block;
    position:absolute; border-radius:2px; box-shadow:0 2px 10px var(--shadow);
  }
  .sheet-back.b1{ top:26px; left:26px; right:-22px; bottom:-22px; background:var(--paper-2); transform:rotate(.5deg); }
  .sheet-back.b2{ top:17px; left:17px; right:-14px; bottom:-14px; background:var(--paper); transform:rotate(-.4deg); }
  .sheet-back.b3{ top:8px; left:8px; right:-7px; bottom:-7px; background:var(--paper-2); }

  .page-cast-shadow{
    display:block;
    position:absolute; left:8%; right:8%; bottom:-18px; height:28px; z-index:1;
    background:radial-gradient(ellipse at center, rgba(40,30,15,.32) 0%, transparent 72%);
    transform:scaleX(.92); opacity:.55; pointer-events:none;
  }

  .sheet-shape{
    clip-path:polygon(0 0, calc(100% - 64px) 0, 100% 64px, 100% 100%, 0 100%);
    border-radius:0;
    box-shadow:0 14px 34px var(--shadow), 0 2px 4px rgba(0,0,0,.12);
  }
  .grain{ opacity:.14; }

  .dogear{
    display:block;
    position:absolute; top:0; right:0; width:64px; height:64px; z-index:7;
    background:linear-gradient(225deg, var(--paper-3) 0%, var(--paper-2) 60%, var(--paper-3) 100%);
    clip-path:polygon(100% 0, 100% 100%, 0 0);
    box-shadow:-3px 3px 6px rgba(40,30,15,.30);
  }
  .dogear::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(225deg, transparent 46%, rgba(40,30,15,.18) 50%, transparent 54%);
    clip-path:polygon(100% 0, 100% 100%, 0 0);
  }

  .pad{ padding:44px 50px 40px; }

  .head{ gap:26px; align-items:stretch; }
  .cal{ flex:0 0 132px; border-width:3px; box-shadow:4px 5px 0 rgba(33,28,20,.18); }
  .cal-wd{ letter-spacing:.22em; font-size:14px; padding:6px 4px 5px; }
  .cal-day{ font-size:86px; line-height:.84; padding:8px 0 0; }
  .cal-mo{ letter-spacing:.14em; font-size:13px; padding:6px 4px 9px; }

  .titleblock{ position:relative; }
  .titleblock > .eyebrow, .titleblock > .mast{ position:relative; z-index:2; }
  .svejk{
    display:block;
    position:absolute; right:-2px; top:-6px; height:150px;
    z-index:0; pointer-events:none; opacity:.6;
  }
  .svejk svg{ height:100%; width:auto; display:block; fill:var(--terra); }
  .eyebrow{ letter-spacing:.26em; font-size:13px; }
  .mast{ font-size:66px; line-height:.86; margin:8px 0 0; }
  .hr{ border-top-width:3px; margin:18px 0 0; }

  .board{ border-top-width:4px; margin-top:16px; padding:16px 28px 18px; }
  .board-kick{ letter-spacing:.24em; font-size:12px; margin-bottom:8px; }
  .board-main{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:26px;
  }
  .bteam{ gap:14px; }
  .bteam.l{ justify-content:flex-end; text-align:right; }
  .bteam.r{ justify-content:flex-start; text-align:left; }
  .bcolon{
    display:block;
    font-family:'Anton',sans-serif; font-size:40px;
    color:var(--paper-3); line-height:.7;
  }
  .bnum{ font-size:62px; line-height:.74; }
  .blbl{ letter-spacing:.08em; font-size:15px; line-height:1; white-space:nowrap; max-width:none; }
  .board-stats{ letter-spacing:.08em; font-size:12.5px; margin-top:12px; padding-top:10px; }
  .board-note{
    letter-spacing:.08em;
    font-size:12.5px;
    margin-top:18px;
    padding-top:14px;
  }

  .item{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:6px 26px;
    align-items:start;
    padding:24px 0 22px;
  }
  .numcol{
    flex-direction:column;
    align-items:center;
    text-align:center;
    margin-bottom:0;
  }
  .num{ font-size:132px; line-height:.92; margin:2px 0 0; }
  .kick{ letter-spacing:.14em; font-size:12px; margin-bottom:2px; }
  .h{ font-size:33px; line-height:1.06; }
  .p{ font-size:18.5px; line-height:1.42; max-width:46ch; margin:20px 0 0; }
  .mean{ margin-top:14px; font-size:17px; line-height:1.44; }
  .mean b{ letter-spacing:.08em; font-size:12.5px; }
  .stamp{
    margin-top:16px; font-size:19px; padding:6px 14px 5px;
    transform:rotate(-8deg); border-width:3px;
    box-shadow:inset 0 0 0 1.6px var(--red);
  }
  .item.i2 .stamp{ transform:rotate(5deg); }
  .stamp.zamitnuto,
  .stamp.odlozeno{ box-shadow:inset 0 0 0 1.6px currentColor; }

  .verdict{ margin-top:22px; padding:26px 30px 24px; }
  .verdict .qm{ font-size:120px; top:22px; left:18px; }
  .verdict .q{ font-size:38px; line-height:1.18; padding-left:74px; }
  .verdict .sign{ letter-spacing:.26em; font-size:11px; margin:18px 0 0 74px; }

  .subscribe{ margin-top:28px; padding-top:24px; }
  .subscribe-gloss{ font-size:18px; max-width:none; }
  .subscribe-input{ font-size:18px; padding:12px 14px; }
  .subscribe-btn{ font-size:15px; padding:12px 22px; }
  .subscribe-success{ font-size:26px; max-width:none; }

  .edition-nav{
    left:50%; right:auto; width:auto;
    transform:translateX(-50%);
    top:calc(18px + env(safe-area-inset-top, 0px));
    bottom:auto;
    justify-content:flex-start;
    gap:18px; padding:10px 18px; border-radius:4px;
    backdrop-filter:blur(4px);
  }
  .edition-arrow{ min-height:0; min-width:0; padding:6px 10px; border-radius:3px; }
  .edition-meta{ display:inline; font-size:11px; color:var(--ink-soft); letter-spacing:.14em; }
  .edition-now{
    flex-direction:row; flex-wrap:nowrap; align-items:baseline; gap:10px;
    max-width:none; white-space:nowrap;
  }
  .edition-now-day{ font-size:26px; }
  .edition-now-sub{ font-size:12px; margin-top:0; letter-spacing:.1em; }
}
