*{box-sizing:border-box;margin:0}
  html,body{height:100%;width:100%}
  body{background:var(--bg);color:var(--ink);font-family:"Inter",-apple-system,Helvetica,Arial,sans-serif;
  overflow:hidden;-webkit-font-smoothing:antialiased}
  .mono{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
  #stage{position:relative;height:100vh;width:100vw;overflow:hidden}
  .bgmesh{position:absolute;inset:0;z-index:0;background:
    radial-gradient(1100px 540px at 80% -8%,rgba(15,174,155,.18),transparent 60%),
    radial-gradient(900px 520px at 0% 110%,rgba(255,106,61,.14),transparent 55%),
    linear-gradient(180deg,var(--bg),var(--bg2))}
  .bggrid{position:absolute;inset:0;z-index:0;
    background-image:linear-gradient(rgba(120,180,210,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(120,180,210,
  .06) 1px,transparent 1px);
    background-size:46px 46px;-webkit-mask-image:radial-gradient(900px 600px at 50% 38%,#000,transparent 80%);
  mask-image:radial-gradient(900px 600px at 50% 38%,#000,transparent 80%)}
  .ribbon{display:none}

  /* LAYER 1 */
  #scene{position:absolute;inset:0;z-index:10;cursor:grab}
  #scene:active{cursor:grabbing}
  .scene-fallback{position:absolute;inset:0;display:none;place-items:center;color:var(--mut);font-size:13px}

  /* LAYER 2 */
  .mid{position:absolute;inset:0;z-index:20;pointer-events:none}
  .kpi{position:absolute;width:214px;will-change:transform}
  @keyframes floaty{0%,100%{translate:0 0}50%{translate:0 -10px}}
  .kpi-card{pointer-events:auto;border:1px solid var(--line);background:var(--s1);
    padding:14px 16px;backdrop-filter:blur(16px) saturate(1.1);-webkit-backdrop-filter:blur(16px) saturate(1.1);
    clip-path:polygon(0 0,100% 0,100% calc(100% - 13px),calc(100% - 13px) 100%,0 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 22px 60px -24px rgba(0,0,0,.7)}
  .kpi-l{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(123,246,222,.85)}
  .kpi-v{margin-top:6px;font-size:30px;font-weight:700;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
  .kpi-d{margin-top:6px;display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:rgba(123,
  246,222,.9)}
  .glow{filter:drop-shadow(0 0 7px rgba(20,200,170,.85))}

  /* LAYER 3 */
  .top{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;justify-content:space-between;
  padding:calc(var(--appbar-h) + 20px) 30px 26px;pointer-events:none}
  .top header,.top footer,.top .ctrls,.back{pointer-events:auto}
  .top header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
  .brandbox{display:flex;align-items:center;gap:14px}
  .mark{display:grid;place-items:center;height:44px;width:44px;border:1px solid rgba(24,224,196,.3);background:rgba(24,
  224,196,.1);
    clip-path:polygon(22% 0,100% 0,100% 78%,78% 100%,0 100%,0 22%)}
  .ttl{font-size:19px;font-weight:600;letter-spacing:-.3px;color:#fff}
  .sub{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
  .ctrls{display:flex;align-items:center;gap:10px}
  .live{display:flex;align-items:center;gap:8px;border:1px solid rgba(52,211,153,.32);background:rgba(52,211,153,.10);
  padding:7px 11px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:#6ee7b7}
  .live .dot{height:8px;width:8px;border-radius:50%;background:#34d399;box-shadow:0 0 8px 2px rgba(52,211,153,.7);
  animation:blink 1.6s ease-in-out infinite}
  @keyframes blink{50%{opacity:.4}}
  .iconbtn{display:grid;place-items:center;height:38px;width:38px;border:1px solid var(--line);background:var(--s1);
  color:var(--text2);cursor:pointer;border-radius:10px;transition:.16s}
  .iconbtn:hover{transform:translateY(-2px);border-color:rgba(24,224,196,.45);background:rgba(24,224,196,.1);
  color:var(--teal2)}
  @media (prefers-reduced-motion:reduce){.iconbtn:hover{transform:none}.kpi{animation:none!important}.live .dot{
  animation:none}}
  /* ---------- persistent app chrome (same bar as the app + settings) ---------- */
  .appbar{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--appbar-h);display:flex;align-items:center;
  gap:18px;padding:0 20px;
    background:rgba(6,16,31,.72);backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);border-bottom:1px solid var(--line)}
  .appbar::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,
  transparent,rgba(24,224,196,.45),transparent)}
  .ab-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);min-width:0}
  .ab-lockup{height:34px;width:auto;border-radius:8px;display:block}
  .ab-word{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:13px;color:var(--gold);
  white-space:nowrap}
  .ab-nav{display:flex;gap:4px;margin:0 auto}
  .ab-nav a{position:relative;text-decoration:none;color:var(--mut);font-weight:600;font-size:13.5px;padding:8px 13px;
  border-radius:9px;transition:color .18s,background .18s}
  .ab-nav a:hover{color:var(--text);background:var(--s1)}
  .ab-nav a.active{color:var(--text)}
  .ab-nav a.active::after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:2px;border-radius:2px;
  background:var(--teal);box-shadow:0 0 10px rgba(24,224,196,.8)}
  .ab-user{display:flex;align-items:center;gap:10px}
  .ab-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;font-weight:800;
  color:var(--teal);background:rgba(24,224,196,.10);border:1px solid rgba(24,224,196,.45)}
  .ab-name{font-size:13px;font-weight:600;color:var(--text2);max-width:160px;overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap}
  .ab-logout{border:1px solid rgba(226,83,107,.55);background:rgba(226,83,107,.10);color:#ff8ea0;
  font:700 12.5px/1 Inter,sans-serif;padding:8px 13px;border-radius:9px;cursor:pointer;transition:background .18s,
  transform .18s}
  .ab-logout:hover{background:rgba(226,83,107,.22);transform:translateY(-1px)}
  .ab-logout:focus-visible,.iconbtn:focus-visible,.ab-nav a:focus-visible{outline:2px solid var(--teal);
  outline-offset:2px}
  @media(max-width:860px){.ab-nav,.ab-word,.ab-name{display:none}.appbar{padding:0 14px}}
  .hint{margin:0 auto;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#5b6f8c}
  .top footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:15px;font-size:11px;color:var(--mut)}
  .stat{display:inline-flex;align-items:center;gap:8px;margin-right:24px}
  .stat .pip{height:6px;width:6px;border-radius:50%}
  .stat b{color:var(--text2);font-weight:600;font-variant-numeric:tabular-nums}
  .back{display:none}
  .lic{display:block}
