/* DTC Customer Portal — admin-selectable Feminine Rose theme
 * Applies to authenticated and login views on desktop and mobile.
 */

html[data-portal-theme="feminine"] {
  --fem-pink: #f34f91;
  --fem-pink-deep: #d9367a;
  --fem-rose: #ff79ad;
  --fem-lilac: #9a68eb;
  --fem-ink: #2c2534;
  --fem-muted: #81758b;
  --fem-line: #f0dce8;
  --fem-soft: #fff5fa;
  --fem-soft-2: #faf5ff;
  --fem-surface: rgba(255,255,255,.92);
  background: #fff7fb;
}

body[data-portal-theme="feminine"] {
  --primary: var(--fem-pink);
  --primary-dark: var(--fem-pink-deep);
  --purple: var(--fem-lilac);
  --bg: #fff7fb;
  --surface: #ffffff;
  --surface-soft: #fff7fb;
  --text: var(--fem-ink);
  --muted: var(--fem-muted);
  --border: var(--fem-line);
  --shadow: 0 28px 80px rgba(170, 66, 119, .17);
  --shadow-soft: 0 12px 35px rgba(219, 74, 142, .12);
  color: var(--fem-ink) !important;
  background:
    radial-gradient(circle at 4% 6%, rgba(255,121,173,.18), transparent 28%),
    radial-gradient(circle at 96% 10%, rgba(154,104,235,.13), transparent 30%),
    radial-gradient(circle at 84% 94%, rgba(255,184,210,.22), transparent 34%),
    #fff7fb !important;
}

body[data-portal-theme="feminine"]::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: .45;
  background:
    radial-gradient(circle at 92% 17%, rgba(255,255,255,.95) 0 3px, transparent 4px),
    radial-gradient(circle at 89% 14%, rgba(246,153,190,.35) 0 6px, transparent 7px),
    radial-gradient(circle at 95% 13%, rgba(244,181,210,.3) 0 5px, transparent 6px);
}

body[data-portal-theme="feminine"] #portal-boot-screen {
  background: linear-gradient(145deg,#fff7fb,#faf5ff) !important;
  color: var(--fem-pink) !important;
}
body[data-portal-theme="feminine"] #portal-boot-screen .boot-card {
  border-color: #f2dce8 !important;
  box-shadow: 0 18px 45px rgba(190,64,126,.13) !important;
}
body[data-portal-theme="feminine"] #portal-boot-screen .boot-spinner { border-color:#f8d9e7 !important;border-top-color:var(--fem-pink) !important; }

