.reseller-form-small {
  max-width: 400px;
  margin: 0 auto;
}

.reseller-form-container .form-group {
  margin-bottom: 15px;
}

.reseller-form-container .form-group label {
  display: block;
}

.reseller-form-container .form-group input[type="text"],
.reseller-form-container .form-group input[type="password"] {
  border: 1px solid #ddd;
}

.reseller-form-container .button {
  width: 100%;
}

.reseller-form-container input:disabled,
.reseller-form-container button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transition: opacity 0.2s ease;
}

#forgot-password-message {
  margin-bottom: 30px;
}

.reseller-message {
  margin-top: 10px;
  padding: 10px;
  display: none;
}

.reseller-message.error,
.reseller-error {
  background-color: #ffebee;
  color: #c62828;
  display: block;
  padding: 15px;
  border-radius: 4px;
  margin: 10px 0;
  border: 1px solid #ffcdd2;
}

.reseller-message.success {
  background-color: #e8f5e9;
  color: #2e7d32;
  display: block;
}

.remember-me {
  display: flex;
  align-items: center;
  gap: 8px;
}

.remember-me input[type="checkbox"] {
  margin: 0;
  width: 16px;
  height: 16px;
}

.remember-me label {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  user-select: none;
}

.reseller-link {
  text-align: center;
}

.reseller-link a {
  color: #888;
  text-decoration: none;
  font-size: 14px;
}

.reseller-link a:hover {
  text-decoration: underline;
}

/* Contracts page */
.reseller-contracts {
  max-width: 1920px;
  margin: 0 auto;
}

.reseller-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}

#reseller-forgot-password .reseller-header {
  text-align: center;
}

.reseller-header h2 {
  flex: 1;
}

.reseller-header-buttons {
  display: flex;
  align-items: center;
  gap: 18px;
}

.reseller-header .wp-block-button {
  margin: 0;
  margin-left: auto;
  display: flex;
}

.wp-block-button__link.logout {
  position: relative;
  top: 3px;
  margin: 0;
  font-size: 10px;
  background-color: transparent !important;
  opacity: 0.8;
  transition: none;
}
.wp-block-button__link.logout:hover {
  scale: 1 !important;
  text-decoration: underline;
}
.wp-block-button__link.logout:after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: middle;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik01IDIxcS0uODI1IDAtMS40MTItLjU4N1QzIDE5VjVxMC0uODI1LjU4OC0xLjQxMlQ1IDNoN3YySDV2MTRoN3Yyem0xMS00LTEuMzc1LTEuNDUgMi41NS0yLjU1SDl2LTJoOC4xNzVsLTIuNTUtMi41NUwxNiA3bDUgNXoiLz48L3N2Zz4=);
  background-size: 18px 18px;
}

.wp-block-button__link.overview-link {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.wp-block-button__link.overview-link:after {
  transform: rotate(-90deg);
}

/* Overview page */
.reseller-overview {
  max-width: 1200px;
  margin: 0 auto;
}

.overview-content {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 40px;
  align-items: start;
}

.overview-navigation {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas:
    "downloads contracts"
    "wechsel wechsel";
  gap: 20px;
}

.nav-card--downloads {
  grid-area: downloads;
}

.nav-card--contracts {
  grid-area: contracts;
}

.nav-card--wechsel {
  grid-area: wechsel;
  position: relative;
}

.nav-card--wechsel[aria-disabled="true"] {
  pointer-events: none;
  cursor: not-allowed;
}

.nav-card--wechsel .loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  display: none;
  justify-content: center;
  align-items: center;
  border-radius: inherit;
}

.nav-card--wechsel[aria-disabled="true"] .loading-overlay {
  display: flex;
}

.nav-card--wechsel .loading-spinner {
  width: 32px;
  aspect-ratio: 1 / 1;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.nav-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 50px 30px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
  color: inherit;
  position: relative;
}

.nav-card::before {
  content: "";
  position: absolute;
  inset: 0px;
  border: 2px solid transparent;
  border-radius: 6px;
  transition: border-color 0.2s ease;
  pointer-events: none;
}

.nav-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.nav-card:hover::before {
  border-color: var(--wp--preset--color--primary);
}

.nav-card:hover h3 {
  text-decoration: underline;
}

.nav-card:hover .nav-card-icon {
  scale: 1.1;
}

.nav-card-icon {
  width: 76px;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--wp--preset--color--primary);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  margin-bottom: 15px;
  will-change: transform;
  transition: all 0.2s ease-in-out;
}
.nav-card--downloads .nav-card-icon {
  background-size: 50%;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik00IDE3djJhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0ydi0yTTcgMTFsNSA1bDUtNW0tNS03djEyIi8+PC9zdmc+");
}
.nav-card--contracts .nav-card-icon {
  background-size: 56%;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48ZyBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0iTTE4IDZjLS4wNDctMS41NTMtLjIyLTIuNDgtLjg2Mi0zLjEyMUMxNi4yNTggMiAxNC44NDIgMiAxMi4wMSAySDguMDA3Yy0yLjgzMiAwLTQuMjQ4IDAtNS4xMjcuODc5QzIgMy43NTcgMiA1LjE3MiAyIDh2OGMwIDIuODI4IDAgNC4yNDMuODggNS4xMjFTNS4xNzUgMjIgOC4wMDcgMjJoNC4wMDRjMi44MzEgMCA0LjI0NyAwIDUuMTI3LS44NzljLjY0Mi0uNjQxLjgxNS0xLjU2Ny44NjItMy4xMjEiLz48cGF0aCBkPSJtMjAuMjQyIDExLjc0MmwxLjE3Ny0xLjE3N2MuMjctLjI3LjQwNi0uNDA2LjQ3OC0uNTUyYTEgMSAwIDAgMCAwLS44OGMtLjA3Mi0uMTQ2LS4yMDgtLjI4Mi0uNDc4LS41NTJzLS40MDYtLjQwNi0uNTUyLS40NzhhMSAxIDAgMCAwLS44OCAwYy0uMTQ2LjA3Mi0uMjgxLjIwOC0uNTUyLjQ3OGwtMS4xNzcgMS4xNzdtMS45ODQgMS45ODRsLTUuMjY2IDUuMjY2TDEyIDE4bC45OTItMi45NzZsNS4yNjYtNS4yNjZtMS45ODQgMS45ODRsLTEuOTg0LTEuOTg0TTUgMTloMWwxLjI1LTIuNUw4LjUgMTloMU02IDZoOG0tOCA0aDYiLz48L2c+PC9zdmc+");
}
.nav-card--wechsel .nav-card-icon {
  background-size: 60%;
}

