*{box-sizing:border-box;}
html,body{height:100%;}
@keyframes homeFadeRise{
    from{opacity:0;transform:translateY(8px);}
    to{opacity:1;transform:translateY(0);}
}
@keyframes statFillGrow{
    from{transform:scaleX(0);}
    to{transform:scaleX(1);}
}
body.home-page{
    margin:0;
    font-family:var(--home-font-family, Inter, system-ui, sans-serif);
    font-size:calc(16px * var(--home-font-scale, 1));
    background-color:var(--home-bg-color, #0f172a);
    color:var(--home-text-color, #e5e7eb);
    line-height:1.3;
    background-image:var(--home-background-image, none);
    background-size:cover;
    background-position:center;
    background-attachment:fixed;
}
body.home-page::before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 45% 25%, rgba(220,38,38,.28), rgba(2,6,23,var(--home-overlay-opacity, .88)) 48%, rgba(2,6,23,.95));pointer-events:none;z-index:0;}
.roster-shell{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:var(--home-nav-width, 250px) 1fr;}
.steel-text{
    background:linear-gradient(180deg,var(--home-text-grad-start, #ffffff) 0%,var(--home-text-grad-mid, #d1d5db) 52%,var(--home-text-grad-end, #9ca3af) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    -webkit-text-fill-color:transparent;
    text-shadow:0 1px 0 rgba(255,255,255,.08),0 0 12px rgba(226,232,240,.08);
}
.left-nav{border-right:1px solid rgba(255,255,255,.13);background:linear-gradient(180deg,rgba(2,6,23,.9),rgba(2,6,23,.84));display:flex;flex-direction:column;}
.brand-block{padding:18px 16px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:center;align-items:center;min-height:185px;}
.brand-logo{max-width:100%;max-height:140px;object-fit:contain;}
.nav-list{padding:10px 8px;display:grid;gap:4px;}
.nav-item{display:block;padding:12px 14px;border-radius:8px;text-decoration:none;color:#e5e7eb;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;border:1px solid transparent;}
.nav-item{background:linear-gradient(180deg,var(--home-text-grad-start, #ffffff) 0%,var(--home-text-grad-mid, #d1d5db) 52%,var(--home-text-grad-end, #9ca3af) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.nav-item.active{background:linear-gradient(90deg,var(--home-nav-active-start, var(--home-accent-color, #d97706)),var(--home-nav-active-end, #7c2d12));border-color:var(--home-accent-color, #d97706);-webkit-text-fill-color:#ffffff;color:#ffffff;background-clip:border-box;-webkit-background-clip:border-box;text-shadow:0 1px 0 rgba(0,0,0,.35);}
.nav-item:hover{border-color:rgba(255,255,255,.2);transform:translateX(2px);}
.nav-footer{margin-top:auto;padding:12px 14px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;opacity:.82;letter-spacing:.3px;}
.main-content{padding:calc(var(--home-card-gap, 10px) + 6px) calc(var(--home-card-gap, 10px) + 8px);display:grid;grid-template-rows:auto auto 1fr auto;gap:12px;min-width:0;}
.top-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;}
.headline h1{margin:0;font-size:52px;letter-spacing:1px;line-height:1;font-weight:900;}
.headline h1,.metric-value,.card-name,.profile-v2-title{background:linear-gradient(180deg,var(--home-text-grad-start, #ffffff) 0%,var(--home-text-grad-mid, #d1d5db) 52%,var(--home-text-grad-end, #9ca3af) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,255,255,.08),0 0 12px rgba(226,232,240,.08);}
.headline p{margin:6px 0 0;color:var(--home-accent-color, #d97706);font-size:24px;letter-spacing:1px;font-weight:700;text-transform:uppercase;}
.top-right{display:grid;gap:10px;min-width:420px;}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(255,255,255,.18);border-radius:8px;overflow:hidden;background:rgba(2,6,23,.65);}
.metric{padding:8px 12px;border-left:1px solid rgba(255,255,255,.14);}
.metric:first-child{border-left:0;}
.metric-value{font-size:34px;font-weight:900;line-height:1;color:#fff;}
.metric-label{font-size:12px;letter-spacing:.8px;text-transform:uppercase;opacity:.8;}
.account-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;}
.logout-form{margin:0;}
.pill{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 12px;font-size:12px;background:rgba(2,6,23,.7);text-transform:uppercase;letter-spacing:.6px;}
.btn{display:inline-block;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);text-decoration:none;background:rgba(2,6,23,.6);color:#f8fafc;font-size:12px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;}
.btn.primary{background:var(--home-accent-color, #d97706);border-color:transparent;color:#111827;font-weight:800;}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13);padding:12px 0;}
.tabs{display:flex;gap:6px;flex-wrap:wrap;}
.tab{padding:9px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.16);background:rgba(2,6,23,.58);font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#f8fafc;cursor:pointer;}
.tab.active{background:linear-gradient(90deg,var(--home-accent-color, #d97706),rgba(2,6,23,.4));border-color:var(--home-accent-color, #d97706);}
.toolbar-right{display:flex;align-items:center;gap:8px;}
.sort{font-size:12px;letter-spacing:.7px;text-transform:uppercase;opacity:.86;display:flex;align-items:center;gap:8px;}
.sort select{padding:6px 8px;border-radius:7px;border:1px solid rgba(255,255,255,.18);background:rgba(2,6,23,.7);color:#f8fafc;}
.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--home-card-gap, 10px);align-content:start;}
.card-link{text-decoration:none;color:inherit;display:block;}
.card{position:relative;border:1px solid rgba(255,255,255,.17);border-radius:var(--home-card-radius, 8px);background:linear-gradient(180deg,var(--brand-card-background, var(--home-card-grad-start, #020617)),var(--home-card-grad-end, #0b1735));overflow:hidden;min-height:100%;animation:homeFadeRise .45s ease both;}
.card::after{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    box-shadow:inset 0 0 0 1px var(--home-accent-color, #d97706);
    opacity:0;
    pointer-events:none;
    transition:opacity .22s ease;
}
.card-head{position:relative;border-bottom:1px solid rgba(255,255,255,.08);}
.card-rank{position:absolute;left:8px;top:6px;padding:2px 8px;border-radius:999px;background:var(--home-accent-color, #d97706);font-size:15px;font-weight:900;color:#fff;}
.card-champ{position:absolute;right:8px;top:7px;padding:3px 7px;border-radius:999px;background:var(--home-accent-color, #d97706);font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:#fff;font-weight:700;}
.card-image-frame{position:relative;width:100%;aspect-ratio:1/1;background:#111;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;}
.card-image{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .6s ease;}
.card-brand-badge{position:absolute;right:10px;bottom:10px;width:56px;height:56px;border-radius:14px;background:rgba(2,6,23,.82);border:1px solid var(--brand-accent-start, rgba(255,255,255,.24));box-shadow:0 10px 20px rgba(2,6,23,.36),0 0 0 1px var(--brand-accent-soft, rgba(255,255,255,.08));display:flex;align-items:center;justify-content:center;padding:7px;backdrop-filter:blur(6px);}
.card-brand-logo{max-width:100%;max-height:100%;object-fit:contain;display:block;}
.card-body{padding:10px 10px 11px;}
.card-name{margin:0 0 6px;font-size:15px;font-weight:900;line-height:1.1;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.overall{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:10px;margin-bottom:8px;}
.overall-value{font-size:44px;line-height:.9;font-weight:900;background:linear-gradient(180deg,var(--brand-accent-start, var(--home-rating-grad-start, #ef4444)) 0%,var(--brand-accent-end, var(--home-rating-grad-end, #7f1d1d)) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.overall-label{font-size:11px;letter-spacing:.5px;text-transform:uppercase;opacity:.85;}
.overall-center{text-align:center;justify-self:stretch;padding-bottom:2px;}
.stars-meter{display:flex;align-items:center;justify-content:center;gap:3px;line-height:1;min-width:150px;}
.star-unit{position:relative;display:inline-block;width:1em;height:1em;font-size:24px;line-height:1;font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif;}
.star-back{position:absolute;inset:0;color:rgba(148,163,184,.35);}
.star-front{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,var(--brand-accent-start, var(--home-rating-grad-start, #ef4444)) 0%,var(--brand-accent-end, var(--home-rating-grad-end, #7f1d1d)) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    -webkit-text-fill-color:transparent;
    text-shadow:0 0 8px var(--brand-accent-soft, rgba(239,68,68,.32));
    clip-path:inset(0 calc(100% - var(--fill, 0%)) 0 0);
}
.alignment{justify-self:end;font-size:11px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;padding-bottom:4px;}
.align-face{color:#60a5fa;}.align-heel{color:#ef4444;}.align-neutral{color:#94a3b8;}
.rating-score{font-size:13px;opacity:.9;letter-spacing:.4px;}
.card-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;}
.stat{display:grid;grid-template-columns:30px 1fr 28px;gap:6px;align-items:center;margin:0;font-size:12px;}
.stat span{opacity:.95;}
.bar{height:7px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;}
.fill{height:100%;background:linear-gradient(90deg,var(--brand-accent-start, var(--home-rating-bar-start, #ef4444)),var(--brand-accent-end, var(--home-rating-bar-end, #991b1b)));transform-origin:left center;animation:statFillGrow .75s ease both;}
.card-actions{display:flex;gap:8px;margin-top:8px;}
.btn-mini{display:inline-block;padding:6px 9px;border-radius:7px;border:1px solid rgba(255,255,255,.2);background:rgba(2,6,23,.62);color:#fff;text-decoration:none;font-size:11px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;}
.nav-item,
.btn,
.btn-mini,
.tab,
.card,
.metric{
    transition:transform .22s ease, box-shadow .25s ease, border-color .22s ease, background-color .22s ease;
}
.card-link:hover .card{
    transform:translateY(-3px);
    border-color:var(--brand-accent-start, var(--home-accent-color, #d97706));
    box-shadow:0 12px 24px rgba(2,6,23,.42),0 0 0 1px var(--brand-accent-start, var(--home-accent-color, #d97706));
}
.card-link:hover .card::after{opacity:.38;}
.card-link:hover .card-image{
    transform:scale(1.04);
}
.btn:hover,
.btn-mini:hover{
    transform:translateY(-1px);
    border-color:var(--home-accent-color, #d97706);
}
.metric:hover{
    background:rgba(15,23,42,.8);
}
.empty-state{grid-column:1 / -1;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:18px;background:rgba(2,6,23,.66);}
.pager{display:flex;justify-content:space-between;align-items:center;padding:4px 2px 2px;font-size:12px;letter-spacing:.5px;opacity:.82;}
.pager-controls{display:flex;align-items:center;gap:6px;}
.pager-btn{width:40px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:6px;display:grid;place-items:center;background:rgba(2,6,23,.72);}
.pager-btn.active{background:var(--home-accent-color, #d97706);font-weight:800;}
.updates-modal{position:fixed;inset:0;background:rgba(0,0,0,.74);display:none;align-items:center;justify-content:center;padding:20px;z-index:1100;}
.updates-card{width:min(980px,96vw);max-height:86vh;overflow:auto;background:linear-gradient(140deg,var(--home-panel-grad-start, #1f2937),var(--home-panel-grad-end, #11172b));border:1px solid rgba(255,255,255,.28);border-radius:var(--home-panel-radius, 14px);padding:18px;color:#e5e7eb;}
.updates-title{text-align:center;letter-spacing:1px;font-weight:800;color:var(--home-accent-color, #d97706);text-transform:uppercase;margin:4px 0 16px;}
.updates-top{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.updates-title-inline{margin:0;}
.updates-block{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:14px 16px;margin-bottom:16px;}
.updates-block h2{margin:0 0 12px;text-align:center;font-size:18px;color:var(--home-accent-color, #d97706);text-transform:uppercase;letter-spacing:.8px;}
.updates-block ul{margin:0;padding:0;list-style:none;display:grid;gap:10px;}
.updates-block li{line-height:1.45;padding-left:20px;position:relative;}
.updates-block li::before{content:"";width:8px;height:8px;border:2px solid var(--home-accent-color, #d97706);border-radius:2px;position:absolute;left:0;top:.42em;}
.profile-modal{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;padding:16px;z-index:1200;}
.profile-card{width:min(1240px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(255,255,255,.22);border-radius:var(--home-panel-radius, 12px);background:linear-gradient(170deg,var(--home-panel-grad-start, #11172b),var(--home-panel-grad-end, #1f2937));padding:14px;color:#e2e8f0;position:relative;isolation:isolate;}
.profile-card::before{content:"";position:absolute;inset:0;background-image:linear-gradient(170deg,rgba(2,6,23,.84),rgba(2,6,23,.72)),var(--profile-brand-wallpaper, none);background-size:cover;background-position:center;opacity:.22;pointer-events:none;z-index:0;}
.updates-card,
.profile-card{animation:homeFadeRise .25s ease both;}
.profile-v2-grid,.profile-v2-actions{position:relative;z-index:1;}
.profile-v2-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start;}
.profile-v2-left{border:1px solid var(--profile-brand-accent-start, rgba(255,255,255,.16));border-radius:10px;background:linear-gradient(170deg,var(--profile-brand-accent-soft, rgba(255,255,255,.04)),rgba(2,6,23,.82));overflow:hidden;box-shadow:0 0 0 1px var(--profile-brand-accent-soft, transparent);}
.profile-v2-art{position:relative;width:100%;aspect-ratio:1/1;background:#111;background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:center;padding:0;}
.profile-v2-avatar{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.profile-v2-brand-badge{position:absolute;right:12px;bottom:12px;width:64px;height:64px;border-radius:16px;background:rgba(2,6,23,.84);border:1px solid var(--profile-brand-accent-start, rgba(255,255,255,.24));box-shadow:0 12px 24px rgba(2,6,23,.38),0 0 0 1px var(--profile-brand-accent-soft, rgba(255,255,255,.08));display:flex;align-items:center;justify-content:center;padding:8px;backdrop-filter:blur(8px);}
.profile-v2-brand-logo{max-width:100%;max-height:100%;object-fit:contain;display:block;}
.profile-v2-name{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.1);}
.profile-v2-title{margin:0;font-size:36px;line-height:.95;font-weight:900;text-transform:uppercase;letter-spacing:.8px;}
.profile-v2-nickname{margin:6px 0 0;color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));font-weight:700;font-size:14px;text-transform:uppercase;}
.profile-v2-meta{padding:10px 14px;display:grid;gap:4px;}
.profile-v2-meta-row{display:grid;grid-template-columns:120px 1fr;gap:8px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.08);}
.profile-v2-meta-row span{font-size:12px;letter-spacing:.6px;text-transform:uppercase;opacity:.8;}
.profile-v2-meta-row strong{font-size:15px;font-weight:700;text-align:left;}
.profile-v2-right{display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;min-width:0;}
.profile-v2-top{display:grid;grid-template-columns:150px minmax(0,1fr) 220px;gap:12px;padding:6px 0 10px;border-bottom:1px solid rgba(255,255,255,.12);}
.profile-v2-overall span{display:block;text-transform:uppercase;font-size:12px;letter-spacing:.8px;opacity:.8;}
.profile-v2-overall strong{font-size:72px;line-height:.9;color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));font-weight:900;text-shadow:0 0 16px var(--profile-brand-accent-soft, rgba(217,119,6,.18));}
.profile-v2-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;align-content:start;}
.profile-v2-stat{display:grid;grid-template-columns:42px 1fr 44px;gap:8px;align-items:center;}
.profile-v2-stat span{font-size:13px;font-weight:700;letter-spacing:.4px;}
.profile-v2-stat em{font-style:normal;font-size:13px;text-align:right;opacity:.95;}
.profile-v2-stat .bar{height:9px;}
.profile-v2-stat .fill{background:linear-gradient(90deg,var(--profile-brand-accent-start, var(--home-rating-bar-start, #ef4444)),var(--profile-brand-accent-end, var(--home-rating-bar-end, #991b1b)));}
.profile-v2-status{border-left:1px solid rgba(255,255,255,.12);padding-left:12px;display:grid;gap:8px;align-content:start;}
.profile-v2-label{font-size:12px;letter-spacing:.8px;text-transform:uppercase;opacity:.8;}
.profile-v2-highlight{font-size:18px;font-weight:800;color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));line-height:1.1;}
.profile-v2-mini{display:flex;justify-content:space-between;gap:10px;font-size:12px;text-transform:uppercase;}
.profile-v2-mini strong{color:#86efac;}
.profile-v2-mini .coming-soon{color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));}
.profile-v2-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:8px;}
.profile-v2-tab{padding:9px 11px;border-radius:7px;border:1px solid rgba(255,255,255,.16);background:rgba(2,6,23,.58);color:#f8fafc;font-size:12px;text-transform:uppercase;letter-spacing:.4px;}
.profile-v2-tab small{font-size:11px;opacity:.7;margin-left:4px;}
.profile-v2-tab.active{border-color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));}
.profile-v2-panel{border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.04);padding:12px;}
.profile-v2-bio{font-size:15px;line-height:1.6;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1);white-space:pre-wrap;}
.profile-v2-subgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:10px;}
.profile-v2-subgrid h4{margin:0 0 8px;text-transform:uppercase;letter-spacing:.6px;color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));}
.profile-v2-list{margin:0;padding-left:18px;display:grid;gap:6px;}
.profile-v2-traits{display:flex;flex-wrap:wrap;gap:8px;}
.profile-v2-trait{padding:6px 10px;border:1px solid var(--profile-brand-accent-start, var(--home-accent-color, #d97706));border-radius:999px;color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));font-size:12px;text-transform:uppercase;}
.profile-v2-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px;}
.profile-v2-actions .btn,
.profile-v2-actions .btn-mini{padding:8px 12px;}
.profile-v2-actions .btn.primary{background:linear-gradient(180deg,var(--profile-brand-accent-start, var(--home-accent-color, #d97706)),var(--profile-brand-accent-end, #7c2d12));border-color:var(--profile-brand-accent-start, var(--home-accent-color, #d97706));color:#08111f;box-shadow:0 10px 20px var(--profile-brand-accent-soft, rgba(217,119,6,.18));}
@media (max-width:1080px){
    .profile-v2-grid{grid-template-columns:1fr;}
    .profile-v2-top{grid-template-columns:1fr;}
    .profile-v2-status{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.12);padding-top:8px;}
    .profile-v2-stats{grid-template-columns:1fr;}
}
@media (max-width:760px){
    .profile-v2-subgrid{grid-template-columns:1fr;}
}
@media (max-width:1700px){.grid{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media (max-width:1450px){.roster-shell{grid-template-columns:max(200px, calc(var(--home-nav-width, 250px) - 30px)) 1fr;}.grid{grid-template-columns:repeat(4,minmax(0,1fr));}.headline h1{font-size:40px;}.headline p{font-size:18px;}}
@media (max-width:1200px){.grid{grid-template-columns:repeat(3,minmax(0,1fr));}.top-row{flex-direction:column;}.top-right{min-width:0;width:100%;}.account-row{justify-content:flex-start;}}
@media (max-width:940px){.roster-shell{grid-template-columns:1fr;}.left-nav{display:none;}.main-content{padding:12px;}.grid{grid-template-columns:repeat(2,minmax(0,1fr));}.toolbar{flex-direction:column;align-items:flex-start;}}
@media (max-width:620px){.grid{grid-template-columns:1fr;}.headline h1{font-size:34px;}.headline p{font-size:16px;}}
@media (max-width:420px){.card-stats-grid{grid-template-columns:1fr;}}
@media (prefers-reduced-motion:reduce){
    .card,
    .updates-card,
    .profile-card,
    .fill{
        animation:none !important;
    }
    .nav-item,
    .btn,
    .btn-mini,
    .tab,
    .card,
    .metric,
    .card-image{
        transition:none !important;
    }
    .card-link:hover .card,
    .btn:hover,
    .btn-mini:hover,
    .nav-item:hover{
        transform:none;
        box-shadow:none;
    }
}
