/* =========================================================================
   Ana Yurt Online — Joomla bridge
   Maps Joomla core markup (mod_menu, breadcrumbs, messages, pagination,
   footer columns, error page) onto the design system in template.css.
   ========================================================================= */

/* ---- Main nav (mod_menu, style="none") --------------------------------- */
.nav ul.mod-menu,
.nav ul.menu {
	display: flex;
	align-items: center;
	gap: var(--s-2);
	list-style: none;
	margin: 0;
	padding: 0;
}
.nav ul.mod-menu > li > a,
.nav ul.menu > li > a,
.nav ul.mod-menu > li > span,
.nav ul.menu > li > span {
	display: inline-flex;
	align-items: center;
	padding: 8px 14px;
	font-size: var(--t-sm);
	font-weight: 500;
	color: var(--text-2);
	border-radius: var(--r-full);
	transition: background var(--d-fast), color var(--d-fast);
	white-space: nowrap;
}
.nav ul.mod-menu > li > a:hover,
.nav ul.menu > li > a:hover { color: var(--text-1); background: rgba(255,255,255,0.04); }
[data-theme="light"] .nav ul.mod-menu > li > a:hover { background: rgba(0,0,0,0.04); }
.nav ul.mod-menu > li.current > a,
.nav ul.mod-menu > li.active > a,
.nav ul.menu > li.current > a,
.nav ul.menu > li.active > a {
	color: var(--text-1);
	background: rgba(255,255,255,0.06);
}
[data-theme="light"] .nav ul.mod-menu > li.active > a { background: rgba(0,0,0,0.06); }
/* Dropdown children fall back to inline (hidden by default complexity avoided) */
.nav ul.mod-menu ul { display: none; }

/* Hide desktop nav on small screens; show hamburger */
.hamburger { display: none; }
@media (max-width: 960px) {
	.header .nav,
	.header .search-trigger,
	.header .lang-toggle { display: none; }
	.hamburger { display: inline-flex; }
}

/* ---- Drawer nav (mod_menu) --------------------------------------------- */
.drawer-nav ul.mod-menu,
.drawer-nav ul.menu { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.drawer-nav ul.mod-menu a,
.drawer-nav ul.menu a {
	display: flex; align-items: center; justify-content: space-between;
	padding: 12px 14px;
	border-radius: var(--r-md);
	color: var(--text-2);
	font-size: var(--t-base);
	transition: background var(--d-fast), color var(--d-fast);
}
.drawer-nav ul.mod-menu a:hover { background: rgba(255,255,255,0.05); color: var(--text-1); }
.drawer-nav ul.mod-menu li.active > a { color: var(--accent); }

/* ---- Footer columns ---------------------------------------------------- */
.footer-links ul { list-style: none; margin: 0; padding: 0; }
.footer-links li + li { margin-top: 2px; }

/* ---- Breadcrumbs ------------------------------------------------------- */
.ay-breadcrumbs { padding-top: var(--s-5); }
.ay-breadcrumbs ol.breadcrumb,
.ay-breadcrumbs ul.breadcrumb {
	display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
	list-style: none; margin: 0; padding: 0;
	font-size: var(--t-sm); color: var(--text-3);
}
.ay-breadcrumbs .breadcrumb a { color: var(--text-2); }
.ay-breadcrumbs .breadcrumb a:hover { color: var(--accent); }
.ay-breadcrumbs .divider { color: var(--text-4); margin: 0 2px; }

/* ---- System messages --------------------------------------------------- */
#system-message-container { max-width: var(--max-w); margin: var(--s-5) auto 0; padding: 0 var(--s-8); }
#system-message-container .alert {
	border-radius: var(--r-lg);
	padding: var(--s-4) var(--s-5);
	border: 1px solid var(--border-strong);
	background: var(--bg-1);
	color: var(--text-1);
	margin-bottom: var(--s-3);
}
#system-message-container .alert-message,
#system-message-container .alert-success { border-color: rgba(111,203,146,0.4); }
#system-message-container .alert-error,
#system-message-container .alert-danger { border-color: rgba(239,110,92,0.5); }
#system-message-container .close { float: right; color: var(--text-3); background: none; border: 0; cursor: pointer; }