.nav-card--wechsel .nav-card-icon {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMi43OCAzLjIyYS43NS43NSAwIDEgMC0xLjA2IDEuMDZMMTMuNDQgNkg0Ljc1YS43NS43NSAwIDAgMCAwIDEuNWg4LjY5bC0xLjcyIDEuNzJhLjc1Ljc1IDAgMSAwIDEuMDYgMS4wNmwzLTNhLjc1Ljc1IDAgMCAwIDAtMS4wNnptLTQuNSA3LjU2YS43NS43NSAwIDEgMC0xLjA2LTEuMDZsLTMgM2EuNzUuNzUgMCAwIDAgMCAxLjA2bDMgM2EuNzUuNzUgMCAwIDAgMS4wNi0xLjA2TDYuNTYgMTRoOC42OWEuNzUuNzUgMCAwIDAgMC0xLjVINi41NnoiLz48L3N2Zz4=");
}

.nav-card--wechsel[aria-disabled="true"] .nav-card-icon {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48Y2lyY2xlIGN4PSIxOCIgY3k9IjEyIiByPSIwIiBmaWxsPSJjdXJyZW50Q29sb3IiPjxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9InIiIGJlZ2luPSIuNjciIGNhbGNNb2RlPSJzcGxpbmUiIGR1cj0iMS41cyIga2V5U3BsaW5lcz0iMC4yIDAuMiAwLjQgMC44OzAuMiAwLjIgMC40IDAuODswLjIgMC4yIDAuNCAwLjgiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiB2YWx1ZXM9IjA7MjswOzAiLz48L2NpcmNsZT48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIwIiBmaWxsPSJjdXJyZW50Q29sb3IiPjxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9InIiIGJlZ2luPSIuMzMiIGNhbGNNb2RlPSJzcGxpbmUiIGR1cj0iMS41cyIga2V5U3BsaW5lcz0iMC4yIDAuMiAwLjQgMC44OzAuMiAwLjIgMC40IDAuODswLjIgMC4yIDAuNCAwLjgiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiB2YWx1ZXM9IjA7MjswOzAiLz48L2NpcmNsZT48Y2lyY2xlIGN4PSI2IiBjeT0iMTIiIHI9IjAiIGZpbGw9ImN1cnJlbnRDb2xvciI+PGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iciIgYmVnaW49IjAiIGNhbGNNb2RlPSJzcGxpbmUiIGR1cj0iMS41cyIga2V5U3BsaW5lcz0iMC4yIDAuMiAwLjQgMC44OzAuMiAwLjIgMC40IDAuODswLjIgMC4yIDAuNCAwLjgiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiB2YWx1ZXM9IjA7MjswOzAiLz48L2NpcmNsZT48L3N2Zz4=");
  background-size: 80%;
}

.nav-card h3 {
  margin: 0 0 10px 0;
  font-size: 18px;
  font-weight: 500;
}

.nav-card p {
  margin: 0;
  text-align: center;
  color: #666;
  font-size: 14px;
}

.overview-user-info {
  height: -webkit-fill-available;
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.overview-user-info h3 {
  margin: 0 0 20px 0;
  font-size: 18px;
  font-weight: 500;
}

.user-info-grid {
  display: grid;
  gap: 18px;
}

.info-group {
  display: grid;
  gap: 4px;
}

.info-group label {
  font-size: 12px;
  color: #666;
  font-weight: 500;
}

.info-group {
  position: relative;
}

.info-value {
  font-size: 14px;
  color: #000;
  min-height: 20px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.info-value.skeleton {
  background: linear-gradient(110deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 50%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  color: transparent;
}

.copy-button {
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik04IDNhMSAxIDAgMCAwLTEgMXYuNWEuNS41IDAgMCAxLTEgMFY0YTIgMiAwIDAgMSAyLTJoLjVhLjUuNSAwIDAgMSAwIDF6bS0xIDlhMSAxIDAgMCAwIDEgMWguNWEuNS41IDAgMCAxIDAgMUg4YTIgMiAwIDAgMS0yLTJ2LS41YS41LjUgMCAwIDEgMSAwem0wLTUuNWEuNS41IDAgMCAwLTEgMHYzYS41LjUgMCAwIDAgMSAwek0xNiAzYTEgMSAwIDAgMSAxIDF2LjVhLjUuNSAwIDAgMCAxIDBWNGEyIDIgMCAwIDAtMi0yaC0uNWEuNS41IDAgMCAwIDAgMXptMCAxMGExIDEgMCAwIDAgMS0xdi0uNWEuNS41IDAgMCAxIDEgMHYuNWEyIDIgMCAwIDEtMiAyaC0uNWEuNS41IDAgMCAxIDAtMXptMS41LTdhLjUuNSAwIDAgMC0uNS41djNhLjUuNSAwIDAgMCAxIDB2LTNhLjUuNSAwIDAgMC0uNS0uNW0tNy00YS41LjUgMCAwIDAgMCAxaDNhLjUuNSAwIDAgMCAwLTF6TTEwIDEzLjVhLjUuNSAwIDAgMSAuNS0uNWgzYS41LjUgMCAwIDEgMCAxaC0zYS41LjUgMCAwIDEtLjUtLjVNNCA2aDF2Ni41QTIuNSAyLjUgMCAwIDAgNy41IDE1SDE0djFhMiAyIDAgMCAxLTIgMkg1LjVBMy41IDMuNSAwIDAgMSAyIDE0LjVWOGEyIDIgMCAwIDEgMi0yIi8+PC9zdmc+");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.2s ease;
  border: none;
  background-color: transparent;
  padding: 0;
  color: #666;
}

.info-value:hover .copy-button {
  opacity: 1;
}

.copy-button:hover {
  opacity: 1 !important;
}

.copy-button[data-tooltip] {
  position: relative;
}

.copy-button[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 5px);
  left: 50%;
  transform: translateX(-50%) translateY(2px);
  padding: 4px 8px;
  background: rgba(0, 0, 0, 0.8);
  color: white;
  font-size: 12px;
  border-radius: 4px;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
}

.copy-button[data-tooltip]:hover::after {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.copy-button[data-tooltip]::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
}

.copy-button[data-tooltip]:hover::before {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.copy-button:focus {
  outline: 2px solid var(--wp--preset--color--primary);
  outline-offset: 2px;
  opacity: 1;
}

.contract-tabs {
  margin-bottom: 20px;
  border-bottom: 1px solid #ddd;
}

.tab-button {
  padding: 10px 20px 10px 44px;
  margin-right: 10px;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 16px;
  position: relative;
  color: #000;
  background-position: 16px center;
  background-repeat: no-repeat;
  background-size: 20px;
}

.tab-button[data-tab="new-contracts"] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNMjAgNGMxLjExIDAgMiAuODkgMiAydjEyYzAgMS4xMS0uODkgMi0yIDJINGMtMS4xMSAwLTItLjg5LTItMlY2YzAtMS4xMS44OS0yIDItMnpNOC41IDE1VjlINy4yNXYzLjVMNC43NSA5SDMuNXY2aDEuMjV2LTMuNUw3LjMgMTV6bTUtNC43NFY5aC00djZoNHYtMS4yNUgxMXYtMS4xMWgyLjV2LTEuMjZIMTF2LTEuMTJ6bTcgMy43NFY5aC0xLjI1djQuNWgtMS4xMlYxMGgtMS4yNXYzLjVoLTEuMTNWOUgxNC41djVhMSAxIDAgMCAwIDEgMWg0YTEgMSAwIDAgMCAxLTEiLz48L3N2Zz4=");
}

.tab-button[data-tab="active-contracts"] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJtOC44NSAxNi44MjUgMy4xNS0xLjkgMy4xNSAxLjkyNS0uODI1LTMuNiAyLjc3NS0yLjQtMy42NS0uMzI1LTEuNDUtMy40LTEuNDUgMy4zNzUtMy42NS4zMjUgMi43NzUgMi40MjV6TTUuODI1IDIxbDEuNjI1LTcuMDI1TDIgOS4yNWw3LjItLjYyNUwxMiAybDIuOCA2LjYyNSA3LjIuNjI1LTUuNDUgNC43MjVMMTguMTc1IDIxIDEyIDE3LjI3NXpNMTIgMTIuMjUiLz48L3N2Zz4=");
}

.tab-button.active[data-tab="new-contracts"] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNMjAgNGMxLjExIDAgMiAuODkgMiAydjEyYzAgMS4xMS0uODkgMi0yIDJINGMtMS4xMSAwLTItLjg5LTItMlY2YzAtMS4xMS44OS0yIDItMnpNOC41IDE1VjlINy4yNXYzLjVMNC43NSA5SDMuNXY2aDEuMjV2LTMuNUw3LjMgMTV6bTUtNC43NFY5aC00djZoNHYtMS4yNUgxMXYtMS4xMWgyLjV2LTEuMjZIMTF2LTEuMTJ6bTcgMy43NFY5aC0xLjI1djQuNWgtMS4xMlYxMGgtMS4yNXYzLjVoLTEuMTNWOUgxNC41djVhMSAxIDAgMCAwIDEgMWg0YTEgMSAwIDAgMCAxLTEiLz48L3N2Zz4=");
}

