/* Relic Tickets v1.0.0 — same light theme as the announcements and suggestion boards */
.rtk {
	--rtk-panel: #ffffff;
	--rtk-panel-2: #f4f4f5;
	--rtk-border: #e5e5e7;
	--rtk-border-hi: #d4d4d8;
	--rtk-text: #111113;
	--rtk-text-2: #3f3f46;
	--rtk-muted: #71717a;
	--rtk-ink: #0b0b0c;
	--rtk-accent: #e0322a;
	--rtk-accent-hi: #c4241d;
	--rtk-accent-soft: #fdeeed;
	--rtk-note: #fffbeb;
	--rtk-note-border: #f5d68a;
	--rtk-radius: 10px;
	--rtk-shadow: 0 1px 2px rgba(16, 16, 20, .04), 0 2px 8px rgba(16, 16, 20, .04);
	--rtk-shadow-hi: 0 2px 4px rgba(16, 16, 20, .05), 0 8px 24px rgba(16, 16, 20, .08);
	color: var(--rtk-text);
	font-size: 15px;
	line-height: 1.6;
	text-align: left;
	overflow-anchor: none;
}
.rtk *, .rtk *::before, .rtk *::after { box-sizing: border-box; }
.rtk a { color: var(--rtk-accent); text-decoration: none; }
.rtk a:hover { color: var(--rtk-accent-hi); text-decoration: underline; }
.rtk h1, .rtk h2, .rtk h3, .rtk h4 { margin: 0; padding: 0; border: 0; color: inherit; font-family: inherit; text-transform: none; letter-spacing: normal; }
.rtk svg { width: 1em; height: 1em; flex: none; }
.rtk button, .rtk input, .rtk select, .rtk textarea { font: inherit; text-transform: none; letter-spacing: normal; box-shadow: none; margin: 0; }
.rtk button { line-height: 1.2; }
.rtk-board { max-width: 1080px; margin: 0 auto 3em; padding-top: 8px; container-type: inline-size; }
.rtk-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.rtk-muted { color: var(--rtk-muted); }
.rtk-small { font-size: 13px; margin: 0; }

/* Header */
.rtk-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding-bottom: 18px; margin-bottom: 22px; border-bottom: 1px solid var(--rtk-border); }
.rtk-h { font-size: 32px !important; font-weight: 800; color: var(--rtk-ink) !important; line-height: 1.15; }
.rtk-h::after { content: ""; display: block; width: 44px; height: 3px; margin-top: 10px; background: var(--rtk-accent); border-radius: 2px; }
.rtk-sub { color: var(--rtk-muted); margin: 10px 0 0 !important; font-size: 15px; }
.rtk-head-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.rtk-section { font-size: 13px !important; font-weight: 800; letter-spacing: .06em; text-transform: uppercase !important; color: var(--rtk-muted); margin: 26px 0 12px !important; }
.rtk-section:first-of-type { margin-top: 0 !important; }

