@font-face{font-family:MetissUI;src:local("Vazirmatn"),local("Vazir"),local("IRANSansX"),local("Tahoma");font-display:swap}
:root{
  --bg:#f7f8fc;--surface:rgba(255,255,255,.86);--ink:#121a3f;--muted:#67708e;
  --line:rgba(56,71,145,.13);--violet:#5f4bf4;--violet2:#8f7cff;--green:#25a86a;
  --gold:#d99824;--blue:#2259d8;--forest:#0d5c36;--rose:#8f3454;
  --shadow:0 24px 70px rgba(33,43,91,.13);--shadow-soft:0 12px 34px rgba(33,43,91,.09)
}
*{box-sizing:border-box}html,body{min-height:100%}html{scroll-behavior:smooth}
body{
  margin:0;color:var(--ink);font-family:MetissUI,Vazirmatn,Tahoma,Arial,sans-serif;
  background:
    radial-gradient(circle at 15% 22%,rgba(86,76,245,.08),transparent 26rem),
    radial-gradient(circle at 86% 72%,rgba(82,196,255,.07),transparent 30rem),
    linear-gradient(180deg,#fbfcff,#f6f7fb 60%,#f9fafc);
  -webkit-font-smoothing:antialiased;overflow-x:hidden
}
button,a{font:inherit}button{color:inherit}.skip-link{position:fixed;top:-4rem;right:1rem;background:#121a3f;color:#fff;padding:.75rem 1rem;border-radius:10px;z-index:1000}.skip-link:focus{top:1rem}
.app-shell{min-height:100vh;display:grid;grid-template-rows:84px 1fr 54px;border:1px solid rgba(74,89,151,.15);background:rgba(255,255,255,.48);backdrop-filter:blur(16px)}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,46px);border-bottom:1px solid var(--line);background:rgba(255,255,255,.76);backdrop-filter:blur(18px);z-index:50}
.brand-lockup{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;direction:ltr}.brand-lockup .brand-horizontal{width:176px;height:50px;object-fit:contain;object-position:left center}.brand-word{display:none}.brand-tagline{font-size:13px;font-weight:800;color:#374179;direction:rtl;border-right:1px solid var(--line);padding-right:14px}
.topbar-actions{display:flex;align-items:center;gap:16px;direction:ltr}.system-status{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.76);border:1px solid var(--line);border-radius:15px;padding:9px 14px;box-shadow:0 8px 24px rgba(33,43,91,.04)}.system-status i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(37,168,106,.11)}.system-status span{display:grid;gap:2px}.system-status b{font:700 11px Inter,Arial,sans-serif}.system-status small{font:500 9px Inter,Arial,sans-serif;color:var(--green)}.divider{width:1px;height:30px;background:var(--line)}.lang-button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font:700 11px Inter,Arial,sans-serif}
.stage{position:relative;min-height:calc(100vh - 138px);display:grid;place-items:center;overflow:hidden}
.orbit-stage{position:relative;width:min(1040px,94vw);height:min(690px,calc(100vh - 180px));min-height:570px;display:grid;place-items:center}
.ambient{position:absolute;border-radius:50%;filter:blur(30px);pointer-events:none}.ambient-a{width:380px;height:380px;background:rgba(92,76,245,.07);left:26%;top:24%}.ambient-b{width:290px;height:290px;background:rgba(72,181,255,.07);right:16%;bottom:14%}
.orbit{position:absolute;border:1px solid rgba(101,92,235,.22);border-radius:50%;pointer-events:none;transform-origin:center}.orbit:after{content:"";position:absolute;inset:-1px;border-radius:inherit;border-top-color:rgba(95,75,244,.7);border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent;border-style:solid;border-width:1px}
.orbit-outer{width:74%;height:74%;animation:spin 32s linear infinite}.orbit-middle{width:58%;height:58%;border-style:dashed;animation:spinReverse 25s linear infinite}.orbit-inner{width:40%;height:40%;animation:spin 18s linear infinite}
.traveller{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid var(--violet2);box-shadow:0 0 14px 5px rgba(95,75,244,.28)}.t1{top:-5px;left:48%}.t2{right:12%;bottom:10%}.t3{left:-4px;top:58%;border-color:#5bc4ff;box-shadow:0 0 14px 5px rgba(91,196,255,.3)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinReverse{to{transform:rotate(-360deg)}}
.platform-core{position:absolute;z-index:12;width:190px;height:190px;border-radius:50%;border:1px solid rgba(94,82,231,.18);background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(54,46,164,.18),inset 0 0 0 13px rgba(91,76,241,.025);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.3s ease}.platform-core:hover{transform:scale(1.035);box-shadow:0 28px 82px rgba(54,46,164,.23),inset 0 0 0 13px rgba(91,76,241,.04)}.platform-core img{width:74px;height:74px;object-fit:contain}.platform-core b{font:500 23px/1 Inter,Arial,sans-serif;letter-spacing:.28em;margin-left:.28em}.platform-core small{font-size:12px;font-weight:800;color:#303b7c}.core-ripple{position:absolute;inset:-18px;border:1px solid rgba(95,75,244,.17);border-radius:50%;animation:ripple 3.8s ease-out infinite}.r2{animation-delay:1.9s}@keyframes ripple{0%{transform:scale(.94);opacity:.65}80%,100%{transform:scale(1.19);opacity:0}}
.brand-node{position:absolute;z-index:15;border:0;background:none;padding:0;cursor:pointer;display:grid;place-items:center;transition:.32s cubic-bezier(.2,.75,.2,1)}.brand-node:hover,.brand-node:focus-visible{transform:scale(1.09) translateY(-3px);z-index:30}.node-face{width:96px;height:96px;border-radius:50%;background:rgba(255,255,255,.96);border:1px solid rgba(70,84,151,.14);box-shadow:var(--shadow-soft);display:grid;place-items:center;padding:15px;transition:.32s ease}.node-face img{width:100%;height:100%;object-fit:contain}.node-halo{position:absolute;width:116px;height:116px;border-radius:50%;border:1px solid rgba(95,75,244,.2);opacity:.45;transition:.32s ease}.brand-node:hover .node-halo,.brand-node:focus-visible .node-halo{transform:scale(1.12);opacity:.85}.brand-node:hover .node-face,.brand-node:focus-visible .node-face{box-shadow:0 20px 46px rgba(33,43,91,.18)}
.node-label{position:absolute;white-space:nowrap;display:grid;gap:5px;pointer-events:none}.node-label b{font:700 18px Inter,Arial,sans-serif;letter-spacing:.02em}.node-label small{font:500 10px Inter,Arial,sans-serif;color:#202a53}
.node-opta{top:7%;left:50%;margin-left:-48px;animation:floatA 5.6s ease-in-out infinite}.node-opta .node-label{right:-146px;top:24px;text-align:left}.node-mira{left:11%;top:39%;animation:floatB 6.2s ease-in-out infinite}.node-mira .node-label{right:112px;top:28px;text-align:right}.node-atlas{right:10%;top:39%;animation:floatA 6.6s ease-in-out infinite reverse}.node-atlas .node-label{left:114px;top:20px;text-align:left}.node-aura{left:20%;bottom:5%;animation:floatB 5.9s ease-in-out infinite reverse}.node-aura .node-label{right:112px;top:30px;text-align:right}
@keyframes floatA{50%{translate:0 -8px}}@keyframes floatB{50%{translate:6px -5px}}
.detail-panel{position:absolute;z-index:40;width:360px;min-height:455px;right:3%;top:50%;transform:translate(30px,-50%) scale(.97);opacity:0;visibility:hidden;background:rgba(255,255,255,.97);border:1px solid rgba(68,80,145,.15);border-radius:24px;box-shadow:0 28px 80px rgba(28,37,80,.22);padding:28px 28px 24px;transition:.3s cubic-bezier(.2,.75,.2,1);backdrop-filter:blur(18px)}.detail-panel.is-open{opacity:1;visibility:visible;transform:translate(0,-50%) scale(1)}.panel-close{position:absolute;left:18px;top:14px;border:0;background:none;font-size:25px;cursor:pointer;color:#66708f}.panel-logo{height:92px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.panel-logo img{max-width:205px;max-height:90px;object-fit:contain}.panel-kicker{display:block;text-align:center;direction:ltr;font:700 9px Inter,Arial,sans-serif;letter-spacing:.18em;color:#7b83a2}.detail-panel h1{direction:ltr;text-align:center;font:700 29px Inter,Arial,sans-serif;letter-spacing:.05em;margin:7px 0 15px}.detail-panel>p{font-size:14px;line-height:2;text-align:center;color:#4f5877;margin:0 0 17px}.detail-panel ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:11px}.detail-panel li{font-size:12px;color:#283257;display:flex;align-items:center;gap:9px}.detail-panel li:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--violet);box-shadow:0 0 0 4px rgba(95,75,244,.09);flex:none}.panel-cta{min-height:49px;border-radius:11px;background:linear-gradient(135deg,#b97812,#e8ab3d);color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-weight:800;font-size:13px;box-shadow:0 12px 24px rgba(190,125,24,.24)}.panel-cta b{font-size:19px}.detail-panel[data-theme="mira"] .panel-cta{background:linear-gradient(135deg,#956016,#d6a33e)}.detail-panel[data-theme="atlas"] .panel-cta{background:linear-gradient(135deg,#0b4a2c,#18824d)}.detail-panel[data-theme="aura"] .panel-cta{background:linear-gradient(135deg,#5a1733,#9f4b68)}.detail-panel[data-theme="metiss"] .panel-cta{background:linear-gradient(135deg,#3020b9,#6856f5)}.detail-panel[data-theme="admin"] .panel-cta{background:linear-gradient(135deg,#232b58,#59649c)}
.scroll-cue{position:absolute;bottom:18px;width:38px;height:38px;border:0;background:none;color:#7a83a8;font-size:27px;cursor:pointer;animation:bounce 2.2s ease-in-out infinite}@keyframes bounce{50%{transform:translateY(5px)}}
.footer{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,46px);border-top:1px solid var(--line);background:rgba(255,255,255,.64);color:#536083;font:500 10px Inter,Arial,sans-serif;direction:ltr}.footer>div{display:flex;align-items:center;gap:11px}.footer i{font-style:normal;color:#5f4bf4}
.admin-face{font-size:32px;color:#445080}.node-admin{right:19%;bottom:7%}.node-admin .node-label{left:112px;top:28px;text-align:left}
:focus-visible{outline:3px solid rgba(95,75,244,.35);outline-offset:5px}
@media(max-width:900px){
  .brand-tagline{display:none}.orbit-stage{height:720px;min-height:680px}.detail-panel{right:50%;top:50%;transform:translate(50%,-45%) scale(.97);width:min(390px,88vw)}.detail-panel.is-open{transform:translate(50%,-50%) scale(1)}
  .detail-panel:before{content:"";position:fixed;inset:-100vh;background:rgba(11,18,48,.62);z-index:-1;backdrop-filter:blur(3px)}
}
@media(max-width:620px){
  .app-shell{grid-template-rows:72px 1fr 62px}.topbar{padding:0 17px}.brand-lockup .brand-horizontal{width:132px;height:42px}.brand-word{display:none}.system-status{padding:8px 10px}.system-status b{font-size:9px}.system-status small{font-size:8px}.divider,.lang-button{display:none}
  .stage{min-height:calc(100vh - 134px)}.orbit-stage{width:100%;height:690px;min-height:650px;transform:scale(.86);transform-origin:center}.orbit-outer{width:90%;height:69%}.orbit-middle{width:70%;height:53%}.orbit-inner{width:49%;height:37%}
  .platform-core{width:154px;height:154px}.platform-core img{width:58px;height:58px}.platform-core b{font-size:18px}.platform-core small{font-size:10px}
  .node-face{width:78px;height:78px;padding:12px}.node-halo{width:94px;height:94px}.node-label b{font-size:14px}.node-label small{font-size:8px}.node-opta{top:9%;margin-left:-39px}.node-opta .node-label{right:auto;left:50%;top:88px;transform:translateX(-50%);text-align:center}.node-mira{left:4%;top:41%}.node-mira .node-label{right:auto;left:50%;top:88px;transform:translateX(-50%);text-align:center}.node-atlas{right:4%;top:41%}.node-atlas .node-label{left:50%;top:88px;transform:translateX(-50%);text-align:center}.node-aura{left:21%;bottom:7%}.node-aura .node-label{right:auto;left:50%;top:88px;transform:translateX(-50%);text-align:center}.node-admin{right:19%;bottom:7%}.node-admin .node-label{left:50%;top:88px;transform:translateX(-50%);text-align:center}
  .detail-panel{position:fixed;width:min(370px,90vw);min-height:0;max-height:86vh;overflow:auto;right:50%;top:50%;padding:25px 22px 20px}.panel-logo{height:76px}.panel-logo img{max-height:74px}.footer{font-size:8px;gap:8px}.footer>div:last-child{display:none}.scroll-cue{display:none}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Canonical Brand Assets v1.0 baseline */
.node-face{overflow:hidden}
.node-face img{width:auto;height:auto;max-width:82%;max-height:82%;object-fit:contain;filter:none}
.node-mira .node-face img,.node-atlas .node-face img{max-width:74%;max-height:74%}
.node-aura .node-face img{max-width:80%;max-height:80%}
.platform-core img{width:72px;height:72px;object-fit:contain}
.panel-logo{overflow:hidden}
.panel-logo img{width:auto;height:auto;max-width:230px;max-height:100px;object-fit:contain}
.detail-panel[data-theme="mira"] .panel-logo img,.detail-panel[data-theme="atlas"] .panel-logo img{max-height:112px}
.detail-panel[data-theme="aura"] .panel-logo img{max-width:245px;max-height:92px}


/* v2.3.2 — exact user-supplied cropped logos, no background removal */
.brand-lockup .brand-horizontal{
  width:210px;
  height:54px;
  object-fit:contain;
  object-position:left center;
}
.node-face{
  padding:0;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(62,78,145,.16);
  box-shadow:0 14px 34px rgba(33,43,91,.11),inset 0 0 0 5px rgba(255,255,255,.82);
}
.node-face .brand-media{
  display:block;
  width:74px;
  height:74px;
  max-width:none;
  max-height:none;
  object-fit:contain;
  border-radius:16px;
}
.node-face .brand-media-opta{width:66px;height:66px;border-radius:14px}
.node-face .brand-media-mira{width:66px;height:78px;border-radius:12px}
.node-face .brand-media-atlas{width:68px;height:76px;border-radius:12px}
.node-face .brand-media-aura{width:70px;height:70px;border-radius:13px}
.platform-core{padding:22px}
.platform-core .brand-media-metiss{
  width:86px;height:62px;max-width:none;max-height:none;object-fit:contain;border-radius:12px;background:#fff
}
.panel-logo{
  height:150px;margin:0 auto 10px;padding:10px;border-radius:18px;
  background:#f7f8fc;border:1px solid rgba(62,78,145,.10);overflow:hidden
}
.panel-logo img{
  width:auto;height:auto;max-width:100%;max-height:128px;object-fit:contain;border-radius:11px
}
.detail-panel[data-theme="opta"] .panel-logo{background:#08152a}
.detail-panel[data-theme="mira"] .panel-logo,
.detail-panel[data-theme="aura"] .panel-logo{background:#02070d}
.detail-panel[data-theme="atlas"] .panel-logo,
.detail-panel[data-theme="metiss"] .panel-logo{background:#fff}
.detail-panel[data-theme="mira"] .panel-logo img,
.detail-panel[data-theme="atlas"] .panel-logo img,
.detail-panel[data-theme="aura"] .panel-logo img{max-height:132px}
@media(max-width:620px){
  .brand-lockup .brand-horizontal{width:154px;height:44px}
  .node-face .brand-media{transform:scale(.88)}
  .platform-core .brand-media-metiss{width:76px;height:54px}
}


/* v2.3.3 — container backgrounds matched to supplied logo artwork */
.node-opta .node-face{
  background:#050C1A;
  border-color:rgba(216,145,28,.42);
  box-shadow:0 16px 38px rgba(5,18,37,.30),0 0 0 7px rgba(216,145,28,.07);
}
.node-mira .node-face{
  background:#010B16;
  border-color:rgba(205,151,55,.40);
  box-shadow:0 16px 38px rgba(2,13,24,.32),0 0 0 7px rgba(205,151,55,.07);
}
.node-aura .node-face{
  background:#000000;
  border-color:rgba(169,93,101,.42);
  box-shadow:0 16px 38px rgba(0,0,0,.30),0 0 0 7px rgba(169,93,101,.07);
}
.node-opta .node-face::after,
.node-mira .node-face::after,
.node-aura .node-face::after{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.06);
  pointer-events:none;
}


/* v2.3.4 — approved OPTA badge, maximum safe fill inside the orbit circle */
.node-opta .node-face{
  padding:0;
  overflow:hidden;
}
.node-opta .node-face .brand-media-opta{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  border-radius:50%;
  object-fit:cover;
  transform:none;
}
.detail-panel[data-theme="opta"] .panel-logo{
  background:#050C1A;
}
.detail-panel[data-theme="opta"] .panel-logo img{
  width:132px;
  height:132px;
  max-width:132px;
  max-height:132px;
  border-radius:50%;
  object-fit:cover;
}
@media(max-width:620px){
  .node-opta .node-face .brand-media-opta{
    width:100%;
    height:100%;
    transform:none;
  }
}