/* ---- Pagination (Joomla renders a bare <ul> with a.pagenav) ------------ */
.ay-pagination ul,
.ay-pagination .pagination {
	display: flex; flex-wrap: wrap; gap: 6px; justify-content: center;
	list-style: none; margin: var(--s-10) 0 0; padding: 0;
}
.ay-pagination li { list-style: none; margin: 0; }
.ay-pagination li a,
.ay-pagination li span {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; height: 40px; padding: 0 14px;
	border-radius: var(--r-full);
	border: 1px solid var(--border);
	color: var(--text-2);
	font-size: var(--t-sm); font-weight: 600;
	text-decoration: none;
	transition: all var(--d-fast);
}
.ay-pagination li a:hover { border-color: var(--border-strong); color: var(--text-1); background: rgba(255,255,255,0.05); }
.ay-pagination li.active span,
.ay-pagination li.active a { background: var(--accent); color: var(--brand-deeper); border-color: transparent; }
/* disabled boundary links (start/prev/next/end as plain span) */
.ay-pagination li > span.pagenav:not(a) { opacity: 0.4; color: var(--text-4); }

/* ---- Language switcher (mod_languages) --------------------------------- */
.lang-toggle ul.lang-inline,
.lang-toggle ul { display: flex; list-style: none; margin: 0; padding: 0; gap: 0; }
.lang-toggle li a, .lang-toggle li img { font-size: 11px; font-weight: 600; padding: 4px 10px; border-radius: var(--r-full); color: var(--text-3); }
.lang-toggle li.lang-active a { background: var(--text-1); color: var(--bg-0); }

/* ---- Theme toggle icon swap -------------------------------------------- */
[data-ay-theme-toggle] .theme-light { display: none; }
[data-ay-theme-toggle] .theme-dark { display: inline-flex; }
[data-theme="light"] [data-ay-theme-toggle] .theme-light { display: inline-flex; }
[data-theme="light"] [data-ay-theme-toggle] .theme-dark { display: none; }

/* ---- Error / offline pages -------------------------------------------- */
.ay-error .app { align-items: center; justify-content: center; }
.error-wrap { text-align: center; padding: var(--s-24) var(--s-8); max-width: 560px; }
.error-logo { margin: 0 auto var(--s-6); display: block; border-radius: var(--r-full); }
.error-code { font-family: var(--font-display); font-size: 96px; font-weight: 800; color: var(--accent); line-height: 1; }
.error-title { font-size: var(--t-2xl); margin: var(--s-4) 0 var(--s-3); }
.error-text { color: var(--text-3); margin-bottom: var(--s-8); }
.error-debug { margin-top: var(--s-8); text-align: left; font-size: 12px; color: var(--text-3); background: var(--bg-1); border-radius: var(--r-md); padding: var(--s-4); overflow: auto; }
.offline-login { display: flex; flex-direction: column; gap: var(--s-3); max-width: 320px; margin: var(--s-8) auto 0; }
.offline-login input { background: var(--bg-2); border: 1px solid var(--border); border-radius: var(--r-md); padding: 12px 14px; color: var(--text-1); }

/* ---- Login / users forms (com_users login, reset, remind, register) --- */
/* Center the login view and wrap it in a card. The core layout outputs a
   `.login` block (the form) immediately followed by a sibling `<div>` holding
   the helper links (reset / remind / register). */