.tab-button.active[data-tab="active-contracts"] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJtOC44NSAxNi44MjUgMy4xNS0xLjkgMy4xNSAxLjkyNS0uODI1LTMuNiAyLjc3NS0yLjQtMy42NS0uMzI1LTEuNDUtMy40LTEuNDUgMy4zNzUtMy42NS4zMjUgMi43NzUgMi40MjV6TTUuODI1IDIxbDEuNjI1LTcuMDI1TDIgOS4yNWw3LjItLjYyNUwxMiAybDIuOCA2LjYyNSA3LjIuNjI1LTUuNDUgNC43MjVMMTguMTc1IDIxIDEyIDE3LjI3NXpNMTIgMTIuMjUiLz48L3N2Zz4=");
}

.tab-button.active {
  font-weight: 500;
}

.tab-button.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: #000;
}

.tab-content {
  display: none;
}

.tab-content.active {
  display: block;
}

.contracts-table-wrapper {
  position: sticky;
  bottom: 0;
  width: 100%;
  height: 60vh;
  overflow-x: auto;
  margin: 20px 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  background: #fff;
  position: relative;
}

.loading-contracts {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.95);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.loading-contracts .loading-content {
  text-align: center;
  padding: 2rem;
  background: white;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-width: 400px;
}

.loading-contracts .loading-content h3 {
  margin: 1rem 0;
  color: var(--wp--preset--color--primary);
}

.loading-contracts .loading-content p {
  margin: 0;
  color: #666;
  line-height: 1.4;
}

.loading-contracts .loading-spinner {
  display: inline-block;
  width: 50px;
  height: 50px;
  border: 3px solid #f3f3f3;
  border-top: 3px solid var(--wp--preset--color--primary);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.contracts-table thead th {
  position: sticky;
  top: 0;
  background: #f8f9fa;
  z-index: 1;
}

.contracts-table thead th::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), transparent);
}

.contracts-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 800px;
  background: #fff;
}

.contracts-table th,
.contracts-table td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #eee;
  font-size: 12px;
}

.contracts-table th {
  background-color: #f8f9fa;
  font-weight: 700;
  font-size: 14px;
  color: #333;
  white-space: nowrap;
}

/* Column widths for active contracts */
.tab-content#active-contracts .contracts-table th:nth-child(1) {
  width: 8%;
  min-width: 100px;
} /* Status */
.tab-content#active-contracts .contracts-table th:nth-child(2) {
  width: 10%;
  min-width: 120px;
} /* Vertragsnummer */
.tab-content#active-contracts .contracts-table th:nth-child(3) {
  width: 15%;
  min-width: 180px;
} /* Kunde */
.tab-content#active-contracts .contracts-table th:nth-child(4) {
  width: 16%;
  min-width: 200px;
} /* Lieferadresse */
.tab-content#active-contracts .contracts-table th:nth-child(5) {
  width: 8%;
  min-width: 100px;
} /* Vertragsbeginn */
.tab-content#active-contracts .contracts-table th:nth-child(6) {
  width: 8%;
  min-width: 100px;
} /* Vertragsende */
.tab-content#active-contracts .contracts-table th:nth-child(7) {
  width: 12%;
  min-width: 160px;
} /* Zählpunktnummer */
.tab-content#active-contracts .contracts-table th:nth-child(8) {
  width: 6%;
  min-width: 80px;
} /* Typ */
.tab-content#active-contracts .contracts-table th:nth-child(9) {
  width: 8%;
  min-width: 120px;
} /* Jahresenergiemenge */
.tab-content#active-contracts .contracts-table th:nth-child(10) {
  width: 8%;
  min-width: 100px;
} /* Lieferbeginn */
.tab-content#active-contracts .contracts-table th:nth-child(11) {
  width: 8%;
  min-width: 100px;
} /* Lieferende */

.tab-content#active-contracts .contracts-table th:nth-child(4),
.tab-content#active-contracts .contracts-table td:nth-child(4),
.tab-content#active-contracts .contracts-table th:nth-child(5),
.tab-content#active-contracts .contracts-table td:nth-child(5),
.tab-content#active-contracts .contracts-table th:nth-child(6),
.tab-content#active-contracts .contracts-table td:nth-child(6),
.tab-content#active-contracts .contracts-table th:nth-child(8),
.tab-content#active-contracts .contracts-table td:nth-child(8),
.tab-content#active-contracts .contracts-table th:nth-child(9),
.tab-content#active-contracts .contracts-table td:nth-child(9),
.tab-content#active-contracts .contracts-table th:nth-child(11),
.tab-content#active-contracts .contracts-table td:nth-child(11),
.tab-content#active-contracts .contracts-table th:nth-child(12),
.tab-content#active-contracts .contracts-table td:nth-child(12) {
  text-align: center;
}

