/* Tantawy Luxury Category Navigation 1.1.4 – boutique edition, scoped styles */
html body [data-tnt-hidden-original="true"],
html body .tnt-lux-original-hidden { display: none !important; }
.tnt-lux-root,
.tnt-lux-root * { box-sizing: border-box; }
.tnt-lux-root {
  --tnt-purple: #913de2;
  --tnt-purple-deep: #68269c;
  --tnt-purple-soft: #f4e9fc;
  --tnt-ink: #22182c;
  --tnt-muted: #766681;
  --tnt-border: #ebdff1;
  position: relative;
  z-index: 12;
  width: 100%;
  max-width: 100%;
  isolation: isolate;
  font-family: 'Cairo', 'Tajawal', Arial, sans-serif;
  color: var(--tnt-ink);
  background: transparent;
  margin: 12px 0 28px;
  padding: 8px 3px 16px;
  direction: rtl;
  text-align: right;
}
.tnt-lux-root a { text-decoration: none !important; box-shadow: none; }
.tnt-lux-root button { font-family: inherit; }
.tnt-lux-root :focus-visible { outline: 3px solid #a647e8; outline-offset: 3px; }
.tnt-lux-scroller { width: 100%; max-width:100%; position: relative; padding: 6px 5px 14px; }
.tnt-lux-grid { display: grid; grid-template-columns: repeat(var(--tnt-col-count, 6), minmax(0, 1fr)); gap: clamp(8px, 1vw, 18px); width: 100%; }
.tnt-lux-item { position: relative; min-width: 0; border-radius: 85px 85px 23px 23px; }
.tnt-lux-card {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
  overflow: hidden;
  min-width: 0; height: clamp(164px, 15vw, 235px);
  width:100%;
  padding: 13px 11px 17px;
  background: linear-gradient(174deg, #fff 12%, #fff 65%, #fefbff 100%);
  border: 1px solid #f1e9f6;
  border-radius: 85px 85px 23px 23px;
  box-shadow: 0 5px 15px rgba(63,27,86,.045), 0 18px 32px rgba(54,24,76,.06), inset 0 2px 0 rgba(255,255,255,.98);
  color: var(--tnt-ink) !important;
  transition: transform .26s cubic-bezier(.2,.8,.2,1), box-shadow .26s ease, border-color .26s ease, background .26s ease;
}
.tnt-lux-art {
  position: relative; display: flex; align-items: center; justify-content: center;
  isolation: isolate; width: 94%; min-height: 0; flex: 1 1 0;
  overflow: hidden; border-radius: 90px 90px 9px 9px;
  background: radial-gradient(ellipse at 50% 85%, #f1e0fa 0%, #f5eafb 48%, #fcf8fe 82%);
  transition: background .3s ease;
}
.tnt-lux-art::before { content:""; pointer-events:none; position:absolute; inset:0; z-index:2; background:linear-gradient(160deg,rgba(255,255,255,.52),transparent 36%); }
.tnt-lux-art img { position:relative; display:block; z-index:1; width:92%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 8px rgba(26,12,38,.06)); transform:scale(1.04); transition:transform .32s ease; }
.tnt-lux-fallback { display:grid; place-items:center; color:#8a3dc5; background:#f0e4f8; border-radius:50%; width:58px; height:58px; font-size:32px; font-weight:700; }
.tnt-lux-title { display:block; width:100%; min-height:28px; margin-top: 9px; text-align:center; direction:rtl; color:#211529; font-size:clamp(12px,1.07vw,16px); line-height:1.5; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tnt-lux-count { display:inline-flex; align-items:center; justify-content:center; gap:4px; color:#8038b6; background:var(--tnt-purple-soft); min-height: 23px; line-height:1.3; border-radius:50px; font-size:clamp(10px,.85vw,12px); font-weight:700; padding:3px 12px; margin-top:4px; }
.tnt-lux-count b { font-weight:800; }
.tnt-lux-arrow { position:absolute; z-index:3; bottom:17px; left:15px; display:flex; align-items:center; justify-content:center; flex:0 0 auto; border-radius:50%; width:34px;height:34px; background: #f1e6fa; color:#8131c8; border:1px solid #edd8fb; box-shadow: 0 3px 8px rgba(81,28,118,.07); transition: background .26s ease, color .26s ease, transform .26s ease, box-shadow .26s ease; }
.tnt-lux-toggle { cursor:pointer; padding:0; -webkit-appearance:none; appearance:none; }
.tnt-lux-item:hover .tnt-lux-card,
.tnt-lux-item:focus-within .tnt-lux-card,
.tnt-lux-item.is-open .tnt-lux-card {
  transform: translateY(-4px);
  border-color:#ca94f1;
  box-shadow:0 12px 22px rgba(105,39,149,.09), 0 21px 38px rgba(76,27,109,.10), 0 0 0 1px rgba(192,119,239,.25);
}
.tnt-lux-item:hover .tnt-lux-art img,
.tnt-lux-item.is-open .tnt-lux-art img { transform:scale(1.095) translateY(-2px); }
.tnt-lux-item:hover .tnt-lux-arrow,
.tnt-lux-item:focus-within .tnt-lux-arrow,
.tnt-lux-item.is-open .tnt-lux-arrow { background:linear-gradient(145deg,#aa4cfa,#8731d5); color:white; border-color: #9a47de; transform:translateY(-2px); box-shadow:0 6px 13px rgba(135,48,201,.22); }
.tnt-lux-item.is-current .tnt-lux-card { border-color:#aa4cff; background:linear-gradient(170deg,#fff,#fff 78%,#fcf6ff); box-shadow:0 0 0 1px #cb96fa,0 15px 30px rgba(133,58,194,.13); }
.tnt-lux-item.is-current .tnt-lux-card::after { content:""; position:absolute; height:4px; width:34px; bottom:0; right:50%; transform:translateX(50%); border-radius:5px 5px 0 0; background:linear-gradient(90deg,#c989ff,#8634c9); }
.tnt-lux-item.is-current .tnt-lux-title { color:#7025ab; }
.tnt-lux-item.is-current .tnt-lux-arrow { background:linear-gradient(135deg,#9a43ee,#7429c2); color:white; }
/* Dropdown: placed under the card with right-to-left layout. */
.tnt-lux-submenu { position:absolute; top:calc(100% + 12px); right:0; z-index:25; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:14px; width:min(540px,calc(100vw - 32px)); padding:12px; border-radius:19px; border:1px solid #ece2f1; background:#fff; box-shadow:0 16px 54px rgba(41,18,53,.16); visibility:hidden; opacity:0; pointer-events:none; transform:translateY(8px); transition:visibility .18s,opacity .18s,transform .18s; }
.tnt-lux-item:nth-last-child(-n+2) .tnt-lux-submenu { right:auto; left:0; }
.tnt-lux-item:hover .tnt-lux-submenu,
.tnt-lux-item:focus-within .tnt-lux-submenu,
.tnt-lux-item.is-open .tnt-lux-submenu { visibility:visible; opacity:1; pointer-events:auto; transform:translateY(0); }
.tnt-lux-subfeature { display:flex; flex-direction:column; align-items:start; gap:7px; padding:12px; border-radius:14px; background:linear-gradient(155deg,#fcf5ff 0%,#f7edf9 80%,#f2e5f8); }
.tnt-lux-subvisual { height:85px;width:100%; display:flex;justify-content:center;align-items:center;overflow:hidden;background:linear-gradient(145deg,#fff,#efe1fa);border-radius:12px; }
.tnt-lux-subvisual img { width:100px;height:100px;object-fit:contain;}
.tnt-lux-subfeature strong { font-size:19px;line-height:1.4;color:#28172e;font-weight:800; }
.tnt-lux-subfeature > span:not(.tnt-lux-subvisual) {font-size:11px;color:#75627c;}
.tnt-lux-subfeature .tnt-lux-all { display:inline-flex; gap:8px; align-items:center; color:#fff !important; background:#9239d8; border-radius:40px; padding:6px 15px; font-size:11px; font-weight:800; margin-top:auto; }
.tnt-lux-sublist { list-style:none !important; margin:0 !important; padding:0 !important; display:flex;flex-direction:column;gap:2px;max-height:300px;overflow:auto; }
.tnt-lux-sublist li { list-style:none !important; padding:0 !important; margin:0 !important; }
.tnt-lux-sublist li a { display:flex; align-items:center; gap:12px; padding:9px 10px; border-radius:10px; color:#29202e !important; transition:background .18s; text-align:right; }
.tnt-lux-sublist li a:hover,.tnt-lux-sublist li a:focus-visible { background:#f6effa; }
.tnt-lux-subicon { display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#f0e4f8;color:#8935c6; }
.tnt-lux-subicon svg { width:15px;height:15px; }
.tnt-lux-subname { display:flex;flex-direction:column;gap:1px;font-size:12px;font-weight:800; }
.tnt-lux-subname small {font-size:10px;color:#987ca9;font-weight:600;}
.tnt-lux-mobile-panel { display:none; }
.tnt-lux-track { display:none; }
@media(min-width:1200px){.tnt-lux-root{padding-left:8px;padding-right:8px;}.tnt-lux-grid{gap:clamp(10px,1.1vw,19px)}}
@media(min-width:768px) and (max-width:1199px) {
  .tnt-lux-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
  .tnt-lux-card {height:185px;}
  .tnt-lux-title {font-size:14px;}
  .tnt-lux-submenu{z-index:30;}
}
@media(max-width:767px){
  .tnt-lux-root {margin:7px 0 19px;padding:0 0 8px;}
  .tnt-lux-scroller {overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;padding:9px 10px 19px;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .tnt-lux-scroller::-webkit-scrollbar {display:none;}
  .tnt-lux-grid {display:flex;gap:11px;width:max-content;min-width:100%;}
  .tnt-lux-item {flex:0 0 150px;scroll-snap-align:start;}
  .tnt-lux-card {height:174px; padding:9px 9px 12px; border-radius:75px 75px 20px 20px;}
  .tnt-lux-art {height:auto;}
  .tnt-lux-title {font-size:12px;margin-top:7px;min-height:24px;}
  .tnt-lux-count {font-size:10px;min-height:22px;padding:3px 9px;margin-top:3px;}
  .tnt-lux-arrow {height:26px;width:26px;left:9px;bottom:12px;}
  .tnt-lux-arrow svg {height:14px;width:14px;}
  .tnt-lux-submenu {display:none !important;}
  .tnt-lux-mobile-panel:not([hidden]) {display:block;margin:0 10px 12px;padding:14px;background:white;border:1px solid #e5d3f1;border-radius:16px;box-shadow:0 9px 24px rgba(85,35,126,.10);}
  .tnt-lux-mobile-head {display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
  .tnt-lux-mobile-head strong {font-size:14px;}
  .tnt-lux-mobile-close {padding:0;width:30px;height:30px;border-radius:50%;border:1px solid #e8d7f3;background:#f8eefb;color:#7731b4;font-size:24px;line-height:1;cursor:pointer;}
  .tnt-lux-mobile-content .tnt-lux-submenu{position:static;display:grid !important;visibility:visible;opacity:1;pointer-events:auto;transform:none;width:100%;padding:0;border:0;box-shadow:none;grid-template-columns:1fr 1fr;}
  .tnt-lux-subfeature strong {font-size:15px;}
  .tnt-lux-subfeature{padding:8px;}
  .tnt-lux-subfeature > span:not(.tnt-lux-subvisual){font-size:10px;}
  .tnt-lux-sublist li a {padding:8px 3px;gap:5px;}
  .tnt-lux-subname{font-size:11px;}
  .tnt-lux-track {display:block;position:relative;overflow:hidden;height:4px;width:125px;background:#ddd8e2;border-radius:20px;margin:0 auto;}
  .tnt-lux-track[hidden] {display:none;}
  .tnt-lux-progress{position:absolute;top:0;right:0;width:25%;height:100%;background:linear-gradient(90deg,#a444e3,#8a2bd4);border-radius:20px;transition:right .07s linear;}
}
@media (max-width:360px){ .tnt-lux-item {flex-basis:142px}.tnt-lux-mobile-content .tnt-lux-submenu{grid-template-columns:1fr;}.tnt-lux-subfeature {min-height:100px} }
@media(prefers-reduced-motion:reduce){.tnt-lux-root * {transition:none !important;scroll-behavior:auto !important;}}

/* Preference variants configurable in the WP dashboard. */
.tnt-lux-shadow-off .tnt-lux-card {box-shadow:none !important;}
.tnt-lux-shadow-strong .tnt-lux-card {box-shadow:0 12px 26px rgba(63,27,86,.11),0 22px 40px rgba(54,24,76,.09);}
.tnt-lux-no-hover .tnt-lux-item:not(.is-current) .tnt-lux-card,
.tnt-lux-no-hover .tnt-lux-item:not(.is-current):hover .tnt-lux-card {transform:none;}
.tnt-lux-no-hover .tnt-lux-item:hover .tnt-lux-art img {transform:scale(1.04);}
/* Keep long category names legible in narrow desktop columns. */
.tnt-lux-root .tnt-lux-title {overflow-wrap:anywhere;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;}
@media(min-width:1200px){.tnt-lux-root .tnt-lux-title {font-size:clamp(13px,1.08vw,16px)}}
@media(max-width:767px){.tnt-lux-root .tnt-lux-title{font-size:12px}}
/* Prevent wide submenus on 3-column tablet layout from extending past viewport. */
@media (min-width:768px) and (max-width:1199px) {
  .tnt-lux-root .tnt-lux-submenu { width:min(420px, calc(100vw - 40px)); }
}
/* Brand accent can be adjusted in WooCommerce > Luxury Categories. */
.tnt-lux-root .tnt-lux-count { color:var(--tnt-purple); }
.tnt-lux-root .tnt-lux-item.is-current .tnt-lux-card { border-color:var(--tnt-purple); }
.tnt-lux-root .tnt-lux-item.is-current .tnt-lux-title { color:var(--tnt-purple); }
.tnt-lux-root .tnt-lux-item.is-current .tnt-lux-arrow,
.tnt-lux-root .tnt-lux-item:hover .tnt-lux-arrow,
.tnt-lux-root .tnt-lux-item:focus-within .tnt-lux-arrow,
.tnt-lux-root .tnt-lux-item.is-open .tnt-lux-arrow { background:var(--tnt-purple);color:#fff; }
.tnt-lux-root .tnt-lux-subfeature .tnt-lux-all,
.tnt-lux-root .tnt-lux-progress { background:var(--tnt-purple); }

/* 1.1.2: on the 3-column tablet grid, the left column (every 3rd item in RTL) opened its submenu off-screen. */
@media (min-width:768px) and (max-width:1199px) {
  .tnt-lux-root .tnt-lux-item .tnt-lux-submenu { right:0; left:auto; }
  .tnt-lux-root .tnt-lux-item:nth-child(3n) .tnt-lux-submenu { right:auto; left:0; }
}

/* 1.1.3: breadcrumb shown inside a category that has sub-categories. */
.tnt-lux-crumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 6px 10px; font-size:13px; font-weight:700; color:#766681; }
.tnt-lux-crumbs a { color:var(--tnt-purple) !important; }
.tnt-lux-crumbs strong { color:#22182c; }