.login {
	max-width: 420px;
	margin: var(--s-12) auto 0;
	padding: var(--s-8);
	background: var(--bg-1);
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	box-shadow: 0 24px 60px rgba(0,0,0,0.35);
}
.login + div {
	max-width: 420px;
	margin: var(--s-4) auto var(--s-16);
}
.login .page-header h1 {
	font-family: var(--font-display);
	font-size: var(--t-xl);
	margin: 0 0 var(--s-6);
	text-align: center;
}
.login .login-description { color: var(--text-3); font-size: var(--t-sm); margin-bottom: var(--s-5); }
.login form.well { background: none; border: 0; padding: 0; margin: 0; box-shadow: none; }
.login fieldset { border: 0; margin: 0; padding: 0; }

/* Field rows */
.login .control-group { margin-bottom: var(--s-4); }
.login .control-label label,
.login .controls label {
	display: block;
	font-size: var(--t-sm);
	font-weight: 500;
	color: var(--text-2);
	margin-bottom: var(--s-2);
}
.login .control-label label .star,
.login .controls label .star { color: var(--accent); }

/* Text inputs */
.login input[type="text"],
.login input[type="password"],
.login input[type="email"],
.login input.inputbox {
	width: 100%;
	box-sizing: border-box;
	background: var(--bg-2);
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	padding: 12px 14px;
	color: var(--text-1);
	font-size: var(--t-base);
	transition: border-color var(--d-fast), box-shadow var(--d-fast);
}
.login input[type="text"]:focus,
.login input[type="password"]:focus,
.login input[type="email"]:focus,
.login input.inputbox:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px var(--accent-soft);
}
.login input::placeholder { color: var(--text-4); }

