/* ===================== FERMIS — Naujienos (badge + flutter + laikraštis) ===================== */

.news-link{ display:inline-flex; align-items:center; gap:.4rem; }
.news-link__txt{ display:inline-block; transform-origin:center bottom; }

.news-badge{
  display:inline-grid; place-items:center; min-width:18px; height:18px; padding:0 5px;
  font-size:.68rem; font-weight:900; line-height:1; color:#2a1300;
  background:linear-gradient(180deg,#ffd76b,#f5a623);
  border-radius:999px; box-shadow:0 2px 8px rgba(245,166,35,.5);
  animation:newsBadgeIn .4s cubic-bezier(.2,1.5,.4,1) both, newsBadgePulse 2.4s ease-in-out .6s infinite;
}
/* Viso naujienų skaičius — informacinis, be „nauja“ pulsacijos */
.news-badge--total{
  color:#ecfdf5;
  background:linear-gradient(180deg,#34d399,#059669);
  box-shadow:0 2px 8px rgba(5,150,105,.35);
  animation:newsBadgeIn .4s cubic-bezier(.2,1.5,.4,1) both;
}
@keyframes newsBadgeIn{ from{ transform:scale(0); opacity:0 } to{ transform:scale(1); opacity:1 } }
@keyframes newsBadgePulse{ 0%,100%{ box-shadow:0 2px 8px rgba(245,166,35,.5) } 50%{ box-shadow:0 2px 14px rgba(245,166,35,.95) } }

.mobilebar__news{ position:relative; }
.news-badge--dot{
  position:absolute; top:2px; left:50%; margin-left:4px; transform:none;
  min-width:16px; height:16px; font-size:.62rem;
}

.news-flutter{ animation:newsFlutter 1.8s ease-in-out infinite; }
@keyframes newsFlutter{
  0%,100%{ transform:rotate(0) translateY(0); }
  20%{ transform:rotate(-2deg) translateY(-1px); }
  45%{ transform:rotate(1.4deg) translateY(0); }
  70%{ transform:rotate(-1deg) translateY(-1px); }
}
@media (prefers-reduced-motion:reduce){ .news-flutter{ animation:none; } }

/* ============================================================
 *  LAIKRAŠTIS (modalas) — vienas atnaujinimas = vienas lapas
 * ============================================================ */
.paper-overlay{
  position:fixed; inset:0; z-index:1000;
  display:flex; align-items:center; justify-content:center; padding:1.2rem;
  background:radial-gradient(120% 120% at 50% 0%, rgba(10,15,10,.55), rgba(6,10,7,.82));
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  opacity:0; transition:opacity .3s ease;
}
.paper-overlay[hidden]{ display:none; }
.paper-overlay.is-open{ opacity:1; }

.paper{
  position:relative; width:min(720px, 100%); max-height:92vh;
  display:flex; flex-direction:column;
  color:#231f18; font-family:Georgia, "Times New Roman", serif;
  background-color:#f6f1e2;
  background-image:
    radial-gradient(140% 90% at 50% 0%, rgba(255,255,255,.6), transparent 60%),
    repeating-linear-gradient(0deg, rgba(120,96,60,.045) 0 2px, transparent 2px 5px),
    radial-gradient(120% 120% at 100% 100%, rgba(120,90,50,.10), transparent 55%);
  border:1px solid #d8ccaa;
  border-radius:6px;
  box-shadow:0 40px 90px rgba(0,0,0,.6), inset 0 0 60px rgba(120,90,50,.12);
  transform:scale(.86) translateY(12px); transform-origin:center top; opacity:0;
  transition:transform .5s cubic-bezier(.2,.85,.2,1), opacity .4s ease;
  overflow:hidden;
}
.paper-overlay.is-open .paper{ transform:none; opacity:1; }

.paper__close{
  position:absolute; top:10px; right:12px; z-index:5; cursor:pointer;
  width:34px; height:34px; border-radius:50%; font-size:1rem; font-weight:700;
  color:#3a2f1c; background:rgba(0,0,0,.06); border:1px solid #cbbd98;
  transition:background .15s, transform .15s;
}
.paper__close:hover{ background:rgba(0,0,0,.14); transform:rotate(90deg); }

.paper__masthead{
  flex:0 0 auto;
  text-align:center; padding:1rem 1.4rem .45rem; border-bottom:3px double #231f18;
  position:relative;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.45), transparent 55%),
    linear-gradient(180deg, rgba(255,248,232,.35), transparent 70%);
}
.paper__press{
  display:flex; flex-direction:column; align-items:center; gap:.28rem;
  margin:0 auto .45rem;
}
.paper__seal-wrap{
  position:relative;
  width:104px; height:104px;
}
.paper__seal,
.paper__seal--inline{
  width:104px; height:104px;
  display:block;
  filter:drop-shadow(0 4px 8px rgba(60,45,20,.2));
  user-select:none; pointer-events:none;
}
.paper__press-meta{
  display:flex; flex-direction:column; align-items:center; gap:.05rem;
  line-height:1.15;
}
.paper__press-mark{
  font-family:"Playfair Display", Georgia, serif;
  font-size:.72rem; font-weight:900; letter-spacing:.28em;
  color:#1c1810; text-transform:uppercase;
}
.paper__press-house{
  font-size:.62rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:#7a6a4e;
}
.paper__eyebrow{ font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:#5c4f36; }
.paper__name{
  margin:.25rem 0; font-family:"Playfair Display", Georgia, serif; font-weight:900;
  font-size:clamp(1.7rem, 6vw, 3rem); letter-spacing:.02em; line-height:1;
  text-transform:uppercase; color:#1c1810;
}
.paper__rule{ height:2px; background:#231f18; margin:.3rem auto; width:60%; }
.paper__date{ font-style:italic; font-size:.88rem; color:#4a3f2a; }

/* Mini top nuorodos */
.paper__tops{
  flex:0 0 auto;
  display:flex; flex-wrap:wrap; gap:.35rem; justify-content:center;
  padding:.55rem .75rem .35rem;
  border-bottom:1px solid rgba(60,45,20,.14);
  background:rgba(255,255,255,.28);
}
.paper__top{
  appearance:none; cursor:pointer;
  display:inline-flex; align-items:center; gap:.28rem;
  padding:.28rem .55rem; border-radius:999px;
  border:1px solid rgba(60,45,20,.18);
  background:rgba(255,255,255,.55);
  color:#3a2f1c; font-family:inherit; font-size:.68rem; font-weight:750;
  transition:background .15s, border-color .15s, transform .15s;
}
.paper__top:hover{
  border-color:rgba(180,120,40,.45);
  background:#fff8e8;
  transform:translateY(-1px);
}
.paper__top.is-on{
  background:linear-gradient(180deg,#ffe8a8,#f0c45a);
  border-color:rgba(160,110,30,.35);
}

/* Puslapio skaitliukas */
.paper__pager{
  flex:0 0 auto;
  display:flex; align-items:baseline; justify-content:center; gap:.28rem;
  padding:.35rem .75rem .15rem;
  font-variant-numeric:tabular-nums;
}
.paper__pager-label{
  font-size:.68rem; text-transform:uppercase; letter-spacing:.08em;
  color:#7a6a4e; font-weight:700;
}
.paper__pager strong{
  font-size:1.15rem; font-weight:900; color:#1c1810; min-width:1.2em; text-align:center;
}
.paper__pager-sep, #newsPageTotal{ color:#7a6a4e; font-weight:700; font-size:.9rem; }

/* Knygos lapai */
.paper__book{
  flex:1 1 auto; min-height:0;
  position:relative;
  perspective:1400px;
  overflow:hidden;
}
.paper__sheet{
  position:absolute; inset:0;
  padding:1rem 1.25rem 1.1rem;
  overflow-y:auto; -webkit-overflow-scrolling:touch;
  transform-origin:left center;
  backface-visibility:hidden;
  background:
    linear-gradient(90deg, rgba(90,60,20,.06), transparent 18px),
    #f6f1e2;
  opacity:0;
  pointer-events:none;
  z-index:1;
}
.paper__sheet.is-active{
  position:relative;
  opacity:1;
  pointer-events:auto;
  z-index:3;
}
.paper__sheet.is-leaving-next{
  position:absolute; inset:0; z-index:4; pointer-events:none;
  animation:paperFlipOutNext .48s cubic-bezier(.2,.8,.2,1) forwards;
}
.paper__sheet.is-leaving-prev{
  position:absolute; inset:0; z-index:4; pointer-events:none;
  animation:paperFlipOutPrev .48s cubic-bezier(.2,.8,.2,1) forwards;
}
.paper__sheet.is-enter-next{
  animation:paperFlipInNext .48s cubic-bezier(.2,.8,.2,1) both;
}
.paper__sheet.is-enter-prev{
  animation:paperFlipInPrev .48s cubic-bezier(.2,.8,.2,1) both;
}

@keyframes paperFlipOutNext{
  0%{ transform:rotateY(0) translateX(0); opacity:1; box-shadow:0 0 0 rgba(0,0,0,0); }
  100%{ transform:rotateY(-78deg) translateX(-8%); opacity:0; box-shadow:-18px 0 28px rgba(0,0,0,.18); }
}
@keyframes paperFlipInNext{
  0%{ transform:rotateY(72deg) translateX(10%); opacity:0; }
  100%{ transform:rotateY(0) translateX(0); opacity:1; }
}
@keyframes paperFlipOutPrev{
  0%{ transform:rotateY(0) translateX(0); opacity:1; }
  100%{ transform:rotateY(78deg) translateX(8%); opacity:0; box-shadow:18px 0 28px rgba(0,0,0,.18); }
}
@keyframes paperFlipInPrev{
  0%{ transform:rotateY(-72deg) translateX(-10%); opacity:0; }
  100%{ transform:rotateY(0) translateX(0); opacity:1; }
}

.paper__art-date{
  font-size:.72rem; letter-spacing:.06em; text-transform:uppercase;
  color:#7a6a4e; font-weight:700; margin-bottom:.35rem;
}
.paper__headline{
  margin:0 0 .55rem; font-family:"Playfair Display", Georgia, serif;
  font-size:clamp(1.2rem, 3.8vw, 1.65rem); line-height:1.2; font-weight:900; color:#1c1810;
}
.paper__body{
  font-size:.95rem; line-height:1.55; color:#2e281c;
}
.paper__body::first-letter{
  float:left; font-size:2.6rem; line-height:.85; font-weight:900;
  padding-right:.35rem; margin-top:.1rem;
  font-family:"Playfair Display", Georgia, serif; color:#5a4020;
}

/* Like / dislike */
.paper__votes{
  display:flex; flex-wrap:wrap; align-items:center; gap:.4rem;
  margin-top:1rem; padding-top:.75rem;
  border-top:1px dashed rgba(60,45,20,.22);
}
.paper__vote{
  appearance:none; cursor:pointer;
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.4rem .7rem; border-radius:999px;
  border:1px solid rgba(60,45,20,.2);
  background:rgba(255,255,255,.55);
  color:#2e281c; font-family:inherit; font-size:.82rem; font-weight:800;
  transition:background .15s, border-color .15s, transform .12s;
}
.paper__vote:hover:not(:disabled){
  transform:translateY(-1px);
  background:#fff;
}
.paper__vote:disabled{ opacity:.55; cursor:not-allowed; }
.paper__vote.is-on.paper__vote--like{
  background:rgba(90,160,70,.18);
  border-color:rgba(90,140,50,.45);
  color:#2f5a20;
}
.paper__vote.is-on.paper__vote--dislike{
  background:rgba(200,80,60,.14);
  border-color:rgba(180,70,50,.4);
  color:#7a2e22;
}
.paper__vote b{ font-variant-numeric:tabular-nums; min-width:1.1em; }
.paper__vote-hint{
  font-size:.68rem; color:#8a7a5e; font-style:italic; font-weight:650;
}

/* Flip juosta */
.paper__flipbar{
  flex:0 0 auto;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:.4rem;
  padding:.55rem .7rem .7rem;
  border-top:1px solid rgba(60,45,20,.16);
  background:rgba(255,255,255,.35);
}
.paper__flip{
  appearance:none; cursor:pointer;
  padding:.45rem .7rem; border-radius:10px;
  border:1px solid rgba(60,45,20,.22);
  background:linear-gradient(180deg,#fff8e8,#f0e2c0);
  color:#2a2114; font-family:inherit; font-size:.78rem; font-weight:800;
}
.paper__flip:disabled{ opacity:.4; cursor:not-allowed; }
.paper__flip:hover:not(:disabled){ filter:brightness(1.03); }
#newsPrev{ justify-self:start; }
#newsNext{ justify-self:end; }
.paper__dots{
  display:flex; gap:4px; justify-content:center; max-width:42vw; overflow:hidden;
}
.paper__dots i{
  width:6px; height:6px; border-radius:50%;
  background:rgba(60,45,20,.22);
}
.paper__dots i.is-on{ background:#c4922a; box-shadow:0 0 0 2px rgba(196,146,42,.25); }

.paper__empty{ padding:3rem 1.5rem; text-align:center; font-size:1.1rem; color:#4a3f2a; }

.paper__sheet.is-focus .paper__headline{
  text-decoration:underline; text-decoration-color:rgba(196,146,42,.55); text-underline-offset:.15em;
}

@media (max-width:720px){
  .paper-overlay{
    align-items:stretch; justify-content:flex-end; padding:0;
  }
  .paper{
    width:100%;
    max-height:94vh; max-height:94dvh;
    height:94vh; height:94dvh;
    border-radius:16px 16px 0 0;
    transform:translateY(18px); opacity:0;
  }
  .paper-overlay.is-open .paper{ transform:none; opacity:1; }
  .paper__masthead{ padding:0.7rem 2.6rem .35rem 0.85rem; }
  .paper__seal-wrap{ width:84px; height:84px; }
  .paper__seal, .paper__seal--inline{ width:84px; height:84px; }
  .paper__press-mark{ font-size:.64rem; letter-spacing:.22em; }
  .paper__press-house{ font-size:.56rem; }
  .paper__name{ font-size:1.45rem; }
  .paper__eyebrow{ font-size:.62rem; }
  .paper__date{ font-size:.74rem; }
  .paper__close{ top:8px; right:8px; z-index:6; }
  .paper__tops{ gap:.28rem; padding:.45rem .55rem .3rem; }
  .paper__top{ font-size:.62rem; padding:.24rem .45rem; }
  .paper__sheet{
    padding:.85rem .9rem 1rem;
  }
  .paper__body::first-letter{
    float:none; font-size:inherit; line-height:inherit; padding:0; margin:0;
    font-weight:inherit; font-family:inherit; color:inherit;
  }
  .paper__headline{ font-size:1.2rem; }
  .paper__body{ font-size:.9rem; }
  .paper__flip{ font-size:.74rem; padding:.42rem .55rem; }
}

@media (prefers-reduced-motion:reduce){
  .paper__sheet.is-leaving-next,
  .paper__sheet.is-leaving-prev,
  .paper__sheet.is-enter-next,
  .paper__sheet.is-enter-prev{ animation:none !important; }
}
