/* W3M App workspace */
@property --w3m-nav-glow-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes w3mNavGlowOrbit{to{--w3m-nav-glow-angle:360deg}}
.w3m-app-page{min-height:100vh;padding-bottom:32px;}
.w3m-app-hero{padding:24px 0 0;background:linear-gradient(180deg,rgba(59,130,246,.06),transparent 88%);}
.w3m-app-tabs{display:flex;gap:7px;margin:0;padding:7px;border:1px solid var(--w3m-border,#dbe6ef);border-radius:16px;background:var(--w3m-surface,#fff);box-shadow:0 12px 36px rgba(15,23,42,.06);overflow-x:auto;scrollbar-width:none;position:sticky;top:82px;z-index:35;}
.w3m-app-tabs::-webkit-scrollbar{display:none;}
.w3m-app-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 0 auto;min-height:46px;padding:10px 16px;border:0;border-radius:11px;background:transparent;color:var(--w3m-muted,#64748b);font:800 12px/1.2 Inter,sans-serif;cursor:pointer;white-space:nowrap;transition:.18s ease;}
.w3m-app-tab:hover{background:rgba(59,130,246,.06);color:var(--w3m-text,#0f172a);}
.w3m-app-tab.is-active{background:rgba(59,130,246,.11);color:var(--w3m-primary,#2563eb);box-shadow:inset 0 0 0 1px rgba(59,130,246,.18);}
.w3m-app-tab-icon{display:grid;place-items:center;width:22px;height:22px;font-size:16px;}
.w3m-app-workspace{padding:22px 0 70px;}
.w3m-app-panel[hidden]{display:none!important;}
.w3m-app-panel{animation:w3mAppPanelIn .24s ease both;}
@keyframes w3mAppPanelIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.w3m-app-module{min-width:0;}
.w3m-app-unavailable{padding:34px;border:1px solid var(--w3m-border,#dbe6ef);border-radius:20px;background:var(--w3m-surface,#fff);text-align:center;}
.w3m-app-unavailable strong{font-size:18px;}
.w3m-app-unavailable p{margin:8px 0 0;color:var(--w3m-muted,#64748b);}
.w3m-app-mobile-nav{display:none;}

html[data-theme="dark"] .w3m-app-tabs,
body[data-theme="dark"] .w3m-app-tabs{background:#111827;border-color:#263246;box-shadow:0 15px 42px rgba(0,0,0,.22);}
html[data-theme="dark"] .w3m-app-tab,
body[data-theme="dark"] .w3m-app-tab{color:#94a3b8;}
html[data-theme="dark"] .w3m-app-tab:hover,
body[data-theme="dark"] .w3m-app-tab:hover{background:rgba(255,255,255,.045);color:#f8fafc;}
html[data-theme="dark"] .w3m-app-tab.is-active,
body[data-theme="dark"] .w3m-app-tab.is-active{background:rgba(59,130,246,.17);color:#7dd3fc;box-shadow:inset 0 0 0 1px rgba(125,211,252,.14);}

@media(max-width:780px){
  body:has(.w3m-app-page){padding-bottom:94px;}
  .w3m-app-page{padding-bottom:98px;}
  .w3m-app-hero{padding:12px 0 0;}
  .w3m-app-tabs{display:none;}
  .w3m-app-workspace{padding:20px 0 34px;}

  .w3m-app-mobile-nav{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    position:fixed;
    z-index:9998;
    left:14px;
    right:14px;
    bottom:max(10px,env(safe-area-inset-bottom));
    max-width:680px;
    min-height:76px;
    margin-inline:auto;
    padding:7px;
    border:1px solid rgba(148,184,204,.42);
    border-radius:24px;
    background:
      linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,249,255,.93));
    box-shadow:
      0 18px 48px rgba(15,23,42,.18),
      0 2px 8px rgba(37,99,235,.08),
      inset 0 1px 0 rgba(255,255,255,.95);
    backdrop-filter:blur(22px) saturate(150%);
    -webkit-backdrop-filter:blur(22px) saturate(150%);
    overflow:hidden;
    isolation:isolate;
  }
  .w3m-app-mobile-nav::before{
    content:"";
    position:absolute;
    inset:0 12% auto;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(34,211,238,.65),rgba(59,130,246,.5),transparent);
    pointer-events:none;
  }
  @supports ((-webkit-mask-composite: xor) or (mask-composite: exclude)){
    .w3m-app-mobile-nav::before{
      inset:0;
      width:auto;
      height:auto;
      padding:1px;
      border-radius:inherit;
      background:conic-gradient(
        from var(--w3m-nav-glow-angle),
        transparent 0deg 292deg,
        rgba(34,211,238,0) 292deg,
        rgba(34,211,238,.65) 316deg,
        rgba(59,130,246,.5) 338deg,
        transparent 360deg
      );
      -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      -webkit-mask-composite:xor;
      mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      mask-composite:exclude;
      animation:w3mNavGlowOrbit 15s linear infinite;
      will-change:background;
    }
  }
  .w3m-app-mobile-item{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-width:0;
    min-height:60px;
    padding:5px 2px 4px;
    border:1px solid transparent;
    border-radius:17px;
    background:transparent;
    color:#64748b;
    font:inherit;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
  }
  .w3m-app-mobile-item>span{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border-radius:11px;
    color:#60758a;
    font-size:18px;
    font-weight:800;
    line-height:1;
    transition:inherit;
  }
  .w3m-app-mobile-item small{
    display:block;
    max-width:100%;
    overflow:hidden;
    color:inherit;
    font-size:10px;
    font-weight:800;
    letter-spacing:-.01em;
    line-height:1.05;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .w3m-app-mobile-item:hover,
  .w3m-app-mobile-item:focus-visible{
    background:rgba(59,130,246,.055);
    color:#334155;
    outline:none;
  }
  .w3m-app-mobile-item:focus-visible{
    box-shadow:inset 0 0 0 2px rgba(56,189,248,.34);
  }
  .w3m-app-mobile-item:active{transform:scale(.97);}
  .w3m-app-mobile-item.is-active{
    border-color:rgba(96,165,250,.34);
    background:linear-gradient(145deg,rgba(239,248,255,.98),rgba(219,238,255,.9));
    color:#1677c8;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.9),
      0 7px 18px rgba(37,99,235,.12);
  }
  .w3m-app-mobile-item.is-active::after{
    content:"";
    position:absolute;
    left:28%;
    right:28%;
    bottom:3px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,#38bdf8,#2563eb);
    box-shadow:0 0 8px rgba(56,189,248,.42);
  }
  .w3m-app-mobile-item.is-active>span{
    color:#1685d2;
    background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(186,230,253,.58));
    box-shadow:inset 0 0 0 1px rgba(56,189,248,.22);
  }

  html[data-theme="dark"] .w3m-app-mobile-nav,
  body[data-theme="dark"] .w3m-app-mobile-nav{
    border-color:rgba(71,104,125,.58);
    background:linear-gradient(135deg,rgba(11,25,29,.95),rgba(13,31,38,.93));
    box-shadow:0 20px 52px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.055);
  }
  html[data-theme="dark"] .w3m-app-mobile-item,
  body[data-theme="dark"] .w3m-app-mobile-item{color:#91a5b7;}
  html[data-theme="dark"] .w3m-app-mobile-item>span,
  body[data-theme="dark"] .w3m-app-mobile-item>span{color:#8fa7b8;}
  html[data-theme="dark"] .w3m-app-mobile-item:hover,
  body[data-theme="dark"] .w3m-app-mobile-item:hover{background:rgba(125,211,252,.06);color:#d9f2ff;}
  html[data-theme="dark"] .w3m-app-mobile-item.is-active,
  body[data-theme="dark"] .w3m-app-mobile-item.is-active{
    border-color:rgba(56,189,248,.3);
    background:linear-gradient(145deg,rgba(20,63,78,.92),rgba(15,48,65,.94));
    color:#7dd3fc;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 8px 22px rgba(0,0,0,.28);
  }
  html[data-theme="dark"] .w3m-app-mobile-item.is-active>span,
  body[data-theme="dark"] .w3m-app-mobile-item.is-active>span{
    color:#8be3ff;
    background:rgba(56,189,248,.09);
    box-shadow:inset 0 0 0 1px rgba(125,211,252,.16);
  }
}

@media(prefers-reduced-motion:reduce){
  .w3m-app-mobile-nav::before{animation:none!important}
}


@media(max-width:380px){
  .w3m-app-mobile-nav{left:7px;right:7px;padding:6px;min-height:72px;border-radius:21px;}
  .w3m-app-mobile-item{min-height:56px;border-radius:15px;}
  .w3m-app-mobile-item>span{width:27px;height:27px;font-size:17px;}
  .w3m-app-mobile-item small{font-size:9px;}
}


/* 3.6.14 — non-blocking Platforma module loader. */
.w3m-app-module-loader{min-height:360px;display:grid;place-content:center;justify-items:center;gap:10px;text-align:center;padding:40px 20px}.w3m-app-module-loader strong{font-size:18px}.w3m-app-module-loader small{opacity:.68}.w3m-app-loader-mark{width:34px;height:34px;border:3px solid currentColor;border-right-color:transparent;border-radius:50%;animation:w3m-app-spin .8s linear infinite}.w3m-app-retry{margin-top:14px;border:0;border-radius:12px;padding:11px 16px;font-weight:700;cursor:pointer}@keyframes w3m-app-spin{to{transform:rotate(360deg)}}

/* W3M 3.6.25 — mobile module alignment below sticky header */
@media(max-width:780px){
  .w3m-app-panel{
    scroll-margin-top:calc(76px + env(safe-area-inset-top) + 12px);
  }
  body.admin-bar .w3m-app-panel{
    scroll-margin-top:calc(108px + env(safe-area-inset-top) + 12px);
  }
}


/* W3M 3.6.33 — simplify active state in mobile app nav */
@media(max-width:780px){
  .w3m-app-mobile-item.is-active::after{
    content:none !important;
    display:none !important;
  }
  .w3m-app-mobile-item.is-active>span,
  html[data-theme="dark"] .w3m-app-mobile-item.is-active>span,
  body[data-theme="dark"] .w3m-app-mobile-item.is-active>span{
    background:transparent !important;
    box-shadow:none !important;
  }
}


/* W3M 3.6.46 — visually unify desktop app tabs with module workspace */
@media(min-width:781px){
  .w3m-app-hero{
    padding:22px 0 0;
    background:transparent;
  }
  .w3m-app-tabs{
    gap:8px;
    padding:8px;
    border:1px solid color-mix(in srgb,var(--w3m-border,#dbe6ef) 76%,var(--w3m-primary,#38bdf8) 24%);
    border-radius:20px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--w3m-surface,#fff) 96%,var(--w3m-primary,#38bdf8) 4%),var(--w3m-surface,#fff));
    box-shadow:0 16px 40px rgba(2,8,23,.08),inset 0 1px 0 rgba(255,255,255,.04);
  }
  .w3m-app-tab{
    min-height:48px;
    border:1px solid transparent;
    border-radius:13px;
    color:var(--w3m-muted,#64748b);
  }
  .w3m-app-tab:hover{
    border-color:color-mix(in srgb,var(--w3m-border,#dbe6ef) 72%,var(--w3m-primary,#38bdf8) 28%);
    background:color-mix(in srgb,var(--w3m-surface,#fff) 92%,var(--w3m-primary,#38bdf8) 8%);
    color:var(--w3m-text,#0f172a);
  }
  .w3m-app-tab.is-active{
    border-color:color-mix(in srgb,var(--w3m-primary,#38bdf8) 42%,var(--w3m-border,#dbe6ef));
    background:linear-gradient(145deg,color-mix(in srgb,var(--w3m-surface,#fff) 82%,var(--w3m-primary,#38bdf8) 18%),color-mix(in srgb,var(--w3m-surface,#fff) 92%,var(--w3m-primary,#38bdf8) 8%));
    color:var(--w3m-primary,#2563eb);
    box-shadow:0 8px 20px rgba(56,189,248,.10),inset 0 1px 0 rgba(255,255,255,.08);
  }
  .w3m-app-tab-icon{
    width:26px;
    height:26px;
    border-radius:9px;
    background:color-mix(in srgb,var(--w3m-surface,#fff) 86%,var(--w3m-primary,#38bdf8) 14%);
  }
  .w3m-app-tab.is-active .w3m-app-tab-icon{
    background:color-mix(in srgb,var(--w3m-primary,#38bdf8) 15%,transparent);
  }
  .w3m-app-workspace{
    padding:14px 0 70px;
  }
  html[data-theme="dark"] .w3m-app-tabs,
  body[data-theme="dark"] .w3m-app-tabs{
    border-color:rgba(125,211,252,.17);
    background:linear-gradient(180deg,rgba(13,28,35,.98),rgba(9,21,28,.98));
    box-shadow:0 18px 44px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035);
  }
  html[data-theme="dark"] .w3m-app-tab,
  body[data-theme="dark"] .w3m-app-tab{
    color:#91a5b7;
  }
  html[data-theme="dark"] .w3m-app-tab:hover,
  body[data-theme="dark"] .w3m-app-tab:hover{
    border-color:rgba(125,211,252,.16);
    background:rgba(125,211,252,.055);
    color:#e8f7ff;
  }
  html[data-theme="dark"] .w3m-app-tab.is-active,
  body[data-theme="dark"] .w3m-app-tab.is-active{
    border-color:rgba(56,189,248,.30);
    background:linear-gradient(145deg,rgba(20,63,78,.78),rgba(13,42,56,.88));
    color:#7dd3fc;
    box-shadow:0 10px 24px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.045);
  }
  html[data-theme="dark"] .w3m-app-tab-icon,
  body[data-theme="dark"] .w3m-app-tab-icon{
    background:rgba(125,211,252,.055);
  }
  html[data-theme="dark"] .w3m-app-tab.is-active .w3m-app-tab-icon,
  body[data-theme="dark"] .w3m-app-tab.is-active .w3m-app-tab-icon{
    background:rgba(56,189,248,.10);
  }
}

/* W3M 3.7.79 — Home shortcut + dynamic Platforma mobile nav item count */
.w3m-app-home-link{text-decoration:none}
.w3m-app-home-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:780px){
  .w3m-app-mobile-nav{grid-template-columns:repeat(var(--w3m-app-nav-items,5),minmax(0,1fr))}
  .w3m-app-mobile-item.w3m-app-home-link{text-decoration:none}
  .w3m-app-mobile-item.w3m-app-home-link>span svg{width:18px;height:18px}
}
.w3m-app-test-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--accent,#49cffa) 28%,var(--w3m-border,#dbe6ef));border-radius:14px;background:color-mix(in srgb,var(--accent,#49cffa) 7%,var(--w3m-surface,#fff));color:var(--w3m-text,#0f172a)}
.w3m-app-test-banner strong{font-size:12px}.w3m-app-test-banner span{color:var(--w3m-muted,#64748b);font-size:11px}
@media(max-width:780px){.w3m-app-test-banner{display:block;margin:0 0 8px}.w3m-app-test-banner span{display:block;margin-top:4px}}
