
:root{
  --roblox-blue:#0074bd;
  --roblox-blue2:#168bd2;
  --roblox-dark:#222426;
  --page:#e7e7e7;
  --line:#c8c8c8;
  --light-line:#dedede;
  --text:#343434;
  --muted:#777;
  --green:#14a74b;
  --red:#c93232;
  --orange:#f7941d;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--page);font-size:14px}
a{color:#0074bd;text-decoration:none}a:hover{text-decoration:underline}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
[hidden]{display:none!important}

.site-header,.guest-header{height:45px;background:linear-gradient(#168bd2,#0074bd);border-bottom:1px solid #075b91;color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.header-inner,.guest-header-inner{height:100%;max-width:1180px;margin:auto;display:flex;align-items:center;padding:0 10px;gap:10px}
.menu-glyph{border:0;background:transparent;color:#fff;font-size:20px;width:28px;padding:0}
.site-brand{color:#fff!important;text-decoration:none!important;flex:none}
.legacy-brand{display:flex;align-items:center;gap:7px;font-size:17px;letter-spacing:.3px}
.legacy-mark{display:grid;place-items:center;width:25px;height:25px;background:#fff;color:#0074bd;font-weight:900;transform:rotate(-5deg);border-radius:1px}
.site-nav{height:100%;display:flex;align-items:stretch}
.site-nav a{display:flex;align-items:center;color:#fff;padding:0 11px;border-left:1px solid rgba(255,255,255,.08);font-weight:500;text-shadow:0 1px rgba(0,0,0,.2);text-decoration:none}
.site-nav a:hover,.site-nav a.active{background:rgba(0,0,0,.16)}
.header-search{margin-left:auto;display:flex;width:220px}
.header-search input{height:27px;border:1px solid #07679f;background:#fff;padding:4px 8px;width:100%;margin:0;border-radius:1px 0 0 1px}
.header-search button{height:27px;width:32px;border:1px solid #07679f;border-left:0;background:#fff;color:#666}
.account-nav{display:flex;align-items:center;gap:10px;margin-left:8px}
.mini-identity{display:flex;align-items:center;gap:6px;color:#fff!important;text-decoration:none!important}
.mini-avatar{width:27px;height:27px;background:#d0d0d0;color:#555;border:1px solid rgba(255,255,255,.5);display:grid;place-items:center;font-size:11px;font-weight:bold;overflow:hidden}
.mini-avatar img{width:100%;height:100%;object-fit:cover}
.mini-identity span:last-child{display:flex;flex-direction:column;line-height:1}.mini-identity b{font-size:12px;color:#fff!important}.mini-identity small{font-size:9px;color:#d8edf9;margin-top:2px}
.manage-link,.text-button{color:#fff!important;font-size:11px}
.text-button{border:0;background:none;padding:0}
.guest-links{margin-left:auto;font-size:12px;color:#e9f7ff}

.blackout-banner{width:100%;background:#151515;color:#fff;border-bottom:2px solid #000;position:relative;z-index:40}
.blackout-banner.scheduled{background:#242424}.blackout-banner.active{background:#8b0000}
.blackout-banner-inner{max-width:1180px;margin:auto;padding:8px 12px;display:flex;align-items:center;gap:15px}
.blackout-banner strong{font-size:12px;letter-spacing:.5px}.blackout-banner span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.blackout-banner b{font-size:12px}.blackout-banner a{background:#fff;color:#222;padding:4px 8px;border-radius:2px;font-size:11px}

.legacy-page{max-width:1040px;margin:0 auto;padding:22px 10px 50px}
.legacy-title-row{display:flex;align-items:baseline;gap:12px;margin-bottom:13px}
.legacy-title-row h1{font-size:25px;font-weight:400;margin:0}.legacy-title-row span,.legacy-title-row p{color:#777;margin:0}
.legacy-box{background:#fff;border:1px solid #c9c9c9;margin-bottom:18px;box-shadow:0 1px 1px rgba(0,0,0,.08)}
.box-head{height:36px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d3d3d3;background:linear-gradient(#fff,#f5f5f5)}
.box-head h2{font-weight:400;font-size:18px;margin:0}.box-body{padding:13px}
.see-all{background:#168bd2;color:#fff!important;padding:5px 13px;font-size:11px;text-decoration:none!important;border:1px solid #0d75b3}.buttonish{font:inherit}
.loading,.empty-panel{color:#777;padding:18px;text-align:center}

.profile-hello{display:flex;gap:16px;align-items:center;margin-bottom:14px}
.profile-hello h1{font-size:27px;font-weight:400;margin:0 0 5px}.profile-hello p{margin:5px 0;color:#777}
.big-avatar{width:82px;height:82px;background:#cfcfcf;border:1px solid #aaa;display:grid;place-items:center;font-size:25px;font-weight:bold;overflow:hidden}
.big-avatar img{width:100%;height:100%;object-fit:cover}.rank-inline{font-size:12px;font-weight:bold}

.tile-strip{display:flex;gap:8px;padding:10px;overflow:auto;min-height:126px}.tile-strip.wrap{flex-wrap:wrap;overflow:visible}
.friend-tile,.person-tile{width:105px;flex:none;text-align:center;color:#444;text-decoration:none!important}
.tile-avatar{width:82px;height:82px;background:#ddd;border:1px solid #c2c2c2;display:grid;place-items:center;margin:0 auto 5px;font-size:17px;font-weight:bold;overflow:hidden}
.tile-avatar img{width:100%;height:100%;object-fit:cover}
.friend-tile b,.person-tile b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}
.friend-tile small,.person-tile small{display:block;font-size:9px;color:#888;margin-top:2px}
.friend-tile small:first-letter{color:#14a74b}

.activity-strip{display:flex;gap:8px;padding:10px;overflow:auto}
.activity-card{width:145px;flex:none;color:#444;text-decoration:none!important}
.activity-thumb{height:82px;background:linear-gradient(135deg,#111,#3a3a3a);border:1px solid #222;display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:1px;margin-bottom:5px}
.activity-card b{display:block;font-size:11px}.activity-card small{display:block;color:#777;height:28px;overflow:hidden;font-size:9px}.activity-card em{font-style:normal;font-size:9px;color:#999}
.home-columns{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.stat-list{padding:10px}.stat-list div{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid #eee}.stat-list b{font-size:18px}.stat-list span{color:#777}
.announcement{padding:10px;border-bottom:1px solid #eee}.announcement:last-child{border-bottom:0}.announcement h3{margin:0 0 4px;font-size:14px}.announcement p{margin:0 0 5px}.announcement small{color:#888;font-size:10px}

.login-main{min-height:calc(100vh - 45px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px}
.login-card{width:390px;max-width:100%;background:#fff;border:1px solid #bbb;padding:24px;box-shadow:0 1px 4px rgba(0,0,0,.2)}
.login-card h1{text-align:center;font-size:23px;font-weight:400;margin:0 0 5px}.login-subtitle{text-align:center;color:#777;font-size:12px}
.login-tabs{display:flex;margin:18px 0;border-bottom:1px solid #ccc}.login-tab{flex:1;border:0;background:#f3f3f3;padding:9px;border-top:1px solid #ccc;border-left:1px solid #ccc}.login-tab:last-child{border-right:1px solid #ccc}.login-tab.active{background:#fff;color:#0074bd;border-bottom:2px solid #fff;font-weight:bold}
.auth-form{display:none}.auth-form.active{display:block}label{display:block;margin:11px 0;color:#555;font-weight:bold;font-size:12px}
input,textarea,select{border:1px solid #aaa;background:#fff;color:#333;padding:7px 8px;margin-top:4px;width:100%;border-radius:0}
input:focus,textarea:focus,select:focus{outline:1px solid #168bd2;border-color:#168bd2}
textarea{resize:vertical;min-height:80px}
.rbx-button,.legacy-blue{background:#168bd2;color:#fff;border:1px solid #0874b4;padding:7px 15px;border-radius:0;font-weight:normal}
.rbx-button:hover,.legacy-blue:hover{background:#0b7fc2}.rbx-button.red{background:#c93232;border-color:#9f2020}
.login-card .rbx-button{width:100%;margin-top:8px}.form-status{font-size:11px;color:#b42020;min-height:16px}.form-alert{background:#fff2f2;border:1px solid #e2a7a7;color:#9f2020;padding:8px;font-size:11px}.login-footer{font-size:10px;color:#999}

.legacy-chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px}
.chat-card,.member-card{margin:0}.chat-toolbar{height:36px;background:#f5f5f5;border-bottom:1px solid #ccc;padding:0 10px;display:flex;align-items:center;justify-content:space-between}.live-dot{font-size:10px;color:#10a044}
.messages{height:500px;overflow:auto;background:#fff}
.message{display:flex;gap:8px;padding:8px 10px;border-bottom:1px solid #eee}.message:hover{background:#f9f9f9}
.message-avatar,.member-avatar{width:38px;height:38px;flex:none;background:#ddd;border:1px solid #bbb;display:grid;place-items:center;overflow:hidden;font-size:11px;font-weight:bold}.message-avatar img,.member-avatar img{width:100%;height:100%;object-fit:cover}
.message-main{flex:1;min-width:0}.message-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.message-name{font-weight:bold}.role-badge{font-size:8px;border:1px solid currentColor;padding:1px 3px}.message-time{font-size:9px;color:#999}.message-text{margin-top:4px;white-space:pre-wrap;word-break:break-word}.message-actions{display:none;margin-top:5px;gap:7px}.message:hover .message-actions{display:flex}.message-actions button{font-size:9px;border:0;background:none;color:#777;padding:0}.reply-preview{font-size:10px;color:#777;border-left:2px solid #999;padding-left:6px;margin:3px 0}
.chat-compose{display:flex;gap:6px;padding:8px;background:#f5f5f5;border-top:1px solid #ccc;align-items:flex-end}.chat-compose textarea{margin:0;min-height:38px}.chat-compose button{width:75px}
.member-card .box-head{height:36px}.member-card .search-input{width:calc(100% - 16px);margin:8px}.members-list{max-height:500px;overflow:auto}.member-row{display:flex;align-items:center;gap:7px;padding:6px 8px;color:#444;text-decoration:none!important;border-bottom:1px solid #eee}.member-info{min-width:0;flex:1}.member-info b,.member-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-info small{font-size:9px;color:#888}.online-indicator{width:7px;height:7px;border-radius:50%;background:#bbb}.online-indicator.on{background:#11ac51}

.legacy-assembly-hero{background:#fff;border:1px solid #c9c9c9;padding:15px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}.legacy-assembly-hero h1{font-size:25px;font-weight:400;margin:2px 0}.legacy-assembly-hero p{color:#777;margin:0}
.rank-pill,.profile-role{border:1px solid var(--rank);color:var(--rank);padding:4px 7px;font-size:10px}
.proposals-card{margin-top:14px}.proposal-form{padding:10px;background:#f6f6f6;border-bottom:1px solid #ddd;display:grid;gap:7px}.proposal-form input,.proposal-form textarea,.proposal-form select{margin:0}
.motion{margin:10px;border:1px solid #ccc;padding:10px}.motion h3{margin:6px 0;font-size:15px}.motion p{margin:5px 0}.motion-meta,.vote-counts{font-size:10px;color:#777}.vote-row{display:flex;gap:5px;margin-top:8px;flex-wrap:wrap}.status-chip{font-size:8px;background:#eee;border:1px solid #ccc;padding:2px 4px}
.vote-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:9px}.vote-group{border:1px solid #ddd;background:#fafafa;min-height:55px}.vote-group strong{display:block;padding:4px 6px;color:#fff;font-size:10px}.vote-group.yes strong{background:#20a84f}.vote-group.no strong{background:#ce3333}.vote-group.abstain strong{background:#777}.voter-chips{padding:5px;display:flex;flex-wrap:wrap;gap:3px}.voter-chip{font-size:9px;background:#fff;border:1px solid #ccc;padding:2px 4px}

.election-card,.info-card{padding:10px}.election-header{display:flex;justify-content:space-between}.election-header h2{margin:0;font-size:18px}.election-meta{font-size:10px;color:#777}.candidate-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.candidate{width:180px;border:1px solid #ccc;padding:8px}.candidate-top{display:flex;gap:6px}.candidate-votes{font-size:22px;font-weight:bold}.candidate-voter-list{font-size:9px;color:#777;margin-top:5px;max-height:40px;overflow:auto}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.steps div{border:1px solid #ddd;padding:8px}.steps b{color:#168bd2;margin-right:5px}

.blackout-card{padding:12px}.blackout-status{display:inline-block;padding:3px 6px;font-size:10px;color:#fff;background:#555}.blackout-status.open{background:#168bd2}.blackout-status.approved{background:#14a74b}.blackout-status.scheduled{background:#f7941d}.blackout-status.active{background:#9b0000}.blackout-status.rejected,.blackout-status.completed{background:#777}
.blackout-reason{font-size:17px;margin:10px 0}.blackout-meta{font-size:10px;color:#777}.blackout-vote-buttons{display:flex;gap:6px;margin:10px 0}.blackout-schedule{border-top:1px solid #ddd;padding-top:10px;margin-top:10px}.blackout-schedule-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:end}.blackout-history{padding:8px}.history-row{border-bottom:1px solid #eee;padding:8px}.history-row:last-child{border-bottom:0}

.people-search{padding:10px;display:flex;gap:6px}.people-search input{margin:0}.people-search button{width:90px}
.request-list{padding:8px}.request-row{display:flex;align-items:center;gap:8px;border-bottom:1px solid #eee;padding:8px}.request-row:last-child{border-bottom:0}.request-actions{margin-left:auto;display:flex;gap:5px}
.person-tile .tile-actions{display:flex;justify-content:center;gap:3px;margin-top:4px}.person-tile button{font-size:9px;padding:3px 5px}

.dm-layout{display:grid;grid-template-columns:280px 1fr;gap:12px}.dm-sidebar,.dm-main{margin:0}.dm-thread{display:flex;gap:7px;padding:8px;border-bottom:1px solid #eee;color:#444;text-decoration:none!important}.dm-thread.active{background:#e6f3fb}.dm-thread-copy{min-width:0;flex:1}.dm-thread-copy b,.dm-thread-copy span,.dm-thread-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-thread-copy span{font-size:10px;color:#777}.dm-thread-copy small{font-size:9px;color:#999}.unread-badge{background:#d21d2b;color:#fff;border-radius:8px;padding:2px 5px;font-size:9px}
.dm-messages{height:470px;overflow:auto;padding:10px;background:#fafafa}.dm-message{display:flex;margin:6px 0}.dm-message.mine{justify-content:flex-end}.dm-bubble{max-width:72%;padding:7px 9px;background:#fff;border:1px solid #ccc}.dm-message.mine .dm-bubble{background:#dff1ff;border-color:#9bccea}.dm-bubble small{display:block;color:#999;font-size:8px;margin-top:3px}.dm-compose{display:flex;gap:6px;padding:8px;border-top:1px solid #ccc;background:#f5f5f5}.dm-compose textarea{margin:0;min-height:42px}.dm-compose button{width:75px}

.profile-layout{display:grid;grid-template-columns:300px 1fr;gap:14px}.profile-preview,.profile-editor{padding:15px}.profile-preview{text-align:center}.profile-avatar{width:130px;height:130px;margin:0 auto 10px;background:#ddd;border:1px solid #bbb;display:grid;place-items:center;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-editor .box-head{margin:-15px -15px 12px}
.legacy-profile{background:#fff;border:1px solid #ccc;padding:18px;display:flex;gap:20px}.profile-big{width:150px;height:150px}.legacy-profile-info h1{font-size:27px;font-weight:400;margin:0 0 5px}.profile-actions{display:flex;gap:6px;margin-top:13px}

.management-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.table-wrap{overflow:auto;padding:8px}table{width:100%;border-collapse:collapse;font-size:11px}th,td{padding:7px;border:1px solid #ddd;text-align:left}th{background:#f3f3f3}.action-row{display:flex;gap:4px}.mini{border:1px solid #aaa;background:#f6f6f6;padding:4px 6px;font-size:9px}.mini.red{color:#b42020}.stack-form,.settings-form{padding:10px;display:grid;gap:6px}.stack-form input,.settings-form input{margin:0}.check-row{display:flex;align-items:center;gap:6px}.check-row input{width:auto}
.report-row,.ban-row{padding:8px;border-bottom:1px solid #eee}

@media(max-width:900px){
 .site-nav{display:none}.header-search{display:none}.account-nav{margin-left:auto}.legacy-page{padding:14px 8px 40px}
 .home-columns,.legacy-chat-layout,.dm-layout,.profile-layout,.management-grid{grid-template-columns:1fr}
 .stats-grid{grid-template-columns:1fr 1fr}.member-card{order:-1}.members-list{max-height:180px}.dm-sidebar{max-height:230px;overflow:auto}
 .steps{grid-template-columns:1fr 1fr}
}
@media(max-width:580px){
 .mini-identity span:last-child,.manage-link{display:none}.blackout-banner-inner{gap:7px}.blackout-banner span{display:none}
 .profile-hello{align-items:flex-start}.tile-strip{padding:7px}.friend-tile,.person-tile{width:88px}.tile-avatar{width:70px;height:70px}
 .vote-groups{grid-template-columns:1fr}.blackout-schedule-grid{grid-template-columns:1fr}
}
