/* Evolution · design tokens and shared components */
:root{color-scheme:dark;--bg:#101315;--surface:#191e21;--raised:#222a2e;--line:#ffffff10;--line-strong:#ffffff25;--text:#f2f4f2;--muted:#a1acb1;--subtle:#7e8d95;--accent:#bbf36b;--accent-ink:#17220c;--danger:#ff9595;--warning:#edc57c;--sidebar:248px;--header:76px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:radial-gradient(ellipse at 70% 0,#28312935,transparent 55%),var(--bg);color:var(--text);font:15px/1.5 "Segoe UI Variable","Segoe UI",Arial,sans-serif}body:has(dialog[open]),body.menu-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button,a,input,select,textarea,summary{outline-offset:4px;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}[hidden]{display:none!important}button:disabled{cursor:not-allowed;opacity:.55}button,a,input,select,textarea{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s var(--ease)}
h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:var(--text);font-weight:650}h1{font-size:34px;line-height:1.15;letter-spacing:-1.1px;margin:0 0 24px}h2{font-size:21px;line-height:1.3;letter-spacing:-.4px;margin:0 0 18px}h3{font-size:17px;line-height:1.35;margin:0 0 10px}p{margin:0 0 16px}small,.muted{color:var(--muted)}.accent{color:var(--accent)}.danger{color:var(--danger)}.eyebrow{display:block;font-size:10px;font-weight:650;letter-spacing:2px;color:var(--muted);margin-bottom:8px}.user-text{white-space:pre-wrap;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);border:0}.skip-link{position:fixed;z-index:120;top:-80px;left:16px;padding:12px 18px;background:var(--accent);color:var(--accent-ink);border-radius:8px}.skip-link:focus{top:12px}.icon{width:22px;height:22px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.small-icon{width:17px;height:17px}.large-icon{width:32px;height:32px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:28px 18px;z-index:50;background:#131719;border-right:1px solid var(--line);overflow-y:auto;display:flex;flex-direction:column;gap:28px;scrollbar-width:thin;scrollbar-color:#485157 transparent}.sidebar-top{display:flex;align-items:center;justify-content:space-between;min-width:0;padding:0 12px 26px;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:850;letter-spacing:-1.3px;white-space:nowrap}.brand span{color:var(--accent)}.sidebar nav{display:flex;flex-direction:column;gap:7px;min-width:0}.nav-item{position:relative;display:flex;align-items:center;gap:13px;min-width:0;min-height:48px;padding:12px 13px;border-radius:9px;font-size:14px;color:#aeb8bd;line-height:1.35}.nav-item span{min-width:0}.nav-item:hover{background:#ffffff05;color:var(--text)}.nav-item.active{background:#bbf36b0b;color:var(--accent);font-weight:650}.nav-item.active:before{content:"";position:absolute;left:-18px;top:14px;bottom:14px;width:3px;background:var(--accent);border-radius:0 3px 3px 0}.nav-divider{height:1px;background:var(--line);margin:16px 12px 12px}.sidebar .sidebar-close,.utility-bar .menu-trigger{display:none}.nav-scrim{position:fixed;inset:0;background:#030505ad;backdrop-filter:blur(3px);z-index:45}
.site-shell{margin-left:var(--sidebar);min-height:100dvh;display:flex;flex-direction:column}.utility-bar{height:var(--header);flex-shrink:0;position:sticky;top:0;z-index:35;display:flex;align-items:center;gap:18px;padding:0 36px;background:#101315e8;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.page-context{color:var(--muted);font-size:14px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.utility-actions{display:flex;align-items:center;gap:10px;margin-left:auto;min-width:0}.utility-actions>.icon-button{border-color:transparent;background:transparent;color:#b2bdc2}.utility-actions>.icon-button:hover{color:var(--accent);background:#ffffff05}.utility-wallet{display:flex;align-items:center;gap:9px;padding:0 18px;margin:0 6px;min-height:38px;border-left:1px solid var(--line);border-right:1px solid var(--line);font-size:16px;white-space:nowrap;font-variant-numeric:tabular-nums}.utility-wallet .icon{color:var(--accent);width:25px;height:25px}.utility-profile{display:flex;align-items:center;gap:10px;max-width:210px;min-width:0;font-size:13px}.utility-profile-name{min-width:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.utility-profile .steam-avatar{--avatar-size:36px}.utility-profile>.icon{color:var(--subtle);width:13px}.notification-trigger{position:relative}.notification-count{position:absolute;right:0;top:0;min-width:17px;line-height:17px;border-radius:9px;padding:0 4px;font-size:10px;text-align:center;background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 3px var(--bg)}.page{width:100%;max-width:1512px;margin:0 auto;padding:32px 36px 48px;flex:1;min-width:0;animation:page-in .22s var(--ease)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px}.page-heading h1{margin:0}.page-heading p{margin-top:8px}.page-hero{padding:0;margin:0 0 26px}.page-hero h1{margin:0}.page-hero p{margin-top:12px}.page-hero .eyebrow{display:none}
.button,.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 19px;border:1px solid transparent;border-radius:9px;font-size:14px;font-weight:650;line-height:1.4;text-align:center;position:relative}.button{background:var(--accent);color:var(--accent-ink);box-shadow:0 3px 0 #0002}.button:hover{background:#d0ff92;color:var(--accent-ink);box-shadow:0 4px 22px #bbf36b1c;transform:translateY(-1px)}.button:active,.outline-button:active,.icon-button:active{transform:translateY(1px) scale(.98)}.outline-button{border-color:var(--line-strong);background:#ffffff04;color:#d6dddf}.outline-button:hover{border-color:#bbf36b66;background:#bbf36b08;color:var(--accent)}.button:disabled:hover{transform:none;box-shadow:none}.outline-button.danger{color:var(--danger);border-color:#ff959533;background:#ff959503}.outline-button.danger:hover{border-color:#ff959577;background:#ff95950c;color:#ffc3c3}.danger-button{background:#7b3535;color:#ffdddd;border-color:#e8797940}.danger-button:hover{background:#954141;color:white}.compact{min-height:36px;padding:8px 13px;font-size:12px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:9px;border:1px solid var(--line);border-radius:9px;background:#ffffff04;color:var(--muted)}.icon-button:hover{color:var(--text);background:#ffffff0a;border-color:var(--line-strong)}.text-button{background:none;border:0;color:var(--muted);padding:8px 4px;font-size:13px;min-height:36px}.text-button:hover,.text-link:hover{color:var(--accent)}.text-button.danger{color:var(--danger)}.text-link{font-size:13px;color:var(--muted)}.back-link{display:inline-flex;align-items:center;margin-bottom:20px;color:var(--muted);font-size:13px}.panel{background:linear-gradient(145deg,#1b2023,#171c1f);border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px;min-width:0}.subtle-panel{background:#ffffff03;border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.section-heading h2,.section-heading h3{margin:0}.section-heading .eyebrow{margin-bottom:5px}.narrow{max-width:720px}.empty-copy{color:var(--muted);font-size:14px;margin:8px 0;padding:12px 0}.empty-state{text-align:center;padding:42px 20px;color:var(--muted)}.empty-state h2,.empty-state h3{margin:14px 0 8px;color:#dce3e5;font-size:18px}.empty-state p{font-size:14px;max-width:34ch;margin:0 auto;line-height:1.6}.empty-symbol,.action-symbol{width:52px;height:52px;display:inline-flex;justify-content:center;align-items:center;border-radius:15px;background:#ffffff05;border:1px solid var(--line);color:var(--subtle)}
.avatar{width:40px;height:40px;object-fit:cover;border-radius:0;background:#263238;border:1px solid #ffffff15;flex-shrink:0}.avatar-xl{width:78px;height:78px;box-shadow:0 0 0 5px #bbf36b05;border-color:#bbf36b44}.identity{display:flex;align-items:center;gap:12px;min-width:0}.identity>strong,.identity>div{min-width:0;overflow-wrap:anywhere}.identity .badge{margin-top:5px}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:6px;font-size:11px;line-height:1.4;border:1px solid var(--line);color:var(--muted);font-weight:500;vertical-align:middle}.badge.lime,.badge.success{color:var(--accent);background:#bbf36b09;border-color:#bbf36b20}.badge.blue{color:#9fcbef;background:#7abaf80a;border-color:#7abaf820}.badge.red,.badge.danger{color:#eeb2b2;background:#e879790a;border-color:#e8797920}.badge.gold,.badge.warning{color:var(--warning);background:#edc57c09;border-color:#edc57c22}.badge.purple{color:#c4b3e9;background:#b993ef0a;border-color:#b993ef20}.badge.neutral{background:#ffffff04}
.notice{display:flex;align-items:flex-start;gap:12px;padding:15px 18px;margin:0 0 20px;border:1px solid #8ec5f62a;border-radius:11px;background:#8ec5f609;color:#bdd8ed;font-size:14px;line-height:1.6}.notice .icon{margin-top:2px;width:19px;height:19px}.notice a{text-decoration:underline;text-underline-offset:3px}.notice-success{border-color:#bbf36b2a;background:#bbf36b08;color:#d1e8b5}.notice-warning{border-color:#edc57c33;background:#edc57c09;color:#ead6ad}.notice-error,.validation-errors{border-color:#ff959533;background:#ff95950a;color:#f3b6b6}.notice:empty,.validation-summary-valid{display:none}.notice p{margin:0}.notice ul{margin:0;padding-left:20px}.field-error{display:block;margin-top:5px;color:#f0aaa7;font-size:13px}.field-error:empty{display:none}.input-validation-error{border-color:#dc827e!important}
.form-stack{display:grid;gap:18px;max-width:720px}.form-stack>label{display:grid;gap:7px;font-size:13px;color:#bdc6ca}.form-stack>button{justify-self:start}.form-stack+.form-stack{margin-top:18px}.form-stack p{font-size:13px}.inline-form,.inline-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inline-form label{display:flex;align-items:center;gap:8px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-panel{max-width:900px}input,select,textarea{width:100%;min-width:0;min-height:44px;padding:11px 13px;border:1px solid var(--line-strong);border-radius:9px;background:#121719;color:var(--text);line-height:1.5}input:hover,select:hover,textarea:hover{border-color:#ffffff3a}input:focus,textarea:focus,select:focus{border-color:#bbf36b77;box-shadow:0 0 0 3px #bbf36b08}textarea{resize:vertical;min-height:104px}input::placeholder,textarea::placeholder{color:#78868e}input[type=checkbox],input[type=radio]{width:17px;min-height:17px;accent-color:var(--accent);box-shadow:none;flex-shrink:0}.checkbox-label{display:inline-flex;align-items:center;gap:9px;font-size:13px;min-height:44px;cursor:pointer}.search-form{display:flex;align-items:stretch;gap:0;max-width:420px;width:100%;margin-bottom:18px}.search-form input{border-radius:9px 0 0 9px}.search-form .icon-button{border-radius:0 9px 9px 0;border-left:0;min-width:46px;background:#ffffff04}.avatar-options{display:flex;gap:12px;flex-wrap:wrap}.avatar-options label{position:relative;display:flex;align-items:center;cursor:pointer;border:2px solid transparent;border-radius:0;padding:4px}.avatar-options input{position:absolute;opacity:0;width:1px;height:1px}.avatar-options label:has(input:checked){border-color:var(--accent);background:#bbf36b0e}.avatar-options label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:4px}.avatar-options .avatar{width:46px;height:46px}.avatar-options label:has(input:checked):after{content:"✓";position:absolute;right:-2px;bottom:0;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:800;width:16px;height:16px;line-height:16px;text-align:center;border-radius:50%}
.tabs{display:flex;gap:18px;flex-wrap:wrap;margin:28px 0 24px;border-bottom:1px solid var(--line)}.tabs a{display:flex;align-items:center;gap:8px;padding:0 4px 15px;border-bottom:2px solid transparent;color:var(--muted);font-size:14px;min-height:44px}.tabs a.active,.tabs a[aria-current=page]{color:var(--accent);border-color:var(--accent)}.tabs .badge{font-size:10px;padding:2px 5px}.filter-links{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0}.filter-links a{padding:7px 12px;color:var(--muted);border:1px solid transparent;border-radius:7px;font-size:13px}.filter-links a:hover{background:#ffffff05}.filter-links a[aria-current=page]{background:#bbf36b0b;border-color:#bbf36b25;color:var(--accent)}.list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}.list-row:last-child{border-bottom:0}.list-row>div,.list-row>a{min-width:0}.list-row small{display:block;font-size:12px;margin-top:5px}.list-row form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.list-row select{width:auto;max-width:100%}.table-scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:#4f5a60 transparent}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:15px 12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}th{font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap;background:#ffffff03}td:not(:first-child){font-variant-numeric:tabular-nums;white-space:nowrap}tr:last-child td{border-bottom:0}tbody tr:hover{background:#ffffff03}abbr{text-decoration:none}.pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:24px;font-size:13px;color:var(--muted)}.data-disclosure{color:var(--muted);font-size:13px;margin:20px 0}.data-disclosure summary{cursor:pointer;min-height:40px;padding:10px 0;color:#b7c1c5}.data-disclosure[open]>summary{margin-bottom:12px}.data-disclosure p{margin-bottom:10px}

/* Server */
.server-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #ffffff15;border-radius:18px;background:#151b1d;box-shadow:0 10px 40px #0002}.server-scene{position:absolute;inset:0;background:url('/images/ze-atmosphere-v3.png') 70% center/cover no-repeat;z-index:-2;transition:filter .4s,opacity .4s}.server-card:before{position:absolute;inset:0;content:"";z-index:-1;background:linear-gradient(90deg,#101718ef 5%,#11181ac9 48%,#11181a08),linear-gradient(0deg,#11181ae8,transparent 70%)}.server-card.state-offline:before{background:linear-gradient(90deg,#191517f2 4%,#191517c9 48%,#11181a38),linear-gradient(0deg,#171416eb,transparent 80%)}.server-card.state-offline{border-color:#d4757526}.server-card.state-offline .server-scene{filter:saturate(.5);opacity:.6}.server-card-main{padding:32px;display:flex;flex-direction:column;align-items:flex-start;gap:22px;min-width:0}.server-card-home .server-card-main{min-height:426px}.server-title h1{font-size:clamp(36px,3.4vw,56px);line-height:1;letter-spacing:-1.9px;font-weight:750;margin:6px 0 0;max-width:14ch}.title-mark{color:var(--accent)}.server-title .eyebrow{font-size:10px;color:#adb9be;letter-spacing:2.6px}.server-description{max-width:36ch;color:#bec7ca;font-size:15px;margin:0}.server-facts{display:flex;gap:32px;flex-wrap:wrap}.server-facts>div{display:flex;gap:10px;align-items:center}.server-facts .icon{color:#91a5a9}.server-facts small{display:block;font-size:11px;margin-bottom:3px}.server-facts strong{font-size:17px;font-weight:600}.server-actions{display:flex;align-items:center;gap:16px;margin-top:auto;flex-wrap:wrap}.server-actions .play-button{min-width:166px;min-height:48px;font-size:16px}.server-copy{display:flex;align-items:center;gap:10px;color:#b6c0c4;background:#10171955;border:1px solid #ffffff13;border-radius:8px;padding:12px;font-size:12px;min-height:44px;font-variant-numeric:tabular-nums}.server-copy:hover{color:var(--text);border-color:#ffffff30;background:#101719aa}.unavailable-button{background:#ffffff08;color:#afb3b6;border-color:#ffffff12;box-shadow:none;opacity:1!important}.presence{display:inline-flex;align-items:center;gap:9px;padding:7px 11px;border-radius:7px;border:1px solid #ffffff12;background:#12181caa;font-size:13px;font-weight:600;line-height:1.3;color:var(--accent)}.tone-danger{color:var(--danger)}.tone-warning{color:var(--warning)}.tone-success{color:var(--accent)}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;box-shadow:0 0 10px currentColor}.state-online .presence{border-color:#bbf36b22}.state-offline .presence{border-color:#ff959533;background:#351b1d66}.server-card-detail .server-card-main{display:grid;grid-template-columns:minmax(0,1fr) 228px;grid-template-areas:"presence actions" "title actions" "description actions" "facts actions";gap:16px 28px;min-height:246px}.server-card-detail .presence{grid-area:presence;justify-self:start}.server-card-detail .server-title{grid-area:title}.server-card-detail .server-title h1{font-size:44px}.server-card-detail .server-description{grid-area:description}.server-card-detail .server-facts{grid-area:facts}.server-card-detail .server-actions{grid-area:actions;flex-direction:column;align-items:stretch;margin:auto 0 0}.server-card-detail .server-scene{background-position:90% 45%}.server-diagnostics{margin:0 4px}.server-roster-empty{min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center}.server-scene i{position:absolute;left:65%;top:70%;width:2px;height:2px;border-radius:50%;background:#bddeaa;box-shadow:0 0 8px #d9ffaf;animation:drift 13s linear infinite;opacity:0}.server-scene i:nth-child(2){left:78%;animation-delay:4s;animation-duration:17s}.server-scene i:nth-child(3){left:90%;animation-delay:8s;animation-duration:19s}
/* Home, forum and conversation */
.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 384px;grid-template-areas:"server chat" "news chat" "topics visitors" "ranking visitors";gap:22px;align-items:start}.home-server{grid-area:server;min-width:0}.home-news{grid-area:news}.home-topics{grid-area:topics}.home-grid>.panel{margin:0}.home-chat{grid-area:chat;position:sticky;top:98px;min-height:500px;height:calc(100dvh - 130px);max-height:820px;display:flex;flex-direction:column;padding:22px}.home-chat .section-heading{margin-bottom:18px}.home-chat h2{font-size:21px}.chat-live{font-size:9px;letter-spacing:1px;color:#97a982;display:flex;align-items:center;gap:6px}.chat-live .status-dot{width:5px;height:5px;box-shadow:none}.home-chat>[data-home-chat]{display:flex;flex-direction:column;min-height:0;flex:1}.home-chat .message-feed{min-height:0;flex:1;overflow-y:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:#4f5a60 transparent;overscroll-behavior:contain}.message{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);min-width:0}.message:last-child{border-bottom:0}.message-content{min-width:0;flex:1;position:relative}.message-content>p{font-size:15px;line-height:1.6;margin:6px 0 0}.message-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-right:28px;font-size:13px}.message-meta strong{overflow-wrap:anywhere;font-weight:700;font-size:14px}.message-meta time{font-size:11px;color:var(--subtle)}.message-meta .badge{font-size:10.5px;padding:3px 6px}.message .steam-avatar{--avatar-size:34px}.home-chat .message{padding:14px 0;gap:10px}.home-chat .message-content>p{font-size:16px;line-height:1.5}.home-chat .message-meta strong{font-size:14px}.home-chat .message-meta time{font-size:12px}.message-actions{position:absolute;top:0;right:-4px;z-index:3}.message-actions>summary{display:flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;list-style:none;cursor:pointer;color:var(--subtle);border-radius:7px}.message-actions>summary::-webkit-details-marker{display:none}.message-actions>summary:hover{background:#ffffff0a;color:var(--text)}.message-menu{position:absolute;right:0;top:34px;width:205px;padding:6px;background:#252c30;border:1px solid #ffffff15;border-radius:10px;box-shadow:0 12px 30px #0006}.message:last-child .message-menu{top:auto;bottom:32px}.message-menu button{display:block;text-align:left;width:100%;min-height:38px;border:0;background:transparent;border-radius:6px;padding:8px 10px;color:#d4dcdf;font-size:13px}.message-menu button:hover{background:#ffffff09}.message-menu .danger{color:var(--danger)}.message-editor,.message-report{margin-top:14px;padding:14px;border:1px solid var(--line-strong);background:#111719;border-radius:10px}.message-editor label,.message-report label{display:grid;gap:8px;font-size:13px}.message-editor .inline-actions,.message-report .inline-actions{margin-top:12px}.composer{display:flex;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);flex-shrink:0}.composer textarea{flex:1;min-height:60px;max-height:160px;resize:vertical;line-height:1.5;font-size:16px}.composer .button{align-self:flex-end;width:45px;height:45px;padding:10px;min-width:45px}.composer-status,.chat-refresh{color:#f0aaa7;font-size:12px;line-height:1.5;margin:8px 0 0}.composer-status:empty,.chat-refresh:empty{display:none}.sign-in-hint{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin:18px 0 0}.new-messages{width:100%;margin-bottom:10px;min-height:34px;font-size:12px}.home-chat .pagination{margin-top:10px;font-size:11px;gap:10px}.home-chat .pagination .outline-button{padding:5px 8px;min-height:28px;font-size:11px}.news-row{display:flex;align-items:center;gap:14px;padding:8px 0}.news-row>span:nth-child(2){flex:1;min-width:0}.news-row h3{font-size:17px;margin-bottom:5px}.news-row time{font-size:12px;color:var(--muted)}.news-row>.icon{color:var(--subtle)}.news-mark{width:46px;height:46px;background:#bbf36b08;color:var(--accent);border:1px solid #bbf36b18;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.topic-row{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.topic-row:last-child{border:0}.topic-row>div{flex:1;min-width:0}.topic-row strong{overflow-wrap:anywhere;display:block;font-size:15px;font-weight:600}.topic-row small{display:block;font-size:12px;color:var(--subtle);margin-top:4px}.topic-row>span{font-size:12px;color:var(--muted);white-space:nowrap}.topic-row .steam-avatar{--avatar-size:36px}.forum-sections{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.section-card{margin:0;padding:10px 14px;border-radius:9px;background:transparent;display:flex;align-items:center;gap:10px}.section-card h3{font-size:13px;margin:0}.section-card small{font-size:10px}.section-card>.icon,.section-card>span{display:none}.section-card.selected{background:#bbf36b08;border-color:#bbf36b33}.section-card.selected h3{color:var(--accent)}.topic-title{font-size:32px}.editor-panel{max-width:900px}
/* Clans and profiles */
.clan-hero,.account-heading,.public-profile-hero{padding:28px;margin:0;min-height:0;background:linear-gradient(110deg,#222a28,#191e21 70%)}.clan-heading,.account-heading,.profile-heading{display:flex;align-items:center;gap:22px;min-width:0}.clan-heading>div,.profile-heading>div{min-width:0}.clan-heading h1,.account-heading h1,.profile-heading h1{font-size:30px;margin:0 0 9px;letter-spacing:-.7px}.clan-heading .eyebrow{font-size:10px;letter-spacing:1px}.clan-emblem{display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:70px;height:70px;padding:8px;border-radius:16px;background:#bbf36b08;border:1px solid #bbf36b28;color:var(--accent);font-size:19px;font-weight:750;letter-spacing:-.4px;max-width:115px;overflow-wrap:anywhere}.clan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.clan-card{position:relative;display:block;transition:transform .2s var(--ease),border-color .2s;padding:24px;margin:0}.clan-card:hover{transform:translateY(-3px);border-color:#bbf36b42}.clan-card h2{font-size:22px;margin:12px 0 10px}.clan-card>.badge{position:absolute;top:20px;right:20px}.clan-card p{margin:0;font-size:13px}.clan-card .eyebrow{color:var(--accent);font-weight:700}.clan-content{max-width:1100px}.invitation-list{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px}.invitation-card{position:relative;border:1px solid #bbf36b30;background:linear-gradient(130deg,#bbf36b08,#1a2023 75%);padding:22px;border-radius:15px;min-width:0;scroll-margin-top:105px}.invitation-card .identity{align-items:flex-start;margin-bottom:18px}.invitation-card h3{font-size:20px;margin:4px 0 6px}.invitation-card .clan-emblem{width:48px;min-width:48px;height:48px;font-size:13px;border-radius:12px}.invitation-card p{color:var(--muted);font-size:13px;margin:5px 0}.invitation-card .invitation-expiry{font-size:12px;color:#98a5ac}.invitation-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.invitation-actions .button{font-size:13px;flex:1}.invitation-actions .outline-button{font-size:13px}.pending-heading{margin-top:28px}.pending-invite{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.pending-invite>div{flex:1;min-width:0}.pending-invite strong{font-size:14px}.pending-invite small{display:block;font-size:12px;color:var(--muted)}.member-management-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:18px;border-bottom:1px solid var(--line)}.member-management-row:last-child{border-bottom:0}.member-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.member-controls select{width:auto}.member-menu{position:relative}.member-menu summary{list-style:none}.member-menu>div{position:absolute;right:0;top:45px;z-index:8;min-width:210px;padding:8px;background:#242b2f;border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 10px 30px #0006}.member-menu button{display:block;width:100%;text-align:left}.danger-zone{border-color:#ff95951c;background:#ff959503}.danger-zone h2{font-size:18px}.danger-zone p{font-size:13px;max-width:52ch}.account-heading>.text-link{margin-left:auto}.account-heading progress{width:190px;margin-top:8px}.account-heading .badge{margin-top:8px}.account-heading>div{min-width:0}.account-heading>div>span{color:var(--muted);font-size:13px}.content-aside{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px}.content-aside>div{min-width:0}.profile-side h2{font-size:18px}.profile-side p{font-size:14px}.profile-side h3{margin-top:12px}.xp-label{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);margin:8px 0 10px}.profile-heading>div{width:min(390px,100%)}.profile-heading .badge{margin-top:10px}progress{display:block;width:100%;height:5px;appearance:none;border:0;border-radius:6px;background:#ffffff12;overflow:hidden}progress::-webkit-progress-bar{background:#ffffff12}progress::-webkit-progress-value{background:var(--accent);border-radius:6px}progress::-moz-progress-bar{background:var(--accent);border-radius:6px}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.metrics article{padding:20px;background:#ffffff03;border:1px solid var(--line);border-radius:12px;min-width:0}.metrics article:first-child{grid-column:1/-1}.metrics span{display:block;font-size:12px;color:var(--muted)}.metrics strong{display:block;font-size:29px;line-height:1.2;margin:10px 0 5px;letter-spacing:-.8px;font-weight:600}.metrics small{display:block;font-size:12px;color:var(--subtle)}.social-links{display:flex;gap:8px;flex-wrap:wrap}.purchase-row{display:flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.purchase-row:last-child{border:0}.purchase-row>img{width:94px;height:104px;object-fit:contain;background:#ffffff03;border:1px solid var(--line);border-radius:12px}.purchase-row>div{min-width:0}.purchase-row h3{font-size:18px;margin:0 0 8px}.purchase-row p{font-size:13px;color:var(--muted);margin:4px 0}.account-items{max-width:1000px}

/* Shop, wallet and rules */
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.offer-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .22s var(--ease),border-color .22s,box-shadow .22s}.offer-card:hover{transform:translateY(-4px);border-color:#bbf36b35;box-shadow:0 14px 36px #0002}.offer-art{height:220px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 100%,#51614c55,transparent 65%),#171e21;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid var(--line)}.offer-art img{height:100%;width:100%;object-fit:contain;object-position:center bottom;padding:16px 20px 0;transition:transform .4s var(--ease)}.offer-card:hover .offer-art img{transform:scale(1.035)}.offer-art .badge{position:absolute;top:14px;left:14px;background:#161d20ce}.offer-grid[data-single-category=true] .product-category{display:none}.offer-art:has(.product-category~.badge) .product-category{top:auto;bottom:14px}.offer-content{display:flex;flex-direction:column;padding:22px;flex:1}.offer-content h2{font-size:24px;margin-bottom:10px}.offer-content p{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:22px}.price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:18px;font-weight:650;margin-top:auto;margin-bottom:18px;font-variant-numeric:tabular-nums}.price small{font-size:12px;font-weight:400}.offer-content>.button{width:100%;min-height:43px}.offer-content .offer-state{margin-bottom:14px;font-size:12px}.offer-card.unavailable{opacity:.7}.store-toolbar{margin-bottom:24px}.filter-buttons{display:flex;gap:6px;flex-wrap:wrap}.filter-buttons button{padding:9px 14px;border:1px solid transparent;background:transparent;color:var(--muted);border-radius:8px;font-size:13px}.filter-buttons button[aria-pressed=true]{background:#bbf36b0a;color:var(--accent);border-color:#bbf36b25}.purchase-details{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;margin-bottom:24px}.purchase-details>img{width:100%;height:210px;object-fit:contain;background:#ffffff02;border:1px solid var(--line);border-radius:12px}.purchase-details h3{font-size:24px}.purchase-details p{font-size:14px;color:var(--muted);margin:10px 0}.scope-choice{padding:10px 0}.purchase-total{border-top:1px solid var(--line);padding-top:24px}.purchase-total h3{font-size:17px}.purchase-total .list-row{font-size:13px}.purchase-total .inline-actions{margin-top:20px}.receipt{border-color:#edc57c33;max-width:900px}.receipt h2{font-size:20px}.receipt p{font-size:14px}.wallet-ledger{max-width:1000px;padding:4px 24px}.wallet-operation{padding:18px 0;border-bottom:1px solid var(--line)}.wallet-operation:last-child{border:0}.wallet-operation .list-row{padding:0;border:0}.wallet-operation strong{font-size:15px}.wallet-operation time{display:block;font-size:12px;color:var(--muted);margin-top:5px}.wallet-operation .amount{font-size:19px;white-space:nowrap;font-variant-numeric:tabular-nums}.wallet-operation details{color:var(--subtle);font-size:12px;margin-top:9px}.wallet-operation details p{margin:10px 0;overflow-wrap:anywhere}.wallet-operation summary{cursor:pointer;min-height:28px}.rules-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.rules-layout:not(:has(.rules-nav)){display:block;max-width:1000px}.rules-nav{position:sticky;top:100px;align-self:start;display:grid;gap:8px}.rules-nav a{padding:10px 14px;font-size:13px;color:var(--muted);border-left:2px solid var(--line)}.rules-nav a:hover{border-color:var(--accent);color:var(--text)}.rule-row{display:flex;gap:16px;margin-top:22px}.rule-number{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#bbf36b0a;color:var(--accent);flex-shrink:0;font-size:13px}.rule-row h3{font-size:16px;margin:2px 0 9px}.rule-row p{color:var(--muted);font-size:14px}
/* Panels, search and notifications */
dialog{color:var(--text);width:min(660px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:28px;border:1px solid #ffffff18;border-radius:18px;background:#1a2023;box-shadow:0 24px 120px #0009}dialog::backdrop{background:#06090bb8;backdrop-filter:blur(6px)}dialog[open]{animation:dialog-in .22s var(--ease)}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.dialog-header h2{margin:0;font-size:26px}.dialog-header .icon-button{margin-left:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.confirm-dialog{max-width:460px}.confirm-dialog p{color:var(--muted);font-size:14px;line-height:1.7}.utility-dialog{width:min(740px,calc(100% - 40px));padding:0;overflow:hidden}.utility-dialog[open]{display:flex;flex-direction:column}.utility-dialog[data-kind=notifications]{width:min(480px,calc(100% - 32px));height:calc(100dvh - 32px);max-height:none;margin:16px 16px 16px auto;animation:drawer-in .24s var(--ease)}.utility-dialog-chrome{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 18px;border-bottom:1px solid var(--line);flex-shrink:0;gap:20px;background:#1c2326}.utility-dialog-chrome h2{font-size:22px;margin:0}.utility-dialog-chrome .icon-button{width:38px;height:38px;min-width:38px;min-height:38px}.utility-dialog [data-panel-content]{overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#4f5a60 transparent}.utility-dialog[data-kind=notifications] [data-panel-content]{display:flex;flex-direction:column;overflow:hidden}.utility-dialog [data-panel-content]>.site-search{padding:24px}.utility-dialog .site-search>h1,.utility-dialog [data-inbox-view]>h1{display:none}.panel-loading{min-height:260px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;color:var(--muted)}.spinner{display:inline-block;width:16px;height:16px;border:2px solid #ffffff15;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;vertical-align:middle;flex-shrink:0}.panel-error{padding:28px}.panel-error p{color:var(--danger);font-size:14px}.site-search{max-width:950px}.site-search>h1{font-size:30px}.global-search-form{max-width:none;margin-bottom:16px}.global-search-form input{font-size:16px}.search-group{margin-top:25px}.search-group h2{font-size:13px;letter-spacing:.5px;font-weight:500;color:var(--muted);margin-bottom:8px}.search-hit{gap:12px;justify-content:flex-start;padding:13px 8px;border-radius:9px;border-bottom:0}.search-hit:hover{background:#ffffff04}.search-hit .search-symbol{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff04;color:var(--muted);flex-shrink:0}.search-hit .steam-avatar{--avatar-size:40px}.search-hit strong{overflow-wrap:anywhere;font-size:15px;font-weight:600}.search-hit>span:last-child{margin-left:auto;color:var(--muted);font-size:12px}.search-hit .search-symbol img{width:36px;height:36px;object-fit:contain}.search-result-count{font-size:12px;color:var(--subtle);margin-top:18px}
.inbox-view{display:flex;flex-direction:column;min-height:0;max-height:calc(100dvh - 145px);height:760px;width:100%;max-width:950px}.utility-dialog .inbox-view{height:100%;max-height:none}.inbox-view>h1{flex-shrink:0}.inbox-toolbar{padding:0 0 16px;flex-shrink:0;border-bottom:1px solid var(--line)}.utility-dialog .inbox-toolbar{padding:18px 24px 14px;background:#1a2023}.inbox-filters{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:0 0 12px}.inbox-filters>label:first-child{display:grid;gap:6px;font-size:12px;flex:1;min-width:150px}.inbox-filters select{min-height:40px;padding:8px 12px;font-size:13px;background:#111719}.inbox-filters>.outline-button{display:none}.no-js .inbox-filters>.outline-button{display:block}.inbox-all{display:flex;justify-content:flex-end}.inbox-all .outline-button{font-size:12px;min-height:34px;padding:7px 11px}.inbox-scroll{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#4f5a60 transparent;padding:0 2px}.utility-dialog .inbox-scroll{padding:0 24px 20px}.inbox-item{display:flex;gap:13px;position:relative;padding:19px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5}.inbox-item .notice-symbol{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:#ffffff04;color:#a7bcc7;flex-shrink:0}.inbox-item.new .notice-symbol{background:#bbf36b09;color:var(--accent)}.inbox-item .notice-symbol .icon{width:18px;height:18px}.notice-content{flex:1;min-width:0;overflow-wrap:anywhere}.inbox-item a{display:block}.inbox-item a:hover .notice-heading{color:var(--accent)}.notice-heading{display:block;font-weight:600;font-size:14px;line-height:1.5;margin:0 0 5px;color:#dce4e5}.inbox-item.seen .notice-heading{font-weight:500;color:#b0bdc3}.inbox-item p{margin:0}.notice-detail{display:block;color:var(--muted);font-size:13px;margin-top:3px}.notice-state{margin-top:9px}.inbox-item .notice-time{display:block;font-size:12px;color:var(--subtle);margin-top:7px}.notice-expiry{display:block;font-size:12px;color:var(--muted);margin-top:6px}.notice-expiry time{display:inline}.inbox-item.new:after{content:"";position:absolute;right:0;top:25px;width:5px;height:5px;background:var(--accent);border-radius:50%}.inbox-item.new .notice-content{padding-right:10px}.inbox-day{font-size:11px;font-weight:500;letter-spacing:.5px;color:var(--subtle);padding:18px 0 3px}.panel-status{font-size:12px;line-height:1.6;margin:0;color:var(--muted);padding:10px 0;flex-shrink:0}.utility-dialog .panel-status{padding:0 24px 12px}.panel-status:empty{display:none}.panel-status.is-error{color:var(--danger)}[data-inbox-more]{width:100%;margin-top:20px}.toast{position:fixed;left:calc(50% + var(--sidebar)/2);bottom:28px;transform:translateX(-50%);z-index:150;background:#2c3538;border:1px solid #ffffff1e;border-radius:10px;padding:12px 18px;box-shadow:0 12px 40px #0005;display:flex;align-items:center;gap:10px;font-size:13px;animation:toast-in .2s var(--ease)}.toast .icon{color:var(--accent);width:17px;height:17px}
/* Charts and motion */
.chart-periods{display:flex;gap:5px;flex-wrap:wrap}.chart-periods .outline-button{min-height:32px;font-size:12px;padding:7px 10px}.chart-periods [aria-pressed=true]{background:#bbf36b0b;border-color:#bbf36b33;color:var(--accent)}.history-chart{margin-bottom:28px;min-width:0}.history-chart svg{display:block;width:100%;height:260px;touch-action:pan-y}.chart-grid{stroke:#ffffff0a;stroke-width:1}.chart-label{fill:#9ba8af;font-size:12px;font-family:inherit}.chart-series{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--accent)}.chart-cursor{stroke:#d5e6be66;stroke-width:1;stroke-dasharray:3 3}.chart-readout{font-size:12px;color:var(--muted);margin:10px 0;min-height:36px}.chart-caption{font-size:12px;margin-top:20px;color:var(--subtle)}.admin-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.admin-shortcuts a{min-height:44px}.moderation-tools{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.moderation-tools form{display:flex;gap:8px}.admin-operation-fields{display:grid;gap:16px;padding-top:18px;border-top:1px solid var(--line)}
@keyframes page-in{from{opacity:0}to{opacity:1}}@keyframes dialog-in{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}@keyframes drawer-in{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}@keyframes rise-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes toast-in{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes drift{0%{opacity:0;transform:translate(0,0)}25%{opacity:.4}80%{opacity:.15}100%{opacity:0;transform:translate(-45px,-90px)}}.message-new{animation:rise-in .25s var(--ease)}[aria-busy=true]{cursor:progress}button.is-busy{display:inline-flex;align-items:center;justify-content:center;gap:9px;pointer-events:none}

/* Responsive rules */
@media(min-width:1600px){.server-card-home .server-title h1{font-size:62px}.server-card-home .server-card-main{min-height:460px;gap:28px}.offer-art{height:248px}}
@media(max-width:1250px){.home-grid{grid-template-columns:minmax(0,1fr) 360px;gap:18px}.page{padding:28px}.utility-bar{padding:0 28px}.server-card-home .server-card-main{padding:26px;min-height:420px}.server-actions{gap:10px}.server-actions .play-button{min-width:145px}.server-copy{font-size:11px;padding:10px}.offer-art{height:190px}.offer-content{padding:19px}.clan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-aside{grid-template-columns:minmax(0,1fr) 250px;gap:18px}}
@media(max-width:1100px){.site-shell{margin-left:0}.sidebar{transform:translateX(-100%);visibility:hidden;transition:transform .22s var(--ease);width:280px;max-width:calc(100vw - 40px);box-shadow:20px 0 80px #0005}.sidebar.menu-open{transform:translateX(0);visibility:visible}.sidebar .sidebar-close,.utility-bar .menu-trigger{display:inline-flex}.sidebar-top{padding-left:8px;padding-right:0;gap:12px}.sidebar .brand{font-size:24px}.sidebar-close{min-width:32px;min-height:32px;width:32px;height:32px;padding:6px}.utility-bar{gap:14px}.toast{left:50%}}
@media(max-width:900px){.home-grid{grid-template-columns:1fr;grid-template-areas:"server" "chat" "news" "topics" "ranking"}.home-chat{position:static;height:530px;min-height:0;max-height:75dvh}.server-card-home .server-card-main{min-height:380px}.server-title h1{font-size:52px}.content-aside{grid-template-columns:1fr}.profile-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.profile-side>.panel{margin:0}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.invitation-list{grid-template-columns:1fr;max-width:690px}.rules-layout{grid-template-columns:1fr}.rules-nav{position:static;display:flex;flex-wrap:wrap}.rules-nav a{border:1px solid var(--line);border-radius:8px}.server-card-detail .server-card-main{grid-template-columns:minmax(0,1fr) 200px}}
@media(max-width:640px){
:root{--header:66px}.utility-bar{padding:0 14px;gap:8px}.page-context{display:none}.utility-actions{gap:4px}.utility-wallet{margin:0 3px;padding:0 10px;font-size:14px;gap:6px}.utility-wallet .icon{width:22px;height:22px}.utility-profile-name,.utility-profile>.icon{display:none}.utility-profile .steam-avatar{--avatar-size:34px}.utility-profile{padding-left:5px}.utility-actions>.icon-button,.menu-trigger{min-width:40px;min-height:42px;padding:8px}.page{padding:22px 16px 32px}.page-heading{gap:12px;margin-bottom:22px}.page-heading h1,h1{font-size:28px;letter-spacing:-.7px}.page-heading .button{padding:10px 13px;font-size:12px}.panel{padding:20px;border-radius:13px;margin-bottom:18px}.section-heading{gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:18px}.section-heading h2{font-size:19px}
.server-card{border-radius:15px}.server-card-home .server-card-main,.server-card-detail .server-card-main{display:flex;padding:24px;gap:21px;min-height:0}.server-card-home .server-card-main{min-height:394px}.server-card-detail .server-card-main{min-height:340px}.server-title h1,.server-card-detail .server-title h1{font-size:42px;letter-spacing:-1.4px;max-width:10ch}.server-card:before{background:linear-gradient(90deg,#11181ae0,#11181a66),linear-gradient(0deg,#11181af5,transparent)}.server-card.state-offline:before{background:linear-gradient(90deg,#191517ed,#19151770),linear-gradient(0deg,#171416f5,transparent)}.server-scene,.server-card-detail .server-scene{background-position:75% center}.server-facts{gap:28px}.server-description{font-size:14px}.server-actions,.server-card-detail .server-actions{width:100%;display:flex;align-items:stretch;flex-direction:column;gap:10px;margin-top:4px}.server-actions .play-button{width:100%;min-height:46px;font-size:15px}.server-copy{justify-content:center;font-size:12px;background:#10171966}.presence{font-size:13px;padding:8px 10px}.home-chat{padding:20px;height:520px;max-height:75dvh}.chat-live{margin-top:7px}.home-grid{gap:18px}.home-chat .section-heading{flex-wrap:nowrap}
.tabs{gap:15px;margin:22px 0}.tabs a{font-size:13px;gap:6px;padding:0 2px 13px}.tabs .icon{width:18px;height:18px}.tabs .badge{padding:2px 4px}.clan-tabs{gap:14px}.clan-tabs a{font-size:12px}.clan-hero,.account-heading,.public-profile-hero{padding:22px}.clan-heading{gap:15px}.clan-heading h1,.account-heading h1,.profile-heading h1{font-size:25px}.clan-emblem{min-width:58px;height:58px;font-size:17px;border-radius:13px}.clan-heading .eyebrow{font-size:9px}.clan-grid{grid-template-columns:1fr}.clan-card{padding:23px}.invitation-card{padding:20px}.invitation-card .identity{gap:12px}.invitation-card h3{font-size:19px}.invitation-actions{align-items:stretch;flex-wrap:nowrap;gap:9px}.invitation-actions .button,.invitation-actions .outline-button{font-size:12px;padding:11px 12px;min-height:44px;white-space:nowrap}.member-management-row{align-items:flex-start;flex-wrap:wrap}.member-controls{width:100%}.member-controls>form{flex:1;min-width:0}.member-controls select{min-width:0;flex:1}
.account-heading{gap:14px;flex-wrap:wrap}.account-heading .avatar-xl{width:60px;height:60px}.account-heading>.text-link{width:100%;margin:0;padding-top:10px;border-top:1px solid var(--line);font-size:12px}.account-heading progress{width:150px}.profile-heading{gap:16px}.profile-heading .avatar-xl{width:66px;height:66px}.profile-heading>div{width:auto;flex:1}.profile-heading h1{font-size:25px}.xp-label{font-size:11px;gap:8px}.profile-side{grid-template-columns:1fr}.metrics{gap:10px}.metrics article{padding:17px}.metrics strong{font-size:25px;letter-spacing:-.5px}.metrics span,.metrics small{font-size:11px}.purchase-row{gap:14px}.purchase-row>img{width:72px;height:88px}.purchase-row h3{font-size:17px}.purchase-row p{font-size:12px}
.offer-grid{grid-template-columns:1fr;gap:20px}.offer-art{height:240px}.offer-content{padding:22px}.offer-content h2{font-size:26px}.offer-content p{font-size:14px}.offer-content>.button{min-height:46px}.offer-grid .price{font-size:20px}.forum-sections{gap:6px;margin-bottom:22px}.forum-sections .section-card{padding:9px 11px}.section-card h3{font-size:12px}.section-card small{font-size:9px}.topic-row{gap:10px}.topic-row strong{font-size:14px}.topic-row small{font-size:11px}.topic-row>span{font-size:11px}.topic-row .steam-avatar{--avatar-size:32px}.topic-title{font-size:27px}.table-scroll table{min-width:570px}.wallet-ledger{padding:4px 20px}.wallet-operation strong{font-size:14px}.wallet-operation .amount{font-size:18px}.wallet-operation .list-row{align-items:flex-start;gap:14px}.wallet-operation time{font-size:11px}.two-columns{grid-template-columns:1fr}.list-row form{width:100%}.list-row:has(form){flex-wrap:wrap}
.search-hit{align-items:center;flex-wrap:wrap;gap:10px}.search-hit>span:last-child{margin-left:50px;margin-top:-4px;width:100%}.search-hit>span:last-child:empty{display:none}.utility-dialog{max-height:calc(100dvh - 24px);width:calc(100% - 24px);border-radius:14px}.utility-dialog[data-kind=notifications]{width:100%;max-width:100vw;height:100dvh;margin:0;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.utility-dialog-chrome{padding:17px 20px 14px}.utility-dialog-chrome h2{font-size:21px}.utility-dialog .inbox-toolbar{padding:16px 20px 10px}.utility-dialog .inbox-scroll{padding:0 20px 20px}.utility-dialog .panel-status{padding:0 20px 12px}.inbox-filters{gap:10px}.inbox-filters .checkbox-label{font-size:12px}.inbox-item{padding:18px 0;gap:11px}.inbox-item .notice-symbol{width:34px;height:34px;border-radius:10px}.notice-heading{font-size:14px}.inbox-view{max-height:calc(100dvh - 116px)}.utility-dialog [data-panel-content]>.site-search{padding:20px}.filter-links{gap:2px}.filter-links a{font-size:12px;padding:7px 9px}
dialog{padding:22px;max-height:calc(100dvh - 24px);width:calc(100% - 24px);border-radius:14px}.dialog-header{margin-bottom:20px}.dialog-header h2{font-size:23px}.purchase-details{grid-template-columns:1fr;gap:18px}.purchase-details>img{height:150px;padding:0}.purchase-details h3{font-size:23px}.purchase-total{padding-top:20px}.purchase-total .inline-actions{align-items:stretch;flex-direction:column}.dialog-actions{gap:10px}.dialog-actions button{flex:1;font-size:13px}.toast{bottom:16px;max-width:calc(100vw - 32px);white-space:nowrap}.chart-periods{gap:4px}.chart-periods .outline-button{padding:6px 9px;font-size:11px}.history-chart svg{height:260px}.server-roster-empty{min-height:210px}.notice{font-size:13px;padding:14px 15px}.form-stack{gap:17px}.form-stack>button{width:100%}.steam-login{font-size:12px;padding:10px 13px}}
@media(max-width:360px){.utility-bar{padding:0 10px;gap:2px}.utility-actions{gap:1px}.utility-wallet{padding:0 6px;margin:0 2px;gap:5px;font-size:13px}.utility-actions>.icon-button,.menu-trigger{min-width:37px}.utility-profile .steam-avatar{--avatar-size:32px}.server-title h1,.server-card-detail .server-title h1{font-size:37px}.server-card-home .server-card-main,.server-card-detail .server-card-main{padding:22px}.clan-tabs{gap:12px}.clan-tabs a{font-size:11px}.invitation-actions{flex-wrap:wrap}.invitation-actions button{width:100%}.inbox-filters{align-items:center}.inbox-filters>label:first-child{min-width:130px}.inbox-filters .checkbox-label{font-size:11px}.profile-heading{gap:12px}.profile-heading h1{font-size:23px}.profile-heading .avatar-xl{width:56px;height:56px}.metrics strong{font-size:23px}}
/* Steam identity, uploads, ranking and staff workspace */
.steam-avatar{position:relative;display:inline-flex;width:var(--avatar-size,40px);height:var(--avatar-size,40px);flex:0 0 auto;vertical-align:middle;overflow:visible}.steam-avatar>.avatar{display:block;width:100%;height:100%;border-radius:0}.steam-frame{position:absolute;inset:-10%;width:120%;height:120%;max-width:none;pointer-events:none;object-fit:contain}.avatar-large .steam-avatar{--avatar-size:78px}.avatar-large{flex:0 0 auto}.home-ranking{grid-area:ranking}.ranking-row{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);min-width:0}.ranking-row:last-child{border:0}.ranking-row:hover .rank-player{color:var(--accent)}.rank-number{width:32px;flex:none;font-size:15px;font-variant-numeric:tabular-nums;color:var(--muted);text-align:center}.rank-medal{color:var(--accent);font-weight:800}.rank-player{min-width:0;flex:1}.rank-player strong{display:block;overflow-wrap:anywhere}.rank-player small{color:var(--muted);display:block;font-size:11px;margin-top:3px}.rank-xp{font-size:15px;white-space:nowrap}.rank-xp small{font-weight:500;font-size:10px;color:var(--muted)}
.clan-hero,.topic-hero{position:relative;isolation:isolate;overflow:hidden;min-height:190px}.hero-wallpaper{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.clan-hero:has(.hero-wallpaper):after,.topic-hero:has(.hero-wallpaper):after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101719ec,#10171977);z-index:-1}.attachment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.attachment-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;padding:12px;min-width:0;display:flex;flex-direction:column;gap:9px}.attachment-preview{width:100%;height:130px;object-fit:cover;border-radius:6px}.attachment-name{overflow-wrap:anywhere;font-size:13px}.attachment-card .inline-actions{margin-top:auto;gap:8px}.attachment-card .text-button{font-size:11px}.upload-form{margin-top:22px}.upload-form input[type=file]{font-size:13px;padding:10px}.topic-thumbnail{width:72px;height:48px;object-fit:cover;border-radius:8px;flex:none}.news-banner{width:92px;height:64px;object-fit:cover;border-radius:8px}.news-row:has(.news-banner) .news-mark{display:none}
.admin-player-workspace,.ticket-workspace{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:22px;align-items:start}.player-picker>h2{font-size:18px}.player-picker label{display:grid;gap:8px;font-size:13px}.picker-hint{font-size:11px;line-height:1.6;margin:10px 0}.player-picker [data-player-results]{max-height:65vh;overflow:auto;scrollbar-width:thin}.player-result{display:grid;gap:5px;padding:14px 12px;border-radius:8px;border:1px solid transparent;overflow-wrap:anywhere}.player-result small{font-size:11px;color:var(--muted)}.player-result.active{background:#bbf36b09;border-color:#bbf36b35}.player-result:hover,.ticket-row:hover{background:#ffffff05}.player-result.active strong{color:var(--accent)}.selected-player{display:flex;align-items:center;gap:14px;margin-bottom:20px}.action-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.action-tabs a{padding:9px 11px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:11px}.action-tabs a.active{color:var(--accent);border-color:#bbf36b45;background:#bbf36b08}.admin-actions-panel h2{font-size:22px}.admin-player-workspace [aria-busy=true]{opacity:.6;pointer-events:none}.ticket-filters{margin:20px 0}.ticket-filters label{display:grid;gap:7px;font-size:12px;flex:1;max-width:320px}.ticket-row{display:grid;gap:9px;padding:18px 0;border-bottom:1px solid var(--line)}.ticket-row .badge{justify-self:start}.ticket-row.active strong{color:var(--accent)}.ticket-excerpt{font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.ticket-row small{color:var(--subtle);font-size:11px}.ticket-body{padding:20px 0;border-block:1px solid var(--line);margin:20px 0}.audit-entry{padding:16px 0;border-bottom:1px solid var(--line);min-width:0}.audit-entry summary{display:flex;justify-content:space-between;gap:14px;cursor:pointer;overflow-wrap:anywhere;font-size:13px}.audit-entry time{color:var(--muted);font-size:11px;flex-shrink:0}.audit-entry pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:var(--muted);max-height:400px;overflow:auto;padding:16px;background:#111719;border-radius:8px}.audit-entry dd{margin:6px 0 14px;overflow-wrap:anywhere;color:var(--muted);font-size:12px}.audit-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.audit-filters label{display:grid;gap:7px;font-size:12px}.audit-filters button{justify-self:start}
/* Winter lighting stays above the chrome and never intercepts input. */
.winter-season{background-color:#12191d}.winter-season .server-scene:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 16%,#dff8ffb0 0 1px,transparent 2px),radial-gradient(circle at 70% 34%,#eafaffb0 0 1px,transparent 2px),radial-gradient(circle at 46% 70%,#e5f9ff70 0 1px,transparent 2px);background-size:171px 183px,219px 233px,257px 193px;opacity:.6;pointer-events:none}.winter-garland{position:fixed;top:0;left:0;right:0;height:18px;display:flex;justify-content:space-around;pointer-events:none;z-index:80;overflow:hidden;border-top:2px solid #394842}.winter-garland i{display:block;width:5px;height:8px;border-radius:3px 3px 5px 5px;background:#bcef81;box-shadow:0 1px 9px #bcef8180;transform:translateY(3px);animation:winter-glow 5s ease-in-out infinite alternate}.winter-garland i:nth-child(3n){background:#e8bd78;box-shadow:0 1px 9px #e8bd7880;animation-delay:-2s}.winter-garland i:nth-child(3n+1){background:#a8d8ed;box-shadow:0 1px 9px #a8d8ed80;animation-delay:-4s}.winter-garland i:nth-child(2n){transform:translateY(0)}.winter-season .sidebar-top{border-top:1px solid #b0dfed16}.winter-season .page-heading .eyebrow{color:#a7d4d9}@keyframes winter-glow{from{opacity:.45}to{opacity:1}}
@media(max-width:900px){.admin-player-workspace,.ticket-workspace{grid-template-columns:1fr}.player-picker [data-player-results]{max-height:270px}.avatar-large .steam-avatar{--avatar-size:64px}.home-ranking{grid-area:ranking}}
@media(max-width:600px){.ranking-row{gap:9px}.rank-number{width:22px;font-size:12px}.rank-player strong,.rank-xp{font-size:13px}.rank-player small{font-size:10px}.ranking-row .steam-avatar{--avatar-size:32px}.home-ranking .section-heading{gap:9px;align-items:flex-start}.home-ranking .text-link{font-size:11px;max-width:100px}.home-ranking h2{font-size:20px}.attachment-grid{grid-template-columns:1fr 1fr}.attachment-card{padding:9px}.topic-thumbnail{width:48px;height:40px}.news-banner{width:68px;height:56px}.audit-filters{grid-template-columns:1fr}.audit-entry summary{flex-wrap:wrap}.admin-actions-panel h2{font-size:20px}.action-tabs a{font-size:10px}.ticket-filters label{max-width:none}.winter-garland i:nth-child(2n){display:none}.clan-hero,.topic-hero{min-height:160px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.server-scene i{display:none}}
.no-js [data-toggle-create],.no-js .menu-trigger,.no-js .sidebar-close{display:none}.no-js .sidebar{visibility:visible;transform:none;position:static;width:100%;max-width:none;box-shadow:none}.no-js .sidebar nav{flex-direction:row;flex-wrap:wrap}.no-js .sidebar .nav-item.active:before{display:none}.no-js .site-shell{margin-left:0}.no-js dialog{display:none}.no-js [data-message-form][hidden]{display:block!important}.no-js .message-actions{display:none}



/* Administrative player records and message-owned attachments. */
.player-result{display:flex;align-items:center;gap:14px;min-width:0}.player-result>span:last-child{display:grid;gap:4px;min-width:0}.player-result .steam-avatar{--avatar-size:40px;flex:none}.player-result strong,.technical-id{overflow-wrap:anywhere}.player-result small{display:block}.player-overview .selected-player{flex-wrap:wrap}.selected-player h2{margin:0}.player-identifiers,.penalty-dates{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 16px}.player-identifiers dd,.penalty-dates dd{margin:0;overflow-wrap:anywhere}.player-identifiers dt,.penalty-dates dt{color:var(--muted)}.player-stat-strip{display:flex;flex-wrap:wrap;gap:12px 24px;margin:18px 0}.player-stat-strip span{display:grid;gap:4px}.penalty-row{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.penalty-row:last-child{border:0}.penalty-row p{margin:8px 0}.penalty-row small{display:block}.admin-actions-panel:has(.action-tabs:empty){display:none}.message-attachments{margin:14px 0}.message-attachments .attachment-card{min-width:0}.post-attachment-upload{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-top:16px}.post-attachment-upload label{flex:1;min-width:0}.post-attachment-upload input{max-width:100%}.attachment-picker{position:relative;display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.attachment-picker:focus-within{outline:2px solid var(--accent)}.attachment-picker input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.composer{flex-wrap:wrap}.composer textarea{flex:1;min-width:100px}.attachment-selection{flex-basis:100%;overflow-wrap:anywhere}.audit-filters{align-items:end}.audit-participants{display:flex;gap:20px;flex-wrap:wrap}.audit-person{display:flex;gap:12px;align-items:center;min-width:0}.audit-person .steam-avatar{--avatar-size:36px}.audit-person small{display:block;overflow-wrap:anywhere}.audit-entry summary{flex-wrap:wrap}.audit-entry pre{white-space:pre-wrap;overflow-wrap:anywhere}.audit-entry dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 16px}.audit-entry dd{margin:0;overflow-wrap:anywhere}@media(max-width:600px){.player-identifiers{grid-template-columns:1fr;gap:4px}.player-identifiers dd{margin-bottom:10px}.penalty-row .section-heading{flex-wrap:wrap;gap:8px}.composer{gap:8px}.composer textarea{flex-basis:calc(100% - 110px)}.audit-filters{grid-template-columns:1fr}.audit-entry dl{grid-template-columns:1fr}.audit-entry dd{margin-bottom:8px}}

.admin-action-selector{display:flex;gap:12px;align-items:end;margin-bottom:24px}.admin-action-selector label{display:grid;gap:8px;flex:1;min-width:0}.admin-action-selector select{width:100%}@media(max-width:600px){.admin-action-selector{flex-wrap:wrap}.admin-action-selector label{flex-basis:100%}.attachment-grid{grid-template-columns:1fr}}

/* Unified administration, compact records and publication media. */
.admin-shell-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 20px}.admin-shell-heading h1{margin:5px 0 0;font-size:30px}.access-caption{padding:6px 12px;border:1px solid var(--line);border-radius:7px;font-size:12px;color:var(--muted)}.admin-tabs,.admin-subtabs,.player-tabs{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);overflow:auto;scrollbar-width:thin;white-space:nowrap}.admin-tabs{gap:24px;margin-bottom:16px}.admin-tabs a{padding:12px 2px;color:var(--muted);font-weight:600;border-bottom:2px solid transparent}.admin-tabs a.active{border-color:var(--accent);color:var(--text)}.admin-subtabs{border:0;gap:6px;margin-bottom:25px;padding-bottom:3px}.admin-subtabs a,.player-tabs a{padding:7px 12px;color:var(--muted);font-size:13px;border-radius:7px}.admin-subtabs a.active,.player-tabs a.active{color:var(--accent);background:#bbf36b0d}.admin-section-title{font-size:24px;margin:18px 0 7px}.admin-tabs~.page-heading h2{margin:0}.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.overview-metric{display:grid;gap:8px;padding:22px;border:1px solid var(--line);background:#1b2225;border-radius:12px}.overview-metric>span{font-size:13px;color:var(--muted)}.overview-metric strong{font-size:34px;line-height:1.2}.overview-metric small{color:var(--subtle);font-size:12px}.overview-guide{margin-top:22px}.overview-guide p{max-width:780px;color:var(--muted)}.player-tabs{border:0;margin-bottom:-3px}.selected-player-header{padding-bottom:17px}.selected-player-header .selected-player{margin-bottom:15px}.player-selection-hint{min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.staff-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:22px;align-items:start}.staff-row{padding:18px 0;border-top:1px solid var(--line)}.staff-row:first-of-type{border:0}.staff-row .audit-person small{display:none}.staff-assignment{display:flex;justify-content:space-between;gap:14px;padding:10px 0;font-size:13px}.staff-assignment small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.staff-revoke summary{font-size:12px;color:var(--danger);cursor:pointer}.staff-revoke .form-stack{padding-top:12px}.permission-list{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.8}.role-preview{border:1px solid var(--line);padding:8px 14px;border-radius:8px}.compact-search{display:flex;gap:10px;align-items:end;margin:18px 0}.compact-search label{flex:1;display:grid;gap:6px;min-width:0}.staff-candidates{max-height:300px;overflow:auto;margin-bottom:20px}.news-editor-row{display:flex;align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.news-editor-row img{width:120px;aspect-ratio:2;object-fit:contain;background:#101719;border-radius:8px}.news-editor-row>span:nth-last-child(2){flex:1}.news-editor-row small{display:block;color:var(--muted);font-size:12px}.compact-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:20px 0}.compact-filters label{display:grid;gap:5px;font-size:11px;flex:1 1 135px;min-width:0}.compact-filters input,.compact-filters select{min-height:38px;padding:8px 10px;font-size:12px}.compact-filters .button{min-height:38px;padding:8px 14px;font-size:12px}.compact-filters .inline-actions{gap:12px;padding-bottom:1px}.compact-log{padding:0 18px}.punishment-columns,.punishment-summary{display:grid;grid-template-columns:minmax(125px,1.2fr) minmax(110px,1fr) minmax(140px,1.6fr) minmax(110px,1.1fr) minmax(115px,1fr) 80px;gap:14px;align-items:center}.punishment-columns{padding:14px 0;color:var(--subtle);font-size:10px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--line)}.punishment-item{border-bottom:1px solid var(--line)}.punishment-item:last-child{border:0}.punishment-summary{list-style:none;min-height:82px;padding:14px 0;font-size:12px;cursor:pointer}.punishment-summary::-webkit-details-marker,.personal-penalty::-webkit-details-marker{display:none}.punishment-summary>span,.personal-penalty>span{min-width:0}.punishment-summary small,.personal-penalty small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.punishment-person .audit-person{gap:10px}.punishment-person .audit-person .steam-avatar{--avatar-size:30px}.punishment-person .audit-person small{display:none}.punishment-person .audit-person strong{font-size:12px;overflow-wrap:anywhere}.punishment-reason{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.55}.punishment-summary .badge,.personal-penalty .badge{font-size:10px;justify-self:start}.punishment-detail{padding:0 0 18px;color:var(--muted);font-size:12px}.punishment-detail dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 18px}.punishment-detail dd{margin:0;overflow-wrap:anywhere}.personal-penalty{display:grid;grid-template-columns:minmax(120px,1fr) minmax(140px,2fr) 100px 80px;gap:15px;align-items:center;min-height:75px;padding:13px 0;font-size:12px;list-style:none;cursor:pointer}.topic-heading{margin-bottom:22px}.topic-heading h1{margin:10px 0 14px}.topic-byline{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:12px}.topic-byline .steam-avatar{--avatar-size:30px}.topic-banner{margin:0 0 24px;border:1px solid var(--line);border-radius:16px;overflow:visible;background:#101719}.topic-banner>a{display:block}.topic-banner>a>img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;border-radius:15px}.topic-banner figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 16px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}.banner-editor{position:relative}.banner-editor>summary{cursor:pointer;color:var(--accent)}.banner-editor>div{position:absolute;right:0;top:28px;width:300px;max-width:75vw;z-index:8;padding:16px;border:1px solid var(--line-strong);border-radius:12px;background:#232c30;box-shadow:0 12px 40px #0007}.banner-editor form{display:grid;gap:12px;margin-bottom:10px}.banner-editor label{display:grid;gap:6px}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;max-width:800px;margin:16px 0}.photo-gallery[data-count="1"]{max-width:420px}.photo-tile{margin:0;position:relative;min-width:0}.photo-tile>a{display:block;position:relative;border-radius:10px;overflow:hidden;background:#101719}.photo-tile img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .18s}.photo-tile>a:hover img{transform:scale(1.035)}.photo-expand{position:absolute;bottom:8px;right:8px;width:28px;height:28px;background:#0b0f12aa;border-radius:6px;text-align:center;line-height:28px;opacity:0}.photo-tile:hover .photo-expand,.photo-tile:focus-within .photo-expand{opacity:1}.photo-tools{position:absolute;top:8px;right:8px;z-index:3}.photo-tools>summary{display:grid;place-items:center;width:30px;height:28px;background:#11191ecc;border-radius:6px;cursor:pointer;list-style:none;font-size:22px;line-height:1}.photo-menu{position:absolute;right:0;top:33px;width:160px;background:#232b2f;border:1px solid var(--line-strong);border-radius:9px;padding:8px;box-shadow:0 12px 25px #0008}.photo-menu button{width:100%;text-align:left;font-size:12px;padding:7px}.message-files{margin:15px 0;display:grid;gap:8px}.message-file{display:flex;gap:10px;align-items:center;padding:11px 13px;border:1px solid var(--line);border-radius:8px;font-size:12px}.message-file>a{flex:1;min-width:0;overflow-wrap:anywhere}.message-file small{color:var(--muted)}.source-upload{margin-top:17px;font-size:12px;color:var(--muted)}.source-upload>summary{display:inline-flex;gap:7px;align-items:center;cursor:pointer;color:var(--accent)}.source-upload .icon{width:15px;height:15px}.source-upload input{font-size:12px}.photo-viewer{width:min(1280px,calc(100vw - 32px));max-width:none;height:min(900px,calc(100dvh - 32px));max-height:none;padding:0;background:#0c1013;border-radius:14px}.photo-viewer[open]{display:flex;flex-direction:column}.photo-viewer-toolbar{display:flex;align-items:center;gap:18px;padding:12px 18px;border-bottom:1px solid var(--line);font-size:12px}.photo-viewer-toolbar [data-photo-caption]{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--muted)}.photo-viewer-toolbar .icon-button{margin-left:0}.photo-viewer-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:18px 60px}.photo-viewer-stage>img{display:block;max-width:100%;max-height:100%;object-fit:contain}.photo-viewer-stage>button{position:absolute;top:calc(50% - 25px);width:40px;height:50px;border:0;border-radius:8px;background:#ffffff0a;color:white;font-size:34px}.photo-prev{left:10px}.photo-next{right:10px}.photo-viewer footer{padding:12px 18px;text-align:right;border-top:1px solid var(--line);font-size:12px}.featured-news{overflow:hidden;border-radius:14px;border:1px solid var(--line);background:#1b2225}.featured-news-visual{display:block;aspect-ratio:2/1;background:#101719;overflow:hidden}.featured-news-visual>img{width:100%;height:100%;object-fit:contain;display:block}.featured-news-content{padding:20px 24px}.featured-news-content h3{font-size:24px;line-height:1.3;margin:8px 0 14px}.featured-news-content>div{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px}.news-placeholder{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:radial-gradient(ellipse at top right,#78964022,transparent 75%),#1d282a;color:var(--accent);font-size:16px;letter-spacing:3px}.news-placeholder .icon{width:70px;height:70px}
@media(max-width:1250px){.punishment-columns,.punishment-summary{grid-template-columns:minmax(110px,1.2fr) minmax(95px,1fr) minmax(120px,1.4fr) minmax(95px,1fr) 110px 70px;gap:10px}.punishment-person .audit-person .steam-avatar{display:none}}
@media(max-width:1000px){.staff-workspace{grid-template-columns:1fr}.punishment-columns{display:none}.punishment-summary{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 90px;gap:8px 14px;padding:14px 0}.punishment-person .audit-person .steam-avatar{display:inline-block}.punishment-reason{grid-column:1/3;grid-row:2}.punishment-moderator{grid-column:1;grid-row:3}.punishment-term{grid-column:2/4;grid-row:3}.punishment-summary>.badge{grid-column:3;grid-row:1}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.admin-shell-heading{gap:10px}.admin-shell-heading h1{font-size:25px}.admin-shell-heading .eyebrow{font-size:8px}.access-caption{font-size:10px;padding:5px 7px}.admin-tabs{gap:20px}.admin-tabs a{font-size:13px}.admin-subtabs,.player-tabs{gap:2px}.admin-subtabs a,.player-tabs a{font-size:12px;padding:7px 9px}.compact-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-filters label:first-child{grid-column:1/-1}.compact-filters .inline-actions{grid-column:1/-1}.compact-log{padding:0 12px}.punishment-summary{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 65px;gap:9px 8px;font-size:11px}.punishment-person .audit-person{gap:8px}.punishment-person .audit-person strong{font-size:11px}.punishment-person .audit-person .steam-avatar{--avatar-size:27px}.punishment-summary small{font-size:10px}.punishment-summary .badge{font-size:9px;padding:3px 5px}.punishment-moderator .audit-person:before{content:'Выдал';font-size:9px;color:var(--muted)}.punishment-moderator .steam-avatar{display:none!important}.punishment-term{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;font-size:10px}.personal-penalty{grid-template-columns:minmax(0,1fr) 90px;gap:8px;padding:12px 0}.personal-penalty>.punishment-reason{grid-column:1/3;grid-row:2}.personal-penalty>span:nth-child(3){grid-column:1;grid-row:3;color:var(--muted)}.personal-penalty>.badge{grid-column:2;grid-row:1}.overview-metric{padding:16px}.overview-metric strong{font-size:27px}.overview-metric small{font-size:10px}.overview-metric>span{font-size:11px}.selected-player-header{padding:16px}.selected-player-header h2{font-size:20px}.staff-list,.staff-editor{min-width:0}.compact-search{flex-wrap:wrap}.compact-search label{flex-basis:100%}.topic-banner{border-radius:10px}.topic-banner>a>img{max-height:400px;border-radius:9px}.topic-byline{gap:8px;font-size:11px}.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.photo-gallery[data-count="1"]{grid-template-columns:1fr;max-width:100%}.photo-tools>summary{width:30px;height:30px}.photo-expand{opacity:1}.photo-viewer{width:calc(100vw - 16px);height:calc(100dvh - 16px)}.photo-viewer-stage{padding:8px 36px}.photo-viewer-stage>button{width:28px;height:42px;font-size:28px}.photo-prev{left:3px}.photo-next{right:3px}.photo-viewer-toolbar{gap:8px;padding:8px 10px}.featured-news-content{padding:16px}.featured-news-content h3{font-size:21px}.news-editor-row{gap:10px}.news-editor-row img{width:65px}.news-editor-row>span:last-child{font-size:11px}.banner-editor>div{right:-5px}}

.composer .attachment-picker{align-self:flex-end;margin:0}

@media(max-width:600px){.punishment-moderator{grid-column:1/-1;grid-row:3}.punishment-moderator .audit-person{flex-wrap:wrap}.punishment-term{grid-column:1/-1;grid-row:4}.punishment-summary>.badge{white-space:normal;line-height:1.3;max-width:100%}}

/* Publication covers: crop the preview, preserve the original in the viewer. */
.topic-banner{background:#11191c}
.topic-banner-stage{position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(280px,25vw,360px);overflow:hidden;border-radius:15px}
.topic-banner-image{position:absolute;inset:0;z-index:-2;display:block}
.topic-banner-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.topic-banner-stage:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#080e12f5 0%,#080e12b3 28%,#080e1233 62%,transparent 100%),linear-gradient(90deg,#080e124d,transparent 75%)}
.topic-banner-content{margin:0;padding:32px 36px;max-width:100%;pointer-events:none}
.topic-banner-content a{pointer-events:auto}
.topic-banner-content .eyebrow{color:#d5dfdf;text-shadow:0 1px 5px #0008}
.topic-banner-content h1{font-size:clamp(30px,3.2vw,44px);line-height:1.13;letter-spacing:-1.3px;max-width:30ch;margin:8px 0 18px;color:white;text-shadow:0 2px 16px #0005}
.topic-banner-content .topic-byline{color:#d3dcdf;gap:10px 14px}
.topic-banner-content .topic-byline>a:hover{color:white;text-decoration:underline;text-underline-offset:3px}
.banner-expand{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff30;border-radius:9px;background:#080e1280;color:white;backdrop-filter:blur(8px)}
.topic-banner-image:hover .banner-expand{background:#080e12bd;border-color:#ffffff70}
.topic-banner:has(figcaption) .topic-banner-stage{border-radius:15px 15px 0 0}

/* Keep the latest news and the server together in the first screen. */
.home-grid{--home-feature-height:350px;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);grid-template-areas:"news server" "topics visitors" "ranking visitors";gap:22px}
.home-news,.home-server{min-width:0}
.home-news>.section-heading,.home-server>.section-heading{min-height:28px;margin-bottom:14px}
.home-server .section-heading h2,.home-news .section-heading h2{font-size:19px}
.featured-news{position:relative;isolation:isolate;display:grid;align-items:end;min-height:var(--home-feature-height);background:#172125}
.featured-news-visual{position:absolute;inset:0;z-index:-2;aspect-ratio:auto;width:100%;height:100%;background:#172125}
.featured-news-visual>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.featured-news:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#080e12f5 0%,#080e12ad 27%,#080e1226 65%,transparent 100%)}
.featured-news-content{padding:28px;pointer-events:none}
.featured-news-content a{pointer-events:auto}
.featured-news-content .eyebrow{font-size:9px;color:#d1dcdf;margin-bottom:10px}
.featured-news-content h3{font-size:clamp(26px,2.5vw,34px);font-weight:700;line-height:1.15;letter-spacing:-.8px;max-width:28ch;margin:0 0 20px;color:white;text-shadow:0 2px 16px #0005}
.featured-news-content>div{align-items:center;color:#c3cfd4;font-size:11px;gap:12px}
.featured-news-content .text-link{font-size:12px;color:#e5ecef;white-space:nowrap}
.featured-news-content .text-link>span{margin-left:8px}
.featured-news-visual:focus-visible{outline-offset:-5px}
.news-placeholder{background:radial-gradient(ellipse at 85% 15%,#9ab96344,transparent 60%),linear-gradient(140deg,#1c3438,#18232a);align-items:flex-end;justify-content:flex-start;padding:32px}
.news-placeholder .icon{width:100px;height:100px;opacity:.22}
.home-server .server-card-home .server-card-main{min-height:var(--home-feature-height);padding:22px;gap:14px}
.home-server .server-card-home .server-title h1{font-size:34px;letter-spacing:-1px;max-width:none;margin:5px 0 0;line-height:1.05}
.home-server .server-title .eyebrow{font-size:9px;letter-spacing:2px}
.home-server .presence{font-size:11px;padding:6px 9px}
.home-server .server-description{font-size:12px;line-height:1.5}
.home-server .server-facts{gap:12px 22px}
.home-server .server-facts strong{font-size:14px}
.home-server .server-facts small{font-size:10px;margin-bottom:1px}
.home-server .server-actions{margin-top:auto;gap:8px}
.home-server .server-actions .play-button{min-height:40px;font-size:13px;padding:9px 12px}
.home-server .server-copy{min-height:34px;font-size:11px;padding:7px 10px}
.home-chat{position:sticky;top:98px;height:520px;max-height:calc(100dvh - 120px);min-height:320px}

@media(max-width:1100px){
    .home-grid{--home-feature-height:320px;gap:18px}
    .home-server .server-card-home .server-title h1{font-size:31px}
}
@media(max-width:760px){
    .home-grid{grid-template-columns:1fr;grid-template-areas:"news" "server" "topics" "visitors" "ranking"}
    .featured-news{min-height:250px}
    .featured-news-content{padding:22px}
    .featured-news-content h3{font-size:29px;max-width:24ch}
    .home-server .server-card-home .server-card-main{min-height:0;gap:14px}
    .home-server .server-actions{margin-top:2px}
    .home-chat{position:static;height:480px;min-height:0;max-height:75dvh}
    .topic-banner-content{padding:26px}
    .topic-banner-content h1{font-size:32px;letter-spacing:-.8px}
}
@media(max-width:480px){
    .topic-banner-stage{min-height:270px;border-radius:9px}
    .topic-banner:has(figcaption) .topic-banner-stage{border-radius:9px 9px 0 0}
    .topic-banner-content{padding:24px 20px}
    .topic-banner-content h1{font-size:28px;margin-bottom:16px}
    .topic-banner-content .eyebrow{font-size:8px;letter-spacing:1.6px}
    .topic-banner-content .topic-byline{gap:8px;font-size:10px}
    .topic-banner-content .topic-byline .steam-avatar{--avatar-size:25px}
    .banner-expand{top:14px;right:14px;width:32px;height:32px}
    .home-news>.section-heading,.home-server>.section-heading{margin-bottom:10px}
    .featured-news{min-height:230px}
    .featured-news-content{padding:20px}
    .featured-news-content h3{font-size:27px;margin-bottom:16px}
    .featured-news-content .eyebrow{font-size:8px;letter-spacing:1.5px}
    .featured-news-content>div,.featured-news-content .text-link{font-size:10px}
    .home-server .server-card-home .server-card-main{padding:20px;gap:12px}
    .home-server .server-card-home .server-title h1{font-size:30px}
}

/* Community publications, profile columns and the shared top-bar chat. */
.topic-post{--topic-post-bg:#191e21;position:relative;padding:0;overflow:visible;background:var(--topic-post-bg)}
.topic-post .topic-banner{margin:0;border:0;border-radius:15px 15px 0 0;overflow:hidden;background:var(--topic-post-bg)}
.topic-post .topic-banner-stage{border-radius:15px 15px 0 0;background:var(--topic-post-bg)}
.topic-post .topic-banner-image>img{mask-image:linear-gradient(#000 55%,transparent 94%)}
.topic-post .topic-banner-stage:after{background:linear-gradient(0deg,var(--topic-post-bg) 0%,var(--topic-post-bg) 8%,#191e21ed 20%,#191e21b3 38%,#191e2159 58%,#191e211a 78%,transparent 100%),linear-gradient(90deg,#10171940,transparent 75%)}
.topic-post-view>.topic-heading{padding:30px 36px 0;margin:0}
.topic-post-body{padding:28px 36px 32px}
.topic-post-body .photo-gallery{max-width:100%;margin-bottom:0}
.topic-actions{position:absolute;top:16px;right:16px;z-index:5}
.topic-actions>summary{display:grid;place-items:center;background:#111a20db;border:1px solid #ffffff30;border-radius:8px;width:38px;height:36px;color:white}
.topic-actions .message-menu{top:43px;min-width:220px}
.topic-post .topic-title{padding-right:32px}
.topic-editor{padding:28px 36px}
.edit-attachments{border:1px solid var(--line-strong);border-radius:10px;padding:12px 16px;min-width:0}
.edit-attachments legend{padding:0 6px;color:var(--muted);font-size:13px}
.edit-attachment{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0;font-size:13px}
.edit-attachment>a{overflow-wrap:anywhere;min-width:0}
.edit-attachment>span{display:flex;align-items:center;gap:6px;white-space:nowrap}
.edit-attachment input{width:16px;height:16px}
.markdown-hint{font-size:12px;margin:0}
.markdown-body{line-height:1.75;overflow-wrap:anywhere}
.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}
.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:1.1em 0 .5em;line-height:1.3}
.markdown-body h1{font-size:28px}.markdown-body h2{font-size:23px}.markdown-body h3{font-size:19px}
.markdown-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.markdown-body blockquote{margin:18px 0;padding:10px 18px;border-left:3px solid var(--accent);background:#ffffff04;color:var(--muted)}
.markdown-body blockquote p:last-child{margin:0}
.markdown-body pre{overflow:auto;max-width:100%;padding:16px;border-radius:8px;background:#0d1317;white-space:pre}
.markdown-body code{font-size:.9em;background:#ffffff07;border-radius:4px;padding:2px 5px}
.markdown-body pre code{padding:0;background:none}
.markdown-body img{max-width:100%;height:auto;border-radius:8px}
.markdown-body table{display:block;overflow:auto;margin:16px 0;max-width:100%}
.markdown-body li{margin:4px 0}.markdown-body hr{border:0;border-top:1px solid var(--line-strong);margin:24px 0}
.composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;flex-wrap:nowrap}
.composer textarea{min-width:0;width:100%;grid-column:1;resize:vertical;max-height:240px}
.composer-actions{display:flex;align-items:center;gap:8px;grid-column:2}
.composer-actions>.button,.composer-actions>.attachment-picker{width:44px;height:44px;min-height:44px;padding:10px;margin:0}
.composer>.attachment-selection{grid-column:1/-1;font-size:11px;margin:0}
.public-profile-hero{margin-bottom:22px}
.profile-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.profile-badges .badge{margin:0}
.public-profile-grid{align-items:start;margin-bottom:22px}
.profile-main,.profile-side{display:grid;gap:22px;align-content:start;min-width:0}
.public-profile-grid .panel{margin:0}
.home-visitors{grid-area:visitors;align-self:start;margin:0;position:sticky;top:98px}
.recent-visitors{display:grid;gap:0}
.recent-visitor{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);min-width:0}
.recent-visitor:last-child{border-bottom:0}
.visitor-avatar{position:relative;flex:none}.visitor-avatar .steam-avatar{--avatar-size:38px}
.visitor-avatar>.status-dot{position:absolute;bottom:0;right:0;box-shadow:0 0 0 3px var(--surface);width:8px;height:8px}
.visitor-info{display:grid;gap:4px;min-width:0;flex:1;font-size:13px}.visitor-info>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.visitor-badge:empty{display:none}.visitor-badge .badge{font-size:9px;padding:2px 6px}
.recent-visitor>small{font-size:10px;text-align:right;max-width:100px;flex:none}
/* Chat is one anchored control immediately before search. */
html{scrollbar-gutter:stable}
.utility-bar{backdrop-filter:none;background:#101619f5;column-gap:10px}
.utility-bar>.page-context{display:none}
.utility-actions{flex:none;margin-left:auto;gap:10px}
.top-chat{position:relative;flex:none;width:360px;min-width:0}
.chat-trigger{display:flex;align-items:center;gap:10px;position:relative;list-style:none;cursor:pointer;width:100%;height:42px;padding:9px 12px;border:1px solid #ffffff0d;border-radius:11px;background:#ffffff03;color:#aab6bd;font-size:13px;transition:background .18s,border-color .18s,color .18s}
.chat-trigger::-webkit-details-marker{display:none}
.chat-trigger:hover,.top-chat[open]>.chat-trigger{background:#bbf36b08;border-color:#bbf36b30;color:var(--text)}
.chat-ticker{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;white-space:nowrap;flex:1}
.chat-ticker strong{color:#e3ebe9;max-width:40%;text-overflow:ellipsis;overflow:hidden;font-weight:650}
.chat-ticker>span{min-width:0;text-overflow:ellipsis;overflow:hidden}
.chat-trigger-icon{display:none}.chat-arrow{font-size:17px;line-height:1;color:var(--accent);flex:none;margin-left:2px}
.chat-unread{width:7px;height:7px;flex:none;background:var(--accent);border-radius:50%;box-shadow:0 0 0 3px #16201b}
.top-chat.chat-compact{width:42px}
.chat-compact>.chat-trigger{width:42px;padding:9px;justify-content:center;border-color:transparent;background:transparent}
.chat-compact .chat-ticker,.chat-compact .chat-arrow{display:none}
.chat-compact .chat-trigger-icon{display:block}
.chat-compact .chat-unread{position:absolute;right:5px;top:5px}
.top-chat-panel{position:absolute;right:0;top:calc(100% + var(--chat-gap,16px));width:100%;height:min(560px,calc(var(--chat-viewport-height,100dvh) - var(--chat-top,var(--header)) - 16px));min-height:0;display:flex;flex-direction:column;gap:0;padding:8px 16px 12px;border:1px solid #ffffff20;border-radius:0 0 16px 16px;background:linear-gradient(155deg,#253038eb,#121c20ee);backdrop-filter:blur(22px) saturate(120%);box-shadow:0 24px 64px #0007,inset 0 1px #ffffff08;z-index:40;animation:chat-reveal .2s var(--ease);transform-origin:top right}
.top-chat-panel:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--chat-gap,16px)}
.top-chat:not([open])>.top-chat-panel{display:none}
.top-chat-panel [data-home-chat]{display:flex;flex-direction:column;flex:1;min-height:0}
.top-chat-panel [data-home-chat]>.message-feed{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 7px 0 0;scrollbar-color:#ffffff24 transparent;scrollbar-gutter:stable}
.top-chat-panel .message{padding:14px 0;gap:11px;border-color:#ffffff0a}
.top-chat-panel .message>.steam-avatar{--avatar-size:32px;flex:none;margin-top:2px}
.top-chat-panel .message-meta{gap:5px 8px;font-size:14px;line-height:1.45;padding-right:24px}
.top-chat-panel .message-meta>a{min-width:0;max-width:100%}.top-chat-panel .message-meta strong{font-weight:750;font-size:14px;letter-spacing:.1px}
.top-chat-panel .message-meta .badge{font-size:10.5px;padding:3px 6px;line-height:1.3;max-width:100%;white-space:normal}
.top-chat-panel .message-meta time{font-size:10px;white-space:nowrap;color:#84959f}
.top-chat-panel .user-text{font-size:14px;margin:6px 0 0;line-height:1.6;color:#d9e1e3}
.top-chat-panel .message-actions{right:-4px}
.top-chat-panel .message-actions>summary{min-width:26px;min-height:26px}
.top-chat-panel .message-actions[open]{z-index:6}
.top-chat-panel .message .message-menu{top:30px;bottom:auto;width:200px;max-width:calc(100vw - 70px);background:#202b31f5;border-color:#ffffff24;backdrop-filter:blur(16px)}
.top-chat-panel .message-actions.menu-above .message-menu{top:auto;bottom:30px}
.top-chat-panel .message-editor,.top-chat-panel .message-report{padding:12px;background:#101a1ebd}
.top-chat-panel .message-editor .inline-actions,.top-chat-panel .message-report .inline-actions{gap:8px;flex-wrap:wrap}
.top-chat-panel .composer{margin:0;padding-top:12px;border:0;gap:8px;flex:none}
.top-chat-panel .composer textarea{font-size:14px;line-height:1.5;min-height:44px;max-height:144px;resize:none;padding:10px 12px;border-radius:11px;background:#0b141780;border-color:#ffffff18;box-shadow:inset 0 1px 3px #0002}
.top-chat-panel .composer textarea:focus{border-color:#bbf36b55;background:#0b1417a6;outline:none;box-shadow:0 0 0 3px #bbf36b0b}
.top-chat-panel .composer-actions>.button{width:44px;height:44px;min-height:44px;border-radius:11px;box-shadow:none}
.top-chat-panel .composer-status:empty,.top-chat-panel .chat-refresh:empty{display:none}
.top-chat-panel .composer-status,.top-chat-panel .chat-refresh{font-size:12px;margin:8px 0 0;flex:none;color:var(--danger)}
.top-chat-panel .sign-in-hint{font-size:13px;margin:14px 0 2px;padding-top:14px;border-top:1px solid var(--line)}
.top-chat-panel .new-messages{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:7;background:#25352bf5;box-shadow:0 6px 20px #0004;white-space:nowrap}
.chat-history{align-self:center;font-size:11px;letter-spacing:.1px;padding:8px 8px 0;color:#8b9da5}
.chat-history>span{margin-left:3px;color:var(--accent)}
.chat-compact .top-chat-panel{position:fixed;left:0;right:0;top:var(--chat-top,var(--header));width:var(--chat-viewport-width,100vw);height:calc(var(--chat-viewport-height,100dvh) - var(--chat-top,var(--header)));max-height:none;border:0;border-top:1px solid #ffffff10;border-radius:0;padding:6px 18px max(14px,env(safe-area-inset-bottom));background:linear-gradient(160deg,#1e2a31f7,#0e171cf8);box-shadow:none;animation:chat-reveal .18s var(--ease)}
.chat-compact .top-chat-panel:before{display:none}
.chat-compact .top-chat-panel .composer{padding-top:12px}
body.chat-fullscreen{overflow:hidden}
.standalone-chat .message-feed{max-height:65dvh;overflow:auto}
.ticker-in{animation:chat-ticker-in .18s ease}
@keyframes chat-reveal{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes chat-ticker-in{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Covers carry the clan's identity, with no separate image box. */
.clan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:24px}
.clan-cover-card{display:flex;align-items:end;position:relative;isolation:isolate;min-width:0;min-height:320px;overflow:hidden;border:1px solid #ffffff16;border-radius:16px;background:radial-gradient(ellipse at 80% 10%,#42605466,transparent 70%),#17252b;transition:border-color .2s,box-shadow .2s}
.clan-cover-card:hover{border-color:#bbf36b55;box-shadow:0 10px 30px #0003;color:white}
.clan-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .4s var(--ease)}
.clan-cover-card:hover .clan-cover-image{transform:scale(1.025)}
.clan-cover-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071014f5 0%,#071014a6 34%,#07101414 75%),linear-gradient(90deg,#08121840,transparent);z-index:-1;pointer-events:none}
.clan-cover-fallback{position:absolute;right:20px;top:8px;color:#ffffff06;font-size:clamp(72px,9vw,160px);line-height:1;font-weight:800;letter-spacing:-8px;max-width:90%;overflow:hidden;white-space:nowrap;z-index:-2}
.clan-cover-copy{width:100%;min-width:0;padding:28px}
.clan-cover-tag{display:inline-flex;padding:5px 9px;border:1px solid #bbf36b42;border-radius:7px;background:#16251ed9;color:#d3f8a4;font-size:12px;font-weight:700;letter-spacing:1.4px;line-height:1.3}
.clan-cover-copy h3{font-size:clamp(25px,2.2vw,32px);line-height:1.15;letter-spacing:-.7px;color:white;margin:13px 0 16px;text-shadow:0 2px 12px #0004}
.clan-cover-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#c0ccd0}
.clan-cover-link{display:inline-flex;align-items:center;gap:9px;color:#d6eece;font-size:12px}
.clan-cover-own{position:absolute;right:20px;top:20px;background:#13201ddd!important;backdrop-filter:blur(12px)}
.profile-clan>h2{font-size:19px;margin:0 0 14px}
.profile-clan>.panel p{margin:0}
.clan-cover-profile{min-height:300px}
.clan-cover-profile .clan-cover-copy{padding:28px 30px}
.clan-hero.clan-cover-hero{display:flex;align-items:end;min-height:clamp(340px,29vw,440px);padding:36px;border-radius:18px;background:radial-gradient(ellipse at 75% 20%,#3d594e66,transparent 65%),#17252b}
.clan-hero.clan-cover-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#081116f2,#08111666 46%,#0811160a 85%);z-index:-1}
.clan-cover-hero .clan-heading{width:100%;gap:24px;align-items:end}
.clan-cover-hero .clan-emblem{width:80px;height:80px;background:#10201bc9;border-color:#bbf36b55;border-radius:18px;font-size:21px;backdrop-filter:blur(14px)}
.clan-cover-hero .clan-heading h1{font-size:clamp(34px,3.4vw,48px);letter-spacing:-1.3px;margin:4px 0 12px;line-height:1.12;text-shadow:0 2px 14px #0005}
.clan-cover-hero .clan-heading .eyebrow{color:#d1ddd9;font-size:10px;letter-spacing:2px}
.clan-cover-hero .clan-heading .muted{color:#cad7d9;font-size:13px}
.clan-content{max-width:none}

/* Keep profile and community boxes aligned at every width. */
.public-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.public-stats article{padding:18px;min-height:116px}
.public-stats article:first-child{grid-column:auto}
.public-stats article:last-child{grid-column:span 2}
.public-stats strong{font-size:27px;margin-top:10px}
.profile-badges .badge{font-size:12px;padding:5px 9px}
.visitor-badge .badge{font-size:10px;padding:3px 6px}
.xp-label{flex-wrap:wrap;gap:4px 16px}
.topic-report{padding:0 36px 28px}
@media(max-width:1100px){.home-visitors{position:static}.profile-main,.profile-side{gap:18px}.public-profile-grid{gap:18px}.clan-grid{gap:18px}.clan-cover-card{min-height:300px}}
@media(max-width:760px){.clan-grid{grid-template-columns:1fr}.clan-cover-card{min-height:310px}.clan-cover-hero .clan-heading{align-items:start}.public-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .utility-bar{gap:8px}.utility-actions{gap:4px}.utility-profile{padding-left:2px}.utility-wallet{margin:0 2px;padding:0 8px}
  .chat-trigger{font-size:12px;gap:7px;padding:9px 10px}.chat-compact>.chat-trigger{padding:9px}
  .topic-post-view>.topic-heading{padding:24px 20px 0}.topic-post-body,.topic-editor{padding:22px 20px}.topic-post .topic-banner,.topic-post .topic-banner-stage{border-radius:12px 12px 0 0}.topic-actions{right:10px;top:10px}.edit-attachment{align-items:start}.topic-report{padding:0 20px 22px}
  .composer{gap:8px}.composer-actions{gap:6px}.composer-actions>.button,.composer-actions>.attachment-picker{width:40px;padding:8px}
  .profile-badges{margin-top:12px}.public-profile-grid{grid-template-columns:1fr}.profile-main,.profile-side{gap:18px}.public-profile-grid:has(.profile-side:empty){gap:0}
  .clan-cover-card,.clan-cover-profile{min-height:280px;border-radius:13px}.clan-cover-copy,.clan-cover-profile .clan-cover-copy{padding:24px}.clan-cover-copy h3{font-size:29px;margin-top:12px}.clan-cover-own{top:16px;right:16px}
  .clan-hero.clan-cover-hero{min-height:320px;padding:24px;border-radius:14px}.clan-cover-hero .clan-heading{gap:16px;align-items:start;flex-direction:column}.clan-cover-hero .clan-emblem{width:60px;min-width:60px;height:60px;border-radius:14px;font-size:16px}.clan-cover-hero .clan-heading h1{font-size:36px;letter-spacing:-.8px;margin-bottom:10px}.clan-cover-hero .clan-heading .eyebrow{display:none}
  .public-stats article{padding:15px;min-height:108px}.public-stats strong{font-size:24px}
}
@media(max-width:360px){.utility-bar{gap:4px}.utility-actions{gap:2px}.utility-wallet{padding:0 6px}.clan-cover-copy,.clan-cover-profile .clan-cover-copy{padding:20px}.clan-cover-link{font-size:11px}.clan-cover-footer{gap:8px}.clan-cover-card{min-height:260px}}
@media(prefers-reduced-motion:reduce){.ticker-in,.top-chat-panel{animation:none}.clan-cover-card .clan-cover-image{transition:none}}

.topic-author{display:flex;align-items:center;gap:10px;min-width:0;max-width:100%}
.topic-author-copy{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;min-width:0}
.topic-author-name{font-size:15px;font-weight:750;color:var(--text);overflow-wrap:anywhere}
.topic-author-role{display:flex;min-width:0;max-width:100%}.topic-author-role .badge{font-size:11px;white-space:normal}
.topic-banner-content .topic-author-name{color:white}.topic-banner-content .topic-author a{pointer-events:auto}
@media(max-width:600px){.top-chat-panel .message-meta strong{font-size:15px}.topic-author-copy{gap:4px 8px}.topic-author-name{font-size:15px}.topic-author-role .badge{font-size:10px}.topic-byline>.topic-author{flex:1 1 auto}.topic-byline>time{flex:none}}

.message-role{display:inline-flex;min-width:0;max-width:100%}
.chat-compact .message-meta .message-role{order:3;flex-basis:100%}
.chat-compact .message-meta>time{margin-left:auto}

@media(min-width:601px) and (max-width:900px){.utility-profile-name,.utility-profile>.icon{display:none}.utility-profile{padding-left:2px}}

@media(max-width:600px){.message-meta .message-role{order:3;flex-basis:100%}.message-meta>time{margin-left:auto}}

.clan-grid:has(>.clan-cover-card:only-child){grid-template-columns:1fr}
.clan-grid>.clan-cover-card:only-child{min-height:360px}
@media(max-width:600px){.clan-grid>.clan-cover-card:only-child{min-height:300px}}

/* Clan content uses the page surface, with one tab label above the roster. */
.clan-hero.clan-cover-hero{border:0;border-radius:0}.clan-content{max-width:none}.clan-members{padding:0 0 24px}.clan-members table{background:transparent}.clan-members thead{background:transparent}.clan-members th{padding-top:8px;color:var(--subtle)}.clan-members .identity strong{font-size:15px;font-weight:750}
.master-code-field small{display:block;margin-top:8px}.master-code-dialog h2{font-size:22px}.master-code-dialog label{display:grid;gap:8px}.master-code-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:8px 16px;margin:20px 0;font-size:13px}.master-code-summary dt{color:var(--muted)}.master-code-summary dd{margin:0;overflow-wrap:anywhere}.master-code-dialog .dialog-actions{flex-wrap:wrap}
.content-description { white-space: pre-line; overflow-wrap: anywhere; }
.offer-content .offer-description {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden;
}
.offer-skills { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.offer-skills img { width: 28px; height: 28px; object-fit: contain; border-radius: 6px; background: var(--surface); }
.offer-pricing { margin-top: auto; margin-bottom: 18px; }
.offer-pricing .price { margin: 0; }
.offer-pricing s, .store-dialog .purchase-price s { color: var(--muted); font-size: 13px; font-weight: 400; }
.offer-content .offer-discount-until, .store-dialog .offer-discount-until { margin: 6px 0 0; color: var(--muted); font-size: 12px; }
.offer-art .offer-discount, .purchase-art .offer-discount { position: absolute; top: 14px; left: auto; right: 14px; background: var(--accent); color: var(--bg); }
.purchase-art { position: relative; min-width: 0; }
.purchase-art > img { display: block; width: 100%; height: 210px; object-fit: contain; background: #ffffff02; border: 1px solid var(--line); border-radius: 12px; }
.store-dialog .dialog-header h2, .store-dialog .purchase-total { min-width: 0; overflow-wrap: anywhere; }
.store-dialog .purchase-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.purchase-steam-id { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.purchase-steam-id code { user-select: all; overflow-wrap: anywhere; }
@media (max-width: 600px) {
    .purchase-art > img { height: 150px; }
    .store-dialog .purchase-total .list-row { flex-wrap: wrap; gap: 8px; }
    .store-dialog .purchase-total .button { white-space: normal; text-align: center; }
}
.purchase-details > div, .content-skill > div { min-width: 0; overflow-wrap: anywhere; }
.content-facts { margin: 16px 0; font-size: 13px; }
.content-facts > div { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 8px 0; }
.content-facts dt { color: var(--muted); }
.content-facts dd { margin: 0; }
.content-facts dd::before { content: "— "; }
.content-skills { border-top: 1px solid var(--line); margin-top: 18px; padding-top: 16px; }
.purchase-details .content-skills h3 { font-size: 17px; }
.content-skill { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; margin-top: 16px; }
.content-skill > img { width: 48px; height: 48px; object-fit: contain; border-radius: 8px; background: var(--surface); }
.content-skill h4 { margin: 0 0 4px; font-size: 15px; }
.content-skill small { font-size: 12px; }
.purchase-details .content-skill p { margin: 6px 0 0; }
