/* Doctor / Clinic OS - shared styles */
.dco-wrap, .dco-app { box-sizing: border-box; }
.dco-wrap *, .dco-app * { box-sizing: border-box; }

.dco-wrap, .dco-app {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
}

/* Hard reset so the host WordPress theme's button/input styles (colored
   borders, box-shadows, focus rings, background images) can never leak
   into our dashboards. Uses !important because theme stylesheets often
   target bare `button` / `input` selectors and can load after ours. */
.dco-app button, .dco-wrap button,
.dco-app input, .dco-wrap input,
.dco-app textarea, .dco-wrap textarea,
.dco-app select, .dco-wrap select {
	font-family: inherit !important;
	box-shadow: none !important;
	text-shadow: none !important;
	outline: none !important;
	background-image: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	border-radius: 0;
	margin: 0;
}
.dco-app a, .dco-wrap a { text-decoration: none; }

/* Checkboxes/radios need their native appearance back - the blanket
   appearance:none above made them render as invisible empty boxes with
   no visible checked/unchecked state. */
.dco-app input[type=checkbox], .dco-wrap input[type=checkbox],
.dco-app input[type=radio], .dco-wrap input[type=radio] {
	appearance: auto !important;
	-webkit-appearance: auto !important;
	width: 16px;
	height: 16px;
	margin: 0 6px 0 0 !important;
	flex-shrink: 0;
	cursor: pointer;
	vertical-align: middle;
}

:root{
	--dco-blue:#0353c2; --dco-blue-dark:#001836;
	--dco-green:#0e6a3f; --dco-green-dark:#00362a;
	--dco-purple:#542895; --dco-purple-dark:#1e1349;
	--dco-orange:#ea580c; --dco-orange-dark:#7a3a12;
	--dco-amber:#f59e0b; --dco-gray-bg:#f5f6fa; --dco-border:#e8eaee;
	--dco-radius:14px; --dco-radius-sm:10px;
}

