/* TurkIX clean compact portal theme
   Inspired by the public turkix.bg design: white header, soft grey page,
   purple/pink/orange accents, and a dark traffic-statistics chart shell. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

html[data-theme="light"],
html[data-theme="dark"] {
  --bg: #f6f5f8;
  --bg-soft: #efedf3;
  --surface: #ffffff;
  --surface-2: #fbfafc;
  --surface-3: #f0edf5;
  --surface-elevated: #ffffff;
  --border: rgba(40, 26, 59, 0.10);
  --border-strong: rgba(187, 56, 127, 0.24);
  --text: #281a3b;
  --muted: #71687d;
  --muted-strong: #4b4059;
  --primary: #bb387f;
  --primary-strong: #ee3f6b;
  --primary-soft: rgba(187, 56, 127, 0.10);
  --success: #18b47e;
  --warning: #f36f25;
  --danger: #e54162;
  --shadow-lg: 0 18px 48px rgba(40, 26, 59, 0.10);
  --shadow-md: 0 10px 28px rgba(40, 26, 59, 0.08);
  --radius-xl: 18px;
  --radius-lg: 14px;
  --radius-md: 11px;
  --radius-sm: 8px;
  color-scheme: light;
}

html, body { min-height: 100%; }

html[data-theme="light"] body.portal-user,
html[data-theme="dark"] body.portal-user,
html[data-theme="light"] body.portal-auth,
html[data-theme="dark"] body.portal-auth,
html[data-theme="light"] body.portal-admin,
html[data-theme="dark"] body.portal-admin {
  font-family: "Inter", "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  color: var(--text) !important;
  background: radial-gradient(circle at 15% -20%, rgba(143,130,247,.16), transparent 28rem), radial-gradient(circle at 92% 2%, rgba(243,111,37,.12), transparent 24rem), linear-gradient(180deg, #ffffff 0%, #f8f6fa 38%, #f2eff5 100%) !important;
}
body.portal-user::before, body.portal-user::after, body.portal-auth::before, body.portal-auth::after, body.portal-admin::before, body.portal-admin::after { display: none !important; }

.portal-app > aside.portal-sidebar { display: none !important; }
.portal-shell { width: min(1320px, calc(100% - 28px)); margin: 0 auto; padding: 12px 0 24px !important; }
.portal-main { padding-top: 12px !important; }
.portal-content { min-width: 0 !important; }
.portal-section { margin-top: 12px !important; }
.row.g-3 { --bs-gutter-x: .75rem; --bs-gutter-y: .75rem; }

.portal-topbar { position: sticky !important; top: 10px !important; z-index: 100 !important; min-height: 0 !important; padding: 8px 12px !important; border-radius: 16px !important; background: rgba(255,255,255,.94) !important; border: 1px solid rgba(40,26,59,.08) !important; box-shadow: 0 12px 32px rgba(40,26,59,.10) !important; backdrop-filter: blur(18px) !important; -webkit-backdrop-filter: blur(18px) !important; }
.portal-topbar__row { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 10px !important; }
.portal-topbar__start { display: flex !important; align-items: center !important; gap: 12px !important; min-width: 0 !important; flex: 0 1 auto !important; }
.portal-topbar-brand, .portal-brand { display: inline-flex !important; align-items: center !important; gap: 8px !important; min-width: 0 !important; padding-right: 12px !important; border-right: 1px solid rgba(40,26,59,.10) !important; text-decoration: none !important; }
.portal-brand__logo, .portal-topbar-brand .portal-brand__logo, .auth-card__logo { width: 92px !important; height: 32px !important; max-width: 92px !important; object-fit: contain !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.portal-topbar-brand__text, .portal-brand__text, .portal-topbar__eyebrow, .portal-topbar__heading p { display: none !important; }
.portal-topbar__heading { min-width: 0 !important; }
.portal-topbar__heading h1 { margin: 0 !important; color: #281a3b !important; font-size: 1rem !important; line-height: 1.15 !important; font-weight: 800 !important; letter-spacing: -.02em !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.portal-topbar__actions { display: flex !important; align-items: center !important; gap: 7px !important; flex: 0 0 auto !important; }
.portal-search--member, .portal-chip--status { display: none !important; }
@media (min-width: 1200px) { .portal-topbar { display: grid !important; grid-template-columns: minmax(190px, 270px) 1fr auto !important; align-items: center !important; gap: 10px !important; } .portal-topbar__row { display: contents !important; } .portal-topbar__start { order: 1; } .portal-topnav { order: 2; } .portal-topbar__actions { order: 3; } }

.portal-topnav { display: flex !important; align-items: center !important; justify-content: center !important; gap: 4px !important; margin: 8px 0 0 !important; padding: 8px 0 0 !important; border-top: 1px solid rgba(40,26,59,.08) !important; overflow-x: auto !important; scrollbar-width: none; }
.portal-topnav::-webkit-scrollbar { display: none; }
@media (min-width: 1200px) { .portal-topnav { margin: 0 !important; padding: 0 !important; border-top: 0 !important; } }
.portal-topnav__link { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; min-height: 34px !important; padding: 0 10px !important; border-radius: 10px !important; color: #4b4059 !important; background: transparent !important; border: 1px solid transparent !important; box-shadow: none !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1 !important; white-space: nowrap !important; text-decoration: none !important; }
.portal-topnav__link i { color: #bb387f !important; font-size: .82rem !important; }
.portal-topnav__link:hover, .portal-topnav__link.active { color: #fff !important; background: linear-gradient(135deg,#643f7e 0%, #bb387f 55%, #ee3f6b 100%) !important; border-color: transparent !important; box-shadow: 0 10px 22px rgba(187,56,127,.20) !important; }
.portal-topnav__link:hover i, .portal-topnav__link.active i { color: #fbc836 !important; }

.btn, .btn-sm, .form-control, .form-select, .portal-icon-btn, .portal-user-menu { font-size: 12px !important; font-weight: 700 !important; }
.btn-outline-secondary, .btn-outline-primary, .btn-outline-danger, .portal-icon-btn, .portal-user-menu, .portal-search__field, .form-control, .form-select { min-height: 34px !important; border-radius: 10px !important; color: #4b4059 !important; background: #fff !important; border: 1px solid rgba(40,26,59,.10) !important; box-shadow: 0 6px 16px rgba(40,26,59,.06) !important; }
.portal-icon-btn { width: 34px !important; height: 34px !important; padding: 0 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }
.portal-icon-btn__badge { top: -4px !important; right: -4px !important; min-width: 15px !important; height: 15px !important; padding: 0 4px !important; font-size: 9px !important; background: #ee3f6b !important; color: #fff !important; border: 2px solid #fff !important; }
.portal-user-menu { height: 34px !important; padding: 3px 8px 3px 3px !important; gap: 7px !important; }
.portal-user-menu__avatar { width: 28px !important; height: 28px !important; border-radius: 50% !important; font-size: .70rem !important; color: #fff !important; background: linear-gradient(135deg,#643f7e,#bb387f,#ee3f6b) !important; box-shadow: none !important; }
.portal-user-menu__meta small { display: none !important; }
.portal-user-menu__meta strong { max-width: 105px !important; overflow: hidden !important; white-space: nowrap !important; text-overflow: ellipsis !important; color: #281a3b !important; font-size: .72rem !important; }
.portal-user-menu__chevron { color: #8a8094 !important; font-size: .66rem !important; }
.btn-outline-secondary:hover, .btn-outline-primary:hover, .btn-outline-danger:hover { background: #fbf0f6 !important; border-color: rgba(187,56,127,.22) !important; color: #bb387f !important; }
.btn-primary, .progress-bar { color: #fff !important; background: linear-gradient(135deg,#643f7e 0%, #bb387f 55%, #ee3f6b 100%) !important; border: 0 !important; }

.card, .portal-card, .auth-card, .auth-panel, .table-responsive, .table-toolbar, .portal-footer__inner, .mini-list__item, .soft-data-row, .progress-metric, .activity-timeline__item, .chart-panel__metric, .empty-state, .quick-actions a, .portal-dropdown, .portal-search__dropdown, .portal-chip, .hero-pill, .canvas-wrap, .chart-shell { color: #281a3b !important; background: #fff !important; border: 1px solid rgba(40,26,59,.08) !important; box-shadow: 0 10px 28px rgba(40,26,59,.07) !important; }
.card, .portal-card { border-radius: 14px !important; overflow: hidden !important; }
.portal-card__header, .card-header { padding: .75rem .85rem !important; border-bottom: 1px solid rgba(40,26,59,.08) !important; background: transparent !important; }
.portal-card__body, .card-body { padding: .85rem !important; }
.section-title { gap: .65rem !important; }
.section-title__eyebrow, .traffic-explorer__kicker, .metric-label, .tx-control-label { color: #bb387f !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .11em !important; text-transform: uppercase !important; }
.section-title h4, .section-title h5, .card h4, .card h5 { color: #281a3b !important; font-weight: 800 !important; letter-spacing: -.02em !important; margin: 0 !important; }
.section-title p, .card p, .text-muted, .metric-sub, .saas-stat__footer, .activity-timeline__content p, .soft-data-row small, .mini-list__item span:first-child, .progress-metric small, .chart-panel__metric small { color: #7b7287 !important; }

.saas-stat .portal-card__body { padding: .85rem !important; }
.saas-stat__header { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: .6rem !important; }
.saas-stat__icon, .luxury-chart-frame__title-icon, .traffic-showcase__badge { width: 30px !important; height: 30px !important; border-radius: 10px !important; background: rgba(187,56,127,.10) !important; color: #bb387f !important; }
.saas-stat__trend { padding: 4px 9px !important; border-radius: 999px !important; color: #643f7e !important; background: rgba(100,63,126,.07) !important; border: 1px solid rgba(100,63,126,.12) !important; font-size: 10px !important; letter-spacing: .10em !important; text-transform: uppercase !important; }
.saas-stat__trend.is-success { color: #078a5d !important; background: rgba(24,180,126,.10) !important; border-color: rgba(24,180,126,.18) !important; }
.saas-stat__trend.is-warning { color: #b64d0b !important; background: rgba(243,111,37,.10) !important; border-color: rgba(243,111,37,.18) !important; }
.metric-label { margin-top: .65rem !important; }
.metric-value { color: #281a3b !important; font-size: clamp(1rem, 1.45vw, 1.24rem) !important; font-weight: 800 !important; line-height: 1.15 !important; margin-top: 4px !important; }
.metric-sub { margin-top: .3rem !important; font-size: .74rem !important; line-height: 1.35 !important; }
.saas-stat__footer { margin-top: .7rem !important; padding-top: .65rem !important; border-color: rgba(40,26,59,.08) !important; font-size: .70rem !important; }
.saas-stat__meta { color: #bb387f !important; }

.traffic-showcase-card { position: relative !important; overflow: hidden !important; border-radius: 18px !important; color: #fff !important;
  border: 1px solid rgba(40, 26, 59, .09) !important; }
.traffic-showcase-card::before { content: "" !important; position: absolute !important; inset: 0 !important; background: radial-gradient(circle at top right,rgba(0,183,255,.13),transparent 38%) !important; pointer-events: none !important; }
.traffic-showcase-card > * { position: relative !important; z-index: 1 !important; }
.traffic-showcase-card .portal-card__header { padding: .95rem 1rem .45rem !important; border-bottom: 0 !important; }
.traffic-showcase-card .portal-card__body { padding: .85rem 1rem 1rem !important; }
.traffic-showcase__header { align-items: flex-start !important; gap: .75rem !important; }
.traffic-showcase__headline { gap: .7rem !important; }
.traffic-showcase__headline h4, .traffic-showcase-card h4, .traffic-showcase-card h5 { color: #fff !important; font-size: 1.02rem !important; }
.traffic-showcase__headline p { display: none !important; }
.traffic-showcase-card .section-title__eyebrow, .traffic-showcase-card .traffic-explorer__kicker, .traffic-showcase-card .live-traffic-widget__label, .traffic-showcase-card .live-traffic-stat span { color: #99dfff !important; }
.traffic-showcase-card .portal-chip { min-height: 30px !important; color: rgba(255,255,255,.78) !important; background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.10) !important; box-shadow: none !important; padding: 0 10px !important; border-radius: 999px !important; font-size: .70rem !important; }
.traffic-showcase-card .traffic-showcase__badge, .traffic-showcase-card .luxury-chart-frame__title-icon { color: #99dfff !important; background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.08) !important; }
.live-traffic-widget { gap: 12px !important; }
.live-traffic-widget__toolbar { display: flex !important; flex-wrap: wrap !important; align-items: flex-end !important; justify-content: space-between !important; gap: 10px !important; padding: 0 0 .75rem !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.live-traffic-widget__control { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px !important; }
.live-traffic-widget__label { width: 100% !important; margin: 0 0 2px !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .11em !important; text-transform: uppercase !important; }
.live-traffic-widget__pill { min-height: 32px !important; padding: 0 12px !important; border-radius: 999px !important; color: #dceaf7 !important; background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.10) !important; box-shadow: none !important; font-size: 12px !important; font-weight: 700 !important; }
.live-traffic-widget__pill:hover, .live-traffic-widget__pill.is-active { color: #061624 !important; background: linear-gradient(135deg,#00b7ff 0%,#4fd6ff 100%) !important; border-color: transparent !important; box-shadow: 0 12px 26px rgba(0,183,255,.20) !important; transform: none !important; }
.traffic-showcase-card .btn-outline-secondary { color: #dceaf7 !important; background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.10) !important; box-shadow: none !important; }
.traffic-showcase-card .btn-outline-secondary:hover { color: #061624 !important; background: #4fd6ff !important; }
.live-traffic-stats { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 10px !important; margin: 0 0 12px !important; }
.live-traffic-stat { padding: 12px !important; border-radius: 14px !important; background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.08) !important; box-shadow: none !important; }
.live-traffic-stat strong { display: block !important; margin-top: 4px !important; color: #fff !important; font-size: clamp(.92rem, 1.4vw, 1.25rem) !important; line-height: 1.15 !important; font-weight: 800 !important; word-break: break-word !important; }
.live-traffic-frame { border-radius: 16px !important; padding: 12px !important; background: rgba(255,255,255,.03) !important; border: 1px solid rgba(255,255,255,.08) !important; box-shadow: none !important; }
.live-traffic-frame__head { align-items: center !important; margin-bottom: 9px !important; }
.traffic-explorer__meta { gap: 6px !important; }
.traffic-explorer__meta span { padding: 6px 9px !important; border-radius: 999px !important; font-size: .70rem !important; color: rgba(255,255,255,.70) !important; background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.08) !important; }
.live-traffic-chart-area { position: relative !important; height: 270px !important; min-height: 270px !important; max-height: 270px !important; padding: 10px !important; border-radius: 14px !important; background-color: #2a1d3b !important; overflow: hidden !important; }
.live-traffic-canvas { background: transparent !important; }
.live-traffic-loader, .live-traffic-error { inset: 10px !important; border-radius: 12px !important; color: rgba(216,229,242,.92) !important; background: rgba(7,15,25,.78) !important; border: 1px solid rgba(255,255,255,.10) !important; font-size: .82rem !important; z-index: 2 !important; }
.live-traffic-error { color: #ffe3e3 !important; background: rgba(66,18,18,.78) !important; }
.traffic-explorer__legend { margin-top: 9px !important; gap: 8px !important; }
.traffic-explorer__legend span { min-height: 25px !important; padding: 0 9px !important; border-radius: 999px !important; font-size: .70rem !important; color: rgba(255,255,255,.68) !important; background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.07) !important; }
.traffic-explorer__legend span::before { background: #45d3ff !important; }
.traffic-explorer__legend span:nth-child(2)::before { background: #7ef0c8 !important; }
.traffic-explorer__legend span:nth-child(3)::before { background: #fbc836 !important; }
.live-traffic-fallback { border-radius: 12px !important; background: #08121d !important; }

.portal-widget-board__hint { display: none !important; }
.chart-card__canvas, .chart-panel__canvas { height: 190px !important; }
.chart-panel__meta { gap: 8px !important; }
.progress-stack { gap: 8px !important; }
.progress-metric { padding: .72rem !important; border-radius: 12px !important; background: #fbfafc !important; box-shadow: none !important; }
.progress { height: 7px !important; background: #ece8f1 !important; }
.activity-timeline { gap: 8px !important; }
.activity-timeline__item { padding: .78rem !important; border-radius: 12px !important; background: #fbfafc !important; box-shadow: none !important; }
.activity-timeline__icon { box-shadow: none !important; }
.activity-timeline__head strong, .soft-data-row strong, .mini-list__item span:last-child, .progress-metric__meta strong, .chart-panel__metric strong { color: #281a3b !important; }
.activity-timeline__head span { color: #bb387f !important; }
.activity-timeline__content p { font-size: .78rem !important; line-height: 1.42 !important; }
.mini-list { gap: 7px !important; }
.mini-list__item { padding: .65rem .75rem !important; border-radius: 11px !important; background: #fbfafc !important; box-shadow: none !important; }
.soft-data-row { padding: .68rem .75rem !important; border-radius: 11px !important; background: #fbfafc !important; box-shadow: none !important; }
.quick-actions { gap: 8px !important; }
.quick-actions a { min-height: 50px !important; padding: .75rem .85rem !important; border-radius: 12px !important; background: #fbfafc !important; box-shadow: none !important; }
.quick-actions a:hover { border-color: rgba(187,56,127,.22) !important; background: #fff7fb !important; }
.quick-actions a strong { color: #281a3b !important; font-size: .84rem !important; }
.quick-actions a i { color: #bb387f !important; }

.table { color: #281a3b !important; }
.table > :not(caption) > * > * { color: #3f334d !important; border-color: rgba(40,26,59,.08) !important; padding: .62rem .7rem !important; }
.table thead th { color: #4b306f !important; background: #f6f0f7 !important; font-size: .68rem !important; letter-spacing: .08em !important; text-transform: uppercase !important; }
.table-striped > tbody > tr:nth-of-type(odd) > * { background-color: #fbfafc !important; }
.badge { font-weight: 800 !important; border-radius: 999px !important; }
.dropdown-menu.portal-dropdown { border-radius: 14px !important; padding: 8px !important; color: #281a3b !important; background: #fff !important; }
.portal-dropdown__header, .portal-dropdown__footer { border-color: rgba(40,26,59,.08) !important; }
.portal-dropdown__item { color: #4b4059 !important; border-radius: 11px !important; }
.portal-dropdown__item:hover { background: #fbf0f6 !important; color: #bb387f !important; }
.portal-dropdown__item-icon { color: #bb387f !important; background: rgba(187,56,127,.10) !important; }
.portal-dropdown__item-content strong, .portal-dropdown__profile strong { color: #281a3b !important; }
.portal-dropdown__item-content small, .portal-dropdown__profile small { color: #7b7287 !important; }

.portal-sidebar--mobile { color: #281a3b !important; background: #fff !important; }
.portal-sidebar--mobile .btn-close-white { filter: none !important; }
.portal-nav-group__label { color: #bb387f !important; }
.portal-nav-link { color: #4b4059 !important; background: #fbfafc !important; border: 1px solid rgba(40,26,59,.08) !important; box-shadow: none !important; }
.portal-nav-link.active, .portal-nav-link:hover { color: #fff !important; background: linear-gradient(135deg,#643f7e,#bb387f,#ee3f6b) !important; }

.auth-shell { padding: 18px !important; }
.auth-grid, .auth-grid--minimal { max-width: 960px !important; }
.auth-card, .auth-card--minimal { padding: 1.25rem !important; border-radius: 18px !important; }
.auth-card__brand { margin-bottom: 1rem !important; }
.auth-card__logo { width: 110px !important; height: 38px !important; }
.auth-card__title { color: #281a3b !important; font-size: clamp(1.25rem, 2vw, 1.7rem) !important; }
.auth-card__subtitle { color: #7b7287 !important; }
.auth-card__eyebrow { color: #bb387f !important; background: rgba(187,56,127,.10) !important; }

@media (max-width: 1199.98px) { .portal-topbar__row { flex-wrap: nowrap !important; } .portal-topbar__start { flex: 1 1 auto !important; } .portal-topnav { justify-content: flex-start !important; } .portal-topbar__actions { margin-left: auto !important; } .portal-user-menu__meta { display: none !important; } .live-traffic-chart-area { height: 250px !important; min-height: 250px !important; max-height: 250px !important; } }
@media (max-width: 991.98px) { .live-traffic-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 767.98px) { .portal-shell { width: min(100% - 18px, 1320px); padding-top: 9px !important; } .portal-topbar { top: 7px !important; border-radius: 14px !important; padding: 7px 9px !important; } .portal-brand__logo, .portal-topbar-brand .portal-brand__logo { width: 82px !important; height: 28px !important; } .portal-topbar__heading h1 { display: none !important; } .portal-icon-btn { display: none !important; } .portal-topnav__link { min-height: 32px !important; padding: 0 9px !important; font-size: 11.5px !important; } .traffic-showcase-card .portal-card__header, .traffic-showcase-card .portal-card__body { padding-left: .75rem !important; padding-right: .75rem !important; } .live-traffic-widget__toolbar { align-items: stretch !important; } .live-traffic-widget__control { width: 100% !important; } .live-traffic-chart-area { height: 230px !important; min-height: 230px !important; max-height: 230px !important; } .traffic-explorer__meta { justify-content: flex-start !important; } }
@media (max-width: 575.98px) { .live-traffic-stats { grid-template-columns: 1fr !important; } .portal-user-menu { width: 34px !important; padding: 3px !important; } .portal-user-menu__meta, .portal-user-menu__chevron { display: none !important; } }

/* TurkIX traffic color harmony fix
   Keeps the page/cards light like turkix.bg, while preserving the dark chart canvas. */
