/* ============ SLTC eMagazine — Frontend v1.3.0 ============ */
:root{
  --sltc-bg:#fff; --sltc-fg:#0f172a; --sltc-muted:#64748b;
  --sltc-border:#e2e8f0; --sltc-accent:#0f172a; --sltc-accent-2:#3b82f6;
  --sltc-shadow:0 10px 30px -10px rgba(15,23,42,.18);
  --sltc-radius:14px;
}

/* Prevent horizontal scroll caused by full-bleed breakout. */
html:has(.sltc-emag-archive-wrap),
html:has(.sltc-viewer),
body.sltc-single-magazine,
body:has(.sltc-emag-archive-wrap),
body:has(.sltc-viewer){ overflow-x:hidden !important; }

/* ============ FULL-WIDTH BREAKOUT (scrollbar-safe) ============ */
.sltc-emag-archive-wrap,
.sltc-viewer{
  width:100% !important;
  max-width:100vw;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  box-sizing:border-box;
  position:relative;
}
@supports (width: 100dvw){
  .sltc-emag-archive-wrap,
  .sltc-viewer{ width:100dvw !important; max-width:100dvw; }
}

/* SVG hide attribute respected (theme toggle icons) */
.sltc-viewer svg[hidden]{display:none !important;}

/* Hide theme-injected post title / author / meta on single magazine */
body.sltc-single-magazine .entry-title,
body.sltc-single-magazine .entry-header,
body.sltc-single-magazine .entry-meta,
body.sltc-single-magazine .post-title,
body.sltc-single-magazine .single-post-title,
body.sltc-single-magazine .page-title,
body.sltc-single-magazine .post-meta,
body.sltc-single-magazine .posted-on,
body.sltc-single-magazine .post-author,
body.sltc-single-magazine .author.vcard,
body.sltc-single-magazine .byline,
body.sltc-single-magazine .post-date,
body.sltc-single-magazine .entry-date,
body.sltc-single-magazine .breadcrumbs,
body.sltc-single-magazine .breadcrumb,
body.sltc-single-magazine nav.breadcrumb,
body.sltc-single-magazine .page-header,
body.sltc-single-magazine header.entry-header{display:none !important;}
.sltc-emag-archive-wrap{
  background:linear-gradient(180deg,#fafafa 0%,#fff 60%);
  padding:48px clamp(16px,4vw,64px);
}
.sltc-emag-archive{max-width:1480px;margin:0 auto;color:var(--sltc-fg);font-family:inherit;}
.sltc-archive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:24px;}
.sltc-archive-title{font-size:clamp(28px,3.4vw,44px);font-weight:800;letter-spacing:-.02em;margin:0;line-height:1.1;}
.sltc-archive-sub{margin:6px 0 0;color:var(--sltc-muted);font-size:15px;}
.sltc-search{position:relative;min-width:280px;flex:0 1 360px;width:100%;}
.sltc-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--sltc-muted);}
.sltc-search input{width:100%;height:46px;padding:0 16px 0 42px;border:1px solid var(--sltc-border);border-radius:999px;font-size:14px;background:#fff;}

.sltc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;}
@media (max-width:480px){.sltc-grid{grid-template-columns:repeat(2,1fr);gap:14px;}}

