*{box-sizing:border-box}html{background:#0b1014;color:#eef5f8;font-family:Inter,Segoe UI,Arial,sans-serif}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 0,#182933 0,#0b1014 42%,#070a0d 100%)}button,input,select,textarea{font:inherit}.team-shell{width:min(1380px,calc(100% - 28px));margin:0 auto;padding:28px 0 48px}.team-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid #31404a;padding-bottom:20px}.kicker,.panel-head span,.team-identity span,.battle-card>span,.section-title span{font-size:12px;font-weight:800;letter-spacing:.16em;color:#7fd9ff}.team-topbar h1{margin:4px 0;font-size:clamp(30px,5vw,56px);line-height:.95}.team-topbar p{margin:8px 0 0;color:#92a5b0}.team-topbar nav{display:flex;gap:10px;flex-wrap:wrap}.team-topbar a{color:#ecf8ff;text-decoration:none;border:1px solid #405563;background:#13202a;padding:12px 16px;border-radius:8px;font-weight:800}.status-bar{margin:18px 0;padding:12px 14px;border:1px solid #32434d;background:#101a21;border-radius:8px;color:#9fb2bd}.status-bar.ok{border-color:#2d6a50;color:#9ef0c5}.status-bar.error{border-color:#773c41;color:#ffadb2}.team-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px}.panel{background:linear-gradient(180deg,#121b21,#0d1419);border:1px solid #2b3b45;border-radius:12px;padding:20px;box-shadow:0 18px 60px rgba(0,0,0,.25)}.subpanel{margin-top:18px;border:1px solid #283943;background:#0b1216;border-radius:11px;padding:16px}.hidden{display:none!important}.panel-head,.section-title{display:flex;justify-content:space-between;align-items:start;gap:16px}.panel-head{margin-bottom:20px}.panel-head h2,.section-title h3{margin:4px 0 0}.panel-head h2{font-size:24px}.panel-head b{background:#172932;border:1px solid #335664;padding:8px 10px;border-radius:7px;font-size:12px;color:#aee9ff}.section-title{align-items:end;margin:0 0 12px}.section-title small{color:#7f939e}.split-grid,.battle-grid,.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-card,.battle-card{border:1px solid #2c3c45;background:#0a1014;border-radius:10px;padding:18px}.form-card h3,.battle-card h4{margin:0 0 16px}.form-card label,.battle-card label,.settings-grid label{display:grid;gap:7px;margin:12px 0}.form-card label span,.battle-card label span,.settings-grid label span{font-size:12px;color:#8da2ad;font-weight:700}.form-card input,.form-card textarea,.form-card select,.battle-card input,.battle-card select,.settings-grid input,.settings-grid select,.chat-form input{width:100%;border:1px solid #344852;background:#101a20;color:#fff;padding:12px;border-radius:7px;outline:none}.form-card textarea{min-height:88px;resize:vertical}.form-card input:focus,.form-card textarea:focus,.battle-card input:focus,.battle-card select:focus,.settings-grid input:focus,.settings-grid select:focus,.chat-form input:focus{border-color:#72d7ff}.form-card button,.battle-card button,.settings-actions button,.chat-form button,.small-btn,.apply-btn{border:0;background:#1f91c2;color:#fff;padding:11px 12px;border-radius:7px;font-weight:900;cursor:pointer}.form-card button,.battle-card button{width:100%}.secondary{background:#263946!important}.form-note{font-size:12px;color:#78909d;line-height:1.5}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team-identity{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:16px;border-bottom:1px solid #2a3942;padding-bottom:18px}.team-emblem-img{width:80px;height:80px;object-fit:contain;border-radius:14px;background:#0b1216;border:1px solid #31434e;padding:5px}.identity-copy h2{margin:4px 0 5px;font-size:28px}.identity-copy p{margin:0 0 8px;color:#92a6b0;line-height:1.4}.identity-copy code{display:inline-block;color:#a8dff3;background:#101b22;border:1px solid #2a424f;padding:5px 8px;border-radius:6px}.rating-box{text-align:right}.rating-box span{display:block;color:#91a5b0}.rating-box strong{display:block;font-size:32px}.rating-box small{color:#80949f}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:18px 0}.stats-grid>div{background:#0a1115;border:1px solid #263740;border-radius:8px;padding:12px;text-align:center}.stats-grid span{display:block;font-size:11px;color:#8399a5;font-weight:800}.stats-grid strong{font-size:22px}.settings-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;align-items:end}.settings-actions{display:flex;gap:8px;grid-column:1/-1;justify-content:flex-end}.member-list,.application-list,.history-list,.chat-list,.team-board,.season-table{display:grid;gap:7px}.member{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid #293a43;background:#0a1115;padding:10px;border-radius:8px}.member .avatar{width:32px;height:32px;border-radius:8px;background:#183140;display:grid;place-items:center;font-weight:900;color:#9be5ff}.member small{color:#8397a2}.role-badge{font-size:10px;font-weight:900;border:1px solid #4b5f6b;border-radius:999px;padding:4px 7px;color:#c5d8e1}.role-badge.leader{color:#ffd27a;border-color:#84652c}.role-badge.officer{color:#9fe7ff;border-color:#2f718b}.member-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.small-btn{padding:7px 8px;font-size:10px}.small-btn.warn{background:#6b3a19}.small-btn.danger-mini{background:#61242a}.application{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border:1px solid #2a3d47;background:#0a1115;padding:11px;border-radius:8px}.application strong{display:block}.application p{margin:5px 0 0;color:#8fa3ad;font-size:12px}.application-actions{display:flex;gap:6px;align-items:center}.application-actions button{width:auto}.chat-list{min-height:170px;max-height:320px;overflow:auto;padding-right:4px}.chat-msg{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:8px;align-items:start;padding:8px;border-bottom:1px solid #1f3038}.chat-msg strong{font-size:12px;color:#a6e7ff}.chat-msg span{font-size:13px;word-break:break-word}.chat-msg time{font-size:10px;color:#637985}.chat-form{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:8px;margin-top:10px}.battle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.challenge-code{margin-top:12px;border:1px dashed #5fc9f3;padding:12px;border-radius:7px;text-align:center;font-family:ui-monospace,Consolas,monospace;font-size:24px;font-weight:900;color:#9fe7ff}.history-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #283a44;background:#0a1115;padding:9px 10px;border-radius:8px}.history-row .result{font-weight:900;font-size:11px;border-radius:999px;padding:5px 7px;text-align:center}.history-row .result.win{background:#153d28;color:#8aefb2}.history-row .result.loss{background:#462027;color:#ffabb1}.history-row .result.draw{background:#3c351c;color:#f4d77b}.history-row small{color:#788d99}.history-row .score{font-size:18px;font-weight:900}.season-row{display:grid;grid-template-columns:30px minmax(0,1fr) 48px 48px 52px;gap:7px;align-items:center;padding:8px;border-bottom:1px solid #23333b;font-size:12px}.season-row.head{font-weight:900;color:#78919d}.season-row.me{background:#102633;border:1px solid #315d72;border-radius:7px}.season-row b:last-child{text-align:right;color:#b4eaff}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.directory-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;border:1px solid #2b3d47;background:#0a1115;padding:11px;border-radius:9px}.directory-card img{width:50px;height:50px;object-fit:contain}.directory-card h4{margin:0 0 3px}.directory-card p{margin:4px 0;color:#8297a2;font-size:12px;min-height:32px}.directory-meta{display:flex;gap:8px;flex-wrap:wrap;color:#78909c;font-size:11px}.directory-card .apply-btn{grid-column:1/-1;margin-top:4px}.board-row{display:grid;grid-template-columns:30px 34px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border:1px solid #273740;background:#0b1216;border-radius:8px}.board-row.me{border-color:#3b91b6}.board-row img{width:30px;height:30px;object-fit:contain}.board-row strong{display:block}.board-row small{color:#80949f}.board-row .points{text-align:right;font-weight:900;color:#a9e9ff}.board-note{font-size:12px;color:#7f939d;margin:14px 0 0}.compact{margin-bottom:14px}.danger-row{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.danger{border:1px solid #733840;background:#2a1519;color:#ffafb6;padding:11px 14px;border-radius:7px;font-weight:800;cursor:pointer}.empty-state{border:1px dashed #30434e;border-radius:8px;padding:12px;color:#718894;font-size:12px;text-align:center}
@media(max-width:1120px){.team-layout{grid-template-columns:1fr}.leaderboard-panel{order:2}.stats-grid{grid-template-columns:repeat(3,1fr)}.battle-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr 1fr}.settings-grid label:first-child{grid-column:1/-1}}
@media(max-width:760px){.team-shell{width:min(100% - 16px,1380px);padding-top:14px}.team-topbar{align-items:start;flex-direction:column}.split-grid,.battle-grid,.content-grid,.directory-grid{grid-template-columns:1fr}.team-identity{grid-template-columns:64px 1fr}.team-emblem-img{width:60px;height:60px}.rating-box{grid-column:1/-1;text-align:left}.stats-grid{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.settings-grid label:first-child{grid-column:auto}.settings-actions{grid-column:auto;flex-direction:column}.member{grid-template-columns:34px minmax(0,1fr) auto}.member-actions{grid-column:1/-1}.chat-msg{grid-template-columns:76px minmax(0,1fr)}.chat-msg time{display:none}.chat-form{grid-template-columns:1fr}.danger-row{flex-direction:column}.danger{width:100%}.season-row{grid-template-columns:26px minmax(0,1fr) 40px 40px 46px}.form-pair{grid-template-columns:1fr}}
/* v0.12 fixed lineups, challenge center, analytics, trophies and season cup */
.analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.analytics-grid>div{border:1px solid #273a44;background:#0a1115;border-radius:8px;padding:12px}.analytics-grid span{display:block;font-size:10px;color:#78909d;font-weight:900;letter-spacing:.08em}.analytics-grid strong{display:block;margin-top:5px;font-size:20px}.form-strip{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.form-chip{min-width:28px;text-align:center;border:1px solid #34454e;border-radius:6px;padding:5px 7px;font-size:11px;font-weight:900}.form-chip.win{background:#153d28;color:#8aefb2}.form-chip.loss{background:#462027;color:#ffabb1}.form-chip.draw{background:#3c351c;color:#f4d77b}.v12-battle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.roster-title{display:flex;justify-content:space-between;align-items:center;margin:12px 0 7px;font-size:11px;font-weight:900;color:#8da2ad}.roster-picker{display:grid;gap:6px;max-height:220px;overflow:auto;border:1px solid #273a44;background:#080e12;border-radius:8px;padding:7px}.roster-option{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px;border-radius:6px;border:1px solid transparent}.roster-option:has(input:checked){border-color:#3c7891;background:#102631}.roster-option input{width:18px;height:18px}.roster-option strong{font-size:12px}.roster-option small{font-size:10px;color:#78909a}.challenge-center{margin-top:18px;border-top:1px solid #263740;padding-top:16px}.challenge-list{display:grid;gap:8px}.challenge-row{display:grid;grid-template-columns:84px minmax(0,1.4fr) 92px 80px auto;gap:10px;align-items:center;border:1px solid #2b3d47;background:#0a1115;border-radius:8px;padding:10px}.challenge-row code{font-size:17px;font-weight:900;color:#a8e9ff}.challenge-row small{display:block;color:#7d929e}.challenge-status{font-size:10px;font-weight:900;text-align:center;padding:5px 7px;border-radius:999px;border:1px solid #3a4c55}.challenge-status.accepted{color:#9ef0c5;border-color:#2d6a50}.challenge-status.pending{color:#f4d77b;border-color:#6d5c26}.challenge-status.completed{color:#a5b5bd}.challenge-status.cancelled,.challenge-status.expired{color:#ffabb1;border-color:#6a3239}.challenge-actions{display:flex;gap:5px;justify-content:flex-end}.challenge-actions button{border:0;border-radius:6px;padding:7px 8px;font-size:10px;font-weight:900;cursor:pointer;background:#1f91c2;color:#fff}.challenge-actions .cancel{background:#61242a}.tournament-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tournament-actions button{border:0;border-radius:7px;background:#1f91c2;color:#fff;padding:10px 12px;font-weight:900;cursor:pointer}.tournament-actions button.secondary{background:#263946}.tournament-entries{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 14px}.entry-chip{display:flex;gap:7px;align-items:center;border:1px solid #2d404a;background:#0a1115;border-radius:999px;padding:6px 9px;font-size:11px}.entry-chip img{width:20px;height:20px;object-fit:contain}.tournament-bracket{display:grid;gap:10px}.round-block{border:1px solid #273942;background:#091015;border-radius:9px;padding:11px}.round-block h4{margin:0 0 8px;color:#9fe7ff}.bracket-match{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border-top:1px solid #203038;font-size:12px}.bracket-match:first-of-type{border-top:0}.bracket-match .score{text-align:center;font-weight:900}.bracket-match .winner{color:#8aefb2;font-weight:900}.bracket-match button{border:0;border-radius:6px;padding:7px 8px;background:#1f91c2;color:#fff;font-size:10px;font-weight:900;cursor:pointer}.trophy-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.trophy-card{border:1px solid #3e3b2a;background:linear-gradient(180deg,#17160f,#0b1115);border-radius:9px;padding:13px}.trophy-card b{display:block;font-size:24px;margin-bottom:6px}.trophy-card strong{display:block}.trophy-card small{color:#897f62}.trophy-empty{border:1px dashed #3a4b54;border-radius:8px;padding:14px;color:#718894;text-align:center}
@media(max-width:1120px){.v12-battle-grid{grid-template-columns:1fr 1fr}.analytics-grid{grid-template-columns:repeat(2,1fr)}.trophy-list{grid-template-columns:repeat(2,1fr)}.challenge-row{grid-template-columns:80px minmax(0,1fr) 80px auto}.challenge-row .challenge-side{grid-column:2/-1}}
@media(max-width:760px){.v12-battle-grid,.analytics-grid,.trophy-list{grid-template-columns:1fr}.challenge-row{grid-template-columns:1fr}.challenge-row .challenge-side{grid-column:auto}.challenge-actions{justify-content:flex-start}.bracket-match{grid-template-columns:1fr 54px 1fr}.bracket-match button{grid-column:1/-1}}

/* v0.13 ranked team matchmaking */
.rank-tier{display:inline-block;margin:5px 0 2px;padding:4px 8px;border-radius:999px;font-size:10px;letter-spacing:.1em;border:1px solid #42515a;color:#dce8ee}.rank-tier.bronze{background:#2d2119;color:#d8a676;border-color:#74543a}.rank-tier.silver{background:#202a30;color:#d7e4ea;border-color:#667984}.rank-tier.gold{background:#332b12;color:#f6dc77;border-color:#806c27}.rank-tier.platinum{background:#14302f;color:#98eee5;border-color:#32716c}.rank-tier.diamond{background:#14243e;color:#9fc9ff;border-color:#365c91}.rank-tier.master{background:#34182f;color:#ff9fdf;border-color:#8f3f7d}.ranked-block{border-color:#34505d;background:linear-gradient(180deg,#0e171c,#0a1115)}.ranked-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px}.ranked-summary{border:1px solid #31434d;background:#081014;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:5px;align-items:flex-start}.ranked-summary>span{font-size:10px;color:#78909d;font-weight:900;letter-spacing:.09em}.ranked-summary>strong{font-size:26px}.ranked-summary>small{color:#7f949f}.rank-meter{width:100%;height:8px;border-radius:999px;background:#18262d;overflow:hidden;margin:5px 0}.rank-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#5ca7c7,#a8eaff);transition:width .25s ease}.ranked-config{border:1px solid #2a3d46;background:#0a1115;border-radius:10px;padding:13px}.ranked-actions{display:flex;gap:8px;margin-top:10px}.ranked-actions button{border:0;border-radius:7px;background:#1687ba;color:#fff;padding:11px 13px;font-weight:900;cursor:pointer}.ranked-actions button.secondary{background:#50303a}.ranked-status{margin-top:12px}.queue-card{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(110px,.6fr)) auto;gap:10px;align-items:center;border:1px solid #355160;background:#0b151a;border-radius:9px;padding:12px}.queue-card.waiting{border-color:#6e5f2e}.queue-card.matched{border-color:#2f7952;background:#0b1813}.queue-card strong{display:block}.queue-card small{color:#7d929d}.queue-metric{border-left:1px solid #263a43;padding-left:10px}.queue-metric span{display:block;font-size:9px;color:#718790;font-weight:900}.queue-metric b{display:block;margin-top:3px}.queue-card button{border:0;border-radius:7px;background:#1f91c2;color:#fff;padding:10px 12px;font-weight:900;cursor:pointer}.queue-search-pulse{display:inline-block;width:9px;height:9px;border-radius:50%;background:#f0c85f;margin-right:7px;animation:queuePulse 1.2s infinite}@keyframes queuePulse{50%{opacity:.35;transform:scale(.75)}}
@media(max-width:900px){.ranked-layout{grid-template-columns:1fr}.queue-card{grid-template-columns:1fr 1fr}.queue-card>div:first-child{grid-column:1/-1}.queue-card button{grid-column:1/-1}.queue-metric{border-left:0;border-top:1px solid #263a43;padding:8px 0 0}}
@media(max-width:560px){.queue-card{grid-template-columns:1fr}.queue-card>div:first-child,.queue-card button{grid-column:auto}.ranked-actions{flex-direction:column}.ranked-actions button{width:100%}}

/* v0.15 visual polish */
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,#000,transparent 78%)}
.team-topbar{padding:16px 18px 20px;border:1px solid rgba(67,92,105,.35);border-radius:14px;background:linear-gradient(180deg,rgba(19,31,39,.78),rgba(10,16,21,.55));backdrop-filter:blur(12px)}
.panel{border-color:#344852;background:linear-gradient(180deg,rgba(18,28,34,.96),rgba(11,17,22,.97));box-shadow:0 22px 70px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.03)}
.subpanel{border-color:#2f434d;background:linear-gradient(180deg,#0c151a,#091015)}
.team-emblem-img{box-shadow:0 10px 28px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.04)}
.stats-grid>div,.analytics-grid>div,.battle-card,.form-card,.ranked-summary,.ranked-config{transition:border-color .16s,transform .16s;background:linear-gradient(180deg,#0b1419,#081015)}
.battle-card:hover,.directory-card:hover,.board-row:hover{border-color:#406171}
.rank-meter{height:10px;box-shadow:inset 0 1px 3px rgba(0,0,0,.45)}.rank-meter i{background:linear-gradient(90deg,#53a5c7,#86e6ff,#d3f7ff);box-shadow:0 0 16px rgba(94,220,255,.22)}
.challenge-code{background:radial-gradient(circle at center,rgba(59,142,179,.12),transparent 65%)}
.trophy-card{position:relative;overflow:hidden}.trophy-card:after{content:"";position:absolute;inset:-50% auto auto -30%;width:70%;height:180%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent)}