/* Login view — desktop */
body[data-portal-theme="feminine"] .portal-shell {
  border-color: rgba(255,255,255,.92) !important;
  background: rgba(255,250,253,.94) !important;
  box-shadow: 0 30px 95px rgba(174,62,119,.18) !important;
}
body[data-portal-theme="feminine"] .brand-panel {
  background:
    radial-gradient(circle at 83% 18%,rgba(255,255,255,.22),transparent 22%),
    linear-gradient(145deg,#d93e7e 0%,#f34f91 48%,#a96ee8 100%) !important;
}
body[data-portal-theme="feminine"] .brand-grid { opacity:.08 !important; }
body[data-portal-theme="feminine"] .logo-mark,
body[data-portal-theme="feminine"] .mobile-brand .logo-mark {
  background: linear-gradient(145deg,#f34f91,#9a68eb) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.38) !important;
  box-shadow:0 12px 28px rgba(169,55,118,.22) !important;
}
body[data-portal-theme="feminine"] .form-panel {
  background:
    radial-gradient(circle at 90% 8%,rgba(255,187,214,.22),transparent 24%),
    linear-gradient(180deg,#fffafd 0%,#fff 100%) !important;
}
body[data-portal-theme="feminine"] .form-block h2,
body[data-portal-theme="feminine"] .mobile-brand strong { color:#4b3445 !important; }
body[data-portal-theme="feminine"] .step-dot.active { background:var(--fem-pink) !important;box-shadow:0 0 0 5px rgba(243,79,145,.12) !important; }
body[data-portal-theme="feminine"] .form-icon {
  color:var(--fem-pink) !important;
  background:linear-gradient(145deg,#fff0f7,#f5efff) !important;
  border-color:#f2d9e7 !important;
}
body[data-portal-theme="feminine"] .text-input,
body[data-portal-theme="feminine"] .otp-box {
  border-color:#efd8e5 !important;
  background:#fffafd !important;
  color:var(--fem-ink) !important;
}
body[data-portal-theme="feminine"] .text-input:focus,
body[data-portal-theme="feminine"] .otp-box:focus {
  border-color:var(--fem-pink) !important;
  box-shadow:0 0 0 4px rgba(243,79,145,.11) !important;
}
body[data-portal-theme="feminine"] .primary-btn,
body[data-portal-theme="feminine"] .portal-account-save,
body[data-portal-theme="feminine"] .portal-wallet-submit {
  background:linear-gradient(135deg,#f34f91,#dd3c80 58%,#a56de8) !important;
  box-shadow:0 13px 28px rgba(211,54,123,.25) !important;
}
body[data-portal-theme="feminine"] .security-note { background:#fff5fa !important;border-color:#f1dbe7 !important;color:#756578 !important; }
body[data-portal-theme="feminine"] .support-line a,
body[data-portal-theme="feminine"] .text-btn { color:var(--fem-pink-deep) !important; }

/* Authenticated desktop dashboard */
body[data-portal-theme="feminine"].result-mode .portal-shell {
  max-width:1320px !important;
  border:1px solid rgba(240,215,230,.9) !important;
  border-radius:32px !important;
  background:rgba(255,251,253,.97) !important;
}
body[data-portal-theme="feminine"].result-mode .form-panel {
  background:
    radial-gradient(circle at 95% 4%,rgba(255,170,205,.13),transparent 24%),
    linear-gradient(180deg,#fffafd 0%,#fff8fc 100%) !important;
}
body[data-portal-theme="feminine"] .result-brand,
body[data-portal-theme="feminine"] .result-header,
body[data-portal-theme="feminine"] .portal-combined-subscriptions,
body[data-portal-theme="feminine"] .portal-tabs-shell,
body[data-portal-theme="feminine"] .sub-card,
body[data-portal-theme="feminine"] .portal-wallet-card,
body[data-portal-theme="feminine"] .portal-wallet-hero,
body[data-portal-theme="feminine"] .portal-shop-header,
body[data-portal-theme="feminine"] .portal-shop-toolbar,
body[data-portal-theme="feminine"] .portal-shop-card,
body[data-portal-theme="feminine"] .portal-account-modal,
body[data-portal-theme="feminine"] .portal-order-detail-dialog {
  border-color:#f0dce8 !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 14px 38px rgba(174,62,119,.09) !important;
}
body[data-portal-theme="feminine"] .result-header h2,
body[data-portal-theme="feminine"] .portal-wallet-hero h2,
body[data-portal-theme="feminine"] .portal-shop-title strong,
body[data-portal-theme="feminine"] .sub-card h3 { color:#3f3040 !important; }
body[data-portal-theme="feminine"] .live-sync::before { background:#f34f91 !important;box-shadow:0 0 0 4px rgba(243,79,145,.11) !important; }
body[data-portal-theme="feminine"] .portal-wallet-header-badge,
body[data-portal-theme="feminine"] .portal-account-button {
  border-color:#efd9e6 !important;
  background:linear-gradient(135deg,#fffafd,#fff1f7) !important;
  color:#70465f !important;
}
body[data-portal-theme="feminine"] .portal-wallet-header-badge svg,
body[data-portal-theme="feminine"] .portal-menu-icon,
body[data-portal-theme="feminine"] .portal-shop-title-icon { color:var(--fem-pink) !important; }
body[data-portal-theme="feminine"] .portal-account-avatar,
body[data-portal-theme="feminine"] .portal-shop-avatar {
  background:linear-gradient(145deg,#ff74aa,#a66ce9) !important;
  color:#fff !important;
}
body[data-portal-theme="feminine"] .portal-tabs-shell { background:rgba(255,245,250,.94) !important; }
body[data-portal-theme="feminine"] .portal-tab.active {
  color:#fff !important;
  border-color:transparent !important;
  background:linear-gradient(135deg,#f34f91,#a96ee8) !important;
  box-shadow:0 8px 18px rgba(218,57,128,.2) !important;
}
body[data-portal-theme="feminine"] .portal-tab:not(.active):hover { color:var(--fem-pink-deep) !important;background:#fff !important; }
body[data-portal-theme="feminine"] .portal-tab-count { background:#fff0f7 !important;color:#d9367a !important; }
body[data-portal-theme="feminine"] .portal-tab.active .portal-tab-count { background:rgba(255,255,255,.22) !important;color:#fff !important; }
body[data-portal-theme="feminine"] .portal-pending-prompt {
  border-color:#f1c6da !important;
  background:linear-gradient(135deg,#fff1f7,#faf2ff) !important;
  color:#793f5e !important;
}
body[data-portal-theme="feminine"] .portal-pending-prompt-icon { background:var(--fem-pink) !important;color:#fff !important; }
body[data-portal-theme="feminine"] .portal-pending-prompt a,
body[data-portal-theme="feminine"] .order-link,
body[data-portal-theme="feminine"] .portal-card-actions .primary { background:linear-gradient(135deg,#f34f91,#d9367a) !important;color:#fff !important;border-color:transparent !important; }
body[data-portal-theme="feminine"] .portal-combined-subscriptions-fill,
body[data-portal-theme="feminine"] .exp-bar-fill { background:linear-gradient(90deg,#ff78ad,#9a68eb) !important; }
body[data-portal-theme="feminine"] .status.st-Active,
body[data-portal-theme="feminine"] .status.st-Completed { background:#fff0f7 !important;color:#c62d70 !important;border-color:#f5cce0 !important; }
body[data-portal-theme="feminine"] input:focus,
body[data-portal-theme="feminine"] textarea:focus,
body[data-portal-theme="feminine"] select:focus { border-color:var(--fem-pink) !important;box-shadow:0 0 0 3px rgba(243,79,145,.1) !important; }
body[data-portal-theme="feminine"] .portal-chat-launcher {
  background:linear-gradient(135deg,#f34f91,#a86ee8) !important;
  box-shadow:0 16px 34px rgba(201,54,124,.3) !important;
}
body[data-portal-theme="feminine"] .portal-chat-header { background:linear-gradient(135deg,#f34f91,#a86ee8) !important; }

/* Feminine mobile application shell */
@media (max-width:760px) {
  body[data-portal-theme="feminine"] {
    --mobile-app-bg:#fff7fb;
    --mobile-app-surface:#ffffff;
    --mobile-app-soft:#fff3f8;
    --mobile-app-ink:#322835;
    --mobile-app-muted:#857689;
    --mobile-app-line:#f0dce8;
    --mobile-app-navy:#f34f91;
    --mobile-app-navy-2:#d9367a;
    --mobile-app-accent:#f34f91;
    --mobile-app-accent-soft:#fff0f7;
    background:#fff7fb !important;
  }
  body[data-portal-theme="feminine"]:not(.result-mode) .portal-shell { background:#fffafd !important; }
  body[data-portal-theme="feminine"]:not(.result-mode) .form-panel {
    background:
      radial-gradient(circle at 92% 8%,rgba(255,174,207,.24),transparent 22%),
      linear-gradient(180deg,#fff5fa 0,#fff 35%) !important;
  }
  body[data-portal-theme="feminine"].result-mode .portal-shell,
  body[data-portal-theme="feminine"].result-mode .form-panel { background:#fff7fb !important;border-radius:0 !important; }
  body[data-portal-theme="feminine"] .dtc-mobile-app-bar {
    border-bottom-color:rgba(239,216,230,.95) !important;
    background:rgba(255,250,253,.96) !important;
    box-shadow:0 8px 28px rgba(179,63,121,.08) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-wordmark,
  body[data-portal-theme="feminine"] .dtc-mobile-profile-avatar {
    background:linear-gradient(145deg,#f34f91,#9a68eb) !important;
    color:#fff !important;
    box-shadow:0 8px 20px rgba(207,55,124,.22) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-fixed-wallet {
    border-color:#efd8e5 !important;
    background:linear-gradient(135deg,#fffafd,#fff0f7) !important;
    color:#6e3e5a !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-home {
    background:
      radial-gradient(circle at 95% 2%,rgba(255,177,208,.18),transparent 24%),
      #fff7fb !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-welcome {
    border:1px solid #f1dbe7 !important;
    background:
      radial-gradient(circle at 92% 30%,rgba(255,255,255,.3),transparent 26%),
      linear-gradient(135deg,#f34f91 0%,#f16ba1 50%,#a66de8 100%) !important;
    box-shadow:0 18px 38px rgba(200,54,121,.22) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-balance-card,
  body[data-portal-theme="feminine"] .dtc-mobile-metric,
  body[data-portal-theme="feminine"] .dtc-mobile-status-row,
  body[data-portal-theme="feminine"] .dtc-mobile-quick-button,
  body[data-portal-theme="feminine"] .sub-card,
  body[data-portal-theme="feminine"] .portal-wallet-card,
  body[data-portal-theme="feminine"] .portal-shop-card {
    border-color:#f0dce8 !important;
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 12px 30px rgba(174,62,119,.09) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-balance-card {
    background:linear-gradient(135deg,#fff,#fff3f8) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-balance-open,
  body[data-portal-theme="feminine"] .dtc-mobile-action-card a {
    background:linear-gradient(135deg,#f34f91,#d9367a) !important;
    color:#fff !important;
    border-color:transparent !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-metric strong,
  body[data-portal-theme="feminine"] .dtc-mobile-status-count,
  body[data-portal-theme="feminine"] .dtc-mobile-section-heading button { color:#d9367a !important; }
  body[data-portal-theme="feminine"] .dtc-mobile-action-card {
    border-color:#f0cddd !important;
    background:linear-gradient(135deg,#fff0f7,#faf2ff) !important;
    color:#73435d !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-quick-icon {
    color:#db3f80 !important;
    background:linear-gradient(145deg,#fff0f7,#f4efff) !important;
    border-color:#f0d6e4 !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-bottom-nav {
    border-top-color:#efd8e5 !important;
    background:rgba(255,250,253,.97) !important;
    box-shadow:0 -12px 35px rgba(174,62,119,.1) !important;
  }
  body[data-portal-theme="feminine"] .dtc-mobile-nav-button.active { color:#f34f91 !important; }
  body[data-portal-theme="feminine"] .dtc-mobile-nav-button.active .dtc-mobile-nav-icon {
    background:linear-gradient(145deg,#fff0f7,#f4edff) !important;
    box-shadow:0 7px 16px rgba(215,57,127,.13) !important;
  }
  body[data-portal-theme="feminine"] .portal-chat-launcher { bottom:calc(82px + env(safe-area-inset-bottom)) !important; }
}
