/*
 * JLPT180 unified lobby skin v200.
 * Single visual owner for the front-page shell, dashboard, sidebar,
 * dashboard profile card, quick actions, mobile navigation and daily quests.
 */
:root{
  --j-bg:#f7f2fb;
  --j-bg-soft:#fffafd;
  --j-panel:#fffdfd;
  --j-panel-2:#f8f1ff;
  --j-line:#ddd1ee;
  --j-line-strong:#c9b7e5;
  --j-ink:#44375f;
  --j-muted:#807697;
  --j-purple:#8866e8;
  --j-purple-deep:#6545c5;
  --j-pink:#f2638d;
  --j-blue:#4f91ed;
  --j-teal:#32a99c;
  --j-gold:#d99539;
  --j-shadow:0 14px 32px rgba(106,79,151,.13);
  --j-shadow-soft:0 8px 20px rgba(106,79,151,.10);
  --j-font:"Segoe UI",Arial,sans-serif;
}

*{box-sizing:border-box}
html{min-width:0;background:var(--j-bg)}
body.jlpt180-clean-lobby{
  margin:0;
  min-width:0;
  min-height:100dvh;
  overflow-x:hidden;
  color:var(--j-ink);
  background:
    radial-gradient(circle at 11% 5%,rgba(223,207,255,.60),transparent 28%),
    radial-gradient(circle at 86% 3%,rgba(255,218,233,.48),transparent 30%),
    linear-gradient(180deg,#f8f3ff 0%,#fffafd 48%,#f5effb 100%);
  font-family:var(--j-font);
}
body.jlpt180-clean-lobby button,
body.jlpt180-clean-lobby input,
body.jlpt180-clean-lobby select,
body.jlpt180-clean-lobby textarea{font:inherit}
body.jlpt180-clean-lobby button,
body.jlpt180-clean-lobby a{-webkit-tap-highlight-color:transparent}
body.jlpt180-clean-lobby a{text-decoration:none;color:inherit}
body.jlpt180-clean-lobby img{max-width:100%}
body.jlpt180-clean-lobby .jlpt180-seo-heading{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Shell */
body.jlpt180-clean-lobby .shell{
  --jlpt-sidebar-w:clamp(209px,31.188dvh,260px);
  display:grid;
  grid-template-columns:var(--jlpt-sidebar-w) minmax(0,1fr);
  min-height:100dvh;
}
body.jlpt180-clean-lobby .main{min-width:0;padding:18px 20px 24px}
body.jlpt180-clean-lobby .cw{width:min(1580px,100%);margin:0 auto}
body.jlpt180-clean-lobby .view{width:100%;min-width:0}
body.jlpt180-clean-lobby .view:not(.active),
body.jlpt180-clean-lobby .jlpt-shell-view-hidden{display:none}

/* Sidebar */
body.jlpt180-clean-lobby .sidebar{
  position:sticky;
  top:0;
  z-index:60;
  display:flex;
  flex-direction:column;
  width:var(--jlpt-sidebar-w);
  height:100dvh;
  min-height:0;
  padding:
    calc(var(--jlpt-sidebar-w) * .72)
    0
    calc(var(--jlpt-sidebar-w) * .78);
  overflow:hidden;
  border:0;
  background-color:#cdbaf2;
  background-image:var(--jlpt-sidebar-frame);
  background-position:center top;
  background-repeat:no-repeat;
  background-size:100% auto;
  box-shadow:none;
}
body.jlpt180-clean-lobby .brand{display:none}
body.jlpt180-clean-lobby .nav-s.jlpt180-image-nav{
  display:grid;
  gap:0;
  flex:0 0 auto;
  margin:0;
}
body.jlpt180-clean-lobby .jlpt180-image-nav .nl{
  display:block;
  width:79.2%;
  max-width:194px;
  margin:0 auto;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  cursor:pointer;
  transition:transform .16s ease,filter .16s ease;
}
body.jlpt180-clean-lobby .jlpt180-image-nav .nl img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
body.jlpt180-clean-lobby .jlpt180-image-nav .nl:hover,
body.jlpt180-clean-lobby .jlpt180-image-nav .nl:focus-visible{
  transform:translateY(-1px) scale(1.012);
  filter:brightness(1.04);
  outline:none;
}
body.jlpt180-clean-lobby .jlpt180-image-nav .nl.active{
  filter:drop-shadow(0 4px 7px rgba(91,67,145,.17));
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar{
  flex:0 0 auto;
  margin-top:4px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-image-head,
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-btn img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-image-head{
  width:79.2%;
  max-width:194px;
  margin:0 auto;
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-actions{
  display:grid;
  gap:0;
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-btn{
  display:block;
  width:77%;
  max-width:188px;
  margin:0 auto;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transition:transform .16s ease,filter .16s ease;
}
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-btn:hover,
body.jlpt180-clean-lobby .jlpt180-social-sidebar .jlpt180-social-btn:focus-visible{
  transform:translateY(-1px);
  filter:brightness(1.04);
  outline:none;
}
body.jlpt180-clean-lobby .nav-foot{
  width:77%;
  max-width:188px;
  margin:2px auto 0;
  flex:0 0 auto;
}
body.jlpt180-clean-lobby .nav-foot .nl{
  width:100%;
  min-height:24px;
  padding:3px 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#66558d;
  font-size:10px;
  font-weight:850;
}
body.jlpt180-clean-lobby .nav-foot .nl i{display:none}
/* Mobile brand and navigation */
body.jlpt180-clean-lobby .jlpt180-mobile-brandbar,
body.jlpt180-clean-lobby .bn,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-fab{display:none}

/* Stats */
body.jlpt180-clean-lobby .stats-row{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-bottom:7px;
  align-items:start;
  justify-items:center;
}
body.jlpt180-clean-lobby .stats-row .card{
  position:relative;
  min-width:0;
  width:min(100%,205px);
  max-width:205px;
  justify-self:center;
  aspect-ratio:3/1;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background-color:transparent;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  box-shadow:none;
  overflow:visible;
  appearance:none;
  -webkit-appearance:none;
}
body.jlpt180-clean-lobby .stats-row .card:focus,
body.jlpt180-clean-lobby .stats-row .card:focus-visible{
  outline:none;
  box-shadow:none;
}
body.jlpt180-clean-lobby .stats-row .card-tuvi{background-image:var(--jlpt-stat-tuvi)}
body.jlpt180-clean-lobby .stats-row .card-lt{background-image:var(--jlpt-stat-linhthach)}
body.jlpt180-clean-lobby .stats-row .card-streak{background-image:var(--jlpt-stat-streak)}
body.jlpt180-clean-lobby .stats-row .card-contribution{background-image:var(--jlpt-stat-conghien)}
body.jlpt180-clean-lobby .stats-row .card-mail{
  background-image:var(--jlpt-stat-notify);
  cursor:pointer;
}
body.jlpt180-clean-lobby .stats-row .stat-inline{
  position:absolute;
  left:31%;
  right:5%;
  top:50%;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:5px;
  transform:translateY(-50%);
  white-space:nowrap;
  overflow:hidden;
}
body.jlpt180-clean-lobby .stats-row .stat-inline-label{
  flex:0 0 auto;
  font-size:clamp(7px,.55vw,10px);
  font-weight:900;
  line-height:1;
}
body.jlpt180-clean-lobby .stats-row .stat-inline-value{
  flex:0 0 auto;
  display:inline-flex;
  align-items:baseline;
  gap:2px;
  font-size:clamp(12px,.88vw,16px);
  font-weight:950;
  line-height:1;
}
body.jlpt180-clean-lobby .stats-row .jlpt-sn-unit-small{
  display:inline-block;
  color:inherit;
  font-size:8px;
  font-weight:850;
  line-height:1;
}
body.jlpt180-clean-lobby .stats-row .card-tuvi .stat-inline-label{color:#6d3a91}
body.jlpt180-clean-lobby .stats-row .card-tuvi .stat-inline-value{color:#51256f}
body.jlpt180-clean-lobby .stats-row .card-lt .stat-inline-label{color:#176ca8}
body.jlpt180-clean-lobby .stats-row .card-lt .stat-inline-value{color:#0e578d}
body.jlpt180-clean-lobby .stats-row .card-streak .stat-inline-label{color:#b85a1d}
body.jlpt180-clean-lobby .stats-row .card-streak .stat-inline-value{color:#a54516}
body.jlpt180-clean-lobby .stats-row .card-contribution .stat-inline-label{color:#39805b}
body.jlpt180-clean-lobby .stats-row .card-contribution .stat-inline-value{color:#276747}
body.jlpt180-clean-lobby .stats-row .stat-mail-label{
  position:absolute;
  left:27%;
  right:6%;
  top:50%;
  transform:translateY(-50%);
  overflow:hidden;
  color:#9a3d67;
  font-size:clamp(7px,.56vw,10px);
  font-weight:900;
  line-height:1;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.jlpt180-clean-lobby .stats-row .jlpt180-nt-badge{
  position:absolute;
  top:13%;
  right:7%;
  min-width:22px;
  height:22px;
  padding:0 6px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#f45076;
  color:#fff;
  font-size:10px;
  font-weight:900;
  box-shadow:0 6px 12px rgba(244,80,118,.24);
}

/* Dashboard layout */
body.jlpt180-clean-lobby #view-dashboard .mg{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 434px;
  gap:8px;
  align-items:start;
  padding:14px 14px 16px;
  border-radius:34px;
  background-image:url(../main-panel-bg.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:100% 100%;
  box-shadow:0 20px 44px rgba(88,64,135,.12);
}
body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-col-stack{display:grid;gap:6px;min-width:0;align-content:start}
body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child{gap:6px}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-areas:
    "roadmap exam"
    "bicanh listening"
    "ranked ranked"
    "quick quick";
  gap:6px 6px;
  min-width:0;
  align-items:start;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card{
  min-width:0;
  border-radius:28px;
  transition:transform .18s ease,box-shadow .18s ease;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card:hover,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card:focus-visible{
  transform:translateY(-3px);
  outline:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening{
  display:block;
  min-height:auto;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap{grid-area:roadmap}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam{grid-area:exam}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh{grid-area:bicanh;cursor:pointer}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening{grid-area:listening}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening{
  aspect-ratio:1352/802;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening>img{
  width:100%;
  height:100%;
  object-fit:contain;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh>img{
  width:98.5%;
  margin:0 auto;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-inner{
  padding:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle{
  grid-area:ranked;
  display:flex;
  justify-content:center;
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle>img{
  display:block;
  width:99.3%;
  margin:0 auto;
  height:auto;
  aspect-ratio:1996/484;
  object-fit:contain;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-community-hub{
  grid-area:quick;
  display:block;
  padding:8px 6px 6px;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card>img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam>img{
  padding:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-title{margin-bottom:4px}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-title span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 16px;
  border:1px solid #efc8d9;
  border-radius:999px;
  background:linear-gradient(180deg,#fff8fb,#ffeaf3);
  color:#c43e72;
  font-size:14px;
  font-weight:900;
  box-shadow:0 7px 14px rgba(181,71,118,.08);
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  align-items:start;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card{
  min-width:0;
  aspect-ratio:3/2;
  padding:0;
  display:block;
  border:0;
  border-radius:0;
  background:transparent;
  cursor:pointer;
  box-shadow:none;
  overflow:visible;
  transition:transform .18s ease,filter .18s ease;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card:hover,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card:focus-visible{
  transform:translateY(-3px);
  filter:brightness(1.03);
  outline:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card.is-asset-card{
  padding:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-community-hub .jlpt180-quickhub-grid{margin-top:-2px}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-art{
  display:block;
  width:148%;
  max-width:none;
  height:auto;
  margin-left:-24%;
  margin-top:-7%;
  aspect-ratio:3/2;
  object-fit:contain;
}


/* Dashboard character panel */
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel{
  position:relative;
  width:100%;
  aspect-ratio:1386/1039;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-bg{
  position:absolute;
  inset:0;
  background-image:var(--jlpt-profile-stage-bg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  pointer-events:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-wrap,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-zone{
  position:absolute;
  inset:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-head{
  position:absolute;
  z-index:7;
  top:4.6%;
  left:8.5%;
  right:8.5%;
  min-height:15%;
  display:flex;
  align-items:flex-start;
  justify-content:center;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-name{
  width:100%;
  min-width:0;
  padding:0 18%;
  text-align:center;
}
body.jlpt180-clean-lobby #view-dashboard .pt3-char-name{
  color:#43365e;
  font-size:clamp(13px,1.22vw,20px);
  font-weight:900;
  line-height:1.15;
  white-space:normal;
}
body.jlpt180-clean-lobby #view-dashboard .pt3-char-realm{
  margin-top:3px;
  color:#62567d;
  font-size:clamp(10px,.82vw,14px);
  font-weight:850;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-action{
  position:absolute;
  z-index:8;
  top:0;
  right:0;
  min-height:36px;
  padding:0 13px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,#ff6c8d,#ed476f);
  color:#fff;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 16px rgba(237,71,111,.22),inset 0 1px rgba(255,255,255,.36);
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-stage{
  position:absolute;
  z-index:2;
  top:20%;
  left:7%;
  right:7%;
  bottom:13%;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-ring{
  position:absolute;
  left:50%;
  bottom:11%;
  width:57%;
  aspect-ratio:1;
  transform:translateX(-50%);
  border:0;
  border-radius:50%;
  background:transparent;
  box-shadow:none;
}
body.jlpt180-clean-lobby #view-dashboard .pt3-doll{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:10%;
  width:44%;
  aspect-ratio:1;
  height:auto;
  transform:translateX(-50%);
}
body.jlpt180-clean-lobby #view-dashboard .pt3-doll img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-pet{
  position:absolute;
  z-index:5;
  left:2%;
  bottom:2%;
  width:25%;
  aspect-ratio:1;
}
body.jlpt180-clean-lobby #view-dashboard .epic-pet-box{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:transparent;
  box-shadow:none;
}
body.jlpt180-clean-lobby #view-dashboard .epic-pet-avatar{
  width:82%;
  height:82%;
  object-fit:contain;
}
body.jlpt180-clean-lobby #view-dashboard .epic-pet-placeholder{
  font-size:clamp(28px,3vw,46px);
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-badges{
  position:absolute;
  z-index:6;
  left:8.5%;
  right:8.5%;
  bottom:5.5%;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:23%;
  pointer-events:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-tc-badge,
body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-nt-badge{
  min-height:0;
  padding:4px 9px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#fff;
  font-size:clamp(10px,.78vw,13px);
  font-weight:900;
  text-align:center;
  box-shadow:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-user-title,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-sect-mini-badge{
  display:inline-flex;
  align-items:center;
  margin-left:4px;
  padding:3px 7px;
  border-radius:999px;
  background:#f0e7ff;
  color:#684db1;
  font-size:10px;
  font-weight:900;
}

/* Personal room, donate and intro */
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel{
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-image{
  display:block;
  width:100%;
  height:auto;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link{
  transition:transform .18s ease,filter .18s ease;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link:hover,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link:focus-visible,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link:hover,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link:focus-visible{
  transform:translateY(-3px);
  filter:brightness(1.03);
  outline:none;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-card{padding:0;background:none;border:0;box-shadow:none}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:17px 19px;
  border:1px solid var(--j-line);
  border-radius:25px;
  background:linear-gradient(180deg,#fff,#fff8fb);
  box-shadow:var(--j-shadow-soft);
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card strong{display:block;color:#bd3e70;font-size:18px;font-weight:950}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card span{display:block;margin-top:5px;color:var(--j-muted);font-size:11px;font-weight:700;line-height:1.35}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-open{
  min-height:43px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,#fa7fa4,#e95780);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 9px 17px rgba(233,87,128,.22),inset 0 1px rgba(255,255,255,.36);
}


body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child .jlpt180-personal-room-panel{margin:0}
body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child .jlpt180-donate-panel{margin:0}
body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child .jlpt180-home-intro-card{margin:0}

/* Daily quests and mobile menu */
body.jlpt180-clean-lobby .jlpt180-dq-panel-shell,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-sheet{
  position:fixed;
  inset:0;
  z-index:9000;
  display:none;
}
body.jlpt180-clean-lobby .jlpt180-dq-panel-shell[aria-hidden="false"],
body.jlpt180-clean-lobby .jlpt180-mobile-menu-sheet[aria-hidden="false"]{display:block}
body.jlpt180-clean-lobby .jlpt180-dq-panel-backdrop,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-backdrop{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:rgba(48,34,76,.42);
  backdrop-filter:blur(6px);
}
body.jlpt180-clean-lobby .jlpt180-dq-panel,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-panel{
  position:absolute;
  top:50%;
  left:50%;
  width:min(620px,calc(100% - 28px));
  max-height:calc(100dvh - 28px);
  padding:18px;
  overflow:auto;
  transform:translate(-50%,-50%);
  border:1px solid #d8caec;
  border-radius:28px;
  background:linear-gradient(180deg,#fff,#f7f1ff);
  box-shadow:0 28px 70px rgba(48,34,76,.28);
}
body.jlpt180-clean-lobby .jlpt180-dq-panel-head,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
body.jlpt180-clean-lobby .jlpt180-dq-panel-head span,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-head span{display:block;color:#8c70d8;font-size:11px;font-weight:900;text-transform:uppercase}
body.jlpt180-clean-lobby .jlpt180-dq-panel-head strong,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-head strong{display:block;margin-top:3px;color:#4b3c69;font-size:23px;font-weight:950}
body.jlpt180-clean-lobby .jlpt180-dq-panel-close,
body.jlpt180-clean-lobby .jlpt180-mobile-menu-close{
  min-height:38px;
  padding:0 14px;
  border:0;
  border-radius:999px;
  background:#ef5b81;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
body.jlpt180-clean-lobby .jlpt180-dq-card{padding:16px;border:1px solid #dacbed;border-radius:24px;background:#fff;box-shadow:var(--j-shadow-soft)}
body.jlpt180-clean-lobby .jlpt180-dq-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
body.jlpt180-clean-lobby .jlpt180-dq-head span{display:block;color:#8d71d9;font-size:11px;font-weight:900}
body.jlpt180-clean-lobby .jlpt180-dq-head strong{display:block;margin-top:3px;color:#4c3e69;font-size:21px;font-weight:950}
body.jlpt180-clean-lobby .jlpt180-dq-head>b{padding:8px 11px;border-radius:999px;background:#efe8ff;color:#684fbd}
body.jlpt180-clean-lobby .jlpt180-dq-bar{height:9px;margin:13px 0;border-radius:999px;background:#ede6f7;overflow:hidden}
body.jlpt180-clean-lobby .jlpt180-dq-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9d7bea,#f26d9a)}
body.jlpt180-clean-lobby .jlpt180-dq-contrib{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}
body.jlpt180-clean-lobby .jlpt180-dq-contrib span{padding:10px;border-radius:16px;background:#f8f3ff;text-align:center}
body.jlpt180-clean-lobby .jlpt180-dq-contrib b{display:block;color:#554372;font-size:18px}
body.jlpt180-clean-lobby .jlpt180-dq-contrib em{display:block;margin-top:3px;color:#807596;font-size:10px;font-style:normal;font-weight:700}
body.jlpt180-clean-lobby .jlpt180-dq-list{display:grid;gap:8px}
body.jlpt180-clean-lobby .jlpt180-dq-item{display:grid;grid-template-columns:40px 1fr 32px;gap:10px;align-items:center;padding:10px;border:1px solid #e4d9f0;border-radius:17px;background:#fff}
body.jlpt180-clean-lobby .jlpt180-dq-item.is-done{background:#f0faef;border-color:#c7e4c6}
body.jlpt180-clean-lobby .jlpt180-dq-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#f1eaff;font-size:20px}
body.jlpt180-clean-lobby .jlpt180-dq-copy strong{display:block;color:#4a3b65;font-size:13px;font-weight:900}
body.jlpt180-clean-lobby .jlpt180-dq-copy span{display:block;margin-top:2px;color:#807595;font-size:11px}
body.jlpt180-clean-lobby .jlpt180-dq-copy em{display:block;margin-top:3px;color:#c14d78;font-size:10px;font-style:normal;font-weight:800}
body.jlpt180-clean-lobby .jlpt180-dq-check{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#eee8f8;color:#765bc6;font-weight:900}
body.jlpt180-clean-lobby .jlpt180-dq-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
body.jlpt180-clean-lobby .jlpt180-dq-btn{min-height:39px;padding:0 14px;border:0;border-radius:999px;background:#8667df;color:#fff;font-weight:900;cursor:pointer}
body.jlpt180-clean-lobby .jlpt180-dq-btn.is-xuanhoa{background:#e55d8c}
body.jlpt180-clean-lobby .jlpt180-dq-btn.is-claim{background:#3cae8b}
body.jlpt180-clean-lobby .jlpt180-dq-btn:disabled{opacity:.48;cursor:not-allowed}
body.jlpt180-clean-lobby .jlpt180-mobile-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.jlpt180-clean-lobby .jlpt180-mobile-menu-item{min-height:92px;padding:12px;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;border:1px solid #ded2ed;border-radius:18px;background:#fff;text-align:left;color:var(--j-ink)}
body.jlpt180-clean-lobby .jlpt180-mobile-menu-item i{grid-row:1/3;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#f2ebff;font-style:normal;font-size:21px}
body.jlpt180-clean-lobby .jlpt180-mobile-menu-item span{font-size:13px;font-weight:900}
body.jlpt180-clean-lobby .jlpt180-mobile-menu-item small{font-size:10px;color:var(--j-muted)}

/* Authentication overlay */
body.jlpt180-clean-lobby .ov[hidden]{display:none}
body.jlpt180-clean-lobby .ov{
  position:fixed;
  inset:0;
  z-index:9500;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(42,28,69,.44);
  backdrop-filter:blur(7px);
}
body.jlpt180-clean-lobby .ov-box{
  position:relative;
  width:min(430px,100%);
  padding:25px;
  border:1px solid #d7c8eb;
  border-radius:28px;
  background:linear-gradient(180deg,#fff,#f7f0ff);
  box-shadow:0 30px 70px rgba(42,28,69,.28);
}
body.jlpt180-clean-lobby .ov-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:999px;background:#f05d82;color:#fff;font-size:23px;cursor:pointer}
body.jlpt180-clean-lobby .ov-title{color:#4a3b67;font-size:26px;font-weight:950;text-align:center}
body.jlpt180-clean-lobby .ov-sub{margin:7px 0 16px;color:#7e7396;font-size:11px;text-align:center}
body.jlpt180-clean-lobby .jlpt180-auth-form{display:grid;gap:10px}
body.jlpt180-clean-lobby .jlpt180-auth-form input{width:100%;min-height:48px;padding:0 14px;border:1px solid #ddd1ec;border-radius:15px;background:#fff;color:#493c66;outline:none}
body.jlpt180-clean-lobby .jlpt180-auth-form input:focus{border-color:#9c7ee3;box-shadow:0 0 0 3px rgba(156,126,227,.14)}
body.jlpt180-clean-lobby .ov-login{min-height:47px;border:0;border-radius:15px;background:linear-gradient(180deg,#8e70e4,#6e50ca);color:#fff;font-weight:900;cursor:pointer}
body.jlpt180-clean-lobby .jlpt180-google-login{background:linear-gradient(180deg,#f07191,#db4b72)}
body.jlpt180-clean-lobby .jlpt180-auth-link{border:0;background:none;color:#7459c4;font-weight:800;cursor:pointer}
body.jlpt180-clean-lobby .jlpt-shell-auth-hidden{display:none}

/* Responsive */
@media (max-width:1380px){
  body.jlpt180-clean-lobby #view-dashboard .mg{grid-template-columns:minmax(0,1fr) 360px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.jlpt180-clean-lobby .stats-row{gap:7px}
  body.jlpt180-clean-lobby .stats-row .card{width:min(100%,195px);max-width:195px}
}
@media (min-width:900px){
  body.jlpt180-clean-lobby .stats-row{
    grid-template-columns:repeat(5,minmax(0,205px));
    column-gap:clamp(18px,1.5vw,30px);
    justify-content:center;
  }
}
@media (max-width:1120px){
  body.jlpt180-clean-lobby .shell{--jlpt-sidebar-w:clamp(202px,31.188dvh,227px)}
  body.jlpt180-clean-lobby .sidebar{
    padding:
      calc(var(--jlpt-sidebar-w) * .72)
      0
      calc(var(--jlpt-sidebar-w) * .78);
  }
  body.jlpt180-clean-lobby .brand-ico{width:150px;height:84px}
  body.jlpt180-clean-lobby .nav-s:not(.jlpt180-image-nav) .nl{grid-template-columns:36px 1fr;min-height:57px;padding:8px 10px}
  body.jlpt180-clean-lobby .nav-s:not(.jlpt180-image-nav) .nl>i{width:36px;height:36px;background-size:24px}
  body.jlpt180-clean-lobby .main{padding:15px 15px 38px}
  body.jlpt180-clean-lobby #view-dashboard .mg{grid-template-columns:1fr;padding:0;background:none;box-shadow:none}
}
@media (max-width:899px){
  body.jlpt180-clean-lobby{padding-bottom:78px}
  body.jlpt180-clean-lobby .shell{display:block;min-height:auto}
  body.jlpt180-clean-lobby .sidebar{display:none}
  body.jlpt180-clean-lobby .main{padding:9px 10px 18px}
  body.jlpt180-clean-lobby .jlpt180-mobile-brandbar{
    position:sticky;
    top:0;
    z-index:90;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:66px;
    padding:6px 13px;
    border-bottom:1px solid rgba(204,188,229,.80);
    background:rgba(252,247,255,.92);
    backdrop-filter:blur(12px);
    box-shadow:0 8px 20px rgba(92,68,140,.08);
  }
  body.jlpt180-clean-lobby .jlpt180-mobile-brandbar img{width:112px;height:54px;object-fit:contain}
  body.jlpt180-clean-lobby .jlpt180-mobile-brand-slogan{max-width:220px;color:#756a91;font-size:10px;font-weight:750;text-align:right}
  body.jlpt180-clean-lobby .bn{
    position:fixed;
    z-index:3000;
    left:max(8px,env(safe-area-inset-left));
    right:max(8px,env(safe-area-inset-right));
    bottom:max(8px,env(safe-area-inset-bottom));
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:5px;
    min-height:63px;
    padding:7px;
    border:1px solid rgba(204,188,229,.84);
    border-radius:22px;
    background:rgba(255,253,255,.94);
    backdrop-filter:blur(14px);
    box-shadow:0 15px 35px rgba(71,50,111,.20);
  }
  body.jlpt180-clean-lobby .bni{
    min-width:0;
    min-height:49px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    border:0;
    border-radius:15px;
    background:transparent;
    color:#706687;
    font-size:10px;
    font-weight:850;
    cursor:pointer;
  }
  body.jlpt180-clean-lobby .bni i{font-size:18px}
  body.jlpt180-clean-lobby .bni.active{background:linear-gradient(180deg,#9a7ceb,#7858db);color:#fff;box-shadow:0 8px 14px rgba(120,88,219,.22)}
  body.jlpt180-clean-lobby .stats-row{display:flex;gap:7px;overflow-x:auto;padding:1px 1px 6px;scrollbar-width:none}
  body.jlpt180-clean-lobby .stats-row::-webkit-scrollbar{display:none}
  body.jlpt180-clean-lobby .stats-row .card{flex:0 0 174px;width:174px;aspect-ratio:3/1;background-size:contain}
  body.jlpt180-clean-lobby .stats-row .stat-inline-label{font-size:8px}
  body.jlpt180-clean-lobby .stats-row .stat-inline-value{font-size:13px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "roadmap"
      "exam"
      "bicanh"
      "listening"
      "quick";
    gap:11px;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening{min-height:auto;border-radius:21px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card>img{height:auto;aspect-ratio:auto;object-fit:contain;background:transparent}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-community-hub{padding:12px;border-radius:22px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card{aspect-ratio:3/2}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{flex-direction:column;align-items:flex-start}
  body.jlpt180-clean-lobby .jlpt180-mobile-menu-fab{
    position:fixed;
    z-index:2999;
    right:14px;
    bottom:84px;
    display:flex;
    align-items:center;
    gap:5px;
    min-height:42px;
    padding:0 13px;
    border:0;
    border-radius:999px;
    background:linear-gradient(180deg,#9273e7,#7253cd);
    color:#fff;
    font-size:11px;
    font-weight:900;
    box-shadow:0 12px 24px rgba(80,56,143,.28);
  }
}
@media (max-width:430px){
  body.jlpt180-clean-lobby .main{padding:8px 8px 14px}
  body.jlpt180-clean-lobby .jlpt180-mobile-brandbar{min-height:60px;padding:4px 10px}
  body.jlpt180-clean-lobby .jlpt180-mobile-brandbar img{width:96px;height:49px}
  body.jlpt180-clean-lobby .jlpt180-mobile-brand-slogan{font-size:10px;max-width:180px}
  body.jlpt180-clean-lobby .stats-row{margin-bottom:7px}
  body.jlpt180-clean-lobby .stats-row .card{flex-basis:166px;width:166px;aspect-ratio:3/1;background-size:contain}
  body.jlpt180-clean-lobby .stats-row .stat-inline-label{font-size:8px}
  body.jlpt180-clean-lobby .stats-row .stat-inline-value{font-size:13px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{gap:8px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{grid-template-columns:1fr}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card{aspect-ratio:3/2;padding:0}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-icon{width:72px;height:72px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-copy strong{font-size:13px}
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-copy small{font-size:9px}
  body.jlpt180-clean-lobby .jlpt180-mobile-menu-grid{grid-template-columns:1fr}
}

/* Embedded profile view */
body.jlpt180-clean-lobby #view-profile{
  color:var(--j-ink);
}
body.jlpt180-clean-lobby #view-profile .pf-scroll{
  width:100%;
  min-height:100%;
  padding:8px 0 30px;
  overflow-x:hidden;
}
body.jlpt180-clean-lobby #view-profile .pf-page{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  grid-template-areas:
    "hero stats"
    "hero skill"
    "equip equip"
    "cert cert";
  gap:16px;
}
body.jlpt180-clean-lobby #view-profile .pf-hero-zone,
body.jlpt180-clean-lobby #view-profile .pf-stat-zone,
body.jlpt180-clean-lobby #view-profile .pf-skill-zone,
body.jlpt180-clean-lobby #view-profile .pf-equipped-zone,
body.jlpt180-clean-lobby #view-profile .pf-cert-zone{
  border:1px solid var(--j-line);
  border-radius:28px;
  background:linear-gradient(180deg,#fff,#f8f2ff);
  box-shadow:var(--j-shadow);
}
body.jlpt180-clean-lobby #view-profile .pf-hero-zone{
  grid-area:hero;
  position:relative;
  min-height:590px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 46%,rgba(255,255,255,.9),transparent 24%),
    linear-gradient(180deg,#efe5ff,#fff8fb);
}
body.jlpt180-clean-lobby #view-profile .pf-stage-bg{
  position:absolute;
  left:50%;
  top:54%;
  width:72%;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,#fff 0%,#f2e7ff 48%,#d6c1f7 72%,rgba(255,255,255,0) 73%);
}
body.jlpt180-clean-lobby #view-profile .pf-doll{
  position:absolute;
  z-index:4;
  left:50%;
  top:49%;
  width:260px;
  height:260px;
  transform:translate(-50%,-50%);
}
body.jlpt180-clean-lobby #view-profile .pf-doll img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
body.jlpt180-clean-lobby #view-profile .pf-nameplate{
  position:absolute;
  z-index:6;
  top:18px;
  left:18px;
  right:18px;
  padding:13px 18px;
  border:1px solid #ded0ee;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  text-align:center;
  box-shadow:0 9px 18px rgba(92,67,142,.08);
}
body.jlpt180-clean-lobby #view-profile .pf-char-name{color:#453761;font-size:19px;font-weight:950}
body.jlpt180-clean-lobby #view-profile .pf-rank-badge{margin-top:5px;color:#776c91;font-size:11px;font-weight:850}
body.jlpt180-clean-lobby #view-profile .pf-companion{position:absolute;z-index:5;bottom:28px;display:grid;justify-items:center;gap:6px}
body.jlpt180-clean-lobby #view-profile .pf-pet{left:26px}
body.jlpt180-clean-lobby #view-profile .pf-weapon{right:26px}
body.jlpt180-clean-lobby #view-profile .pf-asset-wrap,
body.jlpt180-clean-lobby #view-profile .pf-weapon-orb{
  width:112px;
  height:112px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d9caed;
  border-radius:25px;
  background:rgba(255,255,255,.84);
  box-shadow:0 11px 20px rgba(95,69,148,.12);
}
body.jlpt180-clean-lobby #view-profile .pf-pet-img,
body.jlpt180-clean-lobby #view-profile .pf-weapon-img{width:92%;height:92%;object-fit:contain}
body.jlpt180-clean-lobby #view-profile .pf-placeholder{font-size:42px}
body.jlpt180-clean-lobby #view-profile .pf-item-label span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#8b6dde;color:#fff;font-size:10px;font-weight:900}
body.jlpt180-clean-lobby #view-profile .pf-stat-zone{grid-area:stats;padding:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;align-content:start}
body.jlpt180-clean-lobby #view-profile .pf-stat-card{min-height:100px;padding:13px;border:1px solid #e1d6ef;border-radius:20px;background:#fff;display:flex;align-items:center;gap:11px}
body.jlpt180-clean-lobby #view-profile .pf-stat-icon{width:42px;height:42px;flex:0 0 42px;border-radius:14px;background:linear-gradient(180deg,#efe7ff,#d8c7f7)}
body.jlpt180-clean-lobby #view-profile .pf-stat-copy b{display:block;color:#87759f;font-size:10px}
body.jlpt180-clean-lobby #view-profile .pf-stat-copy strong{display:block;margin-top:2px;color:#493b67;font-size:16px;font-weight:950;line-height:1.15}
body.jlpt180-clean-lobby #view-profile .pf-skill-zone{grid-area:skill;padding:18px}
body.jlpt180-clean-lobby #view-profile h3{margin:0 0 14px;color:#4a3b67;font-size:19px;font-weight:950}
body.jlpt180-clean-lobby #view-profile .pf-skill-row{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;margin-bottom:12px}
body.jlpt180-clean-lobby #view-profile .pf-skill-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#eee6ff;color:#7255c5}
body.jlpt180-clean-lobby #view-profile .pf-skill-info>div{display:flex;justify-content:space-between;gap:10px;color:#4b3d69;font-size:12px}
body.jlpt180-clean-lobby #view-profile .pf-skill-info>span{display:block;height:9px;margin-top:6px;border-radius:999px;background:#ece5f5;overflow:hidden}
body.jlpt180-clean-lobby #view-profile .pf-skill-info em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b6be0,#ed6d98)}
body.jlpt180-clean-lobby #view-profile .pf-breakthrough{margin-top:12px;padding:12px;border-radius:17px;background:#f3ecff;color:#6c55b6;font-size:11px;font-weight:800;text-align:center}
body.jlpt180-clean-lobby #view-profile .pf-breakthrough a{display:inline-flex;padding:10px 15px;border-radius:999px;background:#7f61d7;color:#fff;font-weight:900}
body.jlpt180-clean-lobby #view-profile .pf-equipped-zone{grid-area:equip;padding:18px}
body.jlpt180-clean-lobby #view-profile .pf-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
body.jlpt180-clean-lobby #view-profile .pf-section-head a{padding:8px 12px;border-radius:999px;background:#8a6ade;color:#fff;font-size:11px;font-weight:900}
body.jlpt180-clean-lobby #view-profile .pf-equipped-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
body.jlpt180-clean-lobby #view-profile .pf-equip-card{min-width:0;padding:11px;border:1px solid #e1d5ee;border-radius:18px;background:#fff;display:grid;grid-template-columns:54px 1fr;align-items:center;gap:9px}
body.jlpt180-clean-lobby #view-profile .pf-equip-thumb{width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#f0e9fb;overflow:hidden}
body.jlpt180-clean-lobby #view-profile .pf-equip-thumb img{width:100%;height:100%;object-fit:contain}
body.jlpt180-clean-lobby #view-profile .pf-equip-copy{min-width:0}
body.jlpt180-clean-lobby #view-profile .pf-equip-copy b{display:block;color:#8a7b9f;font-size:9px}
body.jlpt180-clean-lobby #view-profile .pf-equip-copy strong{display:block;margin-top:3px;color:#4c3d68;font-size:11px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.jlpt180-clean-lobby #view-profile .pf-cert-zone{grid-area:cert;padding:18px}
body.jlpt180-clean-lobby #view-profile .pf-medals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
body.jlpt180-clean-lobby #view-profile .pf-medal{position:relative;min-height:148px;padding:14px 10px;border:1px solid #dfd3ec;border-radius:20px;background:#fff;text-align:center;color:#4c3d69}
body.jlpt180-clean-lobby #view-profile .pf-medal-ring{width:56px;height:56px;margin:0 auto 8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--medal-color));box-shadow:0 8px 15px color-mix(in srgb,var(--medal-color) 25%,transparent)}
body.jlpt180-clean-lobby #view-profile .pf-medal b{display:block;font-size:19px;font-weight:950}
body.jlpt180-clean-lobby #view-profile .pf-medal span{display:block;margin-top:2px;color:#7d7292;font-size:10px;font-weight:800;line-height:1.3}
body.jlpt180-clean-lobby #view-profile .pf-medal small{display:block;margin-top:5px;color:var(--medal-color);font-weight:900}
body.jlpt180-clean-lobby #view-profile .pf-medal.is-locked{opacity:.5;filter:grayscale(.35)}
@media (max-width:900px){
  body.jlpt180-clean-lobby #view-profile .pf-page{grid-template-columns:1fr;grid-template-areas:"hero" "stats" "skill" "equip" "cert"}
  body.jlpt180-clean-lobby #view-profile .pf-equipped-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.jlpt180-clean-lobby #view-profile .pf-medals{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:430px){
  body.jlpt180-clean-lobby #view-profile .pf-hero-zone{min-height:500px}
  body.jlpt180-clean-lobby #view-profile .pf-doll{width:210px;height:210px}
  body.jlpt180-clean-lobby #view-profile .pf-asset-wrap,
  body.jlpt180-clean-lobby #view-profile .pf-weapon-orb{width:86px;height:86px}
  body.jlpt180-clean-lobby #view-profile .pf-stat-zone{grid-template-columns:1fr}
  body.jlpt180-clean-lobby #view-profile .pf-equipped-grid{grid-template-columns:1fr}
  body.jlpt180-clean-lobby #view-profile .pf-medals{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Fixed chat compatibility: preserve only fixed chat launchers, never hide all chat-like elements. */
body.jlpt180-clean-lobby [id*="chat" i][style*="fixed"],
body.jlpt180-clean-lobby [class*="chat" i][style*="fixed"]{
  z-index:3200;
}

/* Direct module pages reuse the same single sidebar skin. */
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(1)>i{background-image:var(--jlpt-nav-home)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(2)>i{background-image:var(--jlpt-nav-exam)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(3)>i{background-image:var(--jlpt-nav-guild2)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(4)>i{background-image:var(--jlpt-nav-roadmap)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(5)>i{background-image:var(--jlpt-nav-library)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(6)>i{background-image:var(--jlpt-nav-library)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(7)>i{background-image:var(--jlpt-nav-lookup)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(8)>i{background-image:var(--jlpt-nav-listening)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(9)>i{background-image:var(--jlpt-nav-pk)}
body.jlpt180-direct-module-page .jlpt180-direct-shell-sidebar .nav-s .nl:nth-child(10)>i{background-image:var(--jlpt-nav-profile2)}
body.jlpt180-clean-lobby #view-profile .jlpt180-user-title,
body.jlpt180-clean-lobby #view-profile .jlpt180-sect-mini-badge{
  display:inline-flex;
  align-items:center;
  margin-left:5px;
  padding:3px 7px;
  border-radius:999px;
  background:#eee5ff;
  color:#674caf;
  font-size:10px;
  font-weight:900;
}

/* ===== v31.96.20 home lobby spacing + panel cleanup ===== */
body.jlpt180-clean-lobby #view-dashboard .mg{
  grid-template-columns:minmax(0,1fr) 428px;
  gap:6px;
  padding:16px 16px 20px;
  border-radius:38px;
  background-image:none;
  background-color:#f3ebf8;
  background:linear-gradient(180deg,#f6eff8 0%,#f0e7f6 100%);
  border:1px solid rgba(255,255,255,.6);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -14px 28px rgba(150,118,210,.08),
    0 18px 40px rgba(88,64,135,.10);
  overflow:hidden;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-col-stack{
  gap:4px;
}
body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child{
  gap:6px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
  gap:4px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle>img{
  width:100%;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-community-hub{
  padding:2px 0 0;
  margin-top:-2px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-title{
  margin-bottom:2px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-title span{
  min-height:36px;
  padding:7px 15px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{
  gap:2px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-community-hub .jlpt180-quickhub-grid{
  margin-top:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-art{
  width:146%;
  margin-left:-23%;
  margin-top:-6%;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
  position:relative;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel{
  margin-top:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel{
  margin-top:0;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
  margin-top:-6px;
  padding:15px 18px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card strong{
  font-size:17px;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card span{
  font-size:10.5px;
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-image{
  width:100%;
  height:auto;
  transform:none !important;
}
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link{
  overflow:visible;
}

@media (max-width:1180px){
  body.jlpt180-clean-lobby #view-dashboard .mg{
    grid-template-columns:minmax(0,1fr) 390px;
    padding:14px 14px 18px;
  }
}

@media (max-width:900px){
  body.jlpt180-clean-lobby #view-dashboard .mg{
    background-image:none;
    border-radius:28px;
    padding:12px;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
    margin-top:0;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-grid{
    gap:8px;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-art{
    width:100%;
    margin-left:0;
    margin-top:0;
  }
}

/* ===== v31.96.21 dashboard depth / 3D shadow ===== */
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening>img{
  filter:
    drop-shadow(0 7px 0 rgba(104,78,157,.22))
    drop-shadow(0 15px 14px rgba(71,49,111,.20));
  transition:filter .18s ease,transform .18s ease;
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle>img{
  filter:
    drop-shadow(0 8px 0 rgba(73,49,139,.28))
    drop-shadow(0 17px 16px rgba(49,34,91,.24));
  transition:filter .18s ease,transform .18s ease;
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-art{
  filter:
    drop-shadow(0 5px 0 rgba(103,82,139,.20))
    drop-shadow(0 10px 9px rgba(64,48,91,.18));
  transition:filter .18s ease,transform .18s ease;
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-image{
  filter:
    drop-shadow(0 7px 0 rgba(136,94,88,.18))
    drop-shadow(0 15px 14px rgba(83,59,76,.18));
  transition:filter .18s ease,transform .18s ease;
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-bg{
  filter:
    drop-shadow(0 7px 0 rgba(91,68,146,.20))
    drop-shadow(0 15px 14px rgba(58,42,92,.18));
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card:hover>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card:focus-visible>img,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link:hover .jlpt180-personal-room-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-link:focus-visible .jlpt180-personal-room-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link:hover .jlpt180-donate-banner-image,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-link:focus-visible .jlpt180-donate-banner-image{
  filter:
    drop-shadow(0 9px 0 rgba(99,71,154,.24))
    drop-shadow(0 20px 18px rgba(55,38,91,.24));
}

body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card:hover .jlpt180-quickhub-art,
body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-card:focus-visible .jlpt180-quickhub-art{
  filter:
    drop-shadow(0 7px 0 rgba(100,77,140,.22))
    drop-shadow(0 14px 12px rgba(58,43,88,.22));
}

@media (max-width:900px){
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-roadmap>img,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-exam>img,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-bicanh>img,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-listening>img,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle>img,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-image,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-banner-image,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-profile-v57-bg{
    filter:
      drop-shadow(0 4px 0 rgba(96,72,143,.17))
      drop-shadow(0 9px 8px rgba(62,44,96,.16));
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-quickhub-art{
    filter:
      drop-shadow(0 3px 0 rgba(96,72,130,.16))
      drop-shadow(0 7px 7px rgba(60,45,84,.14));
  }
}

/* ===== v31.96.23 character card alignment only ===== */
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-head{
  top:0;
  left:0;
  right:0;
  height:27%;
  min-height:0;
  display:block;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-name{
  position:absolute;
  inset:0;
  width:auto;
  min-width:0;
  padding:0;
  text-align:center;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name{
  position:absolute;
  top:50%;
  left:16%;
  right:16%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-width:0;
  margin:0;
  transform:translateY(-50%);
  color:#43365e;
  font-size:clamp(12px,1.04vw,17px);
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-main-name{
  flex:0 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-user-title,
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-sect-mini-badge,
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-title{
  flex:0 0 auto;
  min-height:0;
  margin-left:2px;
  padding:2px 5px;
  font-size:8px;
  line-height:1;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-realm{
  position:absolute;
  top:84%;
  left:22%;
  right:22%;
  margin:0;
  transform:translateY(-50%);
  color:#62567d;
  font-size:clamp(10px,.76vw,13px);
  font-weight:850;
  line-height:1;
  text-align:center;
  white-space:nowrap;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-pet{
  left:-1%;
  bottom:13%;
  width:25%;
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .epic-pet-avatar{
  width:86%;
  height:86%;
  object-position:center;
}

/* ===== v31.96.24 character card color + pet vertical alignment only ===== */
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name{
  color:#6b4b86;
  text-shadow:0 1px 0 rgba(255,255,255,.92),0 2px 5px rgba(96,67,126,.13);
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-name-sword{
  color:#b97998;
  text-shadow:0 1px 0 rgba(255,255,255,.95);
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-realm{
  color:#80678f;
  text-shadow:0 1px 0 rgba(255,255,255,.9);
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-user-title,
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-sect-mini-badge,
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-title{
  border:1px solid rgba(218,187,224,.78);
  background:rgba(255,247,252,.84);
  color:#966296;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt-sn-tc-badge,
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt-sn-nt-badge{
  color:#fff7fc;
  text-shadow:0 1px 2px rgba(94,63,118,.28);
}
body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-pet{
  bottom:10.5%;
}

/* ===== v31.96.25 mobile layout restore ===== */
@media (max-width:900px){
  body.jlpt180-clean-lobby #view-dashboard .mg{
    grid-template-columns:minmax(0,1fr);
    gap:10px;
    padding:0;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    overflow:visible;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-col-stack,
  body.jlpt180-clean-lobby #view-dashboard .mg>.jlpt-sn-col-stack:last-child{
    width:100%;
    min-width:0;
    gap:8px;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:
      "roadmap"
      "exam"
      "bicanh"
      "listening"
      "ranked"
      "quick";
    gap:10px;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card.is-ranked-battle>img{
    width:100%;
    max-width:100%;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
    width:100%;
    max-width:100%;
    min-width:0;
    margin-top:0;
  }
}

@media (max-width:430px){
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-head{
    top:0;
    height:27%;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name{
    left:11%;
    right:24%;
    gap:2px;
    font-size:clamp(9px,3.15vw,13px);
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-user-title,
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-name .jlpt180-sect-mini-badge,
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-title{
    max-width:31%;
    padding:1px 3px;
    font-size:6.5px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .pt3-char-realm{
    top:83.5%;
    left:23%;
    right:23%;
    font-size:clamp(8px,2.6vw,10px);
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-action{
    top:1%;
    right:1%;
    min-height:28px;
    padding:0 8px;
    font-size:8.5px;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt180-profile-v57-pet{
    left:0;
    bottom:9%;
    width:25%;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .epic-pet-avatar{
    width:82%;
    height:82%;
  }
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt-sn-tc-badge,
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel .jlpt-sn-nt-badge{
    padding:3px 5px;
    font-size:9px;
  }
}


/* ===== v31.96.26 definitive mobile shell recovery ===== */
@media (max-width:899px){
  html,
  body.jlpt180-clean-lobby{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }
  body.jlpt180-clean-lobby .shell{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:100dvh !important;
  }
  body.jlpt180-clean-lobby .sidebar{
    display:none !important;
  }
  body.jlpt180-clean-lobby .jlpt180-mobile-brandbar{
    display:flex !important;
    width:100% !important;
  }
  body.jlpt180-clean-lobby .bn{
    display:grid !important;
  }
  body.jlpt180-clean-lobby .main,
  body.jlpt180-clean-lobby .cw,
  body.jlpt180-clean-lobby #jlpt-dash-container{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  body.jlpt180-clean-lobby .view.active,
  body.jlpt180-clean-lobby #view-dashboard.active{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  body.jlpt180-clean-lobby #view-dashboard .mg{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    gap:10px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:visible !important;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt-sn-col-stack,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid-wrap,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-areas:
      "roadmap"
      "exam"
      "bicanh"
      "listening"
      "ranked"
      "quick" !important;
  }
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-hub-card,
  body.jlpt180-clean-lobby #view-dashboard #phapTuongPanel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-personal-room-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-donate-panel,
  body.jlpt180-clean-lobby #view-dashboard .jlpt180-home-intro-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  body.jlpt180-clean-lobby #view-dashboard img{
    max-width:100% !important;
  }
}
