/* ---------------------------------------------------------------------------
   EKhanS Theme — dashboard layer

   Loaded after components.css. Covers the signed-in account area: the
   dashboard shell and its side navigation, summary tiles, and the order and
   request rows that only appear inside it.
   --------------------------------------------------------------------------- */

.ek-dash {
	display: grid;
	gap: 20px;
	align-items: start;
}

.ek-dash__nav {
	background: var(--ek-surface);
	border: 1px solid var(--ek-border);
	border-radius: var(--ek-radius);
	overflow: hidden;
}

.ek-dash__nav-head {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 14px 16px;
	border-bottom: 1px solid var(--ek-border);
}

.ek-dash__avatar {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--ek-surface-3);
}

.ek-dash__who { min-width: 0; }
.ek-dash__name { margin: 0; font-weight: 600; font-size: 14.5px; overflow-wrap: anywhere; }
.ek-dash__role { margin: 0; color: var(--ek-text-4); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; }

.ek-dash__links {
	list-style: none;
	margin: 0;
	padding: 6px;
	display: flex;
	gap: 4px;
	overflow-x: auto;
	scrollbar-width: none;
}

.ek-dash__links::-webkit-scrollbar { display: none; }

.ek-dash__links a {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 14px;
	border-radius: var(--ek-radius-sm);
	color: var(--ek-text-2);
	font-size: 14px;
	white-space: nowrap;
}

.ek-dash__links a:hover { background: var(--ek-surface-2); color: var(--ek-text); text-decoration: none; }

.ek-dash__links a[aria-current="page"] {
	background: var(--ek-surface-3);
	color: var(--ek-text);
	font-weight: 600;
}

.ek-dash__count {
	min-width: 20px;
	height: 20px;
	padding: 0 5px;
	display: grid;
	place-items: center;
	border-radius: 999px;
	background: var(--ek-accent-soft);
	color: var(--ek-accent);
	font-size: 11px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.ek-dash__count--alert { background: var(--ek-timer1-soft); color: var(--ek-timer1-text); }

.ek-dash__body { display: grid; gap: 20px; min-width: 0; }

/* --- Summary tiles ------------------------------------------------------- */

.ek-tiles {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ek-tile {
	display: grid;
	gap: 4px;
	padding: 16px;
	background: var(--ek-surface);
	border: 1px solid var(--ek-border);
	border-radius: var(--ek-radius);
	color: var(--ek-text);
}

a.ek-tile:hover { border-color: var(--ek-border-strong); text-decoration: none; color: var(--ek-text); }

.ek-tile__label {
	margin: 0;
	color: var(--ek-text-4);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.ek-tile__value {
	margin: 0;
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
}

.ek-tile__note { margin: 0; color: var(--ek-text-3); font-size: 12.5px; }

.ek-tile--accent .ek-tile__value { color: var(--ek-accent); }
.ek-tile--alert { border-color: var(--ek-timer1-line); background: var(--ek-timer1-soft); }
.ek-tile--alert .ek-tile__value { color: var(--ek-timer1-text); }
.ek-tile--danger { border-color: var(--ek-danger-line); background: var(--ek-danger-soft); }
.ek-tile--danger .ek-tile__value { color: var(--ek-danger-text); }

/* --- Order and request rows --------------------------------------------- */

.ek-order-row {
	display: grid;
	gap: 12px;
	padding: 16px;
	border-bottom: 1px solid var(--ek-border);
}

.ek-order-row:last-child { border-bottom: 0; }

.ek-order-row__head {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	justify-content: space-between;
}

.ek-order-row__id {
	margin: 0;
	color: var(--ek-text-4);
	font-family: var(--ek-font-mono);
	font-size: 11.5px;
	letter-spacing: 0.04em;
}

.ek-order-row__title {
	margin: 0;
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.35;
}

.ek-order-row__title a { color: var(--ek-text); }
.ek-order-row__title a:hover { color: var(--ek-accent); text-decoration: none; }

.ek-order-row__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
	color: var(--ek-text-4);
	font-size: 12.5px;
}

.ek-order-row__foot {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	justify-content: space-between;
}

.ek-order-row__price { font-size: 1.1rem; font-weight: 700; font-variant-numeric: tabular-nums; }

/* --- Notifications ------------------------------------------------------ */

.ek-notif {
	display: flex;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid var(--ek-border);
	color: var(--ek-text);
}

.ek-notif:last-child { border-bottom: 0; }
a.ek-notif:hover { background: var(--ek-surface-2); text-decoration: none; color: var(--ek-text); }

.ek-notif--unread { background: var(--ek-surface-2); }

.ek-notif__dot {
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	margin-top: 7px;
	border-radius: 50%;
	background: transparent;
}

.ek-notif--unread .ek-notif__dot { background: var(--ek-accent); }

.ek-notif__title { margin: 0; font-size: 14.5px; font-weight: 600; }
.ek-notif__body { margin: 2px 0 0; color: var(--ek-text-3); font-size: 13.5px; }
.ek-notif__time { margin: 4px 0 0; color: var(--ek-text-4); font-size: 11.5px; font-variant-numeric: tabular-nums; }

/* --- Order detail layout ------------------------------------------------ */

.ek-order-detail { display: grid; gap: 18px; align-items: start; }

.ek-order-detail__main { display: grid; gap: 18px; min-width: 0; }
.ek-order-detail__side { display: grid; gap: 14px; min-width: 0; }

.ek-status-strip {
	display: grid;
	gap: 12px;
	padding: 16px;
	background: var(--ek-surface);
	border: 1px solid var(--ek-border);
	border-radius: var(--ek-radius);
}

.ek-status-strip__row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	justify-content: space-between;
}

.ek-status-strip__label { margin: 0; color: var(--ek-text-3); font-size: 13.5px; }

.ek-steps-bar {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}

.ek-steps-bar li {
	display: flex;
	gap: 10px;
	align-items: center;
	color: var(--ek-text-4);
	font-size: 13px;
}

.ek-steps-bar li::before {
	content: '';
	flex-shrink: 0;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 1px solid var(--ek-border-strong);
}

.ek-steps-bar li.is-done { color: var(--ek-text-2); }
.ek-steps-bar li.is-done::before { background: var(--ek-accent); border-color: var(--ek-accent); }
.ek-steps-bar li.is-current { color: var(--ek-text); font-weight: 600; }
.ek-steps-bar li.is-current::before { border-color: var(--ek-timer2); box-shadow: inset 0 0 0 3px var(--ek-timer2); }

@media (min-width: 640px) {
	.ek-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ek-order-row { grid-template-columns: 1fr auto; align-items: center; }
	.ek-order-row__foot { justify-content: flex-end; }
	.ek-steps-bar { grid-auto-flow: column; grid-auto-columns: 1fr; gap: 14px; }
	.ek-steps-bar li { flex-direction: column; align-items: flex-start; gap: 6px; }
}

@media (min-width: 860px) {
	.ek-dash { grid-template-columns: 232px minmax(0, 1fr); gap: 26px; }
	.ek-dash__links { flex-direction: column; overflow: visible; }
	.ek-order-detail { grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); }
	.ek-order-detail__side { position: sticky; top: 78px; }
	.ek-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
