/* Visual reference: https://swgnexus.com/ */
:root{--bg:#090c12;--panel:#14262b;--line:#41696f;--text:#edf2f3;--muted:#b3c3c8;--accent:#ffdf81;--ink:#171713;--good:#a4ddbd}
body{font-family:"Roboto Condensed","Arial Narrow",Arial,sans-serif;background-color:var(--bg);background-image:linear-gradient(#090c1233,#090c1277),url("nexus-galaxy.jpg");background-position:center top;background-size:cover;background-attachment:fixed}
.sitebar{background:#000;border-bottom:1px solid #3b6269;box-shadow:0 3px 18px #0006}
.sitebar nav{gap:24px}.sitebar nav a{color:#bfc4c8;text-transform:uppercase;letter-spacing:.6px;font-size:12px}
.sitebar nav a:hover,.sitebar nav a[aria-current]{color:#ffdf81}
.brand{letter-spacing:1px}.brand small{color:#b3c3c8}.brand-colon{color:#ffdf81}
#app{background:rgba(10,25,31,.90);border-left:1px solid #395e66;border-right:1px solid #395e66}
.hero{border-bottom-color:#41696f}.hero h1{font-weight:700;letter-spacing:-.6px;color:#ffdf81}.hero h1 span{color:#ffdf81}
.hero-copy,.excerpt,.prose{color:#d6e0e3}
.eyebrow{color:#ffdf81}.sidebar .eyebrow,.board-heading .eyebrow{color:#b3c3c8}
.button{background:#192b30;border:1px solid #55a4a8;border-radius:5px;color:#fff;font-weight:700}
.button.primary{background:#233d42;border-color:#75bdc1;color:#ffdf81;text-transform:uppercase;font-style:italic;letter-spacing:.3px}
.button:hover,.button.primary:hover{background:#2c484f;border-color:#85c8cc;color:#ffdf81}
.button.subtle{background:#192b30}
.button.danger{color:#ffc1ba;background:#382229;border-color:#ad6567}
.button.danger:hover{background:#4c2c32;border-color:#e39791;color:#ffdbd7}
.view-nav{border-bottom-color:#41696f;gap:7px}
.view-nav button{border:1px solid #41696f;border-radius:5px;background:#14262b;color:#c1d2d7}
.view-nav button.active{background:#233d42;border:1px solid #55a4a8;border-bottom:2px solid #ffdf81;color:#ffdf81}
.view-nav button:hover{background:#233d42;border-color:#75bdc1;color:#ffdf81}
input,select,textarea{background:#101e25;border-color:#487078;border-radius:5px;color:#edf2f3}
input::placeholder,textarea::placeholder{color:#a3b7c0}
.search input{border-radius:5px 0 0 5px}
.search button{background:#192b30;border-color:#55a4a8;color:#fff;border-radius:0 5px 5px 0}
.search button:hover{color:#ffdf81;background:#233d42}
.suggestion-card,.panel{background:rgba(20,38,43,.97);border-color:#41696f;border-radius:8px}
.suggestion-card:hover{border-color:#55a4a8;box-shadow:0 0 12px #55a4a814}
.suggestion-card h3 a{color:#edf2f3}.suggestion-card h3 a:hover{color:#ffdf81}
.card-meta{color:#afc3cb}
.vote-box{background:#101e25;border-color:#487078;border-radius:5px}
.vote-box button{color:#b1c7cf}.vote-box button[aria-pressed=true]{background:#2d4241;color:#ffdf81}
.status-counter{background:#192b30;border-color:#487078;border-radius:5px;color:#c1d2d7}
.status-counter strong{background:#243e44;color:#fff}
.status-counter[aria-pressed=true]{background:#29454a;border-color:#75bdc1;color:#ffdf81}
.status-counter[aria-pressed=true] strong{color:#ffdf81}
.status-counter:hover{background:#233d42;border-color:#75bdc1}
.tag{background:#1c3038;border-color:#527481;color:#d8e5eb}
.tag[data-status=open],.tag[data-status=approved],.tag[data-status=published]{background:#1c372d;border-color:#4f826a;color:#b8e6c9}
.tag[data-status=review],.tag[data-status=pending]{background:#393521;border-color:#958548;color:#ffdf81}
.tag[data-status=in_progress],.tag[data-status=implemented]{background:#1b3442;border-color:#51839b;color:#b6e3f8}
.tag[data-status=rejected],.tag[data-status=declined],.tag[data-status=hidden]{background:#382229;border-color:#ad6567;color:#ffc1ba}
.notice{background:#20353d;border-color:#55a4a8;color:#e0edf1;border-radius:5px}
.notice.error{background:#382229;border-color:#ad6567;color:#ffd6d0}
.form-error,.danger-zone{color:#ffc1ba}
.empty{background:#14262bd9;border-color:#527b84;border-radius:8px}
.team-response{background:#20373e;border-color:#55a4a8;border-left:3px solid #ffdf81}
.team-response h2,.detail-section h2,.board-heading h2,.moderation h2{color:#ffdf81}
.moderation{border-color:#55a4a8}.review-effect{background:#1b3037;border-color:#41696f}
.prose a,.staff-link{color:#9ce0e5}.prose a:hover,.staff-link:hover{color:#ffdf81}
dialog{background:#14262b;border-color:#55a4a8;border-radius:8px;box-shadow:0 20px 80px #0008}
dialog::backdrop{background:#050b12cc}.dialog-heading h2{color:#ffdf81}
footer{background:#000e;border-color:#41696f;color:#b3c3c8}
@media(max-width:620px){body{background-attachment:scroll}#app{border:0}.sitebar{padding:16px 18px}}

/* Participant names stay distinct from dates and other metadata. */
.account-name{color:var(--accent);font-weight:700;overflow-wrap:anywhere}

.roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.roadmap-column{min-width:0;background:#101e2580;padding:12px;border-radius:8px;border:1px solid var(--line)}
.roadmap-column h3{font-size:18px;color:var(--accent);margin:0 0 16px}.roadmap-card{padding:14px;margin:0 0 12px}.roadmap-card h4{font-size:16px;margin:0 0 12px}.roadmap-card a{color:var(--text)}.roadmap-card .card-meta{gap:6px}.roadmap-card .excerpt{font-size:14px}.roadmap-column .pagination{flex-wrap:wrap;font-size:12px;gap:6px}.roadmap-column .pagination button{padding:6px}
.progress-history ol{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--line)}.progress-history li{display:flex;gap:16px;padding:9px 0;flex-wrap:wrap}.progress-history time{color:var(--muted);min-width:110px}
.image-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.image-gallery figure{margin:0}.image-gallery img{display:block;width:100%;height:180px;object-fit:contain;background:#101e25;border:1px solid var(--line);border-radius:6px}.image-gallery .button{margin-top:8px}.image-section form{margin-top:16px}
.reply-context{border-left:3px solid var(--line);padding:8px 12px;margin:10px 0;background:#101e25}.reply-context p{margin:6px 0;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.reply-link{border:0;background:none;color:var(--accent);padding:0;text-align:left;cursor:pointer}.reply-target{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;background:#20373e}.mention-tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.mention-tag{display:inline-block;background:#293d36;border:1px solid #65735a;color:var(--accent);border-radius:4px;padding:3px 8px;font-size:13px;overflow-wrap:anywhere}.mention-picker{margin:12px 0}.mention-picker input,.mention-picker select{max-width:400px;display:block;margin:6px 0}.comment:target{outline:2px solid var(--accent)}
@media(max-width:1100px){.roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.roadmap{grid-template-columns:1fr}.image-gallery{grid-template-columns:1fr}.progress-history li{gap:4px;flex-direction:column}}

.participant{display:inline-flex;align-items:center;gap:8px;max-width:100%;vertical-align:middle}.participant-avatar,.avatar-fallback{width:28px;height:28px;flex:0 0 28px;border-radius:50%;border:1px solid #527b84;object-fit:cover}.avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:#29454a;color:#ffdf81;font-size:11px;font-weight:700}.participant .account-name{min-width:0}.reply-context .participant{margin-right:10px}.comment header .participant{font-size:inherit}

/* Keep roadmap columns bounded as the community board grows. */
.roadmap-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}
.roadmap-heading h3{margin:0;font-size:17px}
.roadmap-all{padding:4px 6px;font-size:12px;white-space:nowrap}
.roadmap-range{font-size:12px;margin:8px 0}
.roadmap-column>.pagination{margin:8px 0 14px}
.roadmap-card{padding:12px;margin-bottom:10px}
.roadmap-card:last-child{margin-bottom:0}
.roadmap-card h4{margin:0 0 8px;line-height:1.4}
.roadmap-card h4 a{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
.roadmap-card .excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:8px 0;line-height:1.5}
.roadmap-card .participant{max-width:100%;font-size:12px}
.roadmap-card .account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.roadmap-card small{font-size:11px;color:var(--muted)}

/* A single stage uses the full board width, including on small screens. */
.roadmap{display:block}
.roadmap-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}
.roadmap-stage{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:14px;min-width:0}
.roadmap-stage strong{border-radius:20px;background:#0c2026;padding:2px 9px;color:var(--accent)}
.roadmap-stage[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 -3px var(--accent);background:#294047;color:var(--accent)}
.roadmap-results{min-width:0}
.roadmap-results .roadmap-heading h3{font-size:20px}
.roadmap-results>.pagination{margin:12px 0;justify-content:flex-start;flex-wrap:wrap}
.roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.roadmap-grid .roadmap-card{margin:0;padding:16px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.roadmap-grid .roadmap-card h4{font-size:17px}
.roadmap-grid .roadmap-card small{margin-top:auto;padding-top:8px}
.roadmap-empty{padding:28px;border:1px dashed var(--line);border-radius:8px}
@media(max-width:1000px){.roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.roadmap-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap-stage{padding:12px;font-size:13px}.roadmap-grid{grid-template-columns:1fr}}

.priority-badge{font-size:11px;text-transform:none}.roadmap-card>.priority-badge{margin-bottom:10px}.priority-badge[data-priority=low]{color:#c5d3df;background:#253640}.priority-badge[data-priority=normal]{color:#bce9eb;background:#173e42}.priority-badge[data-priority=high]{color:#ffe49b;background:#4a391b}.priority-badge[data-priority=urgent]{color:#ffd0cf;background:#572830;border-color:#aa5863}
