/* Final shared colour layer. No filters and no overrides of member name colours.
   Both options use dark native controls; "warm" is deliberately not a white theme. */
:root, :root[data-appearance="dark"] {
  color-scheme: dark;
  --appearance-bg:#202026;
  --appearance-deep:#19191f;
  --appearance-panel:#29292f;
  --appearance-raised:#34343c;
  --appearance-input:#24242b;
  --appearance-line:#55545e;
  --appearance-text:#f6f3ef;
  --appearance-muted:#c0bac4;
  --appearance-mine:#513219;
  --appearance-orange:#ff6600;
  --appearance-orange-text:#ffaf78;
  --appearance-green:#9cff00;
}
:root[data-appearance="warm"] {
  --appearance-bg:#454039;
  --appearance-deep:#36322e;
  --appearance-panel:#514b43;
  --appearance-raised:#5d564c;
  --appearance-input:#3d3933;
  --appearance-line:#93877a;
  --appearance-text:#fff5e8;
  --appearance-muted:#e5d6c5;
  --appearance-mine:#624328;
  --appearance-orange-text:#ffd0a3;
}
:root[data-appearance].cz-high-contrast {
  --appearance-text:#ffffff;
  --appearance-muted:#f3ebdf;
  --appearance-line:#cfc3b4;
}
:root[data-appearance] {
  --bg:var(--appearance-bg); --panel:var(--appearance-panel);
  --panel-2:var(--appearance-input); --panel2:var(--appearance-raised);
  --border:var(--appearance-line); --line:var(--appearance-line);
  --text:var(--appearance-text); --muted:var(--appearance-muted);
  --card:var(--appearance-panel); --card2:var(--appearance-raised); --soft:var(--appearance-muted);
  --y-bg:var(--appearance-bg); --y-bg-deep:var(--appearance-deep);
  --y-surface:var(--appearance-panel); --y-surface-2:var(--appearance-raised);
  --y-ink:var(--appearance-text); --y-muted:var(--appearance-muted); --y-line:var(--appearance-line);
  --yu-bg:var(--appearance-panel); --yu-deep:var(--appearance-deep);
  --yu-soft:var(--appearance-panel); --yu-raised:var(--appearance-raised);
  --yu-ink:var(--appearance-text); --yu-muted:var(--appearance-muted); --yu-line:var(--appearance-line);
  --cz-bg:var(--appearance-bg); --cz-bg-soft:var(--appearance-deep); --cz-bg-2:var(--appearance-input);
  --cz-card:var(--appearance-panel); --cz-card-2:var(--appearance-raised);
  --cz-border:var(--appearance-line); --cz-white:var(--appearance-text);
  --cz-text:var(--appearance-text); --cz-muted:var(--appearance-muted);
  --czh-bg:var(--appearance-bg); --czh-deep:var(--appearance-deep);
  --czh-panel:var(--appearance-panel); --czh-panel-2:var(--appearance-raised);
  --czh-line:var(--appearance-line); --czh-text:var(--appearance-text); --czh-muted:var(--appearance-muted);
  background:var(--appearance-bg);
}
html[data-appearance] body {
  color:var(--appearance-text); background:var(--appearance-bg);
}
html[data-appearance] #home-screen {
  --v5-bg:var(--appearance-bg); --v5-deep:var(--appearance-deep);
  --v5-card:var(--appearance-panel); --v5-ink:var(--appearance-text);
  --v5-muted:var(--appearance-muted); --v5-line:var(--appearance-line);
  background:var(--appearance-bg)!important;
}
html[data-appearance] #login-screen.overlay {
  animation:none; background:radial-gradient(ellipse at 15% 5%,#ff660014,transparent 38rem),var(--appearance-bg)!important;
}
html[data-appearance] body :is(#app,.sidebar,.topbar,.composer-wrap,#cz-youth-top,#cz-youth-dock,#cz-youth-hub,.cz-youth-notif,#cz-native-page,#cz-native-page>header) {
  background:var(--appearance-panel)!important; border-color:var(--appearance-line)!important;
}
html[data-appearance] body :is(#log,.log,#forum-overlay,#admin-overlay,.admin-primary-nav,.admin-category-bar,.admin-tabs,.admin-search-quickjump) {
  background:var(--appearance-bg)!important;
}
html[data-appearance] body.cz-youth-auth #modal-overlay[data-view] :is(.modal-card,.modal-body),
html[data-appearance] body #modal-overlay :is(.modal-card,.modal-body) {
  background:var(--appearance-panel)!important; border-color:var(--appearance-line)!important;
}
html[data-appearance] body :is(#modal-overlay,#admin-overlay,#forum-overlay) :is(.modal-header,.forum-header) {
  background:var(--appearance-panel)!important; border-color:var(--appearance-line)!important;
}
html[data-appearance] body :is(#modal-overlay,#admin-overlay,#forum-overlay,#login-screen,#app) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]):not([type="file"]):not([type="hidden"]),textarea,select) {
  color:var(--appearance-text)!important; background:var(--appearance-input)!important;
  border-color:var(--appearance-line)!important; border-radius:12px!important;
  font-size:1rem!important; line-height:1.45!important;
}
html[data-appearance] body :is(#modal-overlay,#admin-overlay,#forum-overlay,#login-screen,#app) :is(input,textarea)::placeholder {
  color:var(--appearance-muted)!important; opacity:1;
}
html[data-appearance] body :is(button,a,input,textarea,select,summary):focus-visible {
  outline:2px solid var(--appearance-green)!important; outline-offset:3px;
}
html[data-appearance] body :is(.cz-admin-card,.admin-stat-card,.cz-server-stats article,.cz-feature-switch,.cz-mod-section,.cz-mod-action-center,.cz-mod-locked,.cz-mod-admin-workspace,.cz-mod-room-create,.cz-safety-center>section,.cz-connect-card,.cz-card,.cz-talk-match-card,.cz30-card,.cz30-manage,.cz-personal-form) {
  background:var(--appearance-panel)!important; border-color:var(--appearance-line)!important;
}
html[data-appearance] body :is(.cz-personal-head,.cz-mod-hero,.cz-workspace-hero,#admin-overlay .cz-admin-hero) {
  background:linear-gradient(120deg,#ff66001c,transparent 70%),var(--appearance-deep)!important;
}
html[data-appearance] body :is(.cz-personal-head,.cz-mod-panel,.cz-forum-mod-center,.cz-safety-center,.cz-admin-card,.cz-feature-switch) :is(p,small,label) {
  color:var(--appearance-muted)!important;
}
html[data-appearance] body .cz-safety-center :is(h3,p,li) { color:var(--appearance-text)!important; }
html[data-appearance] body .cz-profile-editor-head { background:var(--appearance-panel)!important; }

/* A single compact information footer, without another giant brand card. */
html[data-appearance] body .cz-global-footer {
  width:100%!important; margin:24px 0 0!important; padding:16px 4px!important;
  border:0!important; border-top:1px solid var(--appearance-line)!important;
  border-radius:0!important; background:transparent!important; box-shadow:none!important;
}
html[data-appearance] body .cz-global-footer-main { display:block!important; }
html[data-appearance] body .cz-global-footer-brand { display:none!important; }
html[data-appearance] body .cz-global-footer-links { display:flex!important; flex-wrap:wrap!important; justify-content:flex-start!important; gap:4px 14px!important; }
html[data-appearance] body .cz-global-footer-links a {
  min-height:44px!important; display:inline-flex; align-items:center; padding:4px 0!important;
  border:0!important; border-radius:0!important; background:transparent!important;
  color:var(--appearance-orange-text)!important; font-size:.8125rem!important;
}
html[data-appearance] body .cz-global-footer-bottom { margin-top:8px!important; padding-top:8px!important; }
html[data-appearance] body .cz-global-footer-copy { color:var(--appearance-muted)!important; }
html[data-appearance] body .cz-global-footer-design { display:none!important; }

/* Messenger: flat working surface, compact tabs, no nested frame or blue input. */
html[data-appearance] body #modal-overlay .dm-shell {
  max-width:820px; margin-inline:auto; padding:4px!important;
  border:0!important; border-radius:0!important; background:transparent!important;
}
html[data-appearance] body #modal-overlay .dm-head { margin-bottom:16px; }
html[data-appearance] body #modal-overlay .dm-head small { font-size:.6875rem!important; }
html[data-appearance] body #modal-overlay .dm-head h2 { font-size:1.5rem!important; }
html[data-appearance] body #modal-overlay .dm-head>button { width:44px; min-width:44px; height:44px; padding:5px!important; }
html[data-appearance] body #modal-overlay .dm-tabs {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px;
  padding:4px; border-radius:14px; background:var(--appearance-deep);
}
html[data-appearance] body #modal-overlay .dm-tabs button {
  min-width:0; min-height:44px; padding:8px 5px; border:0; font-size:.875rem;
}
html[data-appearance] body #modal-overlay .dm-search input { height:48px!important; padding:10px 12px!important; }
html[data-appearance] body #modal-overlay .dm-search>span { font-size:.8125rem!important; }
html[data-appearance] body #modal-overlay .dm-empty { min-height:0!important; padding:26px 12px!important; gap:8px; }
html[data-appearance] body #modal-overlay .dm-empty p { font-size:.9375rem!important; line-height:1.5!important; }
html[data-appearance] body #modal-overlay .dm-link { margin-top:12px; font-size:.875rem; border-color:var(--appearance-line); }
html[data-appearance] body #modal-overlay .dm-composer textarea { min-height:46px!important; height:auto!important; max-height:120px!important; padding:10px!important; }
html[data-appearance] body #modal-overlay .dm-toggle input { min-height:22px!important; padding:0!important; }
html[data-appearance] body #modal-overlay .dm-peer { color:var(--appearance-text)!important; }
html[data-appearance] body #modal-overlay .dm-thread { padding:6px!important; }

