/* فوری‌ثبت — مدیریت سفارش. Font is inherited from the admin; no font-family here. */
.fso {
	--fso-navy: #024D85;
	--fso-navy-deep: #012D52;
	--fso-gold: #D9A404;
	--fso-ink: #1d2733;
	--fso-muted: #6b7684;
	--fso-line: #e4e7ec;
	--fso-soft: #f6f8fb;
	--fso-good: #1f7a4d;
	--fso-bad: #b42318;
	--fso-warn: #9a6700;
	color: var(--fso-ink);
	max-width: 1280px;
}
.fso .fso-title { font-weight: 700; color: var(--fso-navy-deep); display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.fso .fso-muted { color: var(--fso-muted); font-weight: 400; }
.fso .fso-link { color: var(--fso-navy); text-decoration: none; font-weight: 600; }
.fso .fso-link:hover { text-decoration: underline; }
.fso .fso-ltr { direction: ltr; text-align: right; unicode-bidi: plaintext; }

.fso-filters { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 12px 0; padding: 12px; background: var(--fso-soft); border: 1px solid var(--fso-line); border-radius: 10px; }
.fso-filters input[type=search] { min-width: 260px; }
.fso-filters .fso-date { width: 120px; direction: ltr; text-align: center; }
.fso-check { display: inline-flex; align-items: center; gap: 4px; margin-inline-end: 8px; }

.fso-table { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff; border: 1px solid var(--fso-line); border-radius: 10px; overflow: hidden; }
.fso-table th { background: var(--fso-soft); text-align: right; font-weight: 600; padding: 10px 12px; border-bottom: 1px solid var(--fso-line); white-space: nowrap; }
.fso-table td { padding: 9px 12px; border-bottom: 1px solid var(--fso-line); vertical-align: middle; }
.fso-table tr:last-child td { border-bottom: 0; }
.fso-table tbody tr:hover { background: #fafbfd; }
.fso-row-off td { opacity: .5; }
.fso-empty { padding: 24px; text-align: center; color: var(--fso-muted); }

.fso-badge { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; line-height: 20px; font-weight: 600; margin-inline-start: 4px; white-space: nowrap; }
.fso-badge--good { background: #e7f5ee; color: var(--fso-good); }
.fso-badge--bad { background: #fdecea; color: var(--fso-bad); }
.fso-badge--warn { background: #fff4d6; color: var(--fso-warn); }
.fso-badge--muted { background: #eef1f5; color: var(--fso-muted); }
.fso-badge--accent { background: #e6eef6; color: var(--fso-navy); }

.fso-pager { display: flex; gap: 4px; margin: 14px 0; }
.fso-pager a, .fso-pager span { padding: 4px 10px; border: 1px solid var(--fso-line); border-radius: 6px; text-decoration: none; background: #fff; }
.fso-pager .current { background: var(--fso-navy); color: #fff; border-color: var(--fso-navy); }

.fso-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; margin: 16px 0; }
.fso-card { background: #fff; border: 1px solid var(--fso-line); border-radius: 12px; padding: 16px 18px; margin: 16px 0; }
.fso-grid .fso-card { margin: 0; }
.fso-card h2 { margin: 0 0 12px; font-size: 15px; color: var(--fso-navy-deep); }
.fso-dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 14px; margin: 0; }
.fso-dl dt { color: var(--fso-muted); }
.fso-dl dd { margin: 0; font-weight: 600; }
.fso-adtext { font-size: 14px; line-height: 2; background: #fbf8f2; border-inline-start: 3px solid var(--fso-gold); padding: 10px 14px; border-radius: 6px; margin: 0 0 8px; }
.fso-events { margin: 0 0 12px; padding: 0; list-style: none; }
.fso-events li { padding: 6px 0; border-bottom: 1px dashed var(--fso-line); }
.fso-inline { display: inline-block; margin: 0; }
.fso-callout { padding: 12px 14px; border-radius: 10px; margin: 12px 0; }
.fso-callout--warn { background: #fff8e6; border: 1px solid #f3dca0; }

.fso-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0; }
.fso-tabs a { padding: 7px 14px; border-radius: 999px; border: 1px solid var(--fso-line); background: #fff; text-decoration: none; color: var(--fso-ink); font-weight: 600; }
.fso-tabs a span { display: inline-block; min-width: 20px; padding: 0 6px; margin-inline-start: 6px; border-radius: 999px; background: var(--fso-soft); color: var(--fso-navy); text-align: center; }
.fso-tabs a.is-active { background: var(--fso-navy); border-color: var(--fso-navy); color: #fff; }
.fso-tabs a.is-active span { background: var(--fso-gold); color: var(--fso-navy-deep); }

.fso-bar { position: sticky; top: 32px; z-index: 5; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; background: #fff; border: 1px solid var(--fso-line); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px; }
.fso-queue-list { margin: 0; padding: 0; list-style: none; counter-reset: fso; }
.fso-qitem { counter-increment: fso; background: #fff; border: 1px solid var(--fso-line); border-radius: 12px; padding: 12px 16px; margin-bottom: 10px; }
.fso-qitem.is-sent { opacity: .6; }
.fso-qhead { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.fso-qitem .fso-qhead::before { content: counter(fso, persian); display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; border-radius: 50%; background: var(--fso-soft); color: var(--fso-navy); font-weight: 700; }
.fso-addr { margin: 0; color: var(--fso-muted); }

.fso-progress { height: 8px; background: var(--fso-soft); border-radius: 999px; overflow: hidden; max-width: 520px; }
.fso-progress div { height: 100%; width: 0; background: linear-gradient(90deg, var(--fso-navy), var(--fso-gold)); transition: width .3s; }

.print-only { display: none; }
@media print {
	#adminmenumain, #wpadminbar, #wpfooter, .no-print, .notice, .fso-queue .fso-title, .fso-filters { display: none !important; }
	#wpcontent, #wpbody-content { margin: 0 !important; padding: 0 !important; }
	.print-only { display: block; }
	.fso-qitem { break-inside: avoid; border: 0; border-bottom: 1px solid #999; border-radius: 0; padding: 8px 0; }
	.fso-qitem.is-sent { display: none; }
	.fso-adtext { background: none; border: 0; padding: 0; }
}

/* Shipping */
.fso-table--compact td { padding: 6px 10px; }
.fso-ship-groups { display: grid; gap: 10px; }
.fso-ship-group { margin: 0; }
.fso .fso-code { width: 190px; direction: ltr; text-align: center; letter-spacing: .5px; }
.fso .fso-mini { width: 120px; direction: ltr; text-align: center; }
.fso-row-new td { background: #fffbea; }

/* Postal labels: two per row on A4 */
.fso-labels { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.fso-label { border: 1.5px dashed #9aa4b2; border-radius: 10px; padding: 14px 16px; background: #fff; break-inside: avoid; display: flex; flex-direction: column; gap: 10px; min-height: 180px; }
.fso-label-k { display: block; font-size: 11px; color: var(--fso-muted); margin-bottom: 2px; }
.fso-label-to strong { font-size: 18px; color: var(--fso-navy-deep); }
.fso-label-to p { margin: 4px 0 0; font-size: 14px; line-height: 1.8; }
.fso-label-meta { display: flex; flex-wrap: wrap; gap: 6px; }
.fso-label-meta span { background: var(--fso-soft); border-radius: 6px; padding: 2px 8px; font-size: 12px; }
.fso-label-from { margin-top: auto; border-top: 1px solid var(--fso-line); padding-top: 6px; font-size: 12px; }
@media print {
	.fso-labels { gap: 6mm; }
	.fso-label { border-color: #000; min-height: 60mm; }
	.fso-labels-page .fso-bar { display: none !important; }
}

/* SMS */
.fso-callout:not(.fso-callout--warn):not(.fso-callout--good) { background: var(--fso-soft); border: 1px solid var(--fso-line); }
.fso-callout--good { background: #e7f5ee; border: 1px solid #b9e0cb; }
.fso-sms-events { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; }
.fso-sms-event { border: 1px solid var(--fso-line); border-radius: 10px; padding: 12px 14px; background: #fff; }
.fso-sms-event h3 { margin: 0 0 4px; font-size: 14px; }
.fso-sample { color: var(--fso-ink); background: #fbf8f2; padding: 2px 6px; border-radius: 4px; }
.fso textarea.fso-ltr, .fso input.fso-ltr { direction: ltr; text-align: left; }
.fso-sms-event input.regular-text { width: 100%; max-width: 100%; box-sizing: border-box; }

/* Finance */
.fso-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin: 12px 0 16px; }
.fso-kpi { background: #fff; border: 1px solid var(--fso-line); border-radius: 12px; padding: 14px 16px; }
.fso-kpi span { display: block; color: var(--fso-muted); font-size: 12px; }
.fso-kpi strong { display: block; font-size: 20px; margin-top: 4px; color: var(--fso-navy-deep); }
.fso-kpi small { color: var(--fso-muted); }
.fso-kpi.is-hero { border-color: var(--fso-navy); box-shadow: inset 0 3px 0 var(--fso-gold); }
.fso-kpi.is-hero strong { font-size: 22px; }
.fso-kpi strong { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fso-chart { width: 100%; height: auto; display: block; }
.fso-chart .grid { stroke: var(--fso-line); stroke-width: 1; }
.fso-chart .base { stroke: #c7cdd6; stroke-width: 1; }
.fso-chart .tick { fill: var(--fso-muted); font-size: 11px; }
.fso-chart .mark { fill: var(--fso-navy); }
.fso-chart .hit { fill: transparent; }
.fso-chart .bar:hover .mark { fill: var(--fso-navy-deep); }
.fso-chart .bar:hover .hit { fill: rgba(2, 77, 133, .05); }
.fso-share { height: 8px; background: var(--fso-soft); border-radius: 999px; overflow: hidden; }
.fso-share i { display: block; height: 100%; background: var(--fso-navy); border-radius: 999px; }
.fso-form label { display: inline-block; }
.fso-rule { border: 1px solid var(--fso-line); border-radius: 10px; padding: 10px 14px 14px; margin: 12px 0; display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-end; }
.fso-rule legend { padding: 0 6px; font-weight: 600; }

.fso-reasons { margin: 6px 18px 8px 0; list-style: disc; }

/* Conversation with the customer, newspaper pages */
.fso-thread { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 10px; }
.fso-thread li { display: flex; }
.fso-thread li.is-mine { justify-content: flex-start; }
.fso-thread li:not(.is-mine) { justify-content: flex-end; }
.fso-bubble { max-width: 80%; background: var(--fso-soft); border: 1px solid var(--fso-line); border-radius: 14px; padding: 8px 14px 10px; }
.fso-thread li.is-staff .fso-bubble { background: #e6eef6; border-color: #c9dbec; }
.fso-bubble p { margin: 0; line-height: 1.9; overflow-wrap: anywhere; }
.fso-bubble .fso-bubble-meta { display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: 12px; color: var(--fso-muted); margin-bottom: 2px; }
.fso-bubble-meta b { color: var(--fso-ink); }
.fso-bubble-meta span { color: var(--fso-navy); }
.fso-reply textarea { width: 100%; box-sizing: border-box; }
.fso-reply-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin-top: 8px; }
.fso-proofs .fso-filters label { display: inline-flex; flex-direction: column; gap: 4px; font-size: 12.5px; color: var(--fso-muted); }

.fso-canned { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; }
.fso-copyrow { display: flex; gap: 8px; align-items: center; }
.fso-copyrow input { flex: 1; }
.fso-atts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.fso-att { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; }
.fso-att img { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; }
.fso-quick { margin: 0 0 10px; }

/* 1.8.0 print queue: grouped by newspaper, copy and «چاپ شد» on each ad */
.fso-qbar { flex-wrap: wrap; row-gap: 8px; }
.fso-qsms { flex-basis: 100%; font-size: 12.5px; }
.fso-qgroup { margin: 18px 0 8px; }
.fso-qgroup-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin: 0 0 10px; padding: 0 2px; }
.fso-qgroup-h h2 { margin: 0; font-size: 17px; }
.fso-qgroup-h .fso-check { margin-inline-start: 10px; }
.fso-qacts { margin-inline-start: auto; display: inline-flex; gap: 6px; }
@media print { .fso-qgroup { break-before: page; } .fso-qgroup:first-of-type { break-before: auto; } }

/* «همه پاسخ‌های فرم» (1.9.1) */
.fso-ent { display: grid; gap: 14px; }
.fso-ent-lead { margin: 0; font-size: 13px; line-height: 1.9; color: var(--fso-muted); }
.fso-ent-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px 14px; }
.fso-ent-f { display: grid; gap: 5px; align-content: start; min-width: 0; }
.fso-ent-f.is-wide { grid-column: 1 / -1; }
.fso-ent-l { font-size: 12.5px; font-weight: 700; color: var(--fso-ink); }
.fso-ent-l small { font-weight: 400; color: var(--fso-muted); }
.fso-ent input:not([type=checkbox]), .fso-ent select, .fso-ent textarea { width: 100%; max-width: 100%; box-sizing: border-box; font: inherit; font-size: 14px; padding: 8px 10px; border: 1px solid var(--fso-line); border-radius: 10px; background: #fff; color: var(--fso-ink); }
.fso-ent textarea { resize: vertical; line-height: 1.9; }
.fso-ent input:focus, .fso-ent select:focus, .fso-ent textarea:focus { outline: none; border-color: var(--fso-navy); box-shadow: 0 0 0 3px rgba(2, 77, 133, .15); }
.fso-ent-checks { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.fso-ent-checks label { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; }
.fso-ent-more { border: 1px solid var(--fso-line); border-radius: 12px; padding: 10px 12px; }
.fso-ent-more > summary { cursor: pointer; font-weight: 700; font-size: 13.5px; color: var(--fso-navy); }
.fso-ent-more[open] > summary { margin-bottom: 12px; }
.fso-ent-dl { margin: 0; display: grid; gap: 6px; }
.fso-ent-ro { display: grid; grid-template-columns: minmax(120px, 34%) 1fr; gap: 10px; font-size: 13px; padding: 4px 0; border-bottom: 1px dashed var(--fso-line); }
.fso-ent-ro dt { color: var(--fso-muted); }
.fso-ent-ro dd { margin: 0; word-break: break-word; }
.fso-ent-foot { position: sticky; bottom: -1px; padding: 10px 0 2px; background: inherit; display: flex; justify-content: flex-end; }
.fso-ent-card > details > summary { cursor: pointer; list-style: none; }
.fso-ent-card > details > summary h2 { display: inline; margin: 0; }
.fso-ent-card > details > summary::before { content: "▸ "; color: var(--fso-muted); }
.fso-ent-card > details[open] > summary::before { content: "▾ "; }
.fso-ent-card > details[open] > summary { margin-bottom: 14px; display: block; }
.fso-ent-foot { background: #fff; }
.fso-qsub { margin: 16px 0 8px; font-size: 14px; color: var(--fso-navy-deep); }
.fso-queue-list.is-future .fso-qitem { opacity: .78; border-style: dashed; }