/* Buttons */
.rtk-btn, .rtk a.rtk-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 7px;
	padding: 9px 16px; min-height: 40px;
	background: var(--rtk-panel); color: var(--rtk-text);
	border: 1px solid var(--rtk-border-hi); border-radius: 8px;
	font-size: 14px; font-weight: 600; cursor: pointer; white-space: nowrap; text-decoration: none;
}
.rtk-btn:hover, .rtk a.rtk-btn:hover { border-color: var(--rtk-ink); color: var(--rtk-ink); text-decoration: none; }
.rtk-btn:disabled { opacity: .45; cursor: default; }
.rtk-btn-red, .rtk a.rtk-btn-red { background: var(--rtk-accent); border-color: var(--rtk-accent); color: #fff; }
.rtk-btn-red:hover, .rtk a.rtk-btn-red:hover { background: var(--rtk-accent-hi); border-color: var(--rtk-accent-hi); color: #fff; }
.rtk-btn-lg { min-height: 46px; padding: 11px 22px; font-size: 15px; }

/* Desk / My tickets switch */
.rtk-seg { display: inline-flex; padding: 3px; background: var(--rtk-panel-2); border: 1px solid var(--rtk-border); border-radius: 9px; }
.rtk-seg button { padding: 7px 14px; border: 0; border-radius: 6px; background: none; color: var(--rtk-muted); font-size: 14px; font-weight: 600; cursor: pointer; }
.rtk-seg button.is-on { background: var(--rtk-panel); color: var(--rtk-ink); box-shadow: var(--rtk-shadow); }

/* Category tiles */
.rtk-cats { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
.rtk .rtk-cat {
	position: relative; display: flex; align-items: flex-start; gap: 14px; width: 100%; padding: 16px;
	background: var(--rtk-panel); color: var(--rtk-text); text-align: left; text-decoration: none;
	border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow);
	cursor: pointer; transition: border-color .15s, box-shadow .15s, transform .15s;
}
.rtk .rtk-cat:hover { border-color: var(--rtk-cat); box-shadow: var(--rtk-shadow-hi); color: var(--rtk-text); text-decoration: none; transform: translateY(-1px); }
.rtk .rtk-cat.is-on { border-color: var(--rtk-cat); box-shadow: 0 0 0 1px var(--rtk-cat), var(--rtk-shadow-hi); }
.rtk-cats.has-pick .rtk-cat:not(.is-on) { opacity: .62; }
.rtk-cats.has-pick .rtk-cat:not(.is-on):hover { opacity: 1; }
.rtk-cat-ic {
	flex: none; display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 10px;
	color: var(--rtk-cat); background: color-mix(in srgb, var(--rtk-cat) 12%, #fff); font-size: 22px;
}
.rtk-cat.is-on .rtk-cat-ic { background: var(--rtk-cat); color: #fff; }
/* Theme button styles (nowrap, fixed height, centered text) must not leak into the form's tile buttons. */
.rtk button.rtk-cat { white-space: normal !important; height: auto !important; min-height: 0 !important; line-height: 1.4 !important; justify-content: flex-start !important; text-align: left !important; overflow: hidden; font-weight: 400; }
.rtk-cat-txt { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; min-width: 0; }
.rtk-cat-label, .rtk-cat-desc { white-space: normal !important; overflow-wrap: anywhere; }
.rtk-cat-label { font-weight: 800; color: var(--rtk-ink); font-size: 16px; line-height: 1.3; }
.rtk-cat-desc { color: var(--rtk-muted); font-size: 13.5px; line-height: 1.45; }

/* Tabs & toolbar */
.rtk-tabs { display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid var(--rtk-border); margin-bottom: 14px; }
.rtk-tab {
	display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; margin-bottom: -1px;
	background: none; border: 0; border-bottom: 2px solid transparent; color: var(--rtk-muted);
	font-size: 14px; font-weight: 700; cursor: pointer;
}
.rtk-tab:hover { color: var(--rtk-ink); }
.rtk-tab.is-on { color: var(--rtk-ink); border-bottom-color: var(--rtk-accent); }
.rtk-tab-n { min-width: 22px; padding: 0 7px; border-radius: 999px; background: var(--rtk-panel-2); color: var(--rtk-text-2); font-size: 12px; line-height: 20px; text-align: center; }
.rtk-tab.is-on .rtk-tab-n { background: var(--rtk-ink); color: #fff; }
.rtk-toolbar { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.rtk-toolbar select, .rtk-search { min-height: 38px; border: 1px solid var(--rtk-border-hi); border-radius: 8px; background: var(--rtk-panel); color: var(--rtk-text); font-size: 14px; }
.rtk-toolbar select { padding: 6px 10px; }
.rtk-search { flex: 1 1 260px; display: flex; align-items: center; gap: 8px; padding: 0 10px; color: var(--rtk-muted); }
.rtk-search:focus-within { border-color: var(--rtk-ink); }
.rtk .rtk-search input { flex: 1; min-width: 0; border: 0 !important; outline: 0; background: none; padding: 7px 0; font-size: 14px; color: var(--rtk-text); box-shadow: none !important; }

/* Ticket cards */
.rtk-list { display: flex; flex-direction: column; gap: 10px; transition: opacity .15s; }
.rtk-list.is-loading { opacity: .5; }
.rtk-card {
	position: relative; display: flex; gap: 16px; padding: 16px 18px;
	background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius);
	box-shadow: var(--rtk-shadow); transition: border-color .15s, box-shadow .15s;
}
.rtk-card:hover { border-color: var(--rtk-border-hi); box-shadow: var(--rtk-shadow-hi); }
.rtk-card.is-unread { border-color: #f3c9c6; background: linear-gradient(90deg, var(--rtk-accent-soft), var(--rtk-panel) 35%); }
.rtk-card.is-unread::before { content: ""; position: absolute; left: -1px; top: -1px; bottom: -1px; width: 4px; background: var(--rtk-accent); border-radius: var(--rtk-radius) 0 0 var(--rtk-radius); }
.rtk-card.is-closed .rtk-num { background: #52525b; }
.rtk .rtk-num {
	flex: none; width: 66px; align-self: flex-start;
	display: flex; flex-direction: column; align-items: center; padding: 8px 0 9px;
	background: var(--rtk-ink); color: #fff; border-radius: 9px; line-height: 1.1; text-decoration: none;
}
.rtk .rtk-num:hover { color: #fff; text-decoration: none; }
.rtk-num-l { font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #ff8a84; }
.rtk-num-n { font-size: 19px; font-weight: 800; margin-top: 4px; }
.rtk-num.is-long .rtk-num-n { font-size: 15px; }
.rtk-card-main { flex: 1; min-width: 0; }
.rtk-card-title { font-size: 18px !important; font-weight: 800; line-height: 1.3; margin: 2px 0 4px !important; overflow-wrap: anywhere; }
.rtk .rtk-card-title a { color: var(--rtk-ink); }
.rtk .rtk-card-title a:hover { color: var(--rtk-accent); text-decoration: none; }
.rtk-unread { display: inline-block; margin-left: 8px; padding: 1px 8px; border-radius: 999px; background: var(--rtk-accent); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; vertical-align: 3px; }
.rtk-excerpt { margin: 0 !important; color: var(--rtk-text-2); font-size: 14px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; }
.rtk-by { font-weight: 700; color: var(--rtk-ink); }

/* Badges */
.rtk-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
.rtk-badge { display: inline-flex; align-items: center; gap: 5px; padding: 2px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; line-height: 1.6; white-space: nowrap; }
.rtk-badge svg { font-size: 12px; }
.rtk-st-open { color: #1d4ed8; background: #e8effd; }
.rtk-st-answered { color: #15803d; background: #e7f7ec; }
.rtk-st-hold { color: #b45309; background: #fdf3e2; }
.rtk-st-closed { color: #52525b; background: var(--rtk-panel-2); }
.rtk-badge-cat { color: var(--rtk-cat); background: color-mix(in srgb, var(--rtk-cat) 10%, #fff); }
.rtk-badge-server { color: #fff; background: var(--rtk-ink); }
.rtk-badge-muted { color: var(--rtk-muted); background: var(--rtk-panel-2); }
.rtk-pri-high { color: #b45309; background: #fdf3e2; }
.rtk-pri-urgent { color: #fff; background: var(--rtk-accent); }
.rtk-badge-staff { color: #fff; background: var(--rtk-accent); font-size: 10px; padding: 0 7px; }
.rtk-badge-note { color: #92400e; background: #fde9b8; font-size: 10px; padding: 0 7px; }

/* Meta */
.rtk-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; color: var(--rtk-muted); font-size: 13px; }
.rtk-dot { opacity: .5; }
.rtk .rtk-author { display: inline-flex; align-items: center; gap: 7px; color: var(--rtk-ink); font-weight: 600; }
.rtk a.rtk-author:hover { color: var(--rtk-accent); text-decoration: none; }
.rtk .rtk-av {
	width: 24px !important; height: 24px !important; min-width: 0 !important; max-width: none !important; aspect-ratio: 1 / 1; flex: 0 0 auto;
	border-radius: 50%; object-fit: cover; border: 1px solid var(--rtk-border); margin: 0 !important; padding: 0 !important; background: var(--rtk-panel-2);
}
.rtk .rtk-av-lg { width: 40px !important; height: 40px !important; }
.rtk .rtk-av-xl { width: 48px !important; height: 48px !important; }
.rtk-assignee { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; font-weight: 600; color: var(--rtk-text-2); }
.rtk-assignee .rtk-av { width: 20px !important; height: 20px !important; }

.rtk-pager { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 20px; }
.rtk-pager:empty { display: none; }
.rtk-pageinfo { color: var(--rtk-muted); font-size: 13px; }
.rtk-empty { padding: 40px 16px; text-align: center; color: var(--rtk-muted); background: var(--rtk-panel-2); border: 1px dashed var(--rtk-border-hi); border-radius: var(--rtk-radius); }

/* Logged out */
.rtk-login { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; padding: 36px 20px; background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-top: 4px solid var(--rtk-accent); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow); }
.rtk-login-ic { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: var(--rtk-accent-soft); color: var(--rtk-accent); font-size: 26px; margin-bottom: 6px; }
.rtk-login h3 { font-size: 22px !important; font-weight: 800; color: var(--rtk-ink); }
.rtk-login p { max-width: 460px; margin: 0 0 12px !important; color: var(--rtk-muted); }

/* Single views */
.rtk-back { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 16px !important; background: none; border: 0; padding: 4px 0; color: var(--rtk-muted); cursor: pointer; font-size: 14px; font-weight: 600; }
.rtk-back:hover { color: var(--rtk-accent); }
.rtk-post { padding: 26px 30px; background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow); }
.rtk-post-title { font-size: 28px !important; font-weight: 800; line-height: 1.2; color: var(--rtk-ink); margin: 4px 0 0 !important; overflow-wrap: anywhere; }
.rtk-lead { color: var(--rtk-muted); margin: 8px 0 0 !important; }

/* New ticket form */
.rtk-form { max-width: 860px; }
.rtk-step { display: flex; align-items: center; gap: 10px; margin: 26px 0 12px; font-size: 16px; font-weight: 800; color: var(--rtk-ink); }
.rtk-step-n { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: var(--rtk-ink); color: #fff; font-size: 13px; }
.rtk-form .rtk-cats { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.rtk-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 0 16px; }
.rtk-field { margin-bottom: 16px; }
.rtk-field label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 700; color: var(--rtk-ink); }
.rtk-req { color: var(--rtk-accent); }
.rtk-opt { color: var(--rtk-muted); font-weight: 500; font-size: 12px; margin-left: 4px; }
.rtk .rtk-field input, .rtk .rtk-field select, .rtk .rtk-field textarea, .rtk-composer textarea {
	display: block; width: 100%; max-width: none; padding: 9px 12px; min-height: 42px;
	background: var(--rtk-panel); color: var(--rtk-text); border: 1px solid var(--rtk-border-hi); border-radius: 8px;
	font-size: 15px; line-height: 1.5; outline: none; transition: border-color .15s, box-shadow .15s;
}
.rtk .rtk-field textarea, .rtk-composer textarea { resize: vertical; min-height: 140px; }
.rtk .rtk-field input:focus, .rtk .rtk-field select:focus, .rtk .rtk-field textarea:focus, .rtk-composer textarea:focus { border-color: var(--rtk-ink); box-shadow: 0 0 0 3px rgba(11, 11, 12, .08); }
.rtk-help { margin: 6px 0 0 !important; color: var(--rtk-muted); font-size: 13px; line-height: 1.45; }
.rtk-help-top { margin: -2px 0 8px !important; }
.rtk-under { display: flex; justify-content: space-between; gap: 12px; }
.rtk-count { color: var(--rtk-muted); font-size: 12px; white-space: nowrap; margin-top: 6px; }
.rtk-field-email { max-width: 420px; }
.rtk-form-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding-top: 18px; margin-top: 6px; border-top: 1px solid var(--rtk-border); }
.rtk-form-actions .rtk-help { margin: 0 !important; }
.rtk-error { margin: 0 0 14px; padding: 10px 14px; border-radius: 8px; background: var(--rtk-accent-soft); color: var(--rtk-accent-hi); font-weight: 600; font-size: 14px; }
.rtk-error[hidden] { display: none; }
.rtk-callout { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 18px; padding: 12px 14px; border-radius: 8px; background: color-mix(in srgb, var(--rtk-cat, #2563eb) 7%, #fff); border: 1px solid color-mix(in srgb, var(--rtk-cat, #2563eb) 22%, #fff); color: var(--rtk-text-2); font-size: 14px; }
.rtk-callout svg { font-size: 18px; margin-top: 2px; color: var(--rtk-cat, #2563eb); }
.rtk-callout p { margin: 0 !important; }
.rtk-callout-muted { --rtk-cat: #71717a; }

/* Ticket page layout */
.rtk-layout { display: block; }
.rtk-layout.has-side { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 20px; align-items: start; }
.rtk-main { min-width: 0; }
.rtk-tk-head { padding: 22px 26px; }
.rtk-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px 20px; margin: 18px 0 0 !important; padding: 14px 16px; background: var(--rtk-panel-2); border-radius: 8px; }
.rtk-fields dt { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--rtk-muted); }
.rtk-fields dd { margin: 2px 0 0 !important; font-weight: 600; color: var(--rtk-ink); overflow-wrap: anywhere; }

/* Thread */
.rtk-thread { display: flex; flex-direction: column; gap: 12px; margin: 16px 0; }
.rtk-msg { display: flex; gap: 14px; padding: 18px 20px; background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow); }
.rtk-msg-staff { border-left: 4px solid var(--rtk-accent); }
.rtk-msg.is-note { background: var(--rtk-note); border-color: var(--rtk-note-border); border-left: 4px solid #e5a91a; }
.rtk-msg-body { flex: 1; min-width: 0; }
.rtk-msg-head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 6px; font-size: 13px; color: var(--rtk-muted); }
.rtk .rtk-msg-name { font-weight: 800; font-size: 15px; color: var(--rtk-ink); }
.rtk a.rtk-msg-name:hover { color: var(--rtk-accent); text-decoration: none; }
.rtk-content { font-size: 15.5px; line-height: 1.65; color: var(--rtk-text-2); overflow-wrap: anywhere; }
.rtk-content > *:first-child { margin-top: 0 !important; }
.rtk-content > *:last-child { margin-bottom: 0 !important; }
.rtk-content p { margin: 0 0 .9em !important; }
.rtk-content strong, .rtk-content b { color: var(--rtk-ink); }
.rtk-content ul, .rtk-content ol { margin: 0 0 .9em 1.3em !important; padding: 0 !important; }
.rtk-content li::marker { color: var(--rtk-accent); }
.rtk-content blockquote { margin: .8em 0 !important; padding: 8px 14px !important; background: var(--rtk-panel-2); border: 0 !important; border-left: 3px solid var(--rtk-border-hi) !important; border-radius: 0 8px 8px 0; color: var(--rtk-muted); font-style: normal; font-size: 14.5px; }
.rtk-content blockquote::before, .rtk-content blockquote::after { content: none !important; }
.rtk-content pre, .rtk-content code { background: var(--rtk-panel-2); border-radius: 5px; font-size: 13.5px; }
.rtk-content code { padding: 1px 5px; }
.rtk-content pre { padding: 10px 12px; overflow-x: auto; white-space: pre-wrap; }
.rtk-content h2, .rtk-content h3, .rtk-content h4 { font-size: 17px !important; font-weight: 800; color: var(--rtk-ink); margin: 1em 0 .4em !important; }

.rtk-sys { display: flex; align-items: center; gap: 10px; color: var(--rtk-muted); font-size: 13px; padding: 0 6px; }
.rtk-sys-line { flex: 1; height: 1px; background: var(--rtk-border); }
.rtk-sys-txt { display: block; max-width: 80%; text-align: center; }
.rtk-sys-txt svg { vertical-align: -2px; margin-right: 4px; }
.rtk-sys.is-note .rtk-sys-txt { color: #a16207; }

.rtk-files { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.rtk .rtk-file { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; padding: 6px 10px; border: 1px solid var(--rtk-border); border-radius: 8px; background: var(--rtk-panel-2); color: var(--rtk-text); font-size: 13px; }
.rtk .rtk-file:hover { border-color: var(--rtk-ink); text-decoration: none; color: var(--rtk-ink); }
.rtk .rtk-file img { width: 44px !important; height: 34px !important; object-fit: cover; border-radius: 4px; margin: 0 !important; }
.rtk-file-name { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 220px; }
.rtk-file-size { color: var(--rtk-muted); }

/* Composer */
.rtk-composer { padding: 14px; background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow); }
.rtk-composer.is-note { background: var(--rtk-note); border-color: var(--rtk-note-border); }
.rtk-composer textarea { min-height: 120px; }
.rtk-ctabs { display: flex; gap: 4px; margin-bottom: 10px; }
.rtk-ctabs button { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid transparent; border-radius: 7px; background: none; color: var(--rtk-muted); font-size: 13.5px; font-weight: 700; cursor: pointer; }
.rtk-ctabs button:hover { color: var(--rtk-ink); }
.rtk-ctabs button.is-on { background: var(--rtk-panel-2); border-color: var(--rtk-border); color: var(--rtk-ink); }
.rtk-composer.is-note .rtk-ctabs button.is-on { background: #fde9b8; border-color: var(--rtk-note-border); color: #92400e; }
.rtk-composer-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; }
.rtk-composer-bar select { min-height: 40px; padding: 6px 10px; border: 1px solid var(--rtk-border-hi); border-radius: 8px; background: var(--rtk-panel); color: var(--rtk-text); font-size: 14px; }
.rtk-grow { flex: 1; }
.rtk-composer .rtk-count { margin: 0; }
.rtk-composer .rtk-error { margin: 10px 0 0; }
.rtk-solved { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 12px; color: var(--rtk-muted); font-size: 14px; }
.rtk-closed { display: flex; align-items: center; gap: 12px; padding: 16px 18px; background: var(--rtk-panel-2); border: 1px dashed var(--rtk-border-hi); border-radius: var(--rtk-radius); color: var(--rtk-text-2); }
.rtk-closed > svg { font-size: 20px; color: var(--rtk-muted); }

/* Staff sidebar */
.rtk-side { display: flex; flex-direction: column; gap: 12px; position: sticky; top: 90px; }
.rtk-box { padding: 16px; background: var(--rtk-panel); border: 1px solid var(--rtk-border); border-radius: var(--rtk-radius); box-shadow: var(--rtk-shadow); }
.rtk-box h4 { font-size: 12px !important; font-weight: 800; letter-spacing: .06em; text-transform: uppercase !important; color: var(--rtk-ink); margin: 0 0 12px !important; }
.rtk-ctl { display: flex; flex-direction: column; gap: 10px; }
.rtk-ctl label { display: grid; grid-template-columns: 74px 1fr; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--rtk-muted); }
.rtk-ctl select { width: 100%; min-height: 34px; padding: 4px 8px; border: 1px solid var(--rtk-border-hi); border-radius: 7px; background: var(--rtk-panel); color: var(--rtk-text); font-size: 13.5px; }
.rtk-player { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.rtk-player strong { display: block; color: var(--rtk-ink); line-height: 1.3; overflow-wrap: anywhere; }
.rtk-player .rtk-muted { font-size: 12.5px; }
.rtk-plinks, .rtk-hist { list-style: none !important; margin: 0 !important; padding: 0 !important; font-size: 13.5px; }
.rtk-plinks li { margin: 0 0 6px !important; overflow-wrap: anywhere; }
.rtk-plinks a { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.rtk-btn-sm, .rtk a.rtk-btn-sm { min-height: 32px; padding: 5px 12px; font-size: 13px; }
.rtk-btn-block { width: 100%; margin-top: 12px; }
.rtk-btn-block[data-block="1"]:hover { border-color: var(--rtk-accent); color: var(--rtk-accent); }
.rtk-blocked-note { display: flex; align-items: center; gap: 6px; margin-top: 12px; padding: 7px 10px; border-radius: 7px; background: var(--rtk-accent-soft); color: var(--rtk-accent-hi); font-size: 13px; font-weight: 700; }
.rtk-copy { cursor: pointer; padding: 1px 5px; border-radius: 4px; background: var(--rtk-panel-2); font-size: 12.5px; }
.rtk-copy:hover { background: var(--rtk-border); }
.rtk-copy.is-copied { background: #e7f7ec; color: #15803d; }
.rtk-hist li { margin: 0 !important; border-top: 1px solid var(--rtk-border); }
/* Themes often draw their own bullets with ::before; the sidebar lists don't want them. */
.rtk-plinks li, .rtk-hist li { list-style: none !important; padding-left: 0 !important; background: none !important; }
.rtk-plinks li::before, .rtk-hist li::before, .rtk-plinks li::marker, .rtk-hist li::marker { content: none !important; display: none !important; }
.rtk-hist li:first-child { border-top: 0; }
.rtk .rtk-hist a { display: flex; flex-direction: column; padding: 7px 0; color: var(--rtk-ink); }
.rtk .rtk-hist a:hover { text-decoration: none; }
.rtk .rtk-hist a:hover .rtk-hist-t { color: var(--rtk-accent); }
.rtk-hist-t { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rtk-hist .rtk-muted { font-size: 12px; }

/* [relic_tickets_notice] */
a.rtk-notice, a.rtk-notice:visited { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 999px; background: #e0322a; color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: none !important; }
a.rtk-notice:hover { background: #c4241d; }
.rtk-notice-dot { width: 8px; height: 8px; border-radius: 50%; background: #fff; animation: rtk-pulse 1.6s ease-in-out infinite; }
@keyframes rtk-pulse { 50% { opacity: .35; } }

/* Staff sidebar drops above the thread when the content column is narrow (theme width, not just screen width). */
@container (max-width: 860px) {
	.rtk-layout.has-side { grid-template-columns: 1fr; }
	.rtk-side { position: static; order: -1; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); align-items: start; }
}
@media (max-width: 900px) {
	.rtk-layout.has-side { grid-template-columns: 1fr; }
	.rtk-side { position: static; order: -1; }
}
@media (max-width: 640px) {
	.rtk-head { flex-direction: column; align-items: stretch; }
	.rtk-head-actions { justify-content: space-between; }
	.rtk-h { font-size: 26px !important; }
	.rtk-card { gap: 12px; padding: 14px; }
	.rtk .rtk-num { width: 54px; }
	.rtk-num-n { font-size: 16px; }
	.rtk-num.is-long .rtk-num-n { font-size: 13px; }
	.rtk-assignee { margin-left: 0; }
	.rtk-post, .rtk-tk-head { padding: 18px; }
	.rtk-post-title { font-size: 22px !important; }
	.rtk-msg { padding: 14px; gap: 10px; }
	.rtk .rtk-av-lg { width: 32px !important; height: 32px !important; }
	.rtk-composer-bar .rtk-btn { width: 100%; }
	.rtk-composer-bar select { flex: 1 1 100%; }
	.rtk-under { flex-direction: column; gap: 0; }
	.rtk-toolbar select { flex: 1 1 45%; }
}
