/* =========================================================
   DataFirefly — Support / SAV styles
   Frontend dashboard + public help center + admin tabs
   ========================================================= */

/* ============================================================
   Account menu badge
   ============================================================ */
.df-sav-badge{
	display:inline-block;
	min-width:18px;
	padding:1px 6px;
	background:var(--amber-deep);
	color:#1a1207;
	border-radius:99px;
	font-size:11px;
	font-weight:600;
	text-align:center;
	margin-left:6px;
	vertical-align:middle;
}

/* ============================================================
   FRONTEND : Customer dashboard
   ============================================================ */
.df-sav-dash{max-width:920px}
.df-sav-dash-head{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:24px;
	margin-bottom:24px;
}
.df-sav-dash-head h2{margin:0 0 8px}
.df-sav-welcome{
	background:color-mix(in oklab, var(--amber) 10%, transparent);
	border:1px solid color-mix(in oklab, var(--amber) 30%, transparent);
	border-radius:10px;
	padding:14px 18px;
	margin-bottom:18px;
	color:var(--ink);
}
.df-sav-welcome p:last-child{margin-bottom:0}

/* Filters tabs */
.df-sav-filters{
	display:flex;
	gap:4px;
	margin-bottom:16px;
	border-bottom:1px solid var(--line);
}
.df-sav-filter{
	padding:10px 16px;
	color:var(--ink-3);
	text-decoration:none;
	border-bottom:2px solid transparent;
	font-size:14px;
	transition:all .12s;
	display:inline-flex;
	align-items:center;
	gap:8px;
}
.df-sav-filter:hover{color:var(--ink);background:var(--bg-2)}
.df-sav-filter.is-active{
	color:var(--ink);
	border-bottom-color:var(--amber-deep);
	font-weight:500;
}
.df-sav-filter-count{
	background:var(--bg-2);
	color:var(--ink-2);
	padding:0 8px;
	border-radius:99px;
	font-size:12px;
	font-weight:600;
	min-width:20px;
	text-align:center;
}
.df-sav-filter.is-active .df-sav-filter-count{
	background:var(--amber);
	color:#1a1207;
}

/* Empty state */
.df-sav-empty{
	padding:48px 32px;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:14px;
	text-align:center;
}
.df-sav-empty h3{margin:0 0 8px;color:var(--ink)}
.df-sav-empty p{color:var(--ink-2);margin:0 0 18px}

/* Ticket list */
.df-sav-ticket-list{list-style:none;padding:0;margin:0}
.df-sav-ticket-item{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:12px;
	margin-bottom:10px;
	transition:all .12s;
}
.df-sav-ticket-item:hover{
	border-color:color-mix(in oklab, var(--amber-deep) 40%, var(--line));
	transform:translateY(-1px);
	box-shadow:0 4px 12px rgba(0,0,0,.04);
}
.df-sav-ticket-link{
	display:flex;
	justify-content:space-between;
	gap:24px;
	padding:18px 22px;
	color:inherit;
	text-decoration:none;
}
.df-sav-ticket-main{flex:1;min-width:0}
.df-sav-ticket-meta{
	display:flex;
	gap:8px;
	align-items:center;
	flex-wrap:wrap;
	margin-bottom:6px;
	font-size:13px;
}
.df-sav-id{color:var(--ink-3);font-family:'JetBrains Mono', ui-monospace, monospace;font-size:12px}
.df-sav-cat{color:var(--ink-3)}
.df-sav-prod{
	color:var(--amber-deep);
	font-weight:500;
}
.df-sav-ticket-subject{
	font-size:16px;
	margin:0;
	color:var(--ink);
	font-weight:500;
}
.df-sav-ticket-aside{
	text-align:right;
	flex-shrink:0;
	font-size:13px;
}
.df-sav-ticket-when{color:var(--ink-3)}
.df-sav-rate-prompt{
	margin-top:4px;
	font-size:12px;
	color:var(--amber-deep);
	font-weight:500;
}