.tab-content#new-contracts .contracts-table th:nth-child(6),
.tab-content#new-contracts .contracts-table td:nth-child(6) {
  text-align: center;
}

/* Column widths for new contracts */
.tab-content#new-contracts .contracts-table th:nth-child(1) {
  width: 16%;
  min-width: 160px;
} /* Name */
.tab-content#new-contracts .contracts-table th:nth-child(2) {
  width: 15%;
  min-width: 150px;
} /* Firmenname */
.tab-content#new-contracts .contracts-table th:nth-child(3) {
  width: 20%;
  min-width: 200px;
} /* Adresse */
.tab-content#new-contracts .contracts-table th:nth-child(4) {
  width: 15%;
  min-width: 150px;
} /* ZP Bezug */
.tab-content#new-contracts .contracts-table th:nth-child(5) {
  width: 15%;
  min-width: 150px;
} /* ZP Einspeisung */
.tab-content#new-contracts .contracts-table th:nth-child(6) {
  width: 10%;
  min-width: 120px;
} /* Abschlussdatum */

.contracts-table .error-row td {
  text-align: center;
  padding: 20px;
  background-color: #ffebee;
  color: #c62828;
}

.contracts-table tbody tr:hover {
  background-color: rgba(255, 240, 186, 0.25);
}

@keyframes shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.skeleton {
  background: linear-gradient(110deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 50%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

.contracts-table tr.skeleton-row {
  height: 58px;
  margin: 8px 0;
  background-color: #fff;
}

.contracts-table tr.skeleton-row td {
  position: relative;
  overflow: hidden;
  border-bottom: 8px solid #fff;
}

.contracts-table tr.skeleton-row td::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 8px;
  background: inherit;
}

.status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
  padding: 4px 6px;
  min-width: 90px;
  text-align: center;
}

.status.im-wechsel-anmeldung {
  background-color: #e8f5e9;
  color: #2e7d32;
  border: 1px solid #a5d6a7;
}

.status.in-belieferung {
  background-color: #4caf50;
  color: white;
  border: 1px solid #43a047;
}

.status.inaktiv {
  background-color: #ffebee;
  color: #c62828;
  border: 1px solid #ffcdd2;
}

.status.storno {
  background-color: #ef5350;
  color: white;
  border: 1px solid #e53935;
}

.status.unbekannt {
  background-color: #fff3e0;
  color: #e65100;
  border: 1px solid #ffe0b2;
}

/* Unauthorized page */
.reseller-unauthorized {
  max-width: 600px;
  margin: 3rem auto;
  padding: 2rem;
  text-align: center;
}

.reseller-unauthorized .message {
  margin: 2rem 0;
  line-height: 1.6;
}

.reseller-unauthorized .message a {
  color: #0073aa;
  text-decoration: underline;
}

.reseller-unauthorized .actions {
  margin-top: 2rem;
}

.copy-button[data-tooltip][data-tooltip="Kopiert!"]::after,
.copy-button[data-tooltip][data-tooltip="Kopiert!"]::before,
.copy-button[data-tooltip][data-tooltip="Kopieren fehlgeschlagen"]::after,
.copy-button[data-tooltip][data-tooltip="Kopieren fehlgeschlagen"]::before {
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.reseller-downloads {
  max-width: 1200px;
  margin: 0 auto;
}

.downloads-content {
  margin-top: 30px;
}

.downloads-breadcrumb {
  margin-bottom: 20px;
  padding: 12px 16px;
  background-color: #f8f9fa;
  border-radius: 6px;
  border: 1px solid #e9ecef;
}

.breadcrumb-list {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 14px;
}

.breadcrumb-item {
  display: flex;
  align-items: center;
}

.breadcrumb-item:not(:last-child)::after {
  content: "›";
  margin: 0 8px;
  color: #666;
  font-weight: bold;
}

.breadcrumb-link {
  color: black;
  text-decoration: none;
  padding: 4px 8px;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.breadcrumb-link:hover {
  background-color: var(--wp--preset--color--primary);
  color: black;
  text-decoration: underline;
}

.breadcrumb-current {
  color: #333;
  font-weight: 500;
  padding: 4px 8px;
}

.breadcrumb-home {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.breadcrumb-home::before {
  content: "🏠";
  font-size: 16px;
}

.downloads-table-wrapper {
  position: sticky;
  bottom: 0;
  max-height: calc(60vh);
  overflow-y: auto;
  margin: 20px 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  background: #fff;
}

.downloads-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 800px;
  background: #fff;
  table-layout: fixed;
}

.downloads-table thead th {
  position: sticky;
  top: 0;
  background: #f8f9fa;
  z-index: 1;
}

.downloads-table thead th::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), transparent);
}

.downloads-table th,
.downloads-table td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #eee;
  font-size: 12px;
}

.downloads-table th:nth-child(1),
.downloads-table td:nth-child(1) {
  width: 60px !important;
  min-width: 60px !important;
  max-width: 60px !important;
  padding: 0px;
  text-align: center;
}

.downloads-table th:nth-child(3),
.downloads-table td:nth-child(3) {
  width: 120px !important;
  max-width: 120px !important;
}

.downloads-table th:nth-child(4),
.downloads-table td:nth-child(4) {
  width: 140px !important;
  max-width: 140px !important;
}

.downloads-table th:nth-child(5),
.downloads-table td:nth-child(5) {
  width: 100px !important;
  max-width: 100px !important;
}

.downloads-table th:nth-child(3),
.downloads-table td:nth-child(3),
.downloads-table th:nth-child(4),
.downloads-table td:nth-child(4),
.downloads-table th:nth-child(5),
.downloads-table td:nth-child(5) {
  text-align: center;
}

.downloads-table th {
  background-color: #f8f9fa;
  font-weight: 700;
  font-size: 14px;
  color: #333;
  white-space: nowrap;
}

.downloads-table tbody tr:hover {
  background-color: rgba(255, 240, 186, 0.25);
}

.downloads-table tbody tr[data-action-type="navigate"] td:nth-child(2) {
  user-select: none;
}

.downloads-table tr.skeleton-row {
  height: 51px;
  margin: 8px 0;
  background-color: #fff;
}

.downloads-table tr.skeleton-row td {
  position: relative;
  overflow: hidden;
  border-bottom: 8px solid #fff;
}

