/**
 * Profession notice-board ads — TerraNigra dark fantasy theme.
 * Desktop slot: 728×90. Mobile: fluid width.
 */

.profession-ad-mount {
  margin-top: 14px;
  max-width: 100%;
}

.profession-ad-mount.hidden {
  display: none !important;
}

.profession-ad-notice {
  border: 1px solid rgba(112, 87, 41, 0.85);
  background:
    linear-gradient(180deg, rgba(42, 32, 20, 0.98) 0%, rgba(18, 14, 10, 0.99) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%231a140c' d='M0 0h4v4H0zm4 4h4v4H4z'/%3E%3C/svg%3E");
  box-shadow:
    inset 0 0 0 1px rgba(255, 226, 150, 0.06),
    inset 0 2px 12px rgba(0, 0, 0, 0.45),
    0 4px 14px rgba(0, 0, 0, 0.35);
  padding: 10px 12px 12px;
}

.profession-ad-notice-plaque {
  display: inline-block;
  margin-bottom: 8px;
  padding: 3px 10px;
  border: 1px solid rgba(201, 162, 77, 0.55);
  background: linear-gradient(180deg, rgba(58, 44, 24, 0.95), rgba(28, 21, 12, 0.98));
  color: #e8c56a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.profession-ad-banner-slot {
  width: 100%;
  max-width: 728px;
  min-height: 90px;
  margin: 0 auto;
  box-sizing: border-box;
  border: 2px solid rgba(201, 162, 77, 0.45);
  background:
    linear-gradient(135deg, rgba(24, 18, 12, 0.98) 0%, rgba(12, 10, 8, 0.99) 55%, rgba(32, 24, 16, 0.96) 100%);
  box-shadow: inset 0 0 24px rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.profession-ad-placeholder {
  width: 100%;
  max-width: 728px;
  min-height: 90px;
  padding: 10px 14px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 4px;
}

.profession-ad-placeholder-title {
  margin: 0;
  color: #f2e3b0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
  letter-spacing: 0.04em;
}

.profession-ad-placeholder-line {
  margin: 0;
  color: #bca97b;
  font-size: 12px;
  line-height: 1.35;
  max-width: 42em;
}

.profession-ad-placeholder-tag {
  margin-top: 2px;
  color: #8a7a5c;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.profession-ad-reward-row {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.profession-ad-reward-btn {
  margin: 0;
  padding: 8px 14px;
  border: 1px solid rgba(120, 90, 40, 0.9);
  background: linear-gradient(180deg, rgba(68, 52, 28, 0.98), rgba(32, 24, 12, 0.99));
  color: #f0e0b1;
  font-size: 12px;
  font-family: inherit;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 226, 150, 0.12);
}

.profession-ad-reward-btn:hover:not(:disabled),
.profession-ad-reward-btn:focus:not(:disabled) {
  border-color: #c9a24a;
  color: #fff8e8;
  outline: none;
}

.profession-ad-reward-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.profession-ad-reward-meta {
  margin: 0;
  color: #9a8f6e;
  font-size: 11px;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .profession-ad-banner-slot,
  .profession-ad-placeholder {
    min-height: 72px;
  }

  .profession-ad-placeholder-title {
    font-size: 13px;
  }

  .profession-ad-placeholder-line {
    font-size: 11px;
  }
}