/* Account and appearance selection: native radios remain keyboard accessible. */
html[data-appearance] body #modal-overlay[data-view="account-settings"] .cz-personal-head { min-height:0!important; padding:18px!important; margin-bottom:16px; }
html[data-appearance] body #modal-overlay[data-view="account-settings"] .cz-personal-head h2 { font-size:clamp(1.5rem,5vw,2rem)!important; line-height:1.15!important; }
html[data-appearance] body #modal-overlay[data-view="account-settings"] .cz30-tabs {
  display:flex!important; flex-wrap:wrap; gap:6px; position:static!important; overflow:visible!important; background:transparent!important;
}
html[data-appearance] body #modal-overlay[data-view="account-settings"] .cz30-tabs button { flex:1 1 120px; min-height:44px!important; font-size:.8125rem!important; }
.cz-appearance-panel { padding:8px 0 20px; color:var(--appearance-text); }
.cz-appearance-panel h3 { margin:0 0 8px; font-size:1.25rem; }
.cz-appearance-panel p { color:var(--appearance-muted); font-size:.9375rem; line-height:1.55; }
.cz-appearance-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0; border:0; margin:18px 0; min-width:0; }
.cz-appearance-options legend { padding:0 0 10px; font-size:.875rem; }
html[data-appearance] body #modal-overlay .cz-appearance-choice {
  position:relative; display:flex!important; flex-direction:column; align-items:stretch; gap:8px;
  padding:12px!important; min-width:0; border:1px solid var(--appearance-line); border-radius:16px;
  color:var(--appearance-text)!important; background:var(--appearance-deep); cursor:pointer;
}
html[data-appearance] body #modal-overlay .cz-appearance-choice:has(input:checked) { border-color:var(--appearance-orange); box-shadow:inset 0 0 0 1px var(--appearance-orange); }
html[data-appearance] body #modal-overlay .cz-appearance-choice input {
  position:absolute; top:16px; right:16px; width:22px!important; height:22px!important; min-height:22px!important; margin:0!important; padding:0!important; accent-color:#ff6600;
}
.cz-appearance-choice strong { font-size:.9375rem; }
.cz-appearance-choice small { color:var(--appearance-muted); font-size:.8125rem; line-height:1.4; }
.cz-appearance-preview { display:grid; gap:9px; padding:16px; height:94px; border-radius:10px; background:#29292f; }
.cz-appearance-preview[data-preview="warm"] { background:#514b43; }
.cz-appearance-preview i { width:40%; height:9px; border-radius:9px; background:#ff6600; }
.cz-appearance-preview b { width:75%; height:9px; border-radius:9px; background:#c0bac4; }
.cz-appearance-preview em { width:50%; height:9px; border-radius:9px; background:#9cff00; }
.cz-appearance-status { min-height:2.5em; }

/* Shared, visible safety actions and a proper destination for Home -> Hinweise. */
.cz-privacy-editor { max-width:760px; margin-inline:auto; padding:8px 0 20px; }
.cz-privacy-editor header h2 { margin:0 0 8px; font-size:1.5rem; }
.cz-privacy-editor p { color:var(--appearance-muted); line-height:1.5; }
.cz-privacy-editor fieldset { border:0; padding:0; margin:0; min-width:0; }
.cz-privacy-field { display:grid; gap:8px; font-weight:700; }
.cz-privacy-modules { display:grid; gap:10px; }
.cz-privacy-module { display:grid; grid-template-columns:minmax(0,1fr) minmax(150px,1fr); gap:10px; align-items:center; padding-block:8px; border-bottom:1px solid var(--appearance-line); }
.cz-privacy-module label,.cz-privacy-switch-list label { display:flex; align-items:center; gap:10px; min-height:44px; }
.cz-privacy-switch-list { display:grid; gap:8px; }
html[data-appearance] body #modal-overlay .cz-privacy-editor input[type="checkbox"] { width:22px!important; height:22px!important; min-height:22px!important; flex:0 0 22px; accent-color:var(--appearance-orange); }
.cz-privacy-explainer { font-size:.875rem; }
.cz-privacy-save { position:sticky; bottom:0; z-index:2; margin-top:18px; padding:12px; border:1px solid var(--appearance-line); border-radius:14px; background:var(--appearance-panel); }
html[data-appearance] body #modal-overlay .cz-privacy-save button { width:100%; min-height:46px; border:0; border-radius:12px; background:var(--appearance-orange); color:#18130e; font-weight:800; }
.cz-privacy-save p { margin:8px 0 0; font-size:.875rem; }
.cz-privacy-blocks { margin-top:24px; }
.cz-privacy-blocks summary { min-height:44px; padding:10px 0; cursor:pointer; }
.cz-own-profile-editor { max-width:800px; margin-inline:auto; }
html[data-appearance] body #modal-overlay[data-view="profile-edit"] .cz-editor-savebar { position:sticky!important; bottom:0!important; background:var(--appearance-panel)!important; }
html[data-appearance] body #modal-overlay[data-view="profile-edit"] .cz-editor-card { background:var(--appearance-panel)!important; }
html[data-appearance] body #modal-overlay[data-view="profile-edit"] .cz-profile-editor-head { top:0; }
@media(max-width:540px) {
  .cz-privacy-module { grid-template-columns:1fr; gap:4px; }
  html[data-appearance] body #modal-overlay[data-view="profile-edit"] :is(.cz-editor-grid,.cz-privacy-switches) { grid-template-columns:1fr!important; }
  html[data-appearance] body #modal-overlay[data-view="profile-edit"] .cz-module-row { display:flex; flex-wrap:wrap; gap:8px; }
  html[data-appearance] body #modal-overlay[data-view="profile-edit"] .cz-module-row select { min-width:160px; flex:1; }
}
html[data-appearance] body :is(.cz-ban-center,.cz-safety-report,.cz-notification-center) { color:var(--appearance-text); }
.cz-ban-center header p,.cz-ban-center small,.cz-ban-scope-note { color:var(--appearance-muted); }
.cz-ban-form,.cz-safety-report { display:grid; gap:14px; }
.cz-ban-form label,.cz-safety-report>label:not(.cz-setting-toggle) { display:grid; gap:6px; }
.cz-ban-form input,.cz-ban-form select,.cz-ban-form textarea { width:100%; }
.cz-ban-list article { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 0; border-bottom:1px solid var(--appearance-line); }
.cz-ban-list article>div { min-width:0; overflow-wrap:anywhere; }
.cz-ban-list p { margin:6px 0; }
.cz-ban-scope { display:inline-block; margin-left:8px; color:var(--appearance-orange-text); font-size:.8125rem; }
html[data-appearance] body :is(#modal-overlay,#admin-overlay) :is(.cz-ban-center button,.cz-safety-report button,.cz-notification-center button,.member-report-btn,.cz-report-button) {
  min-height:44px!important; padding:9px 13px!important; font:inherit!important;
  color:var(--appearance-orange-text)!important; background:var(--appearance-input)!important;
  border:1px solid var(--appearance-line)!important; border-radius:12px!important; cursor:pointer;
}
html[data-appearance] body :is(#modal-overlay,#admin-overlay) .cz-ban-form button[type="submit"],
html[data-appearance] body #modal-overlay #safety-report-submit {
  color:#19130c!important; background:var(--appearance-orange)!important; font-weight:750!important;
}
html[data-appearance] body #modal-overlay .member-report-btn { padding:5px 9px!important; margin-top:6px; font-size:.8125rem!important; }
html[data-appearance] body #modal-overlay[data-view="profile"] .cz30-actions { flex-wrap:wrap; }
html[data-appearance] body #modal-overlay[data-view="profile"] #profile-report-btn {
  grid-column:1 / -1; max-width:none!important; min-width:0; font-size:.875rem!important;
}
.cz-ban-status:empty { display:none; }
.cz-ban-status { color:var(--appearance-orange-text); }
html[data-appearance] body #modal-overlay .cz-mod-admin-tabs { display:flex!important; flex-wrap:wrap!important; gap:6px!important; }
html[data-appearance] body #modal-overlay .cz-mod-admin-tabs button { flex:1 1 90px; min-height:44px!important; font-size:.8125rem!important; }
html[data-appearance] body #notification-center .notif-dropdown-header { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:0 0 14px; font-size:1rem; }
html[data-appearance] body #notification-center .notif-item { display:block; padding:16px 12px; font-size:1rem; line-height:1.5; color:var(--appearance-text); border-bottom:1px solid var(--appearance-line); }
html[data-appearance] body #notification-center .notif-item-time { margin-top:6px; font-size:.8125rem; color:var(--appearance-muted); }

html[data-appearance] body.cz-help-page { background:var(--appearance-bg)!important; }
html[data-appearance] body.cz-help-page :is(.top,.cz-info-top,.cz-help-accordion,.command-group,.help-card) { background:var(--appearance-panel)!important; }
@media(max-width:380px) {
  .cz-appearance-options { grid-template-columns:1fr; }
  .cz-appearance-preview { height:76px; }
}
@media(max-width:800px) {
  html[data-appearance] body.cz-youth-auth #cz-youth-top { box-shadow:0 3px 14px #0003!important; }
  html[data-appearance] body.cz-youth-auth .cz-youth-top-actions button { width:44px!important; height:44px!important; }
  html[data-appearance] body #modal-overlay:has(.dm-shell) { bottom:calc(var(--y-dock-height) + max(16px, env(safe-area-inset-bottom)))!important; }
  html[data-appearance] body #modal-overlay:has(.dm-shell) .modal-body { padding:12px!important; }
}

/* Team stays one tap away without widening the chat toolbar on phones. */
#home-screen #home-team-btn {
  min-height:44px; margin-left:auto; padding:8px 14px;
  border:1px solid var(--appearance-line); border-radius:10px;
  color:var(--appearance-text); background:var(--appearance-panel); font-weight:700;
}
@media (max-width:800px) {
  #home-screen #home-team-btn { display:none; }
}
html[data-appearance] body #cz-youth-top .cz-youth-top-actions .cz-team-shortcut {
  width:auto!important; min-width:44px; padding:0 8px!important;
  font-size:12px!important; font-weight:700; color:#ff6600!important;
}
html[data-appearance] body #app #cz-chat-tools {
  display:grid!important; grid-template-columns:repeat(6,minmax(0,1fr));
  gap:2px!important; overflow:visible!important;
}
html[data-appearance] body #app #cz-chat-tools button {
  min-width:0!important; padding-left:2px!important; padding-right:2px!important;
}
html[data-appearance] body.cz-keyboard-open #app #cz-chat-tools { display:none!important; }

