/* ============================================================
   零域 · UI Skin R771  (login + dashboard)
   ============================================================ */
:root{
  --ly-bg:#04070f;
  --ly-panel:rgba(8,20,38,.82);
  --ly-panel-2:rgba(6,14,28,.92);
  --ly-line:rgba(56,189,248,.22);
  --ly-line-2:rgba(56,189,248,.42);
  --ly-cyan:#22d3ee;
  --ly-blue:#1d6bff;
  --ly-text:#dbeafe;
  --ly-muted:#8aa4c8;
}
html,body{ background:var(--ly-bg) !important; }
body.ly-skin, body.ly-login{
  color:var(--ly-text);
  font-family:"Inter","HarmonyOS Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}
body.ly-skin *::-webkit-scrollbar, body.ly-login *::-webkit-scrollbar{ width:6px; height:6px; }
body.ly-skin *::-webkit-scrollbar-thumb, body.ly-login *::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(34,211,238,.55),rgba(29,107,255,.55)); border-radius:99px;
}
body.ly-skin *::-webkit-scrollbar-track{ background:transparent; }

/* ================= HOME ================= */
body.ly-skin{
  background:
    radial-gradient(1200px 700px at 12% -10%, rgba(29,107,255,.18), transparent 60%),
    radial-gradient(1000px 700px at 100% 100%, rgba(34,211,238,.10), transparent 62%),
    #04070f !important;
}
body.ly-skin::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:0;
  background-image:linear-gradient(rgba(56,189,248,.045) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(56,189,248,.045) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:radial-gradient(circle at 50% 40%, rgba(0,0,0,.9), transparent 92%);
}
body.ly-skin #root{ position:relative; z-index:1; }

/* ---- sidebar ---- */
body.ly-skin [data-slot="sidebar-inner"]{
  background:linear-gradient(180deg, rgba(8,19,38,.97) 0%, rgba(4,9,19,.99) 100%) !important;
  border:1px solid rgba(56,189,248,.20) !important;
  border-radius:0 16px 16px 0 !important;
  box-shadow:0 0 70px -26px rgba(34,211,238,.55), inset 0 0 80px -60px rgba(56,189,248,.9) !important;
}
body.ly-skin [data-slot="sidebar-header"]{ padding:8px 8px 4px !important; }
body.ly-skin [data-slot="sidebar-header"] button{
  background:linear-gradient(90deg, rgba(34,211,238,.12), transparent 85%) !important;
  border:0 !important; border-bottom:1px solid rgba(56,189,248,.16) !important;
  border-radius:10px !important; height:auto !important; min-height:50px;
  padding:6px 5px 8px !important; justify-content:flex-start !important; gap:6px !important;
  overflow:hidden !important;
}
body.ly-skin [data-slot="sidebar-header"] img{
  width:28px !important; height:28px !important; border-radius:8px !important; flex:0 0 28px !important;
  box-shadow:0 0 0 1px rgba(56,189,248,.35), 0 0 18px -2px rgba(34,211,238,.65) !important;
}
body.ly-skin [data-slot="sidebar-header"] .ly-brand-box{
  display:flex !important; flex-direction:column !important; align-items:flex-start !important;
  gap:2px; min-width:0; overflow:hidden; flex:1 1 auto;
}
body.ly-skin [data-slot="sidebar-header"] .ly-brand-name{
  font-size:12px !important; font-weight:700 !important; letter-spacing:-.2px !important;
  white-space:nowrap !important; color:#eaf8ff !important;
  text-shadow:0 0 22px rgba(56,189,248,.45);
  background:none !important; -webkit-text-fill-color:#eaf8ff !important;
}
body.ly-skin [data-slot="sidebar-header"] .ly-brand-sub{
  display:block; font-size:8px; letter-spacing:-.2px; white-space:nowrap;
  color:#6f8db3; font-weight:400;
}