.downloads-table tr.skeleton-row td::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 8px;
  background: inherit;
}

.file-type-icon {
  position: relative;
  top: 1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.file-type-icon--folder {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBmaWxsPSIjZmZhMDAwIiBkPSJNMzggMTJIMjJsLTQtNEg4Yy0yLjIgMC00IDEuOC00IDR2MjRjMCAyLjIgMS44IDQgNCA0aDMxYzEuNyAwIDMtMS4zIDMtM1YxNmMwLTIuMi0xLjgtNC00LTQiLz48cGF0aCBmaWxsPSIjZmZjYTI4IiBkPSJNNDIuMiAxOEgxNS4zYy0xLjkgMC0zLjYgMS40LTMuOSAzLjNMOCA0MGgzMS43YzEuOSAwIDMuNi0xLjQgMy45LTMuM2wyLjUtMTRjLjUtMi40LTEuNC00LjctMy45LTQuNyIvPjwvc3ZnPg==");
}
.file-type-icon--file {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNjY2NjY2IiBkPSJNMTQgMkgtQTIgMiAwIDAgMCA0IDR2MTZBNCA0IDAgMCAwIDYgMjJoMTJhMiAyIDAgMCAwIDItMlY4em0tMSAyTDE3IDhoLTRWNHptLTcgNmg4djJIOHptMCAxaDZoNHYySDh6bTAgM2g4djJIOHoiLz48L3N2Zz4=");
}
/* https://icons.getbootstrap.com/icons */
.file-type-icon--pdf {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktZmlsZS1lYXJtYXJrLXBkZiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBkPSJNMTQgMTRWNC41TDkuNSAwSDRhMiAyIDAgMCAwLTIgMnYxMmEyIDIgMCAwIDAgMiAyaDhhMiAyIDAgMCAwIDItMk05LjUgM0ExLjUgMS41IDAgMCAwIDExIDQuNWgyVjE0YTEgMSAwIDAgMS0xIDFINGExIDEgMCAwIDEtMS0xVjJhMSAxIDAgMCAxIDEtMWg1LjV6Ii8+PHBhdGggZD0iTTQuNjAzIDE0LjA4N2EuOC44IDAgMCAxLS40MzgtLjQyYy0uMTk1LS4zODgtLjEzLS43NzYuMDgtMS4xMDIuMTk4LS4zMDcuNTI2LS41NjguODk3LS43ODdhNy43IDcuNyAwIDAgMSAxLjQ4Mi0uNjQ1IDIwIDIwIDAgMCAwIDEuMDYyLTIuMjI3IDcuMyA3LjMgMCAwIDEtLjQzLTEuMjk1Yy0uMDg2LS40LS4xMTktLjc5Ni0uMDQ2LTEuMTM2LjA3NS0uMzU0LjI3NC0uNjcyLjY1LS44MjMuMTkyLS4wNzcuNC0uMTIuNjAyLS4wNzdhLjcuNyAwIDAgMSAuNDc3LjM2NWMuMDg4LjE2NC4xMi4zNTYuMTI3LjUzOC4wMDcuMTg4LS4wMTIuMzk2LS4wNDcuNjE0LS4wODQuNTEtLjI3IDEuMTM0LS41MiAxLjc5NGExMSAxMSAwIDAgMCAuOTggMS42ODYgNS44IDUuOCAwIDAgMSAxLjMzNC4wNWMuMzY0LjA2Ni43MzQuMTk1Ljk2LjQ2NS4xMi4xNDQuMTkzLjMyLjIuNTE4LjAwNy4xOTItLjA0Ny4zODItLjEzOC41NjNhMS4wNCAxLjA0IDAgMCAxLS4zNTQuNDE2Ljg2Ljg2IDAgMCAxLS41MS4xMzhjLS4zMzEtLjAxNC0uNjU0LS4xOTYtLjkzMy0uNDE3YTUuNyA1LjcgMCAwIDEtLjkxMS0uOTUgMTEuNyAxMS43IDAgMCAwLTEuOTk3LjQwNiAxMS4zIDExLjMgMCAwIDEtMS4wMiAxLjUxYy0uMjkyLjM1LS42MDkuNjU2LS45MjcuNzg3YS44LjggMCAwIDEtLjU4LjAyOW0xLjM3OS0xLjkwMXEtLjI1LjExNS0uNDU5LjIzOGMtLjMyOC4xOTQtLjU0MS4zODMtLjY0Ny41NDctLjA5NC4xNDUtLjA5Ni4yNS0uMDQuMzYxcS4wMTYuMDMyLjAyNi4wNDRsLjAzNS0uMDEyYy4xMzctLjA1Ni4zNTUtLjIzNS42MzUtLjU3MmE4IDggMCAwIDAgLjQ1LS42MDZtMS42NC0xLjMzYTEzIDEzIDAgMCAxIDEuMDEtLjE5MyAxMiAxMiAwIDAgMS0uNTEtLjg1OCAyMSAyMSAwIDAgMS0uNSAxLjA1em0yLjQ0Ni40NXEuMjI2LjI0NS40MzUuNDFjLjI0LjE5LjQwNy4yNTMuNDk4LjI1NmEuMS4xIDAgMCAwIC4wNy0uMDE1LjMuMyAwIDAgMCAuMDk0LS4xMjUuNDQuNDQgMCAwIDAgLjA1OS0uMi4xLjEgMCAwIDAtLjAyNi0uMDYzYy0uMDUyLS4wNjItLjItLjE1Mi0uNTE4LS4yMDlhNCA0IDAgMCAwLS42MTItLjA1M3pNOC4wNzggNy44YTcgNyAwIDAgMCAuMi0uODI4cS4wNDYtLjI4Mi4wMzgtLjQ2NWEuNi42IDAgMCAwLS4wMzItLjE5OC41LjUgMCAwIDAtLjE0NS4wNGMtLjA4Ny4wMzUtLjE1OC4xMDYtLjE5Ni4yODMtLjA0LjE5Mi0uMDMuNDY5LjA0Ni44MjJxLjAzNi4xNjcuMDkuMzQ2eiIvPjwvc3ZnPg==");
  filter: invert(14%) sepia(92%) saturate(7460%) hue-rotate(357deg)
    brightness(99%) contrast(119%);
}
.file-type-icon--docx {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktZmlsZXR5cGUtZG9jeCIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA0LjVWMTFoLTFWNC41aC0yQTEuNSAxLjUgMCAwIDEgOS41IDNWMUg0YTEgMSAwIDAgMC0xIDF2OUgyVjJhMiAyIDAgMCAxIDItMmg1LjV6bS02LjgzOSA5LjY4OHYtLjUyMmExLjUgMS41IDAgMCAwLS4xMTctLjY0MS44Ni44NiAwIDAgMC0uMzIyLS4zODcuODYuODYgMCAwIDAtLjQ2OS0uMTI5Ljg3Ljg3IDAgMCAwLS40NzEuMTMuODcuODcgMCAwIDAtLjMyLjM4NiAxLjUgMS41IDAgMCAwLS4xMTcuNjQxdi41MjJxMCAuMzg0LjExNy42NDFhLjg3Ljg3IDAgMCAwIC4zMi4zODcuOS45IDAgMCAwIC40NzEuMTI2LjkuOSAwIDAgMCAuNDY5LS4xMjYuODYuODYgMCAwIDAgLjMyMi0uMzg2IDEuNTUgMS41NSAwIDAgMCAuMTE3LS42NDJtLjgwMy0uNTE2di41MTNxMCAuNTYzLS4yMDUuOTczYTEuNDcgMS40NyAwIDAgMS0uNTg5LjYyN3EtLjM4MS4yMTYtLjkxNy4yMTZhMS44NiAxLjg2IDAgMCAxLS45Mi0uMjE2IDEuNDYgMS40NiAwIDAgMS0uNTg5LS42MjcgMi4xNSAyLjE1IDAgMCAxLS4yMDUtLjk3M3YtLjUxM3EwLS41NjkuMjA1LS45NzUuMjA1LS40MTEuNTktLjYyNy4zODYtLjIyLjkyLS4yMi41MzUgMCAuOTE2LjIyLjM4My4yMTkuNTkuNjMuMjA0LjQwNi4yMDQuOTcyTTEgMTUuOTI1di0zLjk5OWgxLjQ1OXEuNjA5IDAgMS4wMDUuMjM1LjM5Ni4yMzMuNTg5LjY4LjE5Ni40NDUuMTk2IDEuMDc0IDAgLjYzNC0uMTk2IDEuMDg0LS4xOTcuNDUxLS41OTUuNjg5LS4zOTYuMjM3LS45OTkuMjM3em0xLjM1NC0zLjM1NEgxLjc5djIuNzA3aC41NjNxLjI3NyAwIC40ODMtLjA4MmEuOC44IDAgMCAwIC4zMzQtLjI1MnEuMTMyLS4xNy4xOTYtLjQyMmEyLjMgMi4zIDAgMCAwIC4wNjgtLjU5MnEwLS40NS0uMTE4LS43NTNhLjkuOSAwIDAgMC0uMzU0LS40NTRxLS4yMzctLjE1Mi0uNjEtLjE1MlptNi43NTYgMS4xMTZxMC0uMzczLjEwMy0uNjMzYS44Ny44NyAwIDAgMSAuMzAxLS4zOTguOC44IDAgMCAxIC40NzUtLjEzOHEuMjI1IDAgLjM5OC4wOTdhLjcuNyAwIDAgMSAuMjczLjI2Ljg1Ljg1IDAgMCAxIC4xMi4zODFoLjc2NXYtLjA3M2ExLjMzIDEuMzMgMCAwIDAtLjQ2Ni0uOTY0IDEuNCAxLjQgMCAwIDAtLjQ5LS4yNzIgMS44IDEuOCAwIDAgMC0uNjA2LS4wOTdxLS41MzQgMC0uOTExLjIyMy0uMzc1LjIyMi0uNTcxLjYzMy0uMTk3LjQxLS4xOTcuOTc4di40OThxMCAuNTY4LjE5NC45NzYuMTk1LjQwNi41NzEuNjI3LjM3NS4yMTYuOTE0LjIxNi40NCAwIC43ODUtLjE2NHQuNTUxLS40NTRhMS4yNyAxLjI3IDAgMCAwIC4yMjYtLjY3NHYtLjA3NmgtLjc2NWEuOC44IDAgMCAxLS4xMTcuMzY0LjcuNyAwIDAgMS0uMjczLjI0OC45LjkgMCAwIDEtLjQwMS4wODguODUuODUgMCAwIDEtLjQ3OC0uMTMxLjgzLjgzIDAgMCAxLS4yOTgtLjM5MyAxLjcgMS43IDAgMCAxLS4xMDMtLjYyN3ptNS4wOTItMS43NmguODk0bC0xLjI3NSAyLjAwNiAxLjI1NCAxLjk5MmgtLjkwOGwtLjg1LTEuNDE1aC0uMDM1bC0uODUyIDEuNDE1aC0uODYybDEuMjQtMi4wMTUtMS4yMjgtMS45ODRoLjkzMmwuODMyIDEuNDM5aC4wMzV6Ii8+PC9zdmc+");
  filter: invert(28%) sepia(40%) saturate(879%) hue-rotate(186deg)
    brightness(93%) contrast(96%);
}
.file-type-icon--xlsx {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktZmlsZXR5cGUteGxzeCIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA0LjVWMTFoLTFWNC41aC0yQTEuNSAxLjUgMCAwIDEgOS41IDNWMUg0YTEgMSAwIDAgMC0xIDF2OUgyVjJhMiAyIDAgMCAxIDItMmg1LjV6TTcuODYgMTQuODQxYTEuMTMgMS4xMyAwIDAgMCAuNDAxLjgyM3EuMTk1LjE2Mi40NzkuMjUyLjI4NC4wOTEuNjY1LjA5MS41MDcgMCAuODU4LS4xNTguMzU1LS4xNTguNTQtLjQ0YTEuMTcgMS4xNyAwIDAgMCAuMTg3LS42NTZxMC0uMzM2LS4xMzUtLjU2YTEgMSAwIDAgMC0uMzc1LS4zNTcgMiAyIDAgMCAwLS41NjUtLjIxbC0uNjIxLS4xNDRhMSAxIDAgMCAxLS40MDUtLjE3Ni4zNy4zNyAwIDAgMS0uMTQzLS4yOTlxMC0uMjM0LjE4NC0uMzg0LjE4OC0uMTUyLjUxMy0uMTUyLjIxNCAwIC4zNy4wNjhhLjYuNiAwIDAgMSAuMjQ1LjE4MS41Ni41NiAwIDAgMSAuMTIuMjU4aC43NWExLjEgMS4xIDAgMCAwLS4xOTktLjU2NiAxLjIgMS4yIDAgMCAwLS41LS40MSAxLjggMS44IDAgMCAwLS43OC0uMTUycS0uNDQgMC0uNzc3LjE1LS4zMzYuMTQ5LS41MjcuNDIxLS4xOS4yNzMtLjE5LjYzOSAwIC4zMDIuMTIzLjUyNHQuMzUxLjM2N3EuMjI5LjE0My41NC4yMTNsLjYxOC4xNDRxLjMxLjA3My40NjIuMTkzYS4zOS4zOSAwIDAgMSAuMTUzLjMyNi41LjUgMCAwIDEtLjA4NS4yOS41Ni41NiAwIDAgMS0uMjU1LjE5M3EtLjE2OC4wNy0uNDEzLjA3LS4xNzYgMC0uMzItLjA0YS44LjggMCAwIDEtLjI0OS0uMTE1LjU4LjU4IDAgMCAxLS4yNTUtLjM4NHptLTMuNzI2LTIuOTA5aC44OTNsLTEuMjc0IDIuMDA3IDEuMjU0IDEuOTkyaC0uOTA4bC0uODUtMS40MTVoLS4wMzVsLS44NTMgMS40MTVIMS41bDEuMjQtMi4wMTYtMS4yMjgtMS45ODNoLjkzMWwuODMyIDEuNDM4aC4wMzZ6bTEuOTIzIDMuMzI1aDEuNjk3di42NzRINS4yNjZ2LTMuOTk5aC43OTF6bTcuNjM2LTMuMzI1aC44OTNsLTEuMjc0IDIuMDA3IDEuMjU0IDEuOTkyaC0uOTA4bC0uODUtMS40MTVoLS4wMzVsLS44NTMgMS40MTVoLS44NjFsMS4yNC0yLjAxNi0xLjIyOC0xLjk4M2guOTMxbC44MzIgMS40MzhoLjAzNnoiLz48L3N2Zz4=");
  filter: invert(27%) sepia(38%) saturate(1200%) hue-rotate(101deg)
    brightness(90%) contrast(95%);
}
.file-type-icon--png {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktZmlsZXR5cGUtcG5nIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTE0IDQuNVYxNGEyIDIgMCAwIDEtMiAydi0xYTEgMSAwIDAgMCAxLTFWNC41aC0yQTEuNSAxLjUgMCAwIDEgOS41IDNWMUg0YTEgMSAwIDAgMC0xIDF2OUgyVjJhMiAyIDAgMCAxIDItMmg1LjV6bS0zLjc2IDguMTMycS4xMTQuMjMuMTQuNDkyaC0uNzc2YS44LjggMCAwIDAtLjA5Ny0uMjQ5LjcuNyAwIDAgMC0uMTctLjE5LjcuNyAwIDAgMC0uMjM3LS4xMjYgMSAxIDAgMCAwLS4yOTktLjA0NHEtLjQyNyAwLS42NjUuMzAyLS4yMzQuMzAxLS4yMzQuODV2LjQ5OHEwIC4zNTEuMDk3LjYxNWEuOS45IDAgMCAwIC4zMDQuNDEzLjg3Ljg3IDAgMCAwIC41MTkuMTQ2IDEgMSAwIDAgMCAuNDU3LS4wOTYuNjcuNjcgMCAwIDAgLjI3Mi0uMjY0cS4wOS0uMTY0LjA5MS0uMzYzdi0uMjU1SDguODJ2LS41OWgxLjU3NnYuNzk4cTAgLjI5LS4wOTcuNTVhMS4zIDEuMyAwIDAgMS0uMjkzLjQ1OCAxLjQgMS40IDAgMCAxLS40OTUuMzEzcS0uMjk2LjExMS0uNjk3LjExMWEyIDIgMCAwIDEtLjc1My0uMTMyIDEuNDUgMS40NSAwIDAgMS0uNTMzLS4zNzcgMS42IDEuNiAwIDAgMS0uMzItLjU4IDIuNSAyLjUgMCAwIDEtLjEwNS0uNzQ1di0uNTA2cTAtLjU0My4yLS45NS4yMDEtLjQwNi41ODItLjYzMy4zODQtLjIyOC45MjYtLjIyOC4zNTcgMCAuNjM2LjEuMjgxLjEuNDguMjc1LjIuMTc2LjMxNC40MDdabS04LjY0LS43MDZIMHY0aC43OTF2LTEuMzQzaC44MDNxLjQzIDAgLjczMi0uMTcyLjMwNS0uMTc3LjQ2My0uNDc1YTEuNCAxLjQgMCAwIDAgLjE2MS0uNjc3cTAtLjM3NC0uMTU4LS42NzdhMS4yIDEuMiAwIDAgMC0uNDYtLjQ3N3EtLjMtLjE4LS43MzItLjE3OW0uNTQ1IDEuMzMzYS44LjggMCAwIDEtLjA4NS4zODEuNTcuNTcgMCAwIDEtLjIzOC4yNC44LjggMCAwIDEtLjM3NS4wODJILjc4OHYtMS40MDZoLjY2cS4zMjcgMCAuNTEyLjE4Mi4xODUuMTgxLjE4NS41MjFtMS45NjQgMi42NjZWMTMuMjVoLjAzMmwxLjc2MSAyLjY3NWguNjU2di0zLjk5OWgtLjc1djIuNjZoLS4wMzJsLTEuNzUyLTIuNjZoLS42NjJ2NHoiLz48L3N2Zz4=");
  filter: invert(56%) sepia(13%) saturate(2123%) hue-rotate(176deg)
    brightness(92%) contrast(90%);
}
.file-type-icon--jpg {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktZmlsZXR5cGUtanBnIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTE0IDQuNVYxNGEyIDIgMCAwIDEtMiAyaC0xdi0xaDFhMSAxIDAgMCAwIDEtMVY0LjVoLTJBMS41IDEuNSAwIDAgMSA5LjUgM1YxSDRhMSAxIDAgMCAwLTEgMXY5SDJWMmEyIDIgMCAwIDEgMi0yaDUuNXptLTQuMzQgOC4xMzJxLjExNC4yMy4xNC40OTJoLS43NzZhLjguOCAwIDAgMC0uMDk3LS4yNDkuNy43IDAgMCAwLS4xNy0uMTkuNy43IDAgMCAwLS4yMzctLjEyNiAxIDEgMCAwIDAtLjI5OS0uMDQ0cS0uNDI4IDAtLjY2NS4zMDItLjIzNC4zMDEtLjIzNC44NXYuNDk4cTAgLjM1MS4wOTcuNjE1YS45LjkgMCAwIDAgLjMwNC40MTMuODcuODcgMCAwIDAgLjUxOS4xNDYgMSAxIDAgMCAwIC40NTctLjA5Ni42Ny42NyAwIDAgMCAuMjcyLS4yNjRxLjA5LS4xNjQuMDkxLS4zNjN2LS4yNTVIOC4yNHYtLjU5aDEuNTc2di43OThxMCAuMjktLjA5Ny41NWExLjMgMS4zIDAgMCAxLS4yOTMuNDU4IDEuNCAxLjQgMCAwIDEtLjQ5NS4zMTNxLS4yOTYuMTExLS42OTcuMTExYTIgMiAwIDAgMS0uNzUzLS4xMzIgMS40NSAxLjQ1IDAgMCAxLS41MzMtLjM3NyAxLjYgMS42IDAgMCAxLS4zMi0uNTggMi41IDIuNSAwIDAgMS0uMTA1LS43NDV2LS41MDZxMC0uNTQzLjItLjk1LjIwMS0uNDA2LjU4Mi0uNjMzLjM4NC0uMjI4LjkyNi0uMjI4LjM1NyAwIC42MzYuMS4yOC4xLjQ4LjI3NXQuMzE0LjQwN1pNMCAxNC43ODZxMCAuMjQ2LjA4Mi40NjUuMDgzLjIyLjI0My4zOS4xNjUuMTcuNDA3LjI2Ny4yNDYuMDkzLjU2OS4wOTMuNjMgMCAuOTg0LS4zNDUuMzU3LS4zNDYuMzU4LTEuMDA1di0yLjcyNWgtLjc5MXYyLjc0NXEwIC4zMDMtLjEzOC40NjZ0LS40MjIuMTY0YS41LjUgMCAwIDEtLjQ1NC0uMjQ2LjYuNiAwIDAgMS0uMDczLS4yN0gwWm00LjkyLTIuODZIMy4zMjJ2NGguNzkxdi0xLjM0M2guODAzcS40MyAwIC43MzItLjE3Mi4zMDUtLjE3Ny40NjMtLjQ3NS4xNjItLjMwMi4xNjEtLjY3NyAwLS4zNzQtLjE1OC0uNjc3YTEuMiAxLjIgMCAwIDAtLjQ2LS40NzdxLS4zLS4xOC0uNzMyLS4xNzlabS41NDYgMS4zMzNhLjguOCAwIDAgMS0uMDg1LjM4MS41Ny41NyAwIDAgMS0uMjM4LjI0LjguOCAwIDAgMS0uMzc1LjA4Mkg0LjExdi0xLjQwNmguNjZxLjMyNyAwIC41MTIuMTgyLjE4NS4xODEuMTg1LjUyMVoiLz48L3N2Zz4=");
  filter: invert(54%) sepia(54%) saturate(642%) hue-rotate(352deg)
    brightness(95%) contrast(90%);
}

.download-action-btn {
  padding: 4px 12px;
  background-color: var(--wp--preset--color--primary);
  color: black !important;
  font-weight: bold !important;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 12px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  line-height: 1;
  min-height: 26px;
  box-sizing: border-box;
}

.action-icon {
  width: 16px;
  height: 16px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  display: inline-block;
  vertical-align: middle;
}

.action-icon--open {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0zLjcwNyAyLjI5M0wxMiAxMC41ODZWNGgydjEwSDR2LTJoNi41ODZMMi4yOTMgMy43MDd6Ii8+PC9zdmc+");
  width: 13px;
  height: 13px;
}

.action-icon--download {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Im0xMiAxNi01LTUgMS40LTEuNDUgMi42IDIuNlY0aDJ2OC4xNWwyLjYtMi42TDE3IDExem0tOCA0di01aDJ2M2gxMnYtM2gydjV6Ii8+PC9zdmc+");
  width: 18px;
  height: 18px;
}

.download-action-btn:hover {
  opacity: 0.9;
  text-decoration: underline;
}

.download-action-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.downloads-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
  padding: 15px 0;
}