/* Chat output uses the same type size as messages. Only names use user colours. */
html[data-appearance] body #app #log {
  --chat-message-size:15px;
  box-sizing:border-box!important;
  gap:0!important;
  padding-bottom:calc(16px + var(--chat-occlusion,0px))!important;
  scroll-padding-bottom:calc(16px + var(--chat-occlusion,0px));
}
/* No blank rows between messages; keep natural wrapping on narrow screens. */
html[data-appearance] body #app #log > .line {
  flex:0 0 auto!important; min-height:0!important;
  margin-top:0!important; margin-bottom:0!important;
  padding-top:0!important; padding-bottom:0!important;
}
html[data-appearance] body #app #log .line.chat {
  display:block!important; line-height:1.5!important;
}
html[data-appearance] body #app #log .line.chat :is(.name,.text) {
  display:inline!important; white-space:normal!important; overflow-wrap:anywhere;
  font-size:var(--chat-message-size)!important; line-height:1.5!important;
}
html[data-appearance] body #app #log .line:is(.system,.system-italic,.system-error,.system-roomchange,.command-output,.room-overview,.whois-card) {
  color:#ffffff!important; background:transparent!important; border:0!important;
  border-radius:0!important; box-shadow:none!important;
  font-size:var(--chat-message-size,1rem)!important; line-height:1.5!important;
  padding:0!important; margin:0!important;
}
html[data-appearance] body #app #log .line:is(.system,.system-italic,.system-error,.system-roomchange,.command-output) .text {
  color:#ffffff!important; font-size:inherit!important;
  font-style:inherit!important; font-weight:inherit!important;
}
html[data-appearance] body #app #log .line:is(.chat-command-message,.room-overview) {
  font-style:italic!important; font-weight:700!important;
}
html[data-appearance] body #app #log .line.whois-card {
  font-style:normal!important; font-weight:400!important;
}
html[data-appearance] body #app #log .line.chat-presence-message {
  font-style:italic!important; font-weight:400!important;
}
html[data-appearance] body #app #log .line:is(.room-overview,.whois-card) :is(div,span,b,i,a,small) {
  font-size:inherit!important; line-height:inherit!important;
  font-style:inherit!important; font-weight:inherit!important;
}
html[data-appearance] body #app #log .line.whois-card :is(.whois-title,.whois-meta) {
  font-family:inherit!important; font-style:normal!important; font-weight:400!important;
  letter-spacing:normal!important;
}
html[data-appearance] body #app #log .line.whois-card :is(.whois-name,.role-tag) {
  font-style:normal!important; font-weight:700!important;
}
html[data-appearance] body #app #log .line:is(.room-overview,.whois-card) :is(div,b,i,.whois-meta,.info-link,.rolebadge,.role-badge,.role-tag) {
  color:#ffffff!important;
}
html[data-appearance] body #app #log .line.room-overview > div {
  margin:0!important; padding:0!important;
}
/* Only headings/totals are italic; member details, links and badges stay upright. */
html[data-appearance] body #app #log .line.room-overview .chat-member-row,
html[data-appearance] body #app #log .line.room-overview .chat-member-row * {
  font-style:normal!important;
}
html[data-appearance] body #app #log .line .text .chat-action-name {
  color:var(--chat-person-color,#ffffff)!important; font-size:inherit!important;
  font-style:inherit!important; font-weight:inherit!important;
}

