:root{
    --xp-blue-dark:#0a246a; --xp-blue-mid:#3a6ea5; --xp-blue-light:#a6caf0;
    --xp-titlebar1:#0058ee; --xp-titlebar2:#3a93ff; --xp-titlebar3:#0058ee;
    --xp-silver1:#ece9d8; --xp-silver2:#d4d0c8; --xp-taskbar1:#2a8ae6; --xp-taskbar2:#0a52c6;
    --xp-green1:#3d9c40; --xp-green2:#1c6b1f;
    --tahoma: Tahoma, "Segoe UI", Verdana, sans-serif;
  }
  *{box-sizing:border-box; -webkit-tap-highlight-color:transparent;}
  html,body{height:100%; margin:0; overflow:hidden; font-family:var(--tahoma);}
  body{ cursor:default; }

  /* ---------- DESKTOP / BLISS WALLPAPER ---------- */
  #desktop{
    position:fixed; inset:0 0 34px 0; overflow:visible;
    background-image: url('assets/images/wallpaper.jpg');
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-color: #3a8fe0;
  }
  .icon-grid{
    position:absolute; top:14px; left:14px; bottom:14px; display:grid;
    grid-auto-flow:column; grid-template-rows:repeat(auto-fill, 96px); grid-auto-columns:84px; gap:2px;
  }
  .dicon{
    width:84px; height:92px; display:flex; flex-direction:column; align-items:center;
    gap:5px; cursor:pointer; padding:5px 2px; border-radius:2px; user-select:none;
  }
  .dicon:hover, .dicon.sel{ background:rgba(255,255,255,0.18); outline:1px dotted rgba(255,255,255,0.6); }
  .dicon .glyph{
    width:48px; height:48px; display:flex; align-items:center; justify-content:center; font-size:36px;
    filter:drop-shadow(1px 2px 2px rgba(0,0,0,.5));
  }
  .dicon .glyph img{ width:44px !important; height:44px !important; }
  .dicon span{ color:#fff; font-size:11px; text-align:center; text-shadow:1px 1px 2px #000, -1px -1px 1px #000; line-height:1.2; }

  /* ---------- LOGIN SCREEN ---------- */
  #appshell{ display:none; }
  #loginscreen{
    position:fixed; inset:0; z-index:20000; display:flex; flex-direction:column;
    font-family:var(--tahoma); color:#fff; user-select:none;
  }
  .ls-topbar{
    height:110px; background:linear-gradient(180deg,#0a3fa0,#082e7a);
    border-bottom:3px solid rgba(255,255,255,.85); box-shadow:0 2px 5px rgba(0,0,0,.25);
    flex-shrink:0;
  }
  .ls-main{
    flex:1; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
    background:
      radial-gradient(ellipse 900px 700px at 15% 10%, rgba(255,255,255,.35), transparent 60%),
      linear-gradient(180deg, #4f9dff 0%, #2f7fe0 40%, #1f66cc 100%);
  }
  .ls-wrap{ display:flex; flex-direction:column; gap:44px; max-width:1000px; width:90%; }
  .ls-center{ display:flex; align-items:center; gap:40px; }
  .ls-brand{ flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; }
  .ls-logo{ width:150px; height:150px; object-fit:contain; filter:drop-shadow(0 6px 14px rgba(0,0,0,.35)); margin-bottom:6px; }
  .ls-badge{
    align-self:center; background:#ff6a00; color:#fff; font-size:11px; font-weight:800; letter-spacing:.5px;
    padding:2px 10px; border-radius:10px; text-transform:uppercase;
  }
  .ls-wordmark{ font-size:34px; font-weight:800; letter-spacing:.5px; text-shadow:1px 2px 3px rgba(0,0,0,.35); }
  .ls-edition{ font-size:13px; opacity:.85; font-weight:600; }
  .ls-divider{ width:1px; align-self:stretch; background:rgba(255,255,255,.35); margin:0 10px; min-height:220px; }
  .ls-accounts{ flex:1; display:flex; flex-direction:column; gap:10px; }
  .ls-hint{ font-size:19px; font-weight:600; }
  .ls-user{
    display:flex; align-items:center; gap:14px; padding:10px 14px; border-radius:6px; cursor:pointer;
    background:linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,.16));
    transition:background .15s;
  }
  .ls-user:not(.disabled):hover, .ls-user:not(.disabled):focus{ background:linear-gradient(90deg, rgba(20,60,140,.5), rgba(60,120,210,.7)); }
  #lsGuest{ background:linear-gradient(90deg, rgba(15,45,110,.75), rgba(70,130,220,.65)); }
  .ls-user.disabled{ cursor:default; opacity:.55; }
  .ls-avatar{
    width:60px; height:60px; border-radius:8px; overflow:hidden; border:2px solid rgba(255,255,255,.3);
    box-shadow:0 2px 6px rgba(0,0,0,.4); flex-shrink:0; background:#111;
    display:flex; align-items:center; justify-content:center; font-size:30px;
  }
  .ls-avatar img{ width:100%; height:100%; object-fit:cover; }
  .ls-avatar.web3{ border-radius:50%; background:radial-gradient(circle, #2a3f7a 0%, #17244d 70%); border-color:rgba(255,255,255,.25); }
  #lsGuest .ls-avatar{ border:2px solid #ffd24a; }
  .ls-user-txt{ flex:1; }
  .ls-user-name{ font-size:19px; font-weight:700; }
  .ls-user-sub{ font-size:12px; opacity:.85; font-weight:600; }
  .ls-arrow{ width:38px; height:38px; flex-shrink:0; }
  .ls-arrow img{ width:100%; height:100%; object-fit:contain; }
  .ls-footer{
    height:110px; background:linear-gradient(180deg,#0a3fa0,#082e7a); border-top:3px solid #f2b662;
    display:flex; align-items:center; justify-content:space-between; padding:0 24px; font-size:15px;
    flex-shrink:0;
  }
  .ls-scanbtn{ display:flex; align-items:center; gap:14px; cursor:pointer; font-weight:700; font-size:22px; opacity:.9; }
  .ls-scanbtn:hover{ opacity:1; text-decoration:underline; }
  .ls-scanico{ width:34px; height:34px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .ls-scanico img{ width:100%; height:100%; object-fit:contain; }
  .ls-footnote{ opacity:.8; text-align:right; max-width:420px; line-height:1.5; font-size:15px; }
  @media (max-width:720px){
    .ls-topbar{ height:44px; border-bottom-width:2px; }
    .ls-footer{ height:64px; padding:0 14px; }
    .ls-scanbtn{ font-size:14px; gap:8px; }
    .ls-scanico{ width:22px; height:22px; }
    .ls-center{ flex-direction:column; gap:20px; }
    .ls-divider{ width:80%; height:1px; min-height:0; }
    .ls-footnote{ display:none; }
  }

  /* ---------- WINDOW CHROME (XP Luna) ---------- */
  .win{
    position:absolute; min-width:280px; background:var(--xp-silver1);
    border:1px solid var(--xp-titlebar1); border-radius:8px 8px 3px 3px;
    box-shadow:2px 3px 14px rgba(0,0,0,.45);
    display:flex; flex-direction:column; overflow:hidden;
  }
  .titlebar{
    height:30px; display:flex; align-items:center; gap:4px; padding:3px 4px 3px 6px;
    background:linear-gradient(180deg, #2a8fff 0%, #0058ee 8%, #0058ee 40%, #0058ee 60%, #1e6fef 92%, #3a93ff 100%);
    color:#fff; font-weight:700; font-size:12px; cursor:default;
    border-radius:6px 6px 0 0;
    text-shadow:1px 1px 1px rgba(0,0,0,.5);
  }
  .win.blurred .titlebar{ background:linear-gradient(180deg,#9fb9d8,#7b93b6); color:#e6ecf5; }
  .titlebar .ttl-icon{ font-size:14px; filter:drop-shadow(0 1px 1px rgba(0,0,0,.4)); }
  .titlebar .ttl-text{ flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .tbtn{
    width:22px; height:22px; border:none; border-radius:5px; cursor:pointer;
    background:transparent; display:flex; align-items:center; justify-content:center; line-height:1;
    transition:transform .1s ease, filter .1s ease;
  }
  .tbtn:hover{ filter:brightness(1.15); transform:scale(1.08); }
  .tbtn:active{ transform:scale(0.95); }
  .tbtn img{ width:22px; height:22px; object-fit:contain; pointer-events:none; }
  .tbtn.close{ background:transparent; }
  .tbtn.disabled{ opacity:.4; cursor:default; pointer-events:none; }
  .menubar{
    height:22px; display:flex; align-items:center; gap:14px; padding:0 8px; background:var(--xp-silver1);
    border-bottom:1px solid #fff; box-shadow:0 1px 0 #aca899; font-size:11px; color:#000;
  }
  .win-body{ flex:1; overflow:auto; background:#fff; color:#111; font-size:12px; }
  .win-statusbar{
    height:20px; border-top:1px solid #fff; box-shadow:0 -1px 0 #aca899; background:var(--xp-silver1);
    font-size:11px; display:flex; align-items:center; padding:0 8px; color:#333;
  }
  .resize-handle{ position:absolute; right:0; bottom:0; width:14px; height:14px; cursor:nwse-resize; opacity:.5; }
  .win-loading{
    height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px;
    background:#8f8f8f repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0px, rgba(255,255,255,.05) 1px, transparent 1px, transparent 3px);
  }
  .win-loading img{ width:220px; height:220px; object-fit:contain; }
  .win-loading-txt{ font-size:16px; font-weight:700; color:#333; }

  /* ---------- TASKBAR ---------- */
  #taskbar{
    position:fixed; left:0; right:0; bottom:0; height:34px; z-index:5000;
    background:linear-gradient(180deg, #2a8ae6 0%, #1962c9 4%, #0a52c6 50%, #0a3fa0 96%, #082e7a 100%);
    border-top:1px solid #4ea6ff; display:flex; align-items:center; gap:6px; padding:0 4px;
  }
  #startbtn{
    height:30px; padding:0 16px 0 8px; display:flex; align-items:center; gap:6px;
    background:linear-gradient(180deg,#8bf46f 0%,#3fb23a 45%,#1f7a1d 100%); border:1px solid #1a5c18; border-radius:14px;
    color:#fff; font-weight:800; font-size:15px; cursor:pointer; font-style:italic; letter-spacing:.2px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 1px 1px 3px rgba(0,0,0,.4);
  }
  #startbtn .flag{ width:18px; height:18px; border-radius:3px; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:1px; padding:1px; background:#fff; }
  #startbtn .flag i{ background:#fff; }
  #startbtn .flag i:nth-child(1){ background:#f35325; }
  #startbtn .flag i:nth-child(2){ background:#81bc06; }
  #startbtn .flag i:nth-child(3){ background:#05a6f0; }
  #startbtn .flag i:nth-child(4){ background:#ffba08; }
  #startbtn:hover{ filter:brightness(1.08); }
  .sep{ width:2px; height:24px; background:linear-gradient(180deg,#083f96,#4ea6ff,#083f96); }
  #taskitems{ flex:1; display:flex; gap:4px; overflow:hidden; height:26px; }
  .taskitem{
    height:26px; padding:0 10px; display:flex; align-items:center; gap:6px; max-width:170px;
    background:linear-gradient(180deg,#3a93ff,#1265d6); border:1px solid #0a3fa0; border-radius:3px;
    color:#fff; font-size:11px; cursor:pointer; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
  }
  .taskitem.active{ background:linear-gradient(180deg,#0a3fa0,#1265d6); box-shadow:inset 0 1px 4px rgba(0,0,0,.5); }
  #traytime{
    color:#fff; font-size:11px; padding:0 10px; height:26px; display:flex; align-items:center;
    background:linear-gradient(180deg,#1a5cc0,#0a3fa0); border-radius:4px 0 0 4px; border-left:1px solid #4ea6ff;
  }

  /* ---------- START MENU ---------- */
  #startmenu{
    position:fixed; left:2px; bottom:36px; width:340px; background:#fff; border:1px solid #0a3fa0;
    border-radius:10px 10px 4px 4px; box-shadow:2px 2px 16px rgba(0,0,0,.5);
    display:none; z-index:6000; overflow:hidden;
  }
  #startmenu.open{ display:block; }
  #startmenu .sm-head{
    background:linear-gradient(180deg,#3a93ff,#0a52c6); padding:10px 12px; display:flex; align-items:center; gap:10px;
  }
  #startmenu .sm-head .av{
    width:40px; height:40px; border-radius:6px; background:#0a246a; display:flex;align-items:center;justify-content:center;
    font-size:20px; border:2px solid #fff; overflow:hidden;
  }
  #startmenu .sm-head b{ color:#fff; font-size:14px; text-shadow:1px 1px 1px rgba(0,0,0,.4);}
  .sm-body{ display:flex; }
  .sm-col{ flex:1; padding:8px 0; }
  .sm-col.right{ background:#eef4fc; border-left:1px solid #cfe0f5; }
  .sm-item{ display:flex; align-items:center; gap:10px; padding:6px 12px; font-size:12px; cursor:pointer; border-radius:3px; margin:0 4px; }
  .sm-item:hover{ background:linear-gradient(180deg,#3a93ff,#0a52c6); color:#fff; }
  .sm-item:hover .sm-sub{ color:#e2edff; }
  .sm-item .g{ width:26px; text-align:center; font-size:19px; flex-shrink:0; }
  .sm-item .g img{ width:24px !important; height:24px !important; }
  .sm-item .sm-txt{ display:flex; flex-direction:column; line-height:1.25; }
  .sm-item .sm-sub{ font-size:10px; color:#7a7a7a; font-weight:400; }
  .sm-item b{ font-weight:700; }
  #startmenu hr{ border:none; border-top:1px solid #cfd8e3; margin:6px 8px; }
  .sm-col.right .sm-item{ color:#0a52c6; font-weight:700; }
  .sm-col.right .sm-item:hover{ color:#fff; }
  .sm-check{ display:flex; align-items:center; gap:8px; padding:6px 12px; font-size:11px; cursor:pointer; color:#333; }
  .sm-check input{ accent-color:#0a52c6; width:13px; height:13px; }
  .sm-allprograms{ display:flex; align-items:center; gap:8px; padding:8px 14px; font-size:12px; font-weight:800; cursor:pointer; color:#0a246a; border-top:1px solid #cfd8e3; position:relative; }
  .sm-allprograms:hover{ background:linear-gradient(180deg,#3a93ff,#0a52c6); color:#fff; }
  .sm-flyout{
    position:fixed; width:190px; background:#fff; border:1px solid #0a3fa0;
    border-radius:4px; box-shadow:2px 2px 12px rgba(0,0,0,.4); padding:4px 0; z-index:6500;
  }
  .sm-flyout .sm-item .g img{ width:20px !important; height:20px !important; }
  .sm-foot{ background:linear-gradient(180deg,#1a5cc0,#0a3fa0); padding:8px 10px; display:flex; justify-content:flex-end; gap:14px;}
  .sm-foot .sm-item{ color:#fff; padding:6px 8px; font-size:11px; font-weight:700; display:flex; align-items:center; gap:6px; margin:0; }
  .sm-foot .sm-item:hover{ background:rgba(255,255,255,.18); }
  .sm-foot .ico-key{ width:18px; height:18px; display:flex; align-items:center; justify-content:center; }
  .sm-foot .ico-off{ width:18px; height:18px; display:flex; align-items:center; justify-content:center; }
  .sm-foot .ico-key img, .sm-foot .ico-off img{ width:18px; height:18px; object-fit:contain; }
  .sm-foot .sm-item{ cursor:pointer; }

  ::-webkit-scrollbar{ width:16px; height:16px; }
  ::-webkit-scrollbar-track{ background:#ece9d8; }
  ::-webkit-scrollbar-thumb{ background:#c2c2c2; border:1px solid #9a9a9a; }

  .pad{ padding:14px; }
  .win-body h2{ font-size:14px; margin:0 0 8px; color:#0a246a; }
  .win-body p{ font-size:12px; line-height:1.6; margin:0 0 10px; }
  .btn-xp{
    background:linear-gradient(180deg,#fefefe,#e3e3e3); border:1px solid #8f8f8f; border-radius:3px;
    padding:5px 14px; font-size:11px; cursor:pointer; font-family:var(--tahoma);
  }
  .btn-xp:hover{ border-color:#3a93ff; }
  .btn-xp:active{ background:#d4d0c8; }
  .btn-xp-ico{ width:14px; height:14px; object-fit:contain; vertical-align:middle; margin-right:2px; }

  #notepad-ta{ width:100%; height:100%; border:none; resize:none; outline:none; font-family:"Courier New",monospace; font-size:13px; padding:6px; }

  .ms-grid{ display:grid; gap:1px; padding:8px; background:#808080; border:3px solid; border-color:#808080 #fff #fff #808080; width:max-content; }
  .ms-cell{
    width:20px; height:20px; background:#c0c0c0; border:2px solid; border-color:#fff #808080 #808080 #fff;
    display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:900; cursor:pointer; user-select:none;
  }
  .ms-cell.open{ border:1px solid #808080; background:#c0c0c0; }
  .ms-cell.mine{ background:#ff4444; }
  .ms-cell.flag{ color:#c00; }

  .ms-wrap{ background:var(--xp-silver1); height:100%; display:flex; flex-direction:column; position:relative; }
  .ms-menubar{ display:flex; gap:14px; padding:3px 8px; font-size:11px; border-bottom:1px solid #aca899; }
  .ms-menubar span{ cursor:pointer; padding:2px 4px; }
  .ms-menubar span:hover{ background:#dbeafe; border-radius:2px; }
  .ms-dropdown{
    position:absolute; top:20px; left:2px; background:#fff; border:1px solid #7f9db9;
    box-shadow:2px 2px 6px rgba(0,0,0,.35); z-index:50; min-width:190px; padding:3px 0;
  }
  .ms-mi{ padding:6px 12px; font-size:11px; cursor:pointer; display:flex; justify-content:space-between; gap:10px; white-space:nowrap; }
  .ms-mi:hover{ background:linear-gradient(180deg,#3a93ff,#0a52c6); color:#fff; }
  .ms-mi-sub{ opacity:.6; font-size:10px; }
  .ms-mi:hover .ms-mi-sub{ opacity:.85; }
  .ms-panel{
    margin:8px; padding:6px; background:#c0c0c0; border:4px solid;
    border-color:#fff #808080 #808080 #fff; display:inline-flex; flex-direction:column; gap:6px; width:max-content;
  }
  .ms-hud{
    display:flex; align-items:center; justify-content:space-between; background:#c0c0c0;
    border:3px solid; border-color:#808080 #fff #fff #808080; padding:4px 6px;
  }
  .ms-led{
    background:#000; color:#ff2020; font-family:'Courier New',monospace; font-weight:900; font-size:20px;
    letter-spacing:2px; padding:2px 4px; border:2px solid; border-color:#808080 #fff #fff #808080; min-width:46px; text-align:center;
  }
  .ms-reset{
    width:32px; height:32px; background:#c0c0c0; border:3px solid; border-color:#fff #808080 #808080 #fff;
    cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0;
  }
  .ms-reset:active{ border-color:#808080 #fff #fff #808080; }
  .ms-reset img{ width:22px; height:22px; object-fit:contain; }
  .ms-grid{ border:3px solid; border-color:#808080 #fff #fff #808080; }

  .explorer-list{ display:grid; grid-template-columns:repeat(auto-fill,90px); gap:4px; padding:10px; }

  /* ---- WenPump (Winamp-style) ---- */
  .wp-shell{
    height:100%; display:flex; flex-direction:column; background:linear-gradient(180deg,#2a2f4a,#181b2e);
    font-family:var(--tahoma); color:#b9c6e0; user-select:none;
  }
  .wp-titlebar{
    background:linear-gradient(180deg,#4a5a9a,#242c52); padding:4px 8px; font-size:11px; font-weight:800;
    letter-spacing:1px; color:#e4ecff; display:flex; align-items:center; gap:6px;
  }
  .wp-display{ background:#0c1024; margin:5px; border:1px solid #05070f; box-shadow:inset 0 0 4px #000; padding:5px 6px; }
  .wp-time{ font-family:'Courier New',monospace; font-size:20px; color:#7fffb0; text-shadow:0 0 4px rgba(127,255,176,.6); }
  .wp-marquee-wrap{ overflow:hidden; white-space:nowrap; height:14px; margin:2px 0; }
  .wp-marquee{
    display:inline-block; font-family:'Courier New',monospace; font-size:11px; color:#8fe0ff;
    animation:wpScroll 9s linear infinite;
  }
  @keyframes wpScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
  .wp-viz{ display:flex; align-items:flex-end; gap:1px; height:28px; margin:4px 0; background:#000; padding:2px; }
  .wp-viz span{ flex:1; background:linear-gradient(180deg,#7fffb0,#1f9e46); height:2px; transition:height .06s linear; }
  .wp-meta{ display:flex; gap:8px; font-size:9px; color:#6a7aa8; font-family:'Courier New',monospace; }
  .wp-seek{ margin:0 5px; }
  .wp-seek input, .wp-vol input{
    width:100%; -webkit-appearance:none; appearance:none; height:10px; background:transparent;
  }
  .wp-seek input::-webkit-slider-runnable-track, .wp-vol input::-webkit-slider-runnable-track{
    height:4px; background:#3a4270; border-radius:2px;
  }
  .wp-seek input::-webkit-slider-thumb, .wp-vol input::-webkit-slider-thumb{
    -webkit-appearance:none; width:9px; height:12px; margin-top:-4px; background:#8fe0ff; border:1px solid #1b2340; border-radius:1px;
  }
  .wp-transport{ display:flex; align-items:center; gap:3px; padding:5px; }
  .wp-transport button{
    flex:0 0 auto; width:28px; height:22px; background:linear-gradient(180deg,#4a5a9a,#242c52); color:#dfe7ff;
    border:1px solid #10142a; border-radius:3px; cursor:pointer; font-size:11px; display:flex; align-items:center; justify-content:center;
  }
  .wp-transport button:hover{ filter:brightness(1.2); }
  .wp-transport button:active{ filter:brightness(0.85); }
  .wp-vol{ flex:1; margin-left:6px; }
  .wp-toggles{ display:flex; gap:4px; padding:0 5px 5px; }
  .wp-toggle{
    flex:1; font-size:9px; letter-spacing:.5px; padding:4px 0; background:#1b2140; color:#7a88b8;
    border:1px solid #10142a; border-radius:3px; cursor:pointer; font-weight:700;
  }
  .wp-toggle.on{ background:#2f9e56; color:#eafff0; }
  .wp-playlist-head{
    background:linear-gradient(180deg,#4a5a9a,#242c52); padding:3px 8px; font-size:10px; font-weight:800;
    color:#e4ecff; letter-spacing:.5px;
  }
  .wp-playlist{ flex:1; overflow-y:auto; background:#0c1024; padding:2px; }
  .wp-track{
    display:flex; gap:6px; padding:3px 6px; font-size:11px; font-family:'Courier New',monospace;
    color:#9fb3e0; cursor:pointer; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }
  .wp-track:hover{ background:#1b2350; }
  .wp-track.active{ background:#173a24; color:#7fffb0; }
  .wp-track-num{ opacity:.6; flex-shrink:0; }
  .wp-empty{ padding:14px 10px; font-size:11px; color:#6a7aa8; line-height:1.5; }
  .explorer-item{ display:flex; flex-direction:column; align-items:stretch; gap:4px; font-size:11px; text-align:center; padding:6px; border-radius:2px; cursor:pointer; width:90px; overflow-wrap:break-word;}
  .explorer-item:hover{ background:#dbeafe; outline:1px dotted #3a93ff; }

  .cd-player{ padding:10px; }
  .cd-nowplaying{ font-size:12px; font-weight:700; color:#173a7a; margin-bottom:10px; padding:6px 10px; background:#eef4fc; border:1px solid #cdd8e6; border-radius:4px; }
  .cd-track{ display:flex; align-items:center; gap:8px; padding:8px 10px; border:1px solid #e0e6ee; border-radius:4px; margin-bottom:4px; cursor:pointer; font-size:12px; }
  .cd-track:hover{ background:#dbeafe; }
  .cd-track-name{ flex:1; }
  .cd-track-play{ color:#2f6fce; }

  .ie-toolbar{ display:flex; align-items:center; gap:4px; padding:4px 6px; background:var(--xp-silver1); border-bottom:1px solid #aca899; }
  .ie-address{ flex:1; display:flex; align-items:center; gap:6px; }
  .ie-address input{ flex:1; padding:3px 6px; border:1px solid #7f9db9; font-size:11px; }
  .ie-page{ padding:20px; font-family:Georgia,serif; }

  .paint-wrap{ display:flex; flex-direction:column; height:100%; background:var(--xp-silver1); position:relative; }
  .paint-menubar{
    display:flex; gap:14px; padding:4px 8px; background:var(--xp-silver1); border-bottom:1px solid #aca899; font-size:11px;
  }
  .paint-menubar span{ cursor:pointer; padding:2px 5px; border-radius:2px; }
  .paint-menubar span:hover{ background:#dbeafe; }
  .paint-menu-dropdown{
    position:absolute; top:22px; left:6px; background:#fff; border:1px solid #7f9db9; box-shadow:2px 2px 6px rgba(0,0,0,.35);
    z-index:50; min-width:170px; padding:3px 0;
  }
  .pm-item{ padding:5px 14px; font-size:11px; cursor:pointer; display:flex; justify-content:space-between; }
  .pm-item:hover{ background:linear-gradient(180deg,#3a93ff,#0a52c6); color:#fff; }
  .pm-key{ opacity:.6; font-size:10px; }
  .paint-main{ flex:1; display:flex; overflow:hidden; background:var(--xp-silver1); }
  .paint-toolbox{
    width:76px; flex-shrink:0; background:var(--xp-silver1);
    border-right:2px solid #808080; margin-right:8px;
    display:grid; grid-template-columns:repeat(2,1fr); gap:4px; align-content:start; padding:5px 8px 5px 5px;
  }
  .pt-tool{
    width:100%; height:26px; border:1px solid transparent; border-radius:3px; background:transparent;
    cursor:pointer; font-size:13px; display:flex; align-items:center; justify-content:center;
  }
  .pt-tool:hover{ border-color:#7f9db9; background:#dbeafe; }
  .pt-tool.active{ border-color:#316ac5; background:#c1d9f5; box-shadow:inset 0 1px 3px rgba(0,0,0,.25); }
  .pt-tool img{ width:20px; height:20px; image-rendering:pixelated; pointer-events:none; }
  .pt-fillstyle{ grid-column:1/3; display:flex; gap:2px; margin-top:4px; }
  .pt-fs{ flex:1; height:24px; border:1px solid #9a9a9a; background:#fff; cursor:pointer; font-size:11px; }
  .pt-fs.active{ border-color:#316ac5; background:#c1d9f5; }
  .pt-size-lbl{ grid-column:1/3; font-size:10px; display:flex; flex-direction:column; gap:2px; margin-top:6px; }
  .pt-size-lbl input[type="range"]{
    width:100%; height:14px; -webkit-appearance:none; appearance:none; background:transparent; margin:4px 0 2px;
  }
  .pt-size-lbl input[type="range"]::-webkit-slider-runnable-track{
    height:4px; background:#9a9a9a; border:1px solid #7a7a7a; border-radius:2px;
  }
  .pt-size-lbl input[type="range"]::-webkit-slider-thumb{
    -webkit-appearance:none; width:12px; height:12px; margin-top:-5px; border-radius:2px;
    background:#c0c0c0; border:1px solid #4a4a4a; box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
  }
  .pt-size-lbl input[type="range"]::-moz-range-track{
    height:4px; background:#9a9a9a; border:1px solid #7a7a7a; border-radius:2px;
  }
  .pt-size-lbl input[type="range"]::-moz-range-thumb{
    width:12px; height:12px; border-radius:2px; background:#c0c0c0; border:1px solid #4a4a4a;
  }
  .pt-undoredo{ grid-column:1/3; display:flex; gap:2px; margin-top:8px; }
  .pt-ur-btn{
    flex:1; height:28px; border:1px solid transparent; border-radius:3px; background:transparent; cursor:pointer;
    display:flex; align-items:center; justify-content:center;
  }
  .pt-ur-btn:hover{ border-color:#7f9db9; background:#dbeafe; }
  .pt-ur-btn:active{ border-color:#316ac5; background:#c1d9f5; }
  .pt-ur-btn img{ width:22px; height:22px; object-fit:contain; pointer-events:none; }
  .pt-colors-btn{
    grid-column:1/3; height:30px; margin-top:6px; border:1px solid #9a9a9a; border-radius:3px; cursor:pointer;
    background:#fff; display:flex; align-items:center; justify-content:center;
  }
  .pt-colors-btn:hover{ border-color:#316ac5; }
  .pt-colors-btn img{ width:22px; height:22px; object-fit:contain; pointer-events:none; }
  .paint-body{ flex:1; overflow:hidden; background:#808080; padding:4px; }
  #ptCanvas{ width:100%; height:100%; display:block; cursor:crosshair; background:#fff; }
  .paint-palette{ display:flex; align-items:center; gap:8px; padding:5px 8px; background:var(--xp-silver1); border-top:1px solid #fff; box-shadow:0 -1px 0 #aca899; }
  .pt-current{ position:relative; width:36px; height:26px; flex-shrink:0; }
  .pt-swatch-current{ position:absolute; top:0; left:0; width:24px; height:20px; border:2px inset #808080; background:#000; z-index:2; }
  .pt-swatch-secondary{ position:absolute; bottom:0; right:0; width:24px; height:20px; border:2px inset #808080; background:#fff; z-index:1; }
  .pt-grid{ display:grid; grid-template-columns:repeat(10,16px); grid-template-rows:repeat(2,13px); gap:1px; }
  .pt-swatch{ width:16px; height:13px; cursor:pointer; border:1px solid rgba(0,0,0,.15); }
  .pt-swatch:hover{ outline:1px solid #316ac5; }

  .fx-menubar{
    display:flex; gap:16px; padding:3px 10px; background:var(--xp-silver1); border-bottom:1px solid #aca899; font-size:11px;
  }
  .fx-menubar span{ cursor:pointer; padding:2px 4px; }
  .fx-menubar span:hover{ background:#dbeafe; border-radius:2px; }
  .fx-page{ background:#eef2f7; font-family:var(--tahoma); font-size:12px; color:#111; padding:0; }
  .fx-hero{
    display:flex; justify-content:space-between; align-items:center; padding:10px 14px;
    background:linear-gradient(90deg,#173a7a,#2f6fce); color:#fff;
  }
  .fx-badge{ background:#ffba08; color:#3a2400; font-size:9px; font-weight:800; padding:2px 6px; border-radius:3px; margin-right:8px; }
  .fx-wordmark{ display:inline-block; font-size:18px; font-weight:900; letter-spacing:.5px; }
  .fx-wordmark span{ font-weight:400; font-size:12px; opacity:.8; margin-left:4px; }
  .fx-hero-right{ font-size:10px; opacity:.85; }
  .fx-cols{ display:flex; gap:10px; padding:12px; align-items:flex-start; }
  .fx-side{ width:160px; flex-shrink:0; display:flex; flex-direction:column; gap:10px; }
  .fx-box{ background:#fff; border:1px solid #cdd8e6; border-radius:4px; padding:8px 10px; display:flex; flex-direction:column; gap:5px; }
  .fx-box b{ font-size:11px; color:#173a7a; margin-bottom:2px; }
  .fx-box a{ font-size:11px; color:#2f6fce; text-decoration:underline; cursor:pointer; }
  .fx-main{ flex:1; background:#fff; border:1px solid #cdd8e6; border-radius:4px; padding:12px; }
  .fx-video{
    background:#111; color:#fff; border-radius:4px; min-height:150px; display:flex; flex-direction:column;
    align-items:center; justify-content:center; gap:6px; margin-bottom:12px; text-align:center; padding:10px 14px;
    position:relative;
  }
  .fx-play{ width:40px; height:40px; border-radius:50%; background:#e0301e; display:flex; align-items:center; justify-content:center; font-size:16px; }
  .fx-video span{ font-size:11px; opacity:.85; z-index:2; }
  .fx-live-badge{
    position:absolute; top:8px; left:10px; background:rgba(224,48,30,.9); color:#fff; font-size:9px; font-weight:800;
    padding:2px 7px; border-radius:10px; letter-spacing:.5px; z-index:3; animation: liveBlink 1.6s ease-in-out infinite;
  }
  @keyframes liveBlink{ 0%,100%{ opacity:1; } 50%{ opacity:.45; } }
  .fx-scene{
    position:relative; width:100%; height:96px; overflow:hidden; background:#0c1830; border-radius:4px;
    margin-bottom:2px; flex-shrink:0; display:flex; align-items:center; justify-content:center;
  }
  .fx-scene-gif{ width:100%; height:100%; object-fit:cover; }
  .fx-main h3{ margin:0 0 6px; font-size:13px; color:#173a7a; }
  .fx-main p{ font-size:11px; line-height:1.6; margin:0 0 10px; color:#333; }
  .fx-main code{ background:#f0f2f5; padding:1px 5px; border-radius:3px; font-family:'Courier New',monospace; }

  .fx-frame-area{ position:relative; height:calc(100% - 0px); }
  .fx-iframe{ width:100%; height:100%; border:none; display:block; background:#fff; }
  .fx-fallback{
    position:absolute; inset:0; background:#eef2f7; display:none; flex-direction:column;
    align-items:center; justify-content:center; gap:10px; text-align:center; padding:20px;
  }
  .fx-fallback-icon{ font-size:40px; }
  .fx-fallback p{ font-size:12px; color:#333; max-width:320px; }
  .ie-address input{ background:#fff; }
  .ie-address input:focus{ outline:1px solid #2f6fce; }
  #term-cursor{ animation: termblink 1s step-end infinite; }
  @keyframes termblink{ 50%{ opacity:0; } }

  /* ---- Fwogen Tracker (real-time Robinhood Chain wallet intel) ---- */
  .wt2-shell{
    height:100%; display:flex; flex-direction:column; background:#0b0e14; color:#dfe6f2;
    font-family:"Segoe UI",var(--tahoma); overflow:hidden;
  }
  .wt2-status{
    display:flex; align-items:center; gap:8px; padding:7px 10px; font-size:11px; letter-spacing:.3px;
    background:#11151f; border-bottom:1px solid rgba(255,255,255,.08); flex-shrink:0;
  }
  .wt2-live-dot{
    width:7px; height:7px; border-radius:50%; background:#34d399; flex-shrink:0;
    animation: wt2Pulse 2s ease-in-out infinite;
  }
  @keyframes wt2Pulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(52,211,153,.55);} 50%{ box-shadow:0 0 0 5px rgba(52,211,153,0);} }
  .wt2-chain{ font-weight:600; flex:1; }
  .wt2-block{ font-family:"Courier New",monospace; opacity:.6; font-size:10.5px; }
  .wt2-search{ display:flex; gap:8px; padding:10px; flex-shrink:0; }
  .wt2-search input{
    flex:1; background:#12151d; border:1px solid rgba(255,255,255,.14); border-radius:6px; color:#eef2f8;
    padding:8px 10px; font-family:"Courier New",monospace; font-size:12px; outline:none;
  }
  .wt2-search input::placeholder{ color:rgba(255,255,255,.35); }
  .wt2-search input:focus{ border-color:#34d399; }
  .wt2-search button{
    background:#34d399; color:#062015; border:none; border-radius:6px; padding:0 16px; font-weight:700;
    font-size:12px; cursor:pointer;
  }
  .wt2-search button:hover{ filter:brightness(1.08); }
  .wt2-err{ margin:0 10px 8px; padding:6px 10px; background:rgba(240,90,90,.12); border:1px solid rgba(240,90,90,.35); color:#ff9d9d; border-radius:6px; font-size:11px; flex-shrink:0; }
  .wt2-wallet{ padding:10px; background:rgba(255,255,255,.02); border-bottom:1px solid rgba(255,255,255,.08); flex-shrink:0; }
  .wt2-wallet-row{ display:flex; align-items:center; justify-content:space-between; }
  .wt2-wallet-addr{ font-family:"Courier New",monospace; font-weight:700; font-size:13px; }
  .wt2-stop{
    background:transparent; border:1px solid rgba(255,107,107,.45); color:#ff8080; border-radius:5px;
    padding:4px 12px; font-size:11px; font-weight:600; cursor:pointer;
  }
  .wt2-stop:hover{ background:rgba(255,107,107,.12); }
  .wt2-wallet-stats{ display:flex; gap:14px; margin-top:6px; font-size:11px; opacity:.8; font-family:"Courier New",monospace; flex-wrap:wrap; }
  .wt2-usd{ opacity:.6; }
  .wt2-feed-head{
    padding:8px 10px 4px; font-size:10px; letter-spacing:1.2px; text-transform:uppercase; opacity:.5;
    flex-shrink:0;
  }
  .wt2-feed{ flex:1; overflow-y:auto; padding:0 10px 10px; display:flex; flex-direction:column; gap:6px; }
  .wt2-feed-empty{ opacity:.4; font-size:12px; text-align:center; padding:26px 10px; }
  .wt2-card{
    background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.07); border-radius:8px;
    padding:8px 10px; animation: wt2SlideIn .35s ease-out;
  }
  @keyframes wt2SlideIn{ from{ opacity:0; transform:translateY(-6px); } to{ opacity:1; transform:translateY(0); } }
  .wt2-card.wt2-in{ border-left:3px solid #34d399; }
  .wt2-card.wt2-out{ border-left:3px solid #f2905a; }
  .wt2-card.wt2-in.wt2-new{ animation: wt2SlideIn .35s ease-out, wt2GlowIn 1.6s ease-out; }
  .wt2-card.wt2-out.wt2-new{ animation: wt2SlideIn .35s ease-out, wt2GlowOut 1.6s ease-out; }
  @keyframes wt2GlowIn{ 0%{ box-shadow:0 0 0 1px rgba(52,211,153,.6), 0 0 16px rgba(52,211,153,.35);} 100%{ box-shadow:0 0 0 0 rgba(52,211,153,0);} }
  @keyframes wt2GlowOut{ 0%{ box-shadow:0 0 0 1px rgba(242,144,90,.6), 0 0 16px rgba(242,144,90,.35);} 100%{ box-shadow:0 0 0 0 rgba(242,144,90,0);} }
  .wt2-card-top{ display:flex; align-items:center; gap:8px; }
  .wt2-card-badge{
    font-size:9.5px; font-weight:800; letter-spacing:.5px; padding:2px 6px; border-radius:4px; text-transform:uppercase;
  }
  .wt2-card.wt2-in .wt2-card-badge{ background:rgba(52,211,153,.16); color:#34d399; }
  .wt2-card.wt2-out .wt2-card-badge{ background:rgba(242,144,90,.16); color:#f2905a; }
  .wt2-card-amt{ font-family:"Courier New",monospace; font-weight:700; font-size:13px; flex:1; }
  .wt2-card-time{ font-size:10px; opacity:.5; font-family:"Courier New",monospace; }
  .wt2-card-meta{ display:flex; gap:10px; margin-top:4px; font-size:10.5px; opacity:.65; font-family:"Courier New",monospace; flex-wrap:wrap; }
  .wt2-card-meta a{ color:#34d399; text-decoration:none; }
  .wt2-card-meta a:hover{ text-decoration:underline; }

  #scanline-overlay{
    position:fixed; inset:0; pointer-events:none; z-index:9998; display:none;
    background:repeating-linear-gradient(0deg, rgba(0,0,0,0.12) 0px, rgba(0,0,0,0.12) 1px, transparent 1px, transparent 3px);
    mix-blend-mode:multiply;
  }
  #scanline-overlay.on{ display:block; }
  .click-ripple{
    position:fixed; width:10px; height:10px; border-radius:50%; border:2px solid #fff; pointer-events:none; z-index:9999;
    transform:translate(-50%,-50%); animation: rippleGrow .5s ease-out forwards;
    box-shadow:0 0 6px rgba(255,255,255,.8);
  }
  @keyframes rippleGrow{ from{ width:6px; height:6px; opacity:1; } to{ width:34px; height:34px; opacity:0; } }

  @media (max-width:640px){
    .icon-grid{ grid-auto-columns:70px; }
    .dicon{ width:70px; }
  }