/* Remember-me row: checkbox + label inline */
.login .control-group:has(#remember) .control-label,
.login .control-group:has(#remember) .controls { display: inline-flex; align-items: center; }
.login #remember { width: auto; margin: 0 var(--s-2) 0 0; accent-color: var(--accent); }
.login .control-group:has(#remember) .control-label label { margin: 0; }

/* Submit */
.login .btn-primary {
	width: 100%;
	height: 48px;
	background: var(--accent);
	color: var(--brand-deeper, var(--bg-0));
	border: 0;
	border-radius: var(--r-full);
	font-weight: 600;
	font-size: var(--t-base);
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(232,180,71,0.30);
	transition: background var(--d-fast), transform var(--d-fast);
}
.login .btn-primary:hover { background: var(--accent-hot); transform: translateY(-1px); }

/* Helper links (reset / remind / register) */
.login + div ul.nav-tabs,
.login + div ul.nav-stacked {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--s-4);
}
.login + div ul a {
	font-size: var(--t-sm);
	color: var(--text-3);
	transition: color var(--d-fast);
}
.login + div ul a:hover { color: var(--accent); }

/* ---- Profile view (com_users profile) ---------------------------------- */
.profile {
	max-width: 720px;
	margin: var(--s-10) auto var(--s-16);
	padding: 0 var(--s-4);
}
.profile .page-header h1 {
	font-family: var(--font-display);
	font-size: var(--t-2xl);
	margin: 0 0 var(--s-6);
}
/* Edit-profile toolbar */
.profile ul.btn-toolbar {
	list-style: none;
	margin: 0 0 var(--s-6);
	padding: 0;
	display: flex;
	justify-content: flex-end;
}
.profile ul.btn-toolbar .btn {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	height: 40px;
	padding: 0 18px;
	border-radius: var(--r-full);
	background: rgba(255,255,255,0.08);
	border: 1px solid var(--border-strong);
	color: var(--text-1);
	font-size: var(--t-sm);
	font-weight: 600;
}
[data-theme="light"] .profile ul.btn-toolbar .btn { background: rgba(11,20,48,0.06); }
.profile ul.btn-toolbar .btn:hover { border-color: var(--accent); color: var(--accent); }

/* Each section is a card */
.profile fieldset {
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	background: var(--bg-1);
	padding: var(--s-6);
	margin: 0 0 var(--s-5);
}
.profile fieldset legend {
	float: none;
	display: block;
	width: 100%;
	border: 0;
	border-bottom: 1px solid var(--border);
	padding: 0 0 var(--s-4);
	margin: 0 0 var(--s-5);
	font-family: var(--font-display);
	font-size: var(--t-md);
	font-weight: 600;
	color: var(--text-1);
}
/* Label / value rows as a two-column grid */
.profile dl.dl-horizontal {
	display: grid;
	grid-template-columns: minmax(0, 220px) 1fr;
	gap: var(--s-3) var(--s-5);
	margin: 0;
}
.profile dl.dl-horizontal dt {
	margin: 0;
	font-size: var(--t-sm);
	color: var(--text-3);
	font-weight: 500;
}
.profile dl.dl-horizontal dd {
	margin: 0;
	font-size: var(--t-base);
	color: var(--text-1);
	word-break: break-word;
}
@media (max-width: 560px) {
	.profile dl.dl-horizontal { grid-template-columns: 1fr; gap: var(--s-1) 0; }
	.profile dl.dl-horizontal dd { margin-bottom: var(--s-3); }
}

/* ---- Profile edit view (com_users profile, layout=edit) ---------------- */
.profile-edit {
	max-width: 720px;
	margin: var(--s-10) auto var(--s-16);
	padding: 0 var(--s-4);
}
.profile-edit .page-header h1 {
	font-family: var(--font-display);
	font-size: var(--t-2xl);
	margin: 0 0 var(--s-6);
}
.profile-edit form.well { background: none; border: 0; padding: 0; margin: 0; box-shadow: none; }

/* Sections as cards */
.profile-edit fieldset {
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	background: var(--bg-1);
	padding: var(--s-6);
	margin: 0 0 var(--s-5);
}
.profile-edit fieldset legend {
	float: none;
	display: block;
	width: 100%;
	border: 0;
	border-bottom: 1px solid var(--border);
	padding: 0 0 var(--s-4);
	margin: 0 0 var(--s-5);
	font-family: var(--font-display);
	font-size: var(--t-md);
	font-weight: 600;
	color: var(--text-1);
}
.profile-edit fieldset > p { color: var(--text-3); font-size: var(--t-sm); margin: 0 0 var(--s-4); }

/* Field rows */
.profile-edit .control-group { margin-bottom: var(--s-4); }
.profile-edit .control-group:last-child { margin-bottom: 0; }
.profile-edit .control-label label,
.profile-edit .control-label {
	display: block;
	font-size: var(--t-sm);
	font-weight: 500;
	color: var(--text-2);
	margin-bottom: var(--s-2);
}
.profile-edit .control-label .star { color: var(--accent); }
.profile-edit .control-label .optional { color: var(--text-4); font-weight: 400; margin-left: var(--s-1); }

/* Inputs / selects / textareas */
.profile-edit input[type="text"],
.profile-edit input[type="password"],
.profile-edit input[type="email"],
.profile-edit input[type="tel"],
.profile-edit input[type="url"],
.profile-edit input[type="date"],
.profile-edit input.inputbox,
.profile-edit select,
.profile-edit textarea {
	width: 100%;
	max-width: 420px;
	box-sizing: border-box;
	background: var(--bg-2);
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	padding: 12px 14px;
	color: var(--text-1);
	font-size: var(--t-base);
	font-family: inherit;
	transition: border-color var(--d-fast), box-shadow var(--d-fast);
}
.profile-edit textarea { max-width: 100%; min-height: 96px; }
/* Native-control reset for selects + custom caret */
.profile-edit select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23F4EFE3' stroke-opacity='0.6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	cursor: pointer;
}
[data-theme="light"] .profile-edit select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%230B1430' stroke-opacity='0.6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.profile-edit input:focus,
.profile-edit select:focus,
.profile-edit textarea:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px var(--accent-soft);
}
/* Keep autofilled fields on-theme (browsers force a white/yellow background) */
.profile-edit input:-webkit-autofill,
.profile-edit input:-webkit-autofill:hover,
.profile-edit input:-webkit-autofill:focus,
.login input:-webkit-autofill,
.login input:-webkit-autofill:hover,
.login input:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--text-1);
	-webkit-box-shadow: 0 0 0 1000px var(--bg-2) inset;
	caret-color: var(--text-1);
}
.profile-edit input[type="checkbox"],
.profile-edit input[type="radio"] { width: auto; accent-color: var(--accent); margin-right: var(--s-2); }

