/* ── ACS Publisher Shared Styles ─────────────────────────────── */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',Arial,sans-serif;background:#f0f4f8;color:#1a2332}

/* ── NAVBAR ──────────────────────────────────────────────────── */
body { margin-top: 60px; }

.navbar {
  background: #0f3d68;
  height: 60px;
  padding: 0 30px;
  display: flex;
  align-items: center;
  gap: 6px;
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  box-shadow: 0 2px 10px rgba(0,0,0,.25);
  box-sizing: border-box;
}

.logo {
  font-size: 19px;
  font-weight: 800;
  color: #fff;
  white-space: nowrap;
  margin-right: 16px;
  flex-shrink: 0;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 1;
  flex-wrap: nowrap;
}

.nav-links > a {
  color: rgba(255,255,255,.9);
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  padding: 7px 10px;
  border-radius: 6px;
  white-space: nowrap;
  transition: background .15s;
  line-height: 1;
}
.nav-links > a:hover { background: rgba(255,255,255,.13); color: #fff; }

/* ── DROPDOWN ────────────────────────────────────────────────── */
.nav-dropdown { position: relative; }

.nav-drop-btn {
  background: none;
  border: none;
  cursor: pointer;
  color: rgba(255,255,255,.9);
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  padding: 7px 10px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  transition: background .15s;
  line-height: 1;
}
.nav-drop-btn:hover,
.nav-drop-btn.open { background: rgba(255,255,255,.13); color: #fff; }

.drop-arrow {
  font-size: 9px;
  transition: transform .2s;
  display: inline-block;
  margin-top: 1px;
}
.nav-drop-btn.open .drop-arrow { transform: rotate(180deg); }

.drop-menu {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 8px 28px rgba(0,0,0,.18);
  min-width: 200px;
  padding: 6px;
  z-index: 10000;
}
.drop-menu.open { display: block; }

.drop-menu a {
  display: block;
  color: #1a2332;
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  padding: 9px 14px;
  border-radius: 7px;
  white-space: nowrap;
  transition: background .12s;
  line-height: 1.3;
}
.drop-menu a:hover { background: #f0f4f8; color: #0f3d68; }
.drop-divider { height: 1px; background: #e8edf5; margin: 5px 8px; }

/* ── MOBILE TOGGLE ───────────────────────────────────────────── */
.nav-toggle {
  display: none;
  background: none;
  border: none;
  color: #fff;
  font-size: 24px;
  cursor: pointer;
  padding: 4px 6px;
  margin-left: auto;
  line-height: 1;
}

/* ── MOBILE ──────────────────────────────────────────────────── */
@media (max-width: 860px) {
  .navbar {
    height: auto;
    padding: 10px 18px;
    flex-wrap: wrap;
    gap: 0;
  }
  body { margin-top: 54px; }

  .logo { flex: 1; padding: 4px 0; }
  .nav-toggle { display: block; }

  .nav-links {
    display: none;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    gap: 2px;
    padding: 8px 0 12px;
  }
  .nav-links.open { display: flex; }
  .nav-links > a { padding: 10px 12px; border-radius: 6px; }

  .nav-dropdown { width: 100%; }
  .nav-drop-btn { width: 100%; justify-content: space-between; padding: 10px 12px; }

  .drop-menu {
    position: static;
    box-shadow: none;
    background: rgba(0,0,0,.2);
    border-radius: 6px;
    margin: 2px 0 4px 14px;
    padding: 4px;
  }
  .drop-menu a {
    color: rgba(255,255,255,.85);
    padding: 8px 12px;
    border-radius: 5px;
  }
  .drop-menu a:hover { background: rgba(255,255,255,.1); color: #fff; }
  .drop-divider { background: rgba(255,255,255,.12); }
}

/* HERO */
.page-hero{
  background:linear-gradient(135deg,#0b2e51 0%,#1a5fa3 60%,#2478c8 100%);
  color:#fff;text-align:center;
  padding:60px 20px 90px;
  position:relative;overflow:hidden;
}
.page-hero::after{
  content:'';position:absolute;bottom:-2px;left:0;right:0;
  height:55px;background:#f0f4f8;
  clip-path:ellipse(55% 100% at 50% 100%);
}
.page-hero h1{font-size:34px;font-weight:700;margin-bottom:10px}
.page-hero p{font-size:15px;opacity:.85;max-width:540px;margin:0 auto}

/* CONTAINER */
.container{max-width:1120px;margin:0 auto;padding:0 20px}

/* SECTION TITLE */
.section-title{
  font-size:20px;font-weight:700;color:#0f3d68;
  margin:36px 0 16px;
  display:flex;align-items:center;gap:10px;
}
.section-title::after{
  content:'';flex:1;height:2px;
  background:linear-gradient(90deg,#1e5fa3,transparent);
}

/* CARDS */
.card{
  background:#fff;border-radius:14px;
  box-shadow:0 4px 16px rgba(0,0,0,.07);
  padding:24px;transition:.2s;
}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.11)}

/* TABLE */
.table-wrap{background:#fff;border-radius:14px;box-shadow:0 4px 16px rgba(0,0,0,.07);overflow:hidden}
table{width:100%;border-collapse:collapse}
thead th{background:#0f3d68;color:#fff;padding:14px 16px;font-size:13px;text-align:left;font-weight:600;letter-spacing:.3px}
tbody td{padding:13px 16px;border-bottom:1px solid #f0f4f8;font-size:14px;vertical-align:middle}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover{background:#f5f8ff}

/* SEARCH INPUT */
.search-bar{
  display:flex;gap:12px;margin-bottom:22px;flex-wrap:wrap;
}
.search-bar input,.search-bar select{
  padding:10px 16px;border:1.5px solid #dde3ee;
  border-radius:10px;font-size:14px;outline:none;
  background:#fff;color:#1a2332;transition:.2s;
}
.search-bar input:focus,.search-bar select:focus{border-color:#1e5fa3}
.search-bar input{flex:1;min-width:220px}

/* BUTTONS */
.btn-primary{
  background:linear-gradient(135deg,#0f3d68,#1e5fa3);
  color:#fff;padding:11px 24px;border-radius:30px;
  font-weight:700;font-size:14px;text-decoration:none;
  border:none;cursor:pointer;display:inline-block;transition:.2s;
}
.btn-primary:hover{opacity:.88;transform:translateY(-1px)}
.btn-outline{
  background:transparent;color:#1e5fa3;
  border:2px solid #1e5fa3;padding:10px 22px;border-radius:30px;
  font-weight:600;font-size:14px;text-decoration:none;
  display:inline-block;transition:.2s;
}
.btn-outline:hover{background:#1e5fa3;color:#fff}
.btn-sm{
  display:inline-block;padding:7px 14px;border-radius:8px;
  font-size:12px;font-weight:600;text-decoration:none;
  color:#fff;background:#1e5fa3;transition:.15s;white-space:nowrap;
}
.btn-sm:hover{background:#0f3d68}
.btn-sm.secondary{background:#5a6b7b}
.btn-sm.secondary:hover{background:#2c3e50}

/* BADGE */
.badge{display:inline-block;padding:3px 9px;border-radius:10px;font-size:11px;font-weight:600;margin:2px}
.badge-scopus{background:#ff6b00;color:#fff}
.badge-wos{background:#0057b8;color:#fff}
.badge-naas{background:#6f42c1;color:#fff}
.badge-ugc{background:#0f3d68;color:#fff}
.badge-default{background:#e8edf5;color:#444}
.badge-oa{background:#ebf8ff;color:#2b6cb0}
.badge-fast{background:#f0fff4;color:#276749}

/* CTA BAND */
.cta-band{
  background:linear-gradient(135deg,#0b2e51,#1a5fa3);
  color:#fff;text-align:center;
  padding:50px 20px;margin:50px 0 40px;border-radius:16px;
}
.cta-band h2{font-size:24px;margin-bottom:10px}
.cta-band p{opacity:.85;margin-bottom:22px;font-size:15px}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── FOOTER ──────────────────────────────────────────────────── */
.footer{background:#0b2f4f;color:#fff;margin-top:0}

.footer-inner{
  max-width:1120px;margin:0 auto;
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr 1.4fr;
  gap:36px;padding:48px 20px 32px;
}

.footer-logo{font-size:22px;font-weight:800;margin-bottom:10px;letter-spacing:.3px}
.footer-tagline{font-size:13px;color:#94a3b8;line-height:1.7;margin-bottom:14px}

.footer-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.f-badge{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  color:#cbd5e1;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500;
}

.footer-social{display:flex;gap:12px;margin-top:4px}
.footer-social a{
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.1);color:#cbd5e1;
  transition:.2s;text-decoration:none;
}
.footer-social a:hover{background:#1e5fa3;color:#fff}

.footer-col h4{
  font-size:13px;font-weight:700;text-transform:uppercase;
  letter-spacing:.8px;color:#fff;margin-bottom:14px;
}
.footer-col a{
  display:block;color:#94a3b8;text-decoration:none;
  font-size:13px;margin-bottom:8px;transition:.2s;
}
.footer-col a:hover{color:#fff}
.footer-col p{font-size:13px;color:#94a3b8;margin-bottom:8px;line-height:1.5}
.footer-col p a{display:inline;color:#94a3b8}
.footer-col p a:hover{color:#fff}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  background:#08243d;
}
.footer-bottom-inner{
  max-width:1120px;margin:0 auto;
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 20px;flex-wrap:wrap;gap:10px;
  font-size:12px;color:#64748b;
}
.footer-legal-links{display:flex;gap:18px}
.footer-legal-links a{color:#64748b;text-decoration:none;transition:.2s}
.footer-legal-links a:hover{color:#fff}

/* RESPONSIVE */
@media(max-width:1024px){.footer-inner{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:768px){
  .page-hero h1{font-size:24px}
  thead th,tbody td{padding:10px 12px;font-size:13px}
  .footer-inner{grid-template-columns:1fr 1fr;gap:24px;padding:32px 20px}
  .footer-bottom-inner{flex-direction:column;text-align:center}
}
@media(max-width:480px){.footer-inner{grid-template-columns:1fr}}
