:root{--color-bg:#1a1a2e;--color-surface:#2a2a3e;--color-border:#446;--color-accent:#9519fa;--color-accent-hover:#7c13d1;--color-accent-dim:#9519fa22;--color-text-muted:#aac;--color-error:#ff6b6b}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-header{color:#fff;box-sizing:border-box;background-color:#1a1a2e;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:calc(100vh - 52px);padding:32px 16px;font-size:calc(8px + 1vmin);display:flex;overflow-y:auto}.App-title{margin-bottom:8px}.status-card{background-color:#1e1e38;border:1px solid #335;border-radius:8px;flex-direction:column;align-items:center;gap:12px;min-width:180px;padding:16px 24px;display:flex}.status-row{align-items:center;gap:16px;display:flex}.steve-image{border-radius:8px;width:100%;max-width:320px}.mod-section{color:#fff;background-color:#1e1e38;border:1px solid #335;border-radius:8px;flex-direction:column;gap:10px;min-width:260px;padding:16px 24px;display:flex}.mod-section-title{color:#aac;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.95em}.mod-latest{justify-content:space-between;align-items:center;display:flex}.mod-version{font-size:1.05em;font-weight:700}.mod-download{color:#9519fa;font-size:.85em;text-decoration:none}.mod-download:hover{text-decoration:underline}.mod-meta{color:#888;margin:0;font-size:.85em}.mod-notes{color:#aaa;white-space:pre-wrap;margin:0;font-size:.85em;line-height:1.5}.mod-publish-form{border-top:1px solid #335;flex-direction:column;gap:8px;margin-top:4px;padding-top:10px;display:flex}.mod-publish-form input{color:#fff;box-sizing:border-box;background-color:#12122a;border:1px solid #446;border-radius:4px;outline:none;width:100%;padding:8px 10px;font-size:.85em}.mod-publish-form input:focus,.mod-publish-form textarea:focus{border-color:#9519fa}.mod-publish-form textarea{color:#fff;box-sizing:border-box;resize:vertical;background-color:#12122a;border:1px solid #446;border-radius:4px;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:.85em}.mod-publish-form button{color:#fff;cursor:pointer;background-color:#9519fa;border:none;border-radius:4px;padding:8px;font-size:.85em;transition:background-color .2s}.mod-publish-form button:hover{background-color:#7c13d1}.mod-publish-form button:disabled{opacity:.5;cursor:default}.mod-message{color:#aac;margin:0;font-size:.82em}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.status-circle{vertical-align:middle;border-radius:50%;width:12px;height:12px;margin-left:8px;display:inline-block}.status-circle--pulsing{animation:1.2s ease-in-out infinite dot-pulse}.status-error{color:#ff6b6b;margin:0;font-size:.85em}.status-card p{margin:0}.mc-info{flex-direction:column;align-items:center;gap:10px;font-size:.95em;display:flex}.mc-info p{margin:0}.mc-info-motd{color:#aaa;font-size:.9em;font-style:italic}.mc-info-players{color:#ddd}.mc-info-player-list{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mc-info-player-list li{color:#ccc;background:#3a3a5e;border-radius:4px;padding:2px 8px;font-size:.85em}.mc-info-loading,.mc-info-error{color:#888;margin:0;font-size:.9em}.page{background-color:var(--color-bg);box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.form-card{background-color:var(--color-surface);border:2px solid var(--color-border);color:#fff;border-radius:8px;flex-direction:column;gap:12px;width:100%;max-width:400px;padding:32px 40px;font-family:sans-serif;display:flex}.form-card h2{margin:0 0 8px;font-size:1.3em}.form-card form{flex-direction:column;gap:10px;display:flex}.form-card label{color:var(--color-text-muted);margin-bottom:2px;font-size:.85em}.form-card input[type=email],.form-card input[type=password],.form-card input[type=text]{background-color:var(--color-bg);border:1px solid var(--color-border);color:#fff;box-sizing:border-box;border-radius:4px;outline:none;width:100%;padding:10px 12px;font-size:.95em}.form-card input:focus{border-color:var(--color-accent)}.form-card button[type=submit]{background-color:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:5px;margin-top:8px;padding:12px;font-size:1em;transition:background-color .25s}.form-card button[type=submit]:hover{background-color:var(--color-accent-hover)}.form-card button[type=submit]:disabled{opacity:.5;cursor:default}.form-error{color:var(--color-error);margin:0;font-size:.85em}.form-success{color:#5f5;margin:0;font-size:.85em}.form-hint{color:var(--color-text-muted);margin:0;font-size:.82em}.form-footer{color:var(--color-text-muted);text-align:center;margin:0;font-size:.82em}.form-footer a{color:var(--color-accent);text-decoration:none}.form-footer a:hover{text-decoration:underline}.toggle-row{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.toggle{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{background-color:var(--color-border);cursor:pointer;border-radius:26px;transition:background-color .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;bottom:3px;left:3px}.toggle input:checked+.toggle-slider{background-color:var(--color-accent)}.toggle input:checked+.toggle-slider:before{transform:translate(22px)}.toggle input:disabled+.toggle-slider{opacity:.5;cursor:default}.mr-page{background-color:var(--color-bg);box-sizing:border-box;color:#fff;min-height:100vh;padding:32px 16px;font-family:sans-serif}.mr-content{flex-direction:column;gap:24px;max-width:680px;margin:0 auto;display:flex}.mr-content h2{margin:0 0 4px;font-size:1.3em}.mr-hint{color:var(--color-text-muted);margin:0;font-size:.85em}.mr-form-card{background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:8px;flex-direction:column;gap:10px;padding:20px 24px;display:flex}.mr-form-card h3{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 2px;font-size:.82em}.mr-form{flex-direction:column;gap:8px;display:flex}.mr-input{background-color:var(--color-bg);border:1px solid var(--color-border);color:#fff;box-sizing:border-box;border-radius:4px;outline:none;width:100%;padding:9px 12px;font-size:.9em}.mr-input:focus{border-color:var(--color-accent)}.mr-textarea{background-color:var(--color-bg);border:1px solid var(--color-border);color:#fff;box-sizing:border-box;resize:vertical;border-radius:4px;outline:none;width:100%;padding:9px 12px;font-family:inherit;font-size:.9em}.mr-textarea:focus{border-color:var(--color-accent)}.mr-btn-primary{background-color:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;align-self:flex-start;padding:9px 20px;font-size:.9em;transition:background-color .2s}.mr-btn-primary:hover{background-color:var(--color-accent-hover)}.mr-btn-primary:disabled{opacity:.5;cursor:default}.mr-error{color:var(--color-error);margin:0;font-size:.82em}.mr-list-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px;font-size:.82em}.mr-empty{color:#666;text-align:center;padding:32px 0;font-size:.9em}.mr-list{flex-direction:column;gap:10px;display:flex}.mr-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.mr-vote{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:40px;display:flex}.mr-vote-btn{border:1px solid var(--color-border);color:#888;cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:40px;height:34px;font-size:.85em;transition:background-color .15s,color .15s,border-color .15s;display:flex}.mr-vote-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.mr-vote-btn.voted{background-color:var(--color-accent-dim);border-color:var(--color-accent);color:var(--color-accent)}.mr-vote-btn:disabled{cursor:default;opacity:.5}.mr-vote-count{color:#ccc;font-size:.85em;font-weight:700}.mr-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.mr-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mr-mod-name{color:#fff;font-size:.95em;font-weight:600}.mr-mod-link{color:var(--color-accent);font-size:.95em;font-weight:600;text-decoration:none}.mr-mod-link:hover{text-decoration:underline}.mr-status{text-transform:uppercase;letter-spacing:.06em;border-radius:10px;padding:2px 7px;font-size:.68em;font-weight:700}.mr-status.pending{background-color:var(--color-surface);color:#888;border:1px solid #555}.mr-status.approved{color:#4caf81;background-color:#1a3d2b}.mr-status.added{color:#5ba4e5;background-color:#1a2e4d}.mr-status.rejected{color:#e55b5b;background-color:#3d1a1a}.mr-meta{color:#666;margin:0;font-size:.76em}.mr-reason{color:var(--color-text-muted);white-space:pre-wrap;margin:0;font-size:.84em;line-height:1.5}.mr-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.mr-btn-small{border:1px solid var(--color-border);color:#888;cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:.76em;transition:border-color .15s,color .15s}.mr-btn-small:hover{border-color:var(--color-text-muted);color:#fff}.mr-btn-small.danger:hover{color:#e55b5b;border-color:#e55b5b}.mr-status-select{background-color:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;border-radius:4px;outline:none;padding:3px 8px;font-size:.76em}.mr-status-select:focus{border-color:var(--color-accent)}.mr-edit-form{flex-direction:column;gap:7px;display:flex}.mr-edit-actions{gap:6px;display:flex}.au-page{background-color:var(--color-bg);box-sizing:border-box;color:#fff;min-height:100vh;padding:32px 16px;font-family:sans-serif}.au-content{flex-direction:column;gap:24px;max-width:780px;margin:0 auto;display:flex}.au-content h2{margin:0 0 4px;font-size:1.3em}.au-hint{color:var(--color-text-muted);margin:0;font-size:.85em}.au-error{color:var(--color-error);margin:0;font-size:.85em}.au-empty{color:#666;text-align:center;padding:32px 0;font-size:.9em}.au-table-wrap{overflow-x:auto}.au-table{border-collapse:collapse;width:100%;font-size:.88em}.au-table th{text-align:left;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:8px 12px;font-size:.78em}.au-table td{vertical-align:middle;padding:10px 12px}.au-table tbody tr{box-shadow:inset 0 -1px #2e2e46}.au-table tbody tr:last-child{box-shadow:none}.au-table tbody tr:hover{background-color:#22223a}.au-self td{background-color:#1e1e38}.au-self:hover td{background-color:#23233d}.au-email{align-items:center;gap:8px;min-width:0;font-weight:500;display:flex}.au-you{background-color:var(--color-accent-dim);border:1px solid var(--color-accent);color:var(--color-accent);letter-spacing:.04em;border-radius:8px;padding:1px 6px;font-size:.72em;font-weight:700}.au-date{color:var(--color-text-muted);white-space:nowrap}.au-center{text-align:center}.au-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:10px;padding:2px 8px;font-size:.72em;font-weight:700;display:inline-block}.au-badge.yes{color:#4caf81;background-color:#1a3d2b}.au-badge.no{background-color:var(--color-surface);color:#666;border:1px solid #444}.au-actions{align-items:center;gap:6px;display:flex}.au-btn{border:1px solid var(--color-border);color:#888;cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;padding:3px 10px;font-size:.76em;transition:border-color .15s,color .15s}.au-btn:hover:not(:disabled){border-color:var(--color-text-muted);color:#fff}.au-btn.danger:hover:not(:disabled){color:#e55b5b;border-color:#e55b5b}.au-btn:disabled{opacity:.35;cursor:default}.au-role-select{background-color:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;text-transform:capitalize;border-radius:4px;outline:none;padding:3px 8px;font-size:.76em}.au-role-select:focus{border-color:var(--color-accent)}.au-role-select:disabled{opacity:.35;cursor:default}
