/* Vendor-scoped editorial surfaces; no change to profile galleries, forms or motion. */
.ve349-section { margin: 26px 0; padding: 28px 0; scroll-margin-top: 120px; color: #3b3c36; }
.ve349-section *, .ve349-archive *, .ve349-manager * { box-sizing: border-box; }
.ve349-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.ve349-heading h1, .ve349-heading h2 { margin: 4px 0 0; color: #292e29; font-size: clamp(19px,2vw,25px); font-weight: 800; line-height: 1.7; }
.ve349-heading p { margin: 7px 0 0; color: #7a8078; font-size: 12px; line-height: 1.9; }
.ve349-eyebrow { color: #078c74; font-size: 11px; font-weight: 700; }
.ve349-link { display: inline-flex; align-items: center; gap: 7px; color: #087c68; font-size: 12px; font-weight: 700; text-decoration: none; }
.ve349-link:focus-visible, .ve349-card a:focus-visible, .ve349-history summary:focus-visible { outline: 2px solid #087c68; outline-offset: 4px; border-radius: 12px; }
.ve349-articles { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.ve349-card { min-width: 0; overflow: hidden; border: 1px solid #e9ece5; border-radius: 24px; background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.ve349-card:hover { transform: translateY(-3px); box-shadow: 0 16px 40px #3b3c360c; }
.ve349-card > a { display: block; height: 100%; color: inherit; text-decoration: none; }
.ve349-card:first-child { grid-column: 1/-1; background: #f6f8f2; }
.ve349-card:first-child > a { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,1fr); align-items: stretch; }
.ve349-cover { aspect-ratio: 16/10; overflow: hidden; background: #eef2eb; }
.ve349-cover img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.ve349-card:hover .ve349-cover img { transform: scale(1.025); }
.ve349-card:first-child .ve349-cover { height: 100%; min-height: 220px; aspect-ratio: auto; }
.ve349-card-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px; overflow-wrap: anywhere; }
.ve349-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: #858b80; font-size: 10px; line-height: 1.8; }
.ve349-meta > span { border-radius: 999px; background: #e5f9f1; padding: 4px 8px; color: #087c68; }
.ve349-card-copy h3 { margin: 0; color: #2d332d; font-size: 17px; font-weight: 800; line-height: 1.9; }
.ve349-card-copy p { margin: 0; color: #757d72; font-size: 12px; line-height: 2; }
.ve349-read { display: flex; align-items: center; gap: 8px; margin-top: auto; color: #087c68; font-size: 11px; font-weight: 700; }
.ve349-notices { overflow: hidden; border: 1px solid #dcece4; border-radius: 24px; background: linear-gradient(120deg,#f0fbf7,#fafcf8); padding: 22px; }
.ve349-notice-heading { display: flex; align-items: center; gap: 12px; }
.ve349-notice-heading h2 { margin: 2px 0 0; font-size: 16px; font-weight: 800; line-height: 1.8; }
.ve349-bell { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 14px; background: #00ffcc; color: #3b3c36; font-size: 22px; }
.ve349-new { margin-inline-start: auto; flex-shrink: 0; border-radius: 999px; background: #fff; padding: 6px 9px; color: #07856d; font-size: 10px; }
.ve349-latest { padding-top: 22px; overflow-wrap: anywhere; scroll-margin-top: 110px; }
.ve349-latest time, .ve349-timeline time { color: #7c887e; font-size: 10px; }
.ve349-latest h3, .ve349-latest h2 { margin: 7px 0 10px; font-size: 16px; font-weight: 800; line-height: 1.9; }
.ve349-notice-body { color: #626e61; font-size: 13px; line-height: 2.1; }
.ve349-notice-body p { margin: 8px 0; }
.ve349-history { margin-top: 20px; border-top: 1px solid #dcebe1; }
.ve349-history summary { display: flex; justify-content: space-between; align-items: center; gap: 14px; min-height: 48px; padding: 14px 0 0; color: #087c68; cursor: pointer; font-size: 12px; font-weight: 700; list-style: none; }
.ve349-history summary::-webkit-details-marker { display: none; }
.ve349-history summary b { margin-inline-start: 5px; border-radius: 999px; background: #d8f4e8; padding: 2px 7px; font-size: 10px; }
.ve349-history summary > i { transition: transform .2s ease; }
.ve349-history[open] summary > i { transform: rotate(180deg); }
.ve349-timeline { display: grid; gap: 18px; padding: 22px 0 3px; }
.ve349-timeline > article { border-inline-start: 2px solid #b8e7d3; padding-inline-start: 14px; overflow-wrap: anywhere; }
.ve349-timeline h3 { margin: 5px 0; font-size: 13px; font-weight: 700; line-height: 1.9; }
.ve349-timeline p { margin: 5px 0; color: #73806f; font-size: 12px; line-height: 1.9; }
.ve349-timeline a { color: #087c68; font-size: 11px; }
.ve349-empty { padding: 22px; border: 1px dashed #dfe7dc; border-radius: 18px; color: #7c8678; font-size: 12px; line-height: 2; }
.ve349-archive { width: min(1050px,calc(100% - 32px)); margin: 38px auto 70px; }
.ve349-archive > .ve349-heading { margin-top: 28px; }
.ve349-archive-notices { display: grid; gap: 20px; }
.ve349-archive-notices > article { padding: 24px; border: 1px solid #e3ece0; border-radius: 22px; background: #f8faf5; }
.ve349-pagination { display: flex; align-items: center; justify-content: center; gap: 22px; padding: 25px 0; color: #7a8475; font-size: 12px; }
.ve349-manager { max-width: 1150px; margin: auto; color: #3b3c36; }
.ve349-manager h1 { font-size: 25px; }
.ve349-admin-panel { margin-top: 22px; padding: 24px; border: 1px solid #e3e9df; border-radius: 24px; background: #fff; }
.ve349-admin-panel > p { color: #7b8576; font-size: 12px; line-height: 2; }
.ve349-admin-panel h2 { font-size: 19px; font-weight: 800; }
.ve349-admin-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid #eef0ea; padding: 18px 0; font-size: 12px; }
.ve349-admin-row strong { line-height: 1.9; }
.ve349-admin-row small { display: block; margin-top: 5px; color: #7e8877; }
.ve349-primary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; border: 0; border-radius: 14px; padding: 11px 18px; background: #00ffcc; color: #3b3c36; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; text-decoration: none; }
.ve349-form { max-width: 800px; }
.ve349-field { margin-bottom: 22px; }
.ve349-field > label { display: block; margin-bottom: 9px; font-size: 13px; font-weight: 700; }
.ve349-field > small { display: block; margin-top: 8px; color: #7c8775; font-size: 11px; line-height: 1.9; }
.ve349-field :is(input,textarea,select) { max-width: 100%; }
.ve349-error, .ve349-form .errorlist { color: #b42332; font-size: 12px; line-height: 2; }
.ve349-custom { width: min(1100px,calc(100% - 32px)); margin: 35px auto; padding: 24px; border-radius: 24px; background: #fff; color: #3b3c36; font-family: inherit; }
@media (max-width: 640px) {
  .ve349-heading { align-items: flex-start; flex-wrap: wrap; gap: 12px; }
  .ve349-heading h1, .ve349-heading h2 { font-size: 19px; }
  .ve349-articles { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .ve349-card:first-child > a { display: block; }
  .ve349-card:first-child .ve349-cover { min-height: 0; height: auto; aspect-ratio: 16/10; }
  .ve349-card-copy { padding: 18px; }
  .ve349-notices { padding: 18px; }
  .ve349-notice-heading { flex-wrap: wrap; }
  .ve349-new { margin-inline-start: 0; }
  .ve349-admin-panel { padding: 18px; }
  .ve349-admin-row { align-items: flex-start; flex-wrap: wrap; }
  .ve349-custom { padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .ve349-card, .ve349-cover img, .ve349-history summary > i { transition: none; }
  .ve349-card:hover, .ve349-card:hover .ve349-cover img { transform: none; }
}

/* BATALAR-364-COMPACT-NOTICES */
.ve349-notices.ve364-notices { display: flex; align-items: flex-start; gap: 12px; margin: 18px 0; padding: 14px 16px; border-radius: 18px; }
.ve364-notices .ve349-bell { flex: 0 0 32px; width: 32px; height: 32px; border-radius: 11px; font-size: 18px; }
.ve364-notices .ve364-latest { flex: 1; min-width: 0; padding: 0; }
.ve364-notices .ve364-latest h2 { margin: 0; font-size: 14px; font-weight: 600; line-height: 1.9; }
.ve364-notices .ve364-latest h2 a { color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.ve364-notices .ve364-latest h2 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.ve364-notices .ve364-all-notices { min-height: 44px; margin-top: 4px; padding: 4px 0; font-size: 11px; }
.ve364-notices a:focus-visible { outline: 2px solid #087c68; outline-offset: 4px; border-radius: 6px; }

/* Stage 366: real latest title on the right, archive button on the left. */
.ve364-notices .ve364-latest { display: flex; align-items: center; gap: 12px; }
.ve364-notices .ve364-latest h2 { flex: 1; min-width: 0; }
.ve364-notices .ve364-all-notices { flex: 0 0 auto; margin: 0; padding: 8px 12px; border: 1px solid #c9e6da; border-radius: 12px; background: #fff; white-space: nowrap; }
@media (max-width: 480px) {
  .ve349-notices.ve364-notices { gap: 8px; padding: 12px; }
  .ve364-notices .ve364-latest { gap: 8px; }
  .ve364-notices .ve364-all-notices { padding: 8px; font-size: 10px; }
}