/* Alerts */
.profile-edit .alert {
	border-radius: var(--r-md);
	padding: var(--s-3) var(--s-4);
	font-size: var(--t-sm);
	margin-bottom: var(--s-4);
	border: 1px solid var(--border);
	background: var(--bg-2);
	color: var(--text-2);
}
.profile-edit .alert-warning { border-color: rgba(232,180,71,0.4); color: var(--accent); }

/* Action buttons (Submit + Cancel) */
.profile-edit .btn-primary {
	height: 48px;
	padding: 0 28px;
	background: var(--accent);
	color: var(--brand-deeper, var(--bg-0));
	border: 0;
	border-radius: var(--r-full);
	font-weight: 600;
	font-size: var(--t-base);
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(232,180,71,0.30);
	transition: background var(--d-fast), transform var(--d-fast);
}
.profile-edit .btn-primary:hover { background: var(--accent-hot); transform: translateY(-1px); }
.profile-edit .controls .btn:not(.btn-primary) {
	display: inline-flex;
	align-items: center;
	height: 48px;
	padding: 0 22px;
	margin-left: var(--s-3);
	border-radius: var(--r-full);
	background: rgba(255,255,255,0.08);
	border: 1px solid var(--border-strong);
	color: var(--text-1);
	font-size: var(--t-sm);
	font-weight: 600;
}
[data-theme="light"] .profile-edit .controls .btn:not(.btn-primary) { background: rgba(11,20,48,0.06); }
.profile-edit .controls .btn:not(.btn-primary):hover { border-color: var(--accent); color: var(--accent); }

/* ---- Auth forms: reset / remind / registration (com_users) ------------- */
/* Reuse the login/profile-edit visual language. Reset & remind are short
   single-fieldset forms (narrow card); registration is wider with fieldsets. */
.reset,
.remind,
.registration {
	margin: var(--s-12) auto var(--s-16);
	padding: var(--s-8);
	background: var(--bg-1);
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	box-shadow: 0 24px 60px rgba(0,0,0,0.35);
}
.reset,
.remind { max-width: 460px; }
.registration { max-width: 640px; }

.reset .page-header h1,
.remind .page-header h1,
.registration .page-header h1 {
	font-family: var(--font-display);
	font-size: var(--t-xl);
	margin: 0 0 var(--s-5);
	text-align: center;
}

.reset form.well,
.remind form.well,
.registration form.well { background: none; border: 0; padding: 0; margin: 0; box-shadow: none; }

/* Fieldsets: registration uses several (cards); reset/remind a single one */
.reset fieldset,
.remind fieldset { border: 0; margin: 0; padding: 0; }
.registration fieldset {
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	background: var(--bg-2);
	padding: var(--s-5);
	margin: 0 0 var(--s-5);
}
.registration fieldset legend {
	float: none;
	display: block;
	width: 100%;
	border: 0;
	border-bottom: 1px solid var(--border);
	padding: 0 0 var(--s-3);
	margin: 0 0 var(--s-4);
	font-family: var(--font-display);
	font-size: var(--t-md);
	font-weight: 600;
	color: var(--text-1);
}
.reset fieldset > p,
.remind fieldset > p { color: var(--text-3); font-size: var(--t-sm); margin: 0 0 var(--s-5); }