.pagination-info {
  font-size: 14px;
  color: #666;
}

.pagination-controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pagination-btn {
  padding: 8px 16px;
  border: 1px solid #ddd;
  background: white;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
}

.pagination-btn:hover:not(:disabled) {
  background-color: #f5f5f5;
}

.pagination-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

#page-numbers {
  display: flex;
  gap: 5px;
}

.page-number {
  padding: 6px 12px;
  border: 1px solid #ddd;
  background: white;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
  text-decoration: none;
  color: #333;
}

.page-number.active {
  background-color: var(--wp--preset--color--primary);
  color: white;
  border-color: var(--wp--preset--color--primary);
}

.page-number:hover:not(.active) {
  background-color: #f5f5f5;
}

.skeleton {
  background: linear-gradient(110deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 50%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

.no-downloads-message {
  text-align: center;
  padding: 40px 20px !important;
  font-size: 16px;
  color: #666;
}

.downloads-table.enable-desktop-row-click th:nth-child(5),
.downloads-table.enable-desktop-row-click td:nth-child(5) {
  display: none;
}

.downloads-table.enable-desktop-row-click tbody tr {
  cursor: pointer;
}

.downloads-table.enable-desktop-row-click tbody tr:hover {
  background-color: rgba(255, 240, 186, 0.4) !important;
}

/* ============================================================================
   MEDIA QUERIES
   ============================================================================ */

@media (prefers-reduced-motion: reduce) {
  .copy-button,
  .copy-button[data-tooltip]::after,
  .copy-button[data-tooltip]::before {
    transition: none;
  }
}

@media (max-width: 1024px) {
  .reseller-contracts .reseller-header,
  .reseller-downloads .reseller-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 50px;
  }

  .reseller-contracts .reseller-header h2,
  .reseller-downloads .reseller-header h2 {
    order: 1;
    margin: 0;
  }

  .reseller-contracts .reseller-header-buttons,
  .reseller-downloads .reseller-header-buttons {
    width: 100%;
    order: 2;
    align-self: flex-start;
    justify-content: space-between;
  }

  .reseller-contracts .reseller-header .wp-block-button,
  .reseller-downloads .reseller-header .wp-block-button {
    margin-left: 0;
  }

  .wp-block-button__link.overview-link {
    font-size: 14px;
    padding: 8px 16px;
  }

  .downloads-table th:nth-child(1),
  .downloads-table td:nth-child(1) {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }

  .downloads-table th:nth-child(5),
  .downloads-table td:nth-child(5) {
    display: none;
  }

  .downloads-table tbody tr {
    cursor: pointer;
  }

  .downloads-table tbody tr:hover {
    background-color: rgba(255, 240, 186, 0.4) !important;
  }

  .downloads-table th,
  .downloads-table td {
    font-size: 14px;
  }

  .no-downloads-message {
    text-align: left !important;
  }
}

@media (max-width: 768px) {
  .overview-content {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .overview-user-info {
    margin-top: 0;
  }

  .overview-navigation {
    grid-template-areas:
      "downloads"
      "contracts"
      "wechsel";
    grid-template-columns: 1fr;
  }

  .contracts-table-wrapper {
    margin: 10px -1rem;
    border-radius: 0;
  }

  .tab-button {
    padding: 8px 15px 8px 40px;
    font-size: 14px;
  }

  .contracts-table .error-row td {
    text-align: left;
    padding: 15px;
  }
}