.traffic-showcase-card {
  color: #281a3b !important;
  border: 1px solid rgba(40, 26, 59, .09) !important;
  box-shadow: 0 16px 40px rgba(40, 26, 59, .08) !important;
}
.traffic-showcase-card::before {
  background: linear-gradient(90deg, rgba(187,56,127,.045), rgba(0,183,255,.08)) !important;
  opacity: .9 !important;
}
.traffic-showcase-card .portal-card__header,
.traffic-showcase-card .portal-card__body {
  color: #281a3b !important;
}
.traffic-showcase-card h4,
.traffic-showcase-card h5,
.traffic-showcase__headline h4,
.traffic-showcase-card .luxury-chart-frame__title h5,
.traffic-showcase-card [data-live-heading] {
  color: #161224 !important;
}
.traffic-showcase-card p,
.traffic-showcase-card .text-muted {
  color: #7b7287 !important;
}
.traffic-showcase-card .section-title__eyebrow,
.traffic-showcase-card .traffic-explorer__kicker,
.traffic-showcase-card .live-traffic-widget__label,
.traffic-showcase-card .live-traffic-stat span {
  color: #2bbbea !important;
  text-shadow: none !important;
}
.traffic-showcase-card .portal-chip,
.traffic-explorer__meta span {
  color: #41384d !important;
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(40,26,59,.10) !important;
  box-shadow: 0 7px 18px rgba(40,26,59,.06) !important;
}
.traffic-showcase-card .traffic-showcase__badge,
.traffic-showcase-card .luxury-chart-frame__title-icon {
  color: #2bbbea !important;
  background: rgba(43,187,234,.12) !important;
  border: 1px solid rgba(43,187,234,.14) !important;
}
.live-traffic-widget__pill {
  color: #4b4059 !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(40,26,59,.10) !important;
  box-shadow: 0 8px 20px rgba(40,26,59,.05) !important;
}
.live-traffic-widget__pill:hover,
.live-traffic-widget__pill.is-active {
  color: #ffffff !important;
  background: linear-gradient(135deg,#2bbbea 0%, #39c5f4 45%, #bb387f 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 12px 26px rgba(43,187,234,.22) !important;
}
.traffic-showcase-card .btn-outline-secondary {
  color: #281a3b !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(40,26,59,.12) !important;
  box-shadow: 0 8px 20px rgba(40,26,59,.06) !important;
}
.traffic-showcase-card .btn-outline-secondary:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg,#643f7e,#bb387f,#ee3f6b) !important;
  border-color: transparent !important;
}
.live-traffic-stat {
  background: rgba(255,255,255,.58) !important;
  border: 1px solid rgba(40,26,59,.075) !important;
  box-shadow: 0 10px 24px rgba(40,26,59,.045) !important;
}
.live-traffic-stat strong {
  color: #bb387f !important;
  text-shadow: none !important;
}
.live-traffic-frame {
  background: rgba(255,255,255,.62) !important;
  border: 1px solid rgba(40,26,59,.08) !important;
  box-shadow: 0 10px 26px rgba(40,26,59,.055) !important;
}
.live-traffic-frame__head {
  color: #281a3b !important;
}
.live-traffic-chart-area {
  background-color: #2a1d3b !important;
  border: 1px solid rgba(11,21,35,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.traffic-explorer__legend span {
  color: #4b4059 !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(40,26,59,.09) !important;
  box-shadow: 0 6px 14px rgba(40,26,59,.045) !important;
}
.traffic-showcase-card code {
  color: #bb387f !important;
  background: rgba(187,56,127,.09) !important;
  border-radius: 6px !important;
  padding: .12rem .32rem !important;
}

/* TurkIX button + login polish fix
   Makes the login screen cleaner and unifies button colors across the portal. */
.btn,
button.btn,
a.btn {
  min-height: 36px !important;
  padding: .58rem .95rem !important;
  border-radius: 11px !important;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
.btn i,
a.btn i,
button.btn i {
  margin-right: .35rem !important;
}
.btn-primary,
.btn.btn-primary,
button.btn-primary,
a.btn-primary,
.live-traffic-widget__pill:hover,
.live-traffic-widget__pill.is-active,
.traffic-showcase-card .btn-outline-secondary:hover,
.portal-nav-link.active,
.portal-nav-link:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6e4b8e 0%, #bb387f 58%, #ee3f6b 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 12px 26px rgba(187,56,127,.22) !important;
}
.btn-primary:hover,
.btn.btn-primary:hover,
button.btn-primary:hover,
a.btn-primary:hover {
  color: #ffffff !important;
  filter: saturate(1.04) brightness(.98) !important;
  transform: translateY(-1px) !important;
}
.btn-primary:focus,
.btn-outline-secondary:focus,
.btn-outline-primary:focus,
.form-control:focus,
.form-select:focus {
  box-shadow: 0 0 0 .2rem rgba(187,56,127,.16), 0 8px 18px rgba(40,26,59,.08) !important;
  border-color: rgba(187,56,127,.34) !important;
}
.btn-outline-secondary,
.btn-outline-primary,
.btn-outline-danger {
  color: #4b4059 !important;
  background: #ffffff !important;
  border: 1px solid rgba(40,26,59,.10) !important;
  box-shadow: 0 6px 16px rgba(40,26,59,.05) !important;
}
.btn-outline-secondary:hover,
.btn-outline-primary:hover,
.btn-outline-danger:hover {
  color: #bb387f !important;
  background: #fff6fb !important;
  border-color: rgba(187,56,127,.22) !important;
}
.live-traffic-widget__pill {
  color: #4b4059 !important;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(40,26,59,.10) !important;
  box-shadow: 0 8px 18px rgba(40,26,59,.05) !important;
}
.live-traffic-widget__pill:hover,
.live-traffic-widget__pill.is-active {
  box-shadow: 0 12px 26px rgba(187,56,127,.22) !important;
}
.traffic-showcase-card .btn-outline-secondary {
  color: #4b4059 !important;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(40,26,59,.11) !important;
}

body.portal-auth .portal-shell {
  width: min(100% - 24px, 1220px) !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 26px 0 !important;
}
.auth-shell {
  width: 100% !important;
  padding: 12px !important;
}
.auth-grid,
.auth-grid--minimal {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}
.auth-card,
.auth-card--minimal {
  padding: 1.65rem !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(251,250,252,.98) 100%) !important;
  border: 1px solid rgba(40,26,59,.08) !important;
  box-shadow: 0 24px 60px rgba(40,26,59,.10) !important;
}
.auth-card__brand {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-bottom: 1.15rem !important;
}
.auth-card__logo {
  width: 118px !important;
  height: 42px !important;
  max-width: 118px !important;
  object-fit: contain !important;
}
.auth-card__eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: #bb387f !important;
  background: rgba(187,56,127,.09) !important;
  margin-bottom: .55rem !important;
}
.auth-card__title {
  margin: 0 0 .35rem !important;
  font-size: clamp(1.75rem, 2.4vw, 2.1rem) !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
}
.auth-card__subtitle {
  margin: 0 !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
  color: #7b7287 !important;
}
.auth-form-simple {
  margin-top: .6rem !important;
}
.auth-form-simple .form-label {
  margin-bottom: .45rem !important;
  color: #4b4059 !important;
  font-size: .90rem !important;
  font-weight: 700 !important;
}
.auth-form-simple .form-control {
  min-height: 46px !important;
  border-radius: 12px !important;
  font-size: .93rem !important;
  font-weight: 600 !important;
  padding: .78rem .95rem !important;
  background: #ffffff !important;
  border: 1px solid rgba(40,26,59,.10) !important;
}
.auth-form-simple .form-control::placeholder {
  color: #9a92a8 !important;
}
.auth-input-group {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 10px !important;
}
.auth-input-group__action {
  min-width: 110px !important;
  min-height: 46px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
}
.auth-form-simple .btn-primary {
  min-height: 48px !important;
  border-radius: 14px !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
}
.auth-footer,
.auth-footer--minimal {
  margin-top: 1rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(40,26,59,.08) !important;
  color: #7b7287 !important;
  font-size: .95rem !important;
}
@media (max-width: 767.98px) {
  body.portal-auth .portal-shell {
    width: min(100% - 16px, 1220px) !important;
    padding: 16px 0 !important;
  }
  .auth-shell {
    padding: 6px !important;
  }
  .auth-card,
  .auth-card--minimal {
    padding: 1.15rem !important;
    border-radius: 18px !important;
  }
  .auth-card__brand {
    align-items: flex-start !important;
    gap: 12px !important;
  }
  .auth-card__logo {
    width: 96px !important;
    height: 34px !important;
    max-width: 96px !important;
  }
  .auth-card__title {
    font-size: 1.75rem !important;
  }
  .auth-card__subtitle {
    font-size: .95rem !important;
  }
  .auth-input-group {
    grid-template-columns: 1fr !important;
  }
  .auth-input-group__action {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* Admin top navigation + support ticket module */
body.portal-admin .portal-topnav--admin {
  display: flex !important;
}
body.portal-admin .portal-topbar {
  overflow: visible !important;
}
.ticket-thread {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
.ticket-message {
  width: min(820px, 100%) !important;
  padding: 14px 16px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(40,26,59,.08) !important;
  box-shadow: 0 10px 24px rgba(40,26,59,.05) !important;
}
.ticket-message--customer {
  align-self: flex-start !important;
  background: #ffffff !important;
}
.ticket-message--admin {
  align-self: flex-end !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #6e4b8e 0%, #bb387f 58%, #ee3f6b 100%) !important;
  border-color: transparent !important;
}
.ticket-message__meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 8px !important;
  font-size: .78rem !important;
}
.ticket-message__meta strong {
  color: inherit !important;
}
.ticket-message__meta span {
  color: #7b7287 !important;
  font-weight: 700 !important;
}
.ticket-message--admin .ticket-message__meta span {
  color: rgba(255,255,255,.72) !important;
}
.ticket-message__body {
  color: #3f334d !important;
  font-size: .92rem !important;
  line-height: 1.55 !important;
  word-break: break-word !important;
}
.ticket-message--admin .ticket-message__body {
  color: rgba(255,255,255,.95) !important;
}
.ticket-reply-form textarea.form-control {
  min-height: 128px !important;
}
@media (max-width: 1199.98px) {
  body.portal-admin .portal-topnav--admin {
    justify-content: flex-start !important;
    width: 100% !important;
  }
}


/* Mobile header cleanup
   Keeps the header as a compact single row on phones:
   hamburger + logo on the left, account on the right, menu scrolls horizontally below. */
@media (max-width: 767.98px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  .portal-shell {
    width: min(100% - 14px, 1320px) !important;
    padding-top: 7px !important;
  }

  .portal-topbar {
    top: 6px !important;
    display: block !important;
    width: 100% !important;
    padding: 8px 9px 9px !important;
    border-radius: 15px !important;
    overflow: visible !important;
  }

  .portal-topbar__row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .portal-topbar__start {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    flex: initial !important;
  }

  .portal-topbar__start > .btn,
  .portal-topbar__start > button.btn {
    flex: 0 0 36px !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 11px !important;
  }

  .portal-topbar-brand,
  .portal-brand {
    flex: 0 0 auto !important;
    padding-right: 0 !important;
    border-right: 0 !important;
    gap: 0 !important;
  }

  .portal-brand__logo,
  .portal-topbar-brand .portal-brand__logo {
    width: 94px !important;
    max-width: 94px !important;
    height: 30px !important;
  }

  .portal-topbar__heading {
    display: none !important;
  }

  .portal-topbar__actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    width: auto !important;
    min-width: 36px !important;
    margin-left: 0 !important;
    flex: initial !important;
  }

  .portal-search,
  .portal-search--member,
  .portal-search--admin,
  .portal-chip--status,
  .portal-icon-btn {
    display: none !important;
  }

  .portal-user-menu {
    flex: 0 0 36px !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 3px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .portal-user-menu__avatar {
    width: 30px !important;
    height: 30px !important;
    font-size: .72rem !important;
  }

  .portal-user-menu__meta,
  .portal-user-menu__chevron {
    display: none !important;
  }

  .portal-topnav,
  .portal-topnav--admin {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 9px 0 0 !important;
    padding: 8px 0 0 !important;
    border-top: 1px solid rgba(40,26,59,.08) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .portal-topnav::-webkit-scrollbar,
  .portal-topnav--admin::-webkit-scrollbar {
    display: none !important;
  }

  .portal-topnav::after,
  .portal-topnav--admin::after {
    content: "" !important;
    flex: 0 0 1px !important;
    height: 1px !important;
  }

  .portal-topnav__link {
    flex: 0 0 auto !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    border-radius: 10px !important;
    font-size: 11.4px !important;
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(40,26,59,.08) !important;
    box-shadow: none !important;
  }

  .portal-topnav__link i {
    font-size: .78rem !important;
  }

  .portal-topnav__link.active,
  .portal-topnav__link:hover {
    background: linear-gradient(135deg,#6e4b8e 0%, #bb387f 58%, #ee3f6b 100%) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 8px 18px rgba(187,56,127,.18) !important;
  }

  .dropdown-menu.portal-dropdown {
    max-width: calc(100vw - 22px) !important;
  }
}

@media (max-width: 420px) {
  .portal-shell {
    width: min(100% - 10px, 1320px) !important;
  }

  .portal-topbar {
    padding: 7px 8px 8px !important;
  }

  .portal-brand__logo,
  .portal-topbar-brand .portal-brand__logo {
    width: 88px !important;
    max-width: 88px !important;
    height: 28px !important;
  }

  .portal-topbar__start {
    gap: 7px !important;
  }

  .portal-topnav__link {
    min-height: 31px !important;
    padding: 0 9px !important;
    font-size: 11px !important;
  }
}


/* Language switcher */
.portal-language-switcher {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  min-height: 34px !important;
  padding: 3px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(40,26,59,.10) !important;
  box-shadow: 0 6px 16px rgba(40,26,59,.05) !important;
}
.portal-language-switcher__item {
  min-width: 34px !important;
  height: 28px !important;
  padding: 0 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  color: #4b4059 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-decoration: none !important;
  line-height: 1 !important;
}
.portal-language-switcher__item:hover {
  color: #bb387f !important;
  background: #fff6fb !important;
}
.portal-language-switcher__item.is-active {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6e4b8e 0%, #bb387f 58%, #ee3f6b 100%) !important;
  box-shadow: 0 8px 18px rgba(187,56,127,.18) !important;
}
.portal-language-switcher--auth {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
}
.auth-card {
  position: relative !important;
}
.portal-language-switcher--mobile {
  width: 100% !important;
  justify-content: center !important;
}
@media (max-width: 767.98px) {
  .portal-language-switcher--topbar {
    min-height: 34px !important;
    padding: 3px !important;
    flex: 0 0 auto !important;
  }
  .portal-language-switcher--topbar .portal-language-switcher__item {
    min-width: 30px !important;
    height: 27px !important;
    padding: 0 7px !important;
    font-size: 10.5px !important;
  }
  .portal-language-switcher--auth {
    position: static !important;
    width: max-content !important;
    margin-left: auto !important;
    margin-bottom: 12px !important;
  }
}
