@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600&display=swap');/**
 * Error Fallback Styles - Production-Ready SaaS UX
 * Modern, accessible, and responsive error page design
 */

.error-fallback {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: auto;
  z-index: 10000;
  animation: errorFadeIn 0.5s ease-out;
}

/* ========== BACKGROUND ========== */

.error-fallback__bg {
  position: fixed;
  inset: 0;
  z-index: -1;
}

.error-fallback__bg-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    #fef2f2 0%,
    #fee2e2 25%,
    #fecaca 50%,
    #fca5a5 75%,
    #f87171 100%
  );
  opacity: 0.3;
  animation: gradientShift 15s ease infinite;
}

@keyframes gradientShift {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}

.error-fallback__bg-pattern {
  position: absolute;
  inset: 0;
  background-image: 
    linear-gradient(30deg, rgba(239, 68, 68, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(239, 68, 68, 0.05) 87.5%, rgba(239, 68, 68, 0.05)),
    linear-gradient(150deg, rgba(239, 68, 68, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(239, 68, 68, 0.05) 87.5%, rgba(239, 68, 68, 0.05)),
    linear-gradient(30deg, rgba(239, 68, 68, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(239, 68, 68, 0.05) 87.5%, rgba(239, 68, 68, 0.05)),
    linear-gradient(150deg, rgba(239, 68, 68, 0.05) 12%, transparent 12.5%, transparent 87%, rgba(239, 68, 68, 0.05) 87.5%, rgba(239, 68, 68, 0.05));
  background-size: 80px 80px;
  background-position: 0 0, 40px 40px, 40px 40px, 80px 80px;
  animation: patternMove 20s linear infinite;
}

@keyframes patternMove {
  0% {
    background-position: 0 0, 40px 40px, 40px 40px, 80px 80px;
  }
  100% {
    background-position: 80px 80px, 120px 120px, 120px 120px, 160px 160px;
  }
}

/* ========== CONTAINER ========== */

.error-fallback__container {
  max-width: 700px;
  width: 100%;
  padding: 40px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}

/* ========== ICON ========== */

.error-fallback__icon {
  animation: iconBounce 1s ease-out;
  filter: drop-shadow(0 10px 30px rgba(239, 68, 68, 0.3));
}

.error-fallback__icon-circle {
  animation: drawCircle 1s ease-out forwards;
}

.error-fallback__icon-mark {
  opacity: 0;
  animation: fadeInMark 0.5s ease-out 0.8s forwards;
}

@keyframes iconBounce {
  0% {
    transform: scale(0) rotate(-180deg);
    opacity: 0;
  }
  60% {
    transform: scale(1.2) rotate(20deg);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(0deg);
    opacity: 1;
  }
}

@keyframes drawCircle {
  from {
    strokeDashoffset: 345;
  }
  to {
    strokeDashoffset: 0;
  }
}

@keyframes fadeInMark {
  from {
    opacity: 0;
    transform: scale(0.5);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* ========== CARD ========== */

.error-fallback__card {
  width: 100%;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(239, 68, 68, 0.1);
  border-radius: 24px;
  padding: 48px;
  box-shadow: 
    0 20px 60px rgba(239, 68, 68, 0.15),
    0 0 1px rgba(0, 0, 0, 0.1);
  animation: cardSlideUp 0.6s ease-out 0.2s both;
}

@keyframes cardSlideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ========== HEADER ========== */

.error-fallback__header {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-bottom: 32px;
}

.error-fallback__title {
  font-size: 32px;
  font-weight: 800;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -1px;
  margin: 0;
  line-height: 1.2;
}

.error-fallback__message {
  font-size: 16px;
  color: #64748b;
  line-height: 1.6;
  margin: 0;
  max-width: 500px;
}

/* ========== ERROR DETAILS ========== */

.error-fallback__details {
  background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
  border: 1px solid #fca5a5;
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 24px;
}

.error-fallback__details-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.error-fallback__details-title {
  font-size: 16px;
  font-weight: 700;
  color: #991b1b;
  margin: 0;
}

.error-fallback__error-box {
  background: white;
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
  border: 1px solid rgba(239, 68, 68, 0.2);
}

.error-fallback__error-label {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 8px;
}

.error-fallback__error-message {
  display: block;
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 14px;
  color: #dc2626;
  background: #fef2f2;
  padding: 12px;
  border-radius: 8px;
  border-left: 4px solid #ef4444;
  overflow-x: auto;
  word-break: break-word;
}

.error-fallback__stack {
  margin-top: 12px;
}

.error-fallback__stack-summary {
  font-size: 14px;
  font-weight: 600;
  color: #991b1b;
  cursor: pointer;
  padding: 12px;
  background: white;
  border-radius: 8px;
  border: 1px solid rgba(239, 68, 68, 0.2);
  transition: all 0.2s ease;
}

.error-fallback__stack-summary:hover {
  background: #fef2f2;
  border-color: #ef4444;
}

.error-fallback__stack-content {
  margin: 12px 0 0 0;
  padding: 16px;
  background: white;
  border-radius: 8px;
  border: 1px solid rgba(239, 68, 68, 0.2);
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 12px;
  color: #475569;
  overflow-x: auto;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-all;
}

/* ========== ACTIONS ========== */

.error-fallback__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-bottom: 24px;
}

.error-fallback__button-primary {
  min-width: 140px;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3);
}

.error-fallback__button-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(239, 68, 68, 0.4);
}

/* ========== HELP SECTION ========== */

.error-fallback__help {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
  border: 1px solid #bae6fd;
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 24px;
}

.error-fallback__help-title {
  font-size: 16px;
  font-weight: 700;
  color: #0369a1;
  margin: 0 0 16px 0;
}

.error-fallback__help-list {
  margin: 0;
  padding-left: 20px;
  font-size: 14px;
  color: #0c4a6e;
  line-height: 1.8;
}

.error-fallback__help-list li {
  margin-bottom: 8px;
}

.error-fallback__help-link {
  color: #0284c7;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: border-color 0.2s ease;
}

.error-fallback__help-link:hover {
  border-color: #0284c7;
}

/* ========== FOOTER ========== */

.error-fallback__footer {
  text-align: center;
  padding-top: 16px;
  border-top: 1px solid #e2e8f0;
}

.error-fallback__timestamp {
  font-size: 12px;
  color: #94a3b8;
  font-weight: 500;
}

/* ========== BRANDING ========== */

.error-fallback__branding {
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: 0.6;
  transition: opacity 0.3s ease;
}

.error-fallback__branding:hover {
  opacity: 1;
}

.error-fallback__brand-icon {
  font-size: 24px;
}

.error-fallback__brand-text {
  font-size: 16px;
  font-weight: 700;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -0.5px;
}

/* ========== ANIMATIONS ========== */

@keyframes errorFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* ========== RESPONSIVE ========== */

@media (max-width: 768px) {
  .error-fallback__container {
    padding: 24px 16px;
    gap: 24px;
  }

  .error-fallback__icon svg {
    width: 80px;
    height: 80px;
  }

  .error-fallback__card {
    padding: 32px 24px;
    border-radius: 20px;
  }

  .error-fallback__title {
    font-size: 24px;
  }

  .error-fallback__message {
    font-size: 14px;
  }

  .error-fallback__actions {
    flex-direction: column;
    width: 100%;
  }

  .error-fallback__actions button {
    width: 100%;
  }

  .error-fallback__details,
  .error-fallback__help {
    padding: 20px;
  }

  .error-fallback__error-message,
  .error-fallback__stack-content {
    font-size: 12px;
  }
}

@media (max-width: 480px) {
  .error-fallback__card {
    padding: 24px 20px;
  }

  .error-fallback__title {
    font-size: 20px;
  }

  .error-fallback__help-list {
    font-size: 13px;
    padding-left: 16px;
  }
}

/* ========== ACCESSIBILITY ========== */

/* Focus styles */
.error-fallback__stack-summary:focus-visible,
.error-fallback__help-link:focus-visible {
  outline: 3px solid #ef4444;
  outline-offset: 2px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* High contrast mode */
@media (prefers-contrast: high) {
  .error-fallback__card {
    border-width: 2px;
  }

  .error-fallback__error-box,
  .error-fallback__stack-summary {
    border-width: 2px;
  }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  .error-fallback__card {
    background: rgba(15, 23, 42, 0.95);
    border-color: rgba(239, 68, 68, 0.3);
  }

  .error-fallback__title {
    background: linear-gradient(135deg, #f87171 0%, #ef4444 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .error-fallback__message,
  .error-fallback__timestamp {
    color: #94a3b8;
  }

  .error-fallback__details,
  .error-fallback__help {
    background: rgba(30, 41, 59, 0.5);
    border-color: rgba(239, 68, 68, 0.2);
  }

  .error-fallback__error-box,
  .error-fallback__stack-summary,
  .error-fallback__stack-content {
    background: rgba(30, 41, 59, 0.8);
    border-color: rgba(239, 68, 68, 0.2);
  }

  .error-fallback__error-message {
    background: rgba(239, 68, 68, 0.1);
    color: #fca5a5;
  }

  .error-fallback__stack-content {
    color: #cbd5e1;
  }

  .error-fallback__details-title {
    color: #fca5a5;
  }

  .error-fallback__help {
    background: rgba(12, 74, 110, 0.3);
    border-color: rgba(14, 165, 233, 0.3);
  }

  .error-fallback__help-title {
    color: #7dd3fc;
  }

  .error-fallback__help-list {
    color: #bae6fd;
  }

  .error-fallback__footer {
    border-top-color: rgba(51, 65, 85, 0.5);
  }
}
/**
 * Curated pm-common-ui CSS — only components IC Memo actually uses.
 * Replaces full @pavanhiro/common-ui/dist/common-ui.css (~976KB) with ~370KB raw.
 *
 * Import once from app/providers.tsx (do not re-import per page).
 */

/* Core */

.pm-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--pm-button-radius);font-size:14px;font-weight:500;font-family:inherit;text-decoration:none;box-sizing:border-box;margin:0;border:none;background:none;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;user-select:none;transition:all .2s cubic-bezier(.4,0,.2,1);overflow:hidden;line-height:1.5;outline:0;transform:translateZ(0);-webkit-tap-highlight-color:transparent;min-height:36px}

.pm-button:focus-visible{outline:2px solid #2196f3;outline-offset:2px}

.pm-button:active:not(.pm-button-disabled):not(.pm-button-loading){transform:scale(.98)}

.pm-button-inner{display:flex;align-items:center;justify-content:center;position:relative;z-index:1;width:100%;height:100%;pointer-events:none}

.pm-button-text{display:inline-block;flex-grow:1;text-overflow:ellipsis;overflow:hidden;color:inherit}

.pm-button-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.25em;width:1.25em;height:1.25em;flex-shrink:0}

.pm-button-has-start-icon .pm-button-icon:first-child{margin-inline-end:4px;margin-inline-start:-4px}

.pm-button-has-end-icon .pm-button-icon:last-child{margin-inline-start:8px;margin-inline-end:-4px}

.pm-button:has(.pm-button-icon:first-child) .pm-button-icon:first-child{margin-inline-end:4px;margin-inline-start:-4px}

.pm-button:has(.pm-button-icon:last-child:not(:first-child)) .pm-button-icon:last-child{margin-inline-start:8px;margin-inline-end:-4px}

.pm-button-icon img.pm-button-icon-img{width:100%;height:100%;object-fit:contain}

.pm-button-small{padding:6px 12px;font-size:13px;min-height:32px;border-radius:var(--pm-radius-sm)}

.pm-button-medium{padding:10px 20px;min-height:40px;border-radius:var(--pm-button-radius)}

.pm-button-large{padding:14px 28px;font-size:16px;min-height:48px;border-radius:var(--pm-radius-lg)}

.pm-button-standard{background-color:#f5f5f5;color:#212121;box-shadow:var(--pm-shadow-button)}

.pm-button-standard:hover:where(:not(.pm-button-disabled,.pm-button-loading)){background-color:#e0e0e0;box-shadow:var(--pm-shadow-md);transform:translateY(-1px)}

.pm-button-standard.pm-button-active{background-color:#d5d5d5;box-shadow:0 1px 2px #0000000f}

.pm-button-outline{background-color:transparent;box-shadow:none;border:1px solid currentColor}

.pm-button-outline:hover:not(.pm-button-disabled):not(.pm-button-loading){background-color:#0000000a}

.pm-button-outline.pm-button-active{background-color:#00000014}

.pm-button-flat{background-color:transparent;box-shadow:none}

.pm-button-flat:hover:not(.pm-button-disabled):not(.pm-button-loading){background-color:#0000000d}

.pm-button-flat.pm-button-active{background-color:#0000001a}

.pm-button-raised{box-shadow:var(--pm-shadow-button)}

.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){box-shadow:var(--pm-shadow-lg);transform:translateY(-2px)}

.pm-button-raised:active:not(.pm-button-disabled):not(.pm-button-loading){box-shadow:0 1px 2px #00000014,0 2px 4px #0000000f;transform:translateY(0)}

.pm-button-text,.pm-button-link{background:transparent;padding:4px 8px;min-height:auto;box-shadow:none}

.pm-button-text:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-link:hover:not(.pm-button-disabled):not(.pm-button-loading){background-color:#0000000d;text-decoration:none}

.pm-button-link{color:#2196f3;text-decoration:underline}

.pm-button-primary.pm-button-standard,.pm-button-primary.pm-button-raised{background-color:#2196f3;color:#fff!important;font-weight:500}

.pm-button-primary.pm-button-outline{color:#2196f3;border-color:#2196f3}

.pm-button-primary.pm-button-flat,.pm-button-primary.pm-button-text{color:#2196f3}

.pm-button-secondary.pm-button-standard,.pm-button-secondary.pm-button-raised{background-color:#757575;color:#fff!important;font-weight:500}

.pm-button-secondary.pm-button-outline{color:#757575;border-color:#757575}

.pm-button-secondary.pm-button-flat,.pm-button-secondary.pm-button-text{color:#757575}

.pm-button-success.pm-button-standard,.pm-button-success.pm-button-raised{background-color:#4caf50;color:#fff!important;font-weight:500}

.pm-button-success.pm-button-outline{color:#4caf50;border-color:#4caf50}

.pm-button-success.pm-button-flat,.pm-button-success.pm-button-text{color:#4caf50}

.pm-button-danger.pm-button-standard,.pm-button-danger.pm-button-raised{background-color:#f44336;font-weight:500;color:#fff!important}

.pm-button-danger.pm-button-outline{color:#f44336;border-color:#f44336}

.pm-button-danger.pm-button-flat,.pm-button-danger.pm-button-text{color:#f44336}

.pm-button-warning.pm-button-standard,.pm-button-warning.pm-button-raised{background-color:#f57c00;font-weight:500;color:#fff!important}

.pm-button-warning.pm-button-outline{color:#ff9800;border-color:#ff9800}

.pm-button-warning.pm-button-flat,.pm-button-warning.pm-button-text{color:#ff9800}

.pm-button-info.pm-button-standard,.pm-button-info.pm-button-raised{font-weight:500;background-color:#03a9f4;color:#fff!important}

.pm-button-info.pm-button-outline{color:#03a9f4;border-color:#03a9f4}

.pm-button-info.pm-button-flat,.pm-button-info.pm-button-text{color:#03a9f4}

.pm-button-light.pm-button-standard,.pm-button-light.pm-button-raised{background-color:#f5f5f5;font-weight:500;color:#1a1a1a;border:1px solid #d0d0d0}

.pm-button-light.pm-button-outline{color:#757575;border-color:#e0e0e0}

.pm-button-light.pm-button-flat,.pm-button-light.pm-button-text{color:#757575}

.pm-button-dark.pm-button-standard,.pm-button-dark.pm-button-raised{font-weight:500;background-color:#212121;color:#fff!important}

.pm-button-dark.pm-button-outline{color:#212121;border-color:#212121}

.pm-button-dark.pm-button-flat,.pm-button-dark.pm-button-text{color:#212121}

.pm-button-disabled{opacity:.65;cursor:not-allowed;pointer-events:none}

.pm-button-loading{cursor:wait}

.pm-button-focus:focus-visible{outline:2px solid rgba(33,150,243,.5);outline-offset:2px}

.pm-button-full-width{display:flex;width:100%}

.pm-button-rounded{border-radius:9999px}

.pm-button-icon-only{padding:8px;min-width:36px;min-height:36px;justify-content:center}

.pm-button-small.pm-button-icon-only{padding:4px;min-width:28px;min-height:28px}

.pm-button-large.pm-button-icon-only{padding:12px;min-width:44px;min-height:44px}

.pm-button-icon-only .pm-button-icon{margin:0}

.pm-button-elevation-1{box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}

.pm-button-elevation-2{box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b}

.pm-button-elevation-3{box-shadow:0 10px 20px #00000030,0 6px 6px #0000003b}

.pm-button-elevation-4{box-shadow:0 14px 28px #00000040,0 10px 10px #00000038}

.pm-button-elevation-5{box-shadow:0 19px 38px #0000004d,0 15px 12px #00000038}

.pm-button-ripple{position:absolute;border-radius:50%;background-color:#00000026;transform:scale(0);animation:ripple-animation .6s linear;pointer-events:none}

@keyframes ripple-animation{to{transform:scale(2);opacity:0}}

.pm-button-loading .pm-button-inner{opacity:.7}

.pm-button-loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:inline-block;width:20px;height:20px;z-index:2}

.pm-button-spinner-svg{animation:spinner-rotate 2s linear infinite;transform-origin:center center}

.pm-button-spinner-circle{stroke:currentColor;stroke-dasharray:80,200;stroke-dashoffset:0;stroke-width:4;animation:spinner-dash 1.5s ease-in-out infinite}

@keyframes spinner-rotate{to{transform:rotate(360deg)}}

@keyframes spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}

.pm-button-tooltip{position:fixed;background-color:#212121e6;color:#fff!important;padding:6px 10px;border-radius:var(--pm-radius-sm);font-size:12px;pointer-events:none;z-index:1050;max-width:300px;text-align:center;animation:tooltip-fade .2s ease-in-out}

.pm-button-tooltip:after{content:"";position:absolute;width:0;height:0;border:5px solid transparent}

.pm-tooltip-top:after{bottom:-10px;left:50%;transform:translate(-50%);border-top-color:#212121e6}

.pm-tooltip-bottom:after{top:-10px;left:50%;transform:translate(-50%);border-bottom-color:#212121e6}

.pm-tooltip-left:after{right:-10px;top:50%;transform:translateY(-50%);border-left-color:#212121e6}

.pm-tooltip-right:after{left:-10px;top:50%;transform:translateY(-50%);border-right-color:#212121e6}

@keyframes tooltip-fade{0%{opacity:0}to{opacity:1}}

.js-focus-visible .pm-button:focus:not(.focus-visible){outline:none}

@media(prefers-color-scheme:dark){.pm-button.pm-button-variant-light{background-color:#303030;color:#e0e0e0}.pm-button.pm-button-variant-light:hover:not(.pm-button-disabled):not(.pm-button-loading){background-color:#424242}.pm-button-tooltip{background-color:#dcdcdce6;color:#121212}.pm-tooltip-top:after{border-top-color:#dcdcdce6}.pm-tooltip-bottom:after{border-bottom-color:#dcdcdce6}.pm-tooltip-left:after{border-left-color:#dcdcdce6}.pm-tooltip-right:after{border-right-color:#dcdcdce6}}

.pm-button{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;touch-action:manipulation}

@media(max-width:375px){.pm-button{min-height:48px;font-size:16px;padding:12px 16px}.pm-button-size-small{min-height:44px;font-size:15px;padding:10px 14px}.pm-button-size-large{min-height:52px;font-size:17px;padding:14px 20px}.pm-button-full-width{width:100%}.pm-button-badge{min-width:16px;height:16px;font-size:10px}}

@media(min-width:376px)and (max-width:480px){.pm-button{min-height:48px;font-size:16px}.pm-button-size-small{min-height:44px;font-size:15px}.pm-button-size-large{min-height:52px;font-size:17px}}

@media(min-width:481px)and (max-width:768px){.pm-button{min-height:46px;font-size:15px}.pm-button-size-small{min-height:42px}.pm-button-size-large{min-height:50px}}

@media(min-width:769px)and (max-width:1024px){.pm-button{min-height:44px}}

@media(min-width:1025px){.pm-button{min-height:40px}.pm-button:hover:not(.pm-button-disabled):not(.pm-button-loading){filter:brightness(1.1)}}

@media(min-width:1920px){.pm-button{font-size:15px}}

@media(hover:none)and (pointer:coarse){.pm-button{min-height:48px;font-size:16px;padding:12px 20px}.pm-button-size-small{min-height:44px}.pm-button-size-large{min-height:52px}.pm-button:hover:not(.pm-button-disabled):not(.pm-button-loading){transform:none;box-shadow:inherit;filter:none}.pm-button:active:not(.pm-button-disabled):not(.pm-button-loading){transform:scale(.97);opacity:.9}.pm-button-tooltip{display:none}.pm-button-ripple{animation-duration:.5s}}

@supports (-webkit-touch-callout: none){.pm-button{-webkit-appearance:none;appearance:none}.pm-button{font-size:max(16px,1em)}.pm-button:focus{outline:none}.pm-button:focus-visible{outline:2px solid #007aff;outline-offset:2px}}

@supports (padding-bottom: env(safe-area-inset-bottom)){.pm-button-fixed-bottom,.pm-button-sticky-bottom{padding-bottom:max(16px,env(safe-area-inset-bottom))}.pm-button-fixed-top,.pm-button-sticky-top{padding-top:max(16px,env(safe-area-inset-top))}.pm-button-fixed-left{padding-left:max(16px,env(safe-area-inset-left))}.pm-button-fixed-right{padding-right:max(16px,env(safe-area-inset-right))}}

.pm-button{-webkit-appearance:none;appearance:none}

@media(hover:none)and (pointer:coarse){.pm-button-ripple{will-change:transform,opacity}}

@media(prefers-contrast:high){.pm-button{border:2px solid currentColor}.pm-button:focus-visible{outline:3px solid;outline-offset:3px}}

@media(pointer:coarse)and (hover:hover){.pm-button{min-height:44px}}

@media(prefers-reduced-motion:reduce){.pm-button,.pm-button *,.pm-button-ripple,.pm-button-spinner-svg,.pm-button-spinner-circle,.pm-button-tooltip,.pm-button-progress,.pm-button-loading-spinner.dots .dot,.pm-button-loading-spinner.pulse{animation:none!important;transition:none!important}.pm-button:active{transform:none!important}}

@media(prefers-color-scheme:dark){.pm-button-light{background-color:#2c2c2c;color:#fff;border-color:#444}.pm-button-dark{background-color:#f5f5f5;color:#000}}

@media(prefers-contrast:high){.pm-button{border:2px solid}.pm-button-disabled{opacity:1;border-style:dashed}}

.pm-button,.pm-button-ripple,.pm-button-loading-spinner,.pm-button-progress{will-change:transform;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}

[dir=rtl] .pm-button-has-start-icon .pm-button-icon{margin-right:0;margin-left:8px}

[dir=rtl] .pm-button-has-end-icon .pm-button-icon{margin-left:0;margin-right:8px}

[dir=rtl] .pm-button-badge-top-right{right:auto;left:-6px}

[dir=rtl] .pm-button-badge-top-left{left:auto;right:-6px}

[dir=rtl] .pm-button-badge-bottom-right{right:auto;left:-6px}

[dir=rtl] .pm-button-badge-bottom-left{left:auto;right:-6px}

.pm-button-advanced-effects.pm-button-primary.pm-button-standard,.pm-button-advanced-effects.pm-button-primary.pm-button-raised{background:#6366f1;border:1px solid #6366F1;color:#fff}

.pm-button-advanced-effects.pm-button-primary.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-primary.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#4f46e5;border-color:#4f46e5}

.pm-button-advanced-effects.pm-button-secondary.pm-button-standard,.pm-button-advanced-effects.pm-button-secondary.pm-button-raised{background:#64748b;border:1px solid #64748B;color:#fff}

.pm-button-advanced-effects.pm-button-secondary.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-secondary.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#475569;border-color:#475569}

.pm-button-advanced-effects.pm-button-success.pm-button-standard,.pm-button-advanced-effects.pm-button-success.pm-button-raised{background:#10b981;border:1px solid #10B981;color:#fff}

.pm-button-advanced-effects.pm-button-success.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-success.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#059669;border-color:#059669}

.pm-button-advanced-effects.pm-button-danger.pm-button-standard,.pm-button-advanced-effects.pm-button-danger.pm-button-raised{background:#ef4444;border:1px solid #EF4444;color:#fff}

.pm-button-advanced-effects.pm-button-danger.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-danger.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){.pm-button-advanced-effects.pm-button-danger.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-danger.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#dc2626;border-color:#dc2626}.pm-button-advanced-effects.pm-button-warning.pm-button-standard,.pm-button-advanced-effects.pm-button-warning.pm-button-raised{background:#f59e0b;border:1px solid #F59E0B;color:#fff}.pm-button-advanced-effects.pm-button-warning.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-warning.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#d97706;border-color:#d97706}.pm-button-advanced-effects.pm-button-info.pm-button-standard,.pm-button-advanced-effects.pm-button-info.pm-button-raised{background:#3b82f6;border:1px solid #3B82F6;color:#fff}.pm-button-advanced-effects.pm-button-info.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),.pm-button-advanced-effects.pm-button-info.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#2563eb;border-color:#2563eb}.pm-button-advanced-effects.pm-button-outline{background:#fff;border:1px solid #E2E8F0}.pm-button-advanced-effects.pm-button-outline:hover:not(.pm-button-disabled):not(.pm-button-loading){background:#f8fafc;border-color:#cbd5e1}.pm-button-advanced-effects:active:not(.pm-button-disabled):not(.pm-button-loading){opacity:.9}.pm-button-advanced-effects{transition:all .15s ease}.pm-button-advanced-effects.pm-button-small{border-radius:4px}.pm-button-advanced-effects.pm-button-medium,.pm-button-advanced-effects.pm-button-large{border-radius:6px}.pm-button-advanced-effects:focus-visible{outline:2px solid #6366F1;outline-offset:2px}.pm-button-advanced-effects.pm-button-disabled{opacity:.5;cursor:not-allowed}.pm-button-advanced-effects.pm-button-loading{cursor:wait;opacity:.7}@media(hover:none)and (pointer:coarse){.pm-button-advanced-effects:active:not(.pm-button-disabled):not(.pm-button-loading){opacity:.8}}@media(prefers-reduced-motion:reduce){.pm-button-advanced-effects,.pm-button-advanced-effects:hover,.pm-button-advanced-effects:active{transition:none!important}}@media print{.pm-button{border:1px solid #000;background:#fff!important;color:#000!important;box-shadow:none!important}.pm-button-ripple,.pm-button-loading-spinner,.pm-button-tooltip{display:none!important}}.pm-button-has-badge{overflow:visible}.pm-button-badge{position:absolute;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;color:#fff!important;background-color:#f44336;border-radius:var(--pm-radius-full);line-height:1;z-index:2;pointer-events:none}.pm-button-badge-top-right{top:-6px;right:-6px}.pm-button-badge-top-left{top:-6px;left:-6px}.pm-button-badge-bottom-right{bottom:-6px;right:-6px}.pm-button-badge-bottom-left{bottom:-6px;left:-6px}.pm-button-progress{position:absolute;bottom:0;left:0;height:3px;background-color:currentColor;transition:width .3s ease;z-index:0;pointer-events:none}.pm-button-loading-spinner.dots{display:flex;gap:4px;align-items:center}.pm-button-loading-spinner.dots .dot{width:6px;height:6px;background-color:currentColor;border-radius:50%;animation:dot-bounce 1.4s infinite ease-in-out both}.pm-button-loading-spinner.dots .dot:nth-child(1){animation-delay:-.32s}.pm-button-loading-spinner.dots .dot:nth-child(2){animation-delay:-.16s}@keyframes dot-bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.pm-button-loading-spinner.pulse{width:12px;height:12px;background-color:currentColor;border-radius:50%;animation:pulse-animation 1.5s ease-in-out infinite}@keyframes pulse-animation{0%,to{transform:scale(.8);opacity:.5}50%{transform:scale(1.2);opacity:1}}.pm-button-success{background-color:#4caf50!important;color:#fff!important}.pm-button-success-icon{display:inline-flex;align-items:center;margin-right:6px}.pm-button-error{background-color:#f44336!important;color:#fff!important}.pm-button-error-icon{display:inline-flex;align-items:center;margin-right:6px}.pm-button-platform-material{border-radius:var(--pm-radius-sm);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.pm-button-platform-material.pm-button-small{border-radius:var(--pm-radius-xs);letter-spacing:.4px}.pm-button-platform-material.pm-button-large{border-radius:var(--pm-radius-md);letter-spacing:.6px}.pm-button-platform-material.pm-button-raised{box-shadow:0 2px 4px #00000024,0 3px 10px #0000001f}.pm-button-platform-material.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading){box-shadow:0 4px 8px #00000029,0 6px 20px #00000024;transform:translateY(-1px)}.pm-button-platform-material.pm-button-raised:active:not(.pm-button-disabled):not(.pm-button-loading){box-shadow:0 2px 4px #00000024,0 3px 10px #0000001f;transform:translateY(0)}.pm-button-platform-material.pm-button-flat{box-shadow:none}.pm-button-platform-material:focus-visible{outline:2px solid currentColor;outline-offset:2px;opacity:.9}.pm-button-platform-cupertino{border-radius:var(--pm-radius-lg);text-transform:none;letter-spacing:normal;font-weight:600;box-shadow:none;transition:all .15s ease-out}.pm-button-platform-cupertino.pm-button-small{border-radius:var(--pm-radius-md);padding:6px 16px}.pm-button-platform-cupertino.pm-button-medium{border-radius:var(--pm-radius-lg);padding:10px 24px}.pm-button-platform-cupertino.pm-button-large{border-radius:var(--pm-radius-xl);padding:14px 32px}.pm-button-platform-cupertino.pm-button-standard{box-shadow:0 1px 3px #00000014}.pm-button-platform-cupertino.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading){box-shadow:0 2px 6px #0000001f;transform:scale(1.02)}.pm-button-platform-cupertino.pm-button-standard:active:not(.pm-button-disabled):not(.pm-button-loading){transform:scale(.96);box-shadow:0 1px 2px #00000014}.pm-button-platform-cupertino.pm-button-outline{border-width:1.5px}.pm-button-platform-cupertino:focus-visible{outline:3px solid rgba(0,122,255,.4);outline-offset:2px}.pm-button-platform-cupertino.pm-button-primary.pm-button-standard{background:linear-gradient(180deg,#007aff,#0051d5)}.pm-button-platform-cupertino.pm-button-primary.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading){background:linear-gradient(180deg,#0066d9,#0040b3)}.pm-button-platform-cupertino.pm-button-success.pm-button-standard{background:linear-gradient(180deg,#34c759,#28a745)}.pm-button-platform-cupertino.pm-button-danger.pm-button-standard{background:linear-gradient(180deg,#ff3b30,#d32f2f)}.pm-button-platform-cupertino.pm-button-flat{background:transparent;box-shadow:none}.pm-button-platform-cupertino.pm-button-flat:active:not(.pm-button-disabled):not(.pm-button-loading){opacity:.4;transform:scale(.98)}.pm-button-platform-cupertino .pm-button-ripple{display:none!important}@media(prefers-reduced-motion:reduce){.pm-button,.pm-button-ripple,.pm-button-spinner-svg,.pm-button-spinner-circle,.pm-button-tooltip,.pm-button-progress,.pm-button-loading-spinner.dots .dot,.pm-button-loading-spinner.pulse{animation:none;transition:none}.pm-button-platform-material,.pm-button-platform-cupertino{transition:none}}}

.pm-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;line-height:1;text-align:center;white-space:nowrap;vertical-align:middle;border-radius:var(--pm-badge-radius);border:1px solid transparent;color:#fff;transition:all .15s ease-in-out;cursor:default;position:relative;flex-shrink:0;letter-spacing:.3px}

.badge--xs{font-size:.625rem;padding:.125em .4em;gap:.25em}

.badge--small{font-size:.6875rem;padding:.15em .5em;gap:.3em}

.badge--medium{font-size:11px;padding:4px 8px;gap:4px}

.badge--large{font-size:.875rem;padding:.35em .75em;gap:.4em}

.badge--xl{font-size:1rem;padding:.45em .9em;gap:.5em}

.badge--solid.badge--primary{background-color:var(--badge-primary-color, #6366F1);border-color:var(--badge-primary-color, #6366F1)}

.badge--solid.badge--secondary{background-color:var(--badge-secondary-color, #64748B);border-color:var(--badge-secondary-color, #64748B)}

.badge--solid.badge--success{background-color:var(--badge-success-color, #10B981);border-color:var(--badge-success-color, #10B981)}

.badge--solid.badge--info{background-color:var(--badge-info-color, #3B82F6);border-color:var(--badge-info-color, #3B82F6)}

.badge--solid.badge--warning{background-color:var(--badge-warning-color, #F59E0B);border-color:var(--badge-warning-color, #F59E0B);color:var(--badge-warning-text-color, #78350F)}

.badge--solid.badge--danger{background-color:var(--badge-danger-color, #EF4444);border-color:var(--badge-danger-color, #EF4444)}

.badge--solid.badge--light{background-color:var(--badge-light-color, #F8FAFC);border-color:var(--badge-light-border-color, #E2E8F0);color:var(--badge-light-text-color, #1E293B)}

.badge--solid.badge--dark{background-color:var(--badge-dark-color, #1E293B);border-color:var(--badge-dark-color, #1E293B)}

.badge--soft.badge--primary{background-color:#eef2ff;color:#4338ca;border-color:#e0e7ff}

.badge--soft.badge--secondary{background-color:#f1f5f9;color:#475569;border-color:#e2e8f0}

.badge--soft.badge--success{background-color:#ecfdf5;color:#059669;border-color:#d1fae5}

.badge--soft.badge--info{background-color:#eff6ff;color:#2563eb;border-color:#dbeafe}

.badge--soft.badge--warning{background-color:#fffbeb;color:#d97706;border-color:#fef3c7}

.badge--soft.badge--danger{background-color:#fef2f2;color:#dc2626;border-color:#fee2e2}

.badge--soft.badge--light{background-color:#fff;color:#64748b;border-color:#e2e8f0}

.badge--soft.badge--dark{background-color:#f1f5f9;color:#0f172a;border-color:#cbd5e1}

.badge--outline{background-color:transparent;border-width:1.5px}

.badge--outline.badge--primary{color:#6366f1;border-color:#6366f1}

.badge--outline.badge--secondary{color:#64748b;border-color:#64748b}

.badge--outline.badge--success{color:#10b981;border-color:#10b981}

.badge--outline.badge--info{color:#3b82f6;border-color:#3b82f6}

.badge--outline.badge--warning{color:#f59e0b;border-color:#f59e0b}

.badge--outline.badge--danger{color:#ef4444;border-color:#ef4444}

.badge--outline.badge--light{color:#94a3b8;border-color:#cbd5e1}

.badge--outline.badge--dark{color:#1e293b;border-color:#1e293b}

.badge--ghost{background-color:transparent;border-color:transparent}

.badge--ghost.badge--primary{color:#6366f1}

.badge--ghost.badge--secondary{color:#64748b}

.badge--ghost.badge--success{color:#10b981}

.badge--ghost.badge--info{color:#3b82f6}

.badge--ghost.badge--warning{color:#f59e0b}

.badge--ghost.badge--danger{color:#ef4444}

.badge--ghost.badge--light{color:#94a3b8}

.badge--ghost.badge--dark{color:#1e293b}

.badge--pill{border-radius:10rem}

.badge--clickable{cursor:pointer;user-select:none}

.badge--clickable:hover{opacity:.85;transform:translateY(-1px)}

.badge--clickable:active{opacity:.7;transform:translateY(0)}

.badge--clickable:focus-visible{outline:2px solid currentColor;outline-offset:2px}

.pm-badge__content{display:inline-flex;align-items:center;justify-content:center;line-height:1;vertical-align:middle}

.pm-badge__icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}

.pm-badge__icon svg{width:1em;height:1em}

.pm-badge__icon--start{margin-right:-.1em}

.pm-badge__icon--end{margin-left:-.1em}

.pm-badge__dot{width:.5em;height:.5em;border-radius:50%;background-color:currentColor;margin-right:-.15em;flex-shrink:0}

.pm-badge__remove{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;margin-left:4px;margin-right:0;cursor:pointer;color:inherit;opacity:.6;transition:all .15s ease-in-out;border-radius:50%;width:16px;height:16px;flex-shrink:0}

.pm-badge__remove:hover{opacity:1;background:#0000001a;transform:scale(1.1)}

.pm-badge__remove:active{transform:scale(.9);background:#0003}

.pm-badge__remove:focus-visible{outline:2px solid currentColor;outline-offset:2px;opacity:1}

.pm-badge__remove svg{width:10px;height:10px}

.badge--removable{padding-right:4px;gap:2px}

.pm-badge-container{position:relative;display:inline-flex;align-items:center;justify-content:center}

.pm-badge-container>.pm-badge{position:absolute;z-index:10;pointer-events:auto}

.pm-badge-container--top{align-items:flex-start}

.pm-badge-container--middle{align-items:center}

.pm-badge-container--bottom{align-items:flex-end}

.pm-badge-container--left{justify-content:flex-start}

.pm-badge-container--center{justify-content:center}

.pm-badge-container--right{justify-content:flex-end}

.pm-badge-container--top.pm-badge-container--right>.pm-badge{top:0;right:0;transform:translate(50%,-50%)}

.pm-badge-container--top.pm-badge-container--left>.pm-badge{top:0;left:0;transform:translate(-50%,-50%)}

.pm-badge-container--bottom.pm-badge-container--right>.pm-badge{bottom:0;right:0;transform:translate(50%,50%)}

.pm-badge-container--bottom.pm-badge-container--left>.pm-badge{bottom:0;left:0;transform:translate(-50%,50%)}

.pm-badge-container--top.pm-badge-container--center>.pm-badge{top:0;left:50%;transform:translate(-50%,-50%)}

.pm-badge-container--bottom.pm-badge-container--center>.pm-badge{bottom:0;left:50%;transform:translate(-50%,50%)}

.pm-badge-container>.pm-badge[class*=badge--]{min-width:20px;height:20px;padding:2px 6px;font-size:11px;border-radius:10px;box-shadow:0 2px 4px #00000026}

@media(max-width:1024px)and (min-width:769px){.pm-badge{font-size:12px;padding:5px 9px}.badge--xs{font-size:.6875rem}.badge--small{font-size:.75rem}.badge--large{font-size:.9375rem}.badge--xl{font-size:1.0625rem}}

@media(max-width:768px){.pm-badge{font-size:13px;padding:6px 10px;gap:5px}.badge--xs{font-size:.75rem;padding:.2em .5em}.badge--small{font-size:.8125rem;padding:.25em .6em}.badge--medium{font-size:13px;padding:6px 10px}.badge--large{font-size:1rem;padding:.4em .8em}.badge--xl{font-size:1.125rem;padding:.5em 1em}.pm-badge-container>.pm-badge[class*=badge--]{min-width:22px;height:22px;font-size:12px;padding:3px 7px}}

@media(max-width:480px){.pm-badge{font-size:14px;padding:7px 11px}.badge--xs{font-size:.8125rem}.badge--small{font-size:.875rem}.badge--large{font-size:1.0625rem}.badge--xl{font-size:1.25rem}}

@media(hover:none)and (pointer:coarse){.badge--dismissible{padding-right:32px}.badge-close{width:24px;height:24px}}

.pm-card{position:relative;display:flex;flex-direction:column;background-color:var(--color-surface, #ffffff);margin-block-end:clamp(12px,.75rem + .25vw,16px);transition:var(--transition-all, all .3s cubic-bezier(.4, 0, .2, 1));cursor:default;overflow:hidden;box-sizing:border-box;container-type:inline-size;container-name:card}

@media(prefers-color-scheme:dark){.pm-card{background-color:var(--color-surface, #1f2937)}}

.pm-card-small{font-size:clamp(.8125rem,.75rem + .2vw,.875rem)}

.pm-card-medium{font-size:clamp(.9375rem,.875rem + .2vw,1rem)}

.pm-card-large{font-size:clamp(1.0625rem,1rem + .2vw,1.125rem)}

.pm-card-radius-none{border-radius:0}

.pm-card-radius-small,.pm-card-radius-medium{border-radius:var(--pm-card-radius)}

.pm-card-radius-large{border-radius:var(--pm-radius-lg)}

.pm-card-radius-full{border-radius:50%}

.pm-card-elevation-0{box-shadow:none}

.pm-card-elevation-1{box-shadow:var(--pm-shadow-card)}

.pm-card-elevation-2{box-shadow:var(--pm-shadow-md)}

.pm-card-elevation-3{box-shadow:var(--pm-shadow-lg)}

.pm-card-elevation-4{box-shadow:var(--shadow-xl, 0 14px 28px rgb(0 0 0 / .25), 0 10px 10px rgb(0 0 0 / .22))}

.pm-card-elevation-5{box-shadow:var(--shadow-2xl, 0 19px 38px rgb(0 0 0 / .3), 0 15px 12px rgb(0 0 0 / .22))}

.pm-card-outlined{border:1px solid var(--color-border, rgba(0, 0, 0, .12));box-shadow:none!important}

.pm-card-horizontal{flex-direction:row}

.pm-card-horizontal .pm-card-image{flex:0 0 auto;inline-size:clamp(150px,12rem + 2vw,200px);min-block-size:clamp(100px,7rem + 1vw,120px)}

.pm-card-horizontal .pm-card-content{flex:1}

.pm-card-compact{padding:12px;border:2px solid #e2e8f0;border-radius:var(--pm-radius-lg);position:relative;overflow:hidden;contain:layout style paint;will-change:transform;transform:translateZ(0);backface-visibility:hidden;box-shadow:none}

.pm-card-compact:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent-color, linear-gradient(90deg, #667eea 0%, #764ba2 100%));border-radius:var(--pm-radius-lg) var(--pm-radius-lg) 0 0;z-index:1}

.pm-card-compact:hover{border-color:#667eea;box-shadow:var(--pm-shadow-md);transform:translateY(-2px)}

.pm-card-compact.pm-card-disabled{opacity:.7}

.pm-card-compact .pm-card-content{padding:0}

.pm-compact-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}

.pm-compact-card__badge-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}

.pm-compact-card__icon-badge{width:32px;height:32px;border-radius:var(--pm-radius-md);background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}

.pm-compact-card__status-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}

.pm-compact-card__actions{display:flex;gap:6px;align-items:center}

.pm-compact-card__action-btn{width:28px;height:28px;border-radius:var(--pm-radius-sm);border:1px solid #e2e8f0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}

.pm-compact-card__action-btn:hover{background:#f8fafc;border-color:currentColor;transform:scale(1.05)}

.pm-compact-card__meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}

.pm-compact-card__chip{padding:6px 10px;background:#f1f5f9;border-radius:var(--pm-radius-md);font-size:11px;font-weight:600;color:#475569;display:flex;align-items:center;gap:4px;border:1px solid #e2e8f0}

.pm-compact-card__chip-icon{font-size:12px}

.pm-compact-card__footer{display:flex;gap:8px;margin-top:12px}

.pm-compact-card__divider{height:1px;background:#e2e8f0;margin:12px 0}

@media(prefers-color-scheme:dark){.pm-compact-card__action-btn{background:#1f2937;border-color:#374151}.pm-compact-card__action-btn:hover{background:#374151}.pm-compact-card__chip{background:#374151;color:#e5e7eb;border-color:#4b5563}}

.pm-card-elevated{background:#fff;border-radius:var(--pm-radius-xl);box-shadow:var(--pm-shadow-card);border:none;transition:all .3s cubic-bezier(.4,0,.2,1)}

.pm-card-elevated:hover{box-shadow:0 8px 16px #0000001a,0 16px 32px #0000001a;transform:translateY(-4px)}

@media(prefers-color-scheme:dark){.pm-card-elevated{background:#1f2937;box-shadow:0 4px 6px #0000004d,0 8px 16px #0000004d}.pm-card-elevated:hover{box-shadow:0 8px 16px #0006,0 16px 32px #0006}}

.pm-card-glass{background:#ffffffb3;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.25);border-radius:var(--pm-radius-xl);box-shadow:var(--pm-shadow-md);transition:all .3s cubic-bezier(.4,0,.2,1)}

.pm-card-glass:hover{background:#fffc;box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}

@media(prefers-color-scheme:dark){.pm-card-glass{background:#1f2937b3;border:1px solid rgba(255,255,255,.1)}.pm-card-glass:hover{background:#1f2937cc}}

.pm-card-featured{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:var(--pm-radius-xl);padding:24px;box-shadow:0 10px 30px #667eea4d;border:none}

.pm-card-featured .pm-card-title,.pm-card-featured .pm-card-subtitle,.pm-card-featured .pm-card-content{color:#fff}

.pm-card-featured:hover{box-shadow:0 15px 40px #667eea66;transform:translateY(-4px) scale(1.02)}

.pm-card-minimal{background:transparent;border:none;box-shadow:none;border-radius:0;padding:16px 0;border-bottom:1px solid rgba(0,0,0,.08)}

.pm-card-minimal:hover{background:#00000005;border-bottom-color:#0000001f}

@media(prefers-color-scheme:dark){.pm-card-minimal{border-bottom-color:#ffffff14}.pm-card-minimal:hover{background:#ffffff05;border-bottom-color:#ffffff1f}}

@container card (min-width: 500px){.pm-card-auto-horizontal{flex-direction:row}.pm-card-auto-horizontal .pm-card-image{inline-size:180px;min-block-size:100px}}

.pm-card-interactive{cursor:pointer;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}

.pm-card-interactive:focus{outline:none}

.pm-card-interactive:focus-visible{outline:2px solid var(--color-primary-500, #667eea);outline-offset:3px;box-shadow:0 0 0 4px #667eea1a}

.pm-card-hovered{transform:translateY(-2px)}

.pm-card-focused{transform:translateY(-1px)}

@media(prefers-reduced-motion:reduce){.pm-card,.pm-card-interactive,.pm-card-hovered,.pm-card-focused,.pm-card-compact,.pm-card-elevated,.pm-card-glass,.pm-card-featured,.pm-card-image img{transition:none;transform:none}}

.pm-card-disabled{opacity:.6;cursor:not-allowed;pointer-events:none}

.pm-card-selected{border:2px solid var(--color-primary-500, #2196f3);box-shadow:0 0 0 2px var(--color-primary-100, rgba(33, 150, 243, .2))}

.pm-card-error{border:2px solid var(--color-danger-500, #f44336);box-shadow:0 0 0 2px var(--color-danger-100, rgba(244, 67, 54, .2))}

.pm-card-loading{pointer-events:none}

.pm-card-image{width:100%;position:relative;overflow:hidden;background-color:var(--color-neutral-100, #f5f5f5);display:flex;align-items:center;justify-content:center}

.pm-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-normal, .3s) ease}

.pm-card-image:hover img{transform:scale(1.05)}

.pm-card-content{padding:var(--spacing-4, 16px);flex-grow:1;position:relative}

.pm-card-small .pm-card-content{padding:var(--spacing-3, 12px)}

.pm-card-large .pm-card-content{padding:var(--spacing-5, 20px)}

.pm-card-title{margin:0 0 var(--spacing-2, 8px);font-size:1.25em;font-weight:var(--font-weight-medium, 500);color:var(--color-text-primary, rgba(0, 0, 0, .87));line-height:var(--line-height-tight, 1.2)}

.pm-card-subtitle{margin:0 0 var(--spacing-4, 16px);font-size:var(--font-size-sm, .875em);color:var(--color-text-secondary, rgba(0, 0, 0, .6));font-weight:var(--font-weight-normal, 400);line-height:var(--line-height-snug, 1.3)}

.pm-card-text{font-size:var(--font-size-sm, .875em);color:var(--color-text-primary, rgba(0, 0, 0, .87));line-height:var(--line-height-normal, 1.5);margin-bottom:var(--spacing-4, 16px)}

.pm-card-actions{display:flex;padding:var(--spacing-2, 8px) var(--spacing-4, 16px) var(--spacing-4, 16px);align-items:center;justify-content:flex-start;gap:var(--spacing-2, 8px);flex-wrap:wrap}

.pm-card-small .pm-card-actions{padding:var(--spacing-1-5, 6px) var(--spacing-3, 12px) var(--spacing-3, 12px)}

.pm-card-large .pm-card-actions{padding:var(--spacing-3, 12px) var(--spacing-5, 20px) var(--spacing-5, 20px)}

.pm-card-ripple{position:relative;overflow:hidden}

.pm-card-ripple-container{position:absolute;inset:0;pointer-events:none;z-index:1}

.pm-card-ripple-effect{position:absolute;border-radius:50%;background-color:#0000001a;transform:scale(0);animation:ripple .6s linear;pointer-events:none}

@keyframes ripple{to{transform:scale(2);opacity:0}}

.pm-card-loading-overlay{position:absolute;inset:0;background-color:var(--color-overlay, rgba(255, 255, 255, .8));display:flex;align-items:center;justify-content:center;z-index:10}

.pm-card-spinner{width:24px;height:24px;border:2px solid var(--color-neutral-300, #e0e0e0);border-top:2px solid var(--color-primary-500, #2196f3);border-radius:50%;animation:spin 1s linear infinite}

@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}

.pm-card-error-indicator,.pm-card-selected-indicator{position:absolute;top:var(--spacing-2, 8px);right:var(--spacing-2, 8px);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs, 12px);font-weight:var(--font-weight-bold, bold);z-index:5}

.pm-card-error-indicator{background-color:var(--color-danger-500, #f44336);color:var(--color-white, white)}

.pm-card-selected-indicator{background-color:var(--color-success-500, #4caf50);color:var(--color-white, white)}

.pm-skeleton-text,.pm-skeleton-button,.pm-skeleton-image{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}

.pm-skeleton-text{height:1em;margin-bottom:.5em;display:block}

.pm-skeleton-text.short{width:60%}

.pm-skeleton-button{height:32px;width:80px;border-radius:16px}

.pm-skeleton-image{width:100%;height:200px}

.pm-skeleton-actions{display:flex;gap:8px}

@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}

.pm-card-compact .pm-card-content{padding:var(--spacing-3, 12px)}

.pm-card-compact .pm-card-title{font-size:1em;margin-bottom:var(--spacing-1, 4px)}

.pm-card-compact .pm-card-subtitle,.pm-card-compact .pm-card-text{font-size:var(--font-size-xs, .75em);margin-bottom:var(--spacing-2, 8px)}

.pm-card-featured{border:2px solid var(--color-primary-500, #2196f3);background:linear-gradient(135deg,var(--color-primary-50, #e3f2fd) 0%,var(--color-surface, #ffffff) 100%)}

.pm-card-minimal{box-shadow:none;border:none;background:transparent}

.pm-card-minimal .pm-card-content{padding:var(--spacing-2, 8px) 0}

@media(max-width:768px){.pm-card-horizontal{flex-direction:column}.pm-card-horizontal .pm-card-image{width:100%;min-height:200px}.pm-card-large .pm-card-content{padding:16px}.pm-card-large .pm-card-actions{padding:8px 16px 16px}}

@media(prefers-color-scheme:dark){.pm-card{background-color:var(--color-surface-dark, #1e1e1e);color:var(--color-text-primary-dark, rgba(255, 255, 255, .87))}.pm-card-title{color:var(--color-text-primary-dark, rgba(255, 255, 255, .87))}.pm-card-subtitle{color:var(--color-text-secondary-dark, rgba(255, 255, 255, .6))}.pm-card-text{color:var(--color-text-primary-dark, rgba(255, 255, 255, .87))}.pm-card-outlined{border-color:var(--color-border-dark, rgba(255, 255, 255, .12))}.pm-card-image{background-color:var(--color-neutral-800, #2e2e2e)}.pm-skeleton-text,.pm-skeleton-button,.pm-skeleton-image{background:linear-gradient(90deg,var(--color-neutral-800, #2e2e2e) 25%,var(--color-neutral-700, #3e3e3e) 50%,var(--color-neutral-800, #2e2e2e) 75%);background-size:200% 100%}}

@media(prefers-contrast:high){.pm-card{border:2px solid}.pm-card-interactive:focus{outline:3px solid;outline-offset:2px}}

.pm-card-flippable{perspective:1000px}

.pm-card-flip-container{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}

.pm-card-flipped .pm-card-flip-container{transform:rotateY(180deg)}

.pm-card-flip-vertical.pm-card-flipped .pm-card-flip-container{transform:rotateX(180deg)}

.pm-card-front,.pm-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column}

.pm-card-back{transform:rotateY(180deg)}

.pm-card-flip-vertical .pm-card-back{transform:rotateX(180deg)}

.pm-card-flip-indicator{position:absolute;top:var(--spacing-2, 8px);right:var(--spacing-2, 8px);width:28px;height:28px;background:var(--color-neutral-900, rgba(0, 0, 0, .6));color:var(--color-white, white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm, 14px);opacity:.7;transition:opacity var(--duration-normal, .3s) ease;z-index:10;pointer-events:none}

.pm-card-flippable:hover .pm-card-flip-indicator{opacity:1}

.pm-card-flip-icon{display:inline-block;transition:transform var(--duration-normal, .3s) ease}

.pm-card-flipped .pm-card-flip-icon{transform:scaleX(-1)}

@media(max-width:768px){.pm-card-flip-container{transition:transform var(--duration-slow, .4s) ease}.pm-card-flip-indicator{width:32px;height:32px;font-size:var(--font-size-base, 16px);top:var(--spacing-3, 12px);right:var(--spacing-3, 12px)}}

@media(hover:none)and (pointer:coarse){.pm-card-flip-indicator{opacity:.8}.pm-card-flippable:active{transform:scale(.98)}}

.pm-card-flippable[role=button]:focus .pm-card-flip-indicator{opacity:1;box-shadow:0 0 0 2px var(--color-primary-500, #2196f3)}

.pm-card-flippable,.pm-card-flip-container{will-change:transform}

@media(prefers-reduced-motion:reduce){.pm-card,.pm-card-image img,.pm-card-ripple-effect{transition:none;animation:none}.pm-card-hovered,.pm-card-focused{transform:none}.pm-card-flip-container{transition:none}.pm-card-flipped .pm-card-flip-container{transform:none}.pm-card-front,.pm-card-back{position:relative;backface-visibility:visible;-webkit-backface-visibility:visible}.pm-card-back{transform:none;margin-top:var(--spacing-5, 20px);border-top:1px solid var(--color-border, #e0e0e0);padding-top:var(--spacing-5, 20px)}}

@media(max-width:768px){.pm-card-horizontal{flex-direction:column}.pm-card-horizontal .pm-card-image{width:100%;min-height:180px}.pm-card-title,.pm-card-content{padding:var(--spacing-3-5, 14px)}.pm-card-actions{padding:var(--spacing-3, 12px) var(--spacing-3-5, 14px)}.pm-card-image{min-height:160px}.pm-card-small{font-size:.8125rem}.pm-card-medium{font-size:.9375rem}.pm-card-large{font-size:1.0625rem}}

@media(max-width:480px){.pm-card{margin-bottom:var(--spacing-3, 12px)}.pm-card-title,.pm-card-content{padding:var(--spacing-3, 12px)}.pm-card-actions{padding:var(--spacing-2-5, 10px) var(--spacing-3, 12px);flex-wrap:wrap;gap:var(--spacing-2, 8px)}.pm-card-actions>*{flex:1 1 auto;min-width:fit-content}.pm-card-image{min-height:140px}.pm-card-small{font-size:var(--font-size-xs, .75rem)}.pm-card-medium{font-size:var(--font-size-sm, .875rem)}.pm-card-large{font-size:var(--font-size-base, 1rem)}.pm-card-radius-large{border-radius:var(--radius-md, 10px)}.pm-card-radius-full{border-radius:var(--radius-lg, 12px)}.pm-card-horizontal{flex-direction:column}.pm-card-horizontal .pm-card-image{inline-size:100%;min-block-size:200px}.pm-card-compact{padding:14px}.pm-compact-card__header{flex-direction:column;align-items:flex-start;gap:10px}.pm-compact-card__actions{width:100%;justify-content:flex-end}.pm-compact-card__action-btn{min-width:44px;min-height:44px}.pm-card-content,.pm-card-header,.pm-card-footer{padding:16px}.pm-card-actions{flex-direction:column;gap:8px}.pm-card-actions button,.pm-card-actions a{width:100%;justify-content:center}}

@media(max-width:480px){.pm-card{margin-block-end:12px}.pm-card-compact{padding:12px}.pm-card-content,.pm-card-header,.pm-card-footer{padding:14px}.pm-card-horizontal .pm-card-image{min-block-size:180px}}

@media(hover:none)and (pointer:coarse){.pm-card-interactive{min-height:44px}.pm-card-actions button,.pm-card-actions a{min-height:44px;padding:10px 16px}.pm-card-interactive:hover,.pm-card-hovered{transform:none}.pm-card-interactive:active{transform:scale(.98)}}

.pm-card-interactive,.pm-card-actions button,.pm-card-actions a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

.pm-card-scrollable{-webkit-overflow-scrolling:touch}

@supports (padding-bottom: env(safe-area-inset-bottom)){.pm-card-fixed-bottom{margin-bottom:env(safe-area-inset-bottom)}.pm-card-sticky-top{margin-top:env(safe-area-inset-top)}}

@media(prefers-reduced-motion:reduce){.pm-card,.pm-card-interactive,.pm-card-image{animation:none;transition:none}}

.mbsc-button-group{display:inline-flex;vertical-align:middle;position:relative}

.mbsc-button-group-horizontal{flex-direction:row}

.mbsc-button-group-vertical{flex-direction:column}

.mbsc-button-group-full-width,.mbsc-button-group-justified{width:100%}

.mbsc-button-group-justified>.mbsc-button{flex:1 1 0%}

.mbsc-button-group-no-gap .mbsc-button{margin:0}

.mbsc-button-group-horizontal.mbsc-button-group-no-gap .mbsc-button-group-middle,.mbsc-button-group-horizontal.mbsc-button-group-no-gap .mbsc-button-group-last{margin-left:-1px}

.mbsc-button-group-vertical.mbsc-button-group-no-gap .mbsc-button-group-middle,.mbsc-button-group-vertical.mbsc-button-group-no-gap .mbsc-button-group-last{margin-top:-1px}

.mbsc-button-group-horizontal:not(.mbsc-button-group-no-gap) .mbsc-button{border-radius:4px}

.mbsc-button-group-vertical:not(.mbsc-button-group-no-gap) .mbsc-button{border-radius:4px}

.mbsc-button-group-horizontal.mbsc-button-group-no-gap .mbsc-button-group-first{border-top-right-radius:0;border-bottom-right-radius:0}

.mbsc-button-group-horizontal.mbsc-button-group-no-gap .mbsc-button-group-middle{border-radius:0}

.mbsc-button-group-horizontal.mbsc-button-group-no-gap .mbsc-button-group-last{border-top-left-radius:0;border-bottom-left-radius:0}

.mbsc-button-group-vertical.mbsc-button-group-no-gap .mbsc-button-group-first{border-bottom-left-radius:0;border-bottom-right-radius:0}

.mbsc-button-group-vertical.mbsc-button-group-no-gap .mbsc-button-group-middle{border-radius:0}

.mbsc-button-group-vertical.mbsc-button-group-no-gap .mbsc-button-group-last{border-top-left-radius:0;border-top-right-radius:0}

.mbsc-button-group-no-rounded .mbsc-button{border-radius:0}

.mbsc-button-group-radio .mbsc-button-active,.mbsc-button-group-checkbox .mbsc-button-active{z-index:1}

.mbsc-button-group-radio .mbsc-button:focus,.mbsc-button-group-checkbox .mbsc-button:focus{z-index:2}

.mbsc-button-group .mbsc-button-outline.mbsc-button-active{border-color:currentColor;background-color:rgba(var(--button-color-rgb, 0, 0, 0),.1)}

.mbsc-button-group-advanced{--group-animation-delay: .1s;--group-hover-scale: 1.02;--group-transition-duration: .3s}

.mbsc-button-group-animation-subtle{--group-animation-delay: .05s;--group-hover-scale: 1.01;--group-transition-duration: .2s}

.mbsc-button-group-animation-medium{--group-animation-delay: .1s;--group-hover-scale: 1.02;--group-transition-duration: .3s}

.mbsc-button-group-animation-high{--group-animation-delay: .15s;--group-hover-scale: 1.03;--group-transition-duration: .4s}

.mbsc-button-group-hover-low{--group-hover-scale: 1.005}

.mbsc-button-group-hover-high{--group-hover-scale: 1.04}

.mbsc-button-group-advanced-variant{position:relative;overflow:hidden}

.mbsc-button-group-advanced-variant:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#ffffff1a,#ffffff0d,#ffffff1a);border-radius:inherit;z-index:-1;opacity:0;transition:opacity var(--group-transition-duration, .3s) ease}

.mbsc-button-group-advanced-variant:hover:before{opacity:1}

.mbsc-button-group-advanced .mbsc-button-group-item{animation-delay:calc(var(--group-animation-delay, .1s) * var(--item-index, 0))}

.mbsc-button-group-advanced .mbsc-button-group-first{--item-index: 0}

.mbsc-button-group-advanced .mbsc-button-group-middle{--item-index: 1}

.mbsc-button-group-advanced .mbsc-button-group-last{--item-index: 2}

.mbsc-button-group-advanced .mbsc-button-group-item:focus-visible{transform:scale(var(--group-hover-scale, 1.02));z-index:10;transition:transform var(--group-transition-duration, .3s) ease}

.mbsc-button-group-advanced:hover .mbsc-button-group-item{transform:translateY(-1px);transition:transform var(--group-transition-duration, .3s) ease}

.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-gradient{position:relative;z-index:1}

.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-particles{overflow:visible}

.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-glow{margin:2px}

.mbsc-button-group-no-gap.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-glow{margin:0}

.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-neon{filter:drop-shadow(0 0 5px currentColor)}

.mbsc-button-group-advanced-variant .mbsc-button-group-item.advanced-button-morphing{transition-delay:calc(var(--group-animation-delay, .1s) * var(--item-index, 0))}

.mbsc-button-group-disabled.mbsc-button-group-advanced{opacity:.6;pointer-events:none}

.mbsc-button-group-disabled.mbsc-button-group-advanced .mbsc-button-group-item{transform:none!important;animation:none!important}

@media(max-width:768px){.mbsc-button-group-advanced{--group-hover-scale: 1.01;--group-transition-duration: .2s}.mbsc-button-group-advanced:hover .mbsc-button-group-item{transform:none}}

@media(prefers-reduced-motion:reduce){.mbsc-button-group-advanced{--group-animation-delay: 0s;--group-hover-scale: 1;--group-transition-duration: .1s}.mbsc-button-group-advanced .mbsc-button-group-item{animation:none!important;transition-duration:.1s!important}.mbsc-button-group-advanced:hover .mbsc-button-group-item{transform:none!important}}

.form-field{position:relative;display:inline-flex;flex-direction:column;margin-bottom:1rem;gap:0!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;overflow:visible;z-index:auto}

.form-field--full-width{width:100%}

.form-field--transparent{border:none!important;padding:0!important;background:transparent!important;box-shadow:none!important;margin-bottom:20px!important}

.form-field:has(.pm-radio-field-horizontal){display:block!important;width:100%!important;max-width:none!important;flex:none!important}

.form-field:has(.pm-radio-field-horizontal) .pm-radio-field{display:block!important;width:100%!important}

.form-field--small{font-size:.875rem}

.form-field--small .form-field__input{padding:.25rem .5rem;min-height:calc(1.5em + .5rem + 2px)}

.form-field--medium{font-size:1rem}

.form-field--medium .form-field__input{padding:.375rem .75rem;min-height:calc(1.5em + .75rem + 2px)}

.form-field--large{font-size:1.25rem}

.form-field--large .form-field__input{padding:.5rem 1rem;min-height:calc(1.5em + 1rem + 2px)}

.form-field__start-icon,.form-field__end-icon{display:flex;align-items:center;justify-content:center;color:var(--bs-secondary-color,#6c757d);flex-shrink:0;width:1rem;height:1rem}

.form-field__start-icon svg,.form-field__end-icon svg{width:1rem!important;height:1rem!important;max-width:1rem!important;max-height:1rem!important;display:block}

.form-field__label-container,.pm-textfield-label-container{display:flex;align-items:flex-start;gap:6px;margin-bottom:6px}

.select-field .pm-textfield-label-container{gap:0px}

.form-field__label{display:inline!important;margin-bottom:0!important;font-weight:400!important;font-size:clamp(.875rem,1.5vw,.9375rem)!important;line-height:1.5!important;color:#374151!important;letter-spacing:.01em!important;transition:none!important;flex-shrink:1!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif!important}

.form-field__help-icon{color:#6b7280;cursor:help;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:16px;height:16px;flex-shrink:0;background:transparent;border:1.5px solid #d1d5db;margin-top:-2px;box-shadow:none}

.form-field__help-icon svg{width:12px;height:12px;display:block}

.form-field__help-icon:hover{background:transparent;border-color:#3b82f6;color:#3b82f6;box-shadow:0 1px 3px #00000014,0 0 0 3px #3b82f61a;transform:scale(1.05)}

.form-field[data-theme=dark] .form-field__label{color:var(--bs-body-color, #dee2e6)}

.form-field[data-theme=dark] .form-field__help-icon{color:#9ca3af}

.form-field[data-theme=dark] .form-field__help-icon:hover{color:#60a5fa}

.form-field__label--floating{position:static!important;transform:none!important;margin-bottom:.375rem;font-size:1rem!important;padding:0!important;background:transparent!important;color:var(--bs-body-color, #212529)!important;pointer-events:auto;z-index:auto}

.form-field[data-theme=dark] .form-field__label--floating{color:var(--bs-body-color, #dee2e6)!important;background:transparent!important}

.form-field__required{color:#9ca3af!important;margin-left:2px;font-weight:400;font-size:.875em}

.form-field__input-container{position:relative;display:flex;align-items:center;gap:8px}

.form-field__input-wrapper{position:relative;flex:1;display:flex;align-items:center}

.form-field__input{width:100%;border:none;outline:none;font-family:inherit;font-size:inherit;background:transparent;color:var(--bs-body-color, #212529);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}

.form-field[data-theme=dark] .form-field__input{color:var(--bs-body-color, #dee2e6)}

.form-field__input::placeholder{color:var(--bs-secondary-color, #6c757d);opacity:1}

.form-field__input:disabled{cursor:not-allowed;opacity:1;background-color:var(--bs-input-disabled-bg, #e9ecef)}

.form-field--outline .form-field__input-container,.form-field--filled .form-field__input-container,.form-field--underline .form-field__input-container,.form-field--box .form-field__input-container,.form-field__input-container{border:1.5px solid #d1d5db;border-radius:.5rem;padding:0 .75rem;background:#fff;transition:all .2s ease}

.form-field[data-theme=dark] .form-field__input-container{border-color:var(--bs-border-color, #495057);background:var(--bs-body-bg, #212529)}

.form-field--focused .form-field__input-container{border-color:#3b82f6;outline:0;box-shadow:0 0 0 3px #3b82f61a}

.form-field--error .form-field__input-container{border-color:#ef4444!important;border-width:1.5px!important}

.form-field--error.form-field--focused .form-field__input-container{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important}

.form-field--success .form-field__input-container{border-color:#10b981!important;border-width:1.5px!important}

.form-field--success.form-field--focused .form-field__input-container{border-color:#10b981!important;box-shadow:0 0 0 3px #10b9811a!important}

.form-field__start-icon{margin-right:.5rem}

.form-field__end-icon{margin-left:.5rem}

.form-field__prefix,.form-field__suffix{color:var(--bs-body-color, #212529);font-weight:400;flex-shrink:0}

.form-field__prefix{margin-right:.25rem}

.form-field__suffix{margin-left:.25rem}

.form-field__clear{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border:none;background:transparent;color:var(--bs-secondary-color, #6c757d);font-size:1rem;line-height:1;cursor:pointer;border-radius:.25rem;transition:color .15s ease-in-out;padding:0;margin-left:.25rem}

.form-field__clear:hover{color:var(--bs-body-color, #212529)}

.form-field__spinner{width:1rem;height:1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-border .75s linear infinite;color:var(--bs-primary, #0d6efd)}

@keyframes spinner-border{to{transform:rotate(360deg)}}

@keyframes slideInError{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.form-field__footer{display:flex;justify-content:space-between;align-items:start;margin-top:0;gap:.5rem}

.form-field__messages{flex:1}

.form-field__error-message{color:#dc2626!important;font-size:.875rem!important;line-height:1.5!important;margin-top:6px!important;font-weight:500!important;letter-spacing:.01em!important;display:flex!important;align-items:flex-start!important;gap:.5rem!important;animation:slideInError .2s cubic-bezier(.4,0,.2,1)!important}

.form-field__error-message:before{content:"";display:inline-block;width:18px;height:18px;flex-shrink:0;margin-top:2px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23dc2626' stroke='none'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}

.form-field__success-message{color:var(--bs-success, #198754);font-size:.875em;margin-top:0}

.form-field__helper-text{color:#6b7280;font-size:clamp(.8125rem,1.4vw,.875rem);line-height:1.5;margin-top:.25rem;font-weight:400;letter-spacing:.01em}

.form-field__counter{color:var(--bs-secondary-color, #6c757d);font-size:.875em;margin-top:.25rem;white-space:nowrap}

.form-field--disabled{opacity:.6;pointer-events:none}

.form-field--readonly .form-field__input{cursor:default}

.form-field--validating .form-field__input-container{opacity:.7}

.form-field__label-with-help{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}

.form-field__help-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;color:var(--bs-info, #0dcaf0);cursor:help;transition:color .15s ease-in-out;flex-shrink:0}

.form-field__help-icon:hover{color:var(--bs-primary, #0d6efd)}

.form-field__help-icon svg{width:1rem;height:1rem;display:block}

.form-field-with-help{position:relative}

.form-field-with-help__content{display:flex;flex-direction:column;gap:.25rem}

.form-field-with-help__validation-info{font-size:.75rem;color:var(--bs-secondary-color, #6c757d);margin-top:.25rem}

.form-field-with-help__radio-group{display:flex;flex-direction:column;gap:.5rem}

.form-field-with-help__radio-option{display:flex;align-items:center;gap:.5rem;padding:.25rem 0}

.form-field-with-help__radio-input{margin:0;width:1rem;height:1rem;accent-color:var(--bs-primary, #0d6efd)}

.form-field-with-help__radio-label{margin:0;cursor:pointer;user-select:none}

.form-field-with-help__checkbox-container{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}

.form-field-with-help__checkbox-input{margin:0;margin-top:.125rem;width:1rem;height:1rem;accent-color:var(--bs-primary, #0d6efd);flex-shrink:0}

.form-field-with-help__checkbox-label{margin:0;cursor:pointer;user-select:none;line-height:1.25}

.form-field-with-help__select{width:100%;border:1px solid var(--bs-border-color, #dee2e6);border-radius:.375rem;padding:.375rem .75rem;background:var(--bs-body-bg, #ffffff);color:var(--bs-body-color, #212529);font-family:inherit;font-size:inherit;cursor:pointer;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}

.form-field-with-help__select:focus{border-color:var(--bs-input-focus-border-color, #86b7fe);outline:0;box-shadow:0 0 0 .25rem #0d6efd40}

.form-field-with-help__textarea{width:100%;border:1px solid var(--bs-border-color, #dee2e6);border-radius:.375rem;padding:.375rem .75rem;background:var(--bs-body-bg, #ffffff);color:var(--bs-body-color, #212529);font-family:inherit;font-size:inherit;resize:vertical;min-height:2.5rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}

.form-field-with-help__textarea:focus{border-color:var(--bs-input-focus-border-color, #86b7fe);outline:0;box-shadow:0 0 0 .25rem #0d6efd40}

.form-field-with-help--error .form-field__input,.form-field-with-help--error .form-field-with-help__select,.form-field-with-help--error .form-field-with-help__textarea{border-color:var(--bs-danger, #dc3545)}

.form-field-with-help--error .form-field__input:focus,.form-field-with-help--error .form-field-with-help__select:focus,.form-field-with-help--error .form-field-with-help__textarea:focus{box-shadow:0 0 0 .25rem #dc354540}

.form-field-with-help--success .form-field__input,.form-field-with-help--success .form-field-with-help__select,.form-field-with-help--success .form-field-with-help__textarea{border-color:var(--bs-success, #198754)}

.form-field-with-help--success .form-field__input:focus,.form-field-with-help--success .form-field-with-help__select:focus,.form-field-with-help--success .form-field-with-help__textarea:focus{box-shadow:0 0 0 .25rem #19875440}

.form-field[data-theme=dark] .form-field-with-help__select,.form-field[data-theme=dark] .form-field-with-help__textarea{border-color:var(--bs-border-color, #495057);background:var(--bs-body-bg, #212529);color:var(--bs-body-color, #dee2e6)}

@media(max-width:768px){.form-field{font-size:1rem}.form-field__label-with-help{flex-direction:column;align-items:flex-start;gap:.25rem}.form-field-with-help__checkbox-container{align-items:flex-start}}

.pm-textfield-wrapper input,.pm-textfield-wrapper input:focus,.pm-textfield-wrapper input:active,.pm-textfield-wrapper input:hover{-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;outline:none!important}

.pm-textfield-wrapper{position:relative;display:block;width:100%;box-sizing:border-box;margin:0;padding:0;line-height:0}

.pm-textfield-input-container{position:relative;display:flex;align-items:center}

.pm-textfield-label{display:block;font-weight:400;color:#374151;margin-block-end:clamp(.25rem,.2rem + .2vw,.375rem);font-size:clamp(.875rem,.8125rem + .3vw,.9375rem);line-height:1.5;letter-spacing:.01em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}

@media(prefers-color-scheme:dark){.pm-textfield-label{color:#d1d5db}}

.pm-textfield-label-stacked .pm-textfield-label{display:block;margin-bottom:.5rem;font-weight:400;color:#374151}

.pm-textfield-label-inline .pm-textfield-inline-container{display:flex;align-items:center;gap:clamp(.75rem,.5rem + .5vw,1rem)}

.pm-textfield-label-inline .pm-textfield-label{margin-block-end:0;white-space:nowrap;min-inline-size:clamp(100px,6rem + 1vw,120px);flex-shrink:0}

.pm-textfield-label-inline .pm-textfield-input-container{flex:1}

.pm-textfield-label-floating .pm-textfield-input-container{position:relative}

.pm-textfield-label-floating .pm-textfield-label{position:absolute;inset-inline-start:.75rem;inset-block-start:50%;transform:translateY(-50%);background-color:#fff;padding-inline:.25rem;color:#6b7280;font-weight:400;pointer-events:none;transition:all .15s ease-in-out;z-index:1;margin-block-end:0;font-size:clamp(.8125rem,.75rem + .15vw,.875rem)}

@media(prefers-color-scheme:dark){.pm-textfield-label-floating .pm-textfield-label{background-color:#1f2937;color:#9ca3af}}

.pm-textfield-label-floating .pm-textfield:where(:focus,:not(:placeholder-shown))+.pm-textfield-label,.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-label{inset-block-start:0;inset-inline-start:.75rem;transform:translateY(-50%);font-size:clamp(.6875rem,.625rem + .15vw,.75rem);color:#3b82f6;font-weight:500}

.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-label{inset-inline-start:0;background-color:transparent;padding:0}

.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield:where(:focus,:not(:placeholder-shown))+.pm-textfield-label,.pm-textfield-style-underline.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-label{inset-inline-start:0;inset-block-start:-.5rem;transform:translateY(0);font-size:clamp(.6875rem,.625rem + .15vw,.75rem);font-weight:500;color:#3b82f6}

.pm-textfield-style-outline.pm-textfield-label-floating .pm-textfield:focus+.pm-textfield-label,.pm-textfield-style-outline.pm-textfield-label-floating .pm-textfield:not(:placeholder-shown)+.pm-textfield-label,.pm-textfield-style-outline.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-label{top:0;left:.75rem}

.pm-textfield-wrapper.pm-textfield-label-floating .pm-textfield-has-icon-left+.pm-textfield-label{inset-inline-start:2.5rem!important}

.pm-textfield-wrapper.pm-textfield-label-floating .pm-textfield-has-icon-left:where(:focus,:not(:placeholder-shown))+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-has-icon-left+.pm-textfield-label{inset-inline-start:2.5rem!important}

.pm-textfield-wrapper.pm-textfield-label-floating .pm-textfield-has-icon-right+.pm-textfield-label{max-width:calc(100% - 3.25rem)!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}

.pm-textfield-wrapper.pm-textfield-label-floating .pm-textfield-has-icon-right:focus+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-label-floating .pm-textfield-has-icon-right:not(:placeholder-shown)+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-has-icon-right+.pm-textfield-label{max-width:calc(100% - 3.25rem)!important}

.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-left+.pm-textfield-label{left:2rem!important}

.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-left:focus+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-left:not(:placeholder-shown)+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-has-icon-left+.pm-textfield-label{left:2rem!important;top:-.5rem;transform:translateY(0);font-size:.75rem;font-weight:500;color:#3b82f6}

.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-right+.pm-textfield-label{max-width:calc(100% - 3rem)!important}

.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-right:focus+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating .pm-textfield-has-icon-right:not(:placeholder-shown)+.pm-textfield-label,.pm-textfield-wrapper.pm-textfield-style-underline.pm-textfield-label-floating.pm-textfield-has-value .pm-textfield-has-icon-right+.pm-textfield-label{max-width:calc(100% - 3rem)!important;top:-.5rem;transform:translateY(0);font-size:.75rem;font-weight:500;color:#3b82f6}

.pm-textfield-input-container{position:relative;display:flex;align-items:center;width:100%;box-sizing:border-box}

.pm-textfield{display:block;width:100%;min-height:44px;height:auto;padding:.75rem .875rem;font-size:clamp(.9375rem,1.8vw,1rem);font-weight:400;line-height:1.5;letter-spacing:.01em;color:#1f2937;background-color:#fff;background-clip:padding-box;border:1.5px solid #d1d5db;border-radius:.5rem!important;box-sizing:border-box;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}

.pm-textfield.pm-textfield-has-icon-left{padding-left:2.5rem}

.pm-textfield.pm-textfield-has-icon-right{padding-right:2.5rem}

.pm-textfield-style-box .pm-textfield{background-color:#fff;border:1.5px solid #d1d5db;border-radius:.5rem!important}

.pm-textfield-style-box .pm-textfield:hover:not(:disabled):not(.pm-error){border-color:#9ca3af;box-shadow:0 1px 3px #0000001a}

.pm-textfield-style-box .pm-textfield:focus{background-color:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}

.pm-textfield-style-outline .pm-textfield{background-color:transparent;border:2px solid #d1d5db;border-radius:.5rem!important}

.pm-textfield-style-outline .pm-textfield:hover:not(:disabled):not(.pm-error){border-color:#9ca3af;box-shadow:0 1px 3px #0000001a}

.pm-textfield-style-outline .pm-textfield:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}

.pm-textfield-style-underline .pm-textfield{background-color:#e1f5fe!important;border:none;border-bottom:4px solid #2196f3!important;border-radius:0!important;padding-left:0;padding-right:0}

.pm-textfield-style-underline .pm-textfield:focus{border-bottom-color:#3b82f6;box-shadow:0 2px #3b82f633}

.pm-textfield:hover:not(:disabled):not(.pm-error){border-color:#9ca3af;box-shadow:0 1px 3px #0000001a}

.pm-textfield:focus{color:#1f2937;background-color:#fff;border-color:#3b82f6;border-radius:.5rem!important;outline:0!important;box-shadow:0 0 0 3px #3b82f61a;-webkit-appearance:none;-moz-appearance:none;appearance:none}

.pm-textfield:disabled{background-color:#e9ecef;opacity:1;cursor:not-allowed}

.pm-textfield:disabled::placeholder{color:#6c757d;opacity:1}

.pm-textfield::placeholder{color:#9ca3af;opacity:1;font-weight:400}

.pm-textfield.pm-error,.pm-textfield.pm-textfield-error{border:1.5px solid #ef4444!important;border-color:#ef4444!important}

.pm-textfield.pm-error:focus,.pm-textfield.pm-textfield-error:focus{border:1.5px solid #ef4444!important;border-color:#ef4444!important;border-radius:.5rem!important;outline:0!important;box-shadow:0 0 0 3px #ef44441a!important}

.pm-textfield.pm-textfield-success{border:1.5px solid #10b981!important;border-color:#10b981!important}

.pm-textfield.pm-textfield-success:focus{border:1.5px solid #10b981!important;border-color:#10b981!important;border-radius:.5rem!important;outline:0!important;box-shadow:0 0 0 3px #10b9811a!important}

.pm-textfield-size-small .pm-textfield{height:1.875rem;padding:.25rem .5rem;font-size:.75rem;border-radius:.2rem!important}

.pm-textfield-size-small .pm-textfield:focus{border-radius:.2rem!important;outline:0!important}

.pm-textfield-size-large .pm-textfield{height:2.875rem;padding:.5rem 1rem;font-size:1rem;border-radius:.3rem!important}

.pm-textfield-size-large .pm-textfield:focus{border-radius:.3rem!important;outline:0!important}

.pm-textfield-variant-currency .pm-textfield{text-align:right;padding-left:2.5rem!important;padding-right:1rem!important}

.pm-textfield-variant-currency .pm-textfield-prefix{position:absolute!important;left:.75rem!important;top:50%!important;transform:translateY(-50%)!important;color:#6b7280!important;font-weight:400!important;font-size:1rem!important;line-height:1!important;z-index:10!important;pointer-events:none!important;display:flex!important;align-items:center!important;justify-content:center!important}

.pm-textfield-prefix,.pm-textfield-suffix{position:absolute;top:50%;transform:translateY(-50%);color:#6c757d;font-size:.875rem;pointer-events:none;z-index:2}

.pm-textfield-prefix{left:.75rem}

.pm-textfield-suffix{right:.75rem}

.pm-textfield-has-prefix .pm-textfield{padding-left:2.5rem}

.pm-textfield-has-suffix .pm-textfield{padding-right:2.5rem}

.pm-textfield-variant-url .pm-textfield{padding-left:4rem!important}

.pm-textfield-variant-url .pm-textfield-prefix{color:#007bff;font-weight:500}

.pm-textfield-variant-email .pm-textfield-prefix{color:#17a2b8}

.pm-textfield-variant-tel .pm-textfield{text-align:left}

.pm-textfield-variant-ssn .pm-textfield,.pm-textfield-variant-creditCard .pm-textfield,.pm-textfield-variant-zipCode .pm-textfield{text-align:center;font-family:Courier New,monospace;letter-spacing:.5px}

.pm-textfield-variant-number .pm-textfield{text-align:right}

.pm-textfield-variant-search .pm-textfield{border-radius:1.5rem!important}

.pm-textfield-variant-search .pm-textfield:focus{border-radius:1.5rem!important;outline:0!important}

.pm-textfield-variant-username .pm-textfield-prefix{color:#6f42c1}

.pm-textfield-variant-password .pm-textfield{letter-spacing:.125rem}

.pm-textfield-clear,.pm-textfield-password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border:none;background:transparent;color:#6c757d;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:color .15s ease-in-out;z-index:2}

.pm-textfield-clear:hover,.pm-textfield-password-toggle:hover{color:#495057}

.pm-textfield-clear svg,.pm-textfield-password-toggle svg{width:1rem;height:1rem;fill:currentColor}

.pm-textfield-icon-wrapper{position:absolute;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:#6c757d;z-index:2}

.pm-textfield-icon-left{left:.75rem}

.pm-textfield-icon-right{right:.75rem}

.pm-textfield-icon-wrapper svg{width:1rem;height:1rem;fill:currentColor}

@media(max-width:480px){.pm-textfield{font-size:1rem;height:2.75rem;padding:.5rem .75rem}.pm-textfield-label{font-size:.875rem}.pm-textfield-label-inline .pm-textfield-inline-container{flex-direction:column;align-items:stretch;gap:.5rem}.pm-textfield-label-inline .pm-textfield-label{min-width:auto;margin-bottom:0}}

@media(min-width:481px)and (max-width:768px){.pm-textfield{font-size:.9375rem;height:2.625rem}.pm-textfield-label-inline .pm-textfield-inline-container{gap:.75rem}}

@media(min-width:769px){.pm-textfield{font-size:.875rem;height:2.5rem}.pm-textfield-style-box .pm-textfield:hover{border-color:#9ca3af}.pm-textfield-style-outline .pm-textfield:hover{border-color:#6b7280}.pm-textfield-style-underline .pm-textfield:hover{border-bottom-color:#6b7280}}

@media(hover:none)and (pointer:coarse){.pm-textfield{min-height:44px;font-size:1rem}.pm-textfield-label{font-size:.875rem;line-height:1.5}.pm-textfield:hover{border-color:inherit}}

@media(max-width:768px)and (orientation:landscape){.pm-textfield{height:2.5rem}}

.pm-required{color:#dc3545!important;margin-left:.125rem;font-weight:600}

.pm-error-message{color:#dc3545!important;font-size:.875rem;margin-top:.25rem;font-weight:500;display:block}

.pm-helper-text{color:#6c757d;font-size:.875rem;margin-top:.25rem}

.pm-textfield-full-width{width:100%}

.pm-textfield-compact{margin-bottom:.5rem}

.pm-textfield-spaced{margin-bottom:1.5rem}

.pm-textfield{-webkit-appearance:none;appearance:none}

.pm-textfield{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

.pm-textfield[type=textarea]{-webkit-overflow-scrolling:touch}

@supports (padding-bottom: env(safe-area-inset-bottom)){.pm-textfield-fixed-bottom{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.pm-textfield-sticky-top{padding-top:calc(16px + env(safe-area-inset-top))}}

@media(prefers-reduced-motion:reduce){.pm-textfield,.pm-textfield-icon,.pm-textfield-label{animation:none;transition:none}}

:root{--input-height-2xs: 24px;--input-height-xs: 28px;--input-height-sm: 32px;--input-height-md: 36px;--input-height-lg: 40px;--input-height-xl: 48px;--input-height-2xl: 56px;--input-font-2xs: 11px;--input-font-xs: 12px;--input-font-sm: 13px;--input-font-md: 14px;--input-font-lg: 16px;--input-font-xl: 18px;--input-font-2xl: 20px;--input-padding-x-2xs: 6px;--input-padding-x-xs: 8px;--input-padding-x-sm: 10px;--input-padding-x-md: 12px;--input-padding-x-lg: 14px;--input-padding-x-xl: 16px;--input-padding-x-2xl: 20px;--input-radius-none: 0;--input-radius-sm: 4px;--input-radius-md: 6px;--input-radius-lg: 8px;--input-radius-xl: 12px;--input-radius-full: 9999px;--input-bg: #ffffff;--input-border: #d1d5db;--input-border-hover: #9ca3af;--input-border-focus: #3b82f6;--input-text: #111827;--input-placeholder: #9ca3af;--input-label: #374151;--input-focus-ring: rgba(59, 130, 246, .08);--input-error: #ef4444;--input-error-bg: rgba(239, 68, 68, .05);--input-error-ring: rgba(239, 68, 68, .15);--input-success: #10b981;--input-success-bg: rgba(16, 185, 129, .05);--input-success-ring: rgba(16, 185, 129, .2);--input-warning: #f59e0b;--input-warning-bg: rgba(245, 158, 11, .05);--input-warning-ring: rgba(245, 158, 11, .2);--input-bg-dark: #1a1a1a;--input-border-dark: #404040;--input-border-hover-dark: #525252;--input-text-dark: #e5e5e5;--input-placeholder-dark: #737373;--input-label-dark: #d1d5db;--input-glass-bg: rgba(255, 255, 255, .7);--input-glass-bg-dark: rgba(26, 26, 26, .7);--input-glass-blur: 12px;--input-transition: .2s cubic-bezier(.4, 0, .2, 1);--input-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--input-transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--input-shadow-focus: 0 0 0 3px var(--input-focus-ring), 0 1px 2px 0 rgba(0, 0, 0, .05);--input-shadow-error: 0 0 0 3px var(--input-error-ring), 0 1px 2px 0 rgba(0, 0, 0, .05);--input-shadow-success: 0 0 0 3px var(--input-success-ring), 0 1px 2px 0 rgba(0, 0, 0, .05);--input-shadow-warning: 0 0 0 3px var(--input-warning-ring), 0 1px 2px 0 rgba(0, 0, 0, .05);--input-icon-size: 16px;--input-icon-color: #6b7280;--input-section-gap: 8px;--input-z-label: 1;--input-z-icon: 2;--input-z-counter: 3}

.pm-textinput-modern{position:relative;display:block;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-sizing:border-box}

.pm-textinput-modern *,.pm-textinput-modern *:before,.pm-textinput-modern *:after{box-sizing:border-box}

.pm-textinput-modern__label{display:block;font-weight:500;color:var(--input-label);margin-bottom:6px;font-size:14px;line-height:1.5;letter-spacing:.01em;transition:color var(--input-transition)}

.pm-textinput-modern--dark .pm-textinput-modern__label{color:var(--input-label-dark)}

.pm-textinput-modern__required{color:var(--input-error);margin-left:2px}

.pm-textinput-modern__wrapper{position:relative;display:flex;align-items:center;width:100%;contain:layout style;transform:translateZ(0)}

.pm-textinput-modern__input{flex:1;min-width:0;width:100%;height:var(--input-height-md);padding:0 var(--input-padding-x-md);font-size:var(--input-font-md);font-family:inherit;line-height:1.5;color:var(--input-text);background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--pm-input-radius);outline:none;box-shadow:0 1px 2px #0000000d;transition:border-color var(--input-transition),box-shadow var(--input-transition),background-color var(--input-transition),transform var(--input-transition);will-change:border-color,box-shadow;-webkit-appearance:none;-moz-appearance:none;appearance:none}

.pm-textinput-modern__input::placeholder{color:var(--input-placeholder);opacity:1}

.pm-textinput-modern--dark .pm-textinput-modern__input{color:var(--input-text-dark);background-color:var(--input-bg-dark);border-color:var(--input-border-dark)}

.pm-textinput-modern--dark .pm-textinput-modern__input::placeholder{color:var(--input-placeholder-dark);opacity:.6}

.pm-textinput-modern__textarea{height:auto!important;min-height:80px;padding:var(--input-padding-x-md);line-height:1.5;resize:vertical}

.pm-textinput-modern--size-2xs .pm-textinput-modern__textarea{min-height:60px;padding:var(--input-padding-x-2xs);font-size:var(--input-font-2xs)}

.pm-textinput-modern--size-xs .pm-textinput-modern__textarea{min-height:68px;padding:var(--input-padding-x-xs);font-size:var(--input-font-xs)}

.pm-textinput-modern--size-sm .pm-textinput-modern__textarea{min-height:72px;padding:var(--input-padding-x-sm);font-size:var(--input-font-sm)}

.pm-textinput-modern--size-md .pm-textinput-modern__textarea{min-height:80px;padding:var(--input-padding-x-md);font-size:var(--input-font-md)}

.pm-textinput-modern--size-lg .pm-textinput-modern__textarea{min-height:90px;padding:var(--input-padding-x-lg);font-size:var(--input-font-lg)}

.pm-textinput-modern--size-xl .pm-textinput-modern__textarea{min-height:100px;padding:var(--input-padding-x-xl);font-size:var(--input-font-xl)}

.pm-textinput-modern--size-2xl .pm-textinput-modern__textarea{min-height:120px;padding:var(--input-padding-x-2xl);font-size:var(--input-font-2xl)}

.pm-textinput-modern--size-2xs .pm-textinput-modern__input{height:var(--input-height-2xs);padding:0 var(--input-padding-x-2xs);font-size:var(--input-font-2xs)}

.pm-textinput-modern--size-xs .pm-textinput-modern__input{height:var(--input-height-xs);padding:0 var(--input-padding-x-xs);font-size:var(--input-font-xs)}

.pm-textinput-modern--size-sm .pm-textinput-modern__input{height:var(--input-height-sm);padding:0 var(--input-padding-x-sm);font-size:var(--input-font-sm)}

.pm-textinput-modern--size-md .pm-textinput-modern__input{height:var(--input-height-md);padding:0 var(--input-padding-x-md);font-size:var(--input-font-md)}

.pm-textinput-modern--size-lg .pm-textinput-modern__input{height:var(--input-height-lg);padding:0 var(--input-padding-x-lg);font-size:var(--input-font-lg)}

.pm-textinput-modern--size-xl .pm-textinput-modern__input{height:var(--input-height-xl);padding:0 var(--input-padding-x-xl);font-size:var(--input-font-xl)}

.pm-textinput-modern--size-2xl .pm-textinput-modern__input{height:var(--input-height-2xl);padding:0 var(--input-padding-x-2xl);font-size:var(--input-font-2xl)}

.pm-textinput-modern--radius-none .pm-textinput-modern__input{border-radius:var(--input-radius-none)}

.pm-textinput-modern--radius-sm .pm-textinput-modern__input{border-radius:var(--input-radius-sm)}

.pm-textinput-modern--radius-md .pm-textinput-modern__input{border-radius:var(--input-radius-md)}

.pm-textinput-modern--radius-lg .pm-textinput-modern__input{border-radius:var(--input-radius-lg)}

.pm-textinput-modern--radius-xl .pm-textinput-modern__input{border-radius:var(--input-radius-xl)}

.pm-textinput-modern--radius-full .pm-textinput-modern__input{border-radius:var(--input-radius-full)}

.pm-textinput-modern--style-box .pm-textinput-modern__input{background-color:#f9fafb;border-color:transparent}

.pm-textinput-modern--style-box.pm-textinput-modern--dark .pm-textinput-modern__input{background-color:#262626}

.pm-textinput-modern--style-box .pm-textinput-modern__input:hover{background-color:#f3f4f6}

.pm-textinput-modern--style-box.pm-textinput-modern--dark .pm-textinput-modern__input:hover{background-color:#2d2d2d}

.pm-textinput-modern--style-underline .pm-textinput-modern__input{border:none;border-bottom:2px solid var(--input-border);border-radius:0;padding-left:0;padding-right:0}

.pm-textinput-modern--style-underline.pm-textinput-modern--dark .pm-textinput-modern__input{border-bottom-color:var(--input-border-dark)}

.pm-textinput-modern--style-glassmorphic .pm-textinput-modern__input{background-color:var(--input-glass-bg);backdrop-filter:blur(var(--input-glass-blur));-webkit-backdrop-filter:blur(var(--input-glass-blur));border-color:#ffffff4d}

.pm-textinput-modern--style-glassmorphic.pm-textinput-modern--dark .pm-textinput-modern__input{background-color:var(--input-glass-bg-dark);border-color:#ffffff1a}

.pm-textinput-modern__input:hover{border-color:var(--input-border-hover)}

.pm-textinput-modern--dark .pm-textinput-modern__input:hover{border-color:var(--input-border-hover-dark)}

.pm-textinput-modern__input:focus,.pm-textinput-modern--focused .pm-textinput-modern__input{border-color:var(--input-border-focus);box-shadow:var(--input-shadow-focus);outline:none}

@keyframes focus-ring{0%{box-shadow:0 0 0 0 transparent}to{box-shadow:var(--input-shadow-focus)}}

.pm-textinput-modern__input:focus{animation:focus-ring var(--input-transition) ease-out}

.pm-textinput-modern--state-success .pm-textinput-modern__input{border-color:var(--input-success);background-color:var(--input-success-bg)}

.pm-textinput-modern--state-success .pm-textinput-modern__input:focus{box-shadow:var(--input-shadow-success)}

.pm-textinput-modern--state-error .pm-textinput-modern__input{border-color:var(--input-error);background-color:var(--input-error-bg)}

.pm-textinput-modern--state-error .pm-textinput-modern__input:focus{box-shadow:var(--input-shadow-error)}

.pm-textinput-modern--state-warning .pm-textinput-modern__input{border-color:var(--input-warning);background-color:var(--input-warning-bg)}

.pm-textinput-modern--state-warning .pm-textinput-modern__input:focus{box-shadow:var(--input-shadow-warning)}

.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{position:absolute;left:12px;top:50%;transform:translateY(-50%);background-color:var(--input-bg);padding:0 4px;color:var(--input-placeholder);font-weight:400;pointer-events:none;transition:transform var(--input-transition),font-size var(--input-transition),color var(--input-transition),top var(--input-transition);z-index:var(--input-z-label);margin:0}

.pm-textinput-modern--dark.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{background-color:var(--input-bg-dark)}

.pm-textinput-modern--focused.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating,.pm-textinput-modern--has-value.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{top:0;transform:translateY(-50%) scale(.85);font-size:12px;color:var(--input-border-focus);font-weight:500}

.pm-textinput-modern--state-error.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{color:var(--input-error)}

.pm-textinput-modern--state-success.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{color:var(--input-success)}

.pm-textinput-modern--style-underline.pm-textinput-modern--label-floating .pm-textinput-modern__label--floating{left:0;background-color:transparent;padding:0}

.pm-textinput-modern--style-underline.pm-textinput-modern--label-floating.pm-textinput-modern--focused .pm-textinput-modern__label--floating,.pm-textinput-modern--style-underline.pm-textinput-modern--label-floating.pm-textinput-modern--has-value .pm-textinput-modern__label--floating{top:-8px;transform:translateY(0) scale(.85)}

.pm-textinput-modern__icon{position:absolute;display:flex;align-items:center;justify-content:center;height:100%;color:var(--input-icon-color);pointer-events:none;z-index:var(--input-z-icon)}

.pm-textinput-modern__icon svg{width:var(--input-icon-size);height:var(--input-icon-size);fill:currentColor}

.pm-textinput-modern__icon--left{left:12px}

.pm-textinput-modern--size-2xs .pm-textinput-modern__icon--left{left:8px}

.pm-textinput-modern--size-xs .pm-textinput-modern__icon--left{left:10px}

.pm-textinput-modern--size-xl .pm-textinput-modern__icon--left{left:14px}

.pm-textinput-modern--size-2xl .pm-textinput-modern__icon--left{left:16px}

.pm-textinput-modern__icon--right{right:12px}

.pm-textinput-modern--size-2xs .pm-textinput-modern__icon--right{right:8px}

.pm-textinput-modern--size-xs .pm-textinput-modern__icon--right{right:10px}

.pm-textinput-modern--size-xl .pm-textinput-modern__icon--right{right:14px}

.pm-textinput-modern--size-2xl .pm-textinput-modern__icon--right{right:16px}

.pm-textinput-modern--size-2xs.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:36px!important}

.pm-textinput-modern--size-xs.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:38px!important}

.pm-textinput-modern--size-sm.pm-textinput-modern--has-left .pm-textinput-modern__input,.pm-textinput-modern--size-md.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:40px!important}

.pm-textinput-modern--size-lg.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:42px!important}

.pm-textinput-modern--size-xl.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:44px!important}

.pm-textinput-modern--size-2xl.pm-textinput-modern--has-left .pm-textinput-modern__input{padding-left:48px!important}

.pm-textinput-modern--size-2xs.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:36px!important}

.pm-textinput-modern--size-xs.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:38px!important}

.pm-textinput-modern--size-sm.pm-textinput-modern--has-right .pm-textinput-modern__input,.pm-textinput-modern--size-md.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:40px!important}

.pm-textinput-modern--size-lg.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:42px!important}

.pm-textinput-modern--size-xl.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:44px!important}

.pm-textinput-modern--size-2xl.pm-textinput-modern--has-right .pm-textinput-modern__input{padding-right:48px!important}

.pm-textinput-modern__icon--left+input.pm-textinput-modern__input,.pm-textinput-modern__icon--left~input.pm-textinput-modern__input,.pm-textinput-modern__prefix+input.pm-textinput-modern__input{padding-left:40px!important}

.pm-textinput-modern__wrapper:has(.pm-textinput-modern__icon--right) input.pm-textinput-modern__input,input.pm-textinput-modern__input:has(~.pm-textinput-modern__icon--right){padding-right:40px!important}

.pm-textinput-modern__section{position:absolute;display:flex;align-items:center;height:100%;z-index:var(--input-z-icon)}

.pm-textinput-modern__section--left{left:8px}

.pm-textinput-modern__section--right{right:8px}

.pm-textinput-modern__prefix,.pm-textinput-modern__suffix{position:absolute;display:flex;align-items:center;height:100%;color:var(--input-icon-color);font-size:inherit;pointer-events:none;z-index:var(--input-z-icon)}

.pm-textinput-modern__prefix{left:12px}

.pm-textinput-modern__suffix{right:12px}

.pm-textinput-modern__right-container{position:absolute;right:8px;display:flex;align-items:center;gap:4px;height:100%;z-index:var(--input-z-icon)}

.pm-textinput-modern__clear,.pm-textinput-modern__password-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:none;border:none;cursor:pointer;color:var(--input-icon-color);transition:color var(--input-transition-fast),transform var(--input-transition-fast);outline:none}

.pm-textinput-modern__clear svg,.pm-textinput-modern__password-toggle svg{width:16px;height:16px;fill:currentColor}

.pm-textinput-modern__clear:hover,.pm-textinput-modern__password-toggle:hover{color:var(--input-text);transform:scale(1.1)}

.pm-textinput-modern__clear:active{transform:scale(.95) rotate(90deg)}

.pm-textinput-modern__password-toggle:active{transform:scale(.95)}

.pm-textinput-modern__spinner{display:flex;align-items:center;justify-content:center;width:16px;height:16px}

.pm-textinput-modern__spinner-icon{width:100%;height:100%;animation:spin 1s linear infinite}

.pm-textinput-modern__spinner-icon circle{stroke:var(--input-border-focus);stroke-linecap:round;stroke-dasharray:50;stroke-dashoffset:0;animation:spinner-dash 1.5s ease-in-out infinite}

@keyframes spin{to{transform:rotate(360deg)}}

@keyframes spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}

.pm-textinput-modern__success-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--input-success);animation:success-pop .3s cubic-bezier(.68,-.55,.265,1.55)}

.pm-textinput-modern__success-icon svg{width:100%;height:100%;fill:currentColor}

@keyframes success-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}

.pm-textinput-modern__counter{position:absolute;font-size:11px;color:var(--input-icon-color);z-index:var(--input-z-counter);transition:color var(--input-transition)}

.pm-textinput-modern__counter--top{top:-18px;right:0}

.pm-textinput-modern__counter--bottom{bottom:-18px;right:0}

.pm-textinput-modern__counter--over{color:var(--input-error);font-weight:600}

.pm-textinput-modern__password-strength{display:flex;align-items:center;gap:8px;margin-top:6px}

.pm-textinput-modern__password-strength-bar{flex:1;height:4px;background-color:#e5e7eb;border-radius:2px;overflow:hidden}

.pm-textinput-modern--dark .pm-textinput-modern__password-strength-bar{background-color:#404040}

.pm-textinput-modern__password-strength-fill{height:100%;transition:width .3s ease-out,background-color .3s ease-out;border-radius:2px}

.pm-textinput-modern__password-strength-label{font-size:11px;font-weight:600;min-width:48px;text-align:right;transition:color .3s ease-out}

.pm-textinput-modern__helper{margin-top:4px;font-size:12px;color:var(--input-icon-color);line-height:1.4}

.pm-textinput-modern__error{margin-top:4px;font-size:12px;color:var(--input-error);line-height:1.4;font-weight:500;animation:error-fade-in .2s ease-out}

@keyframes error-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.pm-textinput-modern--disabled .pm-textinput-modern__input{opacity:.5;cursor:not-allowed;background-color:#f3f4f6}

.pm-textinput-modern--dark.pm-textinput-modern--disabled .pm-textinput-modern__input{background-color:#262626}

.pm-textinput-modern--readonly .pm-textinput-modern__input{background-color:#f9fafb;cursor:default}

.pm-textinput-modern--dark.pm-textinput-modern--readonly .pm-textinput-modern__input{background-color:#262626}

@media(prefers-reduced-motion:reduce){.pm-textinput-modern *,.pm-textinput-modern *:before,.pm-textinput-modern *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

@media(max-width:768px){.pm-textinput-modern__input{font-size:16px!important}.pm-textinput-modern__clear,.pm-textinput-modern__password-toggle{width:44px;height:44px}}

@media(prefers-contrast:high){.pm-textinput-modern__input{border-width:2px}.pm-textinput-modern__input:focus{outline:2px solid;outline-offset:2px}}

.textarea-field{position:relative;display:block;width:100%;max-width:100%;box-sizing:border-box;margin-bottom:1rem;-webkit-tap-highlight-color:transparent}

.textarea-field *,.textarea-field *:before,.textarea-field *:after{box-sizing:border-box}

.textarea-field__container{position:relative;width:100%;max-width:100%}

.textarea-field__label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem}

.textarea-field__required{color:#ef4444;margin-left:.25rem}

.textarea-field--stacked .textarea-field__label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}

.textarea-field--inline .textarea-field__inline-container{display:flex;align-items:flex-start;gap:1rem}

.textarea-field--inline .textarea-field__label{margin-bottom:0;white-space:nowrap;min-width:120px;flex-shrink:0;margin-top:.5rem}

.textarea-field--inline .textarea-field__input-container{flex:1}

.textarea-field--floating .textarea-field__textarea-container{position:relative}

.textarea-field--floating .textarea-field__label--floating{position:absolute;left:.75rem;top:.75rem;background-color:#fff;padding:0 .25rem;color:#6b7280;font-weight:400;pointer-events:none;transition:all .15s ease-in-out;z-index:1;margin-bottom:0;font-size:.875rem}

.textarea-field--floating .textarea-field__textarea:focus+.textarea-field__label--floating,.textarea-field--floating .textarea-field__textarea:not(:placeholder-shown)+.textarea-field__label--floating,.textarea-field--floating.textarea-field--has-value .textarea-field__label--floating{top:0;left:.75rem;transform:translateY(-50%);font-size:.75rem;color:#3b82f6;font-weight:500}

.textarea-field__textarea{display:block;width:100%;max-width:100%;min-height:2.5rem;padding:.75rem;font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:.01em;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.375rem;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;resize:vertical;appearance:none;-webkit-appearance:none;-moz-appearance:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;word-wrap:break-word;overflow-wrap:break-word;-webkit-overflow-scrolling:touch;touch-action:manipulation}

.textarea-field__textarea:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem #007bff40}

.textarea-field__textarea:disabled{background-color:#e9ecef;opacity:1;cursor:not-allowed}

.textarea-field__textarea::placeholder{color:#6c757d;opacity:1}

.textarea-field--box .textarea-field__textarea{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:.375rem}

.textarea-field--box .textarea-field__textarea:focus{background-color:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}

.textarea-field--outline .textarea-field__textarea{background-color:transparent;border:2px solid #d1d5db;border-radius:.5rem}

.textarea-field--outline .textarea-field__textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}

.textarea-field--underline .textarea-field__textarea{background-color:transparent;border:none;border-bottom:2px solid #d1d5db;border-radius:0;padding-left:0;padding-right:0}

.textarea-field--underline .textarea-field__textarea:focus{border-bottom-color:#3b82f6;box-shadow:none}

.textarea-field--underline.textarea-field--floating .textarea-field__label--floating{left:0;background-color:transparent;padding:0}

.textarea-field--underline.textarea-field--floating .textarea-field__textarea:focus+.textarea-field__label--floating,.textarea-field--underline.textarea-field--floating .textarea-field__textarea:not(:placeholder-shown)+.textarea-field__label--floating,.textarea-field--underline.textarea-field--floating.textarea-field--has-value .textarea-field__label--floating{left:0;top:-.5rem;transform:translateY(0);font-size:.75rem;font-weight:500;color:#3b82f6}

.textarea-field__textarea--resize-none{resize:none}

.textarea-field__textarea--resize-horizontal{resize:horizontal}

.textarea-field__textarea--resize-vertical{resize:vertical}

.textarea-field__textarea--resize-both{resize:both}

.textarea-field__textarea--auto-resize{resize:none;overflow:hidden}

.textarea-field--error .textarea-field__textarea{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}

.textarea-field--error .textarea-field__label{color:#dc3545}

.textarea-field--success .textarea-field__textarea{border-color:#28a745;box-shadow:0 0 0 .2rem #28a74540}

.textarea-field--success .textarea-field__label{color:#28a745}

.textarea-field--disabled .textarea-field__textarea{background-color:#e9ecef;opacity:.6;cursor:not-allowed}

.textarea-field--disabled .textarea-field__label{opacity:.6}

.textarea-field__error-message{margin-top:.25rem;font-size:.75rem;color:#dc3545}

.textarea-field__success-message{margin-top:.25rem;font-size:.75rem;color:#28a745}

.textarea-field__helper-text{margin-top:.25rem;font-size:.75rem;color:#6c757d}

.textarea-field__counter{margin-top:.25rem;font-size:.75rem;color:#6c757d;text-align:right}

.textarea-field[data-theme=dark]{color:#e5e7eb}

.textarea-field[data-theme=dark] .textarea-field__textarea{background-color:#374151;border-color:#4b5563;color:#e5e7eb}

.textarea-field[data-theme=dark] .textarea-field__textarea:focus{background-color:#374151;border-color:#60a5fa}

.textarea-field[data-theme=dark] .textarea-field__label{color:#d1d5db}

.textarea-field[data-theme=dark] .textarea-field__textarea::placeholder{color:#9ca3af}

.textarea-field__textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a,0 4px 12px #667eea26}

.textarea-field--box .textarea-field__textarea:focus{background:linear-gradient(to bottom,#fff,#f8fafc);border-color:#667eea}

.textarea-field--outline .textarea-field__textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a,0 4px 12px #667eea26}

.textarea-field--underline .textarea-field__textarea:focus{border-bottom-color:#667eea;box-shadow:0 2px #667eea33}

.textarea-field__textarea:hover:not(:disabled):not(:focus){border-color:#9ca3af;transform:translateY(-1px);transition:all .3s cubic-bezier(.4,0,.2,1)}

.textarea-field--success .textarea-field__textarea{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}

.textarea-field--success .textarea-field__textarea:focus{border-color:#059669;box-shadow:0 0 0 3px #10b98126,0 4px 12px #10b98133}

.textarea-field--error .textarea-field__textarea{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}

.textarea-field--error .textarea-field__textarea:focus{border-color:#dc2626;box-shadow:0 0 0 3px #ef444426,0 4px 12px #ef444433}

.textarea-field__textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}

.textarea-field__label{transition:all .2s ease-in-out}

.textarea-field--box .textarea-field__textarea{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f9fafbcc}

.textarea-field--box .textarea-field__textarea:focus{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2}

@media(max-width:480px){.textarea-field{margin-bottom:1.25rem}.textarea-field__textarea{font-size:1rem;padding:.875rem;min-height:2.75rem;border-radius:.5rem}.textarea-field__label{font-size:1rem;margin-bottom:.625rem}.textarea-field--inline .textarea-field__inline-container{flex-direction:column;gap:.75rem}.textarea-field--inline .textarea-field__label{margin-top:0;margin-bottom:0;min-width:auto}.textarea-field--floating .textarea-field__label--floating{font-size:1rem;left:.875rem;top:.875rem}.textarea-field--floating .textarea-field__textarea:focus+.textarea-field__label--floating,.textarea-field--floating .textarea-field__textarea:not(:placeholder-shown)+.textarea-field__label--floating{font-size:.8125rem}.textarea-field__error-message,.textarea-field__success-message,.textarea-field__helper-text,.textarea-field__counter{font-size:.8125rem;margin-top:.375rem}}

@media(min-width:481px)and (max-width:768px){.textarea-field__textarea{font-size:.9375rem;padding:.8125rem;min-height:2.625rem}.textarea-field__label{font-size:.9375rem}.textarea-field--inline .textarea-field__inline-container{flex-direction:column;gap:.625rem}.textarea-field--inline .textarea-field__label{margin-top:0;margin-bottom:.5rem;min-width:auto}}

@media(min-width:769px){.textarea-field__textarea{font-size:.875rem;min-height:2.5rem}.textarea-field__textarea:hover:not(:disabled):not(:focus){box-shadow:0 2px 8px #0000000d;border-color:#a0aec0}.textarea-field--inline .textarea-field__label{min-width:140px}}

@media(max-width:768px)and (orientation:landscape){.textarea-field__textarea{min-height:2.25rem;padding:.625rem .875rem}}

@media(min-width:1024px){.textarea-field--inline .textarea-field__label{min-width:160px}}

@media(prefers-contrast:high){.textarea-field__textarea{border-width:2px}.textarea-field__textarea:focus{outline:3px solid currentColor;outline-offset:2px}}

@media(prefers-reduced-motion:reduce){.textarea-field__textarea,.textarea-field__label,.textarea-field__textarea:hover{transition:none;transform:none}}

@media(prefers-color-scheme:dark){.textarea-field:not([data-theme=light]){color:#e5e7eb}.textarea-field:not([data-theme=light]) .textarea-field__textarea{background-color:#374151;border-color:#4b5563;color:#e5e7eb}.textarea-field:not([data-theme=light]) .textarea-field__textarea:focus{background-color:#374151;border-color:#60a5fa}.textarea-field:not([data-theme=light]) .textarea-field__label{color:#d1d5db}.textarea-field:not([data-theme=light]) .textarea-field__textarea::placeholder{color:#9ca3af}.textarea-field:not([data-theme=light]) .textarea-field__helper-text{color:#9ca3af}}

@media(hover:none)and (pointer:coarse){.textarea-field__textarea{min-height:2.75rem;padding:.875rem;font-size:1rem;border-radius:.5rem}.textarea-field__textarea:hover{transform:none;box-shadow:none}.textarea-field__textarea:focus{box-shadow:0 0 0 4px #667eea26,0 4px 16px #667eea33}.textarea-field__textarea:active{transform:scale(.995)}}

@media print{.textarea-field__textarea{border:1px solid #000;background:#fff;box-shadow:none}.textarea-field__helper-text,.textarea-field__counter{display:none}}

.textarea-field__textarea{-webkit-appearance:none;appearance:none}

.textarea-field__textarea{-webkit-overflow-scrolling:touch}

.textarea-field__textarea{touch-action:manipulation}

@media(max-width:480px){.textarea-field__textarea{font-size:16px;min-height:88px}}

@supports (padding-bottom: env(safe-area-inset-bottom)){.textarea-field--fixed-bottom{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}

@media(prefers-reduced-motion:reduce){.textarea-field__textarea{animation:none;transition:none}}

.select-field-container{position:relative;width:100%;max-width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;z-index:1}

.select-field-backdrop{position:fixed;inset:0;z-index:99998;background:transparent;cursor:default;-webkit-tap-highlight-color:transparent}

.select-field-container.select-field-open{z-index:999999!important}

.form-field:has(.select-field-open){z-index:999999!important;position:relative}

.select-field-control{position:relative;display:flex;align-items:center;background:var(--form-field-background, #ffffff)!important;border:var(--form-field-border-width, 1px) solid var(--form-field-border-color, #d1d5db)!important;border-radius:var(--pm-input-radius, 6px)!important;transition:all .2s ease-in-out;cursor:pointer;min-height:var(--form-field-height, 40px);max-height:60px;padding:0 12px!important;gap:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}

.select-field-control:hover{border-color:var(--form-field-border-color-hover, #9ca3af)}

.select-field-container:focus-within .select-field-control,.select-field-open .select-field-control{border-color:var(--form-field-border-color-focus, #3b82f6);box-shadow:var(--form-field-focus-shadow, 0 0 0 2px rgba(59, 130, 246, .1));outline:none}

.select-field-value{flex:1;display:flex;align-items:center;min-height:24px;font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:.01em;color:var(--form-field-text-color, #1f2937)}

.select-field-placeholder{color:var(--form-field-placeholder-color, #9ca3af);font-style:normal;font-size:.875rem;font-weight:400;letter-spacing:.01em}

.select-field-single-value{display:flex;align-items:center;gap:6px;width:100%;overflow:hidden}

.select-field-value-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px}

.select-field-value-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.select-field-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center;width:100%;min-height:24px}

.select-field-tag{display:inline-flex;align-items:center;gap:4px;background:var(--select-field-tag-background, #f3f4f6);border:1px solid var(--select-field-tag-border, #e5e7eb);border-radius:var(--pm-radius-sm);padding:2px 6px;font-size:12px;line-height:1.4;color:var(--select-field-tag-color, #374151);max-width:200px}

.select-field-tag-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:12px;height:12px}

.select-field-tag-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.select-field-tag-remove{background:none;border:none;color:var(--select-field-tag-remove-color, #6b7280);cursor:pointer;padding:0;margin-left:2px;font-size:14px;line-height:1;transition:color .2s ease-in-out;flex-shrink:0}

.select-field-tag-remove:hover{color:var(--select-field-tag-remove-color-hover, #ef4444)}

.select-field-dropdown-search{position:relative;padding:8px 12px;border-bottom:1px solid var(--select-field-dropdown-search-border, #e5e7eb);background:var(--select-field-dropdown-search-background, #f9fafb)}

.select-field-dropdown-search-input{width:100%;background:var(--select-field-dropdown-search-input-background, #ffffff);border:1px solid var(--select-field-dropdown-search-input-border, #d1d5db);border-radius:var(--pm-radius-sm);padding:6px 12px;font-size:var(--form-field-font-size, 14px);color:var(--form-field-text-color, #1f2937);outline:none;transition:border-color .2s ease-in-out}

.select-field-dropdown-search-input:focus{border-color:var(--form-field-border-color-focus, #3b82f6);box-shadow:0 0 0 1px #3b82f61a}

.select-field-dropdown-search-input::placeholder{color:var(--form-field-placeholder-color, #9ca3af)}

.select-field-dropdown-search-icon{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--select-field-dropdown-search-icon-color, #6b7280);pointer-events:none}

.select-field-indicators{display:flex;align-items:center;gap:4px;flex-shrink:0}

.select-field-clear{background:none;border:none;color:var(--select-field-clear-color, #6b7280);cursor:pointer;padding:2px;font-size:16px;line-height:1;transition:color .2s ease-in-out;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:2px}

.select-field-clear:hover{color:var(--select-field-clear-color-hover, #ef4444);background:var(--select-field-clear-background-hover, rgba(239, 68, 68, .1))}

.select-field-dropdown-indicator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--select-field-dropdown-indicator-color, #6b7280);transition:transform .2s ease-in-out,color .2s ease-in-out}

.select-field-dropdown-indicator svg{width:16px;height:16px}

.select-field-dropdown-indicator-open{transform:rotate(180deg);color:var(--select-field-dropdown-indicator-color-active, #3b82f6)}

.select-field-loading{display:flex;align-items:center;justify-content:center;width:20px;height:20px}

.select-field-spinner{width:16px;height:16px;border:2px solid var(--select-field-spinner-color, #e5e7eb);border-top:2px solid var(--select-field-spinner-active-color, #3b82f6);border-radius:50%;animation:select-field-spin 1s linear infinite}

@keyframes select-field-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}

.select-field-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:99999!important;background:var(--select-field-dropdown-background, #ffffff);border:var(--select-field-dropdown-border-width, 1px) solid var(--select-field-dropdown-border-color, #d1d5db);border-radius:var(--select-field-dropdown-border-radius, 6px);box-shadow:var(--select-field-dropdown-shadow, 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05));overflow:hidden;overflow-y:auto;max-height:300px;animation:select-field-dropdown-enter-bottom .15s ease-out}

.select-field-dropdown-bottom{top:calc(100% + 4px);bottom:auto;animation:select-field-dropdown-enter-bottom .15s ease-out}

.select-field-dropdown-top{top:auto;bottom:calc(100% + 4px);animation:select-field-dropdown-enter-top .15s ease-out}

@keyframes select-field-dropdown-enter-bottom{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}

@keyframes select-field-dropdown-enter-top{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}

@keyframes select-field-dropdown-enter{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}

.select-field-dropdown::-webkit-scrollbar{width:6px}

.select-field-dropdown::-webkit-scrollbar-track{background:var(--select-field-scrollbar-track, #f1f5f9)}

.select-field-dropdown::-webkit-scrollbar-thumb{background:var(--select-field-scrollbar-thumb, #cbd5e1);border-radius:3px}

.select-field-dropdown::-webkit-scrollbar-thumb:hover{background:var(--select-field-scrollbar-thumb-hover, #94a3b8)}

.select-field-group{border-bottom:1px solid var(--select-field-group-border, #f3f4f6)}

.select-field-group:last-child{border-bottom:none}

.select-field-group-label{padding:8px 12px 4px;font-size:12px;font-weight:600;color:var(--select-field-group-label-color, #6b7280);text-transform:uppercase;letter-spacing:.025em;background:var(--select-field-group-label-background, #f9fafb);border-bottom:1px solid var(--select-field-group-label-border, #f3f4f6)}

.select-field-option-wrapper{width:100%}

.select-field-option{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s ease-in-out;border-bottom:1px solid var(--select-field-option-border, transparent);color:var(--select-field-option-color, #1f2937);font-size:var(--form-field-font-size, 14px);line-height:1.5}

.select-field-option:hover,.select-field-option-highlighted{background:var(--select-field-option-background-hover, #f3f4f6)}

.select-field-option-selected{background:var(--select-field-option-background-selected, #eff6ff);color:var(--select-field-option-color-selected, #1d4ed8)}

.select-field-option-selected:hover,.select-field-option-selected.select-field-option-highlighted{background:var(--select-field-option-background-selected-hover, #dbeafe)}

.select-field-option-disabled{color:var(--select-field-option-color-disabled, #9ca3af);cursor:not-allowed;opacity:.6}

.select-field-option-disabled:hover{background:transparent}

.select-field-option-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px}

.select-field-option-content{flex:1;display:flex;flex-direction:column;min-width:0}

.select-field-option-label{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.select-field-option-description{font-size:12px;color:var(--select-field-option-description-color, #6b7280);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.select-field-option-check{flex-shrink:0;color:var(--select-field-option-check-color, #10b981);font-weight:600;font-size:16px}

.select-field-no-options{padding:12px;text-align:center;color:var(--select-field-no-options-color, #6b7280);font-style:italic;font-size:14px}

.select-field-searching{padding:16px 12px}

.select-field-searching-content{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--select-field-searching-color, #6b7280);font-size:14px}

.select-field-load-more{padding:8px 12px;border-top:1px solid var(--select-field-load-more-border, #f3f4f6)}

.select-field-load-more-button{width:100%;background:var(--select-field-load-more-background, #f9fafb);border:1px solid var(--select-field-load-more-button-border, #e5e7eb);border-radius:4px;padding:6px 12px;font-size:12px;color:var(--select-field-load-more-color, #374151);cursor:pointer;transition:all .2s ease-in-out}

.select-field-load-more-button:hover{background:var(--select-field-load-more-background-hover, #f3f4f6);border-color:var(--select-field-load-more-button-border-hover, #d1d5db)}

.select-field-error .select-field-control{border-color:var(--form-field-border-color-error, #ef4444);background:var(--form-field-background-error, #fef2f2)}

.select-field-error .select-field-control:hover{border-color:var(--form-field-border-color-error-hover, #dc2626)}

.select-field-error:focus-within .select-field-control,.select-field-error.select-field-open .select-field-control{border-color:var(--form-field-border-color-error, #ef4444);box-shadow:var(--form-field-error-shadow, 0 0 0 2px rgba(239, 68, 68, .1))}

.select-field-disabled .select-field-control{background:var(--form-field-background-disabled, #f9fafb);border-color:var(--form-field-border-color-disabled, #e5e7eb);color:var(--form-field-text-color-disabled, #9ca3af);cursor:not-allowed}

.select-field-disabled .select-field-control:hover{border-color:var(--form-field-border-color-disabled, #e5e7eb)}

.select-field-disabled .select-field-value,.select-field-disabled .select-field-placeholder{color:var(--form-field-text-color-disabled, #9ca3af)}

.select-field-disabled .select-field-tag{background:var(--select-field-tag-background-disabled, #f3f4f6);border-color:var(--select-field-tag-border-disabled, #e5e7eb);color:var(--select-field-tag-color-disabled, #9ca3af)}

.select-field-disabled .select-field-tag-remove{color:var(--select-field-tag-remove-color-disabled, #9ca3af);cursor:not-allowed}

.select-field-disabled .select-field-tag-remove:hover{color:var(--select-field-tag-remove-color-disabled, #9ca3af)}

.select-field-disabled .select-field-dropdown-indicator{color:var(--select-field-dropdown-indicator-color-disabled, #9ca3af)}

.select-field-readonly .select-field-control{background:var(--form-field-background-readonly, #f8fafc);cursor:default}

.select-field-readonly .select-field-tag-remove,.select-field-readonly .select-field-clear{display:none}

.form-field-small .select-field-control{min-height:var(--form-field-height-small, 32px);padding:0 8px;font-size:var(--form-field-font-size-small, 12px)}

.form-field-small .select-field-tag{padding:1px 4px;font-size:12px}

.form-field-small .select-field-dropdown-indicator,.form-field-small .select-field-clear{width:16px;height:16px}

.form-field-small .select-field-dropdown-indicator svg{width:12px;height:12px}

.form-field-small .select-field-option{padding:6px 8px;font-size:var(--form-field-font-size-small, 12px)}

.form-field-large .select-field-control{min-height:var(--form-field-height-large, 48px);padding:0 16px;font-size:var(--form-field-font-size-large, 16px)}

.form-field-large .select-field-tag{padding:3px 8px;font-size:14px}

.form-field-large .select-field-dropdown-indicator,.form-field-large .select-field-clear{width:24px;height:24px}

.form-field-large .select-field-dropdown-indicator svg{width:20px;height:20px}

.form-field-large .select-field-option{padding:10px 16px;font-size:var(--form-field-font-size-large, 16px)}

.form-field-theme-primary:focus-within .select-field-control,.form-field-theme-primary.select-field-open .select-field-control{border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f61a}

.form-field-theme-primary .select-field-option-selected{background:var(--color-primary-50, #eff6ff);color:var(--color-primary-700, #1d4ed8)}

.form-field-theme-success:focus-within .select-field-control,.form-field-theme-success.select-field-open .select-field-control{border-color:var(--color-success, #10b981);box-shadow:0 0 0 2px #10b9811a}

.form-field-theme-success .select-field-option-selected{background:var(--color-success-50, #ecfdf5);color:var(--color-success-700, #047857)}

.form-field-theme-warning:focus-within .select-field-control,.form-field-theme-warning.select-field-open .select-field-control{border-color:var(--color-warning, #f59e0b);box-shadow:0 0 0 2px #f59e0b1a}

.form-field-theme-warning .select-field-option-selected{background:var(--color-warning-50, #fffbeb);color:var(--color-warning-700, #b45309)}

.form-field-theme-danger:focus-within .select-field-control,.form-field-theme-danger.select-field-open .select-field-control{border-color:var(--color-danger, #ef4444);box-shadow:0 0 0 2px #ef44441a}

.form-field-theme-danger .select-field-option-selected{background:var(--color-danger-50, #fef2f2);color:var(--color-danger-700, #b91c1c)}

@media(max-width:480px){.select-field-control{min-height:44px;padding:0 10px}.select-field-value,.select-field-placeholder{font-size:1rem}.select-field-open:before{content:"";position:fixed;inset:0;background:#00000080;z-index:9998;animation:select-field-backdrop-enter .2s ease-out}@keyframes select-field-backdrop-enter{0%{opacity:0}to{opacity:1}}.select-field-dropdown{position:fixed!important;inset:auto 8px 8px!important;max-height:70vh!important;border-radius:16px;z-index:9999!important;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003!important;animation:select-field-dropdown-enter-mobile .25s ease-out}.select-field-dropdown-search-input{padding:12px;font-size:1rem;border-radius:8px;min-height:44px}.select-field-option{padding:12px 16px;min-height:48px;font-size:1rem}.select-field-tags{flex-wrap:wrap;max-height:80px;overflow-y:auto}.select-field-tag{max-width:120px;padding:6px 10px;font-size:.875rem}@keyframes select-field-dropdown-enter-mobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}

@media(min-width:481px)and (max-width:768px){.select-field-control{min-height:42px}.select-field-value{font-size:.9375rem}.select-field-dropdown{max-height:400px}.select-field-option{padding:10px 14px;min-height:44px}}

@media(min-width:769px){.select-field-control{min-height:40px}.select-field-value,.select-field-placeholder{font-size:.875rem}.select-field-option{padding:8px 12px}.select-field-option:hover{background-color:var(--form-field-hover-bg, #f3f4f6)}}

@media(hover:none)and (pointer:coarse){.select-field-control{min-height:44px}.select-field-value,.select-field-placeholder{font-size:1rem}.select-field-option{min-height:48px;padding:12px 16px}.select-field-control:hover{border-color:var(--form-field-border-color, #d1d5db)}.select-field-option:hover{background-color:transparent}.select-field-option:active{background-color:var(--form-field-active-bg, #e5e7eb)}}

@media(max-width:768px)and (orientation:landscape){.select-field-dropdown{max-height:40vh}}

@media(prefers-contrast:high){.select-field-control{border-width:2px}.select-field-option:hover,.select-field-option-highlighted{background:var(--select-field-option-background-hover-high-contrast, #000000);color:var(--select-field-option-color-hover-high-contrast, #ffffff)}.select-field-option-selected{background:var(--select-field-option-background-selected-high-contrast, #0066cc);color:var(--select-field-option-color-selected-high-contrast, #ffffff)}}

@media(prefers-reduced-motion:reduce){.select-field-control,.select-field-dropdown-indicator,.select-field-clear,.select-field-tag-remove,.select-field-option,.select-field-load-more-button{transition:none}.select-field-dropdown,.select-field-spinner{animation:none}}

@media print{.select-field-dropdown{display:none}.select-field-control{border:1px solid #000000;background:#fff}.select-field-clear,.select-field-dropdown-indicator{display:none}}

@media(max-width:480px){.select-field-control{min-height:48px;font-size:16px}.select-field-value,.select-field-placeholder{font-size:16px}.select-field-dropdown{max-width:calc(100vw - 24px);max-height:60vh;font-size:16px}.select-field-option{min-height:48px;padding:12px 16px;font-size:16px}.select-field-search-input{min-height:44px;font-size:16px}}

@media(min-width:481px)and (max-width:768px){.select-field-control{min-height:46px}.select-field-option{min-height:44px}.select-field-dropdown{max-height:50vh}}

@media(hover:none)and (pointer:coarse){.select-field-control{min-height:48px;font-size:16px}.select-field-value,.select-field-placeholder{font-size:16px}.select-field-option{min-height:48px;padding:12px 16px;font-size:16px}.select-field-dropdown-indicator,.select-field-clear{width:32px;height:32px}.select-field-control:hover:not(.select-field-disabled){border-color:var(--select-field-border-color, #d1d5db)}.select-field-option:hover{background-color:transparent}.select-field-control:active:not(.select-field-disabled){transform:scale(.99)}.select-field-option:active{background-color:var(--select-field-option-background-hover, #f3f4f6)}.select-field-clear:active,.select-field-dropdown-indicator:active{transform:scale(.95)}}

.select-field-dropdown{-webkit-overflow-scrolling:touch}

.select-field-control,.select-field-option,.select-field-clear,.select-field-dropdown-indicator{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

.select-field-control,.select-field-search-input{-webkit-appearance:none;appearance:none}

@supports (padding-bottom: env(safe-area-inset-bottom)){.select-field-dropdown--bottom{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.select-field-dropdown--top{padding-top:calc(8px + env(safe-area-inset-top))}}

@media(max-width:768px){.select-field-control{min-height:44px;padding:0 14px;font-size:16px}.select-field-value,.select-field-placeholder{font-size:16px}.select-field-dropdown{position:fixed!important;inset:auto 0 0!important;max-height:60vh;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #00000026;z-index:9999;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.select-field-open .select-field-dropdown{transform:translateY(0)}.select-field-search-input{font-size:16px;min-height:44px;padding:10px 14px}.select-field-option{min-height:48px;padding:12px 16px;font-size:16px}.select-field-tag{padding:6px 10px;font-size:14px}.select-field-tag-remove{width:20px;height:20px;font-size:16px}.select-field-clear,.select-field-dropdown-indicator{min-width:44px;min-height:44px}.select-field-dropdown:before{content:"";display:block;width:40px;height:4px;background:#cbd5e1;border-radius:2px;margin:8px auto 12px}}

@media(max-width:480px){.select-field-dropdown{max-height:70vh}.select-field-tags{gap:6px}.select-field-tag{max-width:100%}}

:root{--checkbox-size: 20px;--checkbox-gap: .5rem;--checkbox-primary: #3b82f6;--checkbox-secondary: #64748b;--checkbox-success: #10b981;--checkbox-danger: #ef4444;--checkbox-warning: #f59e0b;--checkbox-info: #3b82f6;--checkbox-border: #d1d5db;--checkbox-border-hover: #9ca3af;--checkbox-bg: #ffffff;--checkbox-bg-hover: #f9fafb;--checkbox-text: #374151;--checkbox-text-secondary: #6b7280;--checkbox-radius: 4px;--checkbox-transition: all .2s cubic-bezier(.25, .46, .45, .94);--checkbox-focus-ring: 0 0 0 3px rgba(59, 130, 246, .1);--checkbox-size-small: 16px;--checkbox-size-medium: 20px;--checkbox-size-large: 24px;--checkbox-font-small: .8125rem;--checkbox-font-medium: .875rem;--checkbox-font-large: 1rem}

.checkbox-field{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}

.form-field .checkbox-field-container{margin-top:2px}

.form-field .checkbox-field-option{margin-bottom:0}

.form-field .checkbox-field-horizontal{gap:6px}

.form-field .checkbox-field-horizontal .checkbox-field-option{padding:.25rem .5rem;min-width:auto;flex:0 0 auto}

.checkbox-field-container{display:flex;flex-direction:column;gap:0;width:100%}

.checkbox-field-horizontal{flex-direction:row!important;flex-wrap:wrap;gap:6px}

.checkbox-field-spacing-compact .checkbox-field-option{padding:.25rem;min-height:32px}

.checkbox-field-spacing-normal .checkbox-field-option{padding:.375rem;min-height:36px}

.checkbox-field-spacing-comfortable .checkbox-field-option{padding:.5rem;min-height:40px}

.checkbox-field-option{display:flex!important;align-items:center!important;gap:.5rem!important;padding:.375rem;cursor:pointer!important;border-radius:var(--checkbox-radius);transition:var(--checkbox-transition);user-select:none;position:relative;text-decoration:none;color:inherit;width:100%;box-sizing:border-box;min-height:36px}

.checkbox-field-horizontal .checkbox-field-option{width:auto!important;flex:0 0 auto;margin-right:0;min-width:auto;padding:.25rem .5rem}

.checkbox-field-option:hover{background-color:var(--checkbox-bg-hover)}

.checkbox-field-input{width:var(--checkbox-size)!important;height:var(--checkbox-size)!important;margin:0!important;opacity:0!important;cursor:pointer!important}

.checkbox-field-indicator{width:var(--checkbox-size)!important;height:var(--checkbox-size)!important;min-width:var(--checkbox-size)!important;min-height:var(--checkbox-size)!important;position:relative;border:2px solid var(--checkbox-border);border-radius:var(--checkbox-radius);background:var(--checkbox-bg);display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;transition:var(--checkbox-transition);margin:0}

.checkbox-field-indicator:hover{border-color:var(--checkbox-border-hover)}

.checkbox-field-indicator-background{position:absolute;inset:0;border-radius:calc(var(--checkbox-radius) - 2px);background:transparent;transition:var(--checkbox-transition)}

.checkbox-field-indicator-check{width:14px;height:14px;color:#fff;stroke:currentColor;opacity:0;transform:scale(.8);transition:var(--checkbox-transition);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}

.checkbox-field-input:checked+.checkbox-field-indicator .checkbox-field-indicator-check{opacity:1!important;transform:scale(1)!important}

.checkbox-field-content{flex:1!important;display:flex!important;align-items:center!important}

.checkbox-field-horizontal .checkbox-field-content{flex:0 1 auto;white-space:nowrap}

.checkbox-field-label{color:var(--checkbox-text)!important;font-weight:400;font-size:var(--checkbox-font-medium);margin:0;cursor:pointer!important;user-select:none!important;line-height:1.5;letter-spacing:.01em}

.checkbox-field-input:checked+.checkbox-field-indicator-primary,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-primary{background:var(--checkbox-primary)!important;border-color:var(--checkbox-primary)!important}

.checkbox-field-input:checked+.checkbox-field-indicator-secondary,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-secondary{background:var(--checkbox-secondary)!important;border-color:var(--checkbox-secondary)!important}

.checkbox-field-input:checked+.checkbox-field-indicator-success,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-success{background:var(--checkbox-success)!important;border-color:var(--checkbox-success)!important}

.checkbox-field-input:checked+.checkbox-field-indicator-danger,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-danger{background:var(--checkbox-danger)!important;border-color:var(--checkbox-danger)!important}

.checkbox-field-input:checked+.checkbox-field-indicator-warning,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-warning{background:var(--checkbox-warning)!important;border-color:var(--checkbox-warning)!important}

.checkbox-field-input:checked+.checkbox-field-indicator-info,.checkbox-field-input:checked+.checkbox-field-indicator.checkbox-field-indicator-info{background:var(--checkbox-info)!important;border-color:var(--checkbox-info)!important}

.checkbox-field-size-small{--checkbox-size: var(--checkbox-size-small)}

.checkbox-field-size-small .checkbox-field-label{font-size:var(--checkbox-font-small)}

.checkbox-field-size-small .checkbox-field-indicator-check{width:10px;height:10px;stroke-width:2}

.checkbox-field-size-small .checkbox-field-option{min-height:36px}

.checkbox-field-size-medium{--checkbox-size: var(--checkbox-size-medium)}

.checkbox-field-size-medium .checkbox-field-label{font-size:var(--checkbox-font-medium)}

.checkbox-field-size-large{--checkbox-size: var(--checkbox-size-large)}

.checkbox-field-size-large .checkbox-field-label{font-size:var(--checkbox-font-large)}

.checkbox-field-size-large .checkbox-field-indicator-check{width:16px;height:16px;stroke-width:3}

.checkbox-field-size-large .checkbox-field-option{min-height:52px}

.checkbox-field-option-disabled{opacity:.5!important;cursor:not-allowed!important}

.checkbox-field-option-disabled .checkbox-field-input{cursor:not-allowed!important}

.checkbox-field-option-disabled .checkbox-field-label{cursor:not-allowed!important;color:var(--checkbox-text-secondary)!important}

.checkbox-field-option-disabled .checkbox-field-indicator{background:#f3f4f6!important;border-color:#d1d5db!important}

.checkbox-field-input:focus+.checkbox-field-indicator{box-shadow:var(--checkbox-focus-ring)}

.form-field__helper-text{margin-top:.5rem;color:var(--checkbox-text-secondary);font-size:.75rem;line-height:1.43;letter-spacing:.01em}

@media(max-width:768px){.checkbox-field-horizontal{flex-direction:column!important}.checkbox-field-horizontal .checkbox-field-option{width:100%!important;margin-right:0;min-width:auto}.checkbox-field-option{padding:.875rem .75rem;min-height:48px}.checkbox-field-size-small .checkbox-field-option{min-height:44px}.checkbox-field-size-large .checkbox-field-option{min-height:56px}:root{--checkbox-size-small: 18px;--checkbox-size-medium: 22px;--checkbox-size-large: 26px}}

@media(max-width:480px){.checkbox-field-spacing-comfortable .checkbox-field-option{padding:1rem .5rem}.checkbox-field-spacing-normal .checkbox-field-option{padding:.875rem .5rem}.checkbox-field-spacing-compact .checkbox-field-option{padding:.75rem .5rem}}

@media(min-width:768px)and (max-width:1024px){.checkbox-field-horizontal .checkbox-field-option{min-width:140px}}

@media(min-width:1024px){.checkbox-field-horizontal .checkbox-field-option{min-width:160px}}

@media(hover:none)and (pointer:coarse){.checkbox-field-option{min-height:48px}.checkbox-field-size-small .checkbox-field-option{min-height:44px}.checkbox-field-size-large .checkbox-field-option{min-height:56px}.checkbox-field-option:hover{background-color:transparent}.checkbox-field-indicator:hover{border-color:var(--checkbox-border)}.checkbox-field-option:active{background-color:var(--checkbox-bg-hover);transform:scale(.98)}}

@media(prefers-color-scheme:dark){:root{--checkbox-bg: #374151;--checkbox-bg-hover: #4b5563;--checkbox-border: #6b7280;--checkbox-border-hover: #9ca3af;--checkbox-text: #f9fafb;--checkbox-text-secondary: #d1d5db}}

[data-theme=dark]{--checkbox-bg: #374151;--checkbox-bg-hover: #4b5563;--checkbox-border: #6b7280;--checkbox-border-hover: #9ca3af;--checkbox-text: #f9fafb;--checkbox-text-secondary: #d1d5db}

@media(prefers-contrast:high){.checkbox-field-indicator{border-width:3px}.checkbox-field-input:checked+.checkbox-field-indicator{border-width:3px}}

@media(max-width:768px){.checkbox-field-horizontal{flex-direction:column!important;gap:0}.checkbox-field-horizontal .checkbox-field-option{width:100%!important;padding:.375rem}.checkbox-field-option{min-height:44px!important;padding:.5rem .375rem}.checkbox-field-spacing-compact .checkbox-field-option{min-height:40px!important;padding:.375rem .25rem}:root{--checkbox-size: 22px}}

@media(max-width:480px){.checkbox-field-option{gap:.375rem!important}}

@media(prefers-reduced-motion:reduce){.checkbox-field-option,.checkbox-field-indicator,.checkbox-field-indicator-check{transition:none}.checkbox-field-option:active{transform:none}}

@media print{.checkbox-field-option{background:transparent!important;padding:.25rem 0!important;break-inside:avoid}.checkbox-field-indicator{border:2px solid #000!important;background:#fff!important}.checkbox-field-input:checked+.checkbox-field-indicator{background:#000!important}.checkbox-field-input:checked+.checkbox-field-indicator .checkbox-field-indicator-check{color:#fff!important}.checkbox-field-label{color:#000!important}}

.checkbox-field-input{-webkit-appearance:none;appearance:none}

.checkbox-field-option{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

@supports (padding-bottom: env(safe-area-inset-bottom)){.checkbox-field-group--fixed-bottom{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}

.switch-field-container{display:flex;flex-direction:column;gap:6px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:.875rem;line-height:1.5;letter-spacing:.01em}

.form-field .switch-field-container{width:100%}

.form-field .switch-field-wrapper{min-height:44px;align-items:center}

.form-field--inline .switch-field-wrapper{justify-content:flex-start}

.switch-field-wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;position:relative}

.switch-field-switch-container{position:relative;display:inline-block}

.switch-field-label{font-size:clamp(.875rem,.8rem + .15vw,.9375rem);font-weight:400;color:#374151;cursor:pointer;user-select:none;line-height:1.5}

.switch-field-required{color:#9ca3af;font-weight:400;margin-left:2px}

.switch-field-disabled .switch-field-label,.switch-field-readonly .switch-field-label{color:#9ca3af;cursor:not-allowed}

.switch-field-label-start .switch-field-label{order:-1}

.switch-field-label-end .switch-field-label{order:1}

.switch-field-switch{position:relative;display:inline-block;width:52px;height:32px;cursor:pointer;outline:none}

.switch-field-input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:10}

.switch-field-track{position:absolute;inset:0;background-color:#ccc;border-radius:16px;transition:background-color .3s ease;border:1px solid rgba(0,0,0,.1)}

.switch-field-handle{position:absolute;top:2px;left:2px;width:28px;height:28px;background-color:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 6px #0003;z-index:2}

.switch-field-ripple{position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background-color:#007aff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}

.switch-field-switch-checked .switch-field-track{background-color:#007aff;border-color:#007aff}

.switch-field-switch-checked .switch-field-handle{transform:translate(20px)}

.switch-field-switch-checked:active .switch-field-ripple{width:40px;height:40px}

.switch-field-label{color:#333;font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:.01em;user-select:none;cursor:pointer;margin:0}

.switch-field-switch-small{width:44px;height:26px}

.switch-field-switch-small .switch-field-track{border-radius:13px}

.switch-field-switch-small .switch-field-handle{width:22px;height:22px;top:2px;left:2px}

.switch-field-switch-small.switch-field-switch-checked .switch-field-handle{transform:translate(18px)}

.switch-field-switch-medium{width:52px;height:32px}

.switch-field-switch-medium .switch-field-track{border-radius:16px}

.switch-field-switch-medium .switch-field-handle{width:28px;height:28px;top:2px;left:2px}

.switch-field-switch-medium.switch-field-switch-checked .switch-field-handle{transform:translate(20px)}

.switch-field-switch-large{width:60px;height:36px}

.switch-field-switch-large .switch-field-track{border-radius:18px}

.switch-field-switch-large .switch-field-handle{width:32px;height:32px;top:2px;left:2px}

.switch-field-switch-large.switch-field-switch-checked .switch-field-handle{transform:translate(24px)}

.switch-field-switch-primary.switch-field-switch-checked .switch-field-track{background-color:#007aff;border-color:#007aff}

.switch-field-switch-secondary.switch-field-switch-checked .switch-field-track{background-color:#6c757d;border-color:#6c757d}

.switch-field-switch-success.switch-field-switch-checked .switch-field-track{background-color:#28a745;border-color:#28a745}

.switch-field-switch-danger.switch-field-switch-checked .switch-field-track{background-color:#dc3545;border-color:#dc3545}

.switch-field-switch-warning.switch-field-switch-checked .switch-field-track{background-color:#ffc107;border-color:#ffc107}

.switch-field-switch-info.switch-field-switch-checked .switch-field-track{background-color:#17a2b8;border-color:#17a2b8}

.switch-field-switch-light.switch-field-switch-checked .switch-field-track{background-color:#f8f9fa;border-color:#f8f9fa}

.switch-field-switch-light.switch-field-switch-checked .switch-field-handle{background-color:#495057}

.switch-field-switch-dark.switch-field-switch-checked .switch-field-track{background-color:#343a40;border-color:#343a40}

.switch-field-switch-ios .switch-field-track{border-radius:16px}

.switch-field-switch-material .switch-field-track{border-radius:12px;background-color:#00000061}

.switch-field-switch-material.switch-field-switch-checked .switch-field-track{background-color:#007aff80}

.switch-field-switch-material .switch-field-handle{box-shadow:0 2px 4px #0000004d}

.switch-field-switch-windows .switch-field-track{border-radius:2px;background-color:#ccc}

.switch-field-switch-windows .switch-field-handle{border-radius:2px;box-shadow:0 1px 3px #0000004d}

.switch-field-container.switch-field-disabled{opacity:.6;pointer-events:none}

.switch-field-switch-disabled{opacity:.6;cursor:not-allowed}

.switch-field-switch-disabled .switch-field-input{cursor:not-allowed}

.switch-field-switch-disabled .switch-field-track{background-color:#e9ecef}

.switch-field-switch-disabled .switch-field-handle{background-color:#f8f9fa;box-shadow:0 1px 3px #0000001a}

.switch-field-container.switch-field-readonly,.switch-field-switch-readonly{cursor:default}

.switch-field-switch-readonly .switch-field-input{cursor:default;pointer-events:none}

.switch-field-handle-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:#666;transition:all .3s ease;z-index:3;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}

.switch-field-handle-icon svg{width:14px;height:14px;fill:currentColor}

.switch-field-switch-checked .switch-field-handle-icon{color:#007aff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}

.switch-field-switch-small .switch-field-handle-icon{width:12px;height:12px}

.switch-field-switch-small .switch-field-handle-icon svg{width:10px;height:10px}

.switch-field-switch-medium .switch-field-handle-icon{width:16px;height:16px}

.switch-field-switch-medium .switch-field-handle-icon svg{width:14px;height:14px}

.switch-field-switch-large .switch-field-handle-icon{width:20px;height:20px}

.switch-field-switch-large .switch-field-handle-icon svg{width:18px;height:18px}

.switch-field-switch-success.switch-field-switch-checked .switch-field-handle-icon{color:#28a745}

.switch-field-switch-danger.switch-field-switch-checked .switch-field-handle-icon{color:#dc3545}

.switch-field-switch-warning.switch-field-switch-checked .switch-field-handle-icon{color:#ffc107}

.switch-field-switch-info.switch-field-switch-checked .switch-field-handle-icon{color:#17a2b8}

.switch-field-container.switch-field-label-start .switch-field-wrapper{flex-direction:row}

.switch-field-container.switch-field-label-end .switch-field-wrapper{flex-direction:row-reverse}

.switch-field-helper-text{font-size:.75rem;color:#6c757d;margin-top:4px;line-height:1.43;letter-spacing:.01em}

.switch-field-container.switch-field-error .switch-field-helper-text{color:#dc3545}

.switch-field-container.switch-field-success .switch-field-helper-text{color:#28a745}

.switch-field-container.switch-field-error .switch-field-track{border-color:#dc3545}

.switch-field-container.switch-field-success .switch-field-track{border-color:#28a745}

.switch-field-container:not(.switch-field-disabled):not(.switch-field-readonly):hover .switch-field-handle{box-shadow:0 4px 12px #00000040;transform:scale(1.05)}

.switch-field-container:not(.switch-field-disabled):not(.switch-field-readonly):hover .switch-field-switch-checked .switch-field-handle{transform:translate(20px) scale(1.05)}

.switch-field-container:not(.switch-field-disabled):not(.switch-field-readonly):hover .switch-field-track{opacity:.9}

.switch-field-container:not(.switch-field-disabled):not(.switch-field-readonly):hover .switch-field-handle-icon{transform:translate(-50%,-50%) scale(1.1)}

.switch-field-container:hover .switch-field-handle-icon{transform:translate(-50%,-50%) scale(1.1)}

.switch-field-input:focus+.switch-field-track{box-shadow:0 0 0 3px #007aff4d}

.switch-field-input:focus-visible+.switch-field-track{outline:2px solid #007aff;outline-offset:2px}

.switch-field-switch-animated .switch-field-handle{transition:transform .3s cubic-bezier(.4,0,.2,1)}

.switch-field-switch-animated .switch-field-track{transition:background-color .3s cubic-bezier(.4,0,.2,1)}

@media(max-width:480px){.switch-field-container,.switch-field-label{font-size:1rem}.switch-field-wrapper{gap:8px}.switch-field-icon{width:18px;height:18px}.switch-field-icon svg{width:14px;height:14px}.switch-field-helper-text{font-size:.8125rem}}

@media(min-width:481px)and (max-width:768px){.switch-field-container,.switch-field-label{font-size:.9375rem}}

@media(min-width:769px){.switch-field-container,.switch-field-label{font-size:.875rem}}

@media(hover:none)and (pointer:coarse){.switch-field-container,.switch-field-label{font-size:1rem}.switch-field-container:hover .switch-field-handle{box-shadow:0 2px 6px #0003}}

@media(prefers-reduced-motion:reduce){.switch-field-handle,.switch-field-track,.switch-field-ripple{transition:none}}

@media(prefers-color-scheme:dark){.switch-field-label{color:#fff}.switch-field-track{background-color:#3a3a3c;border-color:#48484a}.switch-field-handle{background-color:#fff;box-shadow:0 2px 6px #0006}.switch-field-helper-text{color:#8e8e93}}

.switch-field-input{-webkit-appearance:none;appearance:none}

.switch-field-container{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

.switch-field-track{touch-action:manipulation}

@media(max-width:480px){.switch-field-container{min-height:48px;font-size:16px}.switch-field-label{font-size:16px}}

@supports (padding-bottom: env(safe-area-inset-bottom)){.switch-field-group--fixed-bottom{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}

.toggle-wrapper{display:inline-flex;align-items:center;gap:clamp(8px,.5rem + .25vw,12px);cursor:pointer;user-select:none}

.toggle-wrapper.disabled{opacity:.5;cursor:not-allowed}

.toggle-input{position:absolute;opacity:0;width:0;height:0}

.toggle-slider{position:relative;display:inline-block;inline-size:clamp(44px,2.75rem + .25vw,48px);block-size:clamp(22px,1.375rem + .125vw,24px);background-color:#ccc;border-radius:24px;transition:background-color .3s}

.toggle-slider:before{content:"";position:absolute;inline-size:clamp(18px,1.125rem + .125vw,20px);block-size:clamp(18px,1.125rem + .125vw,20px);inset-inline-start:2px;inset-block-start:2px;background-color:#fff;border-radius:50%;transition:transform .3s;box-shadow:0 2px 4px #0003}

.toggle-input:checked+.toggle-slider{background-color:#00a699}

.toggle-input:checked+.toggle-slider:before{transform:translate(clamp(22px,1.375rem + .125vw,24px))}

.toggle-input:focus+.toggle-slider{box-shadow:0 0 0 3px #00a69933}

.toggle-wrapper.disabled .toggle-slider{background-color:#e0e0e0}

.toggle-label{font-size:14px;color:var(--text-primary, #333)}

.searchbox{position:relative;display:flex;align-items:center;width:100%;background:#fff;border:1.5px solid #d1d5db;border-radius:10px;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none!important;box-shadow:none}

.searchbox:hover{border-color:#9ca3af;background:#fafafa}

.searchbox:focus-within{border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51f!important;outline:none!important;background:#fff}

.searchbox__icon{position:absolute;left:12px;color:#6b7280;pointer-events:none;flex-shrink:0}

.searchbox:focus-within .searchbox__icon{color:#4f46e5}

.searchbox__input{flex:1;min-width:0;height:100%;padding:0 40px 0 36px;border:none!important;outline:none!important;background:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:15px;font-weight:400;line-height:1.5;color:#1f2937;-webkit-appearance:none;appearance:none;box-shadow:none!important}

.searchbox__input:focus{border:none!important;outline:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent}

.searchbox__input::placeholder{color:#9ca3af}

.searchbox__input:disabled{color:#9ca3af;cursor:not-allowed}

.searchbox__clear{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:4px;background:transparent;color:#6b7280;cursor:pointer;transition:all .15s ease}

.searchbox__clear:hover{background:#f3f4f6;color:#374151}

.searchbox__clear:active{background:#e5e7eb;transform:scale(.92)}

.searchbox--sm{height:32px;border-radius:6px}

.searchbox--sm .searchbox__icon{left:10px;width:14px;height:14px}

.searchbox--sm .searchbox__input{padding:0 36px 0 30px;font-size:14px}

.searchbox--sm .searchbox__clear{width:20px;height:20px}

.searchbox--md{height:40px;border-radius:8px}

.searchbox--md .searchbox__icon{left:12px;width:16px;height:16px}

.searchbox--md .searchbox__input{padding:0 40px 0 36px;font-size:15px}

.searchbox--lg{height:48px;border-radius:10px}

.searchbox--lg .searchbox__icon{left:14px;width:18px;height:18px}

.searchbox--lg .searchbox__input{padding:0 44px 0 40px;font-size:16px}

@media(max-width:1024px)and (min-width:769px){.searchbox{border-radius:10px}.searchbox--md{height:42px}.searchbox__input{font-size:15px}}

@media(max-width:768px){.searchbox{min-height:44px;border-radius:12px;border-width:1.5px}.searchbox--sm{height:40px;border-radius:10px}.searchbox--md{height:46px}.searchbox--lg{height:52px}.searchbox__input{font-size:16px;padding:0 44px 0 38px}.searchbox__clear{min-width:44px;min-height:44px;right:4px}.searchbox:focus-within{box-shadow:0 0 0 4px #4f46e526!important}}

@media(max-width:480px){.searchbox{border-radius:14px}.searchbox--sm{border-radius:10px}.searchbox--sm .searchbox__input{font-size:15px;padding:0 40px 0 34px}.searchbox--md .searchbox__input{font-size:16px;padding:0 46px 0 40px}.searchbox__icon{left:14px}}

.searchbox__clear:focus-visible{outline:2px solid #4f46e5!important;outline-offset:2px;border-radius:6px}

.searchbox *:focus,.searchbox *:focus-visible{outline-color:#4f46e5!important}

@media(prefers-contrast:high){.searchbox{border-width:2px}.searchbox:focus-within{border-width:2px;box-shadow:0 0 0 4px #4f46e533}}

@media(prefers-reduced-motion:reduce){.searchbox,.searchbox__clear{transition:none}}

:root{--pm-tab-primary: #3b82f6;--pm-tab-primary-dark: #2563eb;--pm-tab-primary-light: #60a5fa;--pm-tab-text: #555;--pm-tab-text-light: #6b7280;--pm-tab-text-dark: #374151;--pm-tab-bg: #fff;--pm-tab-bg-nav: #f5f7fa;--pm-tab-bg-hover: rgb(59 130 246 / .05);--pm-tab-border: #e0e0e0;--pm-tab-error: #ef4444;--pm-tab-error-dark: #dc2626;--pm-tab-error-light: #fecaca;--pm-tab-error-bg: #fef2f2;--pm-tab-transition: all .2s cubic-bezier(.4, 0, .2, 1);--pm-tab-transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--pm-tab-padding-x: clamp(16px, 1rem + .5vw, 24px);--pm-tab-padding-y: clamp(10px, .625rem + .25vw, 14px);--pm-tab-panel-padding: clamp(16px, 1rem + .25vw, 20px);--pm-tab-font-size: clamp(13px, .8125rem + .2vw, 15px);--pm-tab-font-weight: 500;--pm-tab-font-weight-bold: 600;--pm-tab-shadow: 0 2px 8px rgb(0 0 0 / .05);--pm-tab-shadow-hover: 0 4px 12px rgb(0 0 0 / .08);--pm-tab-border-radius: 8px;--pm-tab-z-index-base: 1;--pm-tab-z-index-sticky: 10;--pm-tab-z-index-focus: 11}

@media(prefers-color-scheme:dark){:root:not([data-theme]){--pm-tab-text: #e5e7eb;--pm-tab-text-light: #9ca3af;--pm-tab-text-dark: #f9fafb;--pm-tab-bg: #1f2937;--pm-tab-bg-nav: #111827;--pm-tab-bg-hover: rgb(59 130 246 / .15);--pm-tab-border: #374151}}

.pm-tab-container,.pm-tab-container *{box-sizing:border-box}

.pm-tab-container{display:flex;flex-direction:column;width:100%;border:1px solid var(--pm-tab-border);border-radius:var(--pm-tabs-radius);box-shadow:var(--pm-tab-shadow);background-color:var(--pm-tab-bg);overflow:hidden;transition:var(--pm-tab-transition);container-type:inline-size;container-name:tab-container}

.pm-tab-container:hover{box-shadow:var(--pm-tab-shadow-hover)}

.pm-tab-nav{display:flex;flex-direction:row;background:linear-gradient(to bottom,var(--pm-tab-bg-nav) 0%,rgba(245,247,250,.7) 100%);border-bottom:1px solid var(--pm-tab-border);position:relative;overflow-x:auto;overflow-y:hidden;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-behavior:smooth}

.pm-tab-nav::-webkit-scrollbar{height:6px}

.pm-tab-nav::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}

.pm-tab-nav::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}

.pm-tab-nav::-webkit-scrollbar-thumb:hover{background:#94a3b8}

.pm-tab-nav-sticky{position:sticky;top:0;z-index:var(--pm-tab-z-index-sticky)}

.pm-tab-item{flex:1 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:var(--pm-tab-padding-y) var(--pm-tab-padding-x);cursor:pointer;font-size:var(--pm-tab-font-size);font-weight:var(--pm-tab-font-weight);color:var(--pm-tab-text);transition:var(--pm-tab-transition);position:relative;user-select:none;border:none;background:transparent;outline:none;text-align:center;min-width:100px;border-bottom:3px solid transparent;will-change:transform,background-color,color}

.pm-tab-item:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#3b82f608,#3b82f614);opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:-1}

.pm-tab-item:hover:not(.pm-tab-item-disabled):not(.pm-tab-item-loading):before{opacity:1}

.pm-tab-item:hover:not(.pm-tab-item-disabled):not(.pm-tab-item-loading){color:var(--pm-tab-primary);box-shadow:inset 0 -3px #3b82f626}

.pm-tab-item:focus-visible{box-shadow:inset 0 0 0 2px var(--pm-tab-primary);outline:none;z-index:var(--pm-tab-z-index-focus)}

.pm-tab-item-active{color:var(--pm-tab-primary);border-bottom-color:var(--pm-tab-primary);background:linear-gradient(to bottom,var(--pm-tab-bg) 0%,rgba(255,255,255,.95) 100%);font-weight:var(--pm-tab-font-weight-bold);box-shadow:0 -2px 8px #3b82f61a}

.pm-tab-item-active:after{content:"";position:absolute;bottom:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--pm-tab-primary) 20%,var(--pm-tab-primary-dark) 50%,var(--pm-tab-primary) 80%,transparent 100%);animation:slide-in .3s ease}

@media(max-width:1024px)and (min-width:769px){.pm-tab-item{min-width:90px;padding:12px 18px;font-size:14px}}

@media(max-width:768px){.pm-tab-nav{scrollbar-width:auto}.pm-tab-nav::-webkit-scrollbar{height:8px}.pm-tab-item{min-width:100px;min-height:44px;padding:14px 20px;font-size:15px;flex:0 0 auto}.pm-tab-item-active{font-size:15px}.pm-tab-icon{font-size:20px}}

@media(max-width:480px){.pm-tab-item{min-width:80px;min-height:48px;padding:14px 16px;font-size:14px}.pm-tab-panel{padding:16px 12px}}

@media(hover:none)and (pointer:coarse){.pm-tab-item{min-height:48px;padding:16px 20px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pm-tab-item:before{display:none}}

@keyframes slide-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}

.pm-tab-item-active:hover:not(.pm-tab-item-disabled){background:linear-gradient(to bottom,#fff,#fffffffa)}

.pm-tab-item-disabled{opacity:.5;pointer-events:none;cursor:not-allowed}

.pm-tab-item-disabled:hover{background-color:transparent;color:#555;transform:none}

.pm-tab-item-icon{display:inline-flex;margin-right:8px;font-size:18px}

.pm-tab-item-text{position:relative}

.pm-tab-item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background-color:#ef4444;color:#fff;font-size:11px;font-weight:600;margin-left:8px;line-height:1}

.pm-tab-item-loading{opacity:.7;pointer-events:none}

.pm-tab-item-spinner{display:inline-block;width:16px;height:16px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:pm-tab-spin 1s linear infinite;margin-right:8px}

@keyframes pm-tab-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}

.pm-tab-item-invalid{border-bottom-color:var(--pm-tab-error)!important;color:var(--pm-tab-error);animation:pulse-error 2s ease-in-out infinite}

@keyframes pulse-error{0%,to{opacity:1}50%{opacity:.8}}

.pm-tab-item-invalid:before{background:linear-gradient(180deg,#ef444408,#ef444414)}

.pm-tab-item-invalid:hover:not(.pm-tab-item-disabled){box-shadow:inset 0 -3px #ef444440}

.pm-tab-item-error-indicator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background-color:#ef4444;color:#fff;font-size:10px;font-weight:700;margin-left:6px}

.pm-tab-required{color:#ef4444;margin-left:3px;font-weight:700;font-size:14px}

.pm-tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6b7280}

.pm-tab-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:pm-tab-spin 1s linear infinite;margin-bottom:12px}

.pm-tab-error{padding:40px 20px;text-align:center;color:#ef4444;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:20px}

.pm-tab-error h3{margin:0 0 12px;color:#dc2626}

.pm-tab-error button{margin-top:16px;padding:8px 16px;background-color:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}

.pm-tab-error button:hover{background-color:#dc2626}

.pm-tab-errors{margin-top:12px;padding:12px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px}

.pm-tab-error-message{color:#dc2626;font-size:14px;margin-bottom:4px}

.pm-tab-error-message:last-child{margin-bottom:0}

.pm-tab-content{position:relative}

.pm-tab-panel{padding:20px;animation:tab-fade-in .25s ease;overflow:auto}

@keyframes tab-fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:480px){.pm-tab-container{border-radius:6px;box-shadow:0 1px 6px #00000014}.pm-tab-nav{scrollbar-width:auto;padding-bottom:2px}.pm-tab-nav::-webkit-scrollbar{height:4px}.pm-tab-item{min-width:90px;padding:12px 14px;font-size:14px;min-height:44px}.pm-tab-item-icon{font-size:16px;margin-right:6px}.pm-tab-item-text{font-size:13px}.pm-tab-item-badge{min-width:16px;height:16px;font-size:10px;margin-left:6px}.pm-tab-panel{padding:14px;font-size:14px}.pm-tab-loading,.pm-tab-error{padding:30px 16px}.pm-tab-spinner{width:28px;height:28px;border-width:2px}.pm-tab-item-spinner{width:14px;height:14px;border-width:2px}}

@media(min-width:481px)and (max-width:768px){.pm-tab-item{padding:13px 18px;font-size:14px;min-width:100px}.pm-tab-item-icon{font-size:17px}.pm-tab-panel{padding:16px}.pm-tab-loading,.pm-tab-error{padding:35px 18px}}

@media(min-width:769px)and (max-width:1024px){.pm-tab-item{padding:14px 22px;font-size:15px}.pm-tab-panel{padding:18px}}

@media(min-width:1025px){.pm-tab-item{padding:14px 28px;min-width:120px}.pm-tab-item:hover:not(.pm-tab-item-disabled):not(.pm-tab-item-loading){box-shadow:inset 0 -3px #3b82f640,0 2px 4px #3b82f61a}.pm-tab-item-active:hover{box-shadow:0 -2px 8px #3b82f626}.pm-tab-panel{padding:24px}}

@media(hover:none)and (pointer:coarse){.pm-tab-item{min-height:44px;padding:14px 16px}.pm-tab-item:before{display:none}.pm-tab-item:hover{background-color:transparent;color:var(--pm-tab-text);box-shadow:none}.pm-tab-item:active{background-color:#3b82f61a;color:var(--pm-tab-primary)}.pm-tab-item-active:hover{background:linear-gradient(to bottom,var(--pm-tab-bg) 0%,rgba(255,255,255,.95) 100%);color:var(--pm-tab-primary)}.pm-tab-error button{min-height:44px;padding:12px 20px;font-size:16px}}

@media(max-width:768px)and (orientation:landscape){.pm-tab-item{padding:10px 16px;min-height:40px}.pm-tab-panel{padding:12px 16px}.pm-tab-loading,.pm-tab-error{padding:20px 16px}}

@media(prefers-contrast:high){.pm-tab-container{border:2px solid #000;box-shadow:none}.pm-tab-nav{border-bottom:2px solid #000}.pm-tab-item{border:1px solid transparent}.pm-tab-item:hover,.pm-tab-item:focus-visible{border-color:#000;background-color:#f0f0f0}.pm-tab-item-active{border-bottom:4px solid #000;background-color:#fff}.pm-tab-item-badge{border:1px solid #fff}.pm-tab-error{border:2px solid #ef4444}}

@media(prefers-reduced-motion:reduce){.pm-tab-item{transition:none}.pm-tab-item:hover{transform:none}.pm-tab-item-spinner,.pm-tab-spinner{animation:none;border-top-color:transparent;border-right-color:#3b82f6}@keyframes tab-fade-in{0%{opacity:1;transform:none}to{opacity:1;transform:none}}}

@media(prefers-color-scheme:dark){:root{--pm-tab-primary: #60a5fa;--pm-tab-primary-dark: #3b82f6;--pm-tab-primary-light: #93c5fd;--pm-tab-text: #d1d5db;--pm-tab-text-light: #9ca3af;--pm-tab-text-dark: #e5e7eb;--pm-tab-bg: #1f2937;--pm-tab-bg-nav: #111827;--pm-tab-bg-hover: rgba(96, 165, 250, .15);--pm-tab-border: #374151;--pm-tab-error: #fca5a5;--pm-tab-error-dark: #dc2626;--pm-tab-error-light: #fecaca;--pm-tab-error-bg: #7f1d1d;--pm-tab-shadow: 0 2px 8px rgba(0, 0, 0, .3);--pm-tab-shadow-hover: 0 4px 12px rgba(0, 0, 0, .4)}.pm-tab-nav{background:linear-gradient(to bottom,#111827,#111827e6)}.pm-tab-item-active{background:linear-gradient(to bottom,#1f2937,#1f2937f2);box-shadow:0 -2px 8px #60a5fa33}.pm-tab-item-active:after{background:linear-gradient(90deg,transparent 0%,#60a5fa 20%,#3b82f6 50%,#60a5fa 80%,transparent 100%)}.pm-tab-panel{background-color:var(--pm-tab-bg);color:var(--pm-tab-text-dark)}.pm-tab-loading{color:var(--pm-tab-text-light);background-color:var(--pm-tab-bg)}.pm-tab-error{background-color:var(--pm-tab-error-bg);border-color:#991b1b;color:var(--pm-tab-error-light)}.pm-tab-error h3{color:var(--pm-tab-error)}.pm-tab-error button{background-color:var(--pm-tab-error-dark)}.pm-tab-error button:hover{background-color:#b91c1c}.pm-tab-errors{background-color:#991b1b;border-color:#b91c1c}.pm-tab-error-message{color:var(--pm-tab-error-light)}.pm-tab-item:before{background:linear-gradient(180deg,#60a5fa0d,#60a5fa26)}.pm-tab-item-invalid:before{background:linear-gradient(180deg,#fca5a50d,#fca5a526)}}

@media print{.pm-tab-container{border:1px solid #000;box-shadow:none}.pm-tab-nav{display:none}.pm-tab-panel{padding:0;page-break-inside:avoid}.pm-tab-item-badge,.pm-tab-loading,.pm-tab-error button{display:none}}

@container tab-container (max-width: 480px){.pm-tab-item{padding:clamp(6px,.375rem + .2vw,10px) clamp(10px,.625rem + .3vw,14px);font-size:clamp(11px,.6875rem + .15vw,13px)}.pm-tab-item-modern{padding:6px 10px;font-size:11px}}

@container tab-container (min-width: 481px) and (max-width: 768px){.pm-tab-item{padding:clamp(8px,.5rem + .2vw,12px) clamp(14px,.875rem + .3vw,18px)}}

@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.pm-tab-container{border-width:.5px}.pm-tab-nav{border-bottom-width:.5px}.pm-tab-item{border-bottom-width:2px}}

.pm-tab-container-modern{border:none;box-shadow:none;background:transparent;border-radius:0}

.pm-tab-container-modern:hover{box-shadow:none}

.pm-tab-nav-modern{background:#fff;border-bottom:2px solid #e5e7eb;padding:12px 24px;gap:4px}

.pm-tab-nav-modern::-webkit-scrollbar{height:6px}

.pm-tab-nav-modern::-webkit-scrollbar-track{background:#f1f5f9}

.pm-tab-nav-modern::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}

.pm-tab-item-modern{padding:8px 16px;font-size:13px;font-weight:600;color:#6b7280;border-bottom:none;border-radius:6px;background:transparent;min-width:auto;transition:all .2s ease}

.pm-tab-item-modern:before{display:none}

.pm-tab-item-modern:hover:not(.pm-tab-item-disabled):not(.pm-tab-item-loading){background:#f3f4f6;color:#374151;box-shadow:none}

.pm-tab-item-modern:focus-visible{box-shadow:inset 0 0 0 2px var(--pm-tab-brand, #00A699);outline:none}

.pm-tab-item-modern-active{background:var(--pm-tab-brand, #00A699)!important;color:#fff!important;border-bottom:none;box-shadow:0 2px 4px #00a69933;font-weight:600;position:relative}

.pm-tab-item-modern-active:after{content:"";position:absolute;bottom:0;left:50%;width:40px;height:2px;background:var(--pm-tab-brand, #00A699);border-radius:1px;transform:translate(-50%) translateY(14px);will-change:transform}

.pm-tab-item-modern-active:hover{background:var(--pm-tab-brand, #00A699)!important;color:#fff!important;box-shadow:0 2px 6px #00a6994d}

.pm-tab-item-modern.pm-tab-item-disabled{opacity:.4;background:transparent}

.pm-tab-item-modern.pm-tab-item-loading{opacity:.6}

@media(max-width:768px){.pm-tab-nav-modern{padding:8px 16px;gap:2px}.pm-tab-item-modern{padding:6px 12px;font-size:12px}.pm-tab-item-modern-active:after{width:30px;transform:translate(-50%) translateY(10px)}}

@media(max-width:480px){.pm-tab-nav-modern{padding:6px 12px}.pm-tab-item-modern{padding:6px 10px;font-size:11px}.pm-tab-item-modern-active:after{width:25px;transform:translate(-50%) translateY(8px)}}

:root{--mbsc-list-background: #fff;--mbsc-list-text-color: rgba(0, 0, 0, .87);--mbsc-list-divider-color: #e0e0e0;--mbsc-list-hover-background: rgba(0, 0, 0, .04);--mbsc-list-active-background: rgba(0, 0, 0, .08);--mbsc-list-selected-background: rgba(33, 150, 243, .2);--mbsc-list-font-size: 16px;--mbsc-list-line-height: 1.4;--mbsc-list-padding: 12px 16px;--mbsc-list-item-height: 48px;--mbsc-list-border-radius: 8px;--mbsc-list-subtitle-color: #757575;--mbsc-list-icon-color: #616161}

.mbsc-list{padding:0;margin:0;list-style:none;background-color:var(--mbsc-list-background);color:var(--mbsc-list-text-color);transition:background-color .2s ease}

.mbsc-list-inset{margin:10px;border-radius:var(--mbsc-list-border-radius);overflow:hidden;box-shadow:0 1px 3px #0000001f}

.mbsc-list-bordered{border:1px solid var(--mbsc-list-divider-color);border-radius:4px}

.mbsc-list-striped .mbsc-list-item:nth-child(odd){background-color:#00000005}

.mbsc-list-item{position:relative;display:flex;align-items:center;padding:var(--mbsc-list-padding);min-height:var(--mbsc-list-item-height);box-sizing:border-box;border-bottom:1px solid var(--mbsc-list-divider-color);cursor:pointer;transition:background-color .2s ease}

.mbsc-list-item:last-child{border-bottom:none}

.mbsc-list-item:hover{background-color:var(--mbsc-list-hover-background)}

.mbsc-list-item.mbsc-active{background-color:var(--mbsc-list-active-background)}

.mbsc-list-item-selected{background-color:var(--mbsc-list-selected-background)}

.mbsc-list-item-disabled{opacity:.65;cursor:not-allowed}

.mbsc-list-item-disabled:hover{background-color:transparent}

.mbsc-list-item-media{display:flex;align-items:center;justify-content:center;margin-right:16px;width:40px;height:40px;overflow:hidden}

.mbsc-list-item-icon{display:flex;align-items:center;justify-content:center;color:var(--mbsc-list-icon-color)}

.mbsc-list-item-image{width:100%;height:100%;object-fit:cover;border-radius:50%}

.mbsc-list-item-content{flex:1;min-width:0}

.mbsc-list-item-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mbsc-list-text-color)}

.mbsc-list-item-subtitle{font-size:14px;color:var(--mbsc-list-subtitle-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.mbsc-list-item-aside{margin-left:16px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center}

.mbsc-list-item-text-right{font-size:14px;color:var(--mbsc-list-subtitle-color)}

.mbsc-list-item-icon-right{color:var(--mbsc-list-subtitle-color)}

.mbsc-list-divider{padding:8px 16px;background-color:#f5f5f5;color:var(--mbsc-list-subtitle-color);font-size:14px;font-weight:500;border-bottom:1px solid var(--mbsc-list-divider-color)}

.mbsc-list-header{padding:16px;background-color:#f5f5f5;color:var(--mbsc-list-text-color);font-weight:500;font-size:16px;border-bottom:1px solid var(--mbsc-list-divider-color)}

.mbsc-list-header-sticky{position:sticky;top:0;z-index:1}

.mbsc-rtl .mbsc-list-item-media{margin-right:0;margin-left:16px}

.mbsc-rtl .mbsc-list-item-aside{margin-left:0;margin-right:16px}

.mbsc-list-selectable .mbsc-list-item{cursor:pointer}

.mbsc-list-selectable .mbsc-list-item-selected:after{content:"";position:absolute;right:16px;width:24px;height:24px;background-color:#2196f3;border-radius:50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z'/%3E%3C/svg%3E");background-size:16px;background-position:center;background-repeat:no-repeat}

.mbsc-rtl .mbsc-list-selectable .mbsc-list-item-selected:after{right:auto;left:16px}

.mbsc-list-item:focus{outline:none}

.mbsc-list-item:focus-visible{box-shadow:inset 0 0 0 2px #2196f366}

.mbsc-ios.mbsc-list{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;--mbsc-list-border-radius: 10px;--mbsc-list-divider-color: #d7d7d7;--mbsc-list-hover-background: rgba(0, 0, 0, .05);--mbsc-list-active-background: rgba(0, 0, 0, .1);--mbsc-list-selected-background: rgba(0, 122, 255, .1);--mbsc-list-text-color: #000;--mbsc-list-subtitle-color: #8e8e93;--mbsc-list-icon-color: #8e8e93;--mbsc-list-padding: 12px 16px;--mbsc-list-item-height: 44px}

.mbsc-ios .mbsc-list-item{padding-left:20px;min-height:44px}

.mbsc-ios .mbsc-list-inset{border-radius:10px;margin:15px 10px}

.mbsc-ios .mbsc-list-inset .mbsc-list-item:first-child{border-top-left-radius:10px;border-top-right-radius:10px}

.mbsc-ios .mbsc-list-inset .mbsc-list-item:last-child{border-bottom-left-radius:10px;border-bottom-right-radius:10px}

.mbsc-ios .mbsc-list-header{text-transform:uppercase;font-size:14px;padding:8px 20px;color:var(--mbsc-list-subtitle-color);background-color:transparent;border-bottom:none}

.mbsc-ios .mbsc-list-item-title{font-weight:400}

.mbsc-ios .mbsc-list-item-icon-right{opacity:.3}

.mbsc-ios .mbsc-list-item.mbsc-active{background-color:var(--mbsc-list-active-background)}

.mbsc-ios .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#007aff}

.mbsc-ios-dark.mbsc-list{--mbsc-list-background: #1c1c1e;--mbsc-list-text-color: #ffffff;--mbsc-list-divider-color: #38383a;--mbsc-list-hover-background: rgba(255, 255, 255, .05);--mbsc-list-active-background: rgba(255, 255, 255, .1);--mbsc-list-selected-background: rgba(10, 132, 255, .2);--mbsc-list-subtitle-color: rgba(255, 255, 255, .6);--mbsc-list-icon-color: rgba(255, 255, 255, .5)}

.mbsc-ios-dark .mbsc-list-header{color:var(--mbsc-list-subtitle-color);background-color:var(--mbsc-list-background)}

.mbsc-ios-dark .mbsc-list-divider{background-color:#2c2c2e;color:var(--mbsc-list-subtitle-color);border-bottom-color:var(--mbsc-list-divider-color)}

.mbsc-ios-dark .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#0a84ff}

.mbsc-material.mbsc-list{font-family:Roboto,sans-serif;--mbsc-list-border-radius: 4px;--mbsc-list-divider-color: rgba(0, 0, 0, .12);--mbsc-list-hover-background: rgba(0, 0, 0, .04);--mbsc-list-active-background: rgba(0, 0, 0, .1);--mbsc-list-selected-background: rgba(98, 0, 238, .08);--mbsc-list-text-color: rgba(0, 0, 0, .87);--mbsc-list-subtitle-color: rgba(0, 0, 0, .6);--mbsc-list-icon-color: rgba(0, 0, 0, .54);--mbsc-list-padding: 16px;--mbsc-list-item-height: 56px}

.mbsc-material .mbsc-list-item{padding:16px;min-height:56px}

.mbsc-material .mbsc-list-inset{border-radius:4px;box-shadow:0 2px 4px #00000024;margin:8px}

.mbsc-material .mbsc-list-item-title{font-size:16px}

.mbsc-material .mbsc-list-item-subtitle{font-size:14px;line-height:1.4}

.mbsc-material .mbsc-list-header{font-size:14px;font-weight:500;color:#6200ee;background-color:transparent;border-bottom:none;text-transform:none;letter-spacing:.25px}

.mbsc-material .mbsc-list-divider{font-size:13px;height:48px;display:flex;align-items:center;font-weight:500;color:var(--mbsc-list-subtitle-color);background-color:transparent}

.mbsc-material .mbsc-list-item.mbsc-active{background-color:var(--mbsc-list-active-background)}

.mbsc-material .mbsc-list-item-image{border-radius:4px}

.mbsc-material .mbsc-list-item:after{content:"";position:absolute;inset:0;background-color:#6200ee;opacity:0;pointer-events:none;transition:opacity .3s}

.mbsc-material .mbsc-list-item.mbsc-active:after{opacity:.1}

.mbsc-material .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#6200ee}

.mbsc-material-dark.mbsc-list{--mbsc-list-background: #121212;--mbsc-list-text-color: rgba(255, 255, 255, .87);--mbsc-list-divider-color: rgba(255, 255, 255, .12);--mbsc-list-hover-background: rgba(255, 255, 255, .08);--mbsc-list-active-background: rgba(255, 255, 255, .13);--mbsc-list-selected-background: rgba(187, 134, 252, .16);--mbsc-list-subtitle-color: rgba(255, 255, 255, .6);--mbsc-list-icon-color: rgba(255, 255, 255, .5)}

.mbsc-material-dark .mbsc-list-header{color:#bb86fc}

.mbsc-material-dark .mbsc-list-divider{color:var(--mbsc-list-subtitle-color);border-bottom-color:var(--mbsc-list-divider-color)}

.mbsc-material-dark .mbsc-list-item:after{background-color:#bb86fc}

.mbsc-material-dark .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#bb86fc}

.mbsc-windows.mbsc-list{font-family:Segoe UI,sans-serif;--mbsc-list-border-radius: 0;--mbsc-list-divider-color: #e5e5e5;--mbsc-list-hover-background: rgba(0, 0, 0, .03);--mbsc-list-active-background: rgba(0, 0, 0, .05);--mbsc-list-selected-background: rgba(0, 120, 215, .1);--mbsc-list-text-color: #000000;--mbsc-list-subtitle-color: rgba(0, 0, 0, .6);--mbsc-list-icon-color: rgba(0, 0, 0, .54);--mbsc-list-padding: 12px 16px;--mbsc-list-item-height: 40px}

.mbsc-windows .mbsc-list-item{padding:12px 16px;min-height:40px;border-left:3px solid transparent}

.mbsc-windows .mbsc-list-item:hover{border-left-color:#0078d7}

.mbsc-windows .mbsc-list-item-selected{border-left-color:#0078d7;background-color:var(--mbsc-list-selected-background)}

.mbsc-windows .mbsc-list-inset{border-radius:0;box-shadow:0 2px 4px #0000001a}

.mbsc-windows .mbsc-list-header{text-transform:uppercase;font-size:14px;color:#0078d7;background-color:transparent;letter-spacing:.5px;padding:16px;font-weight:600}

.mbsc-windows .mbsc-list-divider{background-color:#f2f2f2;color:var(--mbsc-list-subtitle-color);text-transform:uppercase;font-size:12px;letter-spacing:.5px}

.mbsc-windows .mbsc-list-item.mbsc-active{background-color:var(--mbsc-list-active-background)}

.mbsc-windows .mbsc-list-item-image{border-radius:0}

.mbsc-windows .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#0078d7}

.mbsc-windows-dark.mbsc-list{--mbsc-list-background: #202020;--mbsc-list-text-color: rgba(255, 255, 255, .87);--mbsc-list-divider-color: rgba(255, 255, 255, .1);--mbsc-list-hover-background: rgba(255, 255, 255, .05);--mbsc-list-active-background: rgba(255, 255, 255, .1);--mbsc-list-selected-background: rgba(0, 120, 215, .2);--mbsc-list-subtitle-color: rgba(255, 255, 255, .7);--mbsc-list-icon-color: rgba(255, 255, 255, .5)}

.mbsc-windows-dark .mbsc-list-header{color:#0078d7}

.mbsc-windows-dark .mbsc-list-divider{background-color:#2d2d2d;color:var(--mbsc-list-subtitle-color);border-bottom-color:var(--mbsc-list-divider-color)}

.mbsc-windows-dark .mbsc-list-selectable .mbsc-list-item-selected:after{background-color:#0078d7}

.mbsc-list-dense .mbsc-list-item{padding-top:8px;padding-bottom:8px;min-height:40px}

.mbsc-list-comfortable .mbsc-list-item{padding-top:16px;padding-bottom:16px;min-height:60px}

.mbsc-list-item-interactive{cursor:pointer}

.mbsc-list-item-link{color:#2196f3}

.mbsc-list-nested .mbsc-list{margin-left:16px;margin-bottom:0}

.mbsc-rtl .mbsc-list-nested .mbsc-list{margin-left:0;margin-right:16px}

.mbsc-list-item-collapsible{flex-direction:column;align-items:stretch}

.mbsc-list-item-collapsible .mbsc-list-item-header{display:flex;align-items:center;cursor:pointer}

.mbsc-list-item-collapsible .mbsc-list-item-content{flex:0 1 auto}

.mbsc-list-item-collapsible .mbsc-list-item-chevron{margin-left:auto;transition:transform .3s ease}

.mbsc-list-item-expanded .mbsc-list-item-chevron{transform:rotate(180deg)}

.mbsc-list-item-children{overflow:hidden;max-height:0;transition:max-height .3s ease}

.mbsc-list-item-expanded .mbsc-list-item-children{max-height:1000px}

.mbsc-list-item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background-color:#2196f3;color:#fff;font-size:12px;font-weight:600}

@media(min-width:768px){.mbsc-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.mbsc-list-grid .mbsc-list-item{height:100%;border:1px solid var(--mbsc-list-divider-color);border-radius:var(--mbsc-list-border-radius);flex-direction:column;align-items:flex-start}.mbsc-list-grid .mbsc-list-item-media{width:100%;height:140px;margin-right:0;margin-bottom:12px}.mbsc-list-grid .mbsc-list-item-content{width:100%;padding:0 8px 8px}.mbsc-list-grid .mbsc-list-item-image{width:100%;height:100%;border-radius:0;object-fit:cover}}

.mbsc-list-item-animate-in{animation:mbsc-list-item-in .3s ease forwards}

.mbsc-list-item-animate-out{animation:mbsc-list-item-out .3s ease forwards}

@keyframes mbsc-list-item-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

@keyframes mbsc-list-item-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}

.mbsc-list [role=heading]{margin:0}

.mbsc-list [aria-disabled=true]{pointer-events:none;opacity:.6}

.mbsc-list-item:focus-visible{outline:2px solid var(--theme-focus, rgba(33, 150, 243, .4));outline-offset:-2px;z-index:1}

@media(forced-colors:active){.mbsc-list-item{border-bottom-color:CanvasText}.mbsc-list-item-selected{background-color:Highlight;color:HighlightText}.mbsc-list-selectable .mbsc-list-item-selected:after{background-color:Highlight;forced-color-adjust:none}.mbsc-list-item:focus-visible{outline:2px solid CanvasText}}

.pm-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:var(--pm-color-gray-200, #e5e7eb);color:var(--pm-color-gray-700, #374151);font-weight:600;user-select:none;flex-shrink:0}

.pm-avatar--xs{width:24px;height:24px;font-size:10px}

.pm-avatar--sm{width:32px;height:32px;font-size:12px}

.pm-avatar--md{width:40px;height:40px;font-size:14px}

.pm-avatar--lg{width:48px;height:48px;font-size:16px}

.pm-avatar--xl{width:64px;height:64px;font-size:20px}

.pm-avatar--2xl{width:96px;height:96px;font-size:28px}

.pm-avatar--circle{border-radius:50%}

.pm-avatar--square{border-radius:0}

.pm-avatar--rounded{border-radius:var(--pm-avatar-radius)}

.pm-avatar--primary{background:var(--pm-color-primary, #3b82f6);color:#fff}

.pm-avatar--secondary{background:var(--pm-color-secondary, #6b7280);color:#fff}

.pm-avatar--success{background:var(--pm-color-success, #10b981);color:#fff}

.pm-avatar--warning{background:var(--pm-color-warning, #f59e0b);color:#fff}

.pm-avatar--danger{background:var(--pm-color-danger, #ef4444);color:#fff}

.pm-avatar--info{background:var(--pm-color-info, #06b6d4);color:#fff}

.pm-avatar--gray{background:var(--pm-color-gray-300, #d1d5db);color:var(--pm-color-gray-700, #374151)}

.pm-avatar--clickable{cursor:pointer;transition:all .2s ease}

.pm-avatar--clickable:hover{opacity:.8;transform:scale(1.05)}

.pm-avatar--clickable:active{transform:scale(.95)}

.pm-avatar__image{width:100%;height:100%;object-fit:cover}

.pm-avatar__initials{display:flex;align-items:center;justify-content:center;text-transform:uppercase;line-height:1}

.pm-avatar__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%}

.pm-avatar__placeholder svg{width:60%;height:60%;opacity:.5}

.pm-avatar__badge{position:absolute;width:25%;height:25%;min-width:8px;min-height:8px;border-radius:50%;border:2px solid white}

.pm-avatar__badge--top-right{top:0;right:0}

.pm-avatar__badge--top-left{top:0;left:0}

.pm-avatar__badge--bottom-right{bottom:0;right:0}

.pm-avatar__badge--bottom-left{bottom:0;left:0}

.pm-avatar__badge--primary{background:var(--pm-color-primary, #3b82f6)}

.pm-avatar__badge--secondary{background:var(--pm-color-secondary, #6b7280)}

.pm-avatar__badge--success{background:var(--pm-color-success, #10b981)}

.pm-avatar__badge--warning{background:var(--pm-color-warning, #f59e0b)}

.pm-avatar__badge--danger{background:var(--pm-color-danger, #ef4444)}

.pm-avatar__badge--info{background:var(--pm-color-info, #06b6d4)}

.pm-avatar__badge--gray{background:var(--pm-color-gray-500, #6b7280)}

.pm-avatar-group{display:inline-flex;align-items:center}

.pm-avatar-group__item{position:relative;transition:transform .2s ease}

.pm-avatar-group__item:hover{z-index:1;transform:translateY(-2px)}

.pm-avatar-group--tight .pm-avatar-group__item:not(:first-child){margin-left:-12px}

.pm-avatar-group--normal .pm-avatar-group__item:not(:first-child){margin-left:-8px}

.pm-avatar-group--loose .pm-avatar-group__item:not(:first-child){margin-left:-4px}

.pm-avatar--more{font-weight:600;background:var(--pm-color-gray-300, #d1d5db)!important;color:var(--pm-color-gray-700, #374151)!important}

@media(prefers-color-scheme:dark){.pm-avatar{background:var(--pm-color-gray-700, #374151);color:var(--pm-color-gray-200, #e5e7eb)}.pm-avatar--gray{background:var(--pm-color-gray-600, #4b5563);color:var(--pm-color-gray-200, #e5e7eb)}.pm-avatar--more{background:var(--pm-color-gray-600, #4b5563)!important;color:var(--pm-color-gray-200, #e5e7eb)!important}.pm-avatar__badge{border-color:var(--pm-color-gray-900, #111827)}}

.tooltip{position:fixed;z-index:1000;pointer-events:none;font-family:var(--font-family, system-ui, -apple-system, sans-serif);font-size:var(--font-size-sm, .8rem);line-height:1.3;border-radius:var(--border-radius, 4px);box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .12));transition:all .15s cubic-bezier(.4,0,.2,1);transform-origin:center;white-space:nowrap;max-width:260px;word-wrap:break-word;hyphens:auto}

.tooltip.multiline{white-space:normal;max-width:320px}

.tooltip.interactive{pointer-events:auto;cursor:default}

.tooltip.hidden{opacity:0;visibility:hidden;transform:scale(.8)}

.tooltip.visible{opacity:1;visibility:visible;transform:scale(1)}

.tooltip.tooltip-fade{transition:opacity .2s ease,visibility .2s ease}

.tooltip.tooltip-scale{transition:opacity .2s ease,visibility .2s ease,transform .2s cubic-bezier(.4,0,.2,1)}

.tooltip.tooltip-shift[data-placement^=top]{transform:translateY(4px)}

.tooltip.tooltip-shift[data-placement^=bottom]{transform:translateY(-4px)}

.tooltip.tooltip-shift[data-placement^=left]{transform:translate(4px)}

.tooltip.tooltip-shift[data-placement^=right]{transform:translate(-4px)}

.tooltip.tooltip-shift.visible{transform:translate(0)}

.tooltip.tooltip-perspective{transform-style:preserve-3d}

.tooltip.tooltip-perspective.hidden{transform:perspective(600px) rotateX(-15deg) scale(.8)}

.tooltip.tooltip-perspective.visible{transform:perspective(600px) rotateX(0) scale(1)}

.tooltip.tooltip-sm{font-size:.75rem;padding:2px 6px;max-width:180px}

.tooltip.tooltip-md{font-size:.875rem;padding:4px 8px;max-width:250px}

.tooltip.tooltip-lg{font-size:1rem;padding:6px 10px;max-width:320px}

.tooltip.tooltip-xl{font-size:1.125rem;padding:8px 12px;max-width:400px}

.tooltip.tooltip-dark.tooltip-solid{background:#1f2937;color:#f9fafb;border:1px solid #374151}

.tooltip.tooltip-dark.tooltip-outlined{background:#1f2937f2;color:#f9fafb;border:1px solid #6b7280;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}

.tooltip.tooltip-dark.tooltip-soft{background:#1f2937e6;color:#f9fafb;border:1px solid rgba(107,114,128,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}

.tooltip.tooltip-dark.tooltip-glass{background:#1f2937b3;color:#f9fafb;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%)}

.tooltip.tooltip-dark.tooltip-neon{background:#1f2937;color:#f9fafb;border:1px solid #60a5fa;box-shadow:0 0 20px #60a5fa4d}

.tooltip.tooltip-dark.tooltip-gradient{background:linear-gradient(135deg,#1f2937,#111827);color:#f9fafb;border:1px solid #374151}

.tooltip.tooltip-light.tooltip-solid{background:#fff;color:#374151;border:1px solid #e5e7eb}

.tooltip.tooltip-light.tooltip-outlined{background:#fffffff2;color:#374151;border:1px solid #d1d5db;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}

.tooltip.tooltip-light.tooltip-soft{background:#ffffffe6;color:#374151;border:1px solid rgba(209,213,219,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}

.tooltip.tooltip-light.tooltip-glass{background:#ffffffb3;color:#374151;border:1px solid rgba(0,0,0,.1);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%)}

.tooltip.tooltip-light.tooltip-neon{background:#fff;color:#374151;border:1px solid #3b82f6;box-shadow:0 0 20px #3b82f64d}

.tooltip.tooltip-light.tooltip-gradient{background:linear-gradient(135deg,#fff,#f9fafb);color:#374151;border:1px solid #e5e7eb}

.tooltip.tooltip-primary.tooltip-solid{background:#3b82f6;color:#fff;border:1px solid #2563eb}

.tooltip.tooltip-primary.tooltip-outlined{background:#3b82f61a;color:#3b82f6;border:1px solid #3b82f6}

.tooltip.tooltip-primary.tooltip-soft{background:#3b82f61a;color:#1e40af;border:1px solid rgba(59,130,246,.3)}

.tooltip.tooltip-primary.tooltip-glass{background:#3b82f633;color:#1e40af;border:1px solid rgba(59,130,246,.3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

.tooltip.tooltip-primary.tooltip-neon{background:#3b82f6;color:#fff;border:1px solid #60a5fa;box-shadow:0 0 20px #3b82f680}

.tooltip.tooltip-primary.tooltip-gradient{background:linear-gradient(135deg,#6366f1,#3b82f6);color:#fff;border:1px solid #2563eb}

.tooltip.tooltip-success.tooltip-solid{background:#10b981;color:#fff;border:1px solid #059669}

.tooltip.tooltip-success.tooltip-outlined{background:#10b9811a;color:#10b981;border:1px solid #10b981}

.tooltip.tooltip-success.tooltip-soft{background:#10b9811a;color:#047857;border:1px solid rgba(16,185,129,.3)}

.tooltip.tooltip-success.tooltip-glass{background:#10b98133;color:#047857;border:1px solid rgba(16,185,129,.3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

.tooltip.tooltip-success.tooltip-neon{background:#10b981;color:#fff;border:1px solid #34d399;box-shadow:0 0 20px #10b98180}

.tooltip.tooltip-success.tooltip-gradient{background:linear-gradient(135deg,#34d399,#10b981);color:#fff;border:1px solid #059669}

.tooltip.tooltip-warning.tooltip-solid{background:#f59e0b;color:#fff;border:1px solid #d97706}

.tooltip.tooltip-warning.tooltip-outlined{background:#f59e0b1a;color:#f59e0b;border:1px solid #f59e0b}

.tooltip.tooltip-warning.tooltip-soft{background:#f59e0b1a;color:#b45309;border:1px solid rgba(245,158,11,.3)}

.tooltip.tooltip-warning.tooltip-glass{background:#f59e0b33;color:#b45309;border:1px solid rgba(245,158,11,.3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

.tooltip.tooltip-warning.tooltip-neon{background:#f59e0b;color:#fff;border:1px solid #fbbf24;box-shadow:0 0 20px #f59e0b80}

.tooltip.tooltip-warning.tooltip-gradient{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border:1px solid #d97706}

.tooltip.tooltip-danger.tooltip-solid{background:#ef4444;color:#fff;border:1px solid #dc2626}

.tooltip.tooltip-danger.tooltip-outlined{background:#ef44441a;color:#ef4444;border:1px solid #ef4444}

.tooltip.tooltip-danger.tooltip-soft{background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.3)}

.tooltip.tooltip-danger.tooltip-glass{background:#ef444433;color:#b91c1c;border:1px solid rgba(239,68,68,.3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

.tooltip.tooltip-danger.tooltip-neon{background:#ef4444;color:#fff;border:1px solid #f87171;box-shadow:0 0 20px #ef444480}

.tooltip.tooltip-danger.tooltip-gradient{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;border:1px solid #dc2626}

.tooltip.tooltip-info.tooltip-solid{background:#0ea5e9;color:#fff;border:1px solid #0284c7}

.tooltip.tooltip-info.tooltip-outlined{background:#0ea5e91a;color:#0ea5e9;border:1px solid #0ea5e9}

.tooltip.tooltip-info.tooltip-soft{background:#0ea5e91a;color:#0369a1;border:1px solid rgba(14,165,233,.3)}

.tooltip.tooltip-info.tooltip-glass{background:#0ea5e933;color:#0369a1;border:1px solid rgba(14,165,233,.3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}

.tooltip.tooltip-info.tooltip-neon{background:#0ea5e9;color:#fff;border:1px solid #38bdf8;box-shadow:0 0 20px #0ea5e980}

.tooltip.tooltip-info.tooltip-gradient{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;border:1px solid #0284c7}

.tooltip.with-arrow .tooltip-arrow{position:absolute;width:10px;height:10px;background:inherit;border:inherit;transform:rotate(45deg);z-index:-1;border-radius:2px;box-shadow:inherit}

.tooltip[data-placement^=top] .tooltip-arrow{bottom:-5px;left:50%;transform:translate(-50%) rotate(45deg);border-top:none;border-left:none}

.tooltip[data-placement^=bottom] .tooltip-arrow{top:-5px;left:50%;transform:translate(-50%) rotate(45deg);border-bottom:none;border-right:none}

.tooltip[data-placement^=left] .tooltip-arrow{right:-5px;top:50%;transform:translateY(-50%) rotate(45deg);border-left:none;border-bottom:none}

.tooltip[data-placement^=right] .tooltip-arrow{left:-5px;top:50%;transform:translateY(-50%) rotate(45deg);border-right:none;border-top:none}

.tooltip[data-placement=top-start] .tooltip-arrow,.tooltip[data-placement=bottom-start] .tooltip-arrow{left:16px;transform:rotate(45deg)}

.tooltip[data-placement=top-end] .tooltip-arrow,.tooltip[data-placement=bottom-end] .tooltip-arrow{right:16px;left:auto;transform:rotate(45deg)}

.tooltip[data-placement=left-start] .tooltip-arrow,.tooltip[data-placement=right-start] .tooltip-arrow{top:16px;transform:rotate(45deg)}

.tooltip[data-placement=left-end] .tooltip-arrow,.tooltip[data-placement=right-end] .tooltip-arrow{bottom:16px;top:auto;transform:rotate(45deg)}

.tooltip-content{position:relative;z-index:1}

.tooltip-title{margin-bottom:2px;font-weight:600}

.tooltip-title h4{margin:0;font-size:inherit;font-weight:600;line-height:1.1}

.tooltip-body{color:inherit}

.tooltip-body p{margin:0;line-height:1.3}

.tooltip-body code{background:#0000001a;padding:2px 4px;border-radius:3px;font-size:.85em;font-family:Monaco,Menlo,Ubuntu Mono,monospace}

.tooltip-light code{background:#0000000d}

.tooltip.with-help{max-width:380px;white-space:normal}

.tooltip-help{margin-top:4px}

.help-title{margin-bottom:4px;padding-bottom:2px;border-bottom:1px solid rgba(255,255,255,.1)}

.tooltip-light .help-title{border-bottom-color:#0000001a}

.help-title h4{margin:0;font-size:.95em;font-weight:600;color:inherit}

.help-section{margin-bottom:6px;padding:4px 6px;border-radius:3px;background:#ffffff0d;border-left:2px solid transparent;transition:all .2s ease}

.tooltip-light .help-section{background:#00000008}

.help-section.active{background:#3b82f61a;border-left-color:#3b82f6}

.help-section h5{margin:0 0 2px;font-size:.75em;font-weight:600;text-transform:uppercase;letter-spacing:.3px;opacity:.8}

.help-description{margin:0;font-size:.8em;line-height:1.3;color:inherit}

.help-examples,.help-shortcuts,.help-tips{margin:2px 0 0;padding:0;list-style:none}

.example-item,.shortcut-item,.tip-item,.warning-item{margin:1px 0;font-size:.75em;line-height:1.2}

.example-item code{background:#0003;color:#a3e635;padding:2px 6px;border-radius:3px;font-size:.85em}

.tooltip-light .example-item code{background:#0000001a;color:#16a34a}

.shortcut-item{display:flex;align-items:center;gap:8px}

.shortcut-item kbd{background:#0000004d;color:#fbbf24;padding:2px 6px;border-radius:3px;font-size:.75em;font-family:inherit;border:1px solid rgba(255,255,255,.1);min-width:20px;text-align:center}

.tooltip-light .shortcut-item kbd{background:#0000001a;color:#d97706;border-color:#0000001a}

.tip-item{position:relative;padding-left:12px}

.tip-item:before{content:"•";position:absolute;left:0;top:0;color:#34d399;font-weight:700}

.warning-item{position:relative;padding-left:12px;color:#fbbf24}

.warning-item:before{content:"⚠";position:absolute;left:0;top:0}

.help-warnings{margin-bottom:6px;padding:4px 6px;background:#f59e0b1a;border-radius:3px;border-left:2px solid #f59e0b}

.help-warnings h5{margin:0 0 2px;color:#f59e0b}

.help-warnings ul{margin:2px 0 0;padding:0;list-style:none}

.help-links{margin-top:6px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}

.tooltip-light .help-links{border-top-color:#0000001a}

.help-links h5{margin:0 0 2px;font-size:.75em;font-weight:600}

.help-links ul{margin:2px 0 0;padding:0;list-style:none}

.help-link{color:#60a5fa;text-decoration:none;font-size:.8em;display:inline-flex;align-items:center;gap:2px;transition:color .2s ease}

.help-link:hover{color:#93c5fd;text-decoration:underline}

.tooltip-light .help-link{color:#2563eb}

.tooltip-light .help-link:hover{color:#1d4ed8}

.external-icon{font-size:.7em;opacity:.7}

.help-related{margin-top:6px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}

.tooltip-light .help-related{border-top-color:#0000001a}

.help-related h5{margin:0 0 3px;font-size:.75em;font-weight:600}

.related-tags{display:flex;flex-wrap:wrap;gap:2px}

.related-tag{background:#3b82f633;color:#93c5fd;padding:1px 4px;border-radius:8px;font-size:.65em;border:1px solid rgba(59,130,246,.3)}

.tooltip-light .related-tag{background:#3b82f61a;color:#2563eb}

.help-navigation{margin-top:6px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1);text-align:center}

.tooltip-light .help-navigation{border-top-color:#0000001a}

.help-navigation small{font-size:.65em;opacity:.7;font-style:italic}

@media(max-width:768px){.tooltip{max-width:90vw;font-size:.8rem}.tooltip.tooltip-sm{font-size:.7rem;max-width:85vw}.tooltip.tooltip-lg,.tooltip.tooltip-xl{font-size:.85rem;max-width:95vw}.tooltip.with-help{max-width:95vw}}

@media(prefers-contrast:high){.tooltip,.tooltip-arrow{border-width:2px}}

@media(prefers-reduced-motion:reduce){.tooltip{transition:opacity .1s ease}.tooltip.tooltip-scale,.tooltip.tooltip-shift,.tooltip.tooltip-perspective{transition:opacity .1s ease,visibility .1s ease;transform:none!important}}

@media print{.tooltip{display:none!important}}

.tooltip:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}

.tooltip-content::-webkit-scrollbar{width:4px}

.tooltip-content::-webkit-scrollbar-track{background:#ffffff1a;border-radius:2px}

.tooltip-content::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}

.tooltip-content::-webkit-scrollbar-thumb:hover{background:#ffffff80}

.tooltip-light .tooltip-content::-webkit-scrollbar-track{background:#0000001a}

.tooltip-light .tooltip-content::-webkit-scrollbar-thumb{background:#0000004d}

.tooltip-light .tooltip-content::-webkit-scrollbar-thumb:hover{background:#00000080}

.pm-popup-portal-container{position:fixed;inset:0;z-index:9999;pointer-events:none}

.pm-popup-wrapper{position:fixed;inset:0;z-index:9999;display:flex;justify-content:center;align-items:center;pointer-events:none;opacity:0;transition:opacity .15s ease}

.pm-popup-wrapper.pm-popup-wrapper-visible{opacity:1}

.pm-popup-overlay{position:absolute;inset:0;background-color:#00000080;opacity:0;transition:opacity .25s ease;pointer-events:auto}

.pm-popup-overlay-transparent{background-color:transparent}

.pm-popup-overlay-visible{opacity:1}

.pm-popup-overlay-closing{opacity:0}

.pm-popup{position:relative;background-color:#fff;box-shadow:0 5px 15px #0000004d;margin:10px;display:flex;flex-direction:column;max-height:calc(100vh - 20px);opacity:0;transform:scale(.8);transition:opacity .3s ease,transform .3s ease;pointer-events:auto}

.pm-popup-pop.pm-popup-open{opacity:1;transform:scale(1)}

.pm-popup-pop.pm-popup-closing{opacity:0;transform:scale(.8)}

.pm-popup-slide-up{transform:translateY(100%)}

.pm-popup-slide-up.pm-popup-open{opacity:1;transform:translateY(0)}

.pm-popup-slide-up.pm-popup-closing{opacity:0;transform:translateY(100%)}

.pm-popup-slide-down{transform:translateY(-100%)}

.pm-popup-slide-down.pm-popup-open{opacity:1;transform:translateY(0)}

.pm-popup-slide-down.pm-popup-closing{opacity:0;transform:translateY(-100%)}

.pm-popup-fade.pm-popup-open{opacity:1;transform:none}

.pm-popup-fade.pm-popup-closing{opacity:0}

.pm-popup-center{margin:auto}

.pm-popup-top{align-self:flex-start;width:100%;margin-top:0;border-radius:0 0 10px 10px}

.pm-popup-bottom{align-self:flex-end;width:100%;margin-bottom:0;border-radius:10px 10px 0 0}

.pm-popup-anchored{position:absolute;max-width:300px}

.pm-popup[style*="position: absolute"]{position:absolute!important;margin:0}

.pm-popup-fullscreen{position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border-radius:0!important;display:flex!important;flex-direction:column!important;transform:none!important}

.pm-popup-fullscreen.pm-popup-open{animation:pm-popup-fullscreen-in .3s ease-in-out}

.pm-popup-fullscreen.pm-popup-closing{animation:pm-popup-fullscreen-out .3s ease-in-out}

@keyframes pm-popup-fullscreen-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

@keyframes pm-popup-fullscreen-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}

.pm-popup-round{border-radius:10px}

.pm-popup-header{position:relative;padding:15px;border-bottom:1px solid rgba(0,0,0,.1);display:flex;justify-content:space-between;align-items:center}

.pm-popup-header h2{margin:0;font-size:18px;font-weight:500;flex:1}

.pm-popup-close{border:none;background:none;font-size:24px;color:#333;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-left:10px}

.pm-popup-close:hover{background-color:#0000000d}

.pm-popup-content{padding:15px;overflow:auto;flex-grow:1}

.pm-popup-no-padding{padding:0}

.pm-popup-buttons{display:flex;padding:10px;border-top:1px solid rgba(0,0,0,.1)}

.pm-popup-button{flex:1;border:none;background:none;padding:12px;font-size:14px;font-weight:500;color:#007bff;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;margin:0 5px}

.pm-popup-button:hover{background-color:#007bff1a}

.pm-popup-button:disabled{opacity:.5;cursor:not-allowed}

.pm-popup-button-icon{margin-right:8px}

.pm-popup-arrow{position:absolute;width:15px;height:15px;background-color:#fff;transform:rotate(45deg);z-index:-1}

.pm-popup-anchored-top .pm-popup-arrow{top:-7px;box-shadow:-2px -2px 5px #0000001a}

.pm-popup-anchored-bottom .pm-popup-arrow{bottom:-7px;box-shadow:2px 2px 5px #0000001a}

.pm-popup-anchored-left .pm-popup-arrow{left:-7px;box-shadow:-2px 2px 5px #0000001a}

.pm-popup-anchored-right .pm-popup-arrow{right:-7px;box-shadow:2px -2px 5px #0000001a}

@media(max-width:480px){.pm-popup:not(.pm-popup-fullscreen){width:95%!important;max-width:calc(100vw - 24px)!important;max-height:90vh;font-size:16px}.pm-popup-button{min-height:48px;padding:12px 16px;font-size:16px}.pm-popup-content{padding:20px 16px;font-size:16px}.pm-popup-fullscreen{width:100%;height:100%;max-width:100vw;max-height:100vh;border-radius:0}}

@media(min-width:481px)and (max-width:768px){.pm-popup:not(.pm-popup-fullscreen){max-width:90%;max-height:85vh}.pm-popup-button{min-height:44px}}

@media(hover:none)and (pointer:coarse){.pm-popup-button{min-height:48px;padding:12px 16px;font-size:16px}.pm-popup-close{width:40px;height:40px;font-size:24px}.pm-popup-button:hover{transform:none}.pm-popup-button:active{transform:scale(.97)}.pm-popup-close:active{background-color:#0000001a;transform:scale(.95)}}

.pm-popup-content{-webkit-overflow-scrolling:touch}

.pm-popup-button,.pm-popup-close{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

@supports (padding-bottom: env(safe-area-inset-bottom)){.pm-popup-fullscreen .pm-popup-content{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.pm-popup-fullscreen .pm-popup-header{padding-top:calc(16px + env(safe-area-inset-top))}.pm-popup-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}

@media(prefers-reduced-motion:reduce){.pm-popup,.pm-popup-overlay,.pm-popup-button{animation:none;transition:none}}

.pm-dropdown-trigger{display:inline-flex;align-items:center;cursor:pointer}

.pm-dropdown-trigger:disabled,.pm-dropdown-trigger[aria-disabled=true]{cursor:not-allowed;opacity:.5}

.pm-dropdown-menu{position:absolute;z-index:9999;min-inline-size:clamp(180px,11rem + 1vw,200px);background:var(--pm-color-surface, #ffffff);border-radius:var(--pm-radius-md, 8px);box-shadow:var(--pm-shadow-lg, 0 10px 25px rgb(0 0 0 / .1));padding-block:var(--pm-spacing-xs, 4px);animation:pm-dropdown-fadeIn .15s ease-out;outline:none;container-type:inline-size}

@media(prefers-color-scheme:dark){.pm-dropdown-menu{background:var(--pm-color-surface, #1f2937)}}

.pm-dropdown-menu--small{min-inline-size:clamp(140px,8.5rem + .75vw,150px);font-size:clamp(13px,.8125rem + .125vw,14px)}

.pm-dropdown-menu--medium{min-inline-size:clamp(180px,11rem + 1vw,200px);font-size:clamp(14px,.875rem + .125vw,15px)}

.pm-dropdown-menu--large{min-inline-size:clamp(230px,14rem + 1.25vw,250px);font-size:clamp(15px,.9375rem + .125vw,16px)}

.pm-dropdown-menu--default{border:1px solid var(--pm-color-border, #e5e7eb)}

.pm-dropdown-menu--bordered{border:2px solid var(--pm-color-primary, #3b82f6)}

.pm-dropdown-menu--elevated{border:none;box-shadow:var(--pm-shadow-xl, 0 20px 40px rgba(0, 0, 0, .15))}

.pm-dropdown-menu--flat{border:none;box-shadow:none;background:var(--pm-color-surface-variant, #f9fafb)}

.pm-dropdown-item{display:flex;align-items:center;gap:clamp(6px,.375rem + .15vw,8px);padding-block:clamp(6px,.375rem + .15vw,8px);padding-inline:clamp(10px,.625rem + .25vw,12px);cursor:pointer;transition:background-color .15s ease;color:var(--pm-color-text, #1f2937);outline:none;position:relative}

@media(prefers-color-scheme:dark){.pm-dropdown-item{color:var(--pm-color-text, #e5e7eb)}}

.pm-dropdown-item:hover,.pm-dropdown-item:focus{background-color:var(--pm-color-surface-hover, #f3f4f6)}

.pm-dropdown-item--selected,.pm-dropdown-item--focused{background-color:var(--pm-color-primary-light, #dbeafe)}

.pm-dropdown-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}

.pm-dropdown-item--danger{color:var(--pm-color-error, #ef4444)}

.pm-dropdown-item--danger:hover,.pm-dropdown-item--danger:focus{background-color:var(--pm-color-error-light, #fee2e2)}

.pm-dropdown-item-icon{display:flex;align-items:center;flex-shrink:0;width:20px;height:20px}

.pm-dropdown-item-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}

.pm-dropdown-item-label{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.pm-dropdown-item-description{font-size:.875em;color:var(--pm-color-text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.pm-dropdown-item-meta{display:flex;align-items:center;gap:var(--pm-spacing-xs, 4px);margin-left:auto;flex-shrink:0}

.pm-dropdown-item-shortcut{font-size:.875em;color:var(--pm-color-text-tertiary, #9ca3af);font-family:var(--pm-font-mono, "Monaco", monospace)}

.pm-dropdown-item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--pm-color-primary, #3b82f6);color:#fff;border-radius:10px;font-size:.75em;font-weight:600}

.pm-dropdown-divider{height:1px;margin:var(--pm-spacing-xs, 4px) 0;background-color:var(--pm-color-border, #e5e7eb)}

@keyframes pm-dropdown-fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.pm-dropdown-item:focus-visible{outline:2px solid var(--pm-color-focus, #3b82f6);outline-offset:-2px}

@media(prefers-color-scheme:dark){.pm-dropdown-menu{background:var(--pm-color-surface-dark, #1f2937);border-color:var(--pm-color-border-dark, #374151)}.pm-dropdown-item{color:var(--pm-color-text-dark, #f9fafb)}.pm-dropdown-item:hover,.pm-dropdown-item:focus{background-color:var(--pm-color-surface-hover-dark, #374151)}.pm-dropdown-item--selected,.pm-dropdown-item--focused{background-color:var(--pm-color-primary-dark, #1e40af)}.pm-dropdown-divider{background-color:var(--pm-color-border-dark, #374151)}}

@media(max-width:480px){.pm-dropdown-menu{min-width:200px;max-width:calc(100vw - 24px);font-size:16px}.pm-dropdown-item{min-height:48px;padding:12px 16px;font-size:16px}}

@media(min-width:481px)and (max-width:768px){.pm-dropdown-menu{max-width:calc(100vw - 32px)}.pm-dropdown-item{min-height:44px}}

@media(hover:none)and (pointer:coarse){.pm-dropdown-menu{font-size:16px}.pm-dropdown-item{min-height:48px;padding:12px 16px;font-size:16px}.pm-dropdown-item:hover{background-color:transparent}.pm-dropdown-item:active{background-color:var(--pm-color-surface-hover, #f3f4f6);transform:scale(.98)}}

.pm-dropdown-menu{-webkit-overflow-scrolling:touch}

.pm-dropdown-item{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

@supports (padding-bottom: env(safe-area-inset-bottom)){.pm-dropdown-menu--bottom{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.pm-dropdown-menu--top{padding-top:calc(8px + env(safe-area-inset-top))}}

@media(prefers-reduced-motion:reduce){.pm-dropdown-menu{animation:none}.pm-dropdown-item{transition:none}}

.pm-skeleton{display:block;background-color:#e0e0e0;position:relative;overflow:hidden}

.pm-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);animation:skeleton-shimmer 1.5s infinite}

.pm-skeleton-wave:after{animation:skeleton-wave 1.5s infinite}

.pm-skeleton-pulse{animation:skeleton-pulse 1.5s cubic-bezier(.4,0,.6,1) infinite}

.pm-skeleton-pulse:after{display:none}

.pm-skeleton-none:after{display:none}

.pm-skeleton-text{height:1em;border-radius:4px;margin-bottom:8px;transform-origin:0 60%}

.pm-skeleton-text:last-child{margin-bottom:0}

.pm-skeleton-circular{border-radius:50%}

.pm-skeleton-rectangular{border-radius:0}

.pm-skeleton-rounded{border-radius:8px}

.pm-skeleton-group{display:flex;flex-direction:column;gap:8px}

@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}

@keyframes skeleton-wave{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(100%) skew(-15deg)}}

@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}

.pm-skeleton-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}

.pm-skeleton-card-content{padding:16px;display:flex;flex-direction:column;gap:8px}

.pm-skeleton-list{display:flex;flex-direction:column;gap:12px}

.pm-skeleton-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border-radius:8px}

.pm-skeleton-list-content{flex:1;display:flex;flex-direction:column;gap:8px}

.pm-skeleton-table{background:#fff;border-radius:8px;overflow:hidden}

.pm-skeleton-table-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px;padding:16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}

.pm-skeleton-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px;padding:16px;border-bottom:1px solid #f3f4f6}

.pm-skeleton-table-row:last-child{border-bottom:none}

@media(prefers-color-scheme:dark){.pm-skeleton{background-color:#2d2d2d}.pm-skeleton:after{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%)}.pm-skeleton-card,.pm-skeleton-list-item,.pm-skeleton-table{background:#1f1f1f}.pm-skeleton-table-header{background:#2a2a2a;border-bottom-color:#404040}.pm-skeleton-table-row{border-bottom-color:#333}}

@media(prefers-reduced-motion:reduce){.pm-skeleton:after,.pm-skeleton-pulse{animation:none}.pm-skeleton{opacity:.5}}

.pm-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;color:#6b7280}

.pm-empty-state-small{padding:32px 16px}

.pm-empty-state-large{padding:64px 32px;min-height:400px}

.pm-empty-state-icon{font-size:64px;margin-bottom:16px;opacity:.8;line-height:1}

.pm-empty-state-small .pm-empty-state-icon{font-size:48px;margin-bottom:12px}

.pm-empty-state-large .pm-empty-state-icon{font-size:96px;margin-bottom:24px}

.pm-empty-state-image{max-width:240px;height:auto;margin-bottom:24px;opacity:.9}

.pm-empty-state-large .pm-empty-state-image{max-width:320px}

.pm-empty-state-title{margin:0 0 8px;font-size:20px;font-weight:600;color:#111827}

.pm-empty-state-small .pm-empty-state-title{font-size:18px}

.pm-empty-state-large .pm-empty-state-title{font-size:24px}

.pm-empty-state-description{margin:0 0 24px;font-size:14px;line-height:1.6;color:#6b7280;max-width:400px}

.pm-empty-state-small .pm-empty-state-description{font-size:13px;margin-bottom:16px}

.pm-empty-state-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}

.pm-empty-state-button{padding:10px 20px;font-size:14px;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit}

.pm-empty-state-button-primary{background:#3b82f6;color:#fff}

.pm-empty-state-button-primary:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}

.pm-empty-state-button-secondary{background:transparent;color:#6b7280;border:1px solid #d1d5db}

.pm-empty-state-button-secondary:hover{background:#f9fafb;border-color:#9ca3af}

@media(prefers-color-scheme:dark){.pm-empty-state{color:#9ca3af}.pm-empty-state-title{color:#f3f4f6}.pm-empty-state-description{color:#9ca3af}.pm-empty-state-button-primary{background:#2563eb}.pm-empty-state-button-primary:hover{background:#1d4ed8}.pm-empty-state-button-secondary{color:#d1d5db;border-color:#4b5563}.pm-empty-state-button-secondary:hover{background:#374151;border-color:#6b7280}}

@media(max-width:640px){.pm-empty-state{padding:32px 16px}.pm-empty-state-icon{font-size:48px}.pm-empty-state-large .pm-empty-state-icon{font-size:64px}.pm-empty-state-image{max-width:180px}.pm-empty-state-title{font-size:18px}.pm-empty-state-actions{flex-direction:column;width:100%}.pm-empty-state-button{width:100%}}

.pm-empty-state-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}

@media(prefers-reduced-motion:reduce){.pm-empty-state-button{transition:none}.pm-empty-state-button:hover{transform:none}}

.pm-showcase{max-width:1200px;margin:0 auto;padding:40px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}

.pm-showcase-header{text-align:center;padding:60px 20px;background:#fffffffa;border-radius:16px;margin-bottom:40px;box-shadow:0 20px 60px #00000026}

.pm-showcase-title{font-size:48px;font-weight:800;color:#1f2937;margin:0 0 12px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

.pm-showcase-subtitle{font-size:18px;color:#6b7280;margin:0 0 24px;line-height:1.6}

.pm-showcase-features{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}

.pm-feature-badge{display:inline-block;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:14px;font-weight:600;box-shadow:0 4px 12px #667eea4d}

.pm-example-section{background:#fff;border-radius:12px;padding:32px;margin-bottom:32px;box-shadow:0 4px 20px #00000014;transition:transform .2s ease,box-shadow .2s ease}

.pm-example-section:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}

.pm-example-title{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 8px}

.pm-example-desc{font-size:15px;color:#6b7280;margin:0 0 28px;line-height:1.6}

.pm-example-grid{display:flex;flex-direction:column;gap:24px}

.pm-example-controls{display:flex;gap:12px;justify-content:center;padding-top:8px}

.pm-btn{padding:10px 24px;font-size:14px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit}

.pm-btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}

.pm-btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}

.pm-btn--primary:disabled{opacity:.6;cursor:not-allowed}

.pm-btn--secondary{background:#f3f4f6;color:#374151}

.pm-btn--secondary:hover{background:#e5e7eb}

.pm-example-code{background:#1f2937;color:#f3f4f6;padding:20px;border-radius:8px;font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;line-height:1.6;overflow-x:auto;margin-top:16px}

@media(max-width:768px){.pm-showcase{padding:20px 16px}.pm-showcase-header{padding:40px 20px}.pm-showcase-title{font-size:36px}.pm-showcase-subtitle{font-size:16px}.pm-example-section{padding:24px 20px}.pm-example-title{font-size:24px}.pm-example-desc{font-size:14px}.pm-showcase-features{gap:8px}.pm-feature-badge{font-size:12px;padding:6px 12px}.pm-example-controls{flex-direction:column}.pm-btn{width:100%}}

@media(prefers-color-scheme:dark){.pm-showcase{background:linear-gradient(135deg,#1e293b,#0f172a)}.pm-showcase-header{background:#1e293bfa}.pm-showcase-title{color:#f3f4f6}.pm-showcase-subtitle{color:#94a3b8}.pm-example-section{background:#1e293b}.pm-example-title{color:#f3f4f6}.pm-example-desc{color:#94a3b8}.pm-btn--secondary{background:#334155;color:#e2e8f0}.pm-btn--secondary:hover{background:#475569}}

@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

.pm-example-section{animation:fadeIn .5s ease-out}

.pm-example-section:nth-child(2){animation-delay:.1s}

.pm-example-section:nth-child(3){animation-delay:.2s}

.pm-example-section:nth-child(4){animation-delay:.3s}

.pm-example-section:nth-child(5){animation-delay:.4s}

.pm-btn:focus-visible{outline:3px solid #667eea;outline-offset:2px}

@media(prefers-reduced-motion:reduce){.pm-example-section{animation:none}.pm-example-section:hover{transform:none}.pm-btn:hover:not(:disabled){transform:none}}

.pm-timeline{position:relative;display:flex;flex-direction:column;gap:0;padding:16px 0}

.pm-timeline--left{align-items:flex-start}

.pm-timeline--right{align-items:flex-end}

.pm-timeline--center,.pm-timeline--alternating{align-items:center}

.pm-timeline-item{position:relative;display:flex;width:100%;gap:12px;padding:0;margin-bottom:16px;transition:all .2s ease}

.pm-timeline-item:last-child{margin-bottom:0}

.pm-timeline-item--clickable{cursor:pointer;background:none;border:none;padding:0;text-align:left;font-family:inherit}

.pm-timeline-item--clickable:hover{background:none!important;outline:none!important;border:none!important}

.pm-timeline-item--clickable:active{background:none!important;outline:none!important}

.pm-timeline-item--clickable:focus{outline:none!important;background:none!important}

.pm-timeline-item--clickable:focus-visible{outline:none!important;background:none!important}

.pm-timeline-item--clickable:focus-visible .pm-timeline-item__main{outline:none!important;background:none!important}

.pm-timeline-item--clickable:focus-visible .pm-timeline-item__icon{outline:2px solid rgba(102,126,234,.4);outline-offset:2px}

.pm-timeline-item--left{flex-direction:row}

.pm-timeline-item--right{flex-direction:row-reverse}

.pm-timeline-item--alternating{flex-direction:row;justify-content:center}

.pm-timeline-item--alternating.pm-timeline-item--right{flex-direction:row-reverse}

.pm-timeline-item__visual{position:relative;display:flex;flex-direction:column;align-items:center;flex-shrink:0}

.pm-timeline-item__icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#cbd5e0;border:2px solid #ffffff;color:#fff;z-index:2;transition:all .3s ease;box-shadow:0 0 0 2px #cbd5e0;flex-shrink:0}

.pm-timeline-item__icon svg{width:14px;height:14px;display:block}

.pm-timeline-item--sm .pm-timeline-item__icon{width:20px;height:20px}

.pm-timeline-item--sm .pm-timeline-item__icon svg{width:12px;height:12px}

.pm-timeline-item--lg .pm-timeline-item__icon{width:28px;height:28px}

.pm-timeline-item--lg .pm-timeline-item__icon svg{width:16px;height:16px}

.pm-timeline-item__icon--success{background:#38a169;box-shadow:0 0 0 2px #38a169}

.pm-timeline-item__icon--warning{background:#dd6b20;box-shadow:0 0 0 2px #dd6b20}

.pm-timeline-item__icon--error{background:#e53e3e;box-shadow:0 0 0 2px #e53e3e}

.pm-timeline-item__icon--info{background:#3182ce;box-shadow:0 0 0 2px #3182ce}

.pm-timeline-item__icon--primary{background:#667eea;box-shadow:0 0 0 2px #667eea}

.pm-timeline-item__icon--default{background:#cbd5e0;box-shadow:0 0 0 2px #cbd5e0}

.pm-timeline-item__connector{position:absolute;top:26px;bottom:-28px;left:50%;transform:translate(-50%);width:2px;background:#e2e8f0;z-index:1}

.pm-timeline-item--sm .pm-timeline-item__connector{top:22px;bottom:-26px}

.pm-timeline-item--lg .pm-timeline-item__connector{top:30px;bottom:-30px}

.pm-timeline-item--last .pm-timeline-item__connector{display:none}

.pm-timeline-item__content{flex:1;display:flex;gap:16px;min-width:0}

.pm-timeline-item--alternating .pm-timeline-item__content{max-width:50%}

.pm-timeline-item__main{flex:1;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;transition:all .2s ease}

.pm-timeline-item--sm .pm-timeline-item__main,.pm-timeline-item--lg .pm-timeline-item__main{padding:0}

.pm-timeline-item__header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:2px}

.pm-timeline-item__title{margin:0;font-size:14px;font-weight:600;color:#2d3748;line-height:1.3}

.pm-timeline-item--sm .pm-timeline-item__title{font-size:13px}

.pm-timeline-item--lg .pm-timeline-item__title{font-size:15px}

.pm-timeline-item__timestamp{font-size:13px;color:#a0aec0;white-space:nowrap;flex-shrink:0;font-weight:400}

.pm-timeline-item--sm .pm-timeline-item__timestamp{font-size:12px}

.pm-timeline-item--lg .pm-timeline-item__timestamp{font-size:14px}

.pm-timeline-item--alternating .pm-timeline-item__timestamp{align-self:flex-start;font-weight:400;min-width:100px;text-align:left;margin-top:2px}

.pm-timeline-item__description{margin:2px 0 0;font-size:13px;color:#718096;line-height:1.5}

.pm-timeline-item--sm .pm-timeline-item__description{font-size:12px}

.pm-timeline-item--lg .pm-timeline-item__description{font-size:14px}

.pm-timeline-item__custom{margin-top:12px}

@media(prefers-color-scheme:dark){.pm-timeline-item__main{background:#2d3748;border-color:#4a5568}.pm-timeline-item__title{color:#f7fafc}.pm-timeline-item__description{color:#e2e8f0}.pm-timeline-item__timestamp{color:#a0aec0}.pm-timeline-item__connector{background:#4a5568}.pm-timeline-item__icon{background:#1a202c;border-color:#4a5568}}

@media(max-width:768px){.pm-timeline{padding:8px 0}.pm-timeline-item{gap:16px;padding:8px 0}.pm-timeline--alternating .pm-timeline-item{flex-direction:row}.pm-timeline--alternating .pm-timeline-item__content{max-width:100%}.pm-timeline--alternating .pm-timeline-item__timestamp{display:none}.pm-timeline--alternating .pm-timeline-item__header .pm-timeline-item__timestamp{display:block}.pm-timeline-item__icon{width:32px;height:32px}.pm-timeline-item__connector{top:32px}.pm-timeline-item__main{padding:12px}.pm-timeline-item__title{font-size:14px}.pm-timeline-item__description{font-size:13px}.pm-timeline-item__timestamp{font-size:12px}}

@media(max-width:480px){.pm-timeline-item{gap:12px}.pm-timeline-item__icon{width:28px;height:28px;border-width:2px}.pm-timeline-item__connector{top:28px}.pm-timeline-item__main{padding:10px;border-radius:8px}.pm-timeline-item--clickable{min-height:44px;padding:8px 0}.pm-timeline-item--clickable .pm-timeline-item__main{min-height:44px;display:flex;flex-direction:column;justify-content:center}}

@keyframes pm-timeline-fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

.pm-timeline-item{animation:pm-timeline-fadeIn .4s ease-out backwards}

.pm-timeline-item:nth-child(1){animation-delay:.05s}

.pm-timeline-item:nth-child(2){animation-delay:.1s}

.pm-timeline-item:nth-child(3){animation-delay:.15s}

.pm-timeline-item:nth-child(4){animation-delay:.2s}

.pm-timeline-item:nth-child(5){animation-delay:.25s}

.pm-timeline-item:nth-child(n+6){animation-delay:.3s}

.page-header{--header-bg: #ffffff;--header-border: #e5e7eb;--header-text: #111827;--header-text-secondary: #6b7280;--header-icon-size: 24px;--header-spacing: 20px;background:var(--header-bg);border-bottom:1px solid var(--header-border);padding:var(--header-spacing) 24px;transition:all .2s ease}

.page-header--compact{--header-spacing: 16px;--header-icon-size: 20px;padding:12px 20px}

.page-header--compact .page-header__title{font-size:18px;margin:0}

.page-header--compact .page-header__subtitle{font-size:13px;margin-top:2px}

.page-header--minimal{--header-spacing: 12px;padding:10px 20px;border-bottom:none}

.page-header--minimal .page-header__title{font-size:16px;font-weight:600}

.page-header--minimal .page-header__subtitle{display:none}

.page-header--dashboard{padding:20px 24px 16px}

.page-header__breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:var(--header-text-secondary)}

.breadcrumb-item{display:inline-flex;align-items:center;gap:6px}

.breadcrumb-link{background:none;border:none;padding:0;color:#4f46e5;cursor:pointer;transition:color .2s}

.breadcrumb-link:hover{color:#4338ca;text-decoration:underline}

.breadcrumb-current{color:var(--header-text);font-weight:500}

.breadcrumb-separator{color:#d1d5db;font-weight:300}

.breadcrumb-icon{font-size:14px}

.page-header__main{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}

.page-header__content{flex:1;min-width:0}

.page-header__title-section{display:flex;flex-direction:column;gap:4px}

.title-row{display:flex;align-items:center;gap:12px}

.page-header__icon{font-size:var(--header-icon-size);line-height:1;flex-shrink:0}

.page-header__title{font-size:20px;font-weight:700;color:var(--header-text);margin:0;line-height:1.3}

.page-header__subtitle{font-size:14px;color:var(--header-text-secondary);margin:0;line-height:1.5;max-width:600px}

.page-header__badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}

.badge-primary{background:#eff6ff;color:#1e40af}

.badge-success{background:#f0fdf4;color:#166534}

.badge-warning{background:#fffbeb;color:#92400e}

.badge-danger{background:#fef2f2;color:#991b1b}

.badge-info{background:#f0f9ff;color:#075985}

.page-header__actions{display:flex;align-items:center;gap:10px;flex-shrink:0}

.actions-inline .page-header__actions{margin-top:12px}

.header-action-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}

.header-action-btn--primary{background:#4f46e5;color:#fff}

.header-action-btn--primary:hover{background:#4338ca;transform:translateY(-1px);box-shadow:0 2px 8px #4f46e54d}

.header-action-btn--secondary{background:#f3f4f6;color:#374151}

.header-action-btn--secondary:hover{background:#e5e7eb}

.header-action-btn--outline{background:transparent;color:#4f46e5;border:1.5px solid #4f46e5}

.header-action-btn--outline:hover{background:#eff6ff}

.header-action-btn--ghost{background:transparent;color:#6b7280}

.header-action-btn--ghost:hover{background:#f9fafb;color:#374151}

.header-action-btn--danger{background:#ef4444;color:#fff}

.header-action-btn--danger:hover{background:#dc2626}

.header-action-btn:disabled{opacity:.5;cursor:not-allowed}

.action-icon{font-size:16px;line-height:1}

.page-header__stats{display:flex;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid var(--header-border)}

.header-stat{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#fafbfc;border-radius:8px;border:1px solid #e5e7eb;min-width:140px}

.stat-icon{font-size:24px;line-height:1;opacity:.8}

.stat-content{display:flex;flex-direction:column;gap:2px}

.stat-value{font-size:20px;font-weight:700;color:var(--header-text);line-height:1}

.stat-label{font-size:11px;color:var(--header-text-secondary);text-transform:uppercase;letter-spacing:.5px}

.stat-trend{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;margin-top:4px}

.trend-up{color:#10b981}

.trend-down{color:#ef4444}

.trend-icon{font-size:12px}

.stat-primary .stat-icon{color:#4f46e5}

.stat-success .stat-icon{color:#10b981}

.stat-warning .stat-icon{color:#f59e0b}

.stat-danger .stat-icon{color:#ef4444}

.stat-info .stat-icon{color:#06b6d4}

.header-back-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;margin-bottom:10px;font-size:14px;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s}

.header-back-btn:hover{background:#f3f4f6;color:#374151}

.page-header--sticky{position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000001a}

.page-header--sm{--header-spacing: 12px;--header-icon-size: 18px}

.page-header--sm .page-header__title{font-size:16px}

.page-header--sm .page-header__subtitle{font-size:12px}

.page-header--lg{--header-spacing: 24px;--header-icon-size: 28px}

.page-header--lg .page-header__title{font-size:24px}

.page-header--lg .page-header__subtitle{font-size:15px}

@media(max-width:768px){.page-header{padding:12px 16px}.mobile-menu-btn{display:flex}.page-header__main{flex-direction:column;gap:12px}.page-header__actions{width:100%;justify-content:stretch;flex-wrap:wrap;gap:8px}.header-action-btn{flex:1;min-width:calc(50% - 4px);justify-content:center;min-height:44px}.header-action-btn--secondary .btn-label,.header-action-btn--outline .btn-label{display:none}.header-action-btn--primary .btn-label{display:inline}.page-header__stats{flex-wrap:wrap;gap:10px}.header-stat{flex:1 1 calc(50% - 5px);min-width:140px}.page-header__subtitle{font-size:13px}.page-header__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.page-header--hide-mobile{display:none}}

@media(max-width:480px){.page-header{padding:10px 12px}.page-header__title{font-size:16px;font-weight:600}.page-header__subtitle{font-size:12px;line-height:1.4}.page-header__icon{font-size:18px}.header-action-btn{padding:10px 16px;font-size:14px;min-width:100%;min-height:48px}.header-action-btn .btn-label{display:inline!important}.header-stat{flex:1 1 100%}.stat-value{font-size:18px}.page-header__breadcrumbs{font-size:12px;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.page-header__breadcrumbs::-webkit-scrollbar{display:none}.page-header__badge{font-size:10px;padding:4px 8px}}

@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.page-header{animation:fadeIn .3s ease}

.page-header__inline-badges{display:flex;align-items:center;gap:12px;margin-left:16px;flex-wrap:wrap}

.inline-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500;background:#f3f4f6;color:#374151;white-space:nowrap}

.inline-badge-icon{display:inline-flex;font-size:14px;line-height:1}

.inline-badge-value{font-weight:600;color:#111827}

.inline-badge-label{color:#6b7280}

.inline-badge--neutral{background:#f3f4f6;color:#374151}

.inline-badge--primary{background:#eef2ff;color:#4f46e5}

.inline-badge--primary .inline-badge-value{color:#4338ca}

.inline-badge--success{background:#f0fdf4;color:#16a34a}

.inline-badge--success .inline-badge-value{color:#15803d}

.inline-badge--warning{background:#fef3c7;color:#d97706}

.inline-badge--warning .inline-badge-value{color:#b45309}

.inline-badge--danger{background:#fee2e2;color:#dc2626}

.inline-badge--danger .inline-badge-value{color:#b91c1c}

.inline-badge--info{background:#e0f2fe;color:#0284c7}

.inline-badge--info .inline-badge-value{color:#0369a1}

.page-header__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid var(--header-border);flex-wrap:wrap}

.toolbar-search{flex:1;min-width:250px;max-width:450px}

.toolbar-search .searchbox{width:100%}

.toolbar-search .searchbox__input{width:100%;font-size:14px}

.toolbar-search .search-icon-left{left:12px!important;color:#9ca3af!important}

.toolbar-search .search-clear-btn{right:10px!important}

.toolbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}

.toolbar-count{font-size:14px;color:#6b7280;white-space:nowrap;margin-right:4px}

.toolbar-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;white-space:nowrap}

.filter-chip:hover{border-color:#d1d5db;background:#f9fafb}

.filter-chip--active{background:#eef2ff;border-color:#4f46e5;color:#4f46e5}

.filter-chip-icon{display:inline-flex;font-size:14px;line-height:1}

.filter-chip-value{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#e5e7eb;border-radius:10px;font-size:11px;font-weight:600;color:#374151}

.filter-chip--active .filter-chip-value{background:#4f46e5;color:#fff}

.filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:2px;padding:0;border:none;background:#e5e7eb;border-radius:50%;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s ease}

.filter-chip-remove:hover{background:#d1d5db;color:#374151}

.toolbar-view-toggle{display:flex;align-items:center;gap:2px;background:#f3f4f6;border-radius:8px;padding:2px}

.view-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;border-radius:6px;font-size:18px;color:#6b7280;cursor:pointer;transition:all .2s ease}

.view-toggle-btn:hover{background:#e5e7eb;color:#374151}

.view-toggle-btn--active{background:#fff;color:#4f46e5;box-shadow:0 1px 3px #0000001a}

@media(max-width:1024px)and (min-width:769px){.page-header{padding:18px 20px}.page-header__main{flex-direction:column;gap:16px}.page-header__actions{width:100%;justify-content:flex-end}.page-header__breadcrumbs{font-size:12px;gap:6px}.page-header__stats{gap:16px}}

@media(max-width:768px){.page-header{padding:16px}.page-header__main{flex-direction:column;gap:14px}.page-header__content{width:100%}.page-header__title-section{gap:6px}.title-row{flex-wrap:wrap;gap:10px}.page-header__icon{font-size:20px}.page-header__title{font-size:18px;font-weight:700}.page-header__subtitle{font-size:13px;line-height:1.4}.page-header__badge{padding:3px 8px;font-size:10px}.page-header__actions{width:100%;flex-wrap:wrap;gap:8px}.header-action-btn{flex:1;min-width:120px;justify-content:center;padding:10px 14px;font-size:14px;min-height:44px}.page-header__breadcrumbs{font-size:12px;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}.page-header__breadcrumbs::-webkit-scrollbar{display:none}.page-header__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-item{padding:12px}.stat-value{font-size:20px}.stat-label{font-size:12px}}

@media(max-width:480px){.page-header{padding:14px 12px}.page-header__title{font-size:16px}.page-header__subtitle{font-size:12px}.page-header__icon{font-size:18px}.header-action-btn{flex:1 1 100%;min-width:unset}.page-header__stats{grid-template-columns:1fr}.stat-item{padding:10px}}

@media(max-width:1024px)and (min-width:769px){.page-header__toolbar{gap:14px}.toolbar-search{min-width:280px;max-width:400px}.toolbar-filters{gap:10px;flex-wrap:wrap}.filter-chip{padding:8px 14px;font-size:13px;min-height:40px}.page-header__actions{flex-wrap:wrap;gap:10px}.header-action-btn{min-height:40px}}

@media(max-width:768px){.page-header__toolbar{flex-direction:column;gap:14px;align-items:stretch;padding-top:14px}.toolbar-search{max-width:100%;order:1}.toolbar-right{flex-wrap:wrap;justify-content:space-between;gap:12px;order:2}.toolbar-filters{order:-1;width:100%;justify-content:flex-start;gap:8px}.toolbar-count{order:1;font-size:13px}.toolbar-view-toggle{order:2}.filter-chip{padding:10px 14px;font-size:14px;min-height:40px}.view-toggle-btn{width:42px;height:42px}}

@media(max-width:768px){.page-header__inline-badges{flex-wrap:wrap;gap:10px;margin-top:12px}.inline-badge{padding:10px 14px;font-size:14px;min-height:44px}.inline-badge-label{display:none}}

@media(max-width:480px){.page-header__inline-badges{margin-left:0;margin-top:12px;width:100%;gap:8px}.inline-badge{flex:1 1 calc(50% - 4px);min-width:120px;padding:10px 14px;font-size:14px;min-height:44px;justify-content:center}.page-header__toolbar{gap:12px;margin-top:14px}.toolbar-search{order:1}.toolbar-filters{gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.toolbar-filters::-webkit-scrollbar{display:none}.filter-chip{padding:10px 16px;font-size:14px;min-height:44px;white-space:nowrap;border-radius:12px}.toolbar-count{font-size:12px;white-space:nowrap}.view-toggle-btn{width:44px;height:44px;border-radius:12px}}

.file-upload-container{width:100%}

.file-upload-dropzone{border:2px dashed var(--pm-color-border, #d1d5db);border-radius:12px;padding:32px 24px;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--pm-color-surface, #ffffff)}

.file-upload-dropzone:hover{border-color:var(--pm-color-primary, #3b82f6);background:var(--pm-color-primary-light, #eff6ff)}

.file-upload-dropzone-dragging{border-color:var(--pm-color-primary, #3b82f6);background:var(--pm-color-primary-light, #eff6ff);transform:scale(1.02)}

.file-upload-dropzone-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}

.file-upload-dropzone-readonly{cursor:default;pointer-events:none}

.file-upload-dropzone-content{display:flex;flex-direction:column;align-items:center;gap:12px}

.file-upload-icon{width:48px;height:48px;color:var(--pm-color-text-secondary, #6b7280);transition:color .2s}

.file-upload-dropzone:hover .file-upload-icon{color:var(--pm-color-primary, #3b82f6)}

.file-upload-text{display:flex;flex-direction:column;gap:4px}

.file-upload-button-text{font-size:16px;font-weight:600;color:var(--pm-color-primary, #3b82f6)}

.file-upload-drop-text{font-size:14px;color:var(--pm-color-text-secondary, #6b7280)}

.file-upload-accept-text,.file-upload-max-size{font-size:13px;color:var(--pm-color-text-tertiary, #9ca3af)}

.file-upload-list{margin-top:16px;display:flex;flex-direction:column;gap:12px}

.file-upload-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--pm-color-border, #e5e7eb);border-radius:8px;background:var(--pm-color-surface, #ffffff);transition:all .15s}

.file-upload-item:hover{border-color:var(--pm-color-primary, #3b82f6);background:var(--pm-color-primary-light, #eff6ff)}

.file-upload-item-error{border-color:var(--pm-color-danger, #ef4444);background:var(--pm-color-danger-light, #fee)}

.file-upload-preview{width:48px;height:48px;border-radius:6px;overflow:hidden;flex-shrink:0;background:var(--pm-color-surface-hover, #f3f4f6)}

.file-upload-preview img{width:100%;height:100%;object-fit:cover}

.file-upload-file-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--pm-color-surface-hover, #f3f4f6);border-radius:6px;flex-shrink:0}

.file-upload-file-icon svg{width:24px;height:24px;color:var(--pm-color-text-secondary, #6b7280)}

.file-upload-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}

.file-upload-item-name{font-size:14px;font-weight:500;color:var(--pm-color-text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.file-upload-item-size{font-size:13px;color:var(--pm-color-text-secondary, #6b7280)}

.file-upload-item-error-text{font-size:12px;color:var(--pm-color-danger, #ef4444);margin-top:2px}

.file-upload-item-remove{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:var(--pm-color-text-secondary, #6b7280);cursor:pointer;flex-shrink:0;transition:all .15s}

.file-upload-item-remove:hover{background:var(--pm-color-danger-light, #fee2e2);color:var(--pm-color-danger, #ef4444)}

.file-upload-item-remove svg{width:18px;height:18px}

.file-upload-clear-all{padding:8px 16px;background:transparent;border:1px solid var(--pm-color-border, #e5e7eb);border-radius:6px;color:var(--pm-color-text-secondary, #6b7280);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;align-self:flex-start}

.file-upload-clear-all:hover{border-color:var(--pm-color-danger, #ef4444);background:var(--pm-color-danger-light, #fee2e2);color:var(--pm-color-danger, #ef4444)}

.file-upload-field-compact .file-upload-dropzone{padding:20px 16px}

.file-upload-field-compact .file-upload-icon{width:36px;height:36px}

.file-upload-field-compact .file-upload-button-text{font-size:14px}

.file-upload-field-compact .file-upload-drop-text{font-size:13px}

.file-upload-field-compact .file-upload-item{padding:8px}

.file-upload-field-compact .file-upload-preview,.file-upload-field-compact .file-upload-file-icon{width:40px;height:40px}

.file-upload-error .file-upload-dropzone{border-color:var(--pm-color-danger, #ef4444)}

@media(prefers-color-scheme:dark){.file-upload-dropzone{background:var(--pm-color-surface-dark, #1f2937);border-color:var(--pm-color-border-dark, #374151)}.file-upload-dropzone:hover,.file-upload-dropzone-dragging{background:var(--pm-color-primary-dark-light, #1e3a8a)}.file-upload-icon{color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-button-text{color:var(--pm-color-primary-dark, #60a5fa)}.file-upload-drop-text{color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-accept-text,.file-upload-max-size{color:var(--pm-color-text-tertiary-dark, #6b7280)}.file-upload-item{background:var(--pm-color-surface-dark, #1f2937);border-color:var(--pm-color-border-dark, #374151)}.file-upload-item:hover{background:var(--pm-color-primary-dark-light, #1e3a8a);border-color:var(--pm-color-primary-dark, #60a5fa)}.file-upload-item-name{color:var(--pm-color-text-primary-dark, #f9fafb)}.file-upload-item-size{color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-file-icon{background:var(--pm-color-surface-hover-dark, #374151)}.file-upload-file-icon svg{color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-item-remove{color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-item-remove:hover{background:var(--pm-color-danger-dark-light, #7f1d1d);color:var(--pm-color-danger-dark, #fca5a5)}.file-upload-clear-all{border-color:var(--pm-color-border-dark, #374151);color:var(--pm-color-text-secondary-dark, #9ca3af)}.file-upload-clear-all:hover{border-color:var(--pm-color-danger-dark, #fca5a5);background:var(--pm-color-danger-dark-light, #7f1d1d);color:var(--pm-color-danger-dark, #fca5a5)}}

@media(max-width:640px){.file-upload-dropzone{padding:24px 16px}.file-upload-icon{width:40px;height:40px}.file-upload-button-text{font-size:15px}.file-upload-drop-text{font-size:13px}.file-upload-item{padding:10px}}

@media(prefers-reduced-motion:reduce){.file-upload-dropzone,.file-upload-item,.file-upload-item-remove,.file-upload-clear-all{transition:none}}

.pm-error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#fef2f2,#fee2e2);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}

.pm-error-boundary-container{max-width:600px;width:100%;background:#fff;border-radius:16px;padding:40px;box-shadow:0 20px 60px #dc262626;text-align:center}

.pm-error-boundary-icon{font-size:64px;margin-bottom:24px;animation:shake .5s ease-in-out}

@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}

.pm-error-boundary-title{font-size:28px;font-weight:700;color:#dc2626;margin:0 0 16px}

.pm-error-boundary-message{font-size:16px;color:#64748b;line-height:1.6;margin:0 0 32px}

.pm-error-boundary-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:32px;text-align:left}

.pm-error-boundary-error{font-size:14px;color:#dc2626;margin-bottom:16px;word-break:break-word}

.pm-error-boundary-error strong{display:block;margin-bottom:8px;color:#0f172a}

.pm-error-boundary-stack{font-size:13px;color:#475569}

.pm-error-boundary-stack summary{color:#0f172a;margin-bottom:8px;user-select:none}

.pm-error-boundary-stack pre{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:12px;overflow-x:auto;font-family:Courier New,monospace;font-size:12px;line-height:1.5;margin:0;white-space:pre-wrap;word-break:break-all}

.pm-error-boundary-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}

.pm-error-boundary-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}

.pm-error-boundary-button:disabled{opacity:.5;cursor:not-allowed}

.pm-error-boundary-button-primary:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}

.pm-error-boundary-button-secondary{background:#64748b;color:#fff}

.pm-error-boundary-button-secondary:hover:not(:disabled){background:#475569;transform:translateY(-1px);box-shadow:0 4px 12px #64748b4d}

.pm-error-boundary-button-text{background:transparent;color:#64748b;padding:8px 16px}

.pm-error-boundary-button-text:hover:not(:disabled){color:#475569;background:#f1f5f9}

.pm-error-boundary-recovering{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:24px;color:#1e40af;font-size:14px;font-weight:500}

.pm-error-boundary-spinner{width:20px;height:20px;border:3px solid #bfdbfe;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}

@keyframes spin{to{transform:rotate(360deg)}}

.pm-error-boundary-severity{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 12px;border-radius:12px;margin-bottom:16px}

.pm-error-boundary-retry-info{margin:0;padding:12px;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;color:#92400e;font-size:13px}

.pm-error-boundary-support{font-size:14px;color:#94a3b8;margin:0}

.pm-error-boundary-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;font-family:inherit}

.pm-error-boundary-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}

.pm-error-boundary-button-primary{background:#dc2626;color:#fff}

.pm-error-boundary-button-primary:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}

.pm-error-boundary-button-primary:active{transform:translateY(0)}

.pm-error-boundary-button-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}

.pm-error-boundary-button-secondary:hover{background:#e2e8f0;transform:translateY(-1px)}

.pm-error-boundary-button-secondary:active{transform:translateY(0)}

.pm-error-boundary-support{font-size:13px;color:#94a3b8;margin:0}

@media(max-width:640px){.pm-error-boundary-container{padding:24px}.pm-error-boundary-icon{font-size:48px}.pm-error-boundary-title{font-size:22px}.pm-error-boundary-actions{flex-direction:column}.pm-error-boundary-button{width:100%}}

@media(prefers-color-scheme:dark){.pm-error-boundary{background:linear-gradient(135deg,#1e1b1b,#2d1f1f)}.pm-error-boundary-container{background:#1e293b;box-shadow:0 20px 60px #00000080}.pm-error-boundary-title{color:#f87171}.pm-error-boundary-message{color:#94a3b8}.pm-error-boundary-details{background:#0f172a;border-color:#334155}.pm-error-boundary-error strong,.pm-error-boundary-stack summary{color:#f1f5f9}.pm-error-boundary-stack pre{background:#1e293b;border-color:#334155;color:#cbd5e1}.pm-error-boundary-button-secondary{background:#334155;color:#e2e8f0;border-color:#475569}.pm-error-boundary-button-secondary:hover{background:#475569}}

.alert-2025-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeInOverlay .25s ease-out}

@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}

.alert-2025{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:400px;background:#fff;border-radius:var(--pm-modal-radius);padding:32px 28px 24px;box-shadow:var(--pm-shadow-modal);z-index:10000;display:flex;flex-direction:column;align-items:center;text-align:center}

@media(prefers-color-scheme:dark){.alert-2025{background:#2d2d2d;box-shadow:0 24px 48px #0006,0 12px 24px #0000004d}}

.alert-2025__icon-wrapper{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin-bottom:20px;animation:iconBounce .6s cubic-bezier(.68,-.55,.265,1.55)}

@keyframes iconBounce{0%{transform:scale(0) rotate(-10deg);opacity:0}50%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}

.alert-2025--info .alert-2025__icon-wrapper{color:#3b82f6}

.alert-2025--success .alert-2025__icon-wrapper{color:#10b981;animation:iconBounce .6s cubic-bezier(.68,-.55,.265,1.55),successPulse 2s ease-in-out .6s infinite}

@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}

.alert-2025--warning .alert-2025__icon-wrapper{color:#f59e0b;animation:iconBounce .6s cubic-bezier(.68,-.55,.265,1.55),warningShake 2s ease-in-out .6s infinite}

@keyframes warningShake{0%,to{transform:rotate(0)}10%,30%,50%,70%,90%{transform:rotate(-2deg)}20%,40%,60%,80%{transform:rotate(2deg)}}

.alert-2025--error .alert-2025__icon-wrapper{color:#ef4444;animation:iconBounce .6s cubic-bezier(.68,-.55,.265,1.55),errorPulse 2s ease-in-out .6s infinite}

@keyframes errorPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}

.alert-2025__content{width:100%;margin-bottom:28px}

.alert-2025__title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 12px;line-height:1.3}

.alert-2025__message{font-size:15px;font-weight:400;color:#6b7280;line-height:1.6;margin:0}

.alert-2025__subtitle{font-size:13px;font-weight:400;color:#9ca3af;line-height:1.5;margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.05)}

@media(prefers-color-scheme:dark){.alert-2025__title{color:#f9fafb}.alert-2025__message{color:#d1d5db}.alert-2025__subtitle{color:#9ca3af;border-top-color:#ffffff1a}}

.alert-2025__footer{width:100%;display:flex;justify-content:center}

.alert-2025__btn{min-width:120px;padding:12px 24px;font-size:15px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none}

.alert-2025__btn:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}

.alert-2025__btn--ok.alert-2025--info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}

.alert-2025__btn--ok.alert-2025--info:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}

.alert-2025__btn--ok.alert-2025--success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}

.alert-2025__btn--ok.alert-2025--success:hover{transform:translateY(-2px);box-shadow:0 8px 20px #10b98166}

.alert-2025__btn--ok.alert-2025--warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}

.alert-2025__btn--ok.alert-2025--warning:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f59e0b66}

.alert-2025__btn--ok.alert-2025--error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}

.alert-2025__btn--ok.alert-2025--error:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}

.alert-2025__btn:active{transform:scale(.98)}

@media(max-width:768px){.alert-2025{max-width:calc(100vw - 48px);padding:28px 24px 20px}.alert-2025__icon-wrapper{width:72px;height:72px}}

@media(max-width:480px){.alert-2025{max-width:calc(100vw - 32px);padding:24px 20px 18px;border-radius:20px}.alert-2025__icon-wrapper{width:64px;height:64px;margin-bottom:16px}.alert-2025__title{font-size:18px}.alert-2025__message{font-size:14px}.alert-2025__subtitle{font-size:12px}.alert-2025__btn{width:100%;min-height:48px;font-size:16px}}

@media(max-width:375px){.alert-2025{max-width:calc(100vw - 24px);padding:20px 16px 16px}.alert-2025__icon-wrapper{width:56px;height:56px}.alert-2025__title{font-size:17px}}

@supports (padding: max(0px)){.alert-2025{padding-bottom:max(24px,env(safe-area-inset-bottom))}}

@media(hover:none)and (pointer:coarse){.alert-2025__btn{min-height:48px;min-width:48px}.alert-2025__btn:active{transform:scale(.98)}}

@media(prefers-reduced-motion:reduce){.alert-2025,.alert-2025__icon-wrapper,.alert-2025-overlay{animation:none!important;transition:none!important}.alert-2025__btn{transition:none!important}}

.confirm-2025-overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000026!important;animation:fadeInOverlay .2s cubic-bezier(.4,0,.2,1)}

@keyframes fadeInOverlay{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}}

.confirm-2025{max-width:420px!important;background:#fff;border-radius:16px!important;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;padding:0!important;overflow:visible!important;position:relative;border:1px solid rgba(0,0,0,.04)}

.confirm-2025:before{display:none}

@media(prefers-color-scheme:dark){.confirm-2025{background:#18181b;border-color:#ffffff14;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0000004d}}

.confirm-2025__icon-wrapper{display:flex;align-items:center;justify-content:center;padding:32px 32px 20px;animation:iconFadeIn .3s cubic-bezier(.4,0,.2,1);position:relative}

.confirm-2025__icon-wrapper:before{display:none}

@keyframes iconFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}

.confirm-2025__icon-wrapper svg{width:48px;height:48px;position:relative;z-index:1;filter:none}

.confirm-icon-danger{color:#ef4444;stroke-width:2}

.confirm-icon-warning{color:#f59e0b;stroke-width:2}

.confirm-icon-info{color:#3b82f6;stroke-width:2}

.confirm-icon-success{color:#10b981;stroke-width:2}

.confirm-2025--danger .confirm-icon-danger{animation:none}

.confirm-2025__content{padding:0 32px 24px;text-align:center}

.confirm-2025__title{margin:0 0 12px;font-size:20px;font-weight:600;line-height:1.3;color:#0f172a;letter-spacing:-.02em}

@media(prefers-color-scheme:dark){.confirm-2025__title{color:#f8fafc}}

.confirm-2025__message{font-size:14px;line-height:1.6;color:#64748b;font-weight:400;max-width:360px;margin:0 auto}

@media(prefers-color-scheme:dark){.confirm-2025__message{color:#94a3b8}}

.confirm-2025__subtitle{margin-top:12px;padding:12px 16px;background:#f8fafc;border-radius:8px;font-size:13px;color:#475569;border-left:3px solid #cbd5e1;text-align:left;line-height:1.5}

@media(prefers-color-scheme:dark){.confirm-2025__subtitle{background:#27272a;color:#94a3b8;border-left-color:#3f3f46}}

.confirm-2025__footer{display:flex;gap:12px;padding:24px 32px 32px;justify-content:stretch;background:transparent;border-radius:0 0 16px 16px}

.confirm-2025__btn{flex:1;min-height:44px;padding:12px 24px;font-size:14px;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;letter-spacing:0}

.confirm-2025__btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

.confirm-2025__btn--cancel{background:#fff;color:#4b5563;border:1px solid #e5e7eb;font-weight:500;box-shadow:0 1px 2px #0000000d}

.confirm-2025__btn--cancel:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;box-shadow:0 1px 3px #0000001a}

.confirm-2025__btn--cancel:active:not(:disabled){transform:translateY(0);box-shadow:none}

@media(prefers-color-scheme:dark){.confirm-2025__btn--cancel{background:#27272a;color:#d1d5db;border-color:#3f3f46;box-shadow:0 1px 2px #0003}.confirm-2025__btn--cancel:hover:not(:disabled){background:#3f3f46;border-color:#52525b}}

.confirm-2025__btn--confirm.pm-btn-danger,.confirm-2025__btn--confirm.mbsc-btn-danger{background:#ef4444;color:#fff;border:none;font-weight:500;box-shadow:0 1px 2px #ef444433}

.confirm-2025__btn--confirm.pm-btn-danger:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 2px 4px #ef444440}

.confirm-2025__btn--confirm.pm-btn-danger:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #ef444433}

.confirm-2025__btn--confirm.pm-btn-primary,.confirm-2025__btn--confirm.mbsc-btn-primary{background:#3b82f6;color:#fff;border:none;font-weight:500;box-shadow:0 1px 2px #3b82f633}

.confirm-2025__btn--confirm.pm-btn-primary:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-primary:hover:not(:disabled){background:#2563eb;box-shadow:0 2px 4px #3b82f640}

.confirm-2025__btn--confirm.pm-btn-primary:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #3b82f633}

.confirm-2025__btn--confirm.pm-btn-success,.confirm-2025__btn--confirm.mbsc-btn-success{background:#10b981;color:#fff;border:none;font-weight:500;box-shadow:0 1px 2px #10b98133}

.confirm-2025__btn--confirm.pm-btn-success:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-success:hover:not(:disabled){background:#059669;box-shadow:0 2px 4px #10b98140}

.confirm-2025__btn--confirm.pm-btn-success:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-success:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #10b98133}

.confirm-2025__btn--confirm.pm-btn-warning,.confirm-2025__btn--confirm.mbsc-btn-warning{background:#f59e0b;color:#fff;border:none;font-weight:500;box-shadow:0 1px 2px #f59e0b33}

.confirm-2025__btn--confirm.pm-btn-warning:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-warning:hover:not(:disabled){background:#d97706;box-shadow:0 2px 4px #f59e0b40}

.confirm-2025__spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}

@keyframes spin{to{transform:rotate(360deg)}}

@media(max-width:768px){.confirm-2025{max-width:calc(100vw - 32px)!important;margin:16px}}

@media(max-width:480px){.confirm-2025{max-width:calc(100vw - 24px)!important;margin:12px;border-radius:12px!important}.confirm-2025__icon-wrapper svg{width:40px;height:40px}@keyframes fadeInOverlay{0%{opacity:0;backdrop-filter:blur(0px) saturate(100%);-webkit-backdrop-filter:blur(0px) saturate(100%)}to{opacity:1;backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%)}}.confirm-2025{max-width:480px!important;background:#fff;border-radius:24px!important;box-shadow:0 32px 64px #00000026,0 16px 32px #0000001a,0 8px 16px #00000014,0 0 0 1px #00000008;padding:0!important;overflow:visible!important;position:relative;border:1px solid rgba(0,0,0,.05)}.confirm-2025:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);border-radius:24px 24px 0 0;opacity:.15}.confirm-2025--danger:before{background:linear-gradient(90deg,#ef4444,#dc2626);opacity:.25}.confirm-2025--warning:before{background:linear-gradient(90deg,#f59e0b,#d97706);opacity:.25}.confirm-2025--success:before{background:linear-gradient(90deg,#10b981,#059669);opacity:.25}@media(prefers-color-scheme:dark){.confirm-2025{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 32px 64px #0009,0 16px 32px #0006,0 8px 16px #0000004d,0 0 0 1px #ffffff0d}}.confirm-2025__icon-wrapper{display:flex;align-items:center;justify-content:center;padding:40px 32px 32px;animation:iconBounce .6s cubic-bezier(.34,1.56,.64,1);position:relative}.confirm-2025__icon-wrapper:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120px;height:120px;border-radius:50%;opacity:.08;filter:blur(30px);z-index:0}.confirm-2025--danger .confirm-2025__icon-wrapper:before{background:radial-gradient(circle,#ef4444 0%,transparent 70%);opacity:.15}.confirm-2025--warning .confirm-2025__icon-wrapper:before{background:radial-gradient(circle,#f59e0b 0%,transparent 70%);opacity:.12}.confirm-2025--success .confirm-2025__icon-wrapper:before{background:radial-gradient(circle,#10b981 0%,transparent 70%);opacity:.12}.confirm-2025--info .confirm-2025__icon-wrapper:before{background:radial-gradient(circle,#3b82f6 0%,transparent 70%);opacity:.1}@keyframes iconBounce{0%{transform:scale(0) rotate(-15deg);opacity:0}50%{transform:scale(1.15) rotate(5deg)}70%{transform:scale(.95) rotate(-2deg)}to{transform:scale(1) rotate(0);opacity:1}}.confirm-2025__icon-wrapper svg{width:72px;height:72px;position:relative;z-index:1;filter:drop-shadow(0 4px 12px rgba(0,0,0,.12))}.confirm-icon-danger{color:#ef4444;stroke-width:2.5}.confirm-icon-warning{color:#f59e0b;stroke-width:2.5}.confirm-icon-info{color:#3b82f6;stroke-width:2.5}.confirm-icon-success{color:#10b981;stroke-width:2.5}.confirm-2025--danger .confirm-icon-danger{animation:dangerPulse 2.5s ease-in-out infinite}@keyframes dangerPulse{0%,to{filter:drop-shadow(0 0 12px rgba(239,68,68,.4))}50%{filter:drop-shadow(0 0 20px rgba(239,68,68,.6))}}.confirm-2025__content{padding:0 40px 32px;text-align:center}.confirm-2025__title{margin:0 0 16px;font-size:26px;font-weight:700;line-height:1.2;color:#0f172a;letter-spacing:-.03em}@media(prefers-color-scheme:dark){.confirm-2025__title{color:#f8fafc}}.confirm-2025__message{font-size:16px;line-height:1.7;color:#64748b;font-weight:450;max-width:380px;margin:0 auto}@media(prefers-color-scheme:dark){.confirm-2025__message{color:#94a3b8}}.confirm-2025__subtitle{margin-top:16px;padding:14px 18px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;font-size:14px;color:#475569;border-left:4px solid #cbd5e1;text-align:left;line-height:1.6}@media(prefers-color-scheme:dark){.confirm-2025__subtitle{background:linear-gradient(135deg,#27272a,#18181b);color:#94a3b8;border-left-color:#3f3f46}}.confirm-2025__footer{display:flex;gap:14px;padding:28px 40px 40px;justify-content:stretch;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.01) 100%);border-radius:0 0 24px 24px}.confirm-2025__btn{flex:1;min-height:52px;padding:14px 28px;font-size:16px;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;letter-spacing:.01em}.confirm-2025__btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.confirm-2025__btn--cancel{background:linear-gradient(135deg,#fff,#fafafa);color:#4b5563;border:2px solid #e5e7eb;font-weight:600;box-shadow:0 1px 3px #00000014,inset 0 1px #ffffffe6}.confirm-2025__btn--cancel:hover:not(:disabled){background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a,inset 0 1px #ffffffe6}.confirm-2025__btn--cancel:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #00000014,inset 0 1px 3px #0000000d}@media(prefers-color-scheme:dark){.confirm-2025__btn--cancel{background:linear-gradient(135deg,#2d2d2d,#262626);color:#d1d5db;border-color:#404040;box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff0d}.confirm-2025__btn--cancel:hover:not(:disabled){background:linear-gradient(135deg,#373737,#2d2d2d);border-color:#525252}}.confirm-2025__btn--confirm.pm-btn-danger,.confirm-2025__btn--confirm.mbsc-btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;font-weight:700;box-shadow:0 4px 14px #ef444459,0 2px 6px #dc262640,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-danger:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 8px 24px #ef444473,0 4px 12px #dc26264d,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-danger:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 14px #ef444459,0 2px 6px #dc262640,inset 0 2px 4px #00000026}.confirm-2025__btn--confirm.pm-btn-primary,.confirm-2025__btn--confirm.mbsc-btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;font-weight:700;box-shadow:0 4px 14px #3b82f659,0 2px 6px #2563eb40,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-primary:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 24px #3b82f673,0 4px 12px #2563eb4d,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-primary:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 14px #3b82f659,0 2px 6px #2563eb40,inset 0 2px 4px #00000026}.confirm-2025__btn--confirm.pm-btn-success,.confirm-2025__btn--confirm.mbsc-btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;font-weight:700;box-shadow:0 4px 14px #10b98159,0 2px 6px #05966940,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-success:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 8px 24px #10b98173,0 4px 12px #0596694d,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-success:active:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-success:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 14px #10b98159,0 2px 6px #05966940,inset 0 2px 4px #00000026}.confirm-2025__btn--confirm.pm-btn-warning,.confirm-2025__btn--confirm.mbsc-btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;font-weight:700;box-shadow:0 4px 14px #f59e0b59,0 2px 6px #d9770640,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__btn--confirm.pm-btn-warning:hover:not(:disabled),.confirm-2025__btn--confirm.mbsc-btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-2px);box-shadow:0 8px 24px #f59e0b73,0 4px 12px #d977064d,inset 0 1px #ffffff26,inset 0 -1px #0000001a}.confirm-2025__spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.confirm-2025{max-width:calc(100vw - 48px)!important;margin:24px}}.confirm-2025{max-width:calc(100vw - 32px)!important;margin:16px;border-radius:20px!important}.confirm-2025__icon-wrapper{padding:24px 24px 16px}.confirm-2025__icon-wrapper svg{width:56px;height:56px}.confirm-2025__content{padding:0 24px 16px}.confirm-2025__title{font-size:20px}.confirm-2025__message{font-size:14px}.confirm-2025__footer{padding:16px 24px 24px;flex-direction:column-reverse;gap:12px}.confirm-2025__btn{width:100%;min-height:48px;font-size:16px}.confirm-2025__subtitle{font-size:12px;padding:10px 12px}@media(max-width:375px){.confirm-2025{max-width:calc(100vw - 24px)!important;margin:12px}.confirm-2025__icon-wrapper{padding:20px 20px 12px}.confirm-2025__icon-wrapper svg{width:48px;height:48px}.confirm-2025__content{padding:0 20px 12px}.confirm-2025__title{font-size:18px}.confirm-2025__message{font-size:13px}.confirm-2025__footer{padding:12px 20px 20px}}@supports (padding: max(0px)){.confirm-2025-overlay{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.confirm-2025__footer{padding-bottom:max(24px,calc(24px + env(safe-area-inset-bottom)))}}@media(hover:none)and (pointer:coarse){.confirm-2025__btn:active{transform:scale(.98);transition:transform .1s}.confirm-2025__btn{min-height:52px;padding:14px 24px}.confirm-2025{-webkit-user-select:none;user-select:none}.confirm-2025__message{-webkit-user-select:text;user-select:text}}@media(max-width:768px)and (orientation:landscape){.confirm-2025{max-width:500px!important}.confirm-2025__icon-wrapper{padding:16px 24px 12px}.confirm-2025__icon-wrapper svg{width:48px;height:48px}.confirm-2025__footer{flex-direction:row;padding:12px 24px 16px}}.confirm-2025__btn:focus-visible{outline:3px solid rgba(59,130,246,.5);outline-offset:2px}@media(prefers-reduced-motion:reduce){.confirm-2025-overlay,.confirm-2025__icon-wrapper,.confirm-2025__btn,.confirm-2025--danger .confirm-icon-danger{animation:none!important;transition:none!important}.confirm-2025__btn:hover:not(:disabled){transform:none!important}}.pm-dialog-overlay{position:fixed;inset:0;background-color:var(--theme-overlay, rgba(0, 0, 0, .5));z-index:var(--dialog-z-index);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--animation-duration)}.pm-dialog{background-color:var(--theme-surface, #fff);color:var(--theme-textPrimary, #212121);border-radius:var(--border-radius-large, 4px);box-shadow:var(--notification-shadow);width:100%;max-width:500px;margin:24px;overflow:hidden;transform:scale(.9);opacity:0;transition:transform var(--animation-duration),opacity var(--animation-duration)}.pm-dialog-visible{transform:scale(1);opacity:1}.pm-dialog-overlay:has(.pm-dialog-visible){opacity:1}.pm-dialog-header{padding:16px 24px 0}.pm-dialog-title{margin:0;font-size:20px;font-weight:500;color:var(--theme-textPrimary, #212121)}.pm-dialog-content{padding:20px 24px;font-size:16px;color:var(--theme-textPrimary, rgba(0, 0, 0, .87))}.pm-dialog-message{margin:0 0 16px;font-size:16px}.pm-dialog-footer{padding:8px;display:flex;justify-content:flex-end;gap:8px}.pm-prompt-input-wrapper{margin-top:12px}.pm-prompt-label{display:block;margin-bottom:8px;font-size:14px;color:var(--theme-textSecondary, rgba(0, 0, 0, .6))}.pm-prompt-input{width:100%;padding:12px;font-size:16px;border:1px solid var(--theme-borderColor, #ccc);border-radius:var(--border-radius-small, 4px);box-sizing:border-box;transition:border-color .2s}.pm-prompt-input:focus{border-color:var(--theme-primary, #2196f3);outline:none}.pm-dialog-btn{min-width:64px;padding:8px 16px;border-radius:var(--border-radius-small, 4px);font-weight:500;text-transform:uppercase;cursor:pointer;transition:background-color .2s;border:none;outline:none;font-size:14px}.pm-btn{display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;line-height:1;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;padding:8px 16px;border-radius:var(--border-radius-small, 4px);transition:all .2s}.pm-btn-text{background-color:transparent;border:none}.pm-btn-outlined{background-color:transparent;border:1px solid currentColor}.pm-btn-contained{color:var(--theme-textOnPrimary, #fff);border:none}.pm-btn-primary.pm-btn-contained{background-color:var(--theme-primary, #2196f3)}.pm-btn-primary.pm-btn-outlined,.pm-btn-primary.pm-btn-text{color:var(--theme-primary, #2196f3)}.pm-btn-secondary.pm-btn-contained{background-color:var(--theme-secondary, #757575)}.pm-btn-secondary.pm-btn-outlined,.pm-btn-secondary.pm-btn-text{color:var(--theme-secondary, #757575)}.pm-btn-success.pm-btn-contained{background-color:var(--theme-success, #4caf50)}.pm-btn-success.pm-btn-outlined,.pm-btn-success.pm-btn-text{color:var(--theme-success, #4caf50)}.pm-btn-danger.pm-btn-contained{background-color:var(--theme-danger, #f44336)}.pm-btn-danger.pm-btn-outlined,.pm-btn-danger.pm-btn-text{color:var(--theme-danger, #f44336)}.pm-btn-contained:hover{opacity:.9;box-shadow:0 2px 4px #0003}.pm-btn-outlined:hover,.pm-btn-text:hover{background-color:#0000000d}.theme-ios .pm-dialog{border-radius:13px;max-width:280px}.theme-ios .pm-dialog-title{text-align:center;font-size:18px;font-weight:600}.theme-ios .pm-dialog-content{text-align:center;padding:16px 16px 22px}.theme-ios .pm-dialog-footer{flex-direction:column-reverse;padding:0;border-top:1px solid var(--theme-divider, rgba(0, 0, 0, .1))}.theme-ios .pm-dialog-btn{width:100%;margin:0;border-radius:0;border-bottom:1px solid var(--theme-divider, rgba(0, 0, 0, .1));padding:12px;font-size:17px;font-weight:400;text-transform:none}.theme-ios .pm-dialog-btn:last-child{border-bottom:none}.theme-ios .pm-prompt-input{border-radius:10px;padding:13px 16px;font-size:17px}.theme-material .pm-dialog{border-radius:4px;padding:8px 0}.theme-material .pm-dialog-title{font-size:20px;font-weight:500;padding:16px 24px 8px}.theme-material .pm-dialog-content{padding:0 24px 20px}.theme-material .pm-dialog-footer{padding:8px}.theme-material .pm-dialog-btn{text-transform:uppercase;font-weight:500;min-height:36px;letter-spacing:.5px}.theme-material .pm-prompt-input{border-radius:4px;padding:12px;border-color:#0000006b}.theme-material .pm-prompt-input:focus{border-color:var(--theme-primary, #6200ee)}.theme-windows .pm-dialog{border-radius:0;box-shadow:0 4px 8px #0003}.theme-windows .pm-dialog-title{font-family:Segoe UI,sans-serif;font-size:20px;font-weight:300}.theme-windows .pm-dialog-content{font-family:Segoe UI,sans-serif}.theme-windows .pm-dialog-footer{padding:12px}.theme-windows .pm-dialog-btn{text-transform:none;min-height:32px;padding:4px 16px;border-radius:0}.theme-windows .pm-prompt-input{border-radius:0;padding:8px 12px}.theme-dark .pm-dialog{background-color:var(--theme-surface-dark, #333);color:var(--theme-textPrimary-dark, #fff)}.theme-dark .pm-dialog-title{color:var(--theme-textPrimary-dark, #fff)}.theme-dark .pm-dialog-content{color:var(--theme-textPrimary-dark, rgba(255, 255, 255, .87))}.theme-dark .pm-prompt-label{color:var(--theme-textSecondary-dark, rgba(255, 255, 255, .7))}.theme-dark .pm-prompt-input{background-color:var(--theme-input-background-dark, #444);border-color:var(--theme-borderColor-dark, #555);color:var(--theme-textPrimary-dark, #fff)}.theme-dark .pm-prompt-input:focus{border-color:var(--theme-primary-dark, #64b5f6)}.theme-dark .pm-btn-outlined:hover,.theme-dark .pm-btn-text:hover{background-color:#ffffff1a}.theme-ios.theme-dark .pm-dialog-footer{border-top-color:var(--theme-divider-dark, rgba(255, 255, 255, .15))}.theme-ios.theme-dark .pm-dialog-btn{border-bottom-color:var(--theme-divider-dark, rgba(255, 255, 255, .15))}.theme-material.theme-dark .pm-prompt-input{border-color:#ffffff4d}.theme-material.theme-dark .pm-prompt-input:focus{border-color:var(--theme-primary-dark, #bb86fc)}@media(max-width:600px){.pm-dialog{margin:16px;max-width:calc(100% - 32px)}}.prompt-2025-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeInOverlay .25s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.prompt-2025{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:440px;background:#fff;border-radius:16px;padding:28px 24px 24px;box-shadow:0 24px 48px #0000001f,0 12px 24px #00000014,0 0 1px #0000001a;z-index:10000}@media(prefers-color-scheme:dark){.prompt-2025{background:#2d2d2d;box-shadow:0 24px 48px #0006,0 12px 24px #0000004d}}.prompt-2025__content{margin-bottom:24px}.prompt-2025__title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 8px;line-height:1.3}.prompt-2025__message{font-size:14px;font-weight:400;color:#6b7280;line-height:1.5;margin:0}@media(prefers-color-scheme:dark){.prompt-2025__title{color:#f9fafb}.prompt-2025__message{color:#d1d5db}}.prompt-2025__input-wrapper{position:relative;margin-bottom:8px}.prompt-2025__input{width:100%;padding:14px 40px 14px 16px;font-size:16px;font-family:inherit;color:#1f2937;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.prompt-2025__input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.prompt-2025__input::placeholder{color:transparent}.prompt-2025__label{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#9ca3af;pointer-events:none;transition:all .2s cubic-bezier(.4,0,.2,1);background:transparent;padding:0 4px}.prompt-2025__required{color:#ef4444;margin-left:2px}.prompt-2025__input:focus~.prompt-2025__label,.prompt-2025__input:not(:placeholder-shown)~.prompt-2025__label{top:0;transform:translateY(-50%);font-size:12px;font-weight:500;color:#3b82f6;background:#fff}.prompt-2025__input-wrapper--valid .prompt-2025__input{border-color:#10b981;background:#f0fdf4}.prompt-2025__input-wrapper--valid .prompt-2025__input:focus{box-shadow:0 0 0 3px #10b9811a}.prompt-2025__input-wrapper--valid .prompt-2025__label{color:#10b981}.prompt-2025__input-wrapper--error .prompt-2025__input{border-color:#ef4444;background:#fef2f2}.prompt-2025__input-wrapper--error .prompt-2025__input:focus{box-shadow:0 0 0 3px #ef44441a}.prompt-2025__input-wrapper--error .prompt-2025__label{color:#ef4444}.prompt-2025__check-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#10b981;display:flex;align-items:center;animation:checkBounce .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes checkBounce{0%{transform:translateY(-50%) scale(0);opacity:0}50%{transform:translateY(-50%) scale(1.2)}to{transform:translateY(-50%) scale(1);opacity:1}}@media(prefers-color-scheme:dark){.prompt-2025__input{color:#f9fafb;background:#374151;border-color:#4b5563}.prompt-2025__input:focus{background:#1f2937;border-color:#3b82f6}.prompt-2025__label{color:#9ca3af}.prompt-2025__input:focus~.prompt-2025__label,.prompt-2025__input:not(:placeholder-shown)~.prompt-2025__label{background:#2d2d2d}.prompt-2025__input-wrapper--valid .prompt-2025__input{background:#064e3b;border-color:#10b981}.prompt-2025__input-wrapper--error .prompt-2025__input{background:#7f1d1d;border-color:#ef4444}}.prompt-2025__error{font-size:13px;color:#ef4444;margin-top:8px;margin-bottom:8px;display:flex;align-items:center;gap:6px}.prompt-2025__error:before{content:"⚠";font-size:14px}.prompt-2025__char-counter{font-size:12px;color:#9ca3af;text-align:right;margin-bottom:20px}.prompt-2025__char-counter--limit{color:#ef4444;font-weight:600}@media(prefers-color-scheme:dark){.prompt-2025__char-counter{color:#6b7280}}.prompt-2025__footer{display:flex;gap:12px;justify-content:flex-end}.prompt-2025__btn{padding:11px 24px;font-size:15px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;white-space:nowrap}.prompt-2025__btn:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}.prompt-2025__btn--cancel{background:transparent;color:#6b7280;border:1.5px solid #d1d5db}.prompt-2025__btn--cancel:hover{background:#f3f4f6;border-color:#9ca3af}@media(prefers-color-scheme:dark){.prompt-2025__btn--cancel{color:#d1d5db;border-color:#4b5563}.prompt-2025__btn--cancel:hover{background:#374151;border-color:#6b7280}}.prompt-2025__btn--submit{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.prompt-2025__btn--submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.prompt-2025__btn--submit:disabled{opacity:.5;cursor:not-allowed}.prompt-2025__btn--submit:active:not(:disabled){transform:scale(.98)}.prompt-2025__btn--submit.prompt-2025--success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.prompt-2025__btn--submit.prompt-2025--success:hover:not(:disabled){box-shadow:0 8px 20px #10b98166}.prompt-2025__btn--submit.prompt-2025--warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b4d}.prompt-2025__btn--submit.prompt-2025--warning:hover:not(:disabled){box-shadow:0 8px 20px #f59e0b66}.prompt-2025__btn--submit.prompt-2025--error{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d}.prompt-2025__btn--submit.prompt-2025--error:hover:not(:disabled){box-shadow:0 8px 20px #ef444466}@media(max-width:768px){.prompt-2025{max-width:calc(100vw - 48px);padding:24px 20px 20px}}.prompt-2025{max-width:calc(100vw - 32px);padding:20px 18px 18px;border-radius:20px}.prompt-2025__title{font-size:18px}.prompt-2025__message{font-size:13px}.prompt-2025__input{padding:12px 38px 12px 14px}.prompt-2025__footer{flex-direction:column-reverse;gap:10px}.prompt-2025__btn{width:100%;min-height:48px;justify-content:center}@media(max-width:375px){.prompt-2025{max-width:calc(100vw - 24px);padding:18px 16px 16px}.prompt-2025__title{font-size:17px}}@supports (padding: max(0px)){.prompt-2025{padding-bottom:max(24px,env(safe-area-inset-bottom))}}@media(hover:none)and (pointer:coarse){.prompt-2025__btn{min-height:48px;min-width:48px}.prompt-2025__input{min-height:48px}}@media(prefers-reduced-motion:reduce){.prompt-2025,.prompt-2025__check-icon,.prompt-2025-overlay{animation:none!important;transition:none!important}.prompt-2025__btn,.prompt-2025__input{transition:none!important}}}

/* Layout / denser surfaces */

.command-palette-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding:20vh 20px 20px;animation:command-palette-overlay-fade-in .2s ease}

@keyframes command-palette-overlay-fade-in{0%{opacity:0}to{opacity:1}}

.command-palette{width:100%;max-width:640px;background:#fff;border-radius:12px;box-shadow:0 0 0 1px #0000000d,0 10px 15px -3px #0000001a,0 20px 40px -10px #0003;display:flex;flex-direction:column;max-height:70vh;animation:command-palette-slide-up .3s cubic-bezier(.16,1,.3,1);overflow:hidden}

@keyframes command-palette-slide-up{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}

.command-palette-header{display:flex;align-items:center;gap:12px;padding:20px 20px 16px;border-bottom:1px solid #f1f5f9;flex-shrink:0}

.command-palette-header svg{color:#94a3b8;flex-shrink:0}

.command-palette-input{flex:1;border:none;outline:none;font-size:16px;font-weight:500;color:#0f172a;background:transparent;font-family:inherit}

.command-palette-input::placeholder{color:#94a3b8;font-weight:400}

.command-palette-hint{background:#f1f5f9;color:#64748b;font-size:11px;font-weight:600;padding:3px 7px;border-radius:4px;border:1px solid #e2e8f0;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace;flex-shrink:0}

.command-palette-results{flex:1;overflow-y:auto;padding:8px;min-height:200px;max-height:400px}

.command-palette-results::-webkit-scrollbar{width:8px}

.command-palette-results::-webkit-scrollbar-track{background:transparent}

.command-palette-results::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}

.command-palette-results::-webkit-scrollbar-thumb:hover{background:#94a3b8}

.command-palette-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;border:none;background:transparent;color:#0f172a;cursor:pointer;transition:all .15s ease;width:100%;text-align:left;font-family:inherit;position:relative}

.command-palette-item:hover{background:#f8fafc}

.command-palette-item.selected{background:#6366f1;color:#fff}

.command-palette-item.selected .command-palette-description,.command-palette-item.selected .command-palette-category{color:#fffc}

.command-palette-item.selected .command-palette-shortcut{background:#ffffff26;color:#fff;border-color:#fff3}

.command-palette-icon{font-size:18px;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}

.command-palette-content{flex:1;min-width:0}

.command-palette-label{font-size:14px;font-weight:500;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.command-palette-description{font-size:12px;color:#64748b;line-height:1.4;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.command-palette-shortcut{background:#f1f5f9;color:#64748b;font-size:11px;font-weight:600;padding:3px 7px;border-radius:4px;border:1px solid #e2e8f0;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace;flex-shrink:0}

.command-palette-category{background:#f1f5f9;color:#64748b;font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;flex-shrink:0}

.command-palette-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#94a3b8;text-align:center}

.command-palette-empty span:first-child{font-size:48px;margin-bottom:12px;opacity:.5}

.command-palette-empty p{font-size:16px;font-weight:600;color:#64748b;margin:0 0 4px}

.command-palette-empty-hint{font-size:13px;color:#94a3b8}

.command-palette-footer{flex-shrink:0;padding:12px 20px;border-top:1px solid #f1f5f9;background:#f8fafc}

.command-palette-footer-hints{display:flex;gap:16px;font-size:12px;color:#64748b;align-items:center}

.command-palette-footer-hints span{display:flex;align-items:center;gap:4px}

.command-palette-footer-hints kbd{background:#fff;color:#475569;font-size:11px;font-weight:600;padding:3px 6px;border-radius:3px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace;min-width:20px;text-align:center}

@media(prefers-color-scheme:dark){.command-palette{background:#1e293b;box-shadow:0 0 0 1px #ffffff0d,0 10px 15px -3px #0000004d,0 20px 40px -10px #0006}.command-palette-header{border-bottom-color:#334155}.command-palette-input{color:#f1f5f9}.command-palette-input::placeholder{color:#64748b}.command-palette-hint{background:#334155;color:#94a3b8;border-color:#475569}.command-palette-item{color:#f1f5f9}.command-palette-item:hover{background:#334155}.command-palette-description{color:#94a3b8}.command-palette-shortcut,.command-palette-category{background:#334155;color:#94a3b8;border-color:#475569}.command-palette-footer{border-top-color:#334155;background:#0f172a}.command-palette-footer-hints kbd{background:#334155;color:#cbd5e1;border-color:#475569}}

@media(max-width:640px){.command-palette-overlay{padding:10vh 12px 12px}.command-palette{max-height:80vh;border-radius:10px}.command-palette-header{padding:16px 16px 12px;gap:10px}.command-palette-input{font-size:15px}.command-palette-results{padding:6px}.command-palette-item{padding:10px 12px;gap:10px}.command-palette-label{font-size:13px}.command-palette-description{font-size:11px}.command-palette-footer{padding:10px 16px}.command-palette-footer-hints{gap:12px;font-size:11px}}

@media(prefers-reduced-motion:reduce){.command-palette-overlay,.command-palette,.command-palette-item{animation:none;transition:none}}

.keyboard-help-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(3px);z-index:9998;display:flex;align-items:center;justify-content:center;padding:20px;animation:keyboard-help-overlay-fade-in .2s ease}

@keyframes keyboard-help-overlay-fade-in{0%{opacity:0}to{opacity:1}}

.keyboard-help-modal{width:100%;max-width:720px;max-height:85vh;background:#fff;border-radius:16px;box-shadow:0 0 0 1px #0000000d,0 20px 25px -5px #0000001a,0 25px 50px -12px #00000040;display:flex;flex-direction:column;animation:keyboard-help-modal-slide-up .3s cubic-bezier(.16,1,.3,1);overflow:hidden}

@keyframes keyboard-help-modal-slide-up{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}

.keyboard-help-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid #f1f5f9;flex-shrink:0}

.keyboard-help-title{display:flex;align-items:center;gap:12px;margin:0;font-size:20px;font-weight:700;color:#0f172a}

.keyboard-help-icon{font-size:24px}

.keyboard-help-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:20px;cursor:pointer;transition:all .2s}

.keyboard-help-close:hover{background:#f1f5f9;color:#0f172a}

.keyboard-help-content{flex:1;overflow-y:auto;padding:20px 28px}

.keyboard-help-content::-webkit-scrollbar{width:10px}

.keyboard-help-content::-webkit-scrollbar-track{background:#f8fafc}

.keyboard-help-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px;border:2px solid #f8fafc}

.keyboard-help-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}

.keyboard-help-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#94a3b8;text-align:center}

.keyboard-help-empty span:first-child{font-size:64px;margin-bottom:16px;opacity:.5}

.keyboard-help-empty p{font-size:16px;font-weight:600;color:#64748b;margin:0}

.keyboard-help-category{margin-bottom:32px}

.keyboard-help-category:last-child{margin-bottom:0}

.keyboard-help-category-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#475569;margin:0 0 16px}

.keyboard-help-category-icon{font-size:18px}

.keyboard-help-shortcuts{display:flex;flex-direction:column;gap:8px}

.keyboard-help-shortcut{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:#f8fafc;border-radius:8px;transition:background .2s}

.keyboard-help-shortcut:hover{background:#f1f5f9}

.keyboard-help-shortcut-label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:#0f172a}

.keyboard-help-shortcut-icon{font-size:16px}

.keyboard-help-shortcut-keys{background:#fff;color:#475569;font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace;white-space:nowrap;flex-shrink:0}

.keyboard-help-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-top:1px solid #f1f5f9;background:#f8fafc;flex-shrink:0}

.keyboard-help-footer-tip{display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b}

.keyboard-help-footer-tip strong{font-weight:600;color:#475569}

.keyboard-help-footer-tip kbd{background:#fff;color:#475569;font-size:12px;font-weight:600;padding:3px 8px;border-radius:4px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,monospace}

.keyboard-help-footer-button{background:#6366f1;color:#fff;font-size:14px;font-weight:600;padding:10px 24px;border:none;border-radius:8px;cursor:pointer;transition:all .2s;font-family:inherit}

.keyboard-help-footer-button:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}

.keyboard-help-footer-button:active{transform:translateY(0)}

@media(prefers-color-scheme:dark){.keyboard-help-modal{background:#1e293b;box-shadow:0 0 0 1px #ffffff0d,0 20px 25px -5px #0000004d,0 25px 50px -12px #00000080}.keyboard-help-header{border-bottom-color:#334155}.keyboard-help-title{color:#f1f5f9}.keyboard-help-close{color:#94a3b8}.keyboard-help-close:hover{background:#334155;color:#f1f5f9}.keyboard-help-content::-webkit-scrollbar-track{background:#0f172a}.keyboard-help-content::-webkit-scrollbar-thumb{background:#475569;border-color:#0f172a}.keyboard-help-category-title{color:#cbd5e1}.keyboard-help-shortcut{background:#0f172a}.keyboard-help-shortcut:hover{background:#334155}.keyboard-help-shortcut-label{color:#f1f5f9}.keyboard-help-shortcut-keys{background:#334155;color:#cbd5e1;border-color:#475569}.keyboard-help-footer{border-top-color:#334155;background:#0f172a}.keyboard-help-footer-tip{color:#94a3b8}.keyboard-help-footer-tip strong{color:#cbd5e1}.keyboard-help-footer-tip kbd{background:#334155;color:#cbd5e1;border-color:#475569}}

@media(max-width:768px){.keyboard-help-overlay{padding:12px}.keyboard-help-modal{max-height:90vh;border-radius:12px}.keyboard-help-header{padding:20px}.keyboard-help-title{font-size:18px;gap:10px}.keyboard-help-icon{font-size:22px}.keyboard-help-content{padding:16px 20px}.keyboard-help-category{margin-bottom:24px}.keyboard-help-category-title{font-size:13px}.keyboard-help-shortcuts{gap:6px}.keyboard-help-shortcut{padding:10px 12px;flex-direction:column;align-items:flex-start;gap:8px}.keyboard-help-shortcut-label{font-size:13px}.keyboard-help-shortcut-keys{font-size:11px;padding:5px 10px}.keyboard-help-footer{flex-direction:column;align-items:stretch;gap:12px;padding:16px 20px}.keyboard-help-footer-tip{font-size:12px;justify-content:center}.keyboard-help-footer-button{width:100%}}

@media(prefers-reduced-motion:reduce){.keyboard-help-overlay,.keyboard-help-modal,.keyboard-help-close,.keyboard-help-shortcut,.keyboard-help-footer-button{animation:none;transition:none}}

:root{--portal-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--portal-text-xs: 12px;--portal-text-sm: 14px;--portal-text-base: 16px;--portal-text-lg: 18px;--portal-text-xl: 20px;--portal-text-2xl: 24px;--portal-text-3xl: 28px;--portal-font-normal: 400;--portal-font-medium: 500;--portal-font-semibold: 600;--portal-font-bold: 700;--portal-layout-bg: #f8fafc;--portal-card-bg: #ffffff;--portal-border: #e5e7eb;--portal-border-radius: 10px;--portal-border-radius-sm: 6px;--portal-border-radius-lg: 12px;--portal-border-radius-xl: 16px;--portal-text-primary: #111827;--portal-text-secondary: #6b7280;--portal-text-muted: #9ca3af;--portal-badge-vip: #7c3aed;--portal-badge-vip-bg: #ede9fe;--portal-badge-new: #059669;--portal-badge-new-bg: #d1fae5;--portal-badge-risk: #dc2626;--portal-badge-risk-bg: #fee2e2;--portal-badge-primary: #2563eb;--portal-badge-primary-bg: #dbeafe;--portal-badge-success: #10b981;--portal-badge-success-bg: #d1fae5;--portal-badge-warning: #f59e0b;--portal-badge-warning-bg: #fef3c7;--portal-badge-danger: #ef4444;--portal-badge-danger-bg: #fee2e2;--portal-badge-info: #3b82f6;--portal-badge-info-bg: #dbeafe;--portal-badge-neutral: #6b7280;--portal-badge-neutral-bg: #f3f4f6;--portal-body-padding: 24px;--portal-header-padding: 20px 24px;--portal-toolbar-padding: 16px 24px;--portal-gap-xs: 8px;--portal-gap-sm: 12px;--portal-gap-md: 16px;--portal-gap-lg: 24px;--portal-gap-xl: 32px}

.portal-page-layout{min-height:100vh;background:var(--portal-layout-bg);overflow-y:auto;overflow-x:hidden;font-family:var(--portal-font-family);font-size:var(--portal-text-sm);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

.portal-page-layout::-webkit-scrollbar{width:12px}

.portal-page-layout::-webkit-scrollbar-track{background:#f1f5f9;border-radius:6px}

.portal-page-layout::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:6px;border:2px solid #f1f5f9}

.portal-page-layout::-webkit-scrollbar-thumb:hover{background:#94a3b8}

.portal-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}

.portal-loading-spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:portal-spin .8s linear infinite}

@keyframes portal-spin{to{transform:rotate(360deg)}}

.portal-loading-container p{font-size:14px;color:var(--portal-text-secondary);margin:0}

.portal-page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--portal-header-padding);border-bottom:1px solid var(--portal-border);gap:20px;background:#fff;flex-wrap:nowrap}

.portal-header-left{display:flex;align-items:center;gap:20px;flex:1 1 auto;min-width:0}

.portal-header-title-group{flex-shrink:0;display:flex;flex-direction:column;gap:10px;max-width:none}

.portal-page-title{font-size:28px;font-weight:700;color:var(--portal-text-primary);margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}

.portal-page-subtitle{font-size:14px;font-weight:500;color:var(--portal-text-secondary);margin:0;line-height:1.4}

.portal-header-metrics{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex-shrink:0}

.portal-header-metrics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;width:100%;max-width:100%}

.portal-header-metrics .pm-badge{font-size:13px;font-weight:600;padding:6px 12px;box-shadow:0 1px 3px #00000014;white-space:nowrap}

.portal-metric-badge-clickable{transition:all .2s ease}

.portal-metric-badge-new{color:var(--portal-badge-new);background:var(--portal-badge-new-bg)}

.portal-metric-badge-risk{color:var(--portal-badge-risk);background:var(--portal-badge-risk-bg)}

.portal-metric-badge-primary{color:var(--portal-badge-primary);background:var(--portal-badge-primary-bg)}

.portal-metric-badge-success{color:var(--portal-badge-success);background:var(--portal-badge-success-bg)}

.portal-metric-badge-warning{color:var(--portal-badge-warning);background:var(--portal-badge-warning-bg)}

.portal-metric-badge-danger{color:var(--portal-badge-danger);background:var(--portal-badge-danger-bg)}

.portal-metric-badge-info{color:var(--portal-badge-info);background:var(--portal-badge-info-bg)}

.portal-metric-badge-neutral{color:var(--portal-badge-neutral);background:var(--portal-badge-neutral-bg)}

.portal-header-right{display:flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto;justify-content:flex-end}

.portal-header-right .pm-button,.portal-header-actions-inline .pm-button{font-size:14px;font-weight:500;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1)}

.portal-header-right .pm-button.pm-button-small,.portal-header-actions-inline .pm-button.pm-button-small{padding:6px 12px;font-size:13px;min-height:32px}

.portal-button-icon{font-size:16px;margin-right:6px}

.portal-unified-toolbar{display:flex;align-items:center;gap:10px;padding:var(--portal-toolbar-padding);background:#fff;border-bottom:1px solid var(--portal-border)}

.portal-toolbar-search{flex:0 0 240px;width:240px;position:relative}

.portal-search-results-count{position:absolute;top:100%;left:0;margin-top:6px;font-size:12px;color:var(--portal-text-secondary);font-weight:500}

.portal-toolbar-right{display:flex;align-items:center;gap:8px;flex:1 1 auto;justify-content:flex-end;min-width:0}

.portal-filter-chips{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}

.portal-filter-chip{display:inline-flex;align-items:center;gap:3px;padding:5px 8px;background:var(--portal-badge-neutral-bg);border:1px solid var(--portal-border);border-radius:var(--portal-border-radius-sm);font-size:12px;font-weight:500;color:var(--portal-text-primary);cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}

.portal-filter-chip:hover{background:#e5e7eb;border-color:#d1d5db}

.portal-filter-chip.active{background:#6366f1;border-color:#6366f1;color:#fff}

.portal-chip-icon{font-size:13px;line-height:1}

.portal-chip-label{line-height:1}

.portal-chip-count{padding:1px 4px;background:#0000001a;border-radius:8px;font-size:10px;font-weight:600;line-height:1}

.portal-filter-chip.active .portal-chip-count{background:#ffffff40}

.portal-view-toggle{display:flex;align-items:center;gap:1px;background:var(--portal-badge-neutral-bg);border-radius:6px;padding:2px;flex-shrink:0}

.portal-view-btn{padding:5px 8px;background:transparent;border:none;border-radius:4px;font-size:15px;cursor:pointer;transition:all .2s;color:var(--portal-text-secondary);display:flex;align-items:center;justify-content:center}

.portal-view-btn:hover{background:#0000000d;color:var(--portal-text-primary)}

.portal-view-btn.active{background:#fff;color:#6366f1;box-shadow:0 1px 3px #0000001a}

.portal-count-text{font-size:12px;color:var(--portal-text-secondary);font-weight:500;padding:5px 8px;background:var(--portal-badge-neutral-bg);border-radius:5px;white-space:nowrap;flex-shrink:0}

.portal-page-body{padding:var(--portal-body-padding);background:var(--portal-layout-bg)}

@media(max-width:900px){.portal-page-header{flex-wrap:wrap;padding:16px}.portal-header-left{flex-wrap:wrap;gap:12px}.portal-page-title{font-size:24px}.portal-unified-toolbar{flex-wrap:wrap;padding:12px 16px}.portal-toolbar-search{flex:1 1 100%;max-width:100%}.portal-toolbar-right{flex:1 1 100%;justify-content:space-between}.portal-filter-chips{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}}

@media(max-width:768px){.portal-page-header{padding:12px}.portal-header-main-row{flex-direction:column;align-items:stretch;gap:16px}.portal-header-left{flex-direction:column;align-items:flex-start;gap:12px}.portal-header-title-group{max-width:100%}.portal-page-title{font-size:22px;white-space:normal}.portal-header-metrics{width:100%;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px}.portal-header-right{width:100%;justify-content:flex-end;margin-left:0}.portal-unified-toolbar{padding:10px 12px;gap:12px}.portal-toolbar-right{gap:10px}.portal-filter-chips{gap:6px}.portal-filter-chip{font-size:12px;padding:5px 10px}.portal-view-toggle{padding:3px}.portal-view-btn{padding:5px 8px;font-size:14px}.portal-page-body{padding:16px 12px}}

@media(max-width:480px){.portal-page-title{font-size:18px}.portal-metric-badge{font-size:12px;padding:5px 10px}.portal-header-right{flex-direction:column;gap:8px}.portal-count-text{font-size:12px;padding:5px 10px}}

.portal-header-metrics .pm-badge{font-size:13px;font-weight:600;box-shadow:0 1px 3px #00000014;transition:all .2s ease}

.portal-metric-badge-clickable{cursor:pointer}

.portal-metric-badge-clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f!important}

.portal-filter-chips .pm-badge{font-size:14px;padding:9px 16px;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;font-weight:500}

.portal-filter-chips .pm-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f!important}

.portal-header-right .pm-button{white-space:nowrap;font-weight:500;transition:all .2s ease;box-shadow:0 1px 3px #00000014}

.portal-header-right .pm-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026!important}

@media(max-width:768px){.portal-header-metrics .pm-badge{font-size:12px;padding:6px 12px}.portal-filter-chips .pm-badge{font-size:13px;padding:7px 14px}.portal-header-right .pm-button{font-size:13px}}

@media(max-width:480px){.portal-header-metrics .pm-badge{font-size:11px;padding:5px 10px}.portal-button-fullwidth .pm-button{flex:1;justify-content:center;min-width:auto!important}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.portal-loading-spinner{animation:none;border-top-color:transparent;border-right-color:#6366f1}}

.portal-page-layout.portal-density-compact{--portal-body-padding: 12px;--portal-header-padding: 12px 16px;--portal-toolbar-padding: 12px 16px;--portal-gap-xs: 6px;--portal-gap-sm: 8px;--portal-gap-md: 12px;--portal-gap-lg: 16px}

.portal-page-layout.portal-density-compact .portal-page-title{font-size:24px}

.portal-page-layout.portal-density-compact .portal-page-subtitle{font-size:13px}

.portal-page-layout.portal-density-compact .portal-header-metrics{gap:8px}

.portal-page-layout.portal-density-compact .portal-filter-chips{gap:6px}

.portal-page-layout.portal-density-comfortable{--portal-body-padding: 24px;--portal-header-padding: 20px 24px;--portal-toolbar-padding: 16px 24px}

.portal-page-layout.portal-density-spacious{--portal-body-padding: 32px;--portal-header-padding: 24px 32px;--portal-toolbar-padding: 20px 32px;--portal-gap-xs: 10px;--portal-gap-sm: 14px;--portal-gap-md: 20px;--portal-gap-lg: 28px}

.portal-page-layout.portal-density-spacious .portal-page-title{font-size:32px}

.portal-page-layout.portal-density-spacious .portal-page-subtitle{font-size:15px;margin-top:6px}

.portal-page-layout.portal-density-spacious .portal-header-metrics{gap:12px}

.portal-page-layout.portal-density-spacious .portal-filter-chips{gap:10px}

.portal-density-toggle{display:inline-flex;align-items:center;gap:2px;background:var(--portal-badge-neutral-bg);border:1px solid var(--portal-border);border-radius:var(--portal-border-radius-sm);padding:2px;margin-right:12px}

.portal-density-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--portal-text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:14px}

.portal-density-btn:hover{background:#0000000d;color:var(--portal-text-primary)}

.portal-density-btn.active{background:#6366f1;color:#fff;box-shadow:0 1px 3px #6366f14d}

.portal-density-btn:active{transform:scale(.95)}

.portal-density-btn svg{width:16px;height:16px}

@media(max-width:768px){.portal-density-toggle{display:none}}

.portal-bulk-action-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-bottom:1px solid rgba(255,255,255,.2);animation:portal-bulk-slide-down .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:50}

@keyframes portal-bulk-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}

.portal-bulk-info{display:flex;align-items:center;gap:12px}

.portal-bulk-checkbox{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#fff3;border:2px solid rgba(255,255,255,.5);border-radius:4px;color:#fff;font-size:16px;cursor:pointer;transition:all .2s;padding:0}

.portal-bulk-checkbox:hover{background:#ffffff4d;border-color:#fff}

.portal-bulk-count{font-size:14px;font-weight:500;color:#fff}

.portal-bulk-count strong{font-weight:700;font-size:16px}

.portal-bulk-actions{display:flex;align-items:center;gap:8px}

.portal-bulk-actions .pm-button{background:#fffffff2!important;color:#6366f1!important;border-color:transparent!important;font-weight:600!important}

.portal-bulk-actions .pm-button:hover{background:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #0003!important}

.portal-bulk-actions .pm-button.pm-button-danger{background:#ef4444f2!important;color:#fff!important}

.portal-bulk-actions .pm-button.pm-button-danger:hover{background:#dc2626!important}

.portal-bulk-clear{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;font-size:16px;cursor:pointer;transition:all .2s;padding:0;margin-left:8px}

.portal-bulk-clear:hover{background:#fff3;border-color:#ffffff80;transform:scale(1.1)}

.portal-bulk-clear:active{transform:scale(.95)}

@media(max-width:768px){.portal-bulk-action-bar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.portal-bulk-info{justify-content:center}.portal-bulk-actions{flex-wrap:wrap;justify-content:center}.portal-bulk-actions .pm-button{flex:1;min-width:calc(50% - 4px)}.portal-bulk-clear{position:absolute;top:12px;right:12px}}

.portal-header-right .pm-button,.portal-header-actions-inline .pm-button{border-radius:10px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 1px 3px #00000014,0 0 0 1px #00000005!important;position:relative;overflow:hidden}

.portal-header-right .pm-button:not(.pm-button-disabled):hover,.portal-header-actions-inline .pm-button:not(.pm-button-disabled):hover{transform:translateY(-2px)!important;box-shadow:0 8px 20px #0000001f,0 0 0 1px #0000000a!important}

.portal-header-right .pm-button:not(.pm-button-disabled):active,.portal-header-actions-inline .pm-button:not(.pm-button-disabled):active{transform:translateY(-1px) scale(.98)!important;box-shadow:0 4px 12px #0000001a,0 0 0 1px #00000008!important}

.portal-header-right .pm-button:before,.portal-header-actions-inline .pm-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none;z-index:0}

.portal-header-right .pm-button:active:before,.portal-header-actions-inline .pm-button:active:before{width:300px;height:300px}

.portal-button-style-glass{background:#fffc!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 32px #1f268726,inset 0 1px #fff6!important;color:#1f2937!important;font-weight:600!important}

.portal-button-style-glass:hover{background:#fffffff2!important;transform:translateY(-2px) scale(1.02)!important;box-shadow:0 12px 40px #1f268740,inset 0 1px #ffffff80!important}

.portal-button-style-glass:active{transform:translateY(-1px) scale(1)!important;box-shadow:0 4px 16px #1f268733,inset 0 2px 4px #0000001a!important}

.portal-button-style-gradient{background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;border:none!important;color:#fff!important;font-weight:600!important;box-shadow:0 4px 12px #6366f14d,0 2px 4px #6366f133!important;position:relative}

.portal-button-style-gradient:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#7c3aed,#a855f7);opacity:0;transition:opacity .3s ease;border-radius:inherit;pointer-events:none}

.portal-button-style-gradient:hover:after{opacity:1}

.portal-button-style-gradient:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 8px 24px #6366f166,0 4px 8px #6366f14d!important}

.portal-button-style-gradient:active{transform:translateY(0) scale(.98)!important;box-shadow:0 2px 8px #6366f14d,0 1px 4px #6366f133!important}

.portal-header-right .pm-button.loading,.portal-header-actions-inline .pm-button.loading{pointer-events:none;opacity:.7}

.portal-header-right .pm-button.loading:after,.portal-header-actions-inline .pm-button.loading:after{content:"";position:absolute;top:50%;right:12px;width:14px;height:14px;margin-top:-7px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:portal-button-spin .6s linear infinite;z-index:1}

@keyframes portal-button-spin{to{transform:rotate(360deg)}}

.portal-header-right .pm-button.success,.portal-header-actions-inline .pm-button.success{background:#10b981!important;color:#fff!important;pointer-events:none}

.portal-header-right .pm-button.success:after,.portal-header-actions-inline .pm-button.success:after{content:"✓";position:absolute;top:50%;right:12px;margin-top:-10px;font-size:18px;animation:portal-button-checkmark .4s ease-out;z-index:1}

@keyframes portal-button-checkmark{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}

.portal-button-align-left{justify-content:flex-start!important;margin-left:0!important}

.portal-button-align-center{justify-content:center!important;margin:0 auto!important}

.portal-button-align-right{justify-content:flex-end!important;margin-left:auto!important}

.portal-button-style-borderless.pm-button{background:transparent!important;border:none!important;box-shadow:none!important;padding:6px 10px!important;min-width:auto!important;font-size:13px!important}

.portal-button-style-borderless.pm-button:hover{background:#6366f114!important;transform:none!important}

.portal-button-style-borderless.pm-button:active{background:#6366f11f!important}

.portal-button-style-borderless.pm-button .pm-button-text{color:#475569!important;font-weight:500!important}

.portal-button-style-borderless.pm-button:hover .pm-button-text{color:#6366f1!important}

.portal-button-style-borderless.pm-button .pm-button-start-icon{font-size:16px!important;margin-right:4px!important}

.portal-button-style-borderless.pm-button-primary{background:transparent!important}

.portal-button-style-borderless.pm-button-primary .pm-button-text{color:#6366f1!important;font-weight:600!important}

.portal-button-style-borderless.pm-button-primary:hover{background:#6366f11a!important}

.portal-button-style-borderless.pm-button-primary:hover .pm-button-text{color:#4f46e5!important}

.portal-button-fullwidth{width:100%;display:flex;gap:12px}

.portal-button-fullwidth .pm-button{flex:1;justify-content:center;min-width:auto}

@media(max-width:480px){.portal-button-fullwidth .pm-button{min-height:48px!important}}

.portal-header-top-row{display:flex;align-items:center;justify-content:space-between;padding:12px 24px 0;gap:16px}

.portal-breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}

.portal-breadcrumb-item{color:var(--portal-text-secondary);transition:color .2s}

.portal-breadcrumb-link{background:none;border:none;padding:0;cursor:pointer;color:var(--portal-text-secondary);transition:color .2s}

.portal-breadcrumb-link:hover{color:#6366f1}

.portal-breadcrumb-current{color:var(--portal-text-primary);font-weight:500}

.portal-breadcrumb-separator{color:var(--portal-text-muted);margin:0 4px}

.portal-breadcrumb-icon{margin-right:4px}

.portal-mobile-controls{display:flex;align-items:center;gap:12px}

.portal-mobile-menu-btn,.portal-back-btn{display:none;padding:8px 12px;background:none;border:1px solid var(--portal-border);border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s;color:var(--portal-text-primary)}

.portal-mobile-menu-btn:hover,.portal-back-btn:hover{background:#f3f4f6;border-color:#d1d5db}

@media(max-width:768px){.portal-mobile-menu-btn,.portal-back-btn{display:inline-flex;align-items:center;gap:4px}}

.portal-header-main-row{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}

.portal-title-with-icon{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}

.portal-title-icon{font-size:32px;line-height:1}

.portal-title-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-left:8px}

.portal-title-badge-primary{background:#dbeafe;color:#2563eb}

.portal-title-badge-success{background:#d1fae5;color:#059669}

.portal-title-badge-warning{background:#fef3c7;color:#f59e0b}

.portal-title-badge-danger{background:#fee2e2;color:#dc2626}

.portal-title-badge-info{background:#dbeafe;color:#3b82f6}

.portal-header-inline{flex-direction:row;align-items:center;gap:16px}

.portal-header-actions-inline{display:flex;align-items:center;gap:12px;margin-left:auto}

.portal-actions-left{order:-1;margin-right:auto;margin-left:0}

.portal-variant-compact .portal-page-header{padding:16px 24px}

.portal-variant-compact .portal-page-title{font-size:24px}

.portal-variant-minimal .portal-page-header{padding:12px 24px;border-bottom:none}

.portal-variant-minimal .portal-page-title{font-size:20px}

.portal-variant-dashboard .portal-page-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:none}

.portal-variant-dashboard .portal-page-title,.portal-variant-dashboard .portal-page-subtitle,.portal-variant-dashboard .portal-breadcrumb-item{color:#fff}

.portal-size-sm .portal-page-title{font-size:20px}

.portal-size-sm .portal-page-header{padding:12px 20px}

.portal-size-md .portal-page-title{font-size:28px}

.portal-size-lg .portal-page-title{font-size:36px}

.portal-size-lg .portal-page-header{padding:24px 32px}

.portal-sticky .portal-page-header{position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #00000014}

@media(max-width:768px){.portal-hide-on-mobile .portal-page-header{display:none}}

@media(max-width:768px){.portal-header-top-row{flex-direction:column;align-items:flex-start;gap:12px}.portal-breadcrumbs{width:100%}.portal-title-icon{font-size:24px}.portal-header-actions-inline{flex-wrap:wrap}}

.mobile-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #667eea66;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;-webkit-tap-highlight-color:transparent}

.mobile-fab:hover{transform:scale(1.05);box-shadow:0 6px 16px #667eea80}

.mobile-fab:active{transform:scale(.95)}

@media(min-width:769px){.mobile-fab{display:none}}

.touch-card,.mobile-card-list>*{min-height:60px;padding:16px;background:#fff;border-radius:var(--portal-border-radius);margin-bottom:12px;border:1px solid var(--portal-border);transition:all .2s;cursor:pointer;-webkit-tap-highlight-color:transparent;position:relative}

.touch-card:active,.mobile-card-list>*:active{transform:scale(.98);background:#f9fafb}

.touch-card:after{content:"";position:absolute;inset:0;min-height:44px;pointer-events:none}

.mobile-selectable-list{display:flex;flex-direction:column;gap:8px}

.touch-select-item{display:flex;align-items:center;gap:16px;min-height:56px;padding:12px 16px;background:#fff;border-radius:var(--portal-border-radius);border:1px solid var(--portal-border);cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}

.touch-select-item:active{background:#f3f4f6;transform:scale(.99)}

.touch-select-item input[type=checkbox]{min-width:24px;min-height:24px;cursor:pointer}

.touch-select-item .item-content{flex:1;font-size:15px;color:var(--portal-text-primary)}

.pull-to-refresh-indicator{position:absolute;top:0;left:50%;transform:translate(-50%);padding:12px 24px;background:#667eeae6;color:#fff;border-radius:0 0 12px 12px;font-size:14px;font-weight:500;z-index:999;animation:pullRefreshSlideDown .3s ease-out;box-shadow:0 4px 12px #00000026}

@keyframes pullRefreshSlideDown{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}

.mobile-bottom-bar{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--portal-border);padding:12px 16px;display:flex;gap:12px;z-index:999;box-shadow:0 -2px 8px #00000014;padding-bottom:calc(12px + env(safe-area-inset-bottom))}

.mobile-bottom-bar button{flex:1;min-height:48px;border-radius:8px;font-size:15px;font-weight:500}

@media(min-width:769px){.mobile-bottom-bar{display:none}}

.swipe-action-container{position:relative;overflow:hidden}

.swipe-action-content{position:relative;background:#fff;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1}

.swipe-action-background{position:absolute;top:0;right:0;bottom:0;display:flex;align-items:center;gap:8px;padding:0 16px;z-index:0}

.swipe-action-background.danger{background:linear-gradient(90deg,#fee2e2,#ef4444)}

.swipe-action-background button{min-width:72px;min-height:48px;background:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#dc2626;cursor:pointer}

@media(max-width:768px){.portal-action-button,.portal-toolbar-filter-chip,.portal-view-toggle-btn,button,a{min-height:44px;min-width:44px}.portal-action-button{padding:12px 20px}.portal-header-actions.portal-button-full-width{flex-direction:column;width:100%}.portal-header-actions.portal-button-full-width .portal-action-button{width:100%}.portal-page-body{padding:16px}.portal-metrics-container{gap:8px}.portal-toolbar-search{flex:1 1 100%;min-width:100%}.portal-toolbar-filters{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.portal-toolbar-filters::-webkit-scrollbar{display:none}}

@media(max-width:480px){.portal-page-header{padding:12px 16px}.portal-page-title{font-size:22px}.portal-page-subtitle{font-size:13px}.portal-body-padding{padding:12px}.portal-metrics-row{grid-template-columns:1fr}.portal-toolbar-main{flex-direction:column;gap:12px}.mobile-fab{width:48px;height:48px;bottom:16px;right:16px;font-size:20px}}

@media(max-width:768px)and (orientation:landscape){.portal-page-header{padding:8px 16px}.portal-page-title{font-size:20px}.portal-page-subtitle{display:none}.portal-metric-card,.portal-metric-badge{padding:8px 12px}}

@media(hover:none)and (pointer:coarse){.touch-card:hover,.portal-action-button:hover,.portal-toolbar-filter-chip:hover{transform:none;box-shadow:none}.touch-card:active,.portal-action-button:active,.portal-toolbar-filter-chip:active{opacity:.8;transform:scale(.98)}*{-webkit-overflow-scrolling:touch}.portal-action-button,.portal-toolbar-filter-chip,.touch-card,.mobile-fab{-webkit-user-select:none;user-select:none}}

@media(prefers-color-scheme:dark){.mobile-fab{background:linear-gradient(135deg,#818cf8,#a78bfa);box-shadow:0 4px 12px #818cf866}.touch-card,.mobile-card-list>*,.touch-select-item{background:#1f2937;border-color:#374151}.touch-card:active,.mobile-card-list>*:active,.touch-select-item:active{background:#111827}.mobile-bottom-bar{background:#1f2937;border-top-color:#374151}.pull-to-refresh-indicator{background:#818cf8e6}}

.pm-advanced-grid{display:grid}

.pm-grid-cols-1{grid-template-columns:repeat(1,1fr)}

.pm-grid-cols-2{grid-template-columns:repeat(2,1fr)}

.pm-grid-cols-3{grid-template-columns:repeat(3,1fr)}

.pm-grid-cols-4{grid-template-columns:repeat(4,1fr)}

.pm-grid-cols-5{grid-template-columns:repeat(5,1fr)}

.pm-grid-cols-6{grid-template-columns:repeat(6,1fr)}

.pm-grid-cols-7{grid-template-columns:repeat(7,1fr)}

.pm-grid-cols-8{grid-template-columns:repeat(8,1fr)}

.pm-grid-cols-9{grid-template-columns:repeat(9,1fr)}

.pm-grid-cols-10{grid-template-columns:repeat(10,1fr)}

.pm-grid-cols-11{grid-template-columns:repeat(11,1fr)}

.pm-grid-cols-12{grid-template-columns:repeat(12,1fr)}

.pm-grid-gap-0{gap:0}

.pm-grid-gap-1{gap:4px}

.pm-grid-gap-2{gap:8px}

.pm-grid-gap-3{gap:12px}

.pm-grid-gap-4{gap:16px}

.pm-grid-gap-5{gap:20px}

.pm-grid-gap-6{gap:24px}

.pm-grid-gap-8{gap:32px}

.pm-grid-gap-10{gap:40px}

.pm-grid-gap-12{gap:48px}

.pm-grid-gap-16{gap:64px}

.pm-grid-gap-20{gap:80px}

.pm-grid-gap-24{gap:96px}

.pm-grid-row-gap-0{row-gap:0}

.pm-grid-row-gap-1{row-gap:4px}

.pm-grid-row-gap-2{row-gap:8px}

.pm-grid-row-gap-3{row-gap:12px}

.pm-grid-row-gap-4{row-gap:16px}

.pm-grid-row-gap-5{row-gap:20px}

.pm-grid-row-gap-6{row-gap:24px}

.pm-grid-row-gap-8{row-gap:32px}

.pm-grid-row-gap-10{row-gap:40px}

.pm-grid-row-gap-12{row-gap:48px}

.pm-grid-column-gap-0{column-gap:0}

.pm-grid-column-gap-1{column-gap:4px}

.pm-grid-column-gap-2{column-gap:8px}

.pm-grid-column-gap-3{column-gap:12px}

.pm-grid-column-gap-4{column-gap:16px}

.pm-grid-column-gap-5{column-gap:20px}

.pm-grid-column-gap-6{column-gap:24px}

.pm-grid-column-gap-8{column-gap:32px}

.pm-grid-column-gap-10{column-gap:40px}

.pm-grid-column-gap-12{column-gap:48px}

.pm-grid-flow-row{grid-auto-flow:row}

.pm-grid-flow-column{grid-auto-flow:column}

.pm-grid-flow-row-dense{grid-auto-flow:row dense}

.pm-grid-flow-column-dense{grid-auto-flow:column dense}

.pm-grid-justify-items-start{justify-items:start}

.pm-grid-justify-items-end{justify-items:end}

.pm-grid-justify-items-center{justify-items:center}

.pm-grid-justify-items-stretch{justify-items:stretch}

.pm-grid-align-items-start{align-items:start}

.pm-grid-align-items-end{align-items:end}

.pm-grid-align-items-center{align-items:center}

.pm-grid-align-items-stretch{align-items:stretch}

.pm-grid-align-items-baseline{align-items:baseline}

.pm-grid-justify-content-start{justify-content:start}

.pm-grid-justify-content-end{justify-content:end}

.pm-grid-justify-content-center{justify-content:center}

.pm-grid-justify-content-stretch{justify-content:stretch}

.pm-grid-justify-content-space-around{justify-content:space-around}

.pm-grid-justify-content-space-between{justify-content:space-between}

.pm-grid-justify-content-space-evenly{justify-content:space-evenly}

.pm-grid-align-content-start{align-content:start}

.pm-grid-align-content-end{align-content:end}

.pm-grid-align-content-center{align-content:center}

.pm-grid-align-content-stretch{align-content:stretch}

.pm-grid-align-content-baseline{align-content:baseline}

.pm-grid-masonry{grid-template-rows:masonry}

@supports not (grid-template-rows: masonry){.pm-grid-masonry{column-count:3;column-gap:16px}.pm-grid-masonry .pm-grid-item{break-inside:avoid;margin-bottom:16px}}

.pm-grid-col-span-1{grid-column:span 1}

.pm-grid-col-span-2{grid-column:span 2}

.pm-grid-col-span-3{grid-column:span 3}

.pm-grid-col-span-4{grid-column:span 4}

.pm-grid-col-span-5{grid-column:span 5}

.pm-grid-col-span-6{grid-column:span 6}

.pm-grid-col-span-7{grid-column:span 7}

.pm-grid-col-span-8{grid-column:span 8}

.pm-grid-col-span-9{grid-column:span 9}

.pm-grid-col-span-10{grid-column:span 10}

.pm-grid-col-span-11{grid-column:span 11}

.pm-grid-col-span-12{grid-column:span 12}

.pm-grid-row-span-1{grid-row:span 1}

.pm-grid-row-span-2{grid-row:span 2}

.pm-grid-row-span-3{grid-row:span 3}

.pm-grid-row-span-4{grid-row:span 4}

.pm-grid-row-span-5{grid-row:span 5}

.pm-grid-row-span-6{grid-row:span 6}

.pm-grid-justify-self-start{justify-self:start}

.pm-grid-justify-self-end{justify-self:end}

.pm-grid-justify-self-center{justify-self:center}

.pm-grid-justify-self-stretch{justify-self:stretch}

.pm-grid-align-self-start{align-self:start}

.pm-grid-align-self-end{align-self:end}

.pm-grid-align-self-center{align-self:center}

.pm-grid-align-self-stretch{align-self:stretch}

.pm-grid-align-self-baseline{align-self:baseline}

.pm-grid-order-0{order:0}

.pm-grid-order-1{order:1}

.pm-grid-order-2{order:2}

.pm-grid-order-3{order:3}

.pm-grid-order-4{order:4}

.pm-grid-order-5{order:5}

.pm-grid-order-first{order:-1}

.pm-grid-order-last{order:999}

.pm-container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}

.pm-container-fluid{width:100%;padding-left:16px;padding-right:16px}

@media(min-width:576px){.pm-container{max-width:540px}}

@media(min-width:768px){.pm-container{max-width:720px}}

@media(min-width:992px){.pm-container{max-width:960px}}

@media(min-width:1200px){.pm-container{max-width:1140px}}

@media(min-width:1400px){.pm-container{max-width:1320px}}

@media(max-width:575.98px){.pm-grid-xs-1{grid-template-columns:repeat(1,1fr)}.pm-grid-xs-2{grid-template-columns:repeat(2,1fr)}.pm-grid-xs-3{grid-template-columns:repeat(3,1fr)}.pm-grid-xs-4{grid-template-columns:repeat(4,1fr)}.pm-grid-xs-5{grid-template-columns:repeat(5,1fr)}.pm-grid-xs-6{grid-template-columns:repeat(6,1fr)}.pm-grid-xs-7{grid-template-columns:repeat(7,1fr)}.pm-grid-xs-8{grid-template-columns:repeat(8,1fr)}.pm-grid-xs-9{grid-template-columns:repeat(9,1fr)}.pm-grid-xs-10{grid-template-columns:repeat(10,1fr)}.pm-grid-xs-11{grid-template-columns:repeat(11,1fr)}.pm-grid-xs-12{grid-template-columns:repeat(12,1fr)}}

@media(min-width:576px){.pm-grid-sm-1{grid-template-columns:repeat(1,1fr)}.pm-grid-sm-2{grid-template-columns:repeat(2,1fr)}.pm-grid-sm-3{grid-template-columns:repeat(3,1fr)}.pm-grid-sm-4{grid-template-columns:repeat(4,1fr)}.pm-grid-sm-5{grid-template-columns:repeat(5,1fr)}.pm-grid-sm-6{grid-template-columns:repeat(6,1fr)}.pm-grid-sm-7{grid-template-columns:repeat(7,1fr)}.pm-grid-sm-8{grid-template-columns:repeat(8,1fr)}.pm-grid-sm-9{grid-template-columns:repeat(9,1fr)}.pm-grid-sm-10{grid-template-columns:repeat(10,1fr)}.pm-grid-sm-11{grid-template-columns:repeat(11,1fr)}.pm-grid-sm-12{grid-template-columns:repeat(12,1fr)}}

@media(min-width:768px){.pm-grid-md-1{grid-template-columns:repeat(1,1fr)}.pm-grid-md-2{grid-template-columns:repeat(2,1fr)}.pm-grid-md-3{grid-template-columns:repeat(3,1fr)}.pm-grid-md-4{grid-template-columns:repeat(4,1fr)}.pm-grid-md-5{grid-template-columns:repeat(5,1fr)}.pm-grid-md-6{grid-template-columns:repeat(6,1fr)}.pm-grid-md-7{grid-template-columns:repeat(7,1fr)}.pm-grid-md-8{grid-template-columns:repeat(8,1fr)}.pm-grid-md-9{grid-template-columns:repeat(9,1fr)}.pm-grid-md-10{grid-template-columns:repeat(10,1fr)}.pm-grid-md-11{grid-template-columns:repeat(11,1fr)}.pm-grid-md-12{grid-template-columns:repeat(12,1fr)}}

@media(min-width:992px){.pm-grid-lg-1{grid-template-columns:repeat(1,1fr)}.pm-grid-lg-2{grid-template-columns:repeat(2,1fr)}.pm-grid-lg-3{grid-template-columns:repeat(3,1fr)}.pm-grid-lg-4{grid-template-columns:repeat(4,1fr)}.pm-grid-lg-5{grid-template-columns:repeat(5,1fr)}.pm-grid-lg-6{grid-template-columns:repeat(6,1fr)}.pm-grid-lg-7{grid-template-columns:repeat(7,1fr)}.pm-grid-lg-8{grid-template-columns:repeat(8,1fr)}.pm-grid-lg-9{grid-template-columns:repeat(9,1fr)}.pm-grid-lg-10{grid-template-columns:repeat(10,1fr)}.pm-grid-lg-11{grid-template-columns:repeat(11,1fr)}.pm-grid-lg-12{grid-template-columns:repeat(12,1fr)}}

@media(min-width:1200px){.pm-grid-xl-1{grid-template-columns:repeat(1,1fr)}.pm-grid-xl-2{grid-template-columns:repeat(2,1fr)}.pm-grid-xl-3{grid-template-columns:repeat(3,1fr)}.pm-grid-xl-4{grid-template-columns:repeat(4,1fr)}.pm-grid-xl-5{grid-template-columns:repeat(5,1fr)}.pm-grid-xl-6{grid-template-columns:repeat(6,1fr)}.pm-grid-xl-7{grid-template-columns:repeat(7,1fr)}.pm-grid-xl-8{grid-template-columns:repeat(8,1fr)}.pm-grid-xl-9{grid-template-columns:repeat(9,1fr)}.pm-grid-xl-10{grid-template-columns:repeat(10,1fr)}.pm-grid-xl-11{grid-template-columns:repeat(11,1fr)}.pm-grid-xl-12{grid-template-columns:repeat(12,1fr)}}

@media(max-width:768px){.pm-grid-cols-5,.pm-grid-cols-6,.pm-grid-cols-7,.pm-grid-cols-8,.pm-grid-cols-9,.pm-grid-cols-10,.pm-grid-cols-11,.pm-grid-cols-12,.pm-grid-cols-3,.pm-grid-cols-4{grid-template-columns:repeat(2,1fr)}.pm-grid-gap-8,.pm-grid-gap-10,.pm-grid-gap-12,.pm-grid-gap-16,.pm-grid-gap-20,.pm-grid-gap-24{gap:16px}@supports not (grid-template-rows: masonry){.pm-grid-masonry{column-count:2;column-gap:12px}.pm-grid-masonry .pm-grid-item{margin-bottom:12px}}}

@media(max-width:480px){.pm-grid-cols-3,.pm-grid-cols-4,.pm-grid-cols-5,.pm-grid-cols-6,.pm-grid-cols-7,.pm-grid-cols-8,.pm-grid-cols-9,.pm-grid-cols-10,.pm-grid-cols-11,.pm-grid-cols-12{grid-template-columns:1fr}.pm-grid-cols-2{grid-template-columns:repeat(2,1fr)}.pm-grid-gap-6,.pm-grid-gap-8,.pm-grid-gap-10,.pm-grid-gap-12,.pm-grid-gap-16,.pm-grid-gap-20,.pm-grid-gap-24{gap:12px}@supports not (grid-template-rows: masonry){.pm-grid-masonry{column-count:1}}.pm-container,.pm-container-fluid{padding-left:12px;padding-right:12px}}

.pm-container{width:100%;margin-left:auto;margin-right:auto}

.pm-container-sm{max-width:640px}

.pm-container-md{max-width:768px}

.pm-container-lg{max-width:1024px}

.pm-container-xl{max-width:1280px}

.pm-container-full{max-width:100%}

.pm-container-fluid{max-width:none}

.pm-container-centered{display:flex;flex-direction:column;align-items:center;justify-content:center}

.pm-container-padding-sm{padding-left:12px;padding-right:12px}

.pm-container-padding-md{padding-left:16px;padding-right:16px}

.pm-container-padding-lg{padding-left:24px;padding-right:24px}

@media(min-width:640px){.pm-container-padding-sm{padding-left:16px;padding-right:16px}.pm-container-padding-md{padding-left:24px;padding-right:24px}.pm-container-padding-lg{padding-left:32px;padding-right:32px}}

.pm-grid{display:grid;width:100%}

.pm-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}

.pm-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}

.pm-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}

.pm-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}

.pm-grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}

.pm-grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}

.pm-grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}

.pm-grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}

.pm-grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}

.pm-grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}

.pm-grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}

.pm-grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}

.pm-grid-gap-none{gap:0}

.pm-grid-gap-xs{gap:4px}

.pm-grid-gap-sm{gap:8px}

.pm-grid-gap-md{gap:16px}

.pm-grid-gap-lg{gap:24px}

.pm-grid-gap-xl{gap:32px}

.pm-grid-row-gap-none{row-gap:0}

.pm-grid-row-gap-xs{row-gap:4px}

.pm-grid-row-gap-sm{row-gap:8px}

.pm-grid-row-gap-md{row-gap:16px}

.pm-grid-row-gap-lg{row-gap:24px}

.pm-grid-row-gap-xl{row-gap:32px}

.pm-grid-col-gap-none{column-gap:0}

.pm-grid-col-gap-xs{column-gap:4px}

.pm-grid-col-gap-sm{column-gap:8px}

.pm-grid-col-gap-md{column-gap:16px}

.pm-grid-col-gap-lg{column-gap:24px}

.pm-grid-col-gap-xl{column-gap:32px}

.pm-grid-align-start{align-items:start}

.pm-grid-align-center{align-items:center}

.pm-grid-align-end{align-items:end}

.pm-grid-align-stretch{align-items:stretch}

.pm-grid-justify-start{justify-content:start}

.pm-grid-justify-center{justify-content:center}

.pm-grid-justify-end{justify-content:end}

.pm-grid-justify-between{justify-content:space-between}

.pm-grid-justify-around{justify-content:space-around}

.pm-grid-justify-evenly{justify-content:space-evenly}

.pm-grid-item{min-width:0}

.pm-grid-span-1{grid-column:span 1 / span 1}

.pm-grid-span-2{grid-column:span 2 / span 2}

.pm-grid-span-3{grid-column:span 3 / span 3}

.pm-grid-span-4{grid-column:span 4 / span 4}

.pm-grid-span-5{grid-column:span 5 / span 5}

.pm-grid-span-6{grid-column:span 6 / span 6}

.pm-grid-span-7{grid-column:span 7 / span 7}

.pm-grid-span-8{grid-column:span 8 / span 8}

.pm-grid-span-9{grid-column:span 9 / span 9}

.pm-grid-span-10{grid-column:span 10 / span 10}

.pm-grid-span-11{grid-column:span 11 / span 11}

.pm-grid-span-12{grid-column:span 12 / span 12}

.pm-grid-span-full{grid-column:1 / -1}

@media(min-width:640px){.pm-grid-sm-1{grid-template-columns:repeat(1,minmax(0,1fr))}.pm-grid-sm-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid-sm-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-grid-sm-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-grid-sm-5{grid-template-columns:repeat(5,minmax(0,1fr))}.pm-grid-sm-6{grid-template-columns:repeat(6,minmax(0,1fr))}.pm-grid-sm-7{grid-template-columns:repeat(7,minmax(0,1fr))}.pm-grid-sm-8{grid-template-columns:repeat(8,minmax(0,1fr))}.pm-grid-sm-9{grid-template-columns:repeat(9,minmax(0,1fr))}.pm-grid-sm-10{grid-template-columns:repeat(10,minmax(0,1fr))}.pm-grid-sm-11{grid-template-columns:repeat(11,minmax(0,1fr))}.pm-grid-sm-12{grid-template-columns:repeat(12,minmax(0,1fr))}.pm-grid-sm-span-1{grid-column:span 1 / span 1}.pm-grid-sm-span-2{grid-column:span 2 / span 2}.pm-grid-sm-span-3{grid-column:span 3 / span 3}.pm-grid-sm-span-4{grid-column:span 4 / span 4}.pm-grid-sm-span-5{grid-column:span 5 / span 5}.pm-grid-sm-span-6{grid-column:span 6 / span 6}.pm-grid-sm-span-7{grid-column:span 7 / span 7}.pm-grid-sm-span-8{grid-column:span 8 / span 8}.pm-grid-sm-span-9{grid-column:span 9 / span 9}.pm-grid-sm-span-10{grid-column:span 10 / span 10}.pm-grid-sm-span-11{grid-column:span 11 / span 11}.pm-grid-sm-span-12{grid-column:span 12 / span 12}.pm-grid-sm-span-full{grid-column:1 / -1}}

@media(min-width:768px){.pm-grid-md-1{grid-template-columns:repeat(1,minmax(0,1fr))}.pm-grid-md-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid-md-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-grid-md-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-grid-md-5{grid-template-columns:repeat(5,minmax(0,1fr))}.pm-grid-md-6{grid-template-columns:repeat(6,minmax(0,1fr))}.pm-grid-md-7{grid-template-columns:repeat(7,minmax(0,1fr))}.pm-grid-md-8{grid-template-columns:repeat(8,minmax(0,1fr))}.pm-grid-md-9{grid-template-columns:repeat(9,minmax(0,1fr))}.pm-grid-md-10{grid-template-columns:repeat(10,minmax(0,1fr))}.pm-grid-md-11{grid-template-columns:repeat(11,minmax(0,1fr))}.pm-grid-md-12{grid-template-columns:repeat(12,minmax(0,1fr))}.pm-grid-md-span-1{grid-column:span 1 / span 1}.pm-grid-md-span-2{grid-column:span 2 / span 2}.pm-grid-md-span-3{grid-column:span 3 / span 3}.pm-grid-md-span-4{grid-column:span 4 / span 4}.pm-grid-md-span-5{grid-column:span 5 / span 5}.pm-grid-md-span-6{grid-column:span 6 / span 6}.pm-grid-md-span-7{grid-column:span 7 / span 7}.pm-grid-md-span-8{grid-column:span 8 / span 8}.pm-grid-md-span-9{grid-column:span 9 / span 9}.pm-grid-md-span-10{grid-column:span 10 / span 10}.pm-grid-md-span-11{grid-column:span 11 / span 11}.pm-grid-md-span-12{grid-column:span 12 / span 12}.pm-grid-md-span-full{grid-column:1 / -1}}

@media(min-width:1024px){.pm-grid-lg-1{grid-template-columns:repeat(1,minmax(0,1fr))}.pm-grid-lg-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid-lg-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-grid-lg-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-grid-lg-5{grid-template-columns:repeat(5,minmax(0,1fr))}.pm-grid-lg-6{grid-template-columns:repeat(6,minmax(0,1fr))}.pm-grid-lg-7{grid-template-columns:repeat(7,minmax(0,1fr))}.pm-grid-lg-8{grid-template-columns:repeat(8,minmax(0,1fr))}.pm-grid-lg-9{grid-template-columns:repeat(9,minmax(0,1fr))}.pm-grid-lg-10{grid-template-columns:repeat(10,minmax(0,1fr))}.pm-grid-lg-11{grid-template-columns:repeat(11,minmax(0,1fr))}.pm-grid-lg-12{grid-template-columns:repeat(12,minmax(0,1fr))}.pm-grid-lg-span-1{grid-column:span 1 / span 1}.pm-grid-lg-span-2{grid-column:span 2 / span 2}.pm-grid-lg-span-3{grid-column:span 3 / span 3}.pm-grid-lg-span-4{grid-column:span 4 / span 4}.pm-grid-lg-span-5{grid-column:span 5 / span 5}.pm-grid-lg-span-6{grid-column:span 6 / span 6}.pm-grid-lg-span-7{grid-column:span 7 / span 7}.pm-grid-lg-span-8{grid-column:span 8 / span 8}.pm-grid-lg-span-9{grid-column:span 9 / span 9}.pm-grid-lg-span-10{grid-column:span 10 / span 10}.pm-grid-lg-span-11{grid-column:span 11 / span 11}.pm-grid-lg-span-12{grid-column:span 12 / span 12}.pm-grid-lg-span-full{grid-column:1 / -1}}

@media(min-width:1280px){.pm-grid-xl-1{grid-template-columns:repeat(1,minmax(0,1fr))}.pm-grid-xl-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-grid-xl-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-grid-xl-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-grid-xl-5{grid-template-columns:repeat(5,minmax(0,1fr))}.pm-grid-xl-6{grid-template-columns:repeat(6,minmax(0,1fr))}.pm-grid-xl-7{grid-template-columns:repeat(7,minmax(0,1fr))}.pm-grid-xl-8{grid-template-columns:repeat(8,minmax(0,1fr))}.pm-grid-xl-9{grid-template-columns:repeat(9,minmax(0,1fr))}.pm-grid-xl-10{grid-template-columns:repeat(10,minmax(0,1fr))}.pm-grid-xl-11{grid-template-columns:repeat(11,minmax(0,1fr))}.pm-grid-xl-12{grid-template-columns:repeat(12,minmax(0,1fr))}.pm-grid-xl-span-1{grid-column:span 1 / span 1}.pm-grid-xl-span-2{grid-column:span 2 / span 2}.pm-grid-xl-span-3{grid-column:span 3 / span 3}.pm-grid-xl-span-4{grid-column:span 4 / span 4}.pm-grid-xl-span-5{grid-column:span 5 / span 5}.pm-grid-xl-span-6{grid-column:span 6 / span 6}.pm-grid-xl-span-7{grid-column:span 7 / span 7}.pm-grid-xl-span-8{grid-column:span 8 / span 8}.pm-grid-xl-span-9{grid-column:span 9 / span 9}.pm-grid-xl-span-10{grid-column:span 10 / span 10}.pm-grid-xl-span-11{grid-column:span 11 / span 11}.pm-grid-xl-span-12{grid-column:span 12 / span 12}.pm-grid-xl-span-full{grid-column:1 / -1}}

.pm-stack{display:flex}

.pm-stack-vertical{flex-direction:column}

.pm-stack-horizontal{flex-direction:row}

.pm-stack-vertical.pm-stack-spacing-none{gap:0}

.pm-stack-vertical.pm-stack-spacing-xs{gap:4px}

.pm-stack-vertical.pm-stack-spacing-sm{gap:8px}

.pm-stack-vertical.pm-stack-spacing-md{gap:16px}

.pm-stack-vertical.pm-stack-spacing-lg{gap:24px}

.pm-stack-vertical.pm-stack-spacing-xl{gap:32px}

.pm-stack-horizontal.pm-stack-spacing-none{gap:0}

.pm-stack-horizontal.pm-stack-spacing-xs{gap:4px}

.pm-stack-horizontal.pm-stack-spacing-sm{gap:8px}

.pm-stack-horizontal.pm-stack-spacing-md{gap:16px}

.pm-stack-horizontal.pm-stack-spacing-lg{gap:24px}

.pm-stack-horizontal.pm-stack-spacing-xl{gap:32px}

.pm-stack-align-start{align-items:flex-start}

.pm-stack-align-center{align-items:center}

.pm-stack-align-end{align-items:flex-end}

.pm-stack-align-stretch{align-items:stretch}

.pm-stack-align-baseline{align-items:baseline}

.pm-stack-justify-start{justify-content:flex-start}

.pm-stack-justify-center{justify-content:center}

.pm-stack-justify-end{justify-content:flex-end}

.pm-stack-justify-between{justify-content:space-between}

.pm-stack-justify-around{justify-content:space-around}

.pm-stack-justify-evenly{justify-content:space-evenly}

.pm-stack-wrap{flex-wrap:wrap}

.pm-stack-divider{flex-shrink:0}

.pm-stack-vertical .pm-stack-divider{width:100%;height:1px;background-color:var(--color-border)}

.pm-stack-horizontal .pm-stack-divider{width:1px;height:100%;background-color:var(--color-border)}

.dark .pm-stack-vertical .pm-stack-divider,.dark .pm-stack-horizontal .pm-stack-divider{background-color:var(--color-gray-700)}

.pm-divider{border:none;margin:0}

.pm-divider-horizontal{width:100%;border-top-style:solid;border-top-color:var(--color-border)}

.pm-divider-vertical{height:100%;border-left-style:solid;border-left-color:var(--color-border)}

.pm-divider-thin.pm-divider-horizontal{border-top-width:1px}

.pm-divider-medium.pm-divider-horizontal{border-top-width:2px}

.pm-divider-thick.pm-divider-horizontal{border-top-width:4px}

.pm-divider-thin.pm-divider-vertical{border-left-width:1px}

.pm-divider-medium.pm-divider-vertical{border-left-width:2px}

.pm-divider-thick.pm-divider-vertical{border-left-width:4px}

.pm-divider-horizontal.pm-divider-spacing-none{margin-top:0;margin-bottom:0}

.pm-divider-horizontal.pm-divider-spacing-xs{margin-top:4px;margin-bottom:4px}

.pm-divider-horizontal.pm-divider-spacing-sm{margin-top:8px;margin-bottom:8px}

.pm-divider-horizontal.pm-divider-spacing-md{margin-top:16px;margin-bottom:16px}

.pm-divider-horizontal.pm-divider-spacing-lg{margin-top:24px;margin-bottom:24px}

.pm-divider-horizontal.pm-divider-spacing-xl{margin-top:32px;margin-bottom:32px}

.pm-divider-vertical.pm-divider-spacing-none{margin-left:0;margin-right:0}

.pm-divider-vertical.pm-divider-spacing-xs{margin-left:4px;margin-right:4px}

.pm-divider-vertical.pm-divider-spacing-sm{margin-left:8px;margin-right:8px}

.pm-divider-vertical.pm-divider-spacing-md{margin-left:16px;margin-right:16px}

.pm-divider-vertical.pm-divider-spacing-lg{margin-left:24px;margin-right:24px}

.pm-divider-vertical.pm-divider-spacing-xl{margin-left:32px;margin-right:32px}

.pm-divider-dashed{border-style:dashed!important}

.pm-divider-dotted{border-style:dotted!important}

.pm-divider-with-label{display:flex;align-items:center;border:none}

.pm-divider-with-label:before,.pm-divider-with-label:after{content:"";flex:1;border-top:1px solid var(--color-border)}

.pm-divider-with-label.pm-divider-medium:before,.pm-divider-with-label.pm-divider-medium:after{border-top-width:2px}

.pm-divider-with-label.pm-divider-thick:before,.pm-divider-with-label.pm-divider-thick:after{border-top-width:4px}

.pm-divider-with-label.pm-divider-dashed:before,.pm-divider-with-label.pm-divider-dashed:after{border-top-style:dashed}

.pm-divider-with-label.pm-divider-dotted:before,.pm-divider-with-label.pm-divider-dotted:after{border-top-style:dotted}

.pm-divider-label{padding:0 16px;font-size:14px;color:var(--color-text-secondary);white-space:nowrap}

.pm-divider-label-left:before{max-width:40px}

.pm-divider-label-right:after{max-width:40px}

.dark .pm-divider-horizontal{border-top-color:var(--color-gray-700)}

.dark .pm-divider-vertical{border-left-color:var(--color-gray-700)}

.dark .pm-divider-with-label:before,.dark .pm-divider-with-label:after{border-top-color:var(--color-gray-700)}

.dark .pm-divider-label{color:var(--color-gray-400)}

.pm-spacer{display:block}

.pm-spacer-vertical.pm-spacer-xs{height:4px}

.pm-spacer-vertical.pm-spacer-sm{height:8px}

.pm-spacer-vertical.pm-spacer-md{height:16px}

.pm-spacer-vertical.pm-spacer-lg{height:24px}

.pm-spacer-vertical.pm-spacer-xl{height:32px}

.pm-spacer-vertical.pm-spacer-2xl{height:48px}

.pm-spacer-vertical.pm-spacer-3xl{height:64px}

.pm-spacer-horizontal.pm-spacer-xs{width:4px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-sm{width:8px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-md{width:16px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-lg{width:24px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-xl{width:32px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-2xl{width:48px;display:inline-block}

.pm-spacer-horizontal.pm-spacer-3xl{width:64px;display:inline-block}

.pm-spacer-both.pm-spacer-xs{width:4px;height:4px}

.pm-spacer-both.pm-spacer-sm{width:8px;height:8px}

.pm-spacer-both.pm-spacer-md{width:16px;height:16px}

.pm-spacer-both.pm-spacer-lg{width:24px;height:24px}

.pm-spacer-both.pm-spacer-xl{width:32px;height:32px}

.pm-spacer-both.pm-spacer-2xl{width:48px;height:48px}

.pm-spacer-both.pm-spacer-3xl{width:64px;height:64px}

.pm-spacer-flex{flex:1}

/* DataCard styles ship as DataCardDemo.css in package dist */

:root{--datacard-bg: #ffffff;--datacard-border: #d1d5db;--datacard-border-hover: #9ca3af;--datacard-shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--datacard-shadow-hover: 0 4px 6px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--datacard-radius: 10px;--datacard-padding: 20px;--datacard-header-gap: 12px;--datacard-icon-size: 40px;--datacard-icon-radius: 10px;--datacard-image-size: 48px;--datacard-title-size: 14px;--datacard-title-weight: 600;--datacard-subtitle-size: 12px;--datacard-label-size: 10px;--datacard-value-size: 13px;--datacard-text-primary: #0f172a;--datacard-text-secondary: #475569;--datacard-text-tertiary: #94a3b8;--datacard-badge-radius: 12px;--datacard-badge-padding: 3px 9px;--datacard-btn-size: 28px;--datacard-btn-radius: 7px;--datacard-btn-gap: 5px;--datacard-stat-bg: #f8fafc;--datacard-stat-border: #d1d5db;--datacard-stat-radius: 8px;--datacard-accent: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--datacard-animation-delay: 0ms}

.datacard{position:relative;width:100%;min-height:280px;margin:8px 0;animation:fadeInUp .4s cubic-bezier(.4,0,.2,1) backwards;animation-delay:var(--datacard-animation-delay, 0ms)}

@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

.datacard-wrapper,.datacard .pm-card,.datacard .pm-card-default,.datacard .pm-card-compact{border:1.5px solid #d1d5db!important;border-left:3px solid #667eea!important;box-shadow:0 1px 3px #0000001a!important}

.datacard .card{height:100%;display:flex;flex-direction:column;transition:all .2s cubic-bezier(.4,0,.2,1);border:1.5px solid #d1d5db!important;border-left:3px solid var(--datacard-accent-color, #667eea)!important;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f!important;border-radius:var(--datacard-radius)!important;overflow:visible!important;background:#fff!important;padding:var(--datacard-padding)!important;box-sizing:border-box!important}

.datacard .card:hover{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f!important;transform:translateY(-2px);border-color:#9ca3af!important;border-left-color:var(--datacard-accent-color, #5b21b6)!important}

.datacard:focus-within{outline:3px solid var(--datacard-accent-color, #667eea);outline-offset:2px;border-radius:calc(var(--datacard-radius) + 2px)}

.datacard:has(.datacard-checkbox):focus-within{outline:none!important}

.datacard:focus{outline:3px solid var(--datacard-accent-color, #667eea);outline-offset:2px}

.datacard--selected .card{border:2px solid var(--datacard-accent-color, #667eea)!important;border-left:4px solid var(--datacard-accent-color, #667eea)!important;background-color:#667eea05!important;box-shadow:0 0 0 3px #667eea1a!important}

.datacard--compact .datacard-header{padding-bottom:10px}

.datacard--compact .datacard-content{gap:10px}

.datacard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--datacard-header-gap);width:100%;padding-bottom:16px;border-bottom:1.5px solid #e5e7eb;margin-bottom:16px}

.datacard-header-left{display:flex;align-items:center;gap:14px;flex:1;min-width:0}

.datacard-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--datacard-accent-color, #667eea);flex-shrink:0;margin-right:8px;border-radius:4px;border:2px solid #d1d5db;transition:all .15s ease}

.datacard-checkbox:hover{border-color:var(--datacard-accent-color, #667eea);transform:scale(1.05)}

.datacard-checkbox:checked{background-color:var(--datacard-accent-color, #667eea);border-color:var(--datacard-accent-color, #667eea)}

.datacard-header-icon{width:var(--datacard-icon-size);height:var(--datacard-icon-size);border-radius:var(--datacard-icon-radius);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;background:var(--datacard-accent);color:#fff;box-shadow:0 2px 4px #667eea33}

.datacard-header-image{width:var(--datacard-image-size);height:var(--datacard-image-size);border-radius:8px;overflow:hidden;flex-shrink:0;border:1.5px solid #d1d5db;box-shadow:0 1px 3px #00000014}

.datacard-header-image img{width:100%;height:100%;object-fit:cover}

.datacard-title-section{flex:1;min-width:0}

.datacard-title{font-size:var(--datacard-title-size);font-weight:var(--datacard-title-weight);color:var(--datacard-text-primary);margin:0 0 3px;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}

.datacard-subtitle{font-size:var(--datacard-subtitle-size);color:var(--datacard-text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}

.datacard-actions{display:flex;gap:var(--datacard-btn-gap);flex-shrink:0}

.datacard-action-btn{width:var(--datacard-btn-size);height:var(--datacard-btn-size);border-radius:var(--datacard-btn-radius);border:1.5px solid #d1d5db;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:15px;padding:0;color:#64748b;box-shadow:0 1px 2px #0000000a}

.datacard-action-btn:hover:not(:disabled){background:#f8fafc;border-color:#9ca3af;transform:translateY(-1px);color:#475569;box-shadow:0 2px 4px #00000014}

.datacard-action-btn:active:not(:disabled){transform:translateY(0)}

.datacard-action-btn:disabled{opacity:.4;cursor:not-allowed}

.datacard-action-btn:focus{outline:2px solid var(--datacard-accent-color, #667eea);outline-offset:2px}

.datacard-action-btn--primary{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}

.datacard-action-btn--primary:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}

.datacard-action-btn--danger{background:#fef2f2;border-color:#fecaca;color:#dc2626}

.datacard-action-btn--danger:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;color:#b91c1c}

.datacard-action-btn--success{background:#f0fdf4;border-color:#bbf7d0;color:#16a34a}

.datacard-action-btn--success:hover:not(:disabled){background:#dcfce7;border-color:#86efac;color:#15803d}

.datacard-content{display:flex;flex-direction:column;gap:16px;flex:1}

.datacard-section{display:flex;flex-direction:column;gap:12px}

.datacard-section-title{font-size:13px;font-weight:600;color:var(--datacard-text-secondary);margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px}

.datacard-section-content{display:flex;gap:12px}

.datacard-section-content--row{flex-direction:row;flex-wrap:wrap}

.datacard-section-content--grid{display:grid;gap:12px}

.datacard-section-content--list{flex-direction:column;gap:8px}

.datacard-field--inline{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.5}

.datacard-field-label{font-size:var(--datacard-label-size);color:var(--datacard-text-secondary);font-weight:500;display:flex;align-items:center;gap:4px;white-space:nowrap}

.datacard-field-value{font-size:var(--datacard-value-size);color:var(--datacard-text-primary);font-weight:500;display:flex;align-items:center;gap:4px}

.datacard-field--stacked{display:flex;flex-direction:column;gap:4px}

.datacard-field--stacked .datacard-field-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px}

.datacard-field--stacked .datacard-field-value{font-size:15px;font-weight:600}

.datacard-stat-item{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f8fafc;border:1.5px solid #d1d5db;border-radius:var(--datacard-stat-radius);flex:1;min-width:0;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000d}

.datacard-stat-item:hover{background:#f1f5f9;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 2px 4px #00000014}

.datacard-stat-icon{font-size:18px;flex-shrink:0;line-height:1}

.datacard-stat-content{display:flex;flex-direction:column;gap:2px;min-width:0}

.datacard-stat-value{font-size:15px;font-weight:700;color:var(--datacard-text-primary);line-height:1.2}

.datacard-stat-label{font-size:10px;color:var(--datacard-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}

.datacard-badge{display:inline-flex;align-items:center;gap:3px;padding:var(--datacard-badge-padding);border-radius:var(--datacard-badge-radius);font-size:10px;font-weight:600;color:#fff;white-space:nowrap;background:var(--datacard-text-secondary);letter-spacing:.3px;box-shadow:0 1px 3px #0003,0 1px 2px #0000001f;border:1px solid rgba(0,0,0,.1)}

.datacard-badge[data-priority=high],.datacard-badge.badge--high{background-color:#f59e0b;color:#fff;text-transform:uppercase}

.datacard-badge[data-priority=normal],.datacard-badge.badge--normal{background-color:#3b82f6;color:#fff;text-transform:uppercase}

.datacard-badge[data-priority=low],.datacard-badge.badge--low{background-color:#6b7280;color:#fff;text-transform:uppercase}

.datacard-badge[data-status=waiting],.datacard-badge.badge--waiting{background-color:#f59e0b;color:#fff}

.datacard-badge[data-status=active],.datacard-badge[data-status=confirmed],.datacard-badge.badge--active,.datacard-badge.badge--confirmed{background-color:#10b981;color:#fff}

.datacard-badge[data-status=cancelled],.datacard-badge.badge--cancelled{background-color:#ef4444;color:#fff}

.datacard-badge-icon{font-size:11px;line-height:1}

.datacard-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}

.datacard-tag{padding:4px 10px;background:#f5f3ff;border:1.5px solid #c4b5fd;border-radius:12px;font-size:10px;font-weight:600;color:#7c3aed;white-space:nowrap;transition:all .15s ease;letter-spacing:.2px;box-shadow:0 1px 2px #7c3aed1a}

.datacard-tag:hover{background:#ede9fe;border-color:#a78bfa;color:#6d28d9;box-shadow:0 2px 3px #7c3aed26}

.datacard-tag.more{background:#e5e7eb;color:var(--datacard-text-primary);font-weight:600}

.datacard-progress{position:relative;width:100%;height:24px;background:#f3f4f6;border-radius:12px;overflow:hidden;display:flex;align-items:center}

.datacard-progress-bar{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#8b5cf6,#3b82f6);transition:width .3s ease;border-radius:12px}

.datacard-progress-text{position:relative;z-index:1;font-size:12px;font-weight:600;color:var(--datacard-text-primary);padding:0 12px}

.datacard-rating{display:flex;align-items:center;gap:4px;font-size:14px;color:#f59e0b}

.datacard-rating-value{font-size:12px;color:var(--datacard-text-secondary);margin-left:2px}

.datacard--dark .card{background:#1e293b!important;border-color:#475569!important;border-left-color:var(--datacard-accent-color, #667eea)!important;color:#f1f5f9!important}

.datacard--dark .datacard-title{color:#f1f5f9}

.datacard--dark .datacard-subtitle{color:#cbd5e1}

.datacard--dark .datacard-field-label{color:#94a3b8}

.datacard--dark .datacard-field-value{color:#e2e8f0}

.datacard--dark .datacard-stat-item{background:#0f172a;border-color:#475569}

.datacard--dark .datacard-stat-label{color:#94a3b8}

.datacard--dark .datacard-stat-value{color:#f1f5f9}

.datacard--dark .datacard-action-btn{background:#334155;border-color:#475569;color:#cbd5e1}

.datacard--dark .datacard-action-btn:hover:not(:disabled){background:#475569;border-color:#64748b;color:#f1f5f9}

.datacard--dark .datacard-section-title{color:#94a3b8}

.datacard--dark .card:hover{border-color:#64748b!important;box-shadow:0 4px 6px #0000004d,0 2px 4px #0003!important}

.datacard--dark .datacard-stat-item:hover{background:#1e293b;border-color:#64748b}

.datacard--loading{pointer-events:none;animation:none}

.datacard--loading .card{background:var(--datacard-bg)!important}

@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}

.skeleton-text,.skeleton-icon,.skeleton-action-btn{background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite linear;border-radius:4px}

.datacard--dark .skeleton-text,.datacard--dark .skeleton-icon,.datacard--dark .skeleton-action-btn{background:linear-gradient(90deg,#1e293b,#334155,#1e293b);background-size:200% 100%}

.skeleton-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0}

.skeleton-text--title{height:16px;width:60%;margin-bottom:6px}

.skeleton-text--subtitle{height:12px;width:80%}

.skeleton-text--line{height:12px;width:100%;margin-bottom:8px}

.skeleton-action-btn{width:28px;height:28px;border-radius:7px}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

@media(prefers-reduced-motion:reduce){.datacard,.datacard .card,.datacard-action-btn,.datacard-stat-item,.skeleton-text,.skeleton-icon,.skeleton-action-btn{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transform:none!important}.datacard .card:hover{transform:none!important}}

.datacard-field-icon{font-size:16px}

.datacard-field-icon-inline{font-size:14px}

.datacard-field-icon-label{font-size:13px}

.datacard-image{width:100%;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:#f3f4f6}

.datacard-image img{width:100%;height:100%;object-fit:cover}

@media(max-width:1024px)and (min-width:769px){.datacard{max-width:100%}.datacard .card{border-radius:12px;border-left-width:3px}.datacard-section-content--grid{grid-template-columns:repeat(2,1fr)!important;gap:12px}.datacard-stat-item{padding:12px 14px;gap:12px}.datacard-stat-icon{font-size:21px}.datacard-stat-value{font-size:17px}.datacard-action-btn{width:38px;height:38px;font-size:16px;border-radius:9px}.datacard-header-left{gap:13px}.datacard-header{padding-bottom:15px;margin-bottom:16px}.datacard-content{gap:15px}.datacard-tag{padding:6px 12px;font-size:11px}}

@media(max-width:768px){.datacard{min-height:auto}.datacard .card{border-radius:12px;border-left-width:3px;padding:16px!important}.datacard-header{flex-wrap:wrap;gap:12px;padding-bottom:14px;margin-bottom:14px}.datacard-header-left{gap:12px;flex:1;min-width:0}.datacard-header-image,.datacard-header-icon{width:44px;height:44px;flex-shrink:0}.datacard-actions{flex-direction:row;gap:8px;flex-wrap:wrap}.datacard-action-btn{width:44px;height:44px;font-size:16px;border-radius:10px;flex-shrink:0}.datacard-title{font-size:16px;line-height:1.4;white-space:normal}.datacard-subtitle{font-size:13px;white-space:normal}.datacard-content{gap:14px}.datacard-section{gap:10px}.datacard-section-title{font-size:12px}.datacard-section-content--grid{grid-template-columns:1fr!important;gap:12px}.datacard-section-content--row{flex-direction:column;gap:12px}.datacard-stat-item{min-height:54px;padding:14px;gap:12px;border-radius:10px;width:100%}.datacard-stat-icon{font-size:22px}.datacard-stat-value{font-size:18px}.datacard-stat-label{font-size:11px}.datacard-field--inline{gap:8px;font-size:14px;flex-wrap:wrap}.datacard-field-label{font-size:11px}.datacard-field-value{font-size:14px}.datacard-tags{gap:8px;margin-top:10px}.datacard-tag{padding:7px 13px;font-size:12px;border-radius:16px;min-height:30px;display:inline-flex;align-items:center}.datacard-badge{padding:6px 13px;font-size:12px;min-height:28px;white-space:normal}.datacard-checkbox{width:24px;height:24px;margin-right:10px}.datacard-progress{height:28px;border-radius:14px}.datacard-progress-text{font-size:13px;padding:0 14px}}

@media(max-width:480px){.datacard .card{border-radius:10px;border-left-width:3px;padding:14px!important}.datacard-header{gap:10px;padding-bottom:12px;margin-bottom:12px;flex-wrap:wrap}.datacard-header-left{gap:10px;flex:1 1 100%}.datacard-header-image,.datacard-header-icon{width:40px;height:40px;font-size:20px}.datacard-title{font-size:15px;line-height:1.5}.datacard-subtitle{font-size:12px;line-height:1.5}.datacard-action-btn{width:44px;height:44px;font-size:15px}.datacard-actions{gap:6px;width:100%;justify-content:flex-start}.datacard-content{gap:12px}.datacard-section{gap:10px}.datacard-section-title{font-size:11px}.datacard-stat-item{padding:12px;gap:10px;min-height:48px;width:100%}.datacard-stat-icon{font-size:20px}.datacard-stat-value{font-size:17px}.datacard-stat-label{font-size:10px}.datacard-field--inline{font-size:13px;gap:6px}.datacard-field-label{font-size:11px}.datacard-field-value{font-size:13px}.datacard-tag{padding:6px 12px;min-height:28px;font-size:11px}.datacard-badge{padding:5px 11px;font-size:11px;min-height:26px}.datacard-checkbox{width:22px;height:22px}.datacard-progress{height:24px;border-radius:12px}.datacard-progress-text{font-size:12px;padding:0 12px}}

@media(hover:none)and (pointer:coarse){.datacard-action-btn,.datacard-checkbox{min-width:44px;min-height:44px}.datacard-stat-item{min-height:54px;padding:14px}.datacard-action-btn:hover{transform:none}.datacard-action-btn:active:not(:disabled){transform:scale(.95)}.datacard-stat-item:hover{transform:none}.datacard-stat-item:active{transform:scale(.98)}.datacard:focus-within{outline-width:4px;outline-offset:3px}.datacard-action-btn:focus{outline-width:3px;outline-offset:3px}.datacard[data-priority=high] .card{border-left-color:#f59e0b!important}.datacard[data-priority=normal] .card{border-left-color:#3b82f6!important}.datacard[data-priority=low] .card{border-left-color:#6b7280!important}.datacard[data-status=waiting] .card{border-left-color:#f59e0b!important}.datacard[data-status=confirmed] .card,.datacard[data-status=active] .card{border-left-color:#10b981!important}.datacard[data-status=cancelled] .card{border-left-color:#ef4444!important}.datacard.unified{--unified-card-bg: #ffffff;--unified-card-border: #e5e7eb;--unified-card-border-hover: #d1d5db;--unified-card-shadow: 0 1px 3px rgba(0, 0, 0, .06);--unified-card-shadow-hover: 0 12px 24px rgba(0, 0, 0, .1);--unified-text-primary: #1f2937;--unified-text-secondary: #6b7280;--unified-stat-bg: #f9fafb;--unified-stat-border: #f0f0f0;--unified-btn-bg: #f9fafb;--unified-btn-border: #f0f0f0;--unified-btn-hover-bg: #ffffff;--unified-btn-hover-border: #e5e7eb;--unified-card-radius: 12px;--unified-card-padding: 16px;--unified-icon-size: 40px;--unified-icon-radius: 10px;--unified-btn-size: 30px;--unified-btn-radius: 7px;--unified-gap-xs: 4px;--unified-gap-sm: 6px;--unified-gap-md: 8px;--unified-gap-lg: 12px;--unified-font-title: 16px;--unified-font-subtitle: 12px;--unified-font-stat-value: 15px;--unified-font-stat-label: 11px;--unified-accent-gradient: linear-gradient(90deg, #8b5cf6, #3b82f6)}.datacard.unified .card{background:var(--unified-card-bg);border:1px solid var(--unified-card-border)!important;border-radius:var(--unified-card-radius);padding:var(--unified-card-padding);transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--unified-card-shadow);border-left-width:1px!important;height:100%;display:flex;flex-direction:column}.datacard.unified:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--unified-accent-gradient);opacity:0;transition:opacity .2s;border-radius:var(--unified-card-radius) var(--unified-card-radius) 0 0;z-index:1;pointer-events:none}.datacard.unified:hover:before{opacity:1}.datacard.unified:hover .card{border-color:var(--unified-card-border-hover);transform:translateY(-3px);box-shadow:var(--unified-card-shadow-hover)}.datacard.unified .datacard-header{display:flex;justify-content:space-between;align-items:center;gap:var(--unified-gap-lg);width:100%;padding-bottom:var(--unified-gap-lg);border-bottom:1px solid var(--unified-stat-border);margin-bottom:var(--unified-gap-lg)}.datacard.unified .datacard-header-left{display:flex;align-items:center;gap:var(--unified-gap-lg);flex:1;min-width:0}.datacard.unified .datacard-icon,.datacard.unified .datacard-image{width:var(--unified-icon-size);height:var(--unified-icon-size);border-radius:var(--unified-icon-radius);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.datacard.unified .datacard-title-section{flex:1;min-width:0}.datacard.unified .datacard-title{font-size:var(--unified-font-title);font-weight:600;color:var(--unified-text-primary);margin:0 0 2px;display:flex;align-items:center;gap:var(--unified-gap-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.datacard.unified .datacard-subtitle{font-size:var(--unified-font-subtitle);color:var(--unified-text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.datacard.unified .datacard-actions{display:flex;gap:var(--unified-gap-xs);flex-shrink:0}.datacard.unified .datacard-action-btn{width:var(--unified-btn-size);height:var(--unified-btn-size);border:1px solid var(--unified-btn-border);background:var(--unified-btn-bg);border-radius:var(--unified-btn-radius);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0}.datacard.unified .datacard-action-btn:hover{background:var(--unified-btn-hover-bg);border-color:var(--unified-btn-hover-border);transform:translateY(-1px);box-shadow:0 2px 4px #00000014}.datacard.unified .datacard-action-btn.view:hover{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.datacard.unified .datacard-action-btn.edit:hover{background:#fffbeb;border-color:#fde68a;color:#92400e}.datacard.unified .datacard-action-btn.delete:hover{background:#fef2f2;border-color:#fecaca;color:#991b1b}.datacard.unified .datacard-action-btn.duplicate:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}.datacard.unified .unified-stats-row{display:flex;gap:var(--unified-gap-lg);margin-bottom:var(--unified-gap-md)}.datacard.unified .unified-stat-item{display:flex;align-items:center;gap:var(--unified-gap-md);flex:1;padding:var(--unified-gap-md);background:var(--unified-stat-bg);border-radius:var(--unified-gap-sm);min-width:0}.datacard.unified .unified-stat-icon{font-size:20px;flex-shrink:0}.datacard.unified .unified-stat-content{display:flex;flex-direction:column;gap:2px;min-width:0}.datacard.unified .unified-stat-value{font-size:var(--unified-font-stat-value);font-weight:600;color:var(--unified-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1}.datacard.unified .unified-stat-label{font-size:var(--unified-font-stat-label);color:var(--unified-text-secondary);white-space:nowrap;line-height:1}.datacard.unified .unified-description{margin:0;font-size:13px;color:var(--unified-text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.datacard.unified .unified-badge{display:inline-flex;padding:3px 7px;border-radius:5px;font-size:9px;color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.5px;line-height:1;box-shadow:0 1px 2px #00000014}.datacard.unified .unified-tags-row{display:flex;gap:5px;flex-wrap:wrap}.datacard.unified .unified-quick-actions{display:flex;gap:var(--unified-gap-md);padding-top:var(--unified-gap-lg);margin-top:auto;border-top:1px solid var(--unified-stat-border)}.datacard.unified .unified-quick-action-btn{flex:1;padding:var(--unified-gap-md);background:var(--unified-stat-bg);border:1px solid var(--unified-stat-border);border-radius:var(--unified-gap-md);font-size:var(--unified-font-subtitle);font-weight:500;color:var(--unified-text-secondary);cursor:pointer;transition:all .2s;text-align:center}.datacard.unified .unified-quick-action-btn:hover{background:var(--unified-card-bg);border-color:var(--unified-card-border-hover);color:var(--unified-text-primary)}.datacard.unified.datacard--dark{--unified-card-bg: #1e293b;--unified-card-border: #475569;--unified-card-border-hover: #64748b;--unified-text-primary: #f1f5f9;--unified-text-secondary: #cbd5e1;--unified-stat-bg: #0f172a;--unified-stat-border: #475569;--unified-btn-bg: #334155;--unified-btn-border: #475569;--unified-btn-hover-bg: #475569;--unified-btn-hover-border: #64748b}@media(max-width:768px){.datacard.unified{--unified-card-padding: 12px;--unified-icon-size: 36px;--unified-font-title: 15px;--unified-font-subtitle: 11px}.datacard.unified .unified-stats-row{flex-wrap:wrap}.datacard.unified .unified-stat-item{min-width:calc(50% - 6px)}}@media(max-width:480px){.datacard.unified{--unified-card-padding: 10px;--unified-icon-size: 32px;--unified-gap-lg: 10px;--unified-gap-md: 6px}.datacard.unified .unified-stat-item{min-width:100%}}.datacard--selected{position:relative;z-index:1}.datacard--selected .datacard-wrapper,.datacard--selected .pm-card,.datacard--selected .pm-card-default,.datacard--selected .pm-card-compact{border:none!important;box-shadow:none!important}.datacard--selected .card{border:2px solid #f59e0b!important;border-left:3px solid #f59e0b!important;box-shadow:0 0 0 3px #f59e0b26,0 4px 6px #0000001a!important;background:linear-gradient(to right,#fffbeb,#fff);transform:none!important}.datacard--selected .card:hover{transform:none!important;box-shadow:0 0 0 3px #f59e0b26,0 4px 6px #0000001a!important}.datacard-checkbox{appearance:none;width:20px;height:20px;border:2px solid #d1d5db;border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0;position:relative;background:#fff}.datacard-checkbox:checked{background:#f59e0b;border-color:#f59e0b}.datacard-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700;line-height:1}.datacard-checkbox:hover{border-color:#f59e0b}.datacard--selected:focus-within,.datacard--selected:focus{outline:none!important}.datacard--dark.datacard--selected .card{background:linear-gradient(to right,#451a03,#1e293b);border-color:#f59e0b}.datacard--dark .datacard-checkbox{background:#1e293b;border-color:#475569}.datacard--dark .datacard-checkbox:checked{background:#f59e0b;border-color:#f59e0b}.datacard.compact{--card-padding: 12px;--icon-size: 32px;--icon-radius: 8px;--btn-size: 28px;--btn-radius: 7px;--font-title: 12px;--font-title-weight: 700;--font-subtitle: 11px;--font-subtitle-weight: 400;--chip-padding: 6px 10px;--chip-font-size: 11px;--chip-gap: 8px;--footer-gap: 8px;--footer-btn-height: 32px}.datacard.compact .card{padding:var(--card-padding);min-height:auto}.datacard.compact .datacard-header{margin-bottom:10px}.datacard.compact .datacard-icon,.datacard.compact .datacard-image{width:var(--icon-size);height:var(--icon-size);border-radius:var(--icon-radius);font-size:16px}.datacard.compact .datacard-title{font-size:var(--font-title);font-weight:var(--font-title-weight)}.datacard.compact .datacard-subtitle{font-size:var(--font-subtitle);font-weight:var(--font-subtitle-weight)}.datacard.compact .datacard-header-actions{gap:6px}.datacard.compact .datacard-action-btn{width:var(--btn-size);height:var(--btn-size);border-radius:var(--btn-radius);font-size:12px;padding:0;min-width:var(--btn-size)}.datacard.compact .datacard-action-btn:hover{transform:scale(1.05)}.datacard.compact .datacard-sections{gap:var(--chip-gap)}.datacard.compact .datacard-section{margin-bottom:0}.datacard.compact .datacard-section-content{display:flex;gap:var(--chip-gap);flex-wrap:wrap}.compact-chip{display:inline-flex;align-items:center;gap:4px;padding:var(--chip-padding);background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;font-size:var(--chip-font-size);font-weight:600;color:#475569;line-height:1;white-space:nowrap}.compact-chip-icon{font-size:12px;line-height:1}.datacard.compact .unified-quick-actions{margin-top:10px;gap:var(--footer-gap)}.datacard.compact .unified-quick-action-btn{height:var(--footer-btn-height);font-size:12px;padding:6px 12px}.datacard.compact.unified{--unified-card-padding: 12px;--unified-icon-size: 32px;--unified-font-title: 12px;--unified-font-subtitle: 11px;--unified-gap-lg: 10px;--unified-gap-md: 6px;--unified-gap-sm: 4px}.datacard.compact.datacard--dark .compact-chip{background:#374151;color:#e5e7eb;border-color:#4b5563}@media(max-width:640px){.datacard.compact{--card-padding: 10px;--icon-size: 28px;--chip-gap: 6px;--chip-padding: 5px 8px;--chip-font-size: 10px}.compact-chip{font-size:10px}}:root{--pm-radius-none: 0;--pm-radius-xs: 2px;--pm-radius-sm: 4px;--pm-radius-md: 8px;--pm-radius-lg: 12px;--pm-radius-xl: 16px;--pm-radius-2xl: 24px;--pm-radius-full: 9999px;--pm-shadow-none: none;--pm-shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--pm-shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--pm-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--pm-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--pm-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--pm-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--pm-shadow-button: var(--pm-shadow-sm);--pm-shadow-button-hover: var(--pm-shadow-md);--pm-shadow-button-active: var(--pm-shadow-xs);--pm-shadow-card: var(--pm-shadow-md);--pm-shadow-card-hover: var(--pm-shadow-lg);--pm-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--pm-transition-base: .2s cubic-bezier(.4, 0, .2, 1);--pm-transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--pm-focus-ring: 0 0 0 3px rgb(66 153 225 / .5);--pm-focus-ring-offset: 2px}[data-theme-type=ios]{--pm-radius-xs: 4px;--pm-radius-sm: 8px;--pm-radius-md: 12px;--pm-radius-lg: 16px;--pm-radius-xl: 20px;--pm-radius-2xl: 28px;--pm-shadow-xs: 0 1px 3px 0 rgb(0 0 0 / .04);--pm-shadow-sm: 0 2px 4px 0 rgb(0 0 0 / .06);--pm-shadow-md: 0 4px 8px 0 rgb(0 0 0 / .08);--pm-shadow-lg: 0 8px 16px 0 rgb(0 0 0 / .1);--pm-shadow-xl: 0 16px 24px 0 rgb(0 0 0 / .12);--pm-shadow-2xl: 0 24px 48px 0 rgb(0 0 0 / .15);--pm-shadow-button: 0 1px 3px 0 rgb(0 0 0 / .06);--pm-shadow-button-hover: 0 2px 6px 0 rgb(0 0 0 / .1);--pm-shadow-button-active: 0 1px 2px 0 rgb(0 0 0 / .05);--pm-shadow-card: 0 2px 8px 0 rgb(0 0 0 / .08);--pm-shadow-card-hover: 0 4px 12px 0 rgb(0 0 0 / .12);--pm-transition-fast: .2s cubic-bezier(.25, .1, .25, 1);--pm-transition-base: .3s cubic-bezier(.25, .1, .25, 1);--pm-transition-slow: .4s cubic-bezier(.25, .1, .25, 1);--pm-focus-ring: 0 0 0 4px rgb(0 122 255 / .4)}[data-theme-type=windows]{--pm-radius-xs: 0;--pm-radius-sm: 0;--pm-radius-md: 2px;--pm-radius-lg: 4px;--pm-radius-xl: 6px;--pm-radius-2xl: 8px;--pm-shadow-xs: 0 0 0 1px rgb(0 0 0 / .08);--pm-shadow-sm: 0 0 0 1px rgb(0 0 0 / .1);--pm-shadow-md: 0 0 0 1px rgb(0 0 0 / .15), 0 1px 2px 0 rgb(0 0 0 / .05);--pm-shadow-lg: 0 0 0 1px rgb(0 0 0 / .2), 0 2px 4px 0 rgb(0 0 0 / .08);--pm-shadow-xl: 0 0 0 1px rgb(0 0 0 / .25), 0 4px 8px 0 rgb(0 0 0 / .1);--pm-shadow-2xl: 0 0 0 1px rgb(0 0 0 / .3), 0 8px 16px 0 rgb(0 0 0 / .15);--pm-shadow-button: 0 0 0 1px rgb(0 0 0 / .15);--pm-shadow-button-hover: 0 0 0 1px rgb(0 0 0 / .2);--pm-shadow-button-active: 0 0 0 1px rgb(0 0 0 / .25), inset 0 1px 2px 0 rgb(0 0 0 / .1);--pm-shadow-card: 0 0 0 1px rgb(0 0 0 / .12);--pm-shadow-card-hover: 0 0 0 1px rgb(0 0 0 / .18);--pm-transition-fast: .1s cubic-bezier(.4, 0, 1, 1);--pm-transition-base: .15s cubic-bezier(.4, 0, 1, 1);--pm-transition-slow: .2s cubic-bezier(.4, 0, 1, 1);--pm-focus-ring: 0 0 0 2px rgb(0 0 0 / .4);--pm-focus-ring-offset: 0}:root{--pm-button-radius: var(--pm-radius-md);--pm-button-shadow: var(--pm-shadow-button);--pm-button-shadow-hover: var(--pm-shadow-button-hover);--pm-card-radius: var(--pm-radius-lg);--pm-card-shadow: var(--pm-shadow-card);--pm-card-shadow-hover: var(--pm-shadow-card-hover);--pm-input-radius: var(--pm-radius-md);--pm-input-shadow-focus: var(--pm-focus-ring);--pm-modal-radius: var(--pm-radius-xl);--pm-modal-shadow: var(--pm-shadow-2xl);--pm-dropdown-radius: var(--pm-radius-lg);--pm-dropdown-shadow: var(--pm-shadow-lg);--pm-tooltip-radius: var(--pm-radius-sm);--pm-tooltip-shadow: var(--pm-shadow-md);--pm-badge-radius: var(--pm-radius-full);--pm-avatar-radius: var(--pm-radius-full);--pm-tab-radius: var(--pm-radius-md)}:root{--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", "Monaco", "Cascadia Code", "Consolas", "Courier New", monospace;--font-size-2xs: .625rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em}:root{--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-200: #bfdbfe;--color-primary-300: #93c5fd;--color-primary-400: #60a5fa;--color-primary-500: #3b82f6;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-primary-800: #1e40af;--color-primary-900: #1e3a8a;--color-primary-950: #172554;--color-success-50: #f0fdf4;--color-success-100: #dcfce7;--color-success-200: #bbf7d0;--color-success-300: #86efac;--color-success-400: #4ade80;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-700: #15803d;--color-success-800: #166534;--color-success-900: #14532d;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-200: #fde68a;--color-warning-300: #fcd34d;--color-warning-400: #fbbf24;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-warning-800: #92400e;--color-warning-900: #78350f;--color-danger-50: #fef2f2;--color-danger-100: #fee2e2;--color-danger-200: #fecaca;--color-danger-300: #fca5a5;--color-danger-400: #f87171;--color-danger-500: #ef4444;--color-danger-600: #dc2626;--color-danger-700: #b91c1c;--color-danger-800: #991b1b;--color-danger-900: #7f1d1d;--color-info-50: #f0f9ff;--color-info-100: #e0f2fe;--color-info-200: #bae6fd;--color-info-300: #7dd3fc;--color-info-400: #38bdf8;--color-info-500: #0ea5e9;--color-info-600: #0284c7;--color-info-700: #0369a1;--color-info-800: #075985;--color-info-900: #0c4a6e;--color-neutral-50: #fafaf9;--color-neutral-100: #f5f5f4;--color-neutral-200: #e7e5e4;--color-neutral-300: #d6d3d1;--color-neutral-400: #a8a29e;--color-neutral-500: #78716c;--color-neutral-600: #57534e;--color-neutral-700: #44403c;--color-neutral-800: #292524;--color-neutral-900: #1c1917;--color-neutral-950: #0c0a09;--color-background: #ffffff;--color-background-alt: #fafaf9;--color-surface: #ffffff;--color-surface-raised: #ffffff;--color-surface-overlay: rgba(0, 0, 0, .5);--color-border: #e7e5e4;--color-border-strong: #d6d3d1;--color-border-subtle: #f5f5f4;--color-text-primary: #1c1917;--color-text-secondary: #57534e;--color-text-tertiary: #a8a29e;--color-text-disabled: #d6d3d1;--color-text-inverse: #ffffff;--color-icon-primary: #44403c;--color-icon-secondary: #78716c;--color-icon-tertiary: #a8a29e;--color-icon-inverse: #ffffff;--color-hover: rgba(0, 0, 0, .05);--color-active: rgba(0, 0, 0, .1);--color-focus: rgba(59, 130, 246, .2);--color-disabled: #f5f5f4;--color-selection-bg: rgba(59, 130, 246, .1);--color-selection-border: var(--color-primary-500)}@media(prefers-color-scheme:dark){:root{--color-background: #0f0f0f;--color-background-alt: #1a1a1a;--color-surface: #1a1a1a;--color-surface-raised: #262626;--color-surface-overlay: rgba(0, 0, 0, .8);--color-border: #2a2a2a;--color-border-strong: #404040;--color-border-subtle: #1f1f1f;--color-text-primary: #fafaf9;--color-text-secondary: #a8a29e;--color-text-tertiary: #78716c;--color-text-disabled: #44403c;--color-text-inverse: #1c1917;--color-icon-primary: #f5f5f4;--color-icon-secondary: #a8a29e;--color-icon-tertiary: #78716c;--color-icon-inverse: #1c1917;--color-hover: rgba(255, 255, 255, .1);--color-active: rgba(255, 255, 255, .15);--color-focus: rgba(59, 130, 246, .3);--color-disabled: #262626;--color-selection-bg: rgba(59, 130, 246, .2)}}:root{--spacing-0: 0;--spacing-px: 1px;--spacing-0-5: .125rem;--spacing-1: .25rem;--spacing-1-5: .375rem;--spacing-2: .5rem;--spacing-2-5: .625rem;--spacing-3: .75rem;--spacing-3-5: .875rem;--spacing-4: 1rem;--spacing-4-5: 1.125rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-9: 2.25rem;--spacing-10: 2.5rem;--spacing-11: 2.75rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-32: 8rem;--spacing-40: 10rem;--spacing-48: 12rem;--spacing-56: 14rem;--spacing-64: 16rem}:root{--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .05);--shadow-none: none;--shadow-primary: 0 4px 14px 0 rgba(59, 130, 246, .15);--shadow-success: 0 4px 14px 0 rgba(34, 197, 94, .15);--shadow-warning: 0 4px 14px 0 rgba(245, 158, 11, .15);--shadow-danger: 0 4px 14px 0 rgba(239, 68, 68, .15)}@media(prefers-color-scheme:dark){:root{--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .4), 0 1px 2px -1px rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .5)}}:root{--radius-none: 0;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px}:root{--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-elastic: cubic-bezier(.68, -.55, .265, 1.55);--ease-sharp: cubic-bezier(.4, 0, .6, 1);--duration-instant: 75ms;--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--duration-slowest: .7s;--transition-all: all var(--duration-normal) var(--ease-smooth);--transition-colors: color var(--duration-fast) var(--ease-smooth), background-color var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth);--transition-transform: transform var(--duration-normal) var(--ease-smooth);--transition-opacity: opacity var(--duration-fast) var(--ease-smooth)}:root{--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-notification: 1080;--z-top: 9999}:root{--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}:root{--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--sidebar-width: 280px;--sidebar-collapsed-width: 64px;--header-height: 64px;--footer-height: 56px}html{scroll-behavior:smooth}*:focus{outline:none}*:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--color-border: #000000;--color-text-secondary: var(--color-text-primary)}}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}}:root{--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .08), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 8px 10px rgba(0, 0, 0, .06);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .12), 0 12px 24px rgba(0, 0, 0, .08);--shadow-primary: 0 10px 24px rgba(99, 102, 241, .15), 0 4px 8px rgba(99, 102, 241, .1);--shadow-success: 0 10px 24px rgba(16, 185, 129, .15), 0 4px 8px rgba(16, 185, 129, .1);--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--text-5xl: 48px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--primary-50: #eef2ff;--primary-100: #e0e7ff;--primary-200: #c7d2fe;--primary-300: #a5b4fc;--primary-400: #818cf8;--primary-500: #6366f1;--primary-600: #4f46e5;--primary-700: #4338ca;--primary-800: #3730a3;--primary-900: #312e81;--success-50: #ecfdf5;--success-100: #d1fae5;--success-200: #a7f3d0;--success-300: #6ee7b7;--success-400: #34d399;--success-500: #10b981;--success-600: #059669;--success-700: #047857;--success-800: #065f46;--success-900: #064e3b;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-200: #fde68a;--warning-300: #fcd34d;--warning-400: #fbbf24;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--warning-800: #92400e;--warning-900: #78350f;--error-50: #fef2f2;--error-100: #fee2e2;--error-200: #fecaca;--error-300: #fca5a5;--error-400: #f87171;--error-500: #ef4444;--error-600: #dc2626;--error-700: #b91c1c;--error-800: #991b1b;--error-900: #7f1d1d;--neutral-50: #f8fafc;--neutral-100: #f1f5f9;--neutral-200: #e2e8f0;--neutral-300: #cbd5e1;--neutral-400: #94a3b8;--neutral-500: #64748b;--neutral-600: #475569;--neutral-700: #334155;--neutral-800: #1e293b;--neutral-900: #0f172a;--bg-base: #fafbfc;--bg-elevated: #ffffff;--bg-subtle: #f8fafc;--bg-muted: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-disabled: #cbd5e1;--border-light: #f1f5f9;--border-base: #e2e8f0;--border-strong: #cbd5e1;--border-focus: #6366f1;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .4s cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.68, -.55, .265, 1.55);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-notification: 800;--z-max: 9999;--touch-target-min: 44px;--touch-target-comfortable: 48px;--touch-target-large: 56px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.card-modern{background:var(--bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-base);transition:all var(--transition-base)}.card-modern:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.card-modern:active{transform:translateY(-2px) scale(.98)}.btn-gradient-primary{background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);color:#fff;border:none;border-radius:var(--radius-lg);padding:12px 24px;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-primary);min-height:var(--touch-target-comfortable)}.btn-gradient-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl),var(--shadow-primary)}.btn-gradient-primary:active{transform:translateY(0) scale(.98)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--font-size-base, 1rem);color:var(--color-text-primary, rgba(0, 0, 0, .87));background-color:var(--color-background, #ffffff)}code{font-family:var(--font-family-mono, source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace)}#root{min-height:100vh}.app-container{width:100%;min-height:100vh}.select-field-container.select-field-open{z-index:999999!important}.select-field-dropdown{position:absolute!important;z-index:999999!important}.form-field:has(.select-field-open){z-index:999998!important}.dynamic-form{width:100%}.form-title{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#1a1a1a}.form-description{margin:0 0 1.5rem;color:#666;font-size:.9rem}.form-sections{display:flex;flex-direction:column;gap:2rem}.dynamic-form-section{display:flex;flex-direction:column;gap:1rem}.section-title{margin:0 0 .25rem;font-size:1.2rem;font-weight:600;color:#333;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.section-description{margin:0 0 1rem;color:#666;font-size:.875rem}.section-fields{display:grid;gap:1rem}.field-wrapper{min-width:0}.form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}@media(max-width:768px){.section-fields{grid-template-columns:1fr!important}.field-wrapper{grid-column:span 1!important}}.configurable-datatable{width:100%}.datatable-header{padding:0 0 12px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.create-btn{display:inline-flex;align-items:center;gap:6px;font-weight:500;box-shadow:0 1px 3px #007bff26}.create-btn:hover:not(:disabled){box-shadow:0 2px 6px #007bff40;transform:translateY(-1px)}.create-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #007bff26}.btn-icon{font-size:16px;line-height:1;display:inline-flex;align-items:center}.btn-sm .btn-icon{font-size:14px}.btn-text{line-height:1}.btn-sm .btn-text{font-size:13px}.datatable-form-dialog{display:flex;flex-direction:column;gap:24px}.dialog-content{max-height:60vh;overflow-y:auto;padding:8px;margin:0 -8px}.form-field-wrapper{width:100%}.form-field-container{display:flex;flex-direction:column;margin-bottom:4px;width:100%}.form-label{font-size:14px;font-weight:500;color:#333;margin-bottom:8px;display:block}.required-mark{color:#dc3545;font-weight:600}.datatable-form-dialog .form-field-container>div{margin-bottom:0}.simple-form-field{display:flex;flex-direction:column;gap:6px}.simple-form-field label{font-size:14px;font-weight:500;color:#333}.simple-form-field .form-input,.simple-form-field .form-select,.simple-form-field .form-textarea,.form-select,.form-textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.simple-form-field .form-input:focus,.simple-form-field .form-select:focus,.simple-form-field .form-textarea:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.simple-form-field .form-input:disabled,.simple-form-field .form-select:disabled,.simple-form-field .form-textarea:disabled,.form-select:disabled,.form-textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.field-error{color:#dc3545;font-size:12px;margin-top:4px}.form-textarea{resize:vertical;min-height:80px}.datatable-confirm-dialog{padding:20px;text-align:center}.confirm-icon{font-size:48px;margin-bottom:16px}.confirm-icon-danger{color:#dc3545}.confirm-icon-warning{color:#ffc107}.confirm-icon-info{color:#17a2b8}.confirm-message{font-size:16px;color:#333;margin-bottom:24px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #eee}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.5;font-family:inherit;position:relative;overflow:hidden}.btn-sm{padding:6px 12px;font-size:13px;border-radius:4px;gap:6px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus{outline:2px solid currentColor;outline-offset:2px}.btn-primary{background-color:#007bff;color:#fff;border:1px solid #007bff}.btn-primary:hover:not(:disabled){background-color:#0056b3;border-color:#0056b3}.btn-primary:active:not(:disabled){background-color:#004085;border-color:#004085}.btn-secondary{background-color:#6c757d;color:#fff;border:1px solid #6c757d}.btn-secondary:hover:not(:disabled){background-color:#545b62;border-color:#545b62}.btn-secondary:active:not(:disabled){background-color:#3d4248;border-color:#3d4248}.btn-danger{background-color:#dc3545;color:#fff;border:1px solid #dc3545}.btn-danger:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.btn-danger:active:not(:disabled){background-color:#a71d2a;border-color:#a71d2a}.btn-success{background-color:#28a745;color:#fff;border:1px solid #28a745}.btn-success:hover:not(:disabled){background-color:#218838;border-color:#218838}.btn-success:active:not(:disabled){background-color:#1a6929;border-color:#1a6929}.btn-warning{background-color:#ffc107;color:#212529;border:1px solid #ffc107}.btn-warning:hover:not(:disabled){background-color:#e0a800;border-color:#e0a800}.btn-warning:active:not(:disabled){background-color:#c69500;border-color:#c69500}.clickable-cell-button{background:none;border:none;color:#3b82f6;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;font-weight:500;padding:0;margin:0;border-radius:3px;transition:all .15s ease;font-size:inherit;font-family:inherit;text-align:left;width:auto;display:inline;position:relative}.clickable-cell-button:hover{text-decoration-color:#3b82f6;color:#2563eb;background-color:transparent}.clickable-cell-button:active{color:#1d4ed8}.clickable-cell-button:focus{outline:2px solid #3b82f6;outline-offset:2px;border-radius:2px}.clickable-cell-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.action-btn{padding:6px;border:none;border-radius:4px;font-size:16px;line-height:1;cursor:pointer;transition:all .15s ease;background:transparent;display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px}.action-btn:hover{transform:scale(1.1)}.action-btn:active{transform:scale(.95)}.action-btn:focus{outline:2px solid currentColor;outline-offset:2px}.action-btn-primary{color:#007bff}.action-btn-primary:hover{background-color:#e7f1ff;color:#0056b3}.action-btn-danger{color:#dc3545}.action-btn-danger:hover{background-color:#f8d7da;color:#bd2130}.action-btn-success{color:#28a745}.action-btn-success:hover{background-color:#d4edda;color:#1e7e34}.action-btn-warning{color:#ffc107}.action-btn-warning:hover{background-color:#fff3cd;color:#d39e00}.dialog-content{text-align:center;padding:20px}.dialog-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;margin:0 auto 24px}.dialog-icon svg{width:48px;height:48px}.dialog-message{font-size:16px;line-height:1.6;color:#374151;margin:0 0 16px}.dialog-warning{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:12px 16px;margin-top:16px;font-size:14px;color:#92400e;text-align:left}.dialog-warning strong{display:block;margin-bottom:4px}.datatable-delete-dialog .delete-icon,.datatable-bulk-action-dialog.danger .danger-icon{background:#fee2e2;color:#dc2626}.datatable-bulk-action-dialog.warning .warning-icon{background:#fef3c7;color:#d97706}.datatable-bulk-action-dialog.info .info-icon{background:#dbeafe;color:#2563eb}.datatable-bulk-action-dialog.success .success-icon{background:#d1fae5;color:#059669}.datatable-success-dialog .success-icon{background:#d1fae5;color:#059669;animation:successPulse .6s ease-out}@keyframes successPulse{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.edit-form{text-align:left;max-height:60vh;overflow-y:auto;padding:24px}.form-field{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-label .required{color:#dc2626;margin-left:4px}.form-field input,.form-field textarea,.form-field select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;transition:all .2s;font-family:inherit}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-field input.error,.form-field textarea.error,.form-field select.error{border-color:#dc2626}.form-field input.error:focus,.form-field textarea.error:focus,.form-field select.error:focus{box-shadow:0 0 0 3px #dc26261a}.form-field input:disabled,.form-field textarea:disabled,.form-field select:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.error-message{display:block;font-size:12px;color:#dc2626;margin-top:6px;font-weight:500}.btn-primary{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{color:#9ca3af;cursor:not-allowed}.btn-danger{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{background:#fca5a5;cursor:not-allowed}@media(max-width:640px){.dialog-content{padding:16px}.dialog-icon{width:64px;height:64px;margin-bottom:16px}.dialog-icon svg{width:40px;height:40px}.dialog-message{font-size:14px}.edit-form{padding:16px}}.pm-flex{display:flex}.pm-flex-inline{display:inline-flex}.pm-flex-row{flex-direction:row}.pm-flex-row-reverse{flex-direction:row-reverse}.pm-flex-column{flex-direction:column}.pm-flex-column-reverse{flex-direction:column-reverse}.pm-flex-wrap{flex-wrap:wrap}.pm-flex-nowrap{flex-wrap:nowrap}.pm-flex-wrap-reverse{flex-wrap:wrap-reverse}.pm-flex-justify-start{justify-content:flex-start}.pm-flex-justify-end{justify-content:flex-end}.pm-flex-justify-center{justify-content:center}.pm-flex-justify-between{justify-content:space-between}.pm-flex-justify-around{justify-content:space-around}.pm-flex-justify-evenly{justify-content:space-evenly}.pm-flex-align-start{align-items:flex-start}.pm-flex-align-end{align-items:flex-end}.pm-flex-align-center{align-items:center}.pm-flex-align-baseline{align-items:baseline}.pm-flex-align-stretch{align-items:stretch}.pm-flex-align-content-start{align-content:flex-start}.pm-flex-align-content-end{align-content:flex-end}.pm-flex-align-content-center{align-content:center}.pm-flex-align-content-between{align-content:space-between}.pm-flex-align-content-around{align-content:space-around}.pm-flex-align-content-stretch{align-content:stretch}.pm-flex-gap-0{gap:0}.pm-flex-gap-1{gap:4px}.pm-flex-gap-2{gap:8px}.pm-flex-gap-3{gap:12px}.pm-flex-gap-4{gap:16px}.pm-flex-gap-5{gap:20px}.pm-flex-gap-6{gap:24px}.pm-flex-gap-8{gap:32px}.pm-flex-gap-10{gap:40px}.pm-flex-gap-12{gap:48px}.pm-flex-gap-16{gap:64px}.pm-flex-gap-20{gap:80px}.pm-flex-gap-24{gap:96px}.pm-flex-row-gap-0{row-gap:0}.pm-flex-row-gap-1{row-gap:4px}.pm-flex-row-gap-2{row-gap:8px}.pm-flex-row-gap-3{row-gap:12px}.pm-flex-row-gap-4{row-gap:16px}.pm-flex-row-gap-5{row-gap:20px}.pm-flex-row-gap-6{row-gap:24px}.pm-flex-row-gap-8{row-gap:32px}.pm-flex-row-gap-10{row-gap:40px}.pm-flex-row-gap-12{row-gap:48px}.pm-flex-column-gap-0{column-gap:0}.pm-flex-column-gap-1{column-gap:4px}.pm-flex-column-gap-2{column-gap:8px}.pm-flex-column-gap-3{column-gap:12px}.pm-flex-column-gap-4{column-gap:16px}.pm-flex-column-gap-5{column-gap:20px}.pm-flex-column-gap-6{column-gap:24px}.pm-flex-column-gap-8{column-gap:32px}.pm-flex-column-gap-10{column-gap:40px}.pm-flex-column-gap-12{column-gap:48px}.pm-flex-grow-0{flex-grow:0}.pm-flex-grow-1{flex-grow:1}.pm-flex-grow-2{flex-grow:2}.pm-flex-grow-3{flex-grow:3}.pm-flex-shrink-0{flex-shrink:0}.pm-flex-shrink-1{flex-shrink:1}.pm-flex-align-self-auto{align-self:auto}.pm-flex-align-self-start{align-self:flex-start}.pm-flex-align-self-end{align-self:flex-end}.pm-flex-align-self-center{align-self:center}.pm-flex-align-self-baseline{align-self:baseline}.pm-flex-align-self-stretch{align-self:stretch}.pm-flex-order-0{order:0}.pm-flex-order-1{order:1}.pm-flex-order-2{order:2}.pm-flex-order-3{order:3}.pm-flex-order-4{order:4}.pm-flex-order-5{order:5}.pm-flex-order-first{order:-1}.pm-flex-order-last{order:999}.pm-row{display:flex;flex-wrap:wrap;width:100%}.pm-row-gutter-0{margin-left:0;margin-right:0}.pm-row-gutter-0>.pm-col{padding-left:0;padding-right:0}.pm-row-gutter-1{margin-left:-2px;margin-right:-2px}.pm-row-gutter-1>.pm-col{padding-left:2px;padding-right:2px}.pm-row-gutter-2{margin-left:-4px;margin-right:-4px}.pm-row-gutter-2>.pm-col{padding-left:4px;padding-right:4px}.pm-row-gutter-3{margin-left:-6px;margin-right:-6px}.pm-row-gutter-3>.pm-col{padding-left:6px;padding-right:6px}.pm-row-gutter-4{margin-left:-8px;margin-right:-8px}.pm-row-gutter-4>.pm-col{padding-left:8px;padding-right:8px}.pm-row-gutter-5{margin-left:-10px;margin-right:-10px}.pm-row-gutter-5>.pm-col{padding-left:10px;padding-right:10px}.pm-row-gutter-6{margin-left:-12px;margin-right:-12px}.pm-row-gutter-6>.pm-col{padding-left:12px;padding-right:12px}.pm-row-no-gutters{margin-left:0;margin-right:0}.pm-row-no-gutters>.pm-col{padding-left:0;padding-right:0}.pm-col{flex:1 0 0%;max-width:100%;position:relative;padding-left:6px;padding-right:6px}.pm-col-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-3{flex:0 0 25%;max-width:25%}.pm-col-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-6{flex:0 0 50%;max-width:50%}.pm-col-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-9{flex:0 0 75%;max-width:75%}.pm-col-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-12{flex:0 0 100%;max-width:100%}.pm-col-offset-1{margin-left:8.333333%}.pm-col-offset-2{margin-left:16.666667%}.pm-col-offset-3{margin-left:25%}.pm-col-offset-4{margin-left:33.333333%}.pm-col-offset-5{margin-left:41.666667%}.pm-col-offset-6{margin-left:50%}.pm-col-offset-7{margin-left:58.333333%}.pm-col-offset-8{margin-left:66.666667%}.pm-col-offset-9{margin-left:75%}.pm-col-offset-10{margin-left:83.333333%}.pm-col-offset-11{margin-left:91.666667%}@media(max-width:575.98px){.pm-col-xs-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-xs-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-xs-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-xs-3{flex:0 0 25%;max-width:25%}.pm-col-xs-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-xs-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-xs-6{flex:0 0 50%;max-width:50%}.pm-col-xs-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-xs-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-xs-9{flex:0 0 75%;max-width:75%}.pm-col-xs-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-xs-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-xs-12{flex:0 0 100%;max-width:100%}.pm-flex-mobile-row{flex-direction:row}.pm-flex-mobile-row-reverse{flex-direction:row-reverse}.pm-flex-mobile-column{flex-direction:column}.pm-flex-mobile-column-reverse{flex-direction:column-reverse}}@media(min-width:576px){.pm-col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-sm-3{flex:0 0 25%;max-width:25%}.pm-col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-sm-6{flex:0 0 50%;max-width:50%}.pm-col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-sm-9{flex:0 0 75%;max-width:75%}.pm-col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-sm-12{flex:0 0 100%;max-width:100%}}@media(min-width:768px){.pm-col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-md-3{flex:0 0 25%;max-width:25%}.pm-col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-md-6{flex:0 0 50%;max-width:50%}.pm-col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-md-9{flex:0 0 75%;max-width:75%}.pm-col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-md-12{flex:0 0 100%;max-width:100%}.pm-flex-tablet-row{flex-direction:row}.pm-flex-tablet-row-reverse{flex-direction:row-reverse}.pm-flex-tablet-column{flex-direction:column}.pm-flex-tablet-column-reverse{flex-direction:column-reverse}}@media(min-width:992px){.pm-col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-lg-3{flex:0 0 25%;max-width:25%}.pm-col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-lg-6{flex:0 0 50%;max-width:50%}.pm-col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-lg-9{flex:0 0 75%;max-width:75%}.pm-col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-lg-12{flex:0 0 100%;max-width:100%}}@media(min-width:1200px){.pm-col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.pm-col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.pm-col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.pm-col-xl-3{flex:0 0 25%;max-width:25%}.pm-col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.pm-col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.pm-col-xl-6{flex:0 0 50%;max-width:50%}.pm-col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.pm-col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.pm-col-xl-9{flex:0 0 75%;max-width:75%}.pm-col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.pm-col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.pm-col-xl-12{flex:0 0 100%;max-width:100%}}.form-field-help-demo{max-width:800px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:#333}.form-field-help-demo__header{text-align:center;margin-bottom:3rem}.form-field-help-demo__header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#2c3e50}.form-field-help-demo__header p{font-size:1.1rem;color:#666;max-width:600px;margin:0 auto}.form-field-help-demo__form{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem}.form-field-help-demo__section{margin-bottom:3rem}.form-field-help-demo__section:last-child{margin-bottom:2rem}.form-field-help-demo__section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:#34495e;border-bottom:2px solid #e9ecef;padding-bottom:.5rem}.form-field-help-demo .form-field{margin-bottom:1.5rem}.form-field__checkbox-container{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.form-field__checkbox{width:1.2rem;height:1.2rem;accent-color:#007bff}.form-field__checkbox-label{margin:0;cursor:pointer;user-select:none;font-weight:500}.form-field__radio-group{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0}.form-field__radio-option{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:6px;transition:background-color .15s ease}.form-field__radio-option:hover{background-color:#f8f9fa}.form-field__radio{width:1.2rem;height:1.2rem;accent-color:#007bff}.form-field__radio-label{margin:0;cursor:pointer;user-select:none;font-weight:500}.form-field-help-demo__actions{display:flex;gap:1rem;justify-content:center;padding-top:1rem;border-top:1px solid #e9ecef}.form-field-help-demo__submit-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #007bff33}.form-field-help-demo__submit-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.form-field-help-demo__submit-btn:active{transform:translateY(0)}.form-field-help-demo__reset-btn{background:#6c757d;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.form-field-help-demo__reset-btn:hover{background:#545b62;transform:translateY(-1px)}.form-field-help-demo__reset-btn:active{transform:translateY(0)}.form-field-help-demo__info{background:#f8f9fa;padding:1.5rem;border-radius:8px;border-left:4px solid #007bff}.form-field-help-demo__info h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:#495057}.form-field-help-demo__info pre{background:#fff;padding:1rem;border-radius:4px;border:1px solid #dee2e6;font-size:.875rem;overflow-x:auto;margin-bottom:1rem}.form-field-help-demo__info pre:last-child{margin-bottom:0}@media(max-width:768px){.form-field-help-demo{padding:1rem}.form-field-help-demo__header h1{font-size:2rem}.form-field-help-demo__form{padding:1.5rem}.form-field-help-demo__actions{flex-direction:column;align-items:stretch}.form-field-help-demo__submit-btn,.form-field-help-demo__reset-btn{width:100%}}.form-field-help-demo .form-field__label-with-help{display:flex;align-items:center;gap:.5rem}.form-field-help-demo .form-field__help-icon{color:#0dcaf0;opacity:.8;transition:all .2s ease}.form-field-help-demo .form-field__help-icon:hover{color:#007bff;opacity:1;transform:scale(1.1)}.form-field-help-demo .form-field__input-container:focus-within{box-shadow:0 0 0 .25rem #0d6efd40;border-color:#86b7fe}.form-field-help-demo .form-field__counter{text-align:right;font-size:.8rem;color:#6c757d;margin-top:.25rem}.form-field-help-demo .form-field--error .form-field__input-container{border-color:#dc3545;box-shadow:0 0 0 .25rem #dc354526}.form-field-help-demo .form-field__error-message{color:#dc3545;font-size:.875rem;margin-top:.25rem;font-weight:500}.form-field-help-demo .form-field--success .form-field__input-container{border-color:#198754;box-shadow:0 0 0 .25rem #19875426}.form-field-help-demo .form-field__success-message{color:#198754;font-size:.875rem;margin-top:.25rem;font-weight:500}.form-field-help-demo .form-field__helper-text{color:#6c757d;font-size:.875rem;margin-top:.25rem}.form-field-help-demo .form-field--loading .form-field__input-container{opacity:.7}.form-field-help-demo .form-field--disabled{opacity:.6;pointer-events:none}.form-field-help-demo .form-field{transition:all .2s ease}.form-field-help-demo .form-field__input{transition:all .15s ease}.form-field-help-demo .tooltip{z-index:1000}@media print{.form-field-help-demo__actions,.form-field-help-demo__info{display:none}.form-field-help-demo{box-shadow:none;padding:0}.form-field-help-demo__form{box-shadow:none;border:1px solid #dee2e6}}.pm-lang-switcher-buttons{display:inline-flex;gap:8px;padding:4px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.pm-lang-button{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:#64748b;transition:all .2s ease;font-family:inherit}.pm-lang-button:hover{background:#e2e8f0;color:#0f172a}.pm-lang-button.active{background:#3b82f6;color:#fff}.pm-lang-button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.pm-lang-flag{font-size:16px;line-height:1}.pm-lang-code{font-weight:600}.pm-lang-switcher-dropdown{display:inline-block}.pm-lang-select{padding:8px 32px 8px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:all .2s ease}.pm-lang-select:hover{border-color:#cbd5e1;background-color:#f8fafc}.pm-lang-select:focus{outline:2px solid #3b82f6;outline-offset:2px;border-color:#3b82f6}[dir=rtl] .pm-lang-select{background-position:left 12px center;padding:8px 12px 8px 32px}@media(prefers-color-scheme:dark){.pm-lang-switcher-buttons{background:#1e293b;border-color:#334155}.pm-lang-button{color:#94a3b8}.pm-lang-button:hover{background:#334155;color:#f1f5f9}.pm-lang-select{background-color:#1e293b;border-color:#334155;color:#f1f5f9}.pm-lang-select:hover{background-color:#0f172a;border-color:#475569}}}

/* MetricCard Component Styles */

.metric-card {
  position: relative;
  background: var(--color-surface, #ffffff);
  border: 1px solid var(--color-border, #e5e7eb);
  border-radius: var(--radius-lg, 12px);
  padding: var(--spacing-5, 20px);
  transition: all 0.2s ease;
  overflow: hidden;
}

/* Clickable */

.metric-card--clickable {
  cursor: pointer;
  border: none;
  width: 100%;
  text-align: left;
}

.metric-card--clickable:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, 0.1));
}

.metric-card--clickable:active {
  transform: translateY(0);
}

.metric-card--clickable:focus-visible {
  outline: 2px solid var(--color-primary, #4f46e5);
  outline-offset: 2px;
}

/* Size Variants */

.metric-card--small {
  padding: var(--spacing-3, 12px);
}

.metric-card--large {
  padding: var(--spacing-6, 24px);
}

/* Color Variants */

.metric-card--primary {
  border-left: 4px solid var(--color-primary, #4f46e5);
}

.metric-card--success {
  border-left: 4px solid var(--color-success, #10b981);
}

.metric-card--warning {
  border-left: 4px solid var(--color-warning, #f59e0b);
}

.metric-card--danger {
  border-left: 4px solid var(--color-danger, #ef4444);
}

.metric-card--info {
  border-left: 4px solid var(--color-info, #3b82f6);
}

.metric-card--purple {
  border-left: 4px solid #9333ea;
}

/* Icon */

.metric-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: var(--spacing-3, 12px);
  background: var(--color-gray-100, #f3f4f6);
  border-radius: var(--radius-lg, 12px);
  font-size: 24px;
}

.metric-card--small .metric-card__icon {
  width: 36px;
  height: 36px;
  font-size: 18px;
}

.metric-card--large .metric-card__icon {
  width: 56px;
  height: 56px;
  font-size: 28px;
}

/* Content */

.metric-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2, 8px);
}

.metric-card__title {
  font-size: var(--font-size-sm, 13px);
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-secondary, #6b7280);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.metric-card__value-container {
  display: flex;
  align-items: baseline;
  gap: var(--spacing-1, 4px);
}

.metric-card__value {
  font-size: var(--font-size-2xl, 24px);
  font-weight: var(--font-weight-bold, 700);
  color: var(--color-text-primary, #1f2937);
  line-height: 1.2;
}

.metric-card--small .metric-card__value {
  font-size: var(--font-size-xl, 20px);
}

.metric-card--large .metric-card__value {
  font-size: var(--font-size-3xl, 30px);
}

.metric-card__unit {
  font-size: 0.6em;
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-text-secondary, #6b7280);
  margin-right: 2px;
}

/* Trend */

.metric-card__trend {
  display: flex;
  align-items: center;
  gap: var(--spacing-1, 4px);
  font-size: var(--font-size-sm, 13px);
  font-weight: var(--font-weight-semibold, 600);
}

.metric-card__trend--positive {
  color: var(--color-success, #10b981);
}

.metric-card__trend--negative {
  color: var(--color-danger, #ef4444);
}

.metric-card__trend--neutral {
  color: var(--color-text-secondary, #6b7280);
}

.metric-card__trend-icon {
  font-size: 16px;
  line-height: 1;
}

.metric-card__trend-label {
  color: var(--color-text-tertiary, #9ca3af);
  font-weight: var(--font-weight-normal, 400);
  margin-left: var(--spacing-1, 4px);
}

/* Description */

.metric-card__description {
  font-size: var(--font-size-xs, 12px);
  color: var(--color-text-secondary, #6b7280);
  margin-top: var(--spacing-1, 4px);
}

/* Loading State */

.metric-card--loading {
  pointer-events: none;
}

.metric-card__skeleton {
  background: linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 50%, #f3f4f6 75%);
  background-size: 200% 100%;
  animation: loading 1.5s ease-in-out infinite;
  border-radius: var(--radius-md, 8px);
}

@keyframes loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.metric-card__skeleton--icon {
  width: 48px;
  height: 48px;
  margin-bottom: var(--spacing-3, 12px);
}

.metric-card__skeleton--title {
  width: 60%;
  height: 16px;
  margin-bottom: var(--spacing-2, 8px);
}

.metric-card__skeleton--value {
  width: 80%;
  height: 32px;
  margin-bottom: var(--spacing-2, 8px);
}

.metric-card__skeleton--trend {
  width: 40%;
  height: 14px;
}

/* Responsive Design */

@media (max-width: 768px) {
  .metric-card {
    padding: var(--spacing-4, 16px);
  }

  .metric-card__value {
    font-size: var(--font-size-xl, 20px);
  }
}

/* Dark Mode Support */

@media (prefers-color-scheme: dark) {
  .metric-card {
    background: var(--color-surface-dark, #1f2937);
    border-color: var(--color-border-dark, #374151);
  }

  .metric-card__icon {
    background: var(--color-gray-800, #1f2937);
  }

  .metric-card__title {
    color: var(--color-text-secondary-dark, #d1d5db);
  }

  .metric-card__value {
    color: var(--color-text-primary-dark, #f9fafb);
  }

  .metric-card__unit {
    color: var(--color-text-secondary-dark, #d1d5db);
  }

  .metric-card__description {
    color: var(--color-text-secondary-dark, #d1d5db);
  }

  .metric-card__skeleton {
    background: linear-gradient(90deg, #374151 25%, #4b5563 50%, #374151 75%);
  }
}

/* Accessibility */

@media (prefers-reduced-motion: reduce) {
  .metric-card {
    transition: none;
  }

  .metric-card--clickable:hover {
    transform: none;
  }

  .metric-card__skeleton {
    animation: none;
  }
}

/* ScoreCircle: loaded via src/score-circle-only.css in main.tsx */
/**
 * Sidebar - Fresha-Inspired Professional Styling
 * Clean, modern sidebar with soft shadows and smooth transitions
 */

.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 260px;
  background: #ffffff;
  border-right: 1px solid #e5e7eb;
  display: flex;
  flex-direction: column;
  z-index: 1000;
  /* Instant width change — animated width forces continuous layout (INP killer) */
  contain: layout style paint;
  box-shadow: 1px 0 3px rgba(0, 0, 0, 0.03);
}

.sidebar.collapsed {
  width: 72px;
}

/* Sidebar Header */
.sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 16px;
  border-bottom: 1px solid #f3f4f6;
  min-height: 64px;
  position: relative;
}

.sidebar.collapsed .sidebar-header {
  padding: 20px 10px;
  justify-content: center;
}

.sidebar-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  flex: 1;
  min-width: 0;
}

.brand-icon {
  font-size: 24px;
  flex-shrink: 0;
}

.sidebar-brand:hover .brand-icon {
  /* no scale transform — keeps pointer interactions cheap */
}

.brand-name {
  font-size: 18px;
  font-weight: 700;
  color: #171717;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sidebar.collapsed .brand-name {
  display: none;
}

.sidebar-toggle {
  width: 44px;
  height: 44px;
  border: none;
  background: transparent;
  color: #6b7280;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: background-color 0.15s ease, color 0.15s ease;
  flex-shrink: 0;
  position: relative;
  z-index: 10;
  min-width: 44px; /* WCAG 2.1 AA Touch Target */
  min-height: 44px; /* WCAG 2.1 AA Touch Target */
}

.sidebar.collapsed .sidebar-toggle {
  position: absolute;
  right: -16px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.sidebar-toggle:hover {
  background: #f3f4f6;
  color: #171717;
}

.toggle-icon {
  font-size: 18px;
  font-weight: 600;
}

.sidebar.collapsed .brand-icon {
  margin: 0 auto;
}

/* Navigation Menu */
.sidebar-nav {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 16px 12px;
  scrollbar-width: thin;
  scrollbar-color: #e5e7eb transparent;
}

.sidebar-nav::-webkit-scrollbar {
  width: 6px;
}

.sidebar-nav::-webkit-scrollbar-track {
  background: transparent;
}

.sidebar-nav::-webkit-scrollbar-thumb {
  background: #e5e7eb;
  border-radius: 3px;
}

.nav-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  margin-bottom: 2px;
  border-radius: 10px;
  text-decoration: none;
  color: #525252;
  font-size: 14px;
  font-weight: 500;
  transition: background-color 0.12s ease, color 0.12s ease;
  position: relative;
  cursor: pointer;
  min-height: 44px; /* WCAG 2.1 AA Touch Target */
  content-visibility: auto;
  contain-intrinsic-size: auto 44px;
}

.nav-item:hover {
  background: #f9fafb;
  color: #171717;
}

.nav-item.active {
  background: linear-gradient(135deg, var(--brand-soft) 0%, var(--brand-muted) 100%);
  color: var(--brand-ink);
  font-weight: 600;
}

.nav-item.active::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 60%;
  background: var(--brand);
  border-radius: 0 2px 2px 0;
}

.nav-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: currentColor;
}

.nav-label {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sidebar.collapsed .nav-label {
  display: none;
}

.nav-badge {
  padding: 2px 6px;
  background: #f97316;
  color: white;
  font-size: 11px;
  font-weight: 700;
  border-radius: 10px;
  min-width: 18px;
  text-align: center;
}

.sidebar.collapsed .nav-badge {
  display: none;
}

.nav-divider {
  height: 1px;
  background: #f3f4f6;
  margin: 8px 0;
}

.nav-group {
  margin-bottom: 12px;
}

.nav-group:last-child {
  margin-bottom: 0;
}

.nav-group__label {
  padding: 8px 12px 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #94a3b8;
}

.sidebar.collapsed .nav-group__label {
  display: none;
}

.nav-group + .nav-group {
  border-top: 1px solid #f3f4f6;
  padding-top: 8px;
}

/* Mobile Overlay */
.sidebar-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 999;
  animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Legacy floating hamburger — replaced by AppTopBar menu control */
.mobile-menu-btn {
  display: none !important;
}

.mobile-menu-btn:hover {
  background: #f9fafb;
}

.mobile-menu-btn:active {
  transform: scale(0.95);
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .sidebar {
    transform: translateX(-100%);
    /* Transform-only animation stays on compositor — safe for INP */
    transition: transform 0.18s ease-out;
    z-index: 1000;
    will-change: transform;
  }

  .sidebar.mobile-open {
    transform: translateX(0);
  }

  .sidebar.collapsed {
    width: 260px;
  }

  .sidebar-overlay {
    display: block;
  }

  /* Adjust nav items for touch targets */
  .nav-item {
    padding: 12px 16px;
    min-height: 44px;
  }

  .btn-new-memo {
    height: 48px;
  }
}
/**
 * Slim top utility bar — brand accent aligned with primary CTAs (#6366F1)
 */

.app-topbar {
  position: sticky;
  top: 0;
  z-index: 900;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: 56px;
  padding: 0 20px 0 16px;
  background: #ffffff;
  border-bottom: 1px solid #e5e7eb;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}

.app-topbar__left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.app-topbar__menu {
  display: none;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  color: #171717;
  cursor: pointer;
}

.app-topbar__menu:hover {
  background: #f8fafc;
}

.app-topbar__context {
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  letter-spacing: 0.02em;
}

.app-topbar__right {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.app-topbar__user {
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 280px;
  padding: 4px 8px 4px 4px;
  border: none;
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  text-align: left;
}

.app-topbar__user:hover {
  background: var(--brand-soft);
}

.app-topbar__avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--brand) 0%, var(--brand-hover) 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.app-topbar__user-meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.app-topbar__name {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-topbar__email {
  font-size: 11px;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-topbar__logout {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
}

.app-topbar__logout:hover {
  background: #fef2f2;
  color: #dc2626;
}

@media (max-width: 768px) {
  .app-topbar {
    padding: 0 12px;
    /* Clear safe area; hamburger lives here — not floating over page titles */
  }

  .app-topbar__menu {
    display: flex;
  }

  .app-topbar__context {
    display: none;
  }

  .app-topbar__email {
    display: none;
  }

  .app-topbar__user {
    max-width: 160px;
  }
}

@media (max-width: 375px) {
  .app-topbar__name {
    max-width: 96px;
  }
}
.footer {
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  color: #fff;
  margin-top: 64px;
}

.footer-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 24px 32px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 32px;
}

.footer-section h3 {
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 12px 0;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.footer-section h4 {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #94a3b8;
  margin: 0 0 16px 0;
}

.footer-section p {
  color: #cbd5e1;
  font-size: 14px;
  line-height: 1.6;
  margin: 8px 0;
}

.footer-company {
  margin-top: 16px;
  color: #64748b;
  font-size: 13px;
}

.footer-section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-section li {
  margin: 12px 0;
}

.footer-section a {
  color: #cbd5e1;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s;
}

.footer-section a:hover {
  color: #fff;
  text-decoration: underline;
}

.footer-disclaimer {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px;
}

.footer-disclaimer p {
  color: #94a3b8;
  font-size: 12px;
  line-height: 1.6;
  margin: 0;
  text-align: center;
}

.footer-disclaimer strong {
  color: #cbd5e1;
  font-weight: 600;
}

.footer-disclaimer a {
  color: #60a5fa;
  text-decoration: underline;
}

.footer-disclaimer a:hover {
  color: #93c5fd;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .footer-content {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-section {
    padding: 16px 0;
  }
}
.mkt-nav {
  position: sticky;
  top: 0;
  z-index: 100;
  background: color-mix(in srgb, var(--mkt-paper-2, #f7faf9) 86%, transparent);
  border-bottom: 1px solid var(--mkt-line, #d0dbd6);
  backdrop-filter: blur(14px);
}

.mkt-nav__inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0.8rem 1.25rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.mkt-nav__brand {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none !important;
  color: var(--mkt-ink, #0b1614) !important;
  flex-shrink: 0;
}

.mkt-nav__mark {
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 0.35rem;
  background: linear-gradient(145deg, #14968c, #0b4f49);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.mkt-nav__name {
  font-family: var(--mkt-display, Georgia, serif);
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--mkt-ink, #0b1614) !important;
}

.mkt-nav__links {
  display: none;
  align-items: center;
  gap: 0.15rem;
  margin-left: 0.35rem;
}

.mkt-nav__link {
  padding: 0.45rem 0.7rem;
  border-radius: 0.4rem;
  text-decoration: none !important;
  color: var(--mkt-muted, #5a6b66) !important;
  font-size: 0.86rem;
  font-weight: 500;
}

.mkt-nav__link:hover,
.mkt-nav__link.is-active {
  color: var(--mkt-ink, #0b1614) !important;
  background: rgba(15, 118, 110, 0.08);
}

.mkt-nav__actions {
  display: none;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

.mkt-nav__burger {
  margin-left: auto;
  width: 42px;
  height: 42px;
  border: 1px solid var(--mkt-line, #d0dbd6);
  border-radius: 0.45rem;
  background: var(--mkt-surface, #fff);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  cursor: pointer;
}

.mkt-nav__burger span {
  display: block;
  width: 16px;
  height: 1.5px;
  background: var(--mkt-ink, #0b1614);
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.mkt-nav__burger.is-open span:nth-child(1) {
  transform: translateY(6.5px) rotate(45deg);
}

.mkt-nav__burger.is-open span:nth-child(2) {
  opacity: 0;
}

.mkt-nav__burger.is-open span:nth-child(3) {
  transform: translateY(-6.5px) rotate(-45deg);
}

.mkt-nav__drawer {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.5rem 1.25rem 1.25rem;
  border-top: 1px solid var(--mkt-line, #d0dbd6);
  background: var(--mkt-surface, #fff);
  animation: mkt-drawer-in 0.22s ease-out;
}

@keyframes mkt-drawer-in {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.mkt-nav__drawer-link {
  padding: 0.85rem 0.5rem;
  text-decoration: none !important;
  color: var(--mkt-ink, #0b1614) !important;
  font-weight: 500;
  border-bottom: 1px solid var(--mkt-line, #d0dbd6);
}

.mkt-nav__drawer-cta {
  margin-top: 0.5rem;
}

@media (min-width: 900px) {
  .mkt-nav__links,
  .mkt-nav__actions {
    display: flex;
  }

  .mkt-nav__burger,
  .mkt-nav__drawer {
    display: none;
  }
}
/**
 * Marketing design tokens — isolated from app themes (Classic purple, etc.)
 */
.mkt-shell {
  --mkt-ink: #0b1614;
  --mkt-ink-soft: #1a2e2a;
  --mkt-paper: #eef3f1;
  --mkt-paper-2: #f7faf9;
  --mkt-surface: #ffffff;
  --mkt-muted: #5a6b66;
  --mkt-faint: #8a9a95;
  --mkt-line: #d0dbd6;
  --mkt-teal: #0f766e;
  --mkt-teal-deep: #0b4f49;
  --mkt-teal-soft: #d8f3ef;
  --mkt-forest: #072825;
  --mkt-cream: #f3f7f5;
  --mkt-font: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --mkt-display: 'Source Serif 4', Georgia, 'Times New Roman', serif;

  min-height: 100vh;
  background: var(--mkt-paper);
  color: var(--mkt-ink);
  font-family: var(--mkt-font);
  -webkit-font-smoothing: antialiased;
}

.mkt-shell a {
  color: inherit;
}

.mkt-shell__body {
  min-height: calc(100vh - 64px);
}

/* Shared marketing buttons — high contrast, theme-proof */
.mkt-shell .mkt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.6rem 1.1rem;
  border-radius: 0.45rem;
  font-family: var(--mkt-font);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none !important;
  border: 1px solid transparent;
  cursor: pointer;
  transition:
    background 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease;
}

.mkt-shell .mkt-btn--primary {
  background: var(--mkt-teal) !important;
  color: #ffffff !important;
  border-color: var(--mkt-teal) !important;
}

.mkt-shell .mkt-btn--primary:hover {
  background: var(--mkt-teal-deep) !important;
  border-color: var(--mkt-teal-deep) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.mkt-shell .mkt-btn--ghost {
  background: transparent !important;
  color: var(--mkt-ink) !important;
  border-color: var(--mkt-line) !important;
}

.mkt-shell .mkt-btn--ghost:hover {
  background: var(--mkt-surface) !important;
  border-color: var(--mkt-ink-soft) !important;
}

.mkt-shell .mkt-btn--lg {
  padding: 0.85rem 1.4rem;
  font-size: 0.95rem;
}

.mkt-shell .mkt-btn--on-dark.mkt-btn--ghost {
  color: #f4faf8 !important;
  border-color: rgba(244, 250, 248, 0.28) !important;
}

.mkt-shell .mkt-btn--on-dark.mkt-btn--ghost:hover {
  background: rgba(244, 250, 248, 0.08) !important;
}

.mkt-shell .mkt-btn--on-dark.mkt-btn--primary {
  background: #ecfdf8 !important;
  color: var(--mkt-teal-deep) !important;
  border-color: #ecfdf8 !important;
}

.mkt-shell .mkt-btn--on-dark.mkt-btn--primary:hover {
  background: #ffffff !important;
  color: var(--mkt-forest) !important;
}
/**
 * MainLayout - Professional Layout with Sidebar
 * Fresha-inspired clean layout structure with responsive behavior
 * Enterprise-ready with proper spacing adjustments for sidebar collapse
 */

/* Skip Navigation Link - WCAG AA Accessibility */
.skip-link {
  position: absolute;
  top: -100px;
  left: 0;
  z-index: 10000;
  padding: 12px 24px;
  background: var(--brand);
  color: white;
  text-decoration: none;
  font-weight: 600;
  border-radius: 0 0 8px 0;
  transition: top 0.2s ease;
}

.skip-link:focus {
  top: 0;
  outline: 3px solid #fbbf24;
  outline-offset: 2px;
}

.main-layout {
  display: flex;
  min-height: 100vh;
  background: #fafafa;
}

.main-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  /* No margin-left animation — width/margin transitions thrash layout and inflate INP */
}

.main-layout-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  background: linear-gradient(135deg, var(--brand-soft, #f5f3ff) 0%, var(--brand-muted, #ede9fe) 100%);
}

.main-layout-loading__inner {
  text-align: center;
}

.main-layout-loading__spinner {
  width: 48px;
  height: 48px;
  border: 4px solid rgba(124, 58, 237, 0.3);
  border-top-color: var(--brand, #7c3aed);
  border-radius: 50%;
  margin: 0 auto 1rem;
  animation: spin 0.8s linear infinite;
}

.main-layout-loading__text {
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--brand-ink, #5b21b6);
}

.main-content.with-sidebar {
  margin-left: 260px;
}

.main-content.with-sidebar.sidebar-collapsed {
  margin-left: 72px;
}

.main-content.no-sidebar {
  margin-left: 0;
}

.content-area {
  flex: 1;
  min-height: calc(100vh - 120px);
  width: 100%;
  max-width: 100%;
}

/* Deal pipeline only: lock shell height so the Kanban can fill the viewport.
   Do NOT apply this globally — it squeezes pages like /memos under the tall footer. */
.main-layout:has(.deal-pipeline-page) {
  height: 100vh;
  overflow: hidden;
}

.main-content:has(.deal-pipeline-page) {
  min-height: 0;
  height: 100%;
  overflow: hidden;
}

.main-content:has(.deal-pipeline-page) .content-area {
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.main-content:has(.deal-pipeline-page) .footer {
  display: none;
}

/* Responsive - Mobile First */
@media (max-width: 768px) {
  .main-content.with-sidebar,
  .main-content.with-sidebar.sidebar-collapsed {
    margin-left: 0;
  }

  .content-area {
    padding: 16px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .content-area {
    padding: 24px;
  }
}

/* Loading animation */
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
/* Compact, non-blocking consent panel — does not cover sidebar or drawers */
.cookie-consent {
  position: fixed;
  /* Keep clear of left sidebar (~260px) and drawer CTAs */
  right: max(20px, env(safe-area-inset-right, 0px));
  bottom: max(20px, env(safe-area-inset-bottom, 0px));
  left: auto;
  width: min(380px, calc(100vw - 280px));
  max-width: calc(100vw - 40px);
  z-index: 9000; /* below drawers (99998+) so modals stay usable */
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px 18px;
  background: #ffffff;
  color: #0f172a;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  pointer-events: auto;
  animation: cookie-consent-in 0.28s ease-out;
}

@keyframes cookie-consent-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-consent {
    animation: none;
  }
}

.cookie-consent__title {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -0.01em;
  color: #0f172a;
}

.cookie-consent__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #475569;
}

.cookie-consent__text a {
  color: #1d4ed8;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cookie-consent__text a:hover {
  color: #1e40af;
}

.cookie-consent__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

@media (max-width: 640px) {
  .cookie-consent {
    right: 12px;
    left: 12px;
    bottom: 12px;
    width: auto;
  }

  .cookie-consent__actions {
    justify-content: stretch;
  }

  .cookie-consent__actions > * {
    flex: 1;
  }
}
.pm-score-circle-wrapper{display:inline-flex;flex-direction:column;align-items:center;gap:12px}

.pm-score-circle-label{font-size:14px;font-weight:600;color:#1e293b;text-align:center;letter-spacing:-.01em}

.pm-score-circle{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1)}

.pm-score-circle--clickable{cursor:pointer;outline:none;position:relative}

.pm-score-circle--clickable:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid transparent;transition:border-color .2s ease}

.pm-score-circle--clickable:hover{transform:scale(1.05);box-shadow:0 8px 24px #0000001f}

.pm-score-circle--clickable:active{transform:scale(.98)}

.pm-score-circle--clickable:focus-visible:after{border-color:var(--score-color-info, #3b82f6)}

.pm-score-circle--clickable[aria-busy=true]{cursor:not-allowed;pointer-events:none}

.pm-score-circle__svg{width:100%;height:100%;display:block;position:relative;z-index:2}

.pm-score-circle__track{transition:stroke .3s ease,opacity .3s ease;stroke-linecap:round}

.pm-score-circle__ring{transition:stroke-dashoffset var(--animation-duration, .8s) cubic-bezier(.4,0,.2,1);will-change:stroke-dashoffset}

.pm-score-circle--animated .pm-score-circle__ring{animation:score-ring-pulse 2s ease-in-out infinite}

.pm-score-circle--loading{pointer-events:none;opacity:.7}

.pm-score-circle--loading .pm-score-circle__ring{animation:score-ring-loading 1.5s ease-in-out infinite}

.pm-score-circle__loader{display:flex;gap:4px;align-items:center;justify-content:center}

.pm-score-circle__loader-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:score-loader-bounce 1.4s infinite ease-in-out both}

.pm-score-circle__loader-dot:nth-child(1){animation-delay:-.32s}

.pm-score-circle__loader-dot:nth-child(2){animation-delay:-.16s}

.pm-score-circle__background{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:94%;height:94%;border-radius:50%;z-index:1;opacity:.05;transition:background-color .3s ease,opacity .3s ease;filter:blur(16px)}

.pm-score-circle__content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:3;user-select:none}

.pm-score-circle__value{font-weight:800;line-height:1;letter-spacing:-.02em;transition:color .3s ease,font-size .3s ease}

.pm-score-circle__subtitle{margin-top:4px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;line-height:1;transition:color .3s ease}

.pm-score-circle--outlined{background:#fff;box-shadow:0 2px 12px #0000000f,0 1px 3px #0000000a;border:1px solid #f1f5f9}

.pm-score-circle--outlined:hover{box-shadow:0 6px 20px #0000001f;border-color:#cbd5e1}

.pm-score-circle--solid{background:#fff;box-shadow:0 4px 20px #0000001a,0 2px 8px #0000000d;border:1px solid rgba(0,0,0,.04)}

.pm-score-circle--solid .pm-score-circle__value{position:relative;z-index:3}

.pm-score-circle--solid .pm-score-circle__subtitle{color:#64748b;position:relative;z-index:3}

.pm-score-circle--solid:hover{box-shadow:0 8px 28px #00000024,0 4px 12px #00000014}

.pm-score-circle--soft{background:#f8fafc;border:2px solid #e2e8f0}

.pm-score-circle--soft:hover{background:#f1f5f9;border-color:#cbd5e1}

.pm-score-circle--success.pm-score-circle--outlined{border-color:#10b981}

.pm-score-circle--success.pm-score-circle--solid{box-shadow:0 4px 16px #10b98140}

.pm-score-circle--warning.pm-score-circle--outlined{border-color:#f59e0b}

.pm-score-circle--warning.pm-score-circle--solid{box-shadow:0 4px 16px #f59e0b40}

.pm-score-circle--error.pm-score-circle--outlined{border-color:#ef4444}

.pm-score-circle--error.pm-score-circle--solid{box-shadow:0 4px 16px #ef444440}

.pm-score-circle--info.pm-score-circle--outlined{border-color:#3b82f6}

.pm-score-circle--info.pm-score-circle--solid{box-shadow:0 4px 16px #3b82f640}

.pm-score-circle-trend{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:6px 12px;border-radius:6px;transition:all .2s ease}

.pm-score-circle-trend.positive{color:#10b981;background:#d1fae5}

.pm-score-circle-trend.negative{color:#ef4444;background:#fee2e2}

.pm-score-circle--sm .pm-score-circle__subtitle{margin-top:2px}

.pm-score-circle--md .pm-score-circle__subtitle{margin-top:3px}

.pm-score-circle__subtitle{margin-top:4px}

.pm-score-circle--xl .pm-score-circle__subtitle{margin-top:5px}

.pm-score-circle--2xl .pm-score-circle__subtitle{margin-top:6px}

.pm-score-circle-wrapper{gap:8px}

.pm-score-circle-label{font-size:13px}

.pm-score-circle-trend{font-size:12px;padding:4px 10px}

.pm-score-circle--2xl{width:140px!important;height:140px!important}

.pm-score-circle--2xl .pm-score-circle__value{font-size:48px!important}

.pm-score-circle-wrapper{gap:6px}

.pm-score-circle-label{font-size:12px}

.pm-score-circle-trend{font-size:11px;padding:3px 8px;gap:4px}

.pm-score-circle--2xl{width:120px!important;height:120px!important}

.pm-score-circle--2xl .pm-score-circle__value{font-size:42px!important}

.pm-score-circle--2xl .pm-score-circle__subtitle{font-size:11px!important}

.pm-score-circle--xl{width:110px!important;height:110px!important}

.pm-score-circle--xl .pm-score-circle__value{font-size:38px!important}

.pm-score-circle--xl .pm-score-circle__subtitle{font-size:10px!important}

.pm-score-circle--lg{width:100px!important;height:100px!important}

.pm-score-circle--lg .pm-score-circle__value{font-size:32px!important}

.pm-score-circle--clickable.pm-score-circle--sm,.pm-score-circle--clickable.pm-score-circle--md{min-width:44px;min-height:44px}

.pm-score-circle-wrapper{gap:6px}

.pm-score-circle-label{font-size:12px}

.pm-score-circle--2xl{width:120px!important;height:120px!important}

.pm-score-circle--xl{width:110px!important;height:110px!important}

.pm-score-circle,.pm-score-circle__ring,.pm-score-circle--animated .pm-score-circle__ring,.pm-score-circle--clickable:hover,.pm-score-circle--clickable:active{transition:none;animation:none;transform:none}

.pm-score-circle--outlined{border-width:2px}

.pm-score-circle__ring{stroke-width:calc(var(--thickness, 6) + 2)}

.pm-score-circle__track{opacity:.3}

.pm-score-circle-label{color:#f3f4f6}

.pm-score-circle--outlined{background:#1e293b;border-color:#334155;box-shadow:0 4px 16px #0000004d}

.pm-score-circle--soft{background:#1e293b;border-color:#334155}

.pm-score-circle__subtitle{color:#94a3b8}

.pm-score-circle-trend.positive{background:#10b98126}

.pm-score-circle-trend.negative{background:#ef444426}



/* ═══════════════════════════════════════════════════════════
   ZMemo AI - Enterprise Global Styles
   Professional, Modern, Production-Ready
   ═══════════════════════════════════════════════════════════ */
/* Import Design System */
/**
 * ZMemo AI Design System - PitchBook-Inspired Professional Edition
 * Clean neutrals, data-dense typography, professional spacing
 * Inspired by financial software for credibility and precision
 */
/* ═══════════════════════════════════════════════════════════
   TYPOGRAPHY SYSTEM - Inter Font (Financial Industry Standard)
   ═══════════════════════════════════════════════════════════ */
:root {
  /* Font Family */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --font-mono: 'SF Mono', 'Monaco', 'Consolas', 'Liberation Mono', monospace;
  
  /* Font Sizes - PitchBook Style (Smaller, Data-Dense) */
  --text-xs: 0.6875rem;    /* 11px - Labels, metadata */
  --text-sm: 0.75rem;      /* 12px - Secondary text */
  --text-base: 0.8125rem;  /* 13px - Body text (PitchBook standard) */
  --text-md: 0.875rem;     /* 14px - Primary text */
  --text-lg: 0.9375rem;    /* 15px - Headings */
  --text-xl: 1rem;         /* 16px - Large headings */
  --text-2xl: 1.25rem;     /* 20px - Page titles */
  --text-3xl: 1.5rem;      /* 24px - Hero titles */
  
  /* Font Weights */
  --font-light: 300;
  --font-normal: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;
  
  /* Line Heights */
  --leading-tight: 1.25;
  --leading-snug: 1.375;
  --leading-normal: 1.5;
  --leading-relaxed: 1.625;
  
  /* Letter Spacing */
  --tracking-tight: -0.015em;
  --tracking-normal: 0;
  --tracking-wide: 0.025em;

/* ═══════════════════════════════════════════════════════════
   COLOR SYSTEM — ZMemo brand violet (#7c3aed) + neutrals
   ═══════════════════════════════════════════════════════════ */
  /* Primary Palette — professional violet (sidebar, CTAs, Deep Dive accents) */
  --primary-50: #f5f3ff;
  --primary-100: #ede9fe;
  --primary-200: #ddd6fe;
  --primary-300: #c4b5fd;
  --primary-400: #a78bfa;
  --primary-500: #8b5cf6;
  --primary-600: #7c3aed;
  --primary-700: #6d28d9;
  --primary-800: #5b21b6;
  --primary-900: #4c1d95;

  /* Brand aliases (prefer these in new CSS) */
  --brand: var(--primary-600);
  --brand-primary: var(--primary-600);
  --brand-hover: var(--primary-700);
  --brand-soft: var(--primary-50);
  --brand-muted: var(--primary-100);
  --brand-border: var(--primary-200);
  --brand-ink: var(--primary-800);
  
  /* Secondary Palette - Soft Teals (Trust, Growth) */
  --teal-50: #f0fdfa;
  --teal-100: #ccfbf1;
  --teal-200: #99f6e4;
  --teal-300: #5eead4;
  --teal-400: #2dd4bf;
  --teal-500: #14b8a6;
  --teal-600: #0d9488;
  
  /* Accent Palette - Warm Oranges (Energy, Action) */
  --orange-50: #fff7ed;
  --orange-100: #ffedd5;
  --orange-200: #fed7aa;
  --orange-300: #fdba74;
  --orange-400: #fb923c;
  --orange-500: #f97316;
  --orange-600: #ea580c;
  
  /* Rose Palette - Soft Pinks (Important, Highlights) */
  --rose-50: #fff1f2;
  --rose-100: #ffe4e6;
  --rose-200: #fecdd3;
  --rose-300: #fda4af;
  --rose-400: #fb7185;
  --rose-500: #f43f5e;
  --rose-600: #e11d48;
  
  /* Neutral Colors - Clean Grays */
  --gray-50: #fafafa;
  --gray-100: #f5f5f5;
  --gray-200: #e5e5e5;
  --gray-300: #d4d4d4;
  --gray-400: #a3a3a3;
  --gray-500: #737373;
  --gray-600: #525252;
  --gray-700: #404040;
  --gray-800: #262626;
  --gray-900: #171717;
  
  /* Semantic Colors - Soft & Friendly */
  --success-50: #f0fdf4;
  --success-100: #dcfce7;
  --success-200: #bbf7d0;
  --success-500: #22c55e;
  --success-600: #16a34a;
  --success-700: #15803d;
  
  --danger-50: #fef2f2;
  --danger-100: #fee2e2;
  --danger-200: #fecaca;
  --danger-500: #ef4444;
  --danger-600: #dc2626;
  --danger-700: #b91c1c;
  
  --warning-50: #fefce8;
  --warning-100: #fef9c3;
  --warning-200: #fef08a;
  --warning-500: #eab308;
  --warning-600: #ca8a04;
  --warning-700: #a16207;
  
  --info-50: #f0f9ff;
  --info-100: #e0f2fe;
  --info-200: #bae6fd;
  --info-500: #0ea5e9;
  --info-600: #0284c7;
  --info-700: #0369a1;
  
  /* UI Colors - Bright & Clean */
  --background: #fafafa;
  --surface: #ffffff;
  --surface-hover: #f5f5f5;
  --border: #e5e5e5;
  --border-light: #f5f5f5;
  --divider: #e5e5e5;
  
  /* Text Colors - Clear Hierarchy */
  --text-primary: #171717;
  --text-secondary: #525252;
  --text-tertiary: #a3a3a3;
  --text-disabled: #d4d4d4;
  --text-inverse: #ffffff;
  
  /* Overlay & Shadow - Soft & Subtle */
  --overlay: rgba(0, 0, 0, 0.4);
  --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.03);
  --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.08);
  --shadow-xl: 0 8px 24px rgba(0, 0, 0, 0.10);
  --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.05);
}
/* ═══════════════════════════════════════════════════════════
   TYPOGRAPHY - Professional Grade (PitchBook/Inter)
   ═══════════════════════════════════════════════════════════ */
:root {
  /* Font Families - Inter Primary */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
  
  /* Professional Font Sizes (Refined) */
  --text-xs: 0.6875rem;   /* 11px - metadata */
  --text-sm: 0.75rem;     /* 12px - labels */
  --text-base: 0.8125rem; /* 13px - small body */
  --text-md: 0.875rem;    /* 14px - body secondary */
  --text-lg: 0.9375rem;   /* 15px - body primary */
  --text-xl: 1.125rem;    /* 18px - subheadings */
  --text-2xl: 1.25rem;    /* 20px - H4 */
  --text-3xl: 1.5rem;     /* 24px - H3 */
  --text-4xl: 1.75rem;    /* 28px - H2 */
  --text-5xl: 2rem;       /* 32px - H1 */
  
  /* Font Weights */
  --font-normal: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;
  
  /* Line Heights (Professional Tight) */
  --leading-tight: 1.25;
  --leading-snug: 1.35;
  --leading-normal: 1.5;
  --leading-relaxed: 1.6;
  --leading-loose: 1.75;
}
/* ═══════════════════════════════════════════════════════════
   SPACING SYSTEM - 8px Grid
   ═══════════════════════════════════════════════════════════ */
:root {
  --space-0: 0;
  --space-1: 0.25rem;   /* 4px */
  --space-2: 0.5rem;    /* 8px */
  --space-3: 0.75rem;   /* 12px */
  --space-4: 1rem;      /* 16px */
  --space-5: 1.25rem;   /* 20px */
  --space-6: 1.5rem;    /* 24px */
  --space-8: 2rem;      /* 32px */
  --space-10: 2.5rem;   /* 40px */
  --space-12: 3rem;     /* 48px */
  --space-16: 4rem;     /* 64px */
  --space-20: 5rem;     /* 80px */
  --space-24: 6rem;     /* 96px */
}
/* ═══════════════════════════════════════════════════════════
   BORDER RADIUS - Consistent Rounding
   ═══════════════════════════════════════════════════════════ */
:root {
  --radius-none: 0;
  --radius-sm: 0.25rem;   /* 4px */
  --radius-md: 0.375rem;  /* 6px */
  --radius-lg: 0.5rem;    /* 8px */
  --radius-xl: 0.75rem;   /* 12px */
  --radius-2xl: 1rem;     /* 16px */
  --radius-3xl: 1.5rem;   /* 24px */
  --radius-full: 9999px;
}
/* ═══════════════════════════════════════════════════════════
   Z-INDEX SCALE - Layering System
   ═══════════════════════════════════════════════════════════ */
:root {
  --z-base: 0;
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
  --z-toast: 1080;
}
/* ═══════════════════════════════════════════════════════════
   TRANSITIONS & ANIMATIONS
   ═══════════════════════════════════════════════════════════ */
:root {
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slower: 500ms cubic-bezier(0.4, 0, 0.2, 1);
}
/* Smooth Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes slideInRight {
  from { opacity: 0; transform: translateX(-20px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes scaleIn {
  from { opacity: 0; transform: scale(0.95); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes shimmer {
  0% { background-position: -1000px 0; }
  100% { background-position: 1000px 0; }
}
/* ═══════════════════════════════════════════════════════════
   RESPONSIVE BREAKPOINTS
   ═══════════════════════════════════════════════════════════ */
:root {
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;
}
/* ═══════════════════════════════════════════════════════════
   METRIC CARD COLORS (Like screenshot)
   ═══════════════════════════════════════════════════════════ */
:root {
  /* Chart/Graph Colors */
  --chart-red: #ef4444;
  --chart-green: #22c55e;
  --chart-blue: #3b82f6;
  --chart-purple: #a855f7;
  --chart-orange: #f97316;
  --chart-yellow: #eab308;
  
  /* Positive/Negative Indicators */
  --positive-text: #16a34a;
  --positive-bg: #dcfce7;
  --negative-text: #dc2626;
  --negative-bg: #fee2e2;
  --neutral-text: #6b7280;
  --neutral-bg: #f3f4f6;
}
/* ═══════════════════════════════════════════════════════════
   UTILITY CLASSES - Component Primitives
   ═══════════════════════════════════════════════════════════ */
/* Animation Classes */
.fade-in {
  animation: fadeIn 0.3s ease-out;
}
.slide-in-right {
  animation: slideInRight 0.3s ease-out;
}
.scale-in {
  animation: scaleIn 0.2s ease-out;
}
/* Hover Effects */
.hover-lift {
  transition: transform var(--transition-base), box-shadow var(--transition-base);
}
.hover-lift:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
/* Skeleton Loading */
.skeleton {
  background: linear-gradient(
    90deg,
    var(--gray-200) 0%,
    var(--gray-100) 50%,
    var(--gray-200) 100%
  );
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  border-radius: var(--radius-md);
}
/* Focus Styles */
.focus-ring {
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition: outline var(--transition-fast);
}
.focus-ring:focus {
  outline: 2px solid var(--brand-primary);
  outline-offset: 2px;
}
/* Truncate Text */
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* ═══════════════════════════════════════════════════════════
   Primary CTAs — align @pavanhiro/common-ui buttons to brand
   ═══════════════════════════════════════════════════════════ */
.pm-button-primary.pm-button-standard,
.pm-button-primary.pm-button-raised,
.pm-button-advanced-effects.pm-button-primary.pm-button-standard,
.pm-button-advanced-effects.pm-button-primary.pm-button-raised {
  background: var(--brand) !important;
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}
.pm-button-primary.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),
.pm-button-primary.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading),
.pm-button-advanced-effects.pm-button-primary.pm-button-standard:hover:not(.pm-button-disabled):not(.pm-button-loading),
.pm-button-advanced-effects.pm-button-primary.pm-button-raised:hover:not(.pm-button-disabled):not(.pm-button-loading) {
  background: var(--brand-hover) !important;
  background-color: var(--brand-hover) !important;
  border-color: var(--brand-hover) !important;
}
.pm-button-primary.pm-button-outline {
  color: var(--brand) !important;
  border-color: var(--brand) !important;
}
.pm-button-primary.pm-button-flat,
.pm-button-primary.pm-button-text {
  color: var(--brand) !important;
}
/**
 * Production theme pack
 * - institution: Abacus-inspired LIGHT (primary alternative)
 * - ledger: refined charcoal DARK (optional)
 * - forest: homepage memo DARK — deep forest + mint
 * Classic remains :root / data-theme="classic"
 */
/* ═══════════════════════════════════════════════════════════
   INSTITUTION — light, regulated, production-ready
   Warm paper · navy ink · restrained teal (no violet, no neon)
   ═══════════════════════════════════════════════════════════ */
html[data-theme='institution'] {
  --font-sans: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --font-display: 'Source Serif 4', Georgia, 'Times New Roman', serif;
  --font-mono: 'SF Mono', ui-monospace, Consolas, monospace;

  /* Brand = institutional teal */
  --primary-50: #f0fdfa;
  --primary-100: #ccfbf1;
  --primary-200: #99f6e4;
  --primary-300: #5eead4;
  --primary-400: #2dd4bf;
  --primary-500: #14b8a6;
  --primary-600: #0f766e;
  --primary-700: #0d5c56;
  --primary-800: #115e59;
  --primary-900: #134e4a;

  --brand: #0f766e;
  --brand-primary: #0f766e;
  --brand-hover: #0d5c56;
  --brand-soft: #f0fdfa;
  --brand-muted: #ccfbf1;
  --brand-border: #99f6e4;
  --brand-ink: #134e4a;

  /* Warm paper system (not cold gray, not cream-terracotta AI cliché) */
  --background: #f3f2ef;
  --surface: #ffffff;
  --surface-hover: #f7f6f3;
  --border: #e4e2dc;
  --border-light: #eceae5;
  --divider: #e4e2dc;

  --gray-50: #f7f6f3;
  --gray-100: #eeece7;
  --gray-200: #e4e2dc;
  --gray-300: #d0cdc4;
  --gray-400: #9b968c;
  --gray-500: #6f6a62;
  --gray-600: #524e48;
  --gray-700: #3a3732;
  --gray-800: #1c2433;
  --gray-900: #0b1220;

  --text-primary: #0b1220;
  --text-secondary: #524e48;
  --text-tertiary: #6f6a62;
  --text-disabled: #9b968c;
  --text-inverse: #ffffff;

  --overlay: rgba(11, 18, 32, 0.45);
  --shadow-xs: 0 1px 2px rgba(11, 18, 32, 0.04);
  --shadow-sm: 0 1px 3px rgba(11, 18, 32, 0.06);
  --shadow-md: 0 4px 16px rgba(11, 18, 32, 0.06);
  --shadow-lg: 0 12px 32px rgba(11, 18, 32, 0.08);
  --shadow-xl: 0 20px 48px rgba(11, 18, 32, 0.1);
  --shadow-card: 0 1px 0 rgba(11, 18, 32, 0.04), 0 8px 24px rgba(11, 18, 32, 0.05);

  --success-50: #ecfdf5;
  --success-100: #d1fae5;
  --success-500: #059669;
  --success-600: #047857;
  --danger-50: #fef2f2;
  --danger-100: #fee2e2;
  --danger-500: #dc2626;
  --warning-50: #fffbeb;
  --warning-500: #d97706;
  --info-50: #f0fdfa;
  --info-500: #0f766e;

  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.625rem;
}
html[data-theme='institution'] body {
  background: var(--background);
  color: var(--text-primary);
  font-family: var(--font-sans);
}
html[data-theme='institution'] h1,
html[data-theme='institution'] .login-logo-text,
html[data-theme='institution'] .login-brand h1,
html[data-theme='institution'] .page-title,
html[data-theme='institution'] .brand-name {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--text-primary);
}
/* Deep Dive / Overview tab tokens */
html[data-theme='institution'] .deepdive-tab-content,
html[data-theme='institution'] .overview-tab-content {
  --primary-900: #0b1220;
  --primary-800: #1c2433;
  --primary-700: #3a3732;
  --primary-600: #524e48;
  --primary-500: #6f6a62;
  --primary-400: #9b968c;
  --primary-300: #d0cdc4;
  --primary-200: #e4e2dc;
  --primary-100: #eeece7;
  --primary-50: #f7f6f3;

  --accent-blue: #0f766e;
  --accent-blue-dark: #0d5c56;
  --accent-purple: #0f766e;
  --accent-green: #059669;
  --accent-orange: #d97706;
  --accent-red: #dc2626;

  --brand: #0f766e;
  --brand-hover: #0d5c56;
  --brand-soft: #f0fdfa;
  --brand-muted: #ccfbf1;
  --brand-border: #99f6e4;
  --brand-ink: #134e4a;

  --success-bg: #d1fae5;
  --success-border: #a7f3d0;
  --success-text: #065f46;
  --warning-bg: #fef3c7;
  --warning-border: #fde68a;
  --warning-text: #92400e;
  --error-bg: #fee2e2;
  --error-border: #fecaca;
  --error-text: #991b1b;
  --info-bg: #f0fdfa;
  --info-border: #99f6e4;
  --info-text: #134e4a;
}
/* Shell: top bar */
html[data-theme='institution'] .app-topbar {
  background: rgba(255, 255, 255, 0.92);
  border-bottom: 1px solid var(--border);
  box-shadow: none;
  backdrop-filter: blur(10px);
}
html[data-theme='institution'] .app-topbar__context,
html[data-theme='institution'] .app-topbar__name {
  color: var(--text-primary);
}
html[data-theme='institution'] .app-topbar__email {
  color: var(--text-tertiary);
}
html[data-theme='institution'] .app-topbar__menu,
html[data-theme='institution'] .app-topbar__logout,
html[data-theme='institution'] .app-topbar__theme {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text-primary);
}
html[data-theme='institution'] .app-topbar__theme:hover,
html[data-theme='institution'] .app-topbar__menu:hover,
html[data-theme='institution'] .app-topbar__logout:hover {
  background: var(--surface-hover);
  border-color: var(--gray-300);
}
html[data-theme='institution'] .app-topbar__avatar {
  background: var(--brand-primary);
  color: #fff;
}
html[data-theme='institution'] .app-topbar__theme-dot {
  background: var(--brand-primary);
}
/* Shell: sidebar */
html[data-theme='institution'] .sidebar {
  background: #ffffff !important;
  border-right: 1px solid var(--border) !important;
  box-shadow: none !important;
}
html[data-theme='institution'] .sidebar-header {
  border-bottom-color: var(--border-light) !important;
}
html[data-theme='institution'] .brand-name {
  color: var(--text-primary) !important;
}
html[data-theme='institution'] .nav-item,
html[data-theme='institution'] .sidebar a {
  color: var(--text-secondary) !important;
  border-radius: 8px;
}
html[data-theme='institution'] .nav-item:hover,
html[data-theme='institution'] .sidebar a:hover {
  background: var(--surface-hover) !important;
  color: var(--text-primary) !important;
}
html[data-theme='institution'] .nav-item.active,
html[data-theme='institution'] .sidebar a.active,
html[data-theme='institution'] .sidebar .active {
  background: var(--brand-soft) !important;
  color: var(--brand-ink) !important;
  box-shadow: inset 3px 0 0 var(--brand-primary);
}
html[data-theme='institution'] .main-layout,
html[data-theme='institution'] .content-area,
html[data-theme='institution'] .main-content {
  background: var(--background);
  color: var(--text-primary);
}
/* Login */
html[data-theme='institution'] .login-bg {
  background:
    radial-gradient(ellipse 90% 60% at 10% 0%, rgba(15, 118, 110, 0.08), transparent 50%),
    radial-gradient(ellipse 70% 50% at 100% 100%, rgba(11, 18, 32, 0.06), transparent 45%),
    #f3f2ef;
}
html[data-theme='institution'] .login-bg-gradient,
html[data-theme='institution'] .login-bg-circles {
  opacity: 0.25;
  filter: grayscale(0.4) hue-rotate(100deg);
}
html[data-theme='institution'] .login-card {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
}
html[data-theme='institution'] .login-logo-text {
  color: var(--text-primary);
  font-size: 2.25rem;
}
html[data-theme='institution'] .login-brand h1 {
  color: var(--text-primary);
  font-weight: 500;
}
html[data-theme='institution'] .login-tabs {
  background: var(--gray-100);
}
html[data-theme='institution'] .login-tabs button {
  color: var(--text-tertiary);
}
html[data-theme='institution'] .login-tabs button.active {
  background: #fff;
  color: var(--text-primary);
  box-shadow: var(--shadow-xs);
}
html[data-theme='institution'] .sso-button.primary {
  background: var(--brand-primary) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
}
html[data-theme='institution'] .sso-button.google,
html[data-theme='institution'] .sso-button.microsoft {
  background: #fff !important;
  border: 1px solid var(--border) !important;
  color: var(--text-primary) !important;
  border-radius: 8px !important;
}
html[data-theme='institution'] .zmemo-login input {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 8px;
  color: var(--text-primary);
}
html[data-theme='institution'] .zmemo-login label {
  color: var(--text-secondary);
}
html[data-theme='institution'] .login-error {
  background: var(--danger-50);
  border: 1px solid #fecaca;
  color: #991b1b;
  border-radius: 8px;
}
html[data-theme='institution'] .deepdive-template-result__btn--primary,
html[data-theme='institution'] button.primary {
  background: var(--brand-primary);
  color: #fff;
  border-color: transparent;
}
/* ═══════════════════════════════════════════════════════════
   LEDGER — refined dark (optional)
   Soft charcoal layers · muted teal · no glow/grid gimmicks
   ═══════════════════════════════════════════════════════════ */
html[data-theme='ledger'] {
  --font-sans: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --font-display: 'Source Serif 4', Georgia, serif;
  --font-mono: 'SF Mono', ui-monospace, Consolas, monospace;

  --primary-50: #14201f;
  --primary-100: #1a2c2a;
  --primary-200: #23403c;
  --primary-300: #2f5a54;
  --primary-400: #3d7a72;
  --primary-500: #4f9a90;
  --primary-600: #6bb5ab;
  --primary-700: #8fc9c1;
  --primary-800: #b5ddd7;
  --primary-900: #d8efeB;

  --brand: #6bb5ab;
  --brand-primary: #6bb5ab;
  --brand-hover: #8fc9c1;
  --brand-soft: rgba(107, 181, 171, 0.12);
  --brand-muted: rgba(107, 181, 171, 0.18);
  --brand-border: rgba(107, 181, 171, 0.28);
  --brand-ink: #b5ddd7;

  --background: #12151a;
  --surface: #1a1e26;
  --surface-hover: #222833;
  --border: rgba(232, 230, 225, 0.1);
  --border-light: rgba(232, 230, 225, 0.06);
  --divider: rgba(232, 230, 225, 0.1);

  --gray-50: #1a1e26;
  --gray-100: #222833;
  --gray-200: #2c3340;
  --gray-300: #3d4656;
  --gray-400: #8b93a1;
  --gray-500: #a8afbb;
  --gray-600: #c5cad3;
  --gray-700: #dddfe5;
  --gray-800: #eceae6;
  --gray-900: #f6f5f2;

  --text-primary: #eceae6;
  --text-secondary: #a8afbb;
  --text-tertiary: #8b93a1;
  --text-disabled: #5a6373;
  --text-inverse: #12151a;

  --overlay: rgba(0, 0, 0, 0.55);
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.25);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 6px 20px rgba(0, 0, 0, 0.35);
  --shadow-lg: 0 12px 36px rgba(0, 0, 0, 0.4);
  --shadow-xl: 0 20px 48px rgba(0, 0, 0, 0.45);
  --shadow-card: 0 0 0 1px rgba(232, 230, 225, 0.06);

  --success-50: rgba(16, 185, 129, 0.12);
  --success-500: #34d399;
  --danger-50: rgba(248, 113, 113, 0.12);
  --danger-500: #f87171;
  --warning-50: rgba(251, 191, 36, 0.12);
  --warning-500: #fbbf24;
  --info-50: rgba(107, 181, 171, 0.12);
  --info-500: #6bb5ab;
}
html[data-theme='ledger'] body {
  background: var(--background);
  color: var(--text-primary);
  font-family: var(--font-sans);
}
html[data-theme='ledger'] h1,
html[data-theme='ledger'] .login-logo-text,
html[data-theme='ledger'] .login-brand h1,
html[data-theme='ledger'] .brand-name {
  font-family: var(--font-display);
  font-weight: 550;
  color: var(--text-primary);
}
html[data-theme='ledger'] .deepdive-tab-content,
html[data-theme='ledger'] .overview-tab-content {
  --primary-900: #eceae6;
  --primary-800: #dddfe5;
  --primary-700: #c5cad3;
  --primary-600: #a8afbb;
  --primary-500: #8b93a1;
  --primary-400: #3d4656;
  --primary-300: #2c3340;
  --primary-200: #222833;
  --primary-100: #1a1e26;
  --primary-50: #12151a;

  --accent-blue: #6bb5ab;
  --accent-blue-dark: #4f9a90;
  --accent-purple: #6bb5ab;
  --accent-green: #34d399;
  --accent-orange: #fbbf24;
  --accent-red: #f87171;

  --brand: #6bb5ab;
  --brand-hover: #8fc9c1;
  --brand-soft: rgba(107, 181, 171, 0.12);
  --brand-muted: rgba(107, 181, 171, 0.18);
  --brand-border: rgba(107, 181, 171, 0.28);
  --brand-ink: #b5ddd7;

  --success-bg: rgba(16, 185, 129, 0.15);
  --success-border: rgba(52, 211, 153, 0.3);
  --success-text: #6ee7b7;
  --warning-bg: rgba(251, 191, 36, 0.12);
  --warning-border: rgba(251, 191, 36, 0.28);
  --warning-text: #fde68a;
  --error-bg: rgba(248, 113, 113, 0.12);
  --error-border: rgba(248, 113, 113, 0.28);
  --error-text: #fecaca;
  --info-bg: rgba(107, 181, 171, 0.12);
  --info-border: rgba(107, 181, 171, 0.28);
  --info-text: #b5ddd7;

  color: var(--text-primary);
}
html[data-theme='ledger'] .app-topbar {
  background: rgba(26, 30, 38, 0.94);
  border-bottom: 1px solid var(--border);
  box-shadow: none;
  backdrop-filter: blur(12px);
}
html[data-theme='ledger'] .app-topbar__context,
html[data-theme='ledger'] .app-topbar__name {
  color: var(--text-primary);
}
html[data-theme='ledger'] .app-topbar__email {
  color: var(--text-tertiary);
}
html[data-theme='ledger'] .app-topbar__menu,
html[data-theme='ledger'] .app-topbar__logout,
html[data-theme='ledger'] .app-topbar__theme {
  background: var(--surface-hover);
  border: 1px solid var(--border);
  color: var(--text-primary);
}
html[data-theme='ledger'] .app-topbar__avatar {
  background: #3d7a72;
  color: #f6f5f2;
}
html[data-theme='ledger'] .app-topbar__theme-dot {
  background: var(--brand-primary);
}
html[data-theme='ledger'] .sidebar {
  background: #151820 !important;
  border-right: 1px solid var(--border) !important;
  box-shadow: none !important;
}
html[data-theme='ledger'] .brand-name {
  color: var(--text-primary) !important;
}
html[data-theme='ledger'] .nav-item,
html[data-theme='ledger'] .sidebar a {
  color: var(--text-secondary) !important;
}
html[data-theme='ledger'] .nav-item.active,
html[data-theme='ledger'] .sidebar a.active,
html[data-theme='ledger'] .sidebar .active {
  background: var(--brand-soft) !important;
  color: var(--brand-ink) !important;
  box-shadow: inset 3px 0 0 var(--brand-primary);
}
html[data-theme='ledger'] .main-layout,
html[data-theme='ledger'] .content-area,
html[data-theme='ledger'] .main-content {
  background: var(--background);
  color: var(--text-primary);
}
html[data-theme='ledger'] .login-bg {
  background: #12151a;
}
html[data-theme='ledger'] .login-bg-gradient,
html[data-theme='ledger'] .login-bg-circles {
  display: none;
}
html[data-theme='ledger'] .login-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: var(--shadow-card);
}
html[data-theme='ledger'] .login-logo-text,
html[data-theme='ledger'] .login-brand h1 {
  color: var(--text-primary);
}
html[data-theme='ledger'] .login-tabs {
  background: rgba(255, 255, 255, 0.04);
}
html[data-theme='ledger'] .login-tabs button {
  color: var(--text-tertiary);
}
html[data-theme='ledger'] .login-tabs button.active {
  background: var(--surface-hover);
  color: var(--text-primary);
}
html[data-theme='ledger'] .sso-button.primary {
  background: #3d7a72 !important;
  color: #f6f5f2 !important;
  border: none !important;
}
html[data-theme='ledger'] .sso-button.google,
html[data-theme='ledger'] .sso-button.microsoft {
  background: transparent !important;
  border: 1px solid var(--border) !important;
  color: var(--text-primary) !important;
}
html[data-theme='ledger'] .zmemo-login input {
  background: #12151a;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
html[data-theme='ledger'] .zmemo-login label {
  color: var(--text-secondary);
}
html[data-theme='ledger'] .login-error {
  background: var(--danger-50);
  border: 1px solid rgba(248, 113, 113, 0.28);
  color: #fecaca;
}
/* ═══════════════════════════════════════════════════════════
   FOREST — homepage memo dark (deep forest + mint)
   Matches marketing preview: institutional IC chrome
   ═══════════════════════════════════════════════════════════ */
html[data-theme='forest'] {
  --font-sans: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --font-display: 'Source Serif 4', Georgia, serif;
  --font-mono: 'SF Mono', ui-monospace, Consolas, monospace;

  --primary-50: #061a18;
  --primary-100: #0a221f;
  --primary-200: #0e2f2b;
  --primary-300: #134e4a;
  --primary-400: #0f766e;
  --primary-500: #14b8a6;
  --primary-600: #2dd4bf;
  --primary-700: #5eead4;
  --primary-800: #99f6e4;
  --primary-900: #ccfbf1;

  --brand: #2dd4bf;
  --brand-primary: #2dd4bf;
  --brand-hover: #5eead4;
  --brand-soft: rgba(45, 212, 191, 0.14);
  --brand-muted: rgba(45, 212, 191, 0.2);
  --brand-border: rgba(45, 212, 191, 0.32);
  --brand-ink: #99f6e4;

  --background: #061a18;
  --surface: #0a221f;
  --surface-hover: #0e2f2b;
  --border: rgba(244, 250, 248, 0.1);
  --border-light: rgba(244, 250, 248, 0.06);
  --divider: rgba(244, 250, 248, 0.1);

  --gray-50: #0a221f;
  --gray-100: #0e2f2b;
  --gray-200: #13403b;
  --gray-300: #1a524c;
  --gray-400: #5a7a74;
  --gray-500: #8a9a95;
  --gray-600: #b8c9c4;
  --gray-700: #d8e8e3;
  --gray-800: #e8f2ef;
  --gray-900: #f4faf8;

  --text-primary: #f4faf8;
  --text-secondary: rgba(244, 250, 248, 0.72);
  --text-tertiary: rgba(244, 250, 248, 0.5);
  --text-disabled: rgba(244, 250, 248, 0.32);
  --text-inverse: #061a18;

  --overlay: rgba(0, 0, 0, 0.55);
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.35);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.45);
  --shadow-xl: 0 24px 56px rgba(0, 0, 0, 0.5);
  --shadow-card: 0 0 0 1px rgba(244, 250, 248, 0.08), 0 12px 32px rgba(0, 0, 0, 0.35);

  --success-50: rgba(16, 185, 129, 0.14);
  --success-500: #34d399;
  --danger-50: rgba(248, 113, 113, 0.14);
  --danger-500: #f87171;
  --warning-50: rgba(251, 191, 36, 0.14);
  --warning-500: #fbbf24;
  --info-50: rgba(45, 212, 191, 0.14);
  --info-500: #2dd4bf;

  --radius-md: 0.4rem;
  --radius-lg: 0.55rem;
  --radius-xl: 0.75rem;
}
html[data-theme='forest'] body {
  background: var(--background);
  color: var(--text-primary);
  font-family: var(--font-sans);
}
html[data-theme='forest'] h1,
html[data-theme='forest'] .login-logo-text,
html[data-theme='forest'] .login-brand h1,
html[data-theme='forest'] .page-title,
html[data-theme='forest'] .brand-name {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--text-primary);
}
html[data-theme='forest'] .deepdive-tab-content,
html[data-theme='forest'] .overview-tab-content {
  --primary-900: #f4faf8;
  --primary-800: #e8f2ef;
  --primary-700: #d8e8e3;
  --primary-600: #b8c9c4;
  --primary-500: #8a9a95;
  --primary-400: #1a524c;
  --primary-300: #13403b;
  --primary-200: #0e2f2b;
  --primary-100: #0a221f;
  --primary-50: #061a18;

  --accent-blue: #2dd4bf;
  --accent-blue-dark: #14b8a6;
  --accent-purple: #2dd4bf;
  --accent-green: #34d399;
  --accent-orange: #fbbf24;
  --accent-red: #f87171;

  --brand: #2dd4bf;
  --brand-hover: #5eead4;
  --brand-soft: rgba(45, 212, 191, 0.14);
  --brand-muted: rgba(45, 212, 191, 0.2);
  --brand-border: rgba(45, 212, 191, 0.32);
  --brand-ink: #99f6e4;

  --success-bg: rgba(16, 185, 129, 0.16);
  --success-border: rgba(52, 211, 153, 0.32);
  --success-text: #6ee7b7;
  --warning-bg: rgba(251, 191, 36, 0.14);
  --warning-border: rgba(251, 191, 36, 0.3);
  --warning-text: #fde68a;
  --error-bg: rgba(248, 113, 113, 0.14);
  --error-border: rgba(248, 113, 113, 0.3);
  --error-text: #fecaca;
  --info-bg: rgba(45, 212, 191, 0.14);
  --info-border: rgba(45, 212, 191, 0.3);
  --info-text: #99f6e4;

  color: var(--text-primary);
}
html[data-theme='forest'] .app-topbar {
  background: rgba(10, 34, 31, 0.94);
  border-bottom: 1px solid var(--border);
  box-shadow: none;
  backdrop-filter: blur(12px);
}
html[data-theme='forest'] .app-topbar__context,
html[data-theme='forest'] .app-topbar__name {
  color: var(--text-primary);
}
html[data-theme='forest'] .app-topbar__email {
  color: var(--text-tertiary);
}
html[data-theme='forest'] .app-topbar__menu,
html[data-theme='forest'] .app-topbar__logout,
html[data-theme='forest'] .app-topbar__theme {
  background: var(--surface-hover);
  border: 1px solid var(--border);
  color: var(--text-primary);
}
html[data-theme='forest'] .app-topbar__avatar {
  background: #0f766e;
  color: #f4faf8;
}
html[data-theme='forest'] .app-topbar__theme-dot {
  background: var(--brand-primary);
}
html[data-theme='forest'] .sidebar {
  background: #041412 !important;
  border-right: 1px solid var(--border) !important;
  box-shadow: none !important;
}
html[data-theme='forest'] .brand-name {
  color: var(--text-primary) !important;
}
html[data-theme='forest'] .nav-item,
html[data-theme='forest'] .sidebar a {
  color: var(--text-secondary) !important;
}
html[data-theme='forest'] .nav-item:hover,
html[data-theme='forest'] .sidebar a:hover {
  background: rgba(45, 212, 191, 0.08) !important;
  color: var(--text-primary) !important;
}
html[data-theme='forest'] .nav-item.active,
html[data-theme='forest'] .sidebar a.active,
html[data-theme='forest'] .sidebar .active {
  background: rgba(45, 212, 191, 0.18) !important;
  color: #ecfdf8 !important;
  box-shadow: inset 3px 0 0 var(--brand-primary);
}
html[data-theme='forest'] .main-layout,
html[data-theme='forest'] .content-area,
html[data-theme='forest'] .main-content {
  background: var(--background);
  color: var(--text-primary);
}
html[data-theme='forest'] .login-bg {
  background:
    radial-gradient(ellipse 70% 55% at 85% 15%, rgba(20, 150, 140, 0.28), transparent 55%),
    linear-gradient(155deg, #061a18 0%, #0b3d38 55%, #0f5c54 100%);
}
html[data-theme='forest'] .login-bg-gradient,
html[data-theme='forest'] .login-bg-circles {
  display: none;
}
html[data-theme='forest'] .login-card {
  background: rgba(10, 34, 31, 0.94);
  border: 1px solid rgba(244, 250, 248, 0.12);
  border-radius: 12px;
  box-shadow: var(--shadow-card);
}
html[data-theme='forest'] .login-logo-text,
html[data-theme='forest'] .login-brand h1 {
  color: var(--text-primary);
}
html[data-theme='forest'] .login-tabs {
  background: rgba(244, 250, 248, 0.05);
}
html[data-theme='forest'] .login-tabs button {
  color: var(--text-tertiary);
}
html[data-theme='forest'] .login-tabs button.active {
  background: var(--surface-hover);
  color: var(--text-primary);
}
html[data-theme='forest'] .sso-button.primary {
  background: #0f766e !important;
  color: #f4faf8 !important;
  border: none !important;
}
html[data-theme='forest'] .sso-button.google,
html[data-theme='forest'] .sso-button.microsoft {
  background: transparent !important;
  border: 1px solid var(--border) !important;
  color: var(--text-primary) !important;
}
html[data-theme='forest'] .zmemo-login input {
  background: #061a18;
  border: 1px solid var(--border);
  color: var(--text-primary);
}
html[data-theme='forest'] .zmemo-login label {
  color: var(--text-secondary);
}
html[data-theme='forest'] .login-error {
  background: var(--danger-50);
  border: 1px solid rgba(248, 113, 113, 0.28);
  color: #fecaca;
}
html[data-theme='forest'] .deepdive-template-result__btn--primary,
html[data-theme='forest'] button.primary {
  background: #0f766e !important;
  color: #f4faf8 !important;
}
/* ═══════════════════════════════════════════════════════════
   Shared theme controls
   ═══════════════════════════════════════════════════════════ */
.app-topbar__theme {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 36px;
  padding: 0 12px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  color: #171717;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  white-space: nowrap;
}
.app-topbar__theme:hover {
  background: #f9fafb;
}
.app-topbar__theme-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7c3aed;
  flex-shrink: 0;
}
html[data-theme='institution'] .app-topbar__theme-dot {
  background: #0f766e;
}
html[data-theme='ledger'] .app-topbar__theme-dot {
  background: #6bb5ab;
}
html[data-theme='forest'] .app-topbar__theme-dot {
  background: #2dd4bf;
}
.login-theme-switch {
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: 20;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: min(100vw - 32px, 420px);
  gap: 2px;
  padding: 4px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #e4e2dc;
  box-shadow: 0 4px 16px rgba(11, 18, 32, 0.06);
  backdrop-filter: blur(10px);
}
html[data-theme='ledger'] .login-theme-switch {
  background: rgba(26, 30, 38, 0.92);
  border-color: rgba(232, 230, 225, 0.12);
}
html[data-theme='forest'] .login-theme-switch {
  background: rgba(10, 34, 31, 0.94);
  border-color: rgba(244, 250, 248, 0.12);
}
.login-theme-switch button {
  border: none;
  background: transparent;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  color: #6f6a62;
  opacity: 0.85;
}
html[data-theme='ledger'] .login-theme-switch button {
  color: #a8afbb;
}
html[data-theme='forest'] .login-theme-switch button {
  color: rgba(244, 250, 248, 0.55);
}
.login-theme-switch button[aria-pressed='true'] {
  opacity: 1;
  background: #f0fdfa;
  color: #0f766e;
}
html[data-theme='classic'] .login-theme-switch button[aria-pressed='true'] {
  background: #ede9fe;
  color: #5b21b6;
}
html[data-theme='ledger'] .login-theme-switch button[aria-pressed='true'] {
  background: rgba(107, 181, 171, 0.16);
  color: #b5ddd7;
}
html[data-theme='forest'] .login-theme-switch button[aria-pressed='true'] {
  background: rgba(45, 212, 191, 0.18);
  color: #99f6e4;
}
.settings-theme-picker {
  display: grid;
  gap: 10px;
}
.settings-theme-option {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 10px;
  border: 1px solid var(--border, #e5e5e5);
  background: var(--surface, #fff);
  cursor: pointer;
  text-align: left;
  color: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.settings-theme-option:hover {
  border-color: var(--gray-300, #d0cdc4);
}
.settings-theme-option[aria-pressed='true'] {
  border-color: var(--brand-primary, #0f766e);
  box-shadow: 0 0 0 1px var(--brand-primary, #0f766e);
}
.settings-theme-option strong {
  display: block;
  font-size: 14px;
  margin-bottom: 4px;
}
.settings-theme-option span {
  font-size: 12px;
  opacity: 0.75;
  line-height: 1.45;
}
/* Import WCAG 2.1 AA Accessibility Fixes */
/**
 * ═══════════════════════════════════════════════════════════
 * ZMemo AI - WCAG 2.1 AA Accessibility Fixes
 * ═══════════════════════════════════════════════════════════
 * 
 * CRITICAL FIXES:
 * 1. Color contrast ratios upgraded to meet WCAG 2.1 AA
 * 2. Focus indicators enhanced for keyboard navigation  
 * 3. Semantic HTML structure guidance
 * 
 * WCAG 2.1 AA Requirements:
 * - Normal text: 4.5:1 contrast ratio minimum
 * - Large text (18px+): 3:1 contrast ratio minimum
 * - UI components: 3:1 contrast ratio minimum
 * ═══════════════════════════════════════════════════════════
 */
/* Import base design system */
/* ═══════════════════════════════════════════════════════════
   FIX 1: ENHANCED TEXT COLORS - WCAG 2.1 AA Compliant
   Previous: #525252 on #ffffff = 4.3:1 ❌ (fails WCAG AA)
   Fixed: #404040 on #ffffff = 9.7:1 ✅ (passes WCAG AAA)
   ═══════════════════════════════════════════════════════════ */
:root {
  /* Enhanced Text Hierarchy - All meet WCAG AA */
  --text-primary: #171717;     /* 16.3:1 - Primary content */
  --text-secondary: #404040;   /* 9.7:1 - Secondary content (FIXED) */
  --text-tertiary: #737373;    /* 4.6:1 - Tertiary content (FIXED) */
  --text-disabled: #a3a3a3;    /* 3.2:1 - Disabled (large text only) */
  --text-inverse: #ffffff;     /* For dark backgrounds */
  
  /* Link Colors - Enhanced Contrast */
  --link-primary: #0369a1;     /* 5.5:1 - Meets WCAG AA */
  --link-hover: #0284c7;       /* 4.5:1 - Hover state */
  --link-visited: #7c3aed;     /* 5.3:1 - Visited links */
  
  /* Button Text - Dark backgrounds */
  --button-text-primary: #ffffff;
  --button-text-secondary: #171717;
  
  /* Status Colors - Enhanced for Contrast */
  --success-text: #15803d;     /* 4.5:1 on white */
  --danger-text: #b91c1c;      /* 5.5:1 on white */
  --warning-text: #a16207;     /* 4.7:1 on white */
  --info-text: #0369a1;        /* 5.5:1 on white */
}
/* ═══════════════════════════════════════════════════════════
   FIX 2: KEYBOARD FOCUS INDICATORS - WCAG 2.4.7
   All interactive elements must have visible focus
   ═══════════════════════════════════════════════════════════ */
/* Remove default outline, add enhanced focus ring */
*:focus {
  outline: none;
}
/* Enhanced focus ring for all interactive elements */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible,
[role="menuitem"]:focus-visible,
[role="tab"]:focus-visible {
  outline: 3px solid #0ea5e9;
  outline-offset: 2px;
  border-radius: 4px;
  transition: outline 0.2s ease;
}
/* Special focus for navigation elements */
nav a:focus-visible,
[role="navigation"] a:focus-visible {
  outline: 3px solid #0ea5e9;
  outline-offset: 4px;
  background: rgba(14, 165, 233, 0.1);
}
/* Focus for cards and clickable containers */
.card:focus-visible,
[role="article"]:focus-visible,
[role="listitem"]:focus-visible {
  outline: 3px solid #0ea5e9;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.1);
}
/* Focus within (when element contains focused child) */
.form-group:focus-within,
.input-group:focus-within {
  border-color: #0ea5e9;
}
/* ═══════════════════════════════════════════════════════════
   FIX 3: SKIP TO MAIN CONTENT - WCAG 2.4.1
   First focusable element for keyboard users
   ═══════════════════════════════════════════════════════════ */
.skip-to-main {
  position: absolute;
  left: -9999px;
  z-index: 999;
  padding: 1rem 1.5rem;
  background: #0369a1;
  color: #ffffff;
  text-decoration: none;
  border-radius: 0 0 4px 0;
  font-weight: 600;
}
.skip-to-main:focus {
  left: 0;
  top: 0;
  outline: 3px solid #fbbf24;
  outline-offset: 2px;
}
/* ═══════════════════════════════════════════════════════════
   FIX 4: ENHANCED UI COMPONENT CONTRAST - WCAG 1.4.11
   UI components must have 3:1 contrast minimum
   ═══════════════════════════════════════════════════════════ */
/* Form Input Borders */
input,
select,
textarea {
  border: 1.5px solid #737373 !important;  /* 4.6:1 - Enhanced from #d4d4d4 */
  background: #ffffff;
  color: #171717;
}
input::placeholder,
select::placeholder,
textarea::placeholder {
  color: #737373;  /* 4.6:1 - Meets WCAG AA */
}
/* Disabled states */
input:disabled,
select:disabled,
textarea:disabled {
  border-color: #a3a3a3;
  background: #f5f5f5;
  color: #737373;
  cursor: not-allowed;
}
/* Button contrast */
button {
  font-weight: 600;
  border: none;
}
/* Primary buttons - high contrast */
button.primary,
.button-primary {
  background: #0369a1;  /* 5.5:1 contrast */
  color: #ffffff;
}
button.primary:hover,
.button-primary:hover {
  background: #0284c7;
}
/* Secondary buttons */
button.secondary,
.button-secondary {
  background: #ffffff;
  color: #171717;
  border: 1.5px solid #737373 !important;
}
button.secondary:hover,
.button-secondary:hover {
  background: #f5f5f5;
  border-color: #525252 !important;
}
/* Danger buttons */
button.danger,
.button-danger {
  background: #dc2626;  /* 5.9:1 contrast */
  color: #ffffff;
}
/* ═══════════════════════════════════════════════════════════
   FIX 5: STATUS BADGES - Enhanced Contrast
   ═══════════════════════════════════════════════════════════ */
.badge {
  font-weight: 600;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.75rem;
}
.badge-success {
  background: #dcfce7;
  color: #15803d;  /* 4.5:1 on light bg */
  border: 1px solid #15803d;
}
.badge-danger {
  background: #fee2e2;
  color: #b91c1c;  /* 5.5:1 on light bg */
  border: 1px solid #b91c1c;
}
.badge-warning {
  background: #fef9c3;
  color: #a16207;  /* 4.7:1 on light bg */
  border: 1px solid #a16207;
}
.badge-info {
  background: #e0f2fe;
  color: #0369a1;  /* 5.5:1 on light bg */
  border: 1px solid #0369a1;
}
/* ═══════════════════════════════════════════════════════════
   FIX 6: LINK STYLES - WCAG 2.4.4 & 1.4.1
   Links must be distinguishable without relying on color alone
   ═══════════════════════════════════════════════════════════ */
a {
  color: #0369a1;  /* 5.5:1 contrast */
  text-decoration: underline;
  text-decoration-color: rgba(3, 105, 161, 0.4);
  text-underline-offset: 2px;
  transition: all 0.2s ease;
}
a:hover {
  color: #0284c7;
  text-decoration-color: #0284c7;
}
a:visited {
  color: #7c3aed;  /* Purple for visited */
}
/* Navigation links (can skip underline if clearly navigation) */
nav a,
[role="navigation"] a {
  text-decoration: none;
  font-weight: 500;
}
nav a:hover,
[role="navigation"] a:hover {
  text-decoration: underline;
}
/* ═══════════════════════════════════════════════════════════
   FIX 7: TABLE ACCESSIBILITY
   ═══════════════════════════════════════════════════════════ */
table {
  border-collapse: collapse;
  width: 100%;
}
th {
  background: #f5f5f5;
  color: #171717;
  font-weight: 600;
  text-align: left;
  padding: 0.75rem 1rem;
  border-bottom: 2px solid #737373;  /* Enhanced contrast */
}
td {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #e5e5e5;
  color: #171717;
}
tr:hover {
  background: #f9fafb;
}
/* Striped rows for better readability */
tbody tr:nth-child(even) {
  background: #fafafa;
}
/* ═══════════════════════════════════════════════════════════
   FIX 8: ICON-ONLY BUTTONS - WCAG 2.4.4
   Must have accessible labels
   ═══════════════════════════════════════════════════════════ */
button[aria-label],
a[aria-label] {
  position: relative;
}
/* Show tooltip on focus for icon-only buttons */
button[aria-label]:focus-visible::after,
a[aria-label]:focus-visible::after {
  content: attr(aria-label);
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.5rem 0.75rem;
  background: #171717;
  color: #ffffff;
  font-size: 0.75rem;
  white-space: nowrap;
  border-radius: 4px;
  margin-bottom: 0.5rem;
  z-index: 1000;
}
/* ═══════════════════════════════════════════════════════════
   FIX 9: ENHANCED CONTRAST FOR DARK MODE (if applicable)
   ═══════════════════════════════════════════════════════════ */
@media (prefers-color-scheme: dark) {
  :root {
    --text-primary: #fafafa;
    --text-secondary: #d4d4d4;  /* 10.3:1 on dark bg */
    --text-tertiary: #a3a3a3;   /* 4.9:1 on dark bg */
    --background: #171717;
    --surface: #262626;
    --border: #404040;
  }
  
  /* Invert focus ring for dark mode */
  *:focus-visible {
    outline-color: #38bdf8;
  }
}
/* ═══════════════════════════════════════════════════════════
   FIX 10: PRINT STYLES - Accessibility for print
   ═══════════════════════════════════════════════════════════ */
@media print {
  * {
    background: white !important;
    color: black !important;
  }
  
  a {
    text-decoration: underline;
  }
  
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 0.8em;
    color: #404040;
  }
}
/* ═══════════════════════════════════════════════════════════
   BASE STYLES - Enhanced Typography & Layout
   ═══════════════════════════════════════════════════════════ */
html {
  scroll-behavior: smooth;
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
}
body {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: var(--font-normal);
  line-height: var(--leading-normal);
  color: var(--text-primary);
  background: var(--background);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0;
  /* Smooth transition for modal scrollbar compensation */
  transition: padding-right 0.2s ease;
}
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}
#root {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
/* ═══════════════════════════════════════════════════════════
   ANIMATIONS
   ═══════════════════════════════════════════════════════════ */
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* ═══════════════════════════════════════════════════════════
   UTILITY CLASSES (Minimal - Use pm-common-ui components instead)
   ═══════════════════════════════════════════════════════════ */
.fade-in {
  animation: fadeIn 0.3s ease-out;
}
.slide-in {
  animation: slideIn 0.3s ease-out;
}
.loading-spinner {
  animation: spin 1s linear infinite;
}
/* Custom scrollbar styling */
.custom-scrollbar::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.custom-scrollbar::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 4px;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}
/* Text utilities */
.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.text-ellipsis-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.text-ellipsis-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* Visibility utilities */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
/* ============================================================================
   CRITICAL FIX: pm-common-ui PageHeader inline-badge styles
   These override package CSS with !important for specificity
   ============================================================================ */
/* Inline badges container */
.page-header__inline-badges {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-left: 16px !important;
  flex-wrap: wrap !important;
}
/* Base inline badge */
.inline-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  transition: all 0.2s ease !important;
}
.inline-badge-icon {
  display: inline-flex !important;
  font-size: 14px !important;
  line-height: 1 !important;
}
.inline-badge-value {
  font-weight: 600 !important;
  font-size: 14px !important;
}
.inline-badge-label {
  font-weight: 400 !important;
  opacity: 0.85 !important;
}
/* Color variants */
.inline-badge--neutral {
  background: #f3f4f6 !important;
  color: #374151 !important;
}
.inline-badge--neutral .inline-badge-value {
  color: #111827 !important;
}
.inline-badge--success {
  background: #f0fdf4 !important;
  color: #16a34a !important;
}
.inline-badge--success .inline-badge-value {
  color: #15803d !important;
}
.inline-badge--warning {
  background: #fef3c7 !important;
  color: #d97706 !important;
}
.inline-badge--warning .inline-badge-value {
  color: #b45309 !important;
}
.inline-badge--info {
  background: #e0f2fe !important;
  color: #0284c7 !important;
}
.inline-badge--info .inline-badge-value {
  color: #0369a1 !important;
}
.inline-badge--danger {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}
.inline-badge--danger .inline-badge-value {
  color: #b91c1c !important;
}
/* PageHeader action buttons */
.header-action-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}
.header-action-btn--outline {
  background: white !important;
  color: #3b82f6 !important;
  border: 1.5px solid #3b82f6 !important;
}
.header-action-btn--outline:hover {
  background: #eff6ff !important;
  transform: translateY(-1px) !important;
}
.header-action-btn--primary {
  background: linear-gradient(135deg, #3b82f6, #2563eb) !important;
  color: white !important;
  border: none !important;
}
.header-action-btn--primary:hover {
  background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
  transform: translateY(-1px) !important;
}
/* NOTE: ScoreCircle CSS is loaded from src/score-circle-only.css in main.tsx */
/* DO NOT override component CSS here */
/* ═══════════════════════════════════════════════════════════
   MODAL & DIALOG OVERLAY FIXES
   NOTE: Do NOT apply full-viewport flex centering to .pm-dialog /
   .pm-confirm / .confirm-2025 — those are the CARD, not the overlay.
   Forcing inset:0 + display:flex on the card flattens confirm into
   a broken horizontal layout (icon | text | buttons overflowing).
   ═══════════════════════════════════════════════════════════ */
/* Backdrop overlays only — full viewport, above drawers (99999) */
.pm-dialog-overlay,
.confirm-2025-overlay,
.pm-modal-backdrop,
.pm-dialog-backdrop,
.notification-backdrop,
.alert-2025-overlay,
.prompt-2025-overlay {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  background-color: rgba(0, 0, 0, 0.5) !important;
  z-index: 1000000 !important;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px;
  box-sizing: border-box;
}
/* Confirm / alert / prompt cards — keep component layout intact */
.pm-confirm.confirm-2025,
.confirm-2025,
.alert-2025,
.prompt-2025 {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: min(420px, 100%) !important;
  max-height: min(90vh, 100%) !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  z-index: 1000001 !important;
}
.confirm-2025__footer {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  justify-content: stretch !important;
}
.confirm-2025__btn {
  flex: 1 1 auto !important;
  min-width: 120px !important;
  white-space: nowrap !important;
}
/* Prevent body scroll when modal is open */
body.modal-open,
body:has(.pm-dialog-overlay),
body:has(.confirm-2025-overlay) {
  overflow: hidden !important;
}

