/* v7 uses isolated, cut assets.  Loaded after every legacy community stylesheet. */
body.community-home-page { overflow-x:hidden; background:linear-gradient(#dff9ff 0%,#eafbff 70%,#f7fdff 100%); }
body.community-home-page .community-header { position:absolute; inset:0 0 auto; z-index:100; min-height:76px; padding:0; border:0; background:linear-gradient(180deg,rgba(4,26,94,.32),transparent); box-shadow:none; backdrop-filter:none; }
body.community-home-page .community-header__inner { display:grid; grid-template-columns:220px minmax(0,1fr) max-content; align-items:center; column-gap:18px; width:min(1440px,calc(100% - 40px)); min-height:76px; margin-inline:auto; }
body.community-home-page .community-brand img { content:url('/images/community/home-v7/transparent/hero/logo.png'); display:block; width:210px; height:auto; object-fit:contain; }
body.community-home-page .community-nav { min-width:0; display:flex; align-items:center; justify-content:center; gap:clamp(7px,.8vw,15px); flex-wrap:nowrap; white-space:nowrap; }
body.community-home-page .community-nav a { min-height:36px; padding:6px 3px; border:0; border-radius:12px; color:#fff; background:transparent; font-size:clamp(.72rem,.78vw,.84rem); font-weight:900; text-shadow:0 2px 3px rgba(2,18,69,.85); }
body.community-home-page .community-nav img { display:none; }
body.community-home-page .community-nav a:hover,body.community-home-page .community-nav a:focus-visible,body.community-home-page .community-nav a[aria-current="page"] { padding-inline:11px; color:#243e7a; background:linear-gradient(#fff8bd,#ffc93d); text-shadow:none; }
body.community-home-page .community-nav__badge { top:-4px; right:-11px; width:17px; height:17px; border:2px solid #fff; background:#fa4565; }
body.community-home-page .community-header__actions { display:flex; align-items:center; gap:8px; white-space:nowrap; }
body.community-home-page .community-header__actions a,body.community-home-page .community-header__actions button { min-height:36px; padding:6px 11px; border-color:#fff; color:#114487; background:rgba(255,255,255,.96); font-size:.76rem; box-shadow:0 2px 8px rgba(0,15,73,.22); }
body.community-home-page .community-header__actions .community-admin-link { color:#fff; border-color:#62cfff; background:linear-gradient(135deg,#128fe9,#0757bd); }
body.community-home-page .community-header__actions .community-join-link { color:#5d3b00; border-color:#ffb716; background:linear-gradient(135deg,#ffe86c,#ffb10d); }
body.community-home-page .community-footer-v5__brand img { content:url('/images/community/home-v7/transparent/hero/logo.png'); }

body.community-home-page .community-v7-hero { position:relative; min-height:clamp(520px,38vw,590px); overflow:hidden; background:#0878d8; }
.community-v7-hero__background { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.community-v7-hero__inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(390px,.86fr); align-items:end; width:min(1280px,calc(100% - 48px)); min-height:inherit; margin:auto; }
.community-v7-hero__content { z-index:2; align-self:center; max-width:590px; padding:84px 0 36px; }.community-v7-hero__title { display:block; width:min(100%,560px); height:auto; }.community-v7-hero__content > p { margin:-12px 0 16px 7%; color:#093675; font-size:1rem; font-weight:900; letter-spacing:.04em; text-shadow:0 1px #fff; }.community-v7-hero__actions { display:flex; gap:13px; margin-left:5%; }.community-v7-hero__actions a { display:block; width:205px; }.community-v7-hero__actions img { display:block; width:100%; height:auto; }.community-v7-hero__actions a:hover,.community-v7-hero__actions a:focus-visible { outline:3px solid #fff; border-radius:999px; transform:translateY(-3px); }.community-v7-hero__character-wrap { align-self:end; justify-self:center; height:clamp(405px,35vw,535px); }.community-v7-hero__character-wrap img { display:block; width:auto; height:100%; object-fit:contain; }

.community-v7-stats { position:relative; z-index:3; width:min(1260px,calc(100% - 48px)); height:92px; margin:-25px auto 22px; }.community-v7-stats > img { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; }.community-v7-stats__items { position:relative; display:grid; grid-template-columns:repeat(5,1fr); height:100%; padding:12px 30px; }.community-v7-stats__items > div { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:10px; align-items:center; padding:2px 20px; border-right:1px solid rgba(39,157,223,.2); }.community-v7-stats__items > div:last-child { border:0; }.community-v7-stats span { grid-row:1 / 3; font-size:1.8rem; }.community-v7-stats strong { color:#123d91; font-size:1.28rem; }.community-v7-stats small { color:#5c77a0; font-size:.75rem; font-weight:900; }

.community-v7-content { width:min(1280px,calc(100% - 48px)); margin:0 auto 38px; }.community-v7-panels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }.community-v7-panel { position:relative; isolation:isolate; aspect-ratio:1 / 1.12; min-width:0; overflow:hidden; }.community-v7-panel__background { position:absolute; z-index:-1; inset:0; width:100%; height:100%; object-fit:fill; }.community-v7-panel__header { display:grid; grid-template-columns:minmax(0,1fr) 27%; align-items:center; gap:8px; height:18%; padding:5% 8% 0; }.community-v7-panel__header > img { display:block; width:100%; max-height:100%; object-fit:contain; object-position:left center; }.community-v7-panel__header a { display:block; min-width:0; }.community-v7-panel__header a img { display:block; width:100%; height:auto; }.community-v7-panel__body { height:66%; padding:2% 9% 0; }.community-v7-panel__footer-action { display:block; width:66%; margin:0 auto; }.community-v7-panel__footer-action img { display:block; width:100%; height:auto; }
.community-v7-empty { display:grid; height:100%; place-items:center; margin:0; padding:20px; color:#547297; font-weight:900; text-align:center; }.community-v7-room-list,.community-v7-friend-list,.community-v7-announcement-list { display:grid; gap:2px; margin:0; padding:0; list-style:none; }.community-v7-room-list li,.community-v7-friend-list li { border-bottom:1px solid rgba(36,94,146,.13); }.community-v7-room-list a,.community-v7-friend-list a { display:grid; grid-template-columns:37px minmax(0,1fr) auto; gap:8px; align-items:center; min-height:43px; color:#274875; text-decoration:none; }.community-v7-avatar { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:#d9eeff; font-size:1.1rem; }.community-v7-room-list strong,.community-v7-friend-list strong { display:block; overflow:hidden; font-size:.8rem; text-overflow:ellipsis; white-space:nowrap; }.community-v7-room-list small,.community-v7-friend-list small { display:block; color:#708da7; font-size:.65rem; }.community-v7-room-list b,.community-v7-friend-list b { padding:4px 8px; border:1px solid #ff668e; border-radius:999px; color:#ef356c; font-size:.65rem; }.community-v7-friend-list img { width:34px; height:34px; border-radius:50%; object-fit:cover; }.community-v7-friend-list b { color:#fff; border:0; background:#148ee7; }
.community-v7-chat { display:flex; flex-direction:column; gap:5px; }.community-v7-chat__tabs { display:flex; gap:4px; overflow:hidden; }.community-v7-chat__tabs a { padding:4px 7px; border:1px solid #dae4f2; border-radius:999px; color:#507193; font-size:.61rem; font-weight:900; text-decoration:none; white-space:nowrap; }.community-v7-chat__tabs .is-active { color:#fff; background:#1d9bea; }.community-v7-chat__messages { display:grid; flex:1; gap:1px; overflow:hidden; }.community-v7-chat__messages p { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:5px; margin:0; padding:4px 0; border-bottom:1px solid rgba(37,109,174,.1); color:#557493; font-size:.65rem; }.community-v7-chat__messages strong { color:#1b72c7; }.community-v7-chat__messages span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.community-v7-chat__messages time { color:#91a6bd; }.community-v7-chat__form { display:flex; align-items:center; gap:4px; padding:4px 6px; border:1px solid #d6e6f2; border-radius:12px; background:#f7fbff; }.community-v7-chat__form input { min-width:0; flex:1; border:0; outline:0; color:#4c6d8e; background:transparent; font-size:.67rem; }.community-v7-chat__form button { width:25px; height:25px; padding:0; border:0; border-radius:50%; background:#2498e7; }.community-v7-chat__form img { width:100%; height:100%; object-fit:contain; }
.community-v7-task-list { display:grid; gap:2px; }.community-v7-task-list > div { display:grid; grid-template-columns:20px minmax(0,1fr) auto auto; gap:5px; align-items:center; min-height:42px; border-bottom:1px solid rgba(30,113,180,.13); }.community-v7-task-list p { margin:0; }.community-v7-task-list strong,.community-v7-task-list small { display:block; font-size:.66rem; }.community-v7-task-list small { color:#7895ad; }.community-v7-task-list em { color:#e98913; font-size:.66rem; font-style:normal; font-weight:900; }.community-v7-task-list a { padding:4px 7px; border-radius:999px; color:#126f4c; background:#ddffed; font-size:.63rem; font-weight:900; text-decoration:none; }.community-v7-streak { position:absolute; right:9%; bottom:6%; left:9%; display:flex; align-items:center; height:12%; overflow:hidden; color:#fff; text-decoration:none; }.community-v7-streak > img:first-child { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; }.community-v7-streak span { position:relative; z-index:1; margin-left:10%; }.community-v7-streak strong,.community-v7-streak small { display:block; }.community-v7-streak small { color:#ddf8ff; font-size:.62rem; }.community-v7-streak__chest { position:absolute; z-index:1; right:8%; width:19%; height:auto; }
.community-v7-workshop { display:grid; grid-template-columns:20% 1fr 20%; align-items:center; gap:3px; text-align:center; }.community-v7-workshop__choices { display:grid; gap:7px; }.community-v7-workshop__choices img { display:block; width:100%; height:48px; object-fit:contain; }.community-v7-workshop__character { display:block; width:100%; height:100%; max-height:205px; object-fit:contain; }.community-v7-avatar-cta { position:absolute; right:18%; bottom:6%; left:18%; padding:8px; border-radius:999px; color:#fff; background:linear-gradient(135deg,#ffcf30,#ff8219); font-weight:900; text-align:center; text-decoration:none; }.community-v7-announcement-list li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:7px; padding:6px 0; border-bottom:1px solid rgba(41,114,176,.12); }.community-v7-announcement-list > li > span { align-self:start; padding:3px 5px; border-radius:4px; color:#fff; background:#ff7656; font-size:.6rem; font-weight:900; }.community-v7-announcement-list a { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px; color:#4b6d8e; text-decoration:none; }.community-v7-announcement-list strong { overflow:hidden; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }.community-v7-announcement-list small { color:#91a5bb; font-size:.58rem; }

.community-v7-cta { position:relative; display:grid; grid-template-columns:150px minmax(0,1fr) 290px; align-items:center; min-height:110px; margin-top:26px; overflow:hidden; }.community-v7-cta__banner { position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:fill; }.community-v7-cta__mascots { width:145px; margin-left:10px; }.community-v7-cta p { display:grid; gap:4px; margin:0; color:#eaf8ff; }.community-v7-cta strong { color:#fff7a6; font-size:1.15rem; text-shadow:0 2px 2px #063982; }.community-v7-cta span { font-size:.75rem; }.community-v7-cta a { display:block; }.community-v7-cta a img { display:block; width:100%; height:auto; }

@media (max-width:1279px) { body.community-home-page .community-header__inner { grid-template-columns:minmax(190px,1fr) auto auto; width:min(100% - 32px,1180px); } body.community-home-page .community-menu-toggle { display:grid; width:42px; height:40px; place-items:center; padding:0; color:#fff; border-color:rgba(255,255,255,.85); background:rgba(4,47,123,.6); } body.community-home-page .community-nav { position:absolute; top:100%; left:0; right:0; display:none; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; padding:14px; background:rgba(5,38,109,.96); box-shadow:0 12px 20px rgba(2,22,75,.28); } body.community-home-page .community-nav.is-open { display:grid; } body.community-home-page .community-nav a { justify-content:center; padding:9px; } .community-v7-panels { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) { body.community-home-page .community-header__inner { grid-template-columns:minmax(145px,1fr) auto auto; width:calc(100% - 24px); min-height:64px; } body.community-home-page .community-brand img { width:174px; } body.community-home-page .community-header__actions .community-login-link,body.community-home-page .community-header__actions .community-profile-link,body.community-home-page .community-header__actions form,body.community-home-page .community-header__actions .community-admin-link { display:none; } body.community-home-page .community-nav { grid-template-columns:repeat(2,minmax(0,1fr)); padding:12px; }.community-v7-hero { min-height:555px; }.community-v7-hero__inner { display:block; width:calc(100% - 28px); }.community-v7-hero__content { max-width:280px; padding-top:82px; }.community-v7-hero__title { width:290px; }.community-v7-hero__content > p { margin:0 0 10px; font-size:.72rem; }.community-v7-hero__actions { gap:6px; margin:0; }.community-v7-hero__actions a { width:132px; }.community-v7-hero__character-wrap { position:absolute; right:-30px; bottom:0; height:360px; }.community-v7-stats { width:calc(100% - 28px); height:auto; min-height:170px; margin-top:-17px; }.community-v7-stats > img { object-fit:cover; }.community-v7-stats__items { grid-template-columns:repeat(2,1fr); padding:12px; }.community-v7-stats__items > div { padding:5px 8px; }.community-v7-stats__items > div:nth-child(2) { border:0; }.community-v7-stats__items > div:last-child { grid-column:1 / -1; justify-content:center; }.community-v7-content { width:calc(100% - 28px); }.community-v7-panels { grid-template-columns:1fr; gap:16px; }.community-v7-panel { max-width:500px; margin:auto; width:100%; }.community-v7-cta { grid-template-columns:90px 1fr; min-height:135px; padding:10px; }.community-v7-cta__mascots { width:88px; margin:0; }.community-v7-cta a { grid-column:1 / -1; width:215px; margin:auto; }.community-v7-cta strong { font-size:.9rem; }.community-v7-cta span { font-size:.65rem; } }
