/* ══════════════════════════════════════════════════════════════
   خريطة الاستخدام — انظر usemap.js
   ══════════════════════════════════════════════════════════════ */
.um{--c:#0B2620}
.um-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,32%,400px);gap:clamp(16px,2.4vw,28px);align-items:stretch}
.um-grid.full{grid-template-columns:minmax(0,1fr) clamp(300px,32%,400px)}
@media(max-width:940px){.um-grid,.um-grid.full{grid-template-columns:minmax(0,1fr)}}

/* ── المسرح ── */
.um-stage{min-width:0;background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(10px,1.2vw,14px);display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:var(--shadow)}
.um-fig{position:relative;border-radius:16px;overflow:hidden;background:#fff;line-height:0;isolation:isolate;width:fit-content;max-width:100%;margin:0 auto}
/* الصورة عمودية: يُحدّ ارتفاعها بارتفاع الشاشة كي تظهر البطاقة كاملة بلا تمرير */
.um-img{display:block;width:auto;max-width:100%;height:auto;max-height:clamp(320px,calc(100vh - 420px),560px);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
@media(max-width:940px){.um-img{max-height:min(70vh,640px)}}
.um-fig.lit .um-img{transform:scale(1.015)}
.um-svg{position:absolute;inset:0;width:100%;height:100%;direction:ltr;overflow:visible}
.um-dim{fill:#061512;fill-opacity:0;transition:fill-opacity .6s}
.um-fig.lit .um-dim{fill-opacity:.42}
.um-cut{transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .55s cubic-bezier(.2,.9,.3,1.1);transition-delay:calc(var(--i,0)*70ms)}
.um-cut.on{transform:scale(1)}
.um-z{fill:var(--c);fill-opacity:0;stroke:var(--c);stroke-width:5;stroke-opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.4);
  transition:transform .55s cubic-bezier(.2,.9,.3,1.1),fill-opacity .4s,stroke-opacity .4s;transition-delay:calc(var(--i,0)*70ms);pointer-events:none}
.um-z.on{fill-opacity:.16;stroke-opacity:.95;transform:scale(1)}
.um-scan{opacity:0;pointer-events:none}
.um-scan.go{animation:um-scan 1.1s cubic-bezier(.4,0,.2,1) 1}
@keyframes um-scan{0%{transform:translateY(0);opacity:1}100%{transform:translateY(1520px);opacity:1}}

.um-pin{cursor:pointer;transition:opacity .3s}
.um-pin .um-dot{fill:var(--c);stroke:#fff;stroke-width:4;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}
.um-pin .um-ring{fill:none;stroke:var(--c);stroke-width:3;opacity:.75;transform-box:fill-box;transform-origin:center;animation:um-pulse 2s ease-out infinite}
.um-pin .um-ring.r2{animation-delay:1s}
.um-pin text{fill:#fff;font:700 22px 'Space Grotesk',sans-serif;text-anchor:middle;pointer-events:none}
.um-pin:hover .um-dot,.um-pin:focus-visible .um-dot{stroke-width:6}
.um-pin:focus{outline:none}
@keyframes um-pulse{0%{transform:scale(.6);opacity:.85}100%{transform:scale(1.6);opacity:0}}
/* الدبابيس النشطة تنبثق بالتتابع */
.um-pin .um-in{transform-box:fill-box;transform-origin:center}
.um-pin.on .um-in{animation:um-pop .6s cubic-bezier(.2,1.5,.4,1) both;animation-delay:calc(var(--i,0)*90ms + 120ms)}
@keyframes um-pop{0%{opacity:0;transform:scale(.2)}100%{opacity:1;transform:scale(1)}}
/* بلا اختيار تظهر الدبابيس باهتة كي يعرف الزائر أنها قابلة للضغط */
.um-pin:not(.on){opacity:.5}
.um-pin:not(.on) .um-dot{fill:#3F5651}
.um-pin:not(.on) .um-ring{display:none}
.um-pin:not(.on):hover{opacity:1}
.um-pin:not(.on):hover .um-dot{fill:var(--teal-700)}
.um-fig.lit .um-pin:not(.on){opacity:.28}
.um-fig.lit .um-pin:not(.on) .um-dot{fill:#fff}
.um-fig.lit .um-pin:not(.on) text{fill:#0B2620}

/* بطاقة التفاصيل العائمة أسفل المبنى */
.um-detail{width:0;min-width:100%;min-height:64px;line-height:1.4;opacity:0;transform:translateY(16px);pointer-events:none;transition:.5s cubic-bezier(.2,.9,.3,1)}
.um-detail.in{opacity:1;transform:none;pointer-events:auto}
.um-dl{display:grid;grid-template-columns:auto minmax(0,1fr) max-content;align-items:center;gap:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--c) 10%,#fff),#fff 60%);
  border:1px solid color-mix(in srgb,var(--c) 30%,#fff);border-inline-start:5px solid var(--c);border-radius:14px;padding:8px 12px}
.um-dl img{width:48px;height:48px;object-fit:contain;border-radius:10px;background:var(--sand);animation:um-float 3.2s ease-in-out infinite}
.um-dl b{display:block;font-size:15.5px;font-weight:600;color:var(--teal-900)}
.um-dl span{display:block;font-size:12.6px;color:var(--muted);font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.um-btn{display:inline-block;min-width:max-content;font-size:12px;font-weight:600;color:#fff;background:var(--c);border-radius:100px;padding:7px 12px;text-decoration:none;white-space:nowrap;transition:.25s}
.um-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px -10px var(--c)}
@media(max-width:560px){.um-dl{grid-template-columns:auto minmax(0,1fr)}.um-btn{grid-column:1/-1;text-align:center}}
@keyframes um-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.um-num{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--teal-900);color:#fff;font:700 12px 'Space Grotesk',sans-serif;font-style:normal;margin-inline-end:8px;vertical-align:middle}
.um-num.big{width:44px;height:44px;font-size:18px;margin:0}

/* وسيلة الإيضاح */
.um-legend{width:0;min-width:100%;list-style:none;display:flex;flex-wrap:nowrap;gap:5px;min-height:28px;padding:0 0 2px;margin:0;overflow-x:auto;scrollbar-width:none}
.um-legend::-webkit-scrollbar{display:none}
.um-legend li{flex:none}
.um-legend li{animation:um-in .45s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(var(--i,0)*60ms)}
.um-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px 3px 4px;white-space:nowrap;border-radius:100px;border:1px solid color-mix(in srgb,var(--c) 40%,#fff);
  background:color-mix(in srgb,var(--c) 9%,#fff);color:var(--teal-900);font:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:.2s}
.um-chip i{width:18px;height:18px;border-radius:50%;background:var(--c);color:#fff;font:700 11px 'Space Grotesk',sans-serif;display:grid;place-items:center;font-style:normal}
.um-chip:hover{background:var(--c);color:#fff;transform:translateY(-1px)}
@keyframes um-in{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:none}}
.um-foot{width:0;min-width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line-2);padding-top:6px}
.um-foot span{font-size:11px;color:var(--muted-2);font-weight:300}
.um-clear{font:inherit;font-size:12px;font-weight:500;color:var(--teal-700);background:none;border:1px solid var(--line);border-radius:100px;padding:2px 10px;cursor:pointer}
.um-clear:hover{border-color:var(--teal-500)}

/* ── الجانب: خطوط الإنتاج ── */
.um-side{display:flex;flex-direction:column;gap:14px;min-width:0;order:-1;height:0;min-height:100%}
@media(max-width:940px){.um-side{order:0;height:auto}}
.um-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media(max-width:940px){.um-lines{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none;margin-inline:-4px;padding-inline:4px}
  .um-lines::-webkit-scrollbar{display:none}.um-line{flex:0 0 46%;scroll-snap-align:center}}
.um-line{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;text-align:start;
  padding:10px 12px 12px;border-radius:16px;border:1px solid var(--line);background:#fff;font:inherit;cursor:pointer;overflow:hidden;
  transition:.3s cubic-bezier(.2,.8,.2,1);animation:um-in .5s both;animation-delay:calc(var(--i,0)*50ms)}
.um-li{grid-row:1/3;width:44px;height:44px;border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--c) 18%,#fff);display:block}
.um-li img{width:100%;height:100%;object-fit:cover;transition:.3s;display:block}
.um-ln{font-size:12.8px;font-weight:600;color:var(--teal-900);line-height:1.35}
.um-line small{font-size:11.6px;color:var(--muted-2);font-weight:300}
.um-bar{position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--c);transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.2,.9,.3,1)}
html[dir="ltr"] .um-bar{transform-origin:left}
.um-line:hover{border-color:var(--c);transform:translateY(-2px);box-shadow:0 14px 28px -18px var(--c)}
.um-line:hover .um-li img{transform:scale(1.08)}
.um-line.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 7%,#fff);box-shadow:0 16px 32px -18px var(--c)}
.um-line.on .um-bar{transform:scaleX(1)}
.um-line.on .um-ln{color:var(--c)}
.um.touring .um-line.on .um-bar{animation:um-fill 4.2s linear both}
@keyframes um-fill{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}

/* ── الجانب: المنتجات ── */
.um-plist{background:var(--sand);border:1px solid var(--line-2);border-radius:20px;padding:12px;display:flex;flex-direction:column;gap:10px;flex:1;min-height:200px}
.um-ph{display:flex;flex-direction:column;gap:2px;padding:4px 6px 0}
.um-ph b{font-size:16px;font-weight:600;color:var(--c,var(--teal-900));display:flex;align-items:center}
.um-ph span{font-size:12.8px;color:var(--muted);font-weight:300}
.um-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));grid-auto-rows:max-content;gap:8px;flex:1;min-height:0;overflow:auto;padding:2px;scrollbar-width:thin;align-content:start}
@media(max-width:940px){.um-products{max-height:520px}}
@media(max-width:560px){.um-products{grid-template-columns:minmax(0,1fr)}}
.um-card{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;row-gap:2px;align-items:center;text-align:start;
  padding:10px;border-radius:16px;border:1px solid var(--line);background:#fff;font:inherit;cursor:pointer;overflow:hidden;transition:.3s cubic-bezier(.2,.8,.2,1)}
.um-products.in .um-card{animation:um-card .55s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(var(--i,0)*55ms)}
@keyframes um-card{0%{opacity:0;transform:translateY(14px) scale(.97)}100%{opacity:1;transform:none}}
.um-cimg{grid-row:1/3;width:64px;height:64px;border-radius:12px;background:radial-gradient(circle at 50% 30%,#fff,var(--sand));display:grid;place-items:center;overflow:hidden}
.um-cimg img{width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(6,21,18,.18));transition:.4s cubic-bezier(.2,.8,.2,1)}
.um-ct b{display:block;font-size:14px;font-weight:600;color:var(--teal-900);line-height:1.3}
.um-ct small{display:block;font-size:12px;color:var(--muted);font-weight:300;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.um-cz{grid-column:2;justify-self:start;font-size:11px;color:var(--c);font-weight:500;background:color-mix(in srgb,var(--c) 9%,#fff);border:1px solid color-mix(in srgb,var(--c) 30%,#fff);border-radius:100px;padding:1px 8px;margin-top:3px}
.um-ck{position:absolute;top:8px;inset-inline-end:8px;width:20px;height:20px;border-radius:50%;background:var(--c);color:#fff;font-size:11px;display:grid;place-items:center;transform:scale(0);transition:.35s cubic-bezier(.2,1.4,.4,1)}
.um-card::after{content:'';position:absolute;inset:0;background:radial-gradient(120px 60px at 0% 0%,color-mix(in srgb,var(--c) 14%,transparent),transparent 70%);opacity:0;transition:.3s}
.um-card:hover{border-color:var(--c);transform:translateY(-3px);box-shadow:0 16px 30px -18px var(--c)}
.um-card:hover .um-cimg img{transform:translateY(-3px) scale(1.06) rotate(-3deg)}
.um-card.on{border-color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 45%,#fff),0 18px 34px -18px var(--c)}
.um-card.on::after{opacity:1}
.um-card.on .um-ck{transform:scale(1)}

/* ── بطاقات المواضع (الصفحة الكاملة) ── */
.um-zonecards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px}
@media(max-width:1000px){.um-zonecards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.um-zonecards{grid-template-columns:minmax(0,1fr)}}
.um-zc{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:grid;grid-template-rows:auto 1fr;transition:.3s}
.um-zc:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.um-zc-img{position:relative;height:128px;background-size:300%;background-repeat:no-repeat;border:0;cursor:pointer;padding:0;transition:background-size .6s cubic-bezier(.2,.8,.2,1)}
.um-zc:hover .um-zc-img{background-size:340%}
.um-zc-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,21,18,.55))}
.um-zc-img i{position:absolute;inset-inline-start:12px;bottom:10px;z-index:1;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--teal-900);font:700 14px 'Space Grotesk',sans-serif;font-style:normal;display:grid;place-items:center;box-shadow:0 6px 14px rgba(0,0,0,.25)}
.um-zc-body{padding:14px 18px 18px;display:grid;gap:10px;align-content:start}
.um-zc header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line-2)}
.um-zc h3{font-size:16.5px;font-weight:600}
.um-zc header span{font-size:12.2px;color:var(--muted-2);font-weight:300;white-space:nowrap}
.um-zg{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.um-zg b{font-size:12px;font-weight:600;color:var(--c);width:100%;display:flex;align-items:center;gap:6px}
.um-zg b::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--c)}
.um-zg a{font-size:13px;font-weight:500;color:var(--teal-800);background:var(--sand);border:1px solid var(--line-2);border-radius:100px;padding:4px 11px;text-decoration:none;transition:.2s}
.um-zg a:hover{background:var(--c);border-color:var(--c);color:#fff}

@media(prefers-reduced-motion:reduce){
  .um-pin .um-ring{animation:none;opacity:.35}.um-pin.on,.um-products.in .um-card,.um-legend li,.um-line,.um-scan.go{animation:none}
  .um-dl img{animation:none}.um-z,.um-cut{transition:none}
}