/* Field rows */
.reset .control-group,
.remind .control-group,
.registration .control-group { margin-bottom: var(--s-4); }
.reset .control-label label,
.remind .control-label label,
.registration .control-label label,
.reset .control-label,
.remind .control-label,
.registration .control-label {
	display: block;
	font-size: var(--t-sm);
	font-weight: 500;
	color: var(--text-2);
	margin-bottom: var(--s-2);
}
.reset .control-label .star,
.remind .control-label .star,
.registration .control-label .star { color: var(--accent); }
.reset .control-label .optional,
.remind .control-label .optional,
.registration .control-label .optional { color: var(--text-4); font-weight: 400; margin-left: var(--s-1); }

/* Inputs / selects / textareas */
.reset input[type="text"],
.reset input[type="password"],
.reset input[type="email"],
.remind input[type="text"],
.remind input[type="password"],
.remind input[type="email"],
.registration input[type="text"],
.registration input[type="password"],
.registration input[type="email"],
.registration input[type="tel"],
.registration input[type="url"],
.reset input.inputbox,
.remind input.inputbox,
.registration input.inputbox,
.registration select,
.registration textarea {
	width: 100%;
	box-sizing: border-box;
	background: var(--bg-2);
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	padding: 12px 14px;
	color: var(--text-1);
	font-size: var(--t-base);
	font-family: inherit;
	transition: border-color var(--d-fast), box-shadow var(--d-fast);
}
.registration fieldset input[type="text"],
.registration fieldset input[type="password"],
.registration fieldset input[type="email"],
.registration fieldset select,
.registration fieldset textarea { background: var(--bg-1); }
.registration select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23F4EFE3' stroke-opacity='0.6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	cursor: pointer;
}
[data-theme="light"] .registration select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%230B1430' stroke-opacity='0.6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.reset input:focus,
.remind input:focus,
.registration input:focus,
.registration select:focus,
.registration textarea:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px var(--accent-soft);
}
.reset input::placeholder,
.remind input::placeholder,
.registration input::placeholder { color: var(--text-4); }
.registration input[type="checkbox"],
.registration input[type="radio"] { width: auto; accent-color: var(--accent); margin-right: var(--s-2); }

/* Field descriptions / validation hints */
.registration .control-group .field-desc,
.reset .control-group .field-desc,
.remind .control-group .field-desc { display: block; color: var(--text-4); font-size: var(--t-xs); margin-top: var(--s-1); }

/* Submit + cancel buttons */
.reset .btn-primary,
.remind .btn-primary,
.registration .btn-primary {
	height: 48px;
	padding: 0 28px;
	background: var(--accent);
	color: var(--brand-deeper, var(--bg-0));
	border: 0;
	border-radius: var(--r-full);
	font-weight: 600;
	font-size: var(--t-base);
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(232,180,71,0.30);
	transition: background var(--d-fast), transform var(--d-fast);
}
.reset .btn-primary,
.remind .btn-primary { width: 100%; }
.reset .btn-primary:hover,
.remind .btn-primary:hover,
.registration .btn-primary:hover { background: var(--accent-hot); transform: translateY(-1px); }
.registration .controls .btn:not(.btn-primary) {
	display: inline-flex;
	align-items: center;
	height: 48px;
	padding: 0 22px;
	margin-left: var(--s-3);
	border-radius: var(--r-full);
	background: rgba(255,255,255,0.08);
	border: 1px solid var(--border-strong);
	color: var(--text-1);
	font-size: var(--t-sm);
	font-weight: 600;
}
[data-theme="light"] .registration .controls .btn:not(.btn-primary) { background: rgba(11,20,48,0.06); }
.registration .controls .btn:not(.btn-primary):hover { border-color: var(--accent); color: var(--accent); }

/* ---- Footer brand spacing --------------------------------------------- */
.footer-brand .brand { margin-bottom: var(--s-4); }
.footer-col h5 {
	font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--text-3); font-weight: 600; margin: 0 0 var(--s-4);
}
.drawer-foot { margin-top: auto; padding-top: var(--s-5); border-top: 1px solid var(--border); color: var(--text-3); font-size: 12px; display: flex; align-items: center; gap: 10px; }