/* Community compass: readable German headings and wrapped navigation on phones. */
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .modal-body {
  min-width:0!important; max-width:100%!important; overflow-x:hidden!important;
  padding:14px!important; box-sizing:border-box!important;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard {
  width:100%!important; max-width:760px!important; min-width:0!important; margin:0 auto!important;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-hero {
  min-height:0!important; padding:20px!important; box-sizing:border-box;
  background:linear-gradient(125deg,#ff66001a,transparent),var(--appearance-deep)!important;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-hero h2 {
  max-width:100%!important; margin:10px 0!important; font-size:clamp(1.5rem,6vw,2.25rem)!important;
  line-height:1.12!important; letter-spacing:-.025em!important; text-transform:none!important;
  overflow-wrap:anywhere; hyphens:auto;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-hero p { font-size:1rem!important; line-height:1.5!important; }
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-tabs {
  display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px!important;
  overflow:visible!important; margin:14px 0!important; padding:0!important;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-tabs button {
  min-width:0!important; min-height:44px!important; padding:8px 5px!important;
  white-space:normal!important; font-size:.875rem!important; overflow-wrap:anywhere;
}
html[data-appearance] body #modal-overlay[data-view="leaderboard"] :is(.cz-podium,.cz-podium-place,.cz-rank-row,.cz-own-rank) { min-width:0!important; max-width:100%!important; box-sizing:border-box; }
html[data-appearance] body #modal-overlay[data-view="leaderboard"] :is(.cz-podium-place,.cz-rank-row)>span { min-width:0!important; overflow-wrap:anywhere; }
@media(max-width:540px) {
  html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-leaderboard-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-podium { grid-template-columns:minmax(0,1fr)!important; }
  html[data-appearance] body #modal-overlay[data-view="leaderboard"] :is(.cz-podium-place,.cz-rank-row) { grid-template-columns:24px 40px minmax(0,1fr)!important; gap:8px!important; }
  html[data-appearance] body #modal-overlay[data-view="leaderboard"] :is(.cz-podium-place,.cz-rank-row)>strong { grid-column:2 / -1; justify-self:start; }
  html[data-appearance] body #modal-overlay[data-view="leaderboard"] .cz-rank-row>i { display:none; }
}

/* Shared team guide and support: same controls in website, app and workspaces. */
:is(.cz-team-guide,.cz-support) { max-width:960px; margin:0 auto; color:var(--appearance-text,#f7f7fa); font:400 1rem/1.55 var(--sans,system-ui); overflow-wrap:anywhere; }
:is(.cz-team-guide,.cz-support) * { box-sizing:border-box; min-width:0; }
:is(.cz-team-guide,.cz-support) [hidden] { display:none!important; }
:is(.cz-team-guide,.cz-support) :is(h2,h3,p) { margin:0 0 14px; }
:is(.cz-team-guide-head,.cz-support-head) { padding:22px; border:1px solid var(--appearance-line,#414149); border-radius:20px; background:var(--appearance-raised,#29292f); margin-bottom:18px; }
:is(.cz-team-guide-head,.cz-support-head) h2 { font-size:clamp(1.4rem,5vw,2rem)!important; line-height:1.15; margin:8px 0 16px; }
:is(.cz-team-guide-kicker,.cz-support-head>small) { color:var(--appearance-accent,#ff7a15); font-size:.75rem; font-weight:800; letter-spacing:.08em; }
:is(.cz-team-guide,.cz-support) :is(small,.cz-support-help) { color:var(--appearance-muted,#b8b8c0); }
.cz-team-guide-online { font-size:.875rem; }
.cz-team-guide-contact { margin:12px 0 24px; }
:is(.cz-team-guide,.cz-support) :is(button,a,.cz-team-guide-person) { font:inherit; text-decoration:none; }
:is(.cz-team-guide-contact>a,.cz-team-guide-contact>button,.cz-support button) { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:10px 16px; border:1px solid var(--appearance-line,#414149); border-radius:12px; color:var(--appearance-text,#fff); background:var(--appearance-raised,#29292f); cursor:pointer; white-space:normal; }
:is(.cz-team-guide-contact>a,.cz-team-guide-contact>button,.cz-support button.primary,.cz-support button[aria-pressed="true"]) { background:#ff7300!important; color:#151515!important; font-weight:750; border-color:#ff7300; }
.cz-support button:disabled { opacity:.55; cursor:wait; }
.cz-team-guide-heading { padding:0 4px; }
.cz-team-guide-roles { display:grid; gap:12px; }
.cz-team-guide-role { border:1px solid var(--appearance-line,#414149); border-radius:18px; background:var(--appearance-panel,#202027); overflow:hidden; }
.cz-team-guide-role>summary { display:grid; grid-template-columns:44px minmax(0,1fr) 24px; align-items:center; gap:12px; list-style:none; cursor:pointer; padding:16px; }
.cz-team-guide-role>summary::-webkit-details-marker { display:none; }
.cz-team-guide-role>summary small { display:block; margin-top:3px; font-size:.8rem; }
.cz-team-guide-icon { width:44px; height:44px; display:grid; place-items:center; background:#ff730020; color:#ff8c2e; border-radius:12px; font-size:1.5rem; }
.cz-team-guide-chevron { transition:transform .15s; }
.cz-team-guide-role[open] .cz-team-guide-chevron { transform:rotate(180deg); }
.cz-team-guide-detail { border-top:1px solid var(--appearance-line,#414149); padding:18px; }
.cz-team-guide-detail ul { padding-left:22px; margin:12px 0 20px; }
.cz-team-guide-detail li { margin-bottom:8px; }
.cz-team-guide-scope { padding:14px; border-left:3px solid #ff7300; background:var(--appearance-raised,#29292f); border-radius:0 10px 10px 0; }
.cz-team-guide-scope>strong { display:block; margin-bottom:6px; }
.cz-team-guide-people { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr)); gap:10px; }
.cz-team-guide-person { display:flex; align-items:center; gap:12px; width:100%; text-align:left; padding:12px; background:var(--appearance-raised,#29292f); border:1px solid var(--appearance-line,#414149); border-radius:12px; color:inherit; }
.cz-team-guide-person-copy { flex:1; }
.cz-team-guide-person-copy small { display:block; }
.cz-team-guide-avatar { display:grid; place-items:center; flex:0 0 40px; height:40px; background:#15151b; border-radius:12px; color:var(--team-person-color,#ff7300); font-weight:800; }
.cz-team-guide-open { font-size:.8rem; }
.cz-team-guide-dot { display:inline-block; width:7px; height:7px; background:#9aff00; border-radius:50%; margin-right:6px; }
.cz-team-guide-principles { border-top:1px solid var(--appearance-line,#414149); margin-top:24px; padding:22px 4px; }
.cz-team-guide-principles h2 { font-size:1.25rem; }
.cz-support-tools { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; }
.cz-support-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0; }
.cz-support label { display:grid; gap:6px; font-size:.9rem; font-weight:650; }
.cz-support :is(input,textarea,select) { display:block; width:100%; max-width:100%; padding:12px; border:1px solid var(--appearance-line,#414149); border-radius:12px; background:var(--appearance-input,#12131b); color:var(--appearance-text,#fff); font:inherit; }
.cz-support textarea { resize:vertical; }
.cz-support-form { display:grid; gap:16px; margin-top:20px; }
.cz-support-form button { justify-self:start; }
.cz-support-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.cz-support .cz-support-card { display:flex; flex-direction:column; align-items:stretch; text-align:left; padding:16px; gap:10px; }
.cz-support-card-top { display:flex; justify-content:space-between; gap:8px; }
.cz-support-card>strong { font-size:1.1rem; }
.cz-support-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; font-size:.8rem; margin:10px 0; }
.cz-support-status { display:inline-block; padding:4px 10px; border:1px solid #ff8a3655; border-radius:50px; background:#ff73001c; }
.cz-support-status[data-state="closed"] { border-color:var(--appearance-line,#414149); background:transparent; }
.cz-support-message { margin:16px 0; padding:16px; border:1px solid var(--appearance-line,#414149); border-radius:16px; background:var(--appearance-raised,#29292f); }
.cz-support-message>header { display:flex; flex-wrap:wrap; gap:6px 16px; margin-bottom:12px; }
.cz-support-message time { font-size:.75rem; color:var(--appearance-muted,#b8b8c0); }
.cz-support-message p,.cz-support-evidence p { white-space:pre-wrap; }
.cz-support-message.internal { border-left:4px solid #ff9b36; }
.cz-support-message.internal header>strong { width:100%; color:#ffb35c; font-size:.8rem; }
:is(.cz-support-evidence,.cz-support-transfer) { padding:16px; margin:18px 0; border:1px solid var(--appearance-line,#414149); border-radius:14px; }
:is(.cz-support-evidence,.cz-support-transfer) summary { cursor:pointer; min-height:32px; }
.cz-support-transfer label { margin:12px 0; }
.cz-support-evidence blockquote { margin:14px 0; padding:12px; border-left:2px solid #ff7300; }
.cz-support [data-support-error]:not(:empty) { padding:12px; border:1px solid #ff6868; border-radius:10px; }
@media(max-width:600px) {
  .cz-support-list,.cz-support-filters { grid-template-columns:minmax(0,1fr); }
  :is(.cz-team-guide-head,.cz-support-head) { padding:16px; }
  .cz-team-guide-role>summary { grid-template-columns:36px minmax(0,1fr) 18px; padding:12px; gap:10px; }
  .cz-team-guide-icon { width:36px; height:36px; }
  .cz-team-guide-detail { padding:14px; }
  .cz-support-tools button { flex:1 1 140px; }
}
