.partner-portal-active .announcement,
.partner-portal-active .site-header,
.partner-portal-active .partner-hero,
.partner-portal-active .site-footer,
.partner-portal-active > .cart-drawer,
.partner-portal-active > .admin-drawer { display: none !important; }
.partner-portal-active { margin: 0; background: #f7f5f8; }
.partner-portal-active main { min-height: 100vh; }
.partner-portal-active .page-view[data-page="partner"],
.partner-portal-active .partner-section { display: block !important; min-height: 100vh; padding: 0; background: #f7f5f8; }
.partner-portal-active .partner-shell { width: 100%; max-width: none; padding: 0; }
.partner-portal-shell { --partner-sidebar: 264px; min-height: 100vh; color: #281d2d; background: #f7f5f8; }
.partner-portal-sidebar { position: fixed; z-index: 80; inset-block: 0; inset-inline-start: 0; display: flex; width: var(--partner-sidebar); flex-direction: column; padding: 22px 16px; color: #fff; background: linear-gradient(180deg,#3e2349,#29162f); box-shadow: 12px 0 35px rgba(45,26,51,.12); }
[dir="rtl"] .partner-portal-sidebar { box-shadow: -12px 0 35px rgba(45,26,51,.12); }
.partner-portal-brand { display: flex; align-items: center; gap: 12px; margin: 0 4px 28px; color: #fff; text-decoration: none; }
.partner-portal-brand > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 14px; color: #4b2858; background: #fff; font: 700 1.35rem "Playfair Display",serif; }
.partner-portal-brand div { display: grid; gap: 2px; }
.partner-portal-brand b { font-size: .98rem; }
.partner-portal-brand small { color: #d9c9df; font-size: .73rem; }
.partner-portal-sidebar nav { display: grid; gap: 5px; }
.partner-portal-sidebar nav a,
.partner-nav-logout { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 13px; border: 0; border-radius: 12px; color: #e9dfee; background: transparent; font: inherit; text-align: start; text-decoration: none; cursor: pointer; }
.partner-portal-sidebar nav a:hover,
.partner-portal-sidebar nav a.active { color: #fff; background: rgba(255,255,255,.13); }
.partner-portal-sidebar nav svg,
.partner-nav-logout svg { width: 19px; height: 19px; }
.partner-nav-logout { margin-top: auto; width: 100%; border-top: 1px solid rgba(255,255,255,.12); border-radius: 0; padding-top: 16px; }
.partner-portal-main { min-height: 100vh; margin-inline-start: var(--partner-sidebar); }
.partner-portal-topbar { position: sticky; z-index: 50; top: 0; display: flex; min-height: 76px; align-items: center; gap: 18px; padding: 12px clamp(18px,3vw,42px); border-bottom: 1px solid #e8e1eb; background: rgba(255,255,255,.94); backdrop-filter: blur(15px); }
.partner-account-summary { display: flex; align-items: center; gap: 9px; min-width: 0; }
.partner-account-summary small { color: #766b7a; }
.partner-account-summary b { overflow: hidden; max-width: 240px; text-overflow: ellipsis; white-space: nowrap; }
.partner-status { display: inline-flex; align-items: center; width: max-content; padding: 5px 9px; border-radius: 999px; color: #5e6570; background: #eef0f2; font-size: .72rem; font-weight: 700; }
.partner-status.status-active,.partner-status.status-approved,.partner-status.status-paid { color: #176343; background: #ddf5e9; }
.partner-status.status-pending,.partner-status.status-prepared { color: #875b08; background: #fff0cb; }
.partner-status.status-cancelled,.partner-status.status-excluded,.partner-status.status-suspended { color: #9c3240; background: #fde4e8; }
.partner-topbar-actions { display: flex; align-items: center; gap: 10px; margin-inline-start: auto; }
.partner-store-link,.partner-primary-button,.partner-secondary-button,.partner-referral-hero button,.partner-referral-hero a,.partner-pagination button,.partner-error button,.partner-error a { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 8px; padding: 0 15px; border: 1px solid #ded4e2; border-radius: 11px; color: #4d2a58; background: #fff; font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
.partner-store-link svg,.partner-square-button svg,.partner-secondary-button svg { width: 18px; height: 18px; }
.partner-primary-button,.partner-referral-hero button { border-color: #633b70; color: #fff; background: #633b70; }
.partner-square-button { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; border: 1px solid #e2d8e5; border-radius: 11px; color: #5a3265; background: #fff; cursor: pointer; }
.partner-mobile-menu { display: none; }
.partner-language-switcher { display: flex; overflow: hidden; border: 1px solid #e2d8e5; border-radius: 11px; background: #fff; }
.partner-language-switcher button { min-height: 40px; padding: 0 9px; border: 0; color: #756978; background: transparent; font: inherit; font-size: .74rem; font-weight: 700; cursor: pointer; }
.partner-language-switcher button.active { color: #fff; background: #633b70; }
.partner-portal-content { width: min(1500px,100%); margin: 0 auto; padding: clamp(24px,3vw,44px); }
.partner-page-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.partner-page-heading small { color: #8b5f95; font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.partner-page-heading h1 { margin: 5px 0; font-size: clamp(1.65rem,3vw,2.35rem); }
.partner-page-heading p { margin: 0; color: #766b7a; }
.partner-metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; margin-bottom: 22px; }
.partner-metric { display: grid; min-height: 145px; align-content: space-between; gap: 11px; padding: 20px; border: 1px solid #ebe4ed; border-radius: 18px; background: #fff; box-shadow: 0 8px 28px rgba(44,27,49,.04); }
.partner-metric svg { width: 24px; height: 24px; }
.partner-metric small { color: #756b78; line-height: 1.35; }
.partner-metric strong { font-size: clamp(1.15rem,2vw,1.55rem); }
.partner-metric.tone-purple svg { color: #7a4987; }.partner-metric.tone-blue svg { color: #3974a8; }.partner-metric.tone-gold svg { color: #ad7719; }.partner-metric.tone-green svg { color: #2c8763; }.partner-metric.tone-gray svg { color: #6d7279; }
.partner-dashboard-columns { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(310px,.55fr); gap: 20px; align-items: start; }
.partner-panel,.partner-referral-hero { padding: 22px; border: 1px solid #e9e1eb; border-radius: 18px; background: #fff; box-shadow: 0 9px 28px rgba(42,24,47,.04); }
.partner-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.partner-panel h2 { margin: 0; font-size: 1.08rem; }
.partner-panel header a { color: #70417c; font-size: .84rem; font-weight: 700; }
.partner-table-scroll { overflow-x: auto; }
.partner-panel table { width: 100%; border-collapse: collapse; }
.partner-panel th,.partner-panel td { padding: 13px 12px; border-bottom: 1px solid #eee8ef; text-align: start; white-space: nowrap; }
.partner-panel th { color: #776d79; font-size: .76rem; font-weight: 700; }
.partner-panel td { font-size: .87rem; }
.partner-empty { display: grid; min-height: 130px; place-items: center; align-content: center; gap: 9px; color: #887d8a; text-align: center; }
.partner-empty svg { width: 28px; height: 28px; }
.partner-notice { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; padding: 15px 18px; border-radius: 14px; }
.partner-notice p { margin: 0; }.partner-notice.warning { color: #76500b; background: #fff1d2; }.partner-notice.danger { color: #8b2936; background: #fde5e9; }
.partner-payout-grid { display: grid; gap: 14px; }
.partner-payout-card { padding: 18px; border: 1px solid #ebe4ed; border-radius: 15px; background: #fff; }
.partner-payout-card header { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.partner-payout-card header div { display: grid; gap: 3px; min-width: 0; }.partner-payout-card header b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.partner-payout-card > strong { display: block; margin: 18px 0; font-size: 1.6rem; }
.partner-payout-card dl { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }.partner-payout-card dl div { display: grid; gap: 3px; }.partner-payout-card dt { color: #817683; font-size: .74rem; }.partner-payout-card dd { margin: 0; font-size: .86rem; font-weight: 700; }
.partner-payout-card details { margin-top: 16px; border-top: 1px solid #eee7f0; padding-top: 13px; }.partner-payout-card summary { cursor: pointer; font-weight: 700; }.partner-payout-card details p { display: flex; justify-content: space-between; gap: 12px; margin: 10px 0 0; }
.partner-referral-hero { display: grid; grid-template-columns: minmax(230px,.55fr) minmax(340px,1.45fr); gap: 22px; margin-bottom: 20px; color: #fff; border: 0; background: radial-gradient(circle at top right,rgba(255,255,255,.17),transparent 36%),linear-gradient(135deg,#512d5d,#754682); }
.partner-referral-hero > div:first-child { display: grid; align-content: center; gap: 7px; }.partner-referral-hero > div:first-child small,.partner-referral-hero label > span { color: #e4d5e9; }.partner-referral-hero strong { font-size: clamp(1.6rem,4vw,2.6rem); letter-spacing: .05em; }.partner-referral-hero label { display: grid; align-content: center; gap: 8px; }.partner-referral-hero label > div,.partner-link-builder label > div { display: flex; gap: 8px; }.partner-referral-hero input,.partner-link-builder input { min-width: 0; flex: 1; min-height: 46px; padding: 0 13px; border: 0; border-radius: 11px; background: #fff; }.partner-share-actions { display: flex; grid-column: 1/-1; flex-wrap: wrap; gap: 9px; }.partner-referral-hero a { min-height: 38px; color: #fff; border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.1); }
.partner-link-builder { display: grid; grid-template-columns: minmax(220px,.6fr) minmax(300px,1.4fr); gap: 18px; }.partner-link-builder label { display: grid; gap: 7px; }.partner-link-builder select,.partner-toolbar select,.partner-form-grid input,.partner-form-grid select { width: 100%; min-height: 45px; padding: 0 12px; border: 1px solid #ded5e1; border-radius: 10px; color: #2e2431; background: #fff; font: inherit; }.partner-link-builder button { min-height: 45px; padding: 0 14px; border: 0; border-radius: 10px; color: #fff; background: #633b70; font-weight: 700; cursor: pointer; }.partner-link-builder button:disabled { opacity: .5; cursor: default; }
.partner-toolbar { display: flex; justify-content: flex-end; gap: 10px; margin-bottom: 14px; }.partner-toolbar select { width: auto; min-width: 190px; }
.partner-pagination { display: flex; align-items: center; justify-content: center; gap: 14px; padding-top: 18px; }.partner-pagination button:disabled { opacity: .45; cursor: default; }
.partner-status-help { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; margin-top: 16px; }.partner-status-help article { padding: 14px; border: 1px solid #e8e1ea; border-radius: 13px; background: #fff; }.partner-status-help p { margin: 10px 0 0; color: #776d79; font-size: .78rem; line-height: 1.55; }
.partner-profile-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(310px,.65fr); gap: 20px; align-items: start; }.partner-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }.partner-form-grid.one { grid-template-columns: 1fr; }.partner-form-grid label { display: grid; gap: 7px; }.partner-form-grid label span { color: #6f6472; font-size: .8rem; font-weight: 700; }.partner-form-grid button { width: max-content; }.partner-panel hr { height: 1px; margin: 22px 0; border: 0; background: #ece5ee; }
.partner-loading,.partner-error { display: grid; min-height: 55vh; place-items: center; align-content: center; gap: 13px; color: #796e7c; text-align: center; }.partner-loading span { width: 34px; height: 34px; border: 3px solid #e5dce8; border-top-color: #754482; border-radius: 50%; animation: partner-spin .8s linear infinite; }.partner-error svg { width: 36px; height: 36px; color: #a43c4a; }.partner-error h2 { margin: 0; }
.partner-toast { position: fixed; z-index: 120; inset-inline-end: 24px; bottom: 24px; max-width: min(400px,calc(100vw - 40px)); padding: 13px 18px; border-radius: 12px; color: #fff; background: #2b765a; box-shadow: 0 12px 30px rgba(0,0,0,.2); }.partner-toast.error { background: #a33b48; }
.partner-sidebar-backdrop { display: none; }
@keyframes partner-spin { to { transform: rotate(360deg); } }

@media (max-width: 1180px) {
  .partner-metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .partner-status-help { grid-template-columns: repeat(3,1fr); }
  .partner-dashboard-columns,.partner-profile-grid { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .partner-portal-shell { --partner-sidebar: 280px; }
  .partner-portal-sidebar { transform: translateX(calc(-100% - 18px)); transition: transform .22s ease; }
  [dir="rtl"] .partner-portal-sidebar { transform: translateX(calc(100% + 18px)); }
  .partner-portal-shell.sidebar-open .partner-portal-sidebar { transform: translateX(0); }
  .partner-portal-main { margin-inline-start: 0; }
  .partner-mobile-menu { display: grid; }
  .partner-sidebar-backdrop { position: fixed; z-index: 70; inset: 0; border: 0; background: rgba(30,18,34,.42); }
  .partner-portal-shell.sidebar-open .partner-sidebar-backdrop { display: block; }
  .partner-store-link span,.partner-account-summary small { display: none; }
  .partner-account-summary { margin-inline-end: auto; }
  .partner-topbar-actions { margin-inline-start: 0; }
  .partner-referral-hero { grid-template-columns: 1fr; }
  .partner-share-actions { grid-column: auto; }
  .partner-link-builder { grid-template-columns: 1fr; }
  .partner-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .partner-portal-topbar { gap: 8px; padding: 10px 12px; }
  .partner-account-summary b { max-width: 105px; font-size: .82rem; }
  .partner-account-summary .partner-status { display: none; }
  .partner-language-switcher button { padding: 0 7px; }
  .partner-topbar-actions > .partner-square-button { display: none; }
  .partner-portal-content { padding: 20px 13px 30px; }
  .partner-metric-grid { gap: 10px; }
  .partner-metric { min-height: 126px; padding: 15px; }
  .partner-panel,.partner-referral-hero { padding: 16px; border-radius: 14px; }
  .partner-referral-hero label > div,.partner-link-builder label > div { flex-direction: column; }
  .partner-toolbar { align-items: stretch; flex-direction: column; }.partner-toolbar select { width: 100%; }
  .partner-form-grid { grid-template-columns: 1fr; }
  .partner-status-help { grid-template-columns: 1fr; }
  .partner-payout-card dl { grid-template-columns: 1fr; }
  .partner-panel table,.partner-panel thead,.partner-panel tbody,.partner-panel tr,.partner-panel td { display: block; }
  .partner-panel thead { display: none; }
  .partner-panel tr { padding: 12px 0; border-bottom: 1px solid #ebe4ed; }
  .partner-panel td { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 7px 0; border: 0; white-space: normal; text-align: end; }
  .partner-panel td::before { content: attr(data-label); color: #7b707e; font-size: .76rem; font-weight: 700; text-align: start; }
  .partner-panel td[colspan] { display: block; text-align: center; }
  .partner-panel td[colspan]::before { display: none; }
}