.sltc-card{background:#fff;border:1px solid var(--sltc-border);border-radius:var(--sltc-radius);overflow:hidden;transition:.25s;display:flex;flex-direction:column;cursor:pointer;text-decoration:none;color:inherit;}
.sltc-card:hover{transform:translateY(-4px);box-shadow:var(--sltc-shadow);}
.sltc-card-cover{aspect-ratio:3/4;background:#f1f5f9;overflow:hidden;position:relative;}
.sltc-card-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s;}
.sltc-card:hover .sltc-card-cover img{transform:scale(1.05);}
.sltc-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1;}
.sltc-card-cat{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--sltc-accent-2);}
.sltc-card-title{margin:0;font-size:17px;line-height:1.3;font-weight:700;color:var(--sltc-fg);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.sltc-card-excerpt{margin:0;color:var(--sltc-muted);font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.sltc-skeleton .sltc-card-cover{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:sltc-shimmer 1.4s infinite;}
.sltc-skeleton .sk-line{height:12px;background:#f1f5f9;border-radius:6px;margin-top:8px;}
.sltc-skeleton .sk-line.short{width:60%;}
@keyframes sltc-shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
.sltc-pagination{display:flex;justify-content:center;margin-top:32px;}
.sltc-loadmore{appearance:none;border:1px solid var(--sltc-border);background:#fff;color:var(--sltc-fg);padding:12px 28px;border-radius:999px;font-weight:600;cursor:pointer;}
.sltc-loadmore:hover{background:var(--sltc-accent);color:#fff;border-color:var(--sltc-accent);}
.sltc-empty{padding:60px 20px;text-align:center;color:var(--sltc-muted);grid-column:1/-1;}

/* ============ Single magazine page — force theme full width ============ */
body.sltc-single-magazine .entry-thumbnail,
body.sltc-single-magazine .post-thumbnail,
body.sltc-single-magazine .wp-post-image,
body.sltc-single-magazine .entry-header .featured-image{display:none !important;}
body.sltc-single-magazine .entry-content,
body.sltc-single-magazine .site-main,
body.sltc-single-magazine .content-area{max-width:none !important;width:100% !important;padding-left:0 !important;padding-right:0 !important;}

/* ============ VIEWER ============ */
.sltc-viewer{
  --sltc-ui-scale:1; --sltc-page-zoom:1;
  background:#0f172a;color:#e2e8f0;
  border-radius:0;
  overflow:hidden;
  display:flex;flex-direction:column;
  min-height:min(92vh, 1100px);
  font-size:calc(14px * var(--sltc-ui-scale));
}
.sltc-viewer.is-fullscreen,
.sltc-viewer:fullscreen,
.sltc-viewer:-webkit-full-screen{
  position:fixed !important;inset:0 !important;
  width:100vw !important;height:100vh !important;
  max-width:100vw !important;max-height:100vh !important;
  margin:0 !important;left:0 !important;right:0 !important;
  z-index:999999;
}

.sltc-viewer-toolbar{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;
  padding:12px clamp(12px,2vw,28px);
  background:rgba(15,23,42,.95);
  border-bottom:1px solid rgba(255,255,255,.06);
  backdrop-filter:blur(12px);
  position:sticky;top:0;z-index:5;
}
.sltc-vt-title{font-size:14px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sltc-vt-center{display:flex;align-items:center;justify-content:center;gap:6px;}
.sltc-vt-right{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap;}
.sltc-viewer button,.sltc-viewer a[data-act]{
  appearance:none;background:transparent;border:0;color:#e2e8f0;cursor:pointer;
  min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:10px;transition:.15s;text-decoration:none;padding:0;
}
.sltc-viewer button:hover,.sltc-viewer a[data-act]:hover{background:rgba(255,255,255,.08);color:#fff;}
.sltc-viewer button:focus-visible,.sltc-viewer a[data-act]:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.sltc-viewer svg{width:18px;height:18px;}
.sltc-pageind{font-size:13px;color:#cbd5e1;padding:0 10px;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:4px;}
.sltc-pageind i{opacity:.4;font-style:normal;}
.sltc-cur{font-weight:700;color:#fff;}
@media (max-width:640px){
  .sltc-viewer-toolbar{grid-template-columns:auto 1fr auto;gap:6px;padding:8px 10px;}
  .sltc-vt-title{display:none;}
  .sltc-viewer button,.sltc-viewer a[data-act]{min-width:38px;min-height:38px;}
}

.sltc-viewer-body{flex:1;display:flex;min-height:0;position:relative;}
.sltc-thumbs{width:160px;background:#0b1220;border-right:1px solid rgba(255,255,255,.06);overflow:auto;padding:10px;}
.sltc-thumbs .t{display:block;width:100%;background:transparent;border:2px solid transparent;padding:4px;margin-bottom:8px;border-radius:8px;cursor:pointer;}
.sltc-thumbs .t img{width:100%;height:auto;display:block;border-radius:4px;background:#1e293b;}
.sltc-thumbs .t.is-active{border-color:var(--sltc-accent-2);}
@media (max-width:768px){.sltc-thumbs{position:absolute;left:0;top:0;bottom:0;z-index:4;box-shadow:8px 0 30px rgba(0,0,0,.5);}}

.sltc-stage{
  flex:1;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 30%,#1e293b 0%,#0f172a 80%);
  padding:clamp(8px,2vw,28px);
  overflow:hidden;position:relative;min-height:60vh;
  touch-action:pan-y;
}
.sltc-viewer.is-fullscreen .sltc-stage,
.sltc-viewer:fullscreen .sltc-stage{min-height:calc(100vh - 64px);height:calc(100vh - 64px);}

.sltc-loading{display:flex;flex-direction:column;align-items:center;gap:14px;color:#cbd5e1;}
.sltc-spinner{width:42px;height:42px;border:3px solid rgba(255,255,255,.15);border-top-color:#fff;border-radius:50%;animation:sltc-spin .9s linear infinite;}
@keyframes sltc-spin{to{transform:rotate(360deg);}}
.sltc-flipbook{margin:0 auto;transform:scale(var(--sltc-page-zoom));transform-origin:center center;transition:transform .25s;}
.sltc-page{background:#fff;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;}
.sltc-page img{width:100%;height:100%;object-fit:contain;display:block;background:#fff;-webkit-user-drag:none;user-select:none;}
.sltc-page.is-loading::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(0,0,0,.04),transparent) #fff;background-size:200% 100%;animation:sltc-shimmer 1.2s infinite;pointer-events:none;}

/* Panels */
.sltc-panel{
  position:absolute;right:16px;top:64px;width:min(380px,calc(100vw - 32px));
  background:#fff;color:#0f172a;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.4);
  z-index:8;overflow:hidden;
}
.sltc-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #f1f5f9;}
.sltc-panel-head strong{font-size:15px;}
.sltc-panel-head button{appearance:none;border:0;background:#f1f5f9;width:32px;height:32px;border-radius:8px;font-size:20px;cursor:pointer;color:#0f172a;line-height:1;}
.sltc-panel-body{padding:16px;display:flex;flex-direction:column;gap:14px;}
.sltc-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#0f172a;}
.sltc-field input[type=range]{width:100%;}
.sltc-field .sltc-val{font-style:normal;font-weight:700;color:var(--sltc-accent-2);margin-left:6px;}
.sltc-seg{display:flex;flex-wrap:wrap;gap:6px;}
.sltc-seg button{appearance:none;border:1px solid var(--sltc-border);background:#fff;color:#0f172a;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;}
.sltc-seg button[aria-checked="true"]{background:#0f172a;color:#fff;border-color:#0f172a;}
.sltc-hint{font-size:12px;color:var(--sltc-muted);margin:0;}

/* Share grid w/ branded icons */
.sltc-share-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.sltc-sh{
  display:flex;align-items:center;justify-content:flex-start;gap:10px;
  padding:10px 12px;border-radius:10px;background:#f1f5f9;color:#0f172a;
  font-size:13px;font-weight:600;text-decoration:none;border:0;cursor:pointer;
  transition:.15s;line-height:1;
}
.sltc-sh:hover{background:#e2e8f0;transform:translateY(-1px);}
.sltc-sh svg{width:18px;height:18px;flex-shrink:0;}
.sltc-sh span{flex:1;text-align:left;}
.sh-facebook{background:#1877f2;color:#fff;} .sh-facebook:hover{background:#0e62d0;}
.sh-twitter{background:#000;color:#fff;} .sh-twitter:hover{background:#222;}
.sh-linkedin{background:#0a66c2;color:#fff;} .sh-linkedin:hover{background:#084d92;}
.sh-whatsapp{background:#25d366;color:#fff;} .sh-whatsapp:hover{background:#1eb558;}
.sh-telegram{background:#229ed9;color:#fff;} .sh-telegram:hover{background:#1a82b3;}
.sh-email{background:#475569;color:#fff;} .sh-email:hover{background:#334155;}
.sh-copy,.sh-native{grid-column:span 2;background:#0f172a;color:#fff;justify-content:center;}
.sh-copy:hover,.sh-native:hover{background:#1e293b;}

/* Search */
.sltc-search-bar{position:absolute;left:50%;top:70px;transform:translateX(-50%);background:#fff;color:#0f172a;border-radius:12px;padding:12px;width:min(600px,92vw);box-shadow:0 20px 60px rgba(0,0,0,.4);z-index:6;}
.sltc-search-head{display:flex;gap:8px;align-items:stretch;}
.sltc-search-bar input{flex:1;padding:10px 14px;border:1px solid var(--sltc-border);border-radius:8px;font-size:14px;min-width:0;}
.sltc-sb-go{background:var(--sltc-accent);color:#fff;border-radius:8px;border:0;cursor:pointer;padding:0 18px;font-weight:600;font-size:13px;}
.sltc-sb-close{background:#f1f5f9;color:#0f172a;border:0;border-radius:8px;width:40px;font-size:22px;line-height:1;cursor:pointer;}
.sltc-sb-close:hover{background:#e2e8f0;}
.sltc-search-results{margin-top:10px;max-height:280px;overflow:auto;font-size:13px;}
.sltc-search-results .hit{padding:8px;border-bottom:1px solid #f1f5f9;cursor:pointer;border-radius:6px;}
.sltc-search-results .hit:hover{background:#f8fafc;}

.sltc-progress{height:3px;background:rgba(255,255,255,.06);}
.sltc-progress-bar{height:100%;width:0;background:linear-gradient(90deg,#3b82f6,#8b5cf6);transition:width .3s;}

/* ============ Theme: light ============ */
.sltc-viewer.is-theme-light{background:#f8fafc;color:#0f172a;}
.sltc-viewer.is-theme-light .sltc-viewer-toolbar{background:rgba(255,255,255,.96);border-bottom:1px solid #e2e8f0;}
.sltc-viewer.is-theme-light .sltc-vt-title{color:#0f172a;}
.sltc-viewer.is-theme-light button,
.sltc-viewer.is-theme-light a[data-act]{color:#0f172a;}
.sltc-viewer.is-theme-light button:hover,
.sltc-viewer.is-theme-light a[data-act]:hover{background:#f1f5f9;color:#000;}
.sltc-viewer.is-theme-light .sltc-pageind{color:#475569;}
.sltc-viewer.is-theme-light .sltc-cur{color:#0f172a;}
.sltc-viewer.is-theme-light .sltc-stage{background:radial-gradient(circle at 50% 30%,#e2e8f0 0%,#cbd5e1 80%);}
.sltc-viewer.is-theme-light .sltc-thumbs{background:#fff;border-right-color:#e2e8f0;}
.sltc-viewer.is-theme-light .sltc-progress{background:rgba(15,23,42,.06);}

/* ============ Contrast modes (WCAG) ============ */
.sltc-viewer.is-contrast-high{background:#000 !important;color:#fff !important;}
.sltc-viewer.is-contrast-high .sltc-viewer-toolbar{background:#000 !important;border-bottom:2px solid #ffeb3b !important;}
.sltc-viewer.is-contrast-high .sltc-stage{background:#000 !important;}
.sltc-viewer.is-contrast-high .sltc-page,
.sltc-viewer.is-contrast-high .sltc-rp{outline:2px solid #ffeb3b;}
.sltc-viewer.is-contrast-high button,
.sltc-viewer.is-contrast-high a[data-act]{color:#ffeb3b !important;}
.sltc-viewer.is-contrast-high button:focus-visible{outline:3px solid #ffeb3b;outline-offset:3px;}

.sltc-viewer.is-contrast-black{background:#000000 !important;color:#ffffff !important;}
.sltc-viewer.is-contrast-black .sltc-viewer-toolbar{background:#000 !important;border-bottom:1px solid #fff !important;}
.sltc-viewer.is-contrast-black .sltc-stage{background:#000 !important;}
.sltc-viewer.is-contrast-black button,
.sltc-viewer.is-contrast-black a[data-act]{color:#fff !important;}
.sltc-viewer.is-contrast-black button:focus-visible{outline:3px solid #ffffff;outline-offset:3px;}

.sltc-viewer.is-contrast-invert .sltc-page img,
.sltc-viewer.is-contrast-invert .sltc-rp img{filter:invert(1) hue-rotate(180deg);}


/* === v1.4.0 — toolbar contrast + responsive toolbar === */
.sltc-viewer:not(.is-theme-light) .sltc-viewer-toolbar button,
.sltc-viewer:not(.is-theme-light) .sltc-viewer-toolbar a[data-act]{color:#f1f5f9 !important;}
.sltc-viewer:not(.is-theme-light) .sltc-viewer-toolbar button:hover,
.sltc-viewer:not(.is-theme-light) .sltc-viewer-toolbar a[data-act]:hover{background:rgba(255,255,255,.12) !important;color:#fff !important;}
.sltc-viewer:not(.is-theme-light) .sltc-viewer-toolbar svg{color:#f1f5f9 !important;stroke:currentColor;fill:none;}
.sltc-viewer.is-theme-light .sltc-viewer-toolbar svg{color:#0f172a !important;}
.sltc-viewer .sltc-sh svg{fill:currentColor;}

.sltc-viewer-toolbar{max-width:100vw;overflow:hidden;}
.sltc-vt-right{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
.sltc-vt-right::-webkit-scrollbar{display:none;}

/* Modern viewer header — minimal title chip */
.sltc-vt-title{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:600;letter-spacing:.01em;
  padding:6px 12px;border-radius:999px;
  background:rgba(255,255,255,.08);
  max-width:32vw;
}
.sltc-vt-title strong{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sltc-viewer.is-theme-light .sltc-vt-title{background:rgba(15,23,42,.06);}

/* Fullscreen stage robust sizing */
.sltc-viewer:fullscreen,
.sltc-viewer.is-fullscreen{display:flex !important;flex-direction:column !important;}
.sltc-viewer:fullscreen .sltc-viewer-body,
.sltc-viewer.is-fullscreen .sltc-viewer-body{flex:1 1 auto;min-height:0;}
.sltc-viewer:fullscreen .sltc-stage,
.sltc-viewer.is-fullscreen .sltc-stage{height:auto !important;min-height:0 !important;flex:1 1 auto;}
