atagen

malice

public
Star0
Watch0
b8ab00377c2069c60530e13a2a47a6d4b1fed0e6
2
ssh://brewery@pls.lobotomise.me:33/atagen/malice.git

Blame: web/src/app.css

973f8fbdaf80atagen2026-09-28 09:10 UTC1
:root {
973f8fbdaf80atagen2026-09-28 09:10 UTC2
  --bg: #14151c;
973f8fbdaf80atagen2026-09-28 09:10 UTC3
  --bg-soft: #1b1d27;
973f8fbdaf80atagen2026-09-28 09:10 UTC4
  --panel: #1e2029;
973f8fbdaf80atagen2026-09-28 09:10 UTC5
  --panel-2: #232634;
973f8fbdaf80atagen2026-09-28 09:10 UTC6
  --border: #2e3142;
973f8fbdaf80atagen2026-09-28 09:10 UTC7
  --text: #e6e8f0;
973f8fbdaf80atagen2026-09-28 09:10 UTC8
  --muted: #9aa0b4;
973f8fbdaf80atagen2026-09-28 09:10 UTC9
  --accent: #5865f2;
973f8fbdaf80atagen2026-09-28 09:10 UTC10
  --danger: #f26d6d;
973f8fbdaf80atagen2026-09-28 09:10 UTC11
  --warn: #e8b25a;
973f8fbdaf80atagen2026-09-28 09:10 UTC12
  color-scheme: dark;
973f8fbdaf80atagen2026-09-28 09:10 UTC13
}
973f8fbdaf80atagen2026-09-28 09:10 UTC14
973f8fbdaf80atagen2026-09-28 09:10 UTC15
* { box-sizing: border-box; }
973f8fbdaf80atagen2026-09-28 09:10 UTC16
973f8fbdaf80atagen2026-09-28 09:10 UTC17
html, body, #app {
973f8fbdaf80atagen2026-09-28 09:10 UTC18
  margin: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC19
  min-height: 100dvh;