/* Status pills */
.df-sav-pill{
	display:inline-block;
	padding:3px 10px;
	border-radius:99px;
	font-size:12px;
	font-weight:500;
	background:var(--chip);
	color:var(--ink-2);
	white-space:nowrap;
}
.df-sav-pill-open{background:color-mix(in oklab, #3b82f6 14%, transparent);color:#1d4ed8}
.df-sav-pill-waiting_customer{background:color-mix(in oklab, #f5a83a 14%, transparent);color:#a96b00}
.df-sav-pill-resolved{background:color-mix(in oklab, #22c55e 14%, transparent);color:#15803d}
.df-sav-pill-closed{background:color-mix(in oklab, #71717a 14%, transparent);color:#3f3f46}
.df-sav-pill-prio-low{background:#e5e7eb;color:#374151}
.df-sav-pill-prio-normal{background:color-mix(in oklab, #3b82f6 10%, transparent);color:#1e40af}
.df-sav-pill-prio-high{background:color-mix(in oklab, #ef4444 14%, transparent);color:#b91c1c}

/* ============================================================
   Ticket detail
   ============================================================ */
.df-sav-back{margin-bottom:14px}
.df-sav-back a{color:var(--ink-3);text-decoration:none;font-size:14px}
.df-sav-back a:hover{color:var(--ink)}

.df-sav-detail-head{
	display:grid;
	grid-template-columns:1fr 280px;
	gap:32px;
	padding:24px;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:14px;
	margin-bottom:24px;
}
@media (max-width:880px){
	.df-sav-detail-head{grid-template-columns:1fr}
}
.df-sav-detail-title h2{margin:8px 0}
.df-sav-detail-meta{color:var(--ink-3);font-size:14px;margin:0}
.df-sav-detail-sidebar{font-size:14px}
.df-sav-sb-row{
	display:flex;
	justify-content:space-between;
	gap:12px;
	padding:6px 0;
	border-bottom:1px solid var(--line);
}
.df-sav-sb-row:last-child{border-bottom:0}
.df-sav-sb-l{color:var(--ink-3);font-size:13px}
.df-sav-sb-v{color:var(--ink);text-align:right}
.df-sav-sb-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.df-sav-sb-env{
	font-size:13px;
	padding:4px 0;
}
.df-sav-sb-env code{color:var(--ink-3);font-size:12px}

/* Conversation thread */
.df-sav-thread{
	margin-bottom:24px;
}
.df-sav-msg{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:14px;
	padding:20px;
	margin-bottom:14px;
}
.df-sav-msg-staff{
	background:linear-gradient(135deg, color-mix(in oklab, var(--amber) 8%, var(--card)) 0%, var(--card) 100%);
	border-color:color-mix(in oklab, var(--amber) 25%, var(--line));
}
.df-sav-msg-head{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:12px;
}
.df-sav-msg-author{
	display:flex;
	align-items:center;
	gap:10px;
}
.df-sav-avatar{
	width:32px;
	height:32px;
	border-radius:50%;
	display:inline-block;
	vertical-align:middle;
}
.df-sav-avatar-staff{
	background:#1a1207;
	color:#fff8e6;
	display:grid;
	place-items:center;
	font-weight:600;
	font-size:13px;
}
.df-sav-msg-when{color:var(--ink-3);font-size:13px}
.df-sav-msg-body{color:var(--ink);line-height:1.6;font-size:15px}
.df-sav-msg-body p{margin:0 0 12px}
.df-sav-msg-body p:last-child{margin-bottom:0}
.df-sav-msg-body code{background:var(--bg-2);padding:1px 6px;border-radius:4px;font-size:13px}
.df-sav-msg-body pre{background:var(--bg-2);padding:12px;border-radius:6px;overflow-x:auto;font-size:13px}

/* Attachments inside messages */
.df-sav-msg-att{
	list-style:none;
	padding:0;
	margin:14px 0 0;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.df-sav-msg-att li{margin:0}
.df-sav-att-img img{
	max-width:160px;
	max-height:120px;
	border-radius:8px;
	border:1px solid var(--line);
	display:block;
}
.df-sav-att-file{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:8px 12px;
	background:var(--bg-2);
	border:1px solid var(--line);
	border-radius:8px;
	color:var(--ink);
	text-decoration:none;
	font-size:14px;
	transition:background .12s;
}
.df-sav-att-file:hover{background:var(--chip)}
.df-sav-att-file small{color:var(--ink-3);margin-left:4px}

/* Reply form */
.df-sav-reply-form{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:14px;
	padding:22px;
}
.df-sav-reply-form h3{margin:0 0 14px}
.df-sav-reply-form textarea{
	width:100%;
	padding:12px 14px;
	border:1px solid var(--line);
	border-radius:10px;
	background:var(--bg);
	color:var(--ink);
	font-size:15px;
	font-family:inherit;
	resize:vertical;
}
.df-sav-reply-form textarea:focus{
	outline:none;
	border-color:var(--amber-deep);
	box-shadow:0 0 0 3px var(--glow);
}
.df-sav-reply-actions{
	display:flex;
	gap:12px;
	margin-top:14px;
	align-items:center;
	flex-wrap:wrap;
}
.df-sav-msg-status{
	margin-top:12px;
	font-size:14px;
	min-height:18px;
}
.df-sav-msg-status.is-ok{color:#15803d}
.df-sav-msg-status.is-err{color:#b91c1c}

/* Attachment zone (new + reply) */
.df-sav-att-zone{margin-top:14px}
.df-sav-att-label{
	display:block;
	margin-bottom:6px;
}
.df-sav-att-label span{
	display:block;
	font-size:13px;
	color:var(--ink-2);
	margin-bottom:4px;
}
.df-sav-att-zone input[type=file]{
	font-size:13px;
}
.df-sav-att-list{
	margin-top:8px;
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}
.df-sav-att-chip{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:6px 10px;
	background:var(--bg-2);
	border:1px solid var(--line);
	border-radius:6px;
	font-size:13px;
}
.df-sav-att-chip-rm{
	cursor:pointer;
	color:var(--ink-3);
	background:none;
	border:0;
	padding:0;
	font-size:14px;
}
.df-sav-att-chip-rm:hover{color:#b91c1c}
.df-sav-att-chip.is-uploading{opacity:.6}
.df-sav-att-chip.is-error{background:color-mix(in oklab, #ef4444 10%, transparent);border-color:#fca5a5;color:#b91c1c}
.df-sav-att-help{font-size:12px;color:var(--ink-3);margin-top:6px}

/* Rate section */
.df-sav-rate{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:14px;
	padding:22px;
	margin-top:18px;
}
.df-sav-rate h3{margin:0 0 6px}
.df-sav-stars{
	display:inline-flex;
	gap:4px;
	margin:14px 0;
}
.df-sav-star{cursor:pointer}
.df-sav-star input{position:absolute;opacity:0;width:1px;height:1px}
.df-sav-star-glyph{
	color:#d4d4d8;
	font-size:32px;
	transition:color .1s;
	display:inline-block;
}
.df-sav-star:hover .df-sav-star-glyph,
.df-sav-stars:hover .df-sav-star:hover ~ .df-sav-star .df-sav-star-glyph{color:#d4d4d8}
.df-sav-star.is-picked .df-sav-star-glyph,
.df-sav-stars[data-rating="5"] .df-sav-star .df-sav-star-glyph,
.df-sav-star-glyph.is-filled{color:#f5a83a}
.df-sav-rate-form textarea{
	width:100%;
	padding:10px 12px;
	border:1px solid var(--line);
	border-radius:8px;
	font-family:inherit;
	margin-bottom:12px;
}
.df-sav-rate-status{font-size:14px;margin-top:8px}
.df-sav-rate-status.is-ok{color:#15803d}
.df-sav-rate-done blockquote{
	margin:8px 0;
	padding:8px 14px;
	border-left:3px solid var(--amber);
	font-style:italic;
	color:var(--ink-2);
}

/* Re-open */
.df-sav-reopen{
	margin-top:14px;
	text-align:center;
	color:var(--ink-3);
	font-size:14px;
}
.df-sav-reopen a{color:var(--amber-deep)}

/* ============================================================
   New ticket form
   ============================================================ */
.df-sav-new h2{margin:0 0 8px}
.df-sav-faq-deflect{
	background:color-mix(in oklab, var(--amber) 8%, var(--card));
	border:1px solid color-mix(in oklab, var(--amber) 20%, var(--line));
	border-radius:12px;
	margin:18px 0 24px;
	padding:0;
}
.df-sav-faq-deflect summary{
	padding:14px 18px;
	cursor:pointer;
	font-weight:500;
	color:var(--ink);
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.df-sav-faq-deflect summary::-webkit-details-marker{display:none}
.df-sav-faq-count{
	background:var(--amber);
	color:#1a1207;
	padding:2px 10px;
	border-radius:99px;
	font-size:12px;
	font-weight:600;
}
.df-sav-faq-deflect-list{
	list-style:none;
	padding:0 18px 14px;
	margin:0;
}
.df-sav-faq-deflect-list li{
	padding:12px 0;
	border-bottom:1px solid color-mix(in oklab, var(--amber-deep) 20%, transparent);
}
.df-sav-faq-deflect-list li:last-child{border-bottom:0}
.df-sav-faq-deflect-list strong{color:var(--ink)}
.df-sav-faq-deflect-list div{color:var(--ink-2);margin-top:4px;font-size:14px}

.df-sav-form{margin-top:14px}
.df-sav-form-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px;
	margin-bottom:14px;
}
@media (max-width:680px){
	.df-sav-form-grid{grid-template-columns:1fr}
}
.df-sav-form-row{display:block;margin-bottom:14px}
.df-sav-form-row > span{
	display:block;
	font-size:13px;
	color:var(--ink-2);
	margin-bottom:4px;
	font-weight:500;
}
.df-sav-form input[type=text],
.df-sav-form input[type=url],
.df-sav-form input[type=email],
.df-sav-form select,
.df-sav-form textarea{
	width:100%;
	padding:10px 12px;
	border:1px solid var(--line);
	border-radius:8px;
	background:var(--bg);
	color:var(--ink);
	font-family:inherit;
	font-size:14.5px;
}
.df-sav-form textarea{resize:vertical}
.df-sav-form input:focus,
.df-sav-form select:focus,
.df-sav-form textarea:focus{
	outline:none;
	border-color:var(--amber-deep);
	box-shadow:0 0 0 3px var(--glow);
}
.df-sav-env-toggle summary{
	cursor:pointer;
	color:var(--ink-2);
	padding:8px 0;
	font-size:14px;
}
.df-sav-env-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px;
	margin-top:8px;
}
@media (max-width:680px){
	.df-sav-env-grid{grid-template-columns:1fr}
}
.df-sav-env-grid label{display:block}
.df-sav-env-grid span{display:block;font-size:12px;color:var(--ink-3);margin-bottom:2px}
.df-sav-env-grid input{
	width:100%;
	padding:8px 10px;
	border:1px solid var(--line);
	border-radius:6px;
	font-size:13px;
}
.df-sav-form-submit{
	margin-top:18px;
	display:flex;
	gap:14px;
	align-items:center;
	flex-wrap:wrap;
}
.df-sav-form-status,
.df-sav-presales-status{
	font-size:14px;
	min-height:18px;
}
.df-sav-form-status.is-ok,
.df-sav-presales-status.is-ok{color:#15803d}
.df-sav-form-status.is-err,
.df-sav-presales-status.is-err{color:#b91c1c}

/* ============================================================
   PUBLIC HELP CENTER PAGE
   ============================================================ */
.df-sav-help{
	max-width:1100px;
	margin:0 auto;
	padding:32px 24px 96px;
}
.df-sav-help-hero{
	text-align:center;
	padding:32px 0 56px;
	border-bottom:1px solid var(--line);
}
.df-sav-help-hero h1{margin:8px 0 16px}
.df-sav-help-search{
	max-width:560px;
	margin:32px auto 0;
	position:relative;
}
.df-sav-help-search input{
	width:100%;
	padding:16px 24px 16px 56px;
	border:1px solid var(--line);
	border-radius:99px;
	font-size:16px;
	background:var(--card);
	color:var(--ink);
	font-family:inherit;
	box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.df-sav-help-search::before{
	content:'🔍';
	position:absolute;
	left:22px;
	top:50%;
	transform:translateY(-50%);
	font-size:18px;
	pointer-events:none;
}
.df-sav-help-search input:focus{
	outline:none;
	border-color:var(--amber-deep);
	box-shadow:0 0 0 3px var(--glow);
}
.df-sav-help-stats{
	display:flex;
	gap:32px;
	justify-content:center;
	margin:32px 0 28px;
	flex-wrap:wrap;
}
.df-sav-help-stat{text-align:center}
.df-sav-help-stat-n{
	font-size:28px;
	font-weight:600;
	color:var(--amber-deep);
	line-height:1;
}
.df-sav-help-stat-n span{
	font-size:18px;
	color:var(--ink-3);
	font-weight:400;
}
.df-sav-help-stat-l{
	font-size:13px;
	color:var(--ink-3);
	margin-top:4px;
}
.df-sav-help-cta{
	display:flex;
	gap:14px;
	justify-content:center;
	flex-wrap:wrap;
	margin-top:24px;
}

/* FAQ section */
.df-sav-help-faq{padding:48px 0;border-bottom:1px solid var(--line)}
.df-sav-help-faq h2{text-align:center;margin:0 0 24px}
.df-sav-faq-cats{
	display:flex;
	gap:8px;
	justify-content:center;
	flex-wrap:wrap;
	margin-bottom:24px;
}
.df-sav-faq-cat{
	padding:8px 18px;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:99px;
	color:var(--ink-2);
	font-size:14px;
	cursor:pointer;
	font-family:inherit;
	transition:all .12s;
}
.df-sav-faq-cat:hover{background:var(--bg-2);color:var(--ink)}
.df-sav-faq-cat.is-active{
	background:#1a1207;
	color:#fff8e6;
	border-color:#1a1207;
}
.df-sav-faq-cat-n{
	display:inline-block;
	padding:0 6px;
	background:rgba(0,0,0,.08);
	border-radius:99px;
	font-size:11px;
	margin-left:6px;
}
.df-sav-faq-cat.is-active .df-sav-faq-cat-n{background:rgba(255,255,255,.18)}
.df-sav-faq-list{max-width:780px;margin:0 auto}
.df-sav-faq-item{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:12px;
	margin-bottom:10px;
	overflow:hidden;
}
.df-sav-faq-item summary{
	padding:16px 22px;
	cursor:pointer;
	font-weight:500;
	color:var(--ink);
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
}
.df-sav-faq-item summary::-webkit-details-marker{display:none}
.df-sav-faq-item summary::after{
	content:'+';
	font-size:22px;
	color:var(--ink-3);
	transition:transform .15s;
	margin-left:8px;
}
.df-sav-faq-item[open] summary::after{
	content:'−';
	color:var(--amber-deep);
}
.df-sav-faq-tag{
	font-size:11px;
	padding:2px 10px;
	background:var(--bg-2);
	border-radius:99px;
	color:var(--ink-3);
	font-weight:400;
	white-space:nowrap;
}
.df-sav-faq-a{
	padding:0 22px 18px;
	color:var(--ink-2);
	line-height:1.6;
	font-size:14.5px;
}
.df-sav-faq-empty{text-align:center;padding:32px;color:var(--ink-3)}

/* How it works */
.df-sav-help-how{padding:64px 0;border-bottom:1px solid var(--line)}
.df-sav-help-how h2{text-align:center;margin-bottom:36px}
.df-sav-help-steps{
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
	gap:24px;
	list-style:none;
	padding:0;
	margin:0;
}
.df-sav-help-steps li{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:18px;
	padding:28px 26px;
	box-shadow:var(--shadow);
}
.df-sav-help-step-n{
	width:38px;
	height:38px;
	display:grid;
	place-items:center;
	background:var(--amber);
	color:#1a1207;
	border-radius:50%;
	font-weight:700;
	font-size:18px;
	margin-bottom:14px;
}
.df-sav-help-steps h3{font-size:18px;margin:0 0 8px;color:var(--ink)}
.df-sav-help-steps p{font-size:14.5px;color:var(--ink-2);line-height:1.55;margin:0}

/* Presales form */
.df-sav-presales{padding:64px 0}
.df-sav-presales-card{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:18px;
	padding:36px;
	box-shadow:var(--shadow-lg);
	max-width:640px;
	margin:0 auto;
}
.df-sav-presales-card h2{margin:8px 0 12px}
.df-sav-help-extra{padding:48px 0 0;border-top:1px solid var(--line)}
.df-sav-help-extra-inner{max-width:720px;margin:0 auto;color:var(--ink-2);line-height:1.7}

/* ============================================================
   ADMIN
   ============================================================ */
.df-sav-admin{margin-top:20px}
.df-sav-admin-body{margin-top:20px}
.df-sav-cards{
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
	gap:14px;
	margin-bottom:28px;
}
.df-sav-card{
	background:#fff;
	border-radius:10px;
	padding:18px 20px;
	box-shadow:0 1px 3px rgba(0,0,0,.08);
}
.df-sav-card-l{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#666;margin-bottom:6px}
.df-sav-card-n{font-size:24px;font-weight:600;color:#1a1207;line-height:1.1}
.df-sav-card-s{font-size:12.5px;color:#888;margin-top:6px}
.df-sav-card-s a{color:#c77a1e;text-decoration:none}
.df-sav-card-accent{background:linear-gradient(135deg, #1a1207 0%, #2a1d10 100%);color:#fff8e6}
.df-sav-card-accent .df-sav-card-l{color:rgba(255,248,230,.7)}
.df-sav-card-accent .df-sav-card-n{color:#fff8e6}
.df-sav-card-accent .df-sav-card-s a{color:#f0a830}
.df-sav-card-warn{background:#fef3c7;border-left:3px solid #d97706}

.df-sav-overview-grid{
	display:grid;
	grid-template-columns:1.4fr 1fr;
	gap:24px;
}
@media (max-width:1100px){.df-sav-overview-grid{grid-template-columns:1fr}}

/* SLA badges */
.df-sav-sla{
	display:inline-block;
	padding:2px 8px;
	border-radius:6px;
	font-size:12px;
	font-weight:500;
	font-family:'JetBrains Mono', ui-monospace, monospace;
}
.df-sav-sla-ok{background:#dcfce7;color:#15803d}
.df-sav-sla-warning{background:#fef3c7;color:#a16207}
.df-sav-sla-breach{background:#fee2e2;color:#b91c1c;font-weight:600}
.df-sav-sla-na{background:#f3f4f6;color:#6b7280}

/* Admin filters bar */
.df-sav-admin-filters{
	display:flex;
	gap:8px;
	margin:18px 0;
	flex-wrap:wrap;
	align-items:center;
}
.df-sav-admin-filters select,
.df-sav-admin-filters input{font-size:13px}

.df-sav-admin-table{margin-top:8px}
.df-sav-admin-table th{font-weight:600}

/* Admin ticket detail */
.df-sav-admin-detail{margin-top:14px}
.df-sav-admin-detail-head{margin-bottom:18px}
.df-sav-admin-detail-grid{
	display:grid;
	grid-template-columns:1fr 280px;
	gap:24px;
	align-items:start;
}
@media (max-width:1100px){
	.df-sav-admin-detail-grid{grid-template-columns:1fr}
}
.df-sav-admin-thread .df-sav-msg{background:#fff}
.df-sav-msg-note{
	background:#fef9c3 !important;
	border-color:#fde68a !important;
}
.df-sav-tag{
	display:inline-block;
	padding:1px 8px;
	border-radius:99px;
	font-size:11px;
	font-weight:500;
	margin-left:8px;
	vertical-align:middle;
}
.df-sav-tag-staff{background:#1a1207;color:#fff8e6}
.df-sav-tag-note{background:#fde68a;color:#92400e}

.df-sav-admin-reply{
	background:#fff;
	border:1px solid #ddd;
	border-radius:10px;
	padding:18px;
	margin-top:14px;
}
.df-sav-admin-reply textarea{width:100%;font-family:inherit;font-size:14px;padding:10px;border:1px solid #ddd;border-radius:6px}
.df-sav-admin-reply-actions{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-top:12px;
	gap:14px;
}
.df-sav-note-toggle{font-size:13px;color:#666}
.df-sav-templates{margin-bottom:12px}
.df-sav-templates label{font-size:13px;color:#666;display:flex;gap:8px;align-items:center}

.df-sav-admin-sidebar{
	background:#fff;
	border:1px solid #ddd;
	border-radius:10px;
	padding:18px;
	position:sticky;
	top:60px;
}
.df-sav-admin-sidebar h3{
	font-size:13px;
	text-transform:uppercase;
	letter-spacing:.08em;
	color:#666;
	margin:0 0 10px;
	border-bottom:1px solid #eee;
	padding-bottom:6px;
}
.df-sav-sb-form{
	margin-top:8px;
	padding:8px 0;
	border-bottom:1px solid #eee;
}
.df-sav-sb-form:last-child{border-bottom:0}
.df-sav-sb-form label{display:block;font-size:12px;color:#666;margin-bottom:6px}
.df-sav-sb-form select{width:100%;font-size:13px;margin-bottom:6px}

/* Settings */
.df-sav-cat-table,
.df-sav-tpl-table,
.df-sav-faq-table{margin-bottom:24px}
.df-sav-cat-table td input,
.df-sav-tpl-table td input,
.df-sav-tpl-table td textarea,
.df-sav-tpl-table td select,
.df-sav-faq-table td input,
.df-sav-faq-table td textarea,
.df-sav-faq-table td select{font-size:13px}

.df-sav-settings h2{margin-top:32px;padding-top:16px;border-top:1px solid #eee}
.df-sav-settings h2:first-of-type{border-top:0;padding-top:0}

/* Buttons (shared with affiliate) */
.df-sav-dash .df-btn,
.df-sav-help .df-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	padding:10px 22px;
	font-size:14.5px;
	font-weight:500;
	text-decoration:none;
	border-radius:99px;
	border:1px solid transparent;
	cursor:pointer;
	font-family:inherit;
	transition:all .15s;
}
.df-sav-dash .df-btn-primary,
.df-sav-help .df-btn-primary{background:#1a1207;color:#fff8e6}
.df-sav-dash .df-btn-primary:hover,
.df-sav-help .df-btn-primary:hover{background:#2a1d10}
.df-sav-dash .df-btn-ghost,
.df-sav-help .df-btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.df-sav-dash .df-btn-ghost:hover,
.df-sav-help .df-btn-ghost:hover{background:var(--bg-2)}
.df-sav-dash .df-btn-lg,
.df-sav-help .df-btn-lg{padding:13px 28px;font-size:15.5px}