body.ly-skin [data-slot="sidebar-group-content"] > div{
  margin:6px 4px 2px !important; padding:3px 10px 3px 12px !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:2px !important;
  color:#6fd6f5 !important;
  border-left:2px solid rgba(34,211,238,.65);
  background:linear-gradient(90deg, rgba(34,211,238,.13), rgba(34,211,238,0) 78%);
  border-radius:0 6px 6px 0;
  text-shadow:0 0 14px rgba(34,211,238,.35);
}
body.ly-skin button[data-slot="sidebar-menu-button"]{
  background:transparent !important;
  border:1px solid transparent !important;
  color:#93a8c6 !important;
  height:31px !important; min-height:31px !important;
  font-size:13px !important; letter-spacing:.2px;
  border-radius:8px !important; padding-left:12px !important;
  transition:all .16s ease;
}
body.ly-skin button[data-slot="sidebar-menu-button"] svg{ color:#6f8db3 !important; transition:color .16s; }
body.ly-skin button[data-slot="sidebar-menu-button"]:hover{
  background:rgba(34,211,238,.07) !important;
  border-color:rgba(34,211,238,.18) !important;
  color:#dff6ff !important;
}
body.ly-skin button[data-slot="sidebar-menu-button"]:hover svg{ color:#67e8f9 !important; }
body.ly-skin button[data-slot="sidebar-menu-button"][data-active="true"]{
  background:linear-gradient(90deg, rgba(34,211,238,.26), rgba(29,107,255,.10)) !important;
  border-color:rgba(34,211,238,.48) !important;
  color:#f0fbff !important;
  font-weight:600 !important;
  box-shadow:0 0 24px -8px rgba(34,211,238,.85), inset 0 0 22px -14px rgba(34,211,238,1) !important;
}
body.ly-skin button[data-slot="sidebar-menu-button"][data-active="true"] svg{ color:#67e8f9 !important; filter:drop-shadow(0 0 6px rgba(34,211,238,.8)); }
body.ly-skin [data-slot="sidebar-footer"]{
  border-top:1px solid rgba(56,189,248,.14) !important;
  background:linear-gradient(0deg, rgba(34,211,238,.07), transparent) !important;
}
body.ly-skin [data-slot="sidebar-footer"] *{ color:#7fb0d8 !important; white-space:nowrap !important; }\nbody.ly-skin [data-slot="sidebar-footer"] div{ display:flex; align-items:center; gap:6px; flex-wrap:nowrap; }

/* ---- top bar ---- */
body.ly-skin main > header{
  height:56px !important; flex:0 0 56px;
  background:linear-gradient(180deg, rgba(7,17,34,.94), rgba(4,10,22,.55)) !important;
  border-bottom:1px solid rgba(56,189,248,.14) !important;
  backdrop-filter:blur(9px);
  position:relative; z-index:3;
}
body.ly-skin main > header::after{
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background:linear-gradient(90deg, transparent, rgba(34,211,238,.55), transparent);
}
body.ly-skin #breadcrumb nav ol{
  background:linear-gradient(180deg, rgba(34,211,238,.16), rgba(29,107,255,.06));
  border:1px solid rgba(34,211,238,.30);
  padding:6px 18px; border-radius:8px;
  box-shadow:0 0 22px -12px rgba(34,211,238,.9), inset 0 1px 0 rgba(255,255,255,.06);
}
body.ly-skin #breadcrumb nav ol > *{ color:#d9f6ff !important; letter-spacing:.6px; }
body.ly-skin main > header input{
  background:rgba(5,12,24,.9) !important; border-color:rgba(56,189,248,.20) !important;
  color:#dff3ff !important;
}
body.ly-skin main > header button{
  background:rgba(10,22,42,.72) !important; border:1px solid rgba(56,189,248,.16) !important;
  color:#b9d4ee !important; border-radius:8px !important;
}
body.ly-skin main > header button:hover{ border-color:rgba(34,211,238,.55) !important; color:#eafaff !important; }
body.ly-skin main > header span{ color:#8aa4c8; }

/* ---- status strip ---- */
body.ly-skin main > div > div > div:first-child > div.flex.items-center.gap-3{
  background:linear-gradient(90deg, rgba(34,211,238,.08), transparent 60%);
  border-left:2px solid rgba(34,211,238,.5);
  padding:4px 12px; border-radius:0 8px 8px 0;
}
body.ly-skin main > div > div > div:first-child > div.flex.items-center.gap-3 span{ letter-spacing:.4px; }

/* ---- stat cards ---- */
body.ly-skin main .grid.grid-cols-2.gap-4 > div{
  position:relative; overflow:hidden;
  border:1px solid rgba(56,189,248,.20) !important; border-left-width:1px !important;
  border-radius:14px !important;
  background:linear-gradient(150deg, rgba(12,26,50,.94), rgba(5,11,23,.96)) !important;
  clip-path:polygon(0 14px,14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  box-shadow:0 14px 40px -26px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .18s ease, box-shadow .18s ease;
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:hover{ transform:translateY(-2px); }
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div{ padding:16px 16px 8px !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div > div.flex.items-start.justify-between{ margin-bottom:6px !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div > div.flex.items-start.justify-between > span:first-child{
  font-size:13px !important; color:#c6ddf5 !important; letter-spacing:.3px;
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div > div.flex.items-start.justify-between > div:last-child{
  width:32px; height:32px; display:flex; align-items:center; justify-content:center;
  border-radius:9px; background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 0 14px -4px rgba(255,255,255,.3), 0 0 18px -8px currentColor;
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div > div.text-3xl{
  font-size:34px !important; line-height:1.05 !important; letter-spacing:.5px;
  color:#f2fbff !important; text-shadow:0 0 26px rgba(120,200,255,.35);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div > div > p{ font-size:12px !important; color:#7f9cc0 !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(1){
  border-color:rgba(244,63,94,.38) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(244,63,94,.30), transparent 58%), linear-gradient(150deg, rgba(28,12,26,.95), rgba(8,8,18,.97)) !important;
  box-shadow:0 0 34px -16px rgba(244,63,94,.75), inset 0 0 50px -30px rgba(244,63,94,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(1) svg{ color:#fb7185 !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(2){
  border-color:rgba(34,197,94,.38) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(34,197,94,.26), transparent 58%), linear-gradient(150deg, rgba(8,28,24,.95), rgba(6,10,18,.97)) !important;
  box-shadow:0 0 34px -16px rgba(34,197,94,.75), inset 0 0 50px -30px rgba(34,197,94,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(2) svg{ color:#4ade80 !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(3){
  border-color:rgba(168,85,247,.40) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(168,85,247,.28), transparent 58%), linear-gradient(150deg, rgba(22,12,38,.95), rgba(7,8,18,.97)) !important;
  box-shadow:0 0 34px -16px rgba(168,85,247,.75), inset 0 0 50px -30px rgba(168,85,247,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(3) svg{ color:#c084fc !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(4){
  border-color:rgba(34,211,238,.42) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(34,211,238,.24), transparent 58%), linear-gradient(150deg, rgba(6,24,38,.95), rgba(5,10,20,.97)) !important;
  box-shadow:0 0 34px -16px rgba(34,211,238,.8), inset 0 0 50px -30px rgba(34,211,238,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(4) svg{ color:#67e8f9 !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(5){
  border-color:rgba(245,158,11,.40) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(245,158,11,.26), transparent 58%), linear-gradient(150deg, rgba(30,20,8,.95), rgba(9,9,16,.97)) !important;
  box-shadow:0 0 34px -16px rgba(245,158,11,.75), inset 0 0 50px -30px rgba(245,158,11,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(5) svg{ color:#fbbf24 !important; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(6){
  border-color:rgba(59,130,246,.42) !important;
  background:radial-gradient(130% 110% at 0% 0%, rgba(59,130,246,.26), transparent 58%), linear-gradient(150deg, rgba(8,18,40,.95), rgba(5,9,20,.97)) !important;
  box-shadow:0 0 34px -16px rgba(59,130,246,.8), inset 0 0 50px -30px rgba(59,130,246,.8);
}
body.ly-skin main .grid.grid-cols-2.gap-4 > div:nth-child(6) svg{ color:#60a5fa !important; }
body.ly-skin .ly-spark{ position:absolute; right:12px; bottom:30px; width:92px; height:34px; opacity:.85; pointer-events:none; }
body.ly-skin main .grid.grid-cols-2.gap-4 > div .mt-2.h-1\.5{ background:rgba(2,10,20,.9) !important; }

/* ---- dashboard content ---- */
body.ly-skin main .grid.grid-cols-1.gap-4 > div{ min-width:0; }

/* map card */
body.ly-skin .ly-mapcell{ overflow:hidden !important; }
body.ly-skin .ly-mapcard{ display:flex; flex-direction:column; gap:10px; height:100%; min-height:0; min-width:0; overflow:hidden; }
body.ly-skin .ly-notice{
  display:flex; align-items:center; gap:12px; flex:0 0 44px;
  padding:0 14px; border-radius:10px;
  border:1px solid rgba(56,189,248,.22);
  background:linear-gradient(90deg, rgba(34,211,238,.12), rgba(8,20,38,.6) 55%, rgba(8,20,38,.35));
  box-shadow:inset 0 0 30px -22px rgba(34,211,238,.9);
}
body.ly-skin .ly-notice b{ font-size:14px; color:#dff6ff; letter-spacing:.5px; white-space:nowrap; }
body.ly-skin .ly-notice .ly-nico{ color:#22d3ee; display:flex; }
body.ly-skin .ly-notice .ly-nscroll{ flex:1; min-width:0; overflow:hidden; white-space:nowrap; font-size:12px; color:#8fb3d8; }
body.ly-skin .ly-notice .ly-nscroll span{ display:inline-block; padding-left:100%; animation:ly-marquee 26s linear infinite; }
@keyframes ly-marquee{ to{ transform:translateX(-100%); } }
body.ly-skin .ly-notice .ly-ncount{ font-size:12px; color:#7f9cc0; white-space:nowrap; }
body.ly-skin .ly-notice .ly-more{
  font-size:12px; color:#9fd8ff; background:rgba(34,211,238,.12);
  border:1px solid rgba(34,211,238,.35); border-radius:7px; padding:5px 12px; cursor:pointer;
}
body.ly-skin .ly-mapwrap{
  position:relative; flex:1 1 auto; min-height:300px; border-radius:14px; overflow:hidden;
  border:1px solid rgba(56,189,248,.22);
  background:
    radial-gradient(700px 420px at 50% 46%, rgba(24,86,170,.30), transparent 65%),
    radial-gradient(900px 500px at 20% 100%, rgba(34,211,238,.10), transparent 60%),
    linear-gradient(180deg, rgba(5,13,27,.96), rgba(3,8,17,.98));
  box-shadow:inset 0 0 90px -50px rgba(56,189,248,.75), 0 20px 60px -40px rgba(0,0,0,1);
}
body.ly-skin .ly-mapwrap::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(56,189,248,.05) 1px, transparent 1px),linear-gradient(90deg, rgba(56,189,248,.05) 1px, transparent 1px);
  background-size:38px 38px;
  mask-image:radial-gradient(circle at 50% 50%, #000 55%, transparent 85%);
}
body.ly-skin .ly-worldmap{ position:absolute; inset:0; width:100%; height:100%; }
body.ly-skin .ly-worldmap circle.dot{ fill:#2f7fd6; opacity:.55; }
body.ly-skin .ly-worldmap circle.dot.hot{ fill:#38e0ff; opacity:.9; }
body.ly-skin .ly-worldmap path.arc{ fill:none; stroke:rgba(56,215,255,.5); stroke-width:1; stroke-dasharray:3 5; }
body.ly-skin .ly-worldmap circle.node{ fill:#67e8f9; }
body.ly-skin .ly-worldmap circle.node-glow{ fill:rgba(34,211,238,.22); animation:ly-pulse 2.6s ease-out infinite; transform-box:fill-box; transform-origin:center; }
@keyframes ly-pulse{ 0%{ r:3; opacity:.75 } 70%{ r:11; opacity:0 } 100%{ r:11; opacity:0 } }
body.ly-skin .ly-maplegend{ position:absolute; left:14px; bottom:12px; display:flex; gap:14px; font-size:11px; color:#6f9bc6; }
body.ly-skin .ly-maplegend i{ display:inline-block; width:7px; height:7px; border-radius:99px; background:#22d3ee; box-shadow:0 0 8px #22d3ee; margin-right:5px; }

body.ly-skin .ly-minirow{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; flex:0 0 70px; min-width:0; }
body.ly-skin .ly-mini{
  display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:12px;
  border:1px solid rgba(56,189,248,.20);
  background:linear-gradient(150deg, rgba(10,24,44,.9), rgba(5,11,22,.94));
  box-shadow:inset 0 0 26px -20px rgba(34,211,238,.9);
}
body.ly-skin .ly-mini .ly-mico{
  width:34px; height:34px; border-radius:10px; display:flex; align-items:center; justify-content:center; flex:0 0 34px;
  background:rgba(34,211,238,.12); border:1px solid rgba(34,211,238,.30); color:#67e8f9;
}
body.ly-skin .ly-mini .ly-mval{ font-size:17px; font-weight:700; color:#eafaff; line-height:1.15; white-space:nowrap; }\nbody.ly-skin .ly-mini > div{ min-width:0; }
body.ly-skin .ly-mini .ly-mlab{ font-size:11px; color:#7f9cc0; letter-spacing:.3px; }
body.ly-skin .ly-mini.c2 .ly-mico{ background:rgba(168,85,247,.14); border-color:rgba(168,85,247,.36); color:#c084fc; }
body.ly-skin .ly-mini.c3 .ly-mico{ background:rgba(59,130,246,.14); border-color:rgba(59,130,246,.36); color:#60a5fa; }
body.ly-skin .ly-mini.c4 .ly-mico{ background:rgba(245,158,11,.14); border-color:rgba(245,158,11,.36); color:#fbbf24; }

/* ranking card */
body.ly-skin .ly-rankcard{
  border:1px solid rgba(56,189,248,.22) !important; border-radius:14px !important;
  background:linear-gradient(160deg, rgba(9,21,41,.94), rgba(4,10,20,.97)) !important;
  clip-path:polygon(0 14px,14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  box-shadow:0 20px 60px -40px #000, inset 0 1px 0 rgba(255,255,255,.04);
}
body.ly-skin .ly-rankcard [data-slot="card-header"]{ padding:14px 16px 10px !important; border-bottom:1px solid rgba(56,189,248,.12); }
body.ly-skin .ly-rankcard [data-slot="card-title"]{ font-size:15px !important; color:#dff6ff !important; letter-spacing:.4px; }
body.ly-skin .ly-rankcard [data-slot="card-title"] svg{ color:#22d3ee !important; }
body.ly-skin .ly-rankcard [data-slot="card-content"]{ padding:12px 16px !important; }
body.ly-skin .ly-rankcard [data-slot="card-content"] > div{
  padding:5px 0; border-bottom:1px dashed rgba(56,189,248,.08);
}
body.ly-skin .ly-rankcard [data-slot="card-content"] > div:last-child{ border-bottom:0; }
body.ly-skin .ly-rankcard [data-slot="card-content"] span.w-16{ width:auto !important; min-width:74px; color:#d5ecff !important; font-size:12.5px !important; }
body.ly-skin .ly-rankcard [data-slot="card-content"] span.w-8{ color:#9fd8ff !important; font-variant-numeric:tabular-nums; }
body.ly-skin .ly-rankcard [data-slot="card-content"] .h-2{
  height:7px !important; background:rgba(3,10,20,.95) !important;
  border:1px solid rgba(56,189,248,.12);
  box-shadow:inset 0 0 10px -4px #000;
}
body.ly-skin .ly-rankcard [data-slot="card-content"] .h-2 > div{
  background:linear-gradient(90deg,#0ea5e9,#22d3ee) !important;
  box-shadow:0 0 10px rgba(34,211,238,.75);
}
body.ly-skin .ly-tabs{ display:flex; gap:6px; margin-left:auto; }
body.ly-skin .ly-tab{
  font-size:12px; padding:4px 12px; border-radius:99px; cursor:pointer;
  color:#8fb3d8; border:1px solid rgba(56,189,248,.18); background:rgba(8,20,38,.6);
}
body.ly-skin .ly-tab.on{
  color:#04121f; font-weight:600;
  background:linear-gradient(135deg,#38bdf8,#22d3ee);
  border-color:transparent; box-shadow:0 0 18px -4px rgba(34,211,238,.85);
}
body.ly-skin .ly-flag{
  width:18px; height:13px; border-radius:2px; object-fit:cover; flex:0 0 18px;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
  background:rgba(56,189,248,.15);
}

/* ================= LOGIN (fluid full-bleed) ================= */
body.ly-login{ overflow:hidden !important; background:#03060e !important; }
body.ly-login #root{ position:fixed; inset:0; }
body.ly-login .login-split{
  position:fixed !important; inset:0 !important;
  width:100% !important; height:100% !important; max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.62fr) minmax(0,1fr) !important;
  gap:0 !important; padding:0 !important; margin:0 !important; border:0 !important;
  background:
    radial-gradient(1200px 820px at 28% 46%, rgba(24,92,205,.30), transparent 62%),
    radial-gradient(900px 620px at 101% 102%, rgba(34,211,238,.09), transparent 60%),
    linear-gradient(140deg,#04070f 0%,#050b18 48%,#03060d 100%) !important;
}
body.ly-login .login-split::before{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image:linear-gradient(rgba(56,189,248,.045) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(56,189,248,.045) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(circle at 38% 46%, rgba(0,0,0,.85), transparent 78%);
}
body.ly-login .login-split::after{ display:none !important; }

/* left hero */
body.ly-login .login-split > div:first-child{
  display:block !important; position:relative !important; inset:auto !important;
  width:auto !important; height:100% !important; min-width:0;
  padding:0 !important; margin:0 !important;
  background:none !important; border:0 !important; box-shadow:none !important;
  overflow:hidden;
}
body.ly-login .login-split > div:first-child::before{
  content:""; position:absolute; left:50%; top:47%; transform:translate(-50%,-50%);
  width:min(70vw,900px); height:min(70vw,900px); border-radius:50%;
  background:radial-gradient(circle, rgba(34,211,238,.20) 0%, rgba(29,107,255,.10) 42%, transparent 68%);
  filter:blur(4px); pointer-events:none;
}
body.ly-login .login-split > div:first-child::after{
  content:""; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:min(94vh,64vw,880px); height:min(94vh,64vw,880px);
  background:url(/lingyu-hero-r771.png) center/contain no-repeat;
  filter:drop-shadow(0 30px 80px rgba(0,0,0,.85)) drop-shadow(0 0 70px rgba(34,211,238,.25));
  pointer-events:none;
}
body.ly-login .ly-hero-brand{
  position:absolute; left:40px; top:30px; z-index:6; display:flex; align-items:center; gap:14px;
}
body.ly-login .ly-hero-brand img{
  width:56px; height:56px; border-radius:14px;
  box-shadow:0 0 0 1px rgba(56,189,248,.35), 0 0 34px -6px rgba(34,211,238,.85);
}
body.ly-login .ly-hero-name{
  font-size:27px; font-weight:800; letter-spacing:1px; color:#eaf8ff;
  text-shadow:0 0 30px rgba(56,189,248,.55); white-space:nowrap;
}
body.ly-login .ly-hero-sub{
  margin-top:5px; font-size:13px; letter-spacing:2.4px; color:#7fa8d4; white-space:nowrap;
}

/* right column */
body.ly-login .login-split > div:nth-of-type(2){
  position:relative !important; inset:auto !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:auto !important; height:100% !important; min-width:0;
  padding:20px 34px !important; margin:0 !important;
  background:none !important; border:0 !important;
}
body.ly-login .ly-card{
  position:relative !important; inset:auto !important;
  width:570px !important; height:633px !important; flex:0 0 auto;
  margin:0 !important; padding:0 !important;
  background:none !important; background-image:none !important;
  border:0 !important; border-radius:0 !important; box-shadow:none !important;
  backdrop-filter:none !important;
  transform-origin:center center;
}
body.ly-login .ly-card > *:not(form):not(.ly-panel){ display:none !important; }

/* card frame (drawn, so it stays crisp at any size) */
body.ly-login .ly-card::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:linear-gradient(160deg, rgba(9,22,44,.86) 0%, rgba(5,13,28,.90) 55%, rgba(3,9,20,.94) 100%);
  border:1px solid rgba(56,160,225,.42);
  border-radius:4px;
  clip-path:polygon(0 26px, 26px 0, 100% 0, 100% calc(100% - 26px), calc(100% - 26px) 100%, 0 100%);
  box-shadow:0 0 60px -18px rgba(34,211,238,.55), inset 0 0 90px -60px rgba(56,189,248,1);
}
body.ly-login .ly-card::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    linear-gradient(135deg, rgba(90,220,255,.65), transparent 26%) left top/120px 2px no-repeat,
    linear-gradient(315deg, rgba(90,220,255,.55), transparent 26%) right bottom/120px 2px no-repeat;
  opacity:.9;
}
body.ly-login .ly-panel{ position:absolute !important; inset:0 !important; width:auto !important; height:auto !important; z-index:1; pointer-events:none; }
body.ly-login .ly-panel *{ pointer-events:auto; }
body.ly-login .ly-panel-tag{ position:absolute; right:40px; top:60px; font-size:12px; letter-spacing:1.4px; color:#6f9bc6; }
body.ly-login .ly-panel-head{ position:absolute; left:50px; top:96px; display:flex; align-items:center; gap:18px; }
body.ly-login .ly-panel-logo{ width:52px; height:52px; border-radius:13px; flex:0 0 52px; box-shadow:0 0 0 1px rgba(56,189,248,.38), 0 0 28px -6px rgba(34,211,238,.85); }
body.ly-login .ly-panel-title{ font-size:34px; font-weight:800; letter-spacing:1.2px; line-height:1.08; color:#f3fbff; text-shadow:0 0 30px rgba(56,189,248,.55); }
body.ly-login .ly-panel-sub{ margin-top:7px; font-size:13.5px; letter-spacing:1.3px; color:#8fb3d8; }
body.ly-login .ly-panel-div{ position:absolute; left:46px; right:46px; top:496px; display:flex; align-items:center; gap:14px; color:#5f7b9c; font-size:11.5px; letter-spacing:1px; }
body.ly-login .ly-panel-div::before, body.ly-login .ly-panel-div::after{ content:""; flex:1; height:1px; background:linear-gradient(90deg, transparent, rgba(56,189,248,.30), transparent); }
body.ly-login .ly-panel-socials{ position:absolute; left:0; right:0; top:522px; display:flex; justify-content:center; gap:58px; }
body.ly-login .ly-panel-socials button{ display:flex; flex-direction:column; align-items:center; gap:9px; background:none; border:0; color:#7fa8d4; font-size:11px; letter-spacing:.3px; cursor:pointer; }
body.ly-login .ly-sico{
  width:52px; height:52px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:radial-gradient(circle at 32% 26%, rgba(34,211,238,.26), rgba(5,14,30,.96));
  border:1px solid rgba(56,189,248,.34);
  box-shadow:0 0 24px -10px rgba(34,211,238,.9), inset 0 0 20px -12px rgba(34,211,238,1);
  color:#67e8f9; transition:all .18s ease;
}
body.ly-login .ly-panel-socials button:hover .ly-sico{ border-color:rgba(34,211,238,.85); box-shadow:0 0 28px -6px rgba(34,211,238,1), inset 0 0 22px -8px rgba(34,211,238,1); transform:translateY(-2px); }
body.ly-login .ly-panel-socials button:hover{ color:#bdf0ff; }

/* form layer */
body.ly-login .ly-card form{ position:absolute !important; inset:0 !important; margin:0 !important; z-index:2; }
body.ly-login .ly-card form > div:nth-child(1){ position:absolute !important; left:55px; top:205px; width:466px; height:61px; margin:0 !important; }
body.ly-login .ly-card form > div:nth-child(2){ position:absolute !important; left:55px; top:285px; width:466px; height:61px; margin:0 !important; }
body.ly-login .ly-card form > div:nth-child(2) > div{ display:none !important; }
body.ly-login .ly-card form > div > label{ display:none !important; }
body.ly-login .ly-card form > div > input{
  width:100% !important; height:100% !important;
  margin:0 !important; padding:0 44px 0 50px !important;
  background:linear-gradient(180deg, rgba(7,20,42,.86), rgba(3,11,24,.92)) !important;
  border:1px solid rgba(56,140,200,.36) !important; border-radius:12px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), inset 0 0 34px -20px rgba(56,189,248,.9) !important;
  color:#d8edff !important; font-size:15.5px !important; letter-spacing:.4px !important;
  line-height:61px !important; caret-color:#38bdf8 !important; outline:none !important;
}
body.ly-login .ly-card form > div > input:focus{
  border-color:#38bdf8 !important;
  background:linear-gradient(180deg, rgba(8,23,48,.95), rgba(4,13,28,.96)) !important;
  box-shadow:0 0 0 3px rgba(56,189,248,.14), 0 0 30px -12px rgba(56,189,248,.95), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body.ly-login .ly-card form > div > input::placeholder{ color:#5f7fa6 !important; letter-spacing:.5px !important; }
body.ly-login .ly-card .ly-fico{ position:absolute; left:15px; top:50%; transform:translateY(-50%); width:20px; height:20px; display:flex; align-items:center; justify-content:center; color:#7fb6e0; z-index:2; pointer-events:none; }
body.ly-login .ly-card .ly-eye{ position:absolute !important; right:12px !important; top:50% !important; transform:translateY(-50%) !important; color:#5f8fbd !important; padding:6px; z-index:3; background:none; border:0; cursor:pointer; }
body.ly-login .ly-card .ly-eye:hover{ color:#8fe3ff !important; }

body.ly-login .ly-card form > label{ position:absolute !important; left:46px; top:357px; width:482px; height:32px; margin:0 !important; display:flex !important; align-items:center !important; gap:0 !important; }
body.ly-login .ly-card form > label > input[type=checkbox]{
  -webkit-appearance:none !important; appearance:none !important;
  width:18px !important; height:18px !important; margin:0 0 0 4px !important;
  border:1px solid rgba(74,126,170,.9) !important; border-radius:4px !important;
  background:rgba(6,15,29,.92) !important; box-shadow:inset 0 0 10px -6px rgba(56,189,248,.9) !important;
  cursor:pointer !important; position:relative !important;
}
body.ly-login .ly-card form > label > input[type=checkbox]:checked{
  background-color:#22d3ee !important; border-color:#67e8f9 !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23041422' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><path d='M4 12.5l5 5L20 6.5'/></svg>") !important;
  background-size:12px 12px !important; background-position:center !important; background-repeat:no-repeat !important;
  box-shadow:0 0 12px -2px rgba(34,211,238,.9) !important;
}
body.ly-login .ly-card form > label > span{ display:block !important; color:#8fb3d8 !important; font-size:13px !important; margin-left:11px; letter-spacing:.3px; }
body.ly-login .ly-card form > label .ly-forgot{ position:absolute !important; right:16px !important; top:0 !important; width:auto !important; height:32px !important; color:#7fb6e0 !important; font-size:13px !important; line-height:32px !important; cursor:pointer !important; text-decoration:none !important; letter-spacing:.3px; }
body.ly-login .ly-card form > label .ly-forgot:hover{ color:#bdf0ff !important; text-shadow:0 0 14px rgba(34,211,238,.8); }
body.ly-login .ly-card form > button[type=submit]{
  position:absolute !important; left:48px; top:421px !important;
  width:479px !important; height:58px !important;
  margin:0 !important; padding:0 !important;
  background:linear-gradient(135deg,#0b7cff 0%,#1e9cff 48%,#22d3ee 100%) !important;
  color:#02121f !important; border:0 !important; border-radius:10px !important;
  opacity:1 !important; cursor:pointer !important;
  font-size:16px !important; font-weight:800 !important; letter-spacing:3px !important;
  box-shadow:0 16px 38px -16px rgba(34,211,238,.95), inset 0 1px 0 rgba(255,255,255,.5) !important;
  transition:filter .16s ease, transform .16s ease, box-shadow .16s ease;
}
body.ly-login .ly-card form > button[type=submit]:hover{ filter:brightness(1.08); transform:translateY(-1px); box-shadow:0 18px 46px -14px rgba(34,211,238,1), inset 0 1px 0 rgba(255,255,255,.6) !important; }
body.ly-login .ly-card form > button[type=submit]:active{ transform:translateY(0); filter:brightness(.96); }
body.ly-login .ly-card form > button[type=submit] svg{ width:19px !important; height:19px !important; }

/* bottom features */
body.ly-login .ly-foot{
  position:fixed; left:0; right:0; bottom:0; height:84px; z-index:8;
  display:flex; align-items:center; gap:clamp(16px,3vw,46px); padding:0 clamp(20px,3vw,48px);
  background:linear-gradient(0deg, rgba(3,7,15,.96), rgba(3,7,15,.55) 62%, transparent);
  border-top:1px solid rgba(56,189,248,.12);
  pointer-events:none;
}
body.ly-login .ly-foot .ly-fitem{ display:flex; align-items:center; gap:10px; flex:0 0 auto; white-space:nowrap; }
body.ly-login .ly-foot .ly-fico{ width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; border:1px solid rgba(56,189,248,.28); background:radial-gradient(circle at 30% 30%, rgba(34,211,238,.20), rgba(5,13,26,.9)); color:#67e8f9; box-shadow:0 0 18px -8px rgba(34,211,238,.85); }
body.ly-login .ly-foot .ly-ft{ font-size:13px; color:#d5ecff; letter-spacing:.6px; white-space:nowrap; }
body.ly-login .ly-foot .ly-fd{ font-size:11px; color:#5f7b9c; margin-top:2px; white-space:nowrap; }
body.ly-login .ly-foot .ly-fright{ margin-left:auto; font-size:11.5px; color:#4f6f92; letter-spacing:1.4px; white-space:nowrap; }
body.ly-login .ly-foot .ly-fright b{ color:#7fd8ff; }
body.ly-login .ly-hide{ display:none !important; }

@media (max-width:1100px){
  body.ly-login .login-split{ grid-template-columns:1fr !important; }
  body.ly-login .login-split > div:first-child{ display:none !important; }
  body.ly-login .ly-foot{ display:none !important; }
}