973f8fbdaf80atagen2026-09-28 09:10 UTC20
}
973f8fbdaf80atagen2026-09-28 09:10 UTC21
973f8fbdaf80atagen2026-09-28 09:10 UTC22
body {
973f8fbdaf80atagen2026-09-28 09:10 UTC23
  background: var(--bg);
973f8fbdaf80atagen2026-09-28 09:10 UTC24
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC25
  font: 14px/1.45 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
973f8fbdaf80atagen2026-09-28 09:10 UTC26
}
973f8fbdaf80atagen2026-09-28 09:10 UTC27
973f8fbdaf80atagen2026-09-28 09:10 UTC28
button { font: inherit; }
973f8fbdaf80atagen2026-09-28 09:10 UTC29
input, textarea { font: inherit; }
973f8fbdaf80atagen2026-09-28 09:10 UTC30
973f8fbdaf80atagen2026-09-28 09:10 UTC31
.visually-hidden {
973f8fbdaf80atagen2026-09-28 09:10 UTC32
  position: absolute;
973f8fbdaf80atagen2026-09-28 09:10 UTC33
  width: 1px; height: 1px;
973f8fbdaf80atagen2026-09-28 09:10 UTC34
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC35
  clip: rect(0 0 0 0);
973f8fbdaf80atagen2026-09-28 09:10 UTC36
  white-space: nowrap;
973f8fbdaf80atagen2026-09-28 09:10 UTC37
}
973f8fbdaf80atagen2026-09-28 09:10 UTC38
973f8fbdaf80atagen2026-09-28 09:10 UTC39
.splash {
973f8fbdaf80atagen2026-09-28 09:10 UTC40
  min-height: 100dvh;
973f8fbdaf80atagen2026-09-28 09:10 UTC41
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC42
  flex-direction: column;
973f8fbdaf80atagen2026-09-28 09:10 UTC43
  gap: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC44
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC45
  justify-content: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC46
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC47
}
973f8fbdaf80atagen2026-09-28 09:10 UTC48
.splash-mark {
973f8fbdaf80atagen2026-09-28 09:10 UTC49
  width: 52px; height: 52px;
973f8fbdaf80atagen2026-09-28 09:10 UTC50
  border-radius: 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC51
  display: grid; place-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC52
  font-size: 26px; font-weight: 800; color: #fff;
973f8fbdaf80atagen2026-09-28 09:10 UTC53
  background: linear-gradient(135deg, var(--accent), #7c5cff);
973f8fbdaf80atagen2026-09-28 09:10 UTC54
}
973f8fbdaf80atagen2026-09-28 09:10 UTC55
973f8fbdaf80atagen2026-09-28 09:10 UTC56
.app {
973f8fbdaf80atagen2026-09-28 09:10 UTC57
  display: grid;
973f8fbdaf80atagen2026-09-28 09:10 UTC58
  grid-template-columns: 68px 300px 1fr;
973f8fbdaf80atagen2026-09-28 09:10 UTC59
  height: 100dvh;
973f8fbdaf80atagen2026-09-28 09:10 UTC60
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC61
}
973f8fbdaf80atagen2026-09-28 09:10 UTC62
.app:has(.members) { grid-template-columns: 68px 300px 1fr 260px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC63
973f8fbdaf80atagen2026-09-28 09:10 UTC64
/* ——— Rail ——— */
973f8fbdaf80atagen2026-09-28 09:10 UTC65
.rail {
973f8fbdaf80atagen2026-09-28 09:10 UTC66
  background: #101117;
973f8fbdaf80atagen2026-09-28 09:10 UTC67
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC68
  flex-direction: column;
973f8fbdaf80atagen2026-09-28 09:10 UTC69
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC70
  gap: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC71
  padding: 12px 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC72
  overflow-y: auto;
973f8fbdaf80atagen2026-09-28 09:10 UTC73
}
973f8fbdaf80atagen2026-09-28 09:10 UTC74
.rail-sep { width: 32px; height: 2px; border-radius: 2px; background: var(--border); }
973f8fbdaf80atagen2026-09-28 09:10 UTC75
.rail-btn {
973f8fbdaf80atagen2026-09-28 09:10 UTC76
  width: 46px; height: 46px;
973f8fbdaf80atagen2026-09-28 09:10 UTC77
  border-radius: 50%;
973f8fbdaf80atagen2026-09-28 09:10 UTC78
  border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC79
  background: var(--panel-2);
973f8fbdaf80atagen2026-09-28 09:10 UTC80
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC81
  font-size: 19px;
973f8fbdaf80atagen2026-09-28 09:10 UTC82
  font-weight: 700;
973f8fbdaf80atagen2026-09-28 09:10 UTC83
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC84
  transition: border-radius 0.15s, background 0.15s;
973f8fbdaf80atagen2026-09-28 09:10 UTC85
  display: grid;
973f8fbdaf80atagen2026-09-28 09:10 UTC86
  place-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC87
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC88
  padding: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC89
}
973f8fbdaf80atagen2026-09-28 09:10 UTC90
.rail-btn:hover { border-radius: 16px; background: var(--accent); color: #fff; }
973f8fbdaf80atagen2026-09-28 09:10 UTC91
.rail-btn.active { border-radius: 16px; background: var(--accent); color: #fff; }
973f8fbdaf80atagen2026-09-28 09:10 UTC92
.rail-btn:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC93
.rail-avatar { width: 100%; height: 100%; object-fit: cover; display: block; }
973f8fbdaf80atagen2026-09-28 09:10 UTC94
.rail-add { color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC95
.rail-add:hover { color: #fff; }
973f8fbdaf80atagen2026-09-28 09:10 UTC96
.space-context {
973f8fbdaf80atagen2026-09-28 09:10 UTC97
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC98
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC99
  gap: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC100
  padding: 10px 8px 4px;
973f8fbdaf80atagen2026-09-28 09:10 UTC101
}
973f8fbdaf80atagen2026-09-28 09:10 UTC102
.space-context-text { display: flex; flex-direction: column; min-width: 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC103
.space-context-text strong { font-size: 13.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
973f8fbdaf80atagen2026-09-28 09:10 UTC104
.space-context-text span { font-size: 11.5px; color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC105
.sec-banner {
973f8fbdaf80atagen2026-09-28 09:10 UTC106
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC107
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC108
  gap: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC109
  margin: 10px 16px 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC110
  padding: 8px 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC111
  background: rgba(88, 101, 242, 0.14);
973f8fbdaf80atagen2026-09-28 09:10 UTC112
  border: 1px solid var(--accent);
973f8fbdaf80atagen2026-09-28 09:10 UTC113
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC114
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC115
  font-size: 12.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC116
}
973f8fbdaf80atagen2026-09-28 09:10 UTC117
.sec-banner.warn { background: #33300f; border-color: #5c551f; color: #ecd98a; }
973f8fbdaf80atagen2026-09-28 09:10 UTC118
.sec-banner button {
973f8fbdaf80atagen2026-09-28 09:10 UTC119
  margin-left: auto;
973f8fbdaf80atagen2026-09-28 09:10 UTC120
  flex: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC121
  background: transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC122
  border: 1px solid currentColor;
973f8fbdaf80atagen2026-09-28 09:10 UTC123
  border-radius: 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC124
  color: inherit;
973f8fbdaf80atagen2026-09-28 09:10 UTC125
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC126
  padding: 3px 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC127
  font-size: 12.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC128
}
973f8fbdaf80atagen2026-09-28 09:10 UTC129
.composer-note { margin: 0; padding: 0 16px 10px; font-size: 11.5px; color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC130
.head-room { display: flex; align-items: center; gap: 12px; min-width: 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC131
.head-room-text { min-width: 0; flex: 1; }
973f8fbdaf80atagen2026-09-28 09:10 UTC132
.conn-banner.error { background: #3a1d22; border-color: #6b2a33; color: #ffc9ce; }
973f8fbdaf80atagen2026-09-28 09:10 UTC133
/* ——— Sidebar ——— */
973f8fbdaf80atagen2026-09-28 09:10 UTC134
.sidebar {
973f8fbdaf80atagen2026-09-28 09:10 UTC135
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC136
  border-right: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC137
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC138
  flex-direction: column;
973f8fbdaf80atagen2026-09-28 09:10 UTC139
  min-height: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC140
}
973f8fbdaf80atagen2026-09-28 09:10 UTC141
.side-search {
973f8fbdaf80atagen2026-09-28 09:10 UTC142
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC143
  gap: 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC144
  padding: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC145
  border-bottom: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC146
}
973f8fbdaf80atagen2026-09-28 09:10 UTC147
.side-search input {
973f8fbdaf80atagen2026-09-28 09:10 UTC148
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC149
  min-width: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC150
  background: var(--bg-soft);
973f8fbdaf80atagen2026-09-28 09:10 UTC151
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC152
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC153
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC154
  padding: 7px 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC155
}
973f8fbdaf80atagen2026-09-28 09:10 UTC156
.side-search input:focus { outline: 2px solid var(--accent); border-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC157
.side-scroll { flex: 1; overflow-y: auto; padding: 8px; min-height: 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC158
.side-h {
973f8fbdaf80atagen2026-09-28 09:10 UTC159
  font-size: 11px;
973f8fbdaf80atagen2026-09-28 09:10 UTC160
  text-transform: uppercase;
973f8fbdaf80atagen2026-09-28 09:10 UTC161
  letter-spacing: 0.08em;
973f8fbdaf80atagen2026-09-28 09:10 UTC162
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC163
  margin: 12px 6px 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC164
}
973f8fbdaf80atagen2026-09-28 09:10 UTC165
.side-h:first-child { margin-top: 4px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC166
.room-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC167
.room-row {
973f8fbdaf80atagen2026-09-28 09:10 UTC168
  width: 100%;
973f8fbdaf80atagen2026-09-28 09:10 UTC169
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC170
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC171
  gap: 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC172
  background: transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC173
  border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC174
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC175
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC176
  padding: 7px 9px;
973f8fbdaf80atagen2026-09-28 09:10 UTC177
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC178
  text-align: left;
973f8fbdaf80atagen2026-09-28 09:10 UTC179
  font-size: 13.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC180
}
973f8fbdaf80atagen2026-09-28 09:10 UTC181
.room-row:hover { background: var(--panel-2); }
973f8fbdaf80atagen2026-09-28 09:10 UTC182
.room-row.active { background: rgba(88, 101, 242, 0.2); }
973f8fbdaf80atagen2026-09-28 09:10 UTC183
.room-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC184
.room-hash { color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC185
.room-name {
973f8fbdaf80atagen2026-09-28 09:10 UTC186
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC187
  min-width: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC188
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC189
  text-overflow: ellipsis;
973f8fbdaf80atagen2026-09-28 09:10 UTC190
  white-space: nowrap;
973f8fbdaf80atagen2026-09-28 09:10 UTC191
}
973f8fbdaf80atagen2026-09-28 09:10 UTC192
.badge {
973f8fbdaf80atagen2026-09-28 09:10 UTC193
  flex: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC194
  min-width: 20px;
973f8fbdaf80atagen2026-09-28 09:10 UTC195
  height: 20px;
973f8fbdaf80atagen2026-09-28 09:10 UTC196
  padding: 0 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC197
  border-radius: 999px;
973f8fbdaf80atagen2026-09-28 09:10 UTC198
  background: var(--panel-2);
973f8fbdaf80atagen2026-09-28 09:10 UTC199
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC200
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC201
  font-size: 11px;
973f8fbdaf80atagen2026-09-28 09:10 UTC202
  font-weight: 700;
973f8fbdaf80atagen2026-09-28 09:10 UTC203
  display: inline-grid;
973f8fbdaf80atagen2026-09-28 09:10 UTC204
  place-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC205
}
973f8fbdaf80atagen2026-09-28 09:10 UTC206
.badge.mention { background: var(--accent); border-color: var(--accent); color: #fff; }
973f8fbdaf80atagen2026-09-28 09:10 UTC207
.invite-join {
973f8fbdaf80atagen2026-09-28 09:10 UTC208
  flex: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC209
  background: var(--accent);
973f8fbdaf80atagen2026-09-28 09:10 UTC210
  color: #fff;
973f8fbdaf80atagen2026-09-28 09:10 UTC211
  border-radius: 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC212
  padding: 2px 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC213
  font-size: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC214
  font-weight: 600;
973f8fbdaf80atagen2026-09-28 09:10 UTC215
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC216
}
973f8fbdaf80atagen2026-09-28 09:10 UTC217
.side-note { color: var(--muted); font-size: 13px; padding: 8px 6px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC218
.side-cta { display: flex; gap: 8px; padding: 0 6px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC219
.side-cta button {
973f8fbdaf80atagen2026-09-28 09:10 UTC220
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC221
  background: var(--panel-2);
973f8fbdaf80atagen2026-09-28 09:10 UTC222
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC223
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC224
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC225
  padding: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC226
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC227
}
973f8fbdaf80atagen2026-09-28 09:10 UTC228
.side-cta button:hover { border-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC229
.side-footer {
973f8fbdaf80atagen2026-09-28 09:10 UTC230
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC231
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC232
  gap: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC233
  padding: 10px 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC234
  border-top: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC235
  background: var(--bg-soft);
973f8fbdaf80atagen2026-09-28 09:10 UTC236
}
973f8fbdaf80atagen2026-09-28 09:10 UTC237
.me { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC238
.me-avatar {
973f8fbdaf80atagen2026-09-28 09:10 UTC239
  flex: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC240
  width: 30px; height: 30px;
973f8fbdaf80atagen2026-09-28 09:10 UTC241
  border-radius: 50%;
973f8fbdaf80atagen2026-09-28 09:10 UTC242
  background: var(--accent);
973f8fbdaf80atagen2026-09-28 09:10 UTC243
  color: #fff;
973f8fbdaf80atagen2026-09-28 09:10 UTC244
  font-weight: 700;
973f8fbdaf80atagen2026-09-28 09:10 UTC245
  font-size: 13px;
973f8fbdaf80atagen2026-09-28 09:10 UTC246
  display: inline-grid;
973f8fbdaf80atagen2026-09-28 09:10 UTC247
  place-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC248
}
973f8fbdaf80atagen2026-09-28 09:10 UTC249
.me-id {
973f8fbdaf80atagen2026-09-28 09:10 UTC250
  min-width: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC251
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC252
  text-overflow: ellipsis;
973f8fbdaf80atagen2026-09-28 09:10 UTC253
  white-space: nowrap;
973f8fbdaf80atagen2026-09-28 09:10 UTC254
  font-size: 12.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC255
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC256
}
973f8fbdaf80atagen2026-09-28 09:10 UTC257
.icon-btn {
973f8fbdaf80atagen2026-09-28 09:10 UTC258
  flex: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC259
  background: transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC260
  border: 1px solid transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC261
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC262
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC263
  font-size: 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC264
  padding: 5px 9px;
973f8fbdaf80atagen2026-09-28 09:10 UTC265
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC266
}
973f8fbdaf80atagen2026-09-28 09:10 UTC267
.icon-btn:hover:not(:disabled) { background: var(--panel-2); color: var(--text); }
973f8fbdaf80atagen2026-09-28 09:10 UTC268
.icon-btn:disabled { opacity: 0.4; cursor: default; }
973f8fbdaf80atagen2026-09-28 09:10 UTC269
.scrim { display: none; }
973f8fbdaf80atagen2026-09-28 09:10 UTC270
973f8fbdaf80atagen2026-09-28 09:10 UTC271
/* ——— Chat ——— */
973f8fbdaf80atagen2026-09-28 09:10 UTC272
.chat { display: flex; flex-direction: column; min-width: 0; min-height: 0; background: var(--bg); }
973f8fbdaf80atagen2026-09-28 09:10 UTC273
.empty {
973f8fbdaf80atagen2026-09-28 09:10 UTC274
  margin: auto;
973f8fbdaf80atagen2026-09-28 09:10 UTC275
  text-align: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC276
  padding: 24px;
973f8fbdaf80atagen2026-09-28 09:10 UTC277
  max-width: 420px;
973f8fbdaf80atagen2026-09-28 09:10 UTC278
}
973f8fbdaf80atagen2026-09-28 09:10 UTC279
.empty-mark { font-size: 44px; color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC280
.empty h1 { font-size: 22px; margin: 8px 0 4px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC281
.empty p { color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC282
.empty-cta { display: flex; gap: 10px; justify-content: center; margin: 16px 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC283
.conn-line { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC284
973f8fbdaf80atagen2026-09-28 09:10 UTC285
.chat-head {
973f8fbdaf80atagen2026-09-28 09:10 UTC286
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC287
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC288
  gap: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC289
  padding: 10px 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC290
  border-bottom: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC291
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC292
  min-height: 62px;
973f8fbdaf80atagen2026-09-28 09:10 UTC293
}
973f8fbdaf80atagen2026-09-28 09:10 UTC294
.head-title { flex: 1; min-width: 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC295
.head-title h1 {
973f8fbdaf80atagen2026-09-28 09:10 UTC296
  margin: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC297
  font-size: 15.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC298
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC299
  text-overflow: ellipsis;
973f8fbdaf80atagen2026-09-28 09:10 UTC300
  white-space: nowrap;
973f8fbdaf80atagen2026-09-28 09:10 UTC301
}
973f8fbdaf80atagen2026-09-28 09:10 UTC302
.head-meta { display: flex; align-items: center; gap: 8px; margin-top: 2px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC303
.pill {
973f8fbdaf80atagen2026-09-28 09:10 UTC304
  font-size: 11px;
973f8fbdaf80atagen2026-09-28 09:10 UTC305
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC306
  border-radius: 999px;
973f8fbdaf80atagen2026-09-28 09:10 UTC307
  padding: 0 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC308
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC309
}
973f8fbdaf80atagen2026-09-28 09:10 UTC310
.conn { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--muted); }
973f8fbdaf80atagen2026-09-28 09:10 UTC311
.dot { width: 8px; height: 8px; border-radius: 50%; background: var(--muted); display: inline-block; }
973f8fbdaf80atagen2026-09-28 09:10 UTC312
.dot-online { background: #3fb97f; }
973f8fbdaf80atagen2026-09-28 09:10 UTC313
.dot-busy { background: var(--warn); }
973f8fbdaf80atagen2026-09-28 09:10 UTC314
.dot-off { background: var(--danger); }
973f8fbdaf80atagen2026-09-28 09:10 UTC315
.head-actions { display: flex; align-items: center; gap: 8px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC316
973f8fbdaf80atagen2026-09-28 09:10 UTC317
.primary-btn {
973f8fbdaf80atagen2026-09-28 09:10 UTC318
  background: var(--accent);
973f8fbdaf80atagen2026-09-28 09:10 UTC319
  border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC320
  color: #fff;
973f8fbdaf80atagen2026-09-28 09:10 UTC321
  font-weight: 600;
973f8fbdaf80atagen2026-09-28 09:10 UTC322
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC323
  padding: 8px 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC324
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC325
  font-size: 13.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC326
}
973f8fbdaf80atagen2026-09-28 09:10 UTC327
.primary-btn:hover:not(:disabled) { filter: brightness(1.1); }
973f8fbdaf80atagen2026-09-28 09:10 UTC328
.primary-btn:disabled { opacity: 0.55; cursor: default; }
973f8fbdaf80atagen2026-09-28 09:10 UTC329
.primary-btn.wide { width: 100%; margin-top: 12px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC330
.ghost-btn {
973f8fbdaf80atagen2026-09-28 09:10 UTC331
  background: var(--panel-2);
973f8fbdaf80atagen2026-09-28 09:10 UTC332
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC333
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC334
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC335
  padding: 7px 14px;
973f8fbdaf80atagen2026-09-28 09:10 UTC336
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC337
  font-size: 13px;
973f8fbdaf80atagen2026-09-28 09:10 UTC338
}
973f8fbdaf80atagen2026-09-28 09:10 UTC339
.ghost-btn:hover:not(:disabled) { border-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC340
.ghost-btn:disabled { opacity: 0.55; cursor: wait; }
973f8fbdaf80atagen2026-09-28 09:10 UTC341
.ghost-btn.danger { color: var(--danger); }
973f8fbdaf80atagen2026-09-28 09:10 UTC342
.ghost-btn.danger:hover:not(:disabled) { border-color: var(--danger); }
973f8fbdaf80atagen2026-09-28 09:10 UTC343
973f8fbdaf80atagen2026-09-28 09:10 UTC344
.banners { display: flex; flex-direction: column; gap: 6px; padding: 10px 16px 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC345
.banner {
973f8fbdaf80atagen2026-09-28 09:10 UTC346
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC347
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC348
  gap: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC349
  background: #3a1d22;
973f8fbdaf80atagen2026-09-28 09:10 UTC350
  border: 1px solid #6b2a33;
973f8fbdaf80atagen2026-09-28 09:10 UTC351
  color: #ffc9ce;
973f8fbdaf80atagen2026-09-28 09:10 UTC352
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC353
  padding: 8px 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC354
  font-size: 13px;
973f8fbdaf80atagen2026-09-28 09:10 UTC355
}
973f8fbdaf80atagen2026-09-28 09:10 UTC356
.banner span { flex: 1; }
973f8fbdaf80atagen2026-09-28 09:10 UTC357
.banner button {
973f8fbdaf80atagen2026-09-28 09:10 UTC358
  background: transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC359
  border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC360
  color: inherit;
973f8fbdaf80atagen2026-09-28 09:10 UTC361
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC362
  font-size: 13px;
973f8fbdaf80atagen2026-09-28 09:10 UTC363
  padding: 2px 6px;
973f8fbdaf80atagen2026-09-28 09:10 UTC364
}
973f8fbdaf80atagen2026-09-28 09:10 UTC365
.conn-banner {
973f8fbdaf80atagen2026-09-28 09:10 UTC366
  margin: 10px 16px 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC367
  padding: 7px 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC368
  background: #33300f;
973f8fbdaf80atagen2026-09-28 09:10 UTC369
  border: 1px solid #5c551f;
973f8fbdaf80atagen2026-09-28 09:10 UTC370
  color: #ecd98a;
973f8fbdaf80atagen2026-09-28 09:10 UTC371
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC372
  font-size: 12.5px;
973f8fbdaf80atagen2026-09-28 09:10 UTC373
}
973f8fbdaf80atagen2026-09-28 09:10 UTC374
973f8fbdaf80atagen2026-09-28 09:10 UTC375
.timeline {
973f8fbdaf80atagen2026-09-28 09:10 UTC376
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC377
  overflow-y: auto;
973f8fbdaf80atagen2026-09-28 09:10 UTC378
  padding: 12px 20px 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC379
  min-height: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC380
}
973f8fbdaf80atagen2026-09-28 09:10 UTC381
.timeline-top { display: flex; justify-content: center; padding: 4px 0 12px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC382
.start-note { text-align: center; color: var(--muted); font-size: 12.5px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC383
.timeline-empty { text-align: center; padding: 32px 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC384
.day-row {
973f8fbdaf80atagen2026-09-28 09:10 UTC385
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC386
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC387
  gap: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC388
  margin: 14px 0 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC389
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC390
  font-size: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC391
}
973f8fbdaf80atagen2026-09-28 09:10 UTC392
.day-row::before, .day-row::after {
973f8fbdaf80atagen2026-09-28 09:10 UTC393
  content: '';
973f8fbdaf80atagen2026-09-28 09:10 UTC394
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC395
  height: 1px;
973f8fbdaf80atagen2026-09-28 09:10 UTC396
  background: var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC397
}
973f8fbdaf80atagen2026-09-28 09:10 UTC398
.new-row {
973f8fbdaf80atagen2026-09-28 09:10 UTC399
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC400
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC401
  gap: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC402
  margin: 8px 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC403
  color: var(--danger);
973f8fbdaf80atagen2026-09-28 09:10 UTC404
  font-size: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC405
  font-weight: 600;
973f8fbdaf80atagen2026-09-28 09:10 UTC406
}
973f8fbdaf80atagen2026-09-28 09:10 UTC407
.new-row::before, .new-row::after { content: ''; flex: 1; height: 1px; background: #6b2a33; }
973f8fbdaf80atagen2026-09-28 09:10 UTC408
.unknown-note { color: var(--muted); font-size: 12.5px; font-style: italic; }
973f8fbdaf80atagen2026-09-28 09:10 UTC409
.pending-actions {
973f8fbdaf80atagen2026-09-28 09:10 UTC410
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC411
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC412
  gap: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC413
  margin: -4px 0 6px 44px;
973f8fbdaf80atagen2026-09-28 09:10 UTC414
}
973f8fbdaf80atagen2026-09-28 09:10 UTC415
.pending-error { color: var(--danger); font-size: 12px; flex: 1; min-width: 0; overflow-wrap: anywhere; }
973f8fbdaf80atagen2026-09-28 09:10 UTC416
973f8fbdaf80atagen2026-09-28 09:10 UTC417
.composer {
973f8fbdaf80atagen2026-09-28 09:10 UTC418
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC419
  gap: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC420
  align-items: flex-end;
973f8fbdaf80atagen2026-09-28 09:10 UTC421
  padding: 12px 16px 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC422
  border-top: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC423
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC424
}
973f8fbdaf80atagen2026-09-28 09:10 UTC425
.composer textarea {
973f8fbdaf80atagen2026-09-28 09:10 UTC426
  flex: 1;
973f8fbdaf80atagen2026-09-28 09:10 UTC427
  resize: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC428
  background: var(--bg-soft);
973f8fbdaf80atagen2026-09-28 09:10 UTC429
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC430
  border-radius: 10px;
973f8fbdaf80atagen2026-09-28 09:10 UTC431
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC432
  padding: 10px 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC433
  min-height: 40px;
973f8fbdaf80atagen2026-09-28 09:10 UTC434
  max-height: 160px;
973f8fbdaf80atagen2026-09-28 09:10 UTC435
  line-height: 1.4;
973f8fbdaf80atagen2026-09-28 09:10 UTC436
}
973f8fbdaf80atagen2026-09-28 09:10 UTC437
.composer textarea:focus { outline: 2px solid var(--accent); border-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC438
.join-bar {
973f8fbdaf80atagen2026-09-28 09:10 UTC439
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC440
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC441
  gap: 12px;
973f8fbdaf80atagen2026-09-28 09:10 UTC442
  padding: 12px 16px 16px;
973f8fbdaf80atagen2026-09-28 09:10 UTC443
  border-top: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC444
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC445
}
973f8fbdaf80atagen2026-09-28 09:10 UTC446
.join-bar p { margin: 0; color: var(--muted); font-size: 13px; flex: 1; }
973f8fbdaf80atagen2026-09-28 09:10 UTC447
973f8fbdaf80atagen2026-09-28 09:10 UTC448
/* ——— Members ——— */
973f8fbdaf80atagen2026-09-28 09:10 UTC449
.members {
973f8fbdaf80atagen2026-09-28 09:10 UTC450
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC451
  border-left: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC452
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC453
  flex-direction: column;
973f8fbdaf80atagen2026-09-28 09:10 UTC454
  min-height: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC455
  overflow: hidden;
973f8fbdaf80atagen2026-09-28 09:10 UTC456
}
973f8fbdaf80atagen2026-09-28 09:10 UTC457
.members-head {
973f8fbdaf80atagen2026-09-28 09:10 UTC458
  display: flex;
973f8fbdaf80atagen2026-09-28 09:10 UTC459
  align-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC460
  justify-content: space-between;
973f8fbdaf80atagen2026-09-28 09:10 UTC461
  padding: 12px 12px 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC462
}
973f8fbdaf80atagen2026-09-28 09:10 UTC463
.members-head h2 { font-size: 12px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted); margin: 0; }
973f8fbdaf80atagen2026-09-28 09:10 UTC464
.member-list { list-style: none; margin: 0; padding: 0 8px 12px; overflow-y: auto; display: flex; flex-direction: column; gap: 2px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC465
.member { display: flex; align-items: center; gap: 9px; padding: 6px 8px; border-radius: 8px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC466
.member:hover { background: var(--panel-2); }
973f8fbdaf80atagen2026-09-28 09:10 UTC467
.member-names { min-width: 0; display: flex; flex-direction: column; }
973f8fbdaf80atagen2026-09-28 09:10 UTC468
.member-name { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
973f8fbdaf80atagen2026-09-28 09:10 UTC469
.member-id { font-size: 11px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
973f8fbdaf80atagen2026-09-28 09:10 UTC470
973f8fbdaf80atagen2026-09-28 09:10 UTC471
/* ——— Modal ——— */
973f8fbdaf80atagen2026-09-28 09:10 UTC472
.modal-wrap {
973f8fbdaf80atagen2026-09-28 09:10 UTC473
  position: fixed;
973f8fbdaf80atagen2026-09-28 09:10 UTC474
  inset: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC475
  background: rgba(0, 0, 0, 0.6);
973f8fbdaf80atagen2026-09-28 09:10 UTC476
  display: grid;
973f8fbdaf80atagen2026-09-28 09:10 UTC477
  place-items: center;
973f8fbdaf80atagen2026-09-28 09:10 UTC478
  padding: 20px;
973f8fbdaf80atagen2026-09-28 09:10 UTC479
  z-index: 50;
973f8fbdaf80atagen2026-09-28 09:10 UTC480
}
973f8fbdaf80atagen2026-09-28 09:10 UTC481
.modal {
973f8fbdaf80atagen2026-09-28 09:10 UTC482
  width: min(420px, 100%);
973f8fbdaf80atagen2026-09-28 09:10 UTC483
  background: var(--panel);
973f8fbdaf80atagen2026-09-28 09:10 UTC484
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC485
  border-radius: 14px;
973f8fbdaf80atagen2026-09-28 09:10 UTC486
  padding: 18px;
973f8fbdaf80atagen2026-09-28 09:10 UTC487
}
973f8fbdaf80atagen2026-09-28 09:10 UTC488
.modal-tabs { display: flex; gap: 4px; margin-bottom: 14px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC489
.modal-tabs button[role='tab'] {
973f8fbdaf80atagen2026-09-28 09:10 UTC490
  background: transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC491
  border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC492
  border-bottom: 2px solid transparent;
973f8fbdaf80atagen2026-09-28 09:10 UTC493
  color: var(--muted);
973f8fbdaf80atagen2026-09-28 09:10 UTC494
  font-weight: 600;
973f8fbdaf80atagen2026-09-28 09:10 UTC495
  padding: 8px 14px;
973f8fbdaf80atagen2026-09-28 09:10 UTC496
  cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC497
  font-size: 14px;
973f8fbdaf80atagen2026-09-28 09:10 UTC498
}
973f8fbdaf80atagen2026-09-28 09:10 UTC499
.modal-tabs button[role='tab'].active { color: var(--text); border-bottom-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC500
.modal-x { margin-left: auto; }
973f8fbdaf80atagen2026-09-28 09:10 UTC501
.modal .field { display: flex; flex-direction: column; gap: 6px; font-size: 13px; color: var(--muted); margin-bottom: 12px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC502
.modal .field input {
973f8fbdaf80atagen2026-09-28 09:10 UTC503
  background: var(--bg-soft);
973f8fbdaf80atagen2026-09-28 09:10 UTC504
  border: 1px solid var(--border);
973f8fbdaf80atagen2026-09-28 09:10 UTC505
  border-radius: 8px;
973f8fbdaf80atagen2026-09-28 09:10 UTC506
  color: var(--text);
973f8fbdaf80atagen2026-09-28 09:10 UTC507
  padding: 9px 11px;
973f8fbdaf80atagen2026-09-28 09:10 UTC508
  font-size: 14px;
973f8fbdaf80atagen2026-09-28 09:10 UTC509
}
973f8fbdaf80atagen2026-09-28 09:10 UTC510
.modal .field input:focus { outline: 2px solid var(--accent); border-color: var(--accent); }
973f8fbdaf80atagen2026-09-28 09:10 UTC511
973f8fbdaf80atagen2026-09-28 09:10 UTC512
.only-mobile { display: none; }
973f8fbdaf80atagen2026-09-28 09:10 UTC513
973f8fbdaf80atagen2026-09-28 09:10 UTC514
@media (max-width: 1100px) {
973f8fbdaf80atagen2026-09-28 09:10 UTC515
  .app, .app:has(.members) { grid-template-columns: 60px 1fr; }
973f8fbdaf80atagen2026-09-28 09:10 UTC516
  .sidebar {
973f8fbdaf80atagen2026-09-28 09:10 UTC517
    position: fixed;
973f8fbdaf80atagen2026-09-28 09:10 UTC518
    top: 0; bottom: 0; left: 60px;
973f8fbdaf80atagen2026-09-28 09:10 UTC519
    width: min(320px, 85vw);
973f8fbdaf80atagen2026-09-28 09:10 UTC520
    z-index: 40;
973f8fbdaf80atagen2026-09-28 09:10 UTC521
    transform: translateX(calc(-100% - 60px));
973f8fbdaf80atagen2026-09-28 09:10 UTC522
    transition: transform 0.18s ease;
973f8fbdaf80atagen2026-09-28 09:10 UTC523
    box-shadow: 8px 0 32px rgba(0, 0, 0, 0.5);
973f8fbdaf80atagen2026-09-28 09:10 UTC524
  }
973f8fbdaf80atagen2026-09-28 09:10 UTC525
  .sidebar.open { transform: none; }
973f8fbdaf80atagen2026-09-28 09:10 UTC526
  .scrim {
973f8fbdaf80atagen2026-09-28 09:10 UTC527
    display: block;
973f8fbdaf80atagen2026-09-28 09:10 UTC528
    position: fixed;
973f8fbdaf80atagen2026-09-28 09:10 UTC529
    inset: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC530
    left: 60px;
973f8fbdaf80atagen2026-09-28 09:10 UTC531
    background: rgba(0, 0, 0, 0.55);
973f8fbdaf80atagen2026-09-28 09:10 UTC532
    border: none;
973f8fbdaf80atagen2026-09-28 09:10 UTC533
    z-index: 30;
973f8fbdaf80atagen2026-09-28 09:10 UTC534
    cursor: pointer;
973f8fbdaf80atagen2026-09-28 09:10 UTC535
  }
973f8fbdaf80atagen2026-09-28 09:10 UTC536
  .members {
973f8fbdaf80atagen2026-09-28 09:10 UTC537
    position: fixed;
973f8fbdaf80atagen2026-09-28 09:10 UTC538
    top: 0; bottom: 0; right: 0;
973f8fbdaf80atagen2026-09-28 09:10 UTC539
    width: min(300px, 85vw);
973f8fbdaf80atagen2026-09-28 09:10 UTC540
    z-index: 40;
973f8fbdaf80atagen2026-09-28 09:10 UTC541
    box-shadow: -8px 0 32px rgba(0, 0, 0, 0.5);
973f8fbdaf80atagen2026-09-28 09:10 UTC542
  }
973f8fbdaf80atagen2026-09-28 09:10 UTC543
  .only-mobile { display: inline-block; }
973f8fbdaf80atagen2026-09-28 09:10 UTC544
  .head-actions .ghost-btn { display: none; }
973f8fbdaf80atagen2026-09-28 09:10 UTC545
  .timeline { padding: 10px 12px 14px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC546
  .chat-head { padding: 8px 12px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC547
  .composer { padding: 10px 12px 12px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC548
}
973f8fbdaf80atagen2026-09-28 09:10 UTC549
973f8fbdaf80atagen2026-09-28 09:10 UTC550
@media (max-width: 640px) {
973f8fbdaf80atagen2026-09-28 09:10 UTC551
  .app, .app:has(.members) { grid-template-columns: 52px 1fr; }
973f8fbdaf80atagen2026-09-28 09:10 UTC552
  .sidebar { left: 52px; transform: translateX(calc(-100% - 52px)); }
973f8fbdaf80atagen2026-09-28 09:10 UTC553
  .scrim { left: 52px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC554
  .rail-btn { width: 40px; height: 40px; font-size: 16px; }
973f8fbdaf80atagen2026-09-28 09:10 UTC555
  .empty-cta { flex-direction: column; }
973f8fbdaf80atagen2026-09-28 09:10 UTC556
}