.dco-center-box{ display:flex; align-items:center; justify-content:center; min-height:70vh; padding:20px; }
.dco-card{ background:#fff; border-radius:18px; box-shadow:0 10px 40px rgba(17,24,39,.08); padding:34px; width:100%; max-width:420px; }
.dco-card-wide{ max-width:620px; }
.dco-card h2{ margin-top:0; font-size:20px; letter-spacing:-.01em; }
.dco-muted{ color:#6b7280; font-size:13px; line-height:1.5; }

.dco-alert{ padding:11px 14px; border-radius:10px; margin-bottom:14px; font-size:13.5px; }
.dco-alert-error{ background:#fee2e2; color:#991b1b; }
.dco-alert-success{ background:#dcfce7; color:#166534; }

.dco-card label, .dco-panel label{ display:block; font-size:12.5px; font-weight:700; margin:12px 0 5px; color:#374151; letter-spacing:.01em; }
.dco-card input[type=text], .dco-card input[type=email], .dco-card input[type=password], .dco-card input[type=number], .dco-card textarea,
.dco-panel input[type=text], .dco-panel input[type=number], .dco-panel textarea, .dco-panel input[type=date] {
	width:100%; padding:10px 13px; border:1.5px solid var(--dco-border) !important; border-radius:9px !important; font-size:14px; transition:border-color .15s;
	font-family:inherit; background:#fff !important; color:#111827;
}
.dco-card input:focus, .dco-panel input:focus, .dco-panel textarea:focus{ border-color:var(--dco-blue) !important; }
.dco-hr{ border:none; border-top:1px solid var(--dco-border); margin:20px 0; }
.dco-form-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.dco-inline{ display:flex; gap:8px; align-items:center; }
.dco-radio-row label, .dco-check-row label{ display:block; font-weight:400; font-size:14px; margin:7px 0; }
.dco-check{ display:flex; align-items:center; gap:6px; font-weight:400 !important; }

.dco-btn{ border:none !important; border-radius:9px !important; padding:10px 18px; font-size:14px; font-weight:600; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; transition:opacity .15s, transform .1s; letter-spacing:.01em; }
.dco-btn:active{ transform:scale(.98); }
.dco-btn-block{ width:100%; }
.dco-btn-sm{ padding:7px 12px; font-size:12.5px; }
.dco-btn-primary{ background:var(--dco-blue) !important; color:#fff !important; }
.dco-btn-ghost{ background:#eef0f4 !important; color:#374151 !important; }
.dco-btn-primary:hover{ opacity:.9; }

/* Top screen-label banner (matches the numbered blue bar in the reference design) */
.dco-screen-banner{ background:#0050bd; color:#fff; text-align:center; padding:11px 20px; border-radius:18px 18px 0 0; font-weight:700; font-size:14px; letter-spacing:.03em; display:flex; align-items:center; justify-content:center; gap:10px; }
.dco-screen-banner .dco-screen-num{ width:22px; height:22px; border-radius:50%; background:rgba(255,255,255,.25); display:inline-flex; align-items:center; justify-content:center; font-size:12px; }
.dco-app-wrap{ margin:4px 0 30px; }
.dco-app-wrap .dco-app{ margin:0; border-radius:0 0 18px 18px; }
.dco-app{ display:flex; min-height:85vh; background:var(--dco-gray-bg); border-radius:18px; overflow:hidden; box-shadow:0 10px 40px rgba(17,24,39,.06); margin:4px 0 30px; }
.dco-sidebar{ width:236px; flex-shrink:0; padding:22px 16px; color:#fff; display:flex; flex-direction:column; }
.dco-brand{ font-size:15.5px; font-weight:700; margin-bottom:26px; display:flex; align-items:center; gap:9px; letter-spacing:-.01em; }
.dco-sidebar-logo{ display:block; width:auto; height:auto; max-width:100%; max-height:52px; object-fit:contain; margin-bottom:14px; }
.dco-nav{ display:flex; flex-direction:column; gap:3px; flex-grow:1; }
.dco-nav a{ color:rgba(255,255,255,.82); text-decoration:none; padding:10px 12px; border-radius:9px; font-size:13.5px; font-weight:500; transition:background .15s; }
.dco-nav a.active, .dco-nav a:hover{ background:rgba(255,255,255,.16); color:#fff; }
.dco-nav a.active{ font-weight:600; }
.dco-badge{ background:#fff; color:#7c3aed; border-radius:20px; padding:1px 7px; font-size:10.5px; margin-left:6px; font-weight:700; }
.dco-user-box{ font-size:13px; padding-top:16px; border-top:1px solid rgba(255,255,255,.18); }

.dco-theme-blue .dco-sidebar{ background:var(--dco-blue-dark); }
.dco-theme-green .dco-sidebar{ background:var(--dco-green-dark); }
.dco-theme-purple .dco-sidebar{ background:var(--dco-purple-dark); }
.dco-theme-orange .dco-sidebar{ background:var(--dco-orange-dark); }

.dco-main{ flex-grow:1; padding:26px 30px; overflow-x:auto; }
.dco-main h1{ margin:0 0 16px; font-size:21px; letter-spacing:-.01em; }

/* top header bar (avatar / title / bell / print / more) */
.dco-topbar{ display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.dco-topbar-left{ display:flex; align-items:center; gap:12px; }
.dco-avatar{ width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:20px; color:#fff; flex-shrink:0; }
.dco-avatar-sm{ width:30px; height:30px; font-size:14px; }
.dco-topbar-name{ font-weight:700; font-size:15px; }
.dco-topbar-sub{ font-size:12px; color:#6b7280; }
.dco-topbar-right{ display:flex; align-items:center; gap:10px; }
.dco-icon-btn{ width:38px; height:38px; border-radius:50% !important; background:#fff !important; border:1px solid var(--dco-border) !important; display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:16px; box-shadow:0 2px 6px rgba(17,24,39,.06) !important; position:relative; transition:box-shadow .15s; }
.dco-icon-btn:hover{ box-shadow:0 2px 10px rgba(17,24,39,.12); }
.dco-icon-btn .dco-dot{ position:absolute; top:4px; right:4px; width:8px; height:8px; border-radius:50%; background:#ef4444; }

.dco-online-dot{ display:inline-block; width:8px; height:8px; border-radius:50%; background:#22c55e; margin-right:4px; }
.dco-user-box .dco-name-row{ display:flex; align-items:center; gap:8px; margin-bottom:4px; }

.dco-nav a{ display:flex; align-items:center; gap:8px; }
.dco-icon{ flex-shrink:0; opacity:.9; }
.dco-brand .dco-icon{ opacity:1; }
.dco-nav .dco-soon{ margin-left:auto; font-size:9px; background:rgba(255,255,255,.25); padding:1px 6px; border-radius:8px; }

/* numbered / icon list rows (prescription cards, dispensing list) */
.dco-item-card{ display:flex; align-items:flex-start; gap:13px; border:1px solid var(--dco-border); border-radius:var(--dco-radius-sm); padding:13px; margin-bottom:10px; background:#fff; transition:box-shadow .15s; }
.dco-item-card:hover{ box-shadow:0 2px 8px rgba(17,24,39,.06); }
.dco-item-num{ width:27px; height:27px; border-radius:50%; background:#eef2ff; color:#4338ca; font-size:12.5px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.dco-item-body{ flex-grow:1; }
.dco-item-title{ font-weight:600; font-size:13.5px; }
.dco-item-sub{ font-size:12px; color:#6b7280; margin-top:3px; }
.dco-item-days{ font-size:12px; color:#6b7280; margin-top:3px; }
.dco-item-remove{ background:none; border:none; cursor:pointer; color:#9ca3af; font-size:15px; }
.dco-item-check{ width:23px; height:23px; border-radius:50%; border:2px solid #d1d5db; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:13px; color:transparent; transition:all .2s; }
.dco-item-check.done{ background:#16a34a; border-color:#16a34a; color:#fff; }

.dco-banner-success{ background:#dcfce7; color:#166534; padding:13px; border-radius:var(--dco-radius-sm); text-align:center; font-weight:700; margin:14px 0; font-size:13.5px; }

/* 3 column layout for pharmacy */
.dco-grid-3{ display:grid; grid-template-columns:26% 40% 34%; gap:16px; align-items:start; }
@media (max-width:1100px){ .dco-grid-3{ grid-template-columns:1fr; } }

.dco-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:start; }
.dco-grid-2-40-60{ display:grid; grid-template-columns:40% 60%; gap:20px; align-items:start; }
.dco-sidebar-overlay{ display:none; }
.dco-hamburger{ display:none; }
.dco-mobile-bottom-nav{ display:none; }

@media (max-width: 900px){
	.dco-grid-2, .dco-grid-2-40-60, .dco-grid-3{ grid-template-columns:1fr; }

	/* App shell goes edge-to-edge and full height on mobile, like a real app
	   rather than a "boxed" desktop card. */
	.dco-app-wrap{ margin:0; }
	.dco-app{ flex-direction:column; border-radius:0; box-shadow:none; min-height:100vh !important; }
	.dco-screen-banner{ border-radius:0; padding:9px 14px; font-size:12px; }

	/* Sidebar becomes an off-canvas drawer, hidden by default. */
	.dco-sidebar{
		position:fixed; top:0; left:0; bottom:0; width:270px; z-index:1000;
		transform:translateX(-100%); transition:transform .25s ease; box-shadow:6px 0 24px rgba(0,0,0,.25);
		overflow-y:auto;
	}
	.dco-sidebar.dco-open{ transform:translateX(0); }
	.dco-sidebar-overlay{
		display:none; position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:999;
	}
	.dco-sidebar-overlay.dco-open{ display:block; }

	.dco-hamburger{
		display:flex; position:fixed; top:12px; left:12px; z-index:1001; width:42px; height:42px;
		border-radius:50%; background:#fff; border:1px solid var(--dco-border);
		box-shadow:0 3px 10px rgba(17,24,39,.15); align-items:center; justify-content:center;
		cursor:pointer;
	}

	.dco-main{ padding:60px 14px 96px; width:100%; }
	.dco-main h1{ font-size:18px; }
	.dco-topbar{ margin-bottom:14px; }
	.dco-topbar-left .dco-avatar{ width:36px; height:36px; font-size:16px; }

	/* Bottom app-style tab bar, built from the first few sidebar links. */
	.dco-mobile-bottom-nav{
		display:flex; position:fixed; left:0; right:0; bottom:0; z-index:998;
		background:#fff; border-top:1px solid var(--dco-border);
		box-shadow:0 -4px 16px rgba(17,24,39,.08);
		padding:6px 4px calc(6px + env(safe-area-inset-bottom));
	}
	.dco-mbn-item{
		flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
		padding:6px 2px; font-size:10.5px; font-weight:600; color:#9aa1ad; text-decoration:none;
		text-align:center; line-height:1.15;
	}
	.dco-mbn-item svg{ width:19px; height:19px; }
	.dco-mbn-item.active{ color:#374151; }
	.dco-mobile-bottom-nav.dco-theme-blue .dco-mbn-item.active{ color:var(--dco-blue); }
	.dco-mobile-bottom-nav.dco-theme-green .dco-mbn-item.active{ color:var(--dco-green); }
	.dco-mobile-bottom-nav.dco-theme-purple .dco-mbn-item.active{ color:var(--dco-purple); }
	.dco-mobile-bottom-nav.dco-theme-orange .dco-mbn-item.active{ color:var(--dco-orange); }

	/* Bigger touch targets. */
	.dco-btn{ min-height:44px; font-size:14.5px; }
	.dco-btn-sm{ min-height:36px; }
	.dco-toggle{ min-height:44px; }
	.dco-icon-btn{ width:42px; height:42px; }

	.dco-panel{ padding:16px; }
	.dco-table{ font-size:12.5px; }
	.dco-table th, .dco-table td{ padding:8px 6px; }

	/* Modals become full-screen sheets instead of centered boxes. */
	.dco-modal{ padding:0; align-items:flex-end; }
	.dco-modal-box, .dco-modal-wide{ max-width:100%; width:100%; height:92vh; max-height:92vh; border-radius:18px 18px 0 0; }

	.dco-token-top{ flex-wrap:wrap; }
	.dco-qr canvas{ width:64px; height:64px; }
	.dco-stat-row{ grid-template-columns:repeat(3,1fr); gap:8px; }
	.dco-stat{ padding:10px 8px 10px 14px; }
	.dco-stat span{ font-size:19px; }
	.dco-stat small{ font-size:10.5px; }

	.dco-phones{ justify-content:center; }
}

.dco-panel{ background:#fff; border-radius:var(--dco-radius); padding:22px; box-shadow:0 2px 10px rgba(17,24,39,.05); }
.dco-panel h3{ margin-top:0; font-size:17px; font-weight:700; letter-spacing:-.01em; color:#111827; }

.dco-stat-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:22px; }
.dco-stat-row-4{ grid-template-columns:repeat(4,1fr); }
@media (max-width:700px){ .dco-stat-row, .dco-stat-row-4{ grid-template-columns:repeat(2,1fr); } #stk-overview{ grid-template-columns:repeat(2,1fr) !important; } }
.dco-stat{ background:#fff; border-radius:var(--dco-radius-sm); padding:16px 18px 16px 22px; text-align:left; box-shadow:0 2px 10px rgba(17,24,39,.05); position:relative; }
.dco-stat::before{ content:''; position:absolute; left:0; top:12px; bottom:12px; width:3px; border-radius:3px; background:#ccc; }
.dco-stat span{ display:block; font-size:25px; font-weight:700; letter-spacing:-.02em; color:#111827; }
.dco-stat small{ font-size:12.5px; font-weight:600; }
.dco-stat-blue::before{ background:var(--dco-blue); } .dco-stat-green::before{ background:var(--dco-green); }
.dco-stat-amber::before{ background:var(--dco-amber); } .dco-stat-purple::before{ background:var(--dco-purple); }
.dco-stat-orange::before{ background:var(--dco-orange); }
.dco-stat-blue small{ color:var(--dco-blue); } .dco-stat-green small{ color:var(--dco-green); }
.dco-stat-amber small{ color:var(--dco-amber); } .dco-stat-purple small{ color:var(--dco-purple); }
.dco-stat-orange small{ color:var(--dco-orange); }

.dco-table{ width:100%; border-collapse:collapse; margin-top:8px; }
.dco-table th{ text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:#8b93a1; padding:9px 8px; border-bottom:1.5px solid var(--dco-border); font-weight:600; }
.dco-table td{ padding:10px 8px; border-bottom:1px solid var(--dco-border); font-size:14px; }
.dco-table tr.selected{ background:#eef2ff; }
.dco-table tr{ cursor:pointer; transition:background .1s; }
.dco-table tbody tr:hover{ background:#fafbfc; }

.dco-status-pill{ display:inline-block; padding:3px 11px; border-radius:20px; font-size:11.5px; font-weight:600; letter-spacing:.01em; }
.dco-status-waiting{ background:#fef3c7; color:#92400e; }
.dco-status-with_doctor{ background:#dbeafe; color:#1e40af; }
.dco-status-completed{ background:#dcfce7; color:#166534; }
.dco-status-pending{ background:#fef3c7; color:#92400e; }
.dco-status-dispensed{ background:#dcfce7; color:#166534; }

/* Plain bold colored status text (no pill) used in queue-style tables,
   matching the reference design's table style. */
.dco-status-text{ font-weight:700; font-size:13.5px; }
.dco-status-text-waiting{ color:var(--dco-amber); }
.dco-status-text-with_doctor{ color:var(--dco-blue); }
.dco-status-text-completed{ color:var(--dco-green); }

.dco-toggle-group{ display:flex; gap:6px; }
.dco-toggle{ flex:1; padding:9px; border:1.5px solid var(--dco-border) !important; background:#fff !important; border-radius:9px !important; cursor:pointer; font-size:13.5px; font-weight:500; transition:all .15s; color:#374151 !important; }
.dco-toggle.active{ background:var(--dco-blue) !important; color:#fff !important; border-color:var(--dco-blue) !important; }

.dco-token-card{ margin-top:20px; text-align:center; border:1px solid var(--dco-border); border-radius:var(--dco-radius); padding:20px 22px; background:#fff; box-shadow:0 4px 18px rgba(17,24,39,.07); }
.dco-token-top{ display:flex; align-items:center; justify-content:space-between; gap:14px; text-align:left; }
.dco-token-left{ flex-shrink:0; }
.dco-token-label{ color:#6b7280; font-size:11.5px; letter-spacing:3px; font-weight:700; }
.dco-token-number{ font-size:40px; font-weight:800; color:var(--dco-blue); letter-spacing:-.02em; line-height:1.1; }
.dco-token-card p{ text-align:center; margin:14px 0 4px; }
.dco-token-card small{ text-align:center; display:block; }
.dco-qr{ flex-shrink:0; }
.dco-qr canvas{ border-radius:6px; width:78px; height:78px; }

.dco-tabs{ display:flex; gap:4px; border-bottom:1px solid var(--dco-border); margin:14px 0; }
.dco-tab{ background:none; border:none; padding:8px 14px; cursor:pointer; font-size:14px; color:#6b7280; border-bottom:2px solid transparent; }
.dco-tab.active{ color:var(--dco-green); border-color:var(--dco-green); font-weight:600; }
.dco-box{ background:#f9fafb; border-radius:8px; padding:10px; font-size:14px; }
.dco-patient-head{ display:flex; justify-content:space-between; align-items:center; padding-bottom:10px; border-bottom:1px solid var(--dco-border); margin-bottom:10px; }

.dco-suggestions{ position:relative; }
.dco-suggestions .dco-sugg-item{ padding:8px 12px; border:1px solid var(--dco-border); border-top:none; cursor:pointer; background:#fff; font-size:14px; }
.dco-suggestions .dco-sugg-item:hover{ background:#f3f4f6; }

.dco-modal{ position:fixed; inset:0; background:rgba(17,24,39,.55); display:flex; align-items:center; justify-content:center; z-index:9999; padding:20px; }
.dco-modal-box{ background:#fff; border-radius:18px; padding:26px; max-width:520px; width:100%; max-height:85vh; overflow:auto; position:relative; }
.dco-modal-wide{ max-width:820px; }
.dco-modal-close{ position:absolute; top:16px; right:16px; border:none; background:#f3f4f6; width:30px; height:30px; border-radius:50%; font-size:18px; cursor:pointer; }

.dco-dash-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0; }
.dco-dash-tile{ display:block; padding:22px; text-align:center; border-radius:12px; color:#fff; text-decoration:none; font-weight:600; transition:transform .1s; }
.dco-dash-tile:hover{ transform:translateY(-2px); }
.dco-tag-blue{ background:var(--dco-blue); } .dco-tag-green{ background:var(--dco-green); }
.dco-tag-purple{ background:var(--dco-purple); } .dco-tag-orange{ background:var(--dco-orange); }

.dco-hist-visit{ border:1px solid var(--dco-border); border-radius:12px; padding:13px; margin-top:10px; }
.dco-hist-visit .date{ font-weight:600; }

/* Prescription builder (numbered sections matching the reference design) */
.dco-rx-card{ border:1px solid var(--dco-border); border-radius:var(--dco-radius-sm); padding:14px; margin-bottom:12px; background:#fff; }
.dco-rx-card-head{ display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.dco-rx-card-head strong{ flex-grow:1; font-size:14px; }
.dco-rx-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dco-rx-field-wide{ grid-column:1 / -1; }
.dco-rx-field label{ display:flex; align-items:center; gap:6px; font-size:12.5px; font-weight:700; margin:0 0 6px; color:#374151; }
.dco-rx-num{ width:18px; height:18px; border-radius:50%; background:var(--dco-blue); color:#fff; font-size:10.5px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.dco-rx-field select, .dco-rx-field input[type=text], .dco-rx-field input[type=number]{ width:100%; padding:8px 10px; border:1.5px solid var(--dco-border); border-radius:8px; font-size:13.5px; }
.dco-rx-stepper{ display:flex; align-items:center; gap:0; border:1.5px solid var(--dco-border); border-radius:8px; overflow:hidden; margin-bottom:6px; }
.dco-rx-stepper button{ background:#f3f4f6; border:none; width:34px; height:34px; font-size:16px; cursor:pointer; flex-shrink:0; }
.dco-rx-stepper span{ flex-grow:1; text-align:center; font-weight:700; font-size:14px; }
.dco-rx-toggle-row{ display:flex; gap:6px; flex-wrap:wrap; }
.dco-rx-toggle{ background:#fff; border:1.5px solid var(--dco-border); border-radius:8px; padding:7px 10px; font-size:12.5px; cursor:pointer; white-space:nowrap; }
.dco-rx-toggle.active{ background:#eef2ff; border-color:var(--dco-blue); color:var(--dco-blue); font-weight:700; }
@media (max-width:700px){ .dco-rx-grid{ grid-template-columns:1fr; } }

/* Help modal content */
.dco-help-section{ border-bottom:1px solid var(--dco-border); padding:14px 0; }
.dco-help-section:first-child{ padding-top:0; }
.dco-help-section:last-of-type{ border-bottom:none; }
.dco-help-section h4{ margin:0 0 8px; font-size:15px; }
.dco-help-si{ background:#f8faff; border-radius:8px; padding:10px 12px; margin-bottom:8px; font-size:13.5px; line-height:1.6; }
.dco-help-en{ background:#f9fafb; border-radius:8px; padding:10px 12px; font-size:13.5px; line-height:1.6; color:#374151; }
.dco-help-lang-tag{ font-size:10.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--dco-blue); display:block; margin-bottom:3px; }
.dco-help-en .dco-help-lang-tag{ color:#6b7280; }
.dco-help-whatsapp{ display:flex; align-items:center; justify-content:center; gap:8px; background:#16a34a; color:#fff; border-radius:9px; padding:13px; font-weight:700; margin-top:16px; text-decoration:none; }

/* Dashboard quick-switch (one-tap segmented control, per-clinic admin toggle) */
.dco-dash-quickswitch{ display:inline-flex; background:#f3f4f6; border-radius:20px; padding:3px; gap:2px; }
.dco-dqs-item{ padding:7px 14px; border-radius:16px; font-size:12.5px; font-weight:700; text-decoration:none; color:#6b7280; white-space:nowrap; }
.dco-dqs-item.active{ background:#fff; color:#111827; box-shadow:0 1px 4px rgba(17,24,39,.12); }
.dco-dqs-item:not(.active):hover{ color:#374151; }
@media (max-width:900px){ .dco-dqs-item{ padding:6px 10px; font-size:11px; } }
.dco-flash{ animation:dcoFlash 1s ease-in-out 2; }
@keyframes dcoFlash{ 0%,100%{ background:#fff;} 50%{ background:#fef9c3;} }

/* Owner "mobile app" phone-frame screens */
.dco-phones{ display:flex; gap:24px; flex-wrap:wrap; justify-content:flex-start; }
.dco-phone{ width:252px; background:#fff; border-radius:30px; box-shadow:0 14px 36px rgba(17,24,39,.16); border:8px solid #14181f; overflow:hidden; display:flex; flex-direction:column; height:508px; }
.dco-phone-status{ background:#14181f; color:#fff; font-size:10px; text-align:center; padding:4px; letter-spacing:.02em; }
.dco-phone-head{ background:var(--dco-orange); color:#fff; padding:13px 15px; font-weight:700; font-size:14px; display:flex; align-items:center; gap:8px; letter-spacing:-.01em; }
.dco-phone-body{ flex-grow:1; padding:13px; overflow-y:auto; font-size:12px; background:#f7f8fb; }
.dco-phone-nav{ display:flex; justify-content:space-around; border-top:1px solid var(--dco-border); background:#fff; padding:9px 0; font-size:9.5px; color:#9aa1ad; }
.dco-phone-nav span{ display:flex; flex-direction:column; align-items:center; gap:2px; }
.dco-phone-nav span.active{ color:var(--dco-orange); font-weight:700; }
.dco-phone-stat{ background:#fff; border-radius:10px; padding:9px; text-align:center; box-shadow:0 1px 4px rgba(17,24,39,.06); }
.dco-phone-stat b{ display:block; font-size:16px; letter-spacing:-.01em; }
.dco-phone-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:10px; }
.dco-phone-row{ display:flex; justify-content:space-between; align-items:center; background:#fff; border-radius:9px; padding:9px 11px; margin-bottom:6px; font-size:11px; box-shadow:0 1px 4px rgba(17,24,39,.05); }
.dco-phone-link{ display:flex; justify-content:space-between; align-items:center; padding:10px 4px; border-bottom:1px solid var(--dco-border); font-size:12px; color:#374151; text-decoration:none; }
.dco-phone-link:last-child{ border-bottom:none; }

/* [dco_payment_verify] shortcode - mobile-first, standalone (works even
   without the dashboard shell around it). */
.dco-pv-wrap{ max-width:480px; margin:0 auto; padding:16px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
.dco-pv-wrap h2{ font-size:16px; display:flex; align-items:center; gap:8px; margin:20px 0 12px; }
.dco-pv-count{ background:#f59e0b; color:#fff; font-size:12px; font-weight:700; border-radius:20px; padding:2px 10px; }
.dco-pv-count-red{ background:#b32d2e; }
.dco-pv-muted{ color:#6b7280; font-size:13px; margin:2px 0; }
.dco-pv-notice{ background:#dcfce7; color:#166534; padding:10px 14px; border-radius:8px; margin-bottom:14px; font-size:14px; }
.dco-pv-card{ background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px; margin-bottom:14px; box-shadow:0 2px 8px rgba(17,24,39,.05); }
.dco-pv-card-title{ font-weight:700; font-size:15px; margin-bottom:2px; }
.dco-pv-actions{ margin-top:10px; }
.dco-pv-actions textarea{ width:100%; min-height:56px; padding:9px; border:1.5px solid #e5e7eb; border-radius:8px; font-size:14px; margin-bottom:8px; font-family:inherit; resize:vertical; }
.dco-pv-btn{ width:100%; border:none; border-radius:9px; padding:13px; font-size:15px; font-weight:700; color:#fff; cursor:pointer; min-height:46px; }
.dco-pv-btn-green{ background:#16a34a; }
.dco-pv-btn-red{ background:#b32d2e; }
.dco-pv-btn-blue{ background:#0353c2; }

@media print{
	.dco-sidebar, .dco-main > h1, .dco-grid-2, .dco-modal{ display:none !important; }
	.dco-token-card{ display:block !important; border:none; }
}
