/* ============================================================================
   ANODOS ADMIN PANEL — style.css (owner 2026-09-04, "Temel" asamasi)

   Bu dosya UYGULAMANIN dilini miras alir; kaynak: anodos_new/lib/core/constants/
   app_colors.dart, lib/widgets/*, ve hafizadaki tasarim kararlari.
   Kural: tek mavi, sistem fontu, kap/golge YOK, sac teli ayrac, rol SEKILLE,
   durum YAZIYLA, renk yalniz esik. Ayrinti: memory/anodos-panel-tasarim-ozeti.md

   Onceki dosyadan KALKANLAR ve gerekcesi:
   - Google Fonts @import + Space Grotesk/Inter  → sistem fontu (uygulama karari)
   - --primary #2e37e0 indigo                     → #0065FF (app_colors.dart:6)
   - koyu kenar cubugu #0f141c, mor degrade giris → acik zemin; uygulamada koyu krom yok
   - --role-* capraz harita (yesil=yatirimci)     → uygulamanin haritasi: yesil=MENTOR,
                                                    altin=YATIRIMCI, fikir/bireysel renksiz
   - --warning #e8a317 == --role-idea             → uyari #8A5F00 yazi / #FDB339 cizgi
   - tintli pil rozetler                          → nokta + duz yazi; rol icin cerceveli CAPS
   - --shadow / --shadow-lg, 3px renk seridi      → yok; sac teli
   - BUYUK HARF + genis aralikli etiketler        → kucuk harf 13/600 gri
   - .modal scale 0.9→1 ziplama                   → 160ms opaklik
   ============================================================================ */

:root {
	/* marka + murekkep */
	--brand: #0065ff;
	--brand-text: #0b57c2;
	--brand-hover: #0057db;
	--ink: #0d2034;
	--body: #374151;
	--sec: #6b7280;
	--dim: #9aa3ae;
	--control: #1c274c;

	/* zeminler */
	--ground: #f7f8fa;
	--surface: #ffffff;
	--group: #f2f2f7;
	--box: #f4f6f9;
	--hover: #f2f2f7;
	--pressed: #d1d1d6;

	/* cizgiler */
	--frame: #e6e6e6;
	--line: rgba(60, 60, 67, 0.12);

	/* semantik — yazi koyu ton, cizgi/ikon doygun ton */
	--ok: #1b7a3e;
	--ok-line: #49b800;
	--warn: #8a5f00;
	--warn-line: #fdb339;
	--err: #e53935;
	--info: #0b57c2;
	--info-line: #0065ff;

	/* rol — SADECE halka ve rozet; fikir sahibi ve bireysel renksiz */
	--mentor: #2e7400;
	--mentor-ring: #49b800;
	--investor: #8a5f00;
	--investor-ring: #fdb339;

	/* bilesim cubugu — dort rolun yan yana durdugu TEK yer (illustrasyon paleti) */
	--comp-idea: #0065ff;
	--comp-individual: #2e7a54;
	--comp-mentor: #5b4bc4;
	--comp-investor: #c88a3e;
	--comp-other: #d3d1c7;

	/* olcu */
	--sidebar-width: 240px;
	--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, system-ui, sans-serif;
	--mono: ui-monospace, SFMono-Regular, Menlo, monospace;

	/* geriye donuk takma adlar — eski js/inline stiller bunlari okuyor */
	--primary-color: var(--brand);
	--primary-hover: var(--brand-hover);
	--danger-color: var(--err);
	--success-color: var(--ok);
	--warning-color: var(--warn);
	--bg-color: var(--ground);
	--card-bg: var(--surface);
	--text-color: var(--ink);
	--text-secondary: var(--sec);
	--border-color: var(--frame);
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	font-size: 15px;
}

body {
	font-family: var(--font);
	font-size: 15px;
	line-height: 1.3;
	color: var(--body);
	background: var(--ground);
	min-height: 100vh;
	-webkit-font-smoothing: antialiased;
	letter-spacing: -0.016em;
}

h1,
h2,
h3,
h4 {
	color: var(--ink);
	font-weight: 600;
	line-height: 1.25;
}
h1 {
	font-size: 22px;
	letter-spacing: -0.014em;
}
h2 {
	font-size: 17px;
}
h3 {
	font-size: 15px;
}

a {
	color: var(--brand-text);
	text-decoration: none;
}
a:hover {
	color: var(--brand-hover);
}

/* Odak — klavye kullanicisi nerede oldugunu gormeli (WCAG 2.4.7) */
:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}

/* Hareket — yalniz renk/opaklik, 150ms; scale/kayma yok */
button,
a,
input,
select,
textarea {
	transition:
		color 150ms ease-out,
		background-color 150ms ease-out,
		border-color 150ms ease-out,
		opacity 150ms ease-out;
}
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
		animation: none !important;
	}
}

/* ============================================================
   GIRIS
   ============================================================ */
.login-container {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	padding: 24px;
	background: var(--ground);
}
.login-box {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 16px;
	padding: 32px;
	width: 100%;
	max-width: 400px;
}
.logo {
	text-align: center;
	margin-bottom: 24px;
}
.logo h1 {
	font-size: 22px;
	color: var(--ink);
	letter-spacing: -0.014em;
}
.logo p {
	color: var(--sec);
	font-size: 13px;
	margin-top: 4px;
}
.login-footer {
	margin-top: 24px;
	padding-top: 16px;
	border-top: 0.5px solid var(--line);
	font-size: 13px;
	color: var(--sec);
}
.login-footer p {
	margin-bottom: 6px;
}
.login-footer ul {
	padding-left: 16px;
}
.login-footer li {
	margin-bottom: 2px;
}

/* ============================================================
   FORM
   ============================================================ */
.form-group {
	margin-bottom: 16px;
}
.form-group label {
	display: block;
	font-size: 14px;
	font-weight: 500;
	color: var(--ink);
	margin-bottom: 6px;
}
/* .form-input eskiden CSS'te HIC tanimli degildi — 96 kutu tarayici
   varsayilaninda, ustelik * {padding:0} ic boslugu da silmisti. */
.form-input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="datetime-local"],
input[type="url"],
input[type="search"],
select,
textarea {
	width: 100%;
	height: 40px;
	padding: 0 12px;
	font: inherit;
	font-size: 15px;
	color: var(--ink);
	background: var(--surface);
	border: 1px solid var(--frame);
	border-radius: 10px;
	letter-spacing: -0.016em;
}
textarea {
	height: auto;
	min-height: 96px;
	padding: 10px 12px;
	resize: vertical;
	line-height: 1.4;
}
input:focus,
select:focus,
textarea:focus,
.form-input:focus {
	outline: none;
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(0, 101, 255, 0.15);
}
input::placeholder,
textarea::placeholder {
	color: var(--sec);
}
input[type="checkbox"],
input[type="radio"] {
	width: 16px;
	height: 16px;
	accent-color: var(--brand);
	margin: 0;
}
select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 32px;
}
.error-message {
	color: var(--err);
	font-size: 13px;
	margin-top: 6px;
}

/* ============================================================
   YERLESIM
   ============================================================ */
.dashboard {
	display: flex;
	min-height: 100vh;
}
.sidebar-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(13, 32, 52, 0.3);
	z-index: 90;
}
.sidebar-overlay.active {
	display: block;
}

/* Kenar cubugu — ACIK zemin, uygulamada koyu krom yok */
.sidebar {
	width: var(--sidebar-width);
	flex-shrink: 0;
	background: var(--ground);
	border-right: 0.5px solid var(--line);
	position: sticky;
	top: 0;
	height: 100vh;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	z-index: 100;
}
.sidebar-header {
	padding: 20px 20px 12px;
}
.sidebar-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--ink);
	font-size: 17px;
	font-weight: 600;
	letter-spacing: -0.016em;
}
.sidebar-logo {
	height: 24px;
	width: auto;
	display: block;
}
.logo img {
	height: 29px;
	width: auto;
	display: block;
	margin: 0 auto 6px;
}
.sidebar-brand-icon {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	background: var(--brand);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
}
.sidebar-nav {
	padding: 4px 12px 24px;
	flex: 1;
	position: relative; /* .nav-gosterge için */
}
.nav-section {
	margin-bottom: 8px;
}
.nav-section-title {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	padding: 12px 8px 4px;
}
.nav-item {
	display: flex;
	align-items: center;
	gap: 10px;
	height: 40px;
	padding: 0 8px;
	border-radius: 8px;
	color: var(--body);
	font-size: 14px;
	font-weight: 500;
	position: relative;
}
.nav-item:hover {
	background: var(--hover);
	color: var(--ink);
}
.nav-item.active {
	background: var(--group);
	color: var(--ink);
}
/* Seçili madde göstergesi (owner 2026-09-06): yuvarlak pilin içindeki "(" biçimli çizgi yerine
   sol kenarda düz mavi çizgi; başka maddeye geçince kayarak gider. */
.nav-gosterge {
	position: absolute;
	left: 0;
	top: 0;
	width: 3px;
	height: 22px;
	border-radius: 0 3px 3px 0;
	background: var(--brand);
	transform: translateY(var(--y, 0px));
	transition: transform 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
	pointer-events: none;
	opacity: 0;
}
.nav-gosterge.on {
	opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
	.nav-gosterge {
		transition: none;
	}
}
.nav-item-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--sec);
}
.nav-item.active .nav-item-icon {
	color: var(--brand);
}
.nav-item-icon svg {
	width: 20px;
	height: 20px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.nav-item-badge {
	margin-left: auto;
	min-width: 20px;
	height: 18px;
	padding: 0 6px;
	border-radius: 9px;
	background: var(--brand);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 18px;
	text-align: center;
	font-variant-numeric: tabular-nums;
}
.nav-item-badge:empty,
.nav-item-badge[hidden] {
	display: none;
}

.main-content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

/* Ust cubuk */
.navbar {
	height: 56px;
	background: var(--surface);
	border-bottom: 0.5px solid var(--line);
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 24px;
	position: sticky;
	top: 0;
	z-index: 80;
}
.navbar-left {
	display: flex;
	align-items: center;
	gap: 12px;
}
.navbar-title {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
}
.mobile-menu-btn {
	display: none;
	background: none;
	border: none;
	font-size: 20px;
	color: var(--ink);
	cursor: pointer;
	width: 40px;
	height: 40px;
}
.navbar-user {
	display: flex;
	align-items: center;
	gap: 16px;
}
.user-info {
	text-align: right;
}
.user-name {
	font-size: 14px;
	font-weight: 500;
	color: var(--ink);
}
.user-role {
	font-size: 12px;
	color: var(--sec);
}
.btn-logout {
	height: 36px;
	padding: 0 14px;
	border-radius: 999px;
	border: 0.5px solid var(--frame);
	background: var(--surface);
	color: var(--ink);
	font: inherit;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
}
.btn-logout:hover {
	background: var(--hover);
}

.container {
	padding: 24px;
	max-width: 1200px;
	width: 100%;
}
.page-header {
	margin-bottom: 24px;
}
.page-header h1 {
	font-size: 22px;
	margin-bottom: 4px;
}
.page-header p {
	color: var(--sec);
	font-size: 14px;
}

/* ============================================================
   SAYAC KUTULARI — sakin: kap yok, renk seridi yok
   ============================================================ */
.stats-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 12px;
	margin-bottom: 24px;
}
.stat-card {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	padding: 14px 16px;
}
.stat-label {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin-bottom: 4px;
}
.stat-value {
	font-size: 28px;
	font-weight: 700;
	color: var(--ink);
	letter-spacing: -0.014em;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
}
/* renk yalniz eylem BEKLEYEN sayida (warning) ve reddedilende (danger) */
.stat-card.warning .stat-value {
	color: var(--warn);
}
.stat-card.danger .stat-value {
	color: var(--err);
}

/* ============================================================
   KART
   ============================================================ */
.card {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	margin-bottom: 24px;
}
.card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	border-bottom: 0.5px solid var(--line);
}
.card-header h2 {
	font-size: 15px;
}
.card-body {
	padding: 16px;
}

/* ============================================================
   SEKMELER — iOS segment: gri ray, beyaz kayan secici
   ============================================================ */
.tabs {
	display: inline-flex;
	background: var(--group);
	border-radius: 999px;
	padding: 2px;
	margin-bottom: 16px;
	gap: 0;
}
.tab-btn {
	height: 30px;
	padding: 0 14px;
	border: none;
	border-radius: 999px;
	background: transparent;
	color: var(--body);
	font: inherit;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
}
.tab-btn.active {
	background: var(--surface);
	color: var(--ink);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.tab-content {
	display: none;
}
.tab-content.active {
	display: block;
}

/* ============================================================
   TABLO — 40px satir, ilk sutun ad, sayilar sagda
   ============================================================ */
.table-container {
	overflow-x: auto;
}
table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
thead th {
	position: sticky;
	top: 0;
	background: var(--surface);
	text-align: left;
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	height: 40px;
	padding: 0 12px;
	border-bottom: 0.5px solid var(--line);
	white-space: nowrap;
}
tbody td {
	height: 44px;
	padding: 6px 12px;
	border-bottom: 0.5px solid var(--line);
	color: var(--ink);
	vertical-align: middle;
}
tbody tr:hover td {
	background: var(--hover);
}
td.num,
th.num {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

/* ============================================================
   ROZET — tintli pil YOK. Durum = renkli nokta + duz yazi.
   Rol = zeminsiz cerceveli CAPS mikro rozet.
   ============================================================ */
.badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 500;
	color: var(--ink);
	white-space: nowrap;
}
.badge::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--dim);
	flex-shrink: 0;
}
.badge.success::before,
.badge-success::before {
	background: var(--ok-line);
}
.badge.warning::before {
	background: var(--warn-line);
}
.badge.danger::before {
	background: var(--err);
}
.badge.info::before,
.badge.primary::before {
	background: var(--info-line);
}
.badge.secondary::before,
.badge-secondary::before {
	background: var(--dim);
}
.badge.success,
.badge-success {
	color: var(--ok);
}
.badge.warning {
	color: var(--warn);
}
.badge.danger {
	color: var(--err);
}

/* Rol rozetleri — roleBadge() common.js'ten `role-*` sinifiyla gelir */
.badge[class*="role-"] {
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	padding: 1px 6px;
	border-radius: 5px;
	border: 1px solid var(--frame);
	color: var(--sec);
	gap: 0;
}
.badge[class*="role-"]::before {
	display: none;
}
.badge.role-mentor {
	color: var(--mentor);
	border-color: rgba(73, 184, 0, 0.5);
}
.badge.role-investor {
	color: var(--investor);
	border-color: rgba(253, 179, 57, 0.55);
}
/* fikir sahibi ve bireysel RENKSIZ — uygulamanin kurali */

/* ============================================================
   DUGME
   ============================================================ */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 40px;
	padding: 0 16px;
	border-radius: 16px;
	border: 0.5px solid var(--frame);
	background: var(--surface);
	color: var(--ink);
	font: inherit;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -0.016em;
	cursor: pointer;
	white-space: nowrap;
	text-decoration: none;
}
.btn:hover {
	background: var(--hover);
}
.btn:active {
	background: var(--pressed);
}
.btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}
.btn-primary {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	font-weight: 600;
}
.btn-primary:hover {
	background: var(--brand-hover);
	border-color: var(--brand-hover);
}
.btn-success {
	background: var(--ok);
	border-color: var(--ok);
	color: #fff;
	font-weight: 600;
}
.btn-success:hover {
	filter: brightness(0.95);
}
/* yikici dugme: DOLGU YOK, kirmizi yazi (uygulama kurali) */
.btn-danger {
	background: transparent;
	border-color: transparent;
	color: var(--err);
}
.btn-danger:hover {
	background: rgba(229, 57, 53, 0.08);
}
.btn-outline {
	background: var(--surface);
}
.btn-sm {
	height: 32px;
	padding: 0 12px;
	font-size: 13px;
	border-radius: 999px;
}
.btn-group {
	display: inline-flex;
	gap: 6px;
	align-items: center;
}
.login-box .btn-primary {
	width: 100%;
}

/* ============================================================
   BOS DURUM / YUKLENIYOR
   ============================================================ */
.empty-state {
	text-align: center;
	padding: 40px 24px;
	color: var(--sec);
}
.empty-state-icon {
	display: none;
} /* resim/ikon yok — duz cumle yeter */
.empty-state-text {
	font-size: 15px;
	color: var(--sec);
}
.loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 40px;
	color: var(--sec);
	font-size: 14px;
}
.spinner {
	width: 24px;
	height: 24px;
	border: 2px solid var(--frame);
	border-top-color: var(--brand);
	border-radius: 50%;
	animation: spin 0.8s linear infinite;
}
@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

/* ============================================================
   PENCERE — 160ms opaklik, ziplama yok
   ============================================================ */
.modal-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(13, 32, 52, 0.3);
	z-index: 1000;
	align-items: center;
	justify-content: center;
	padding: 24px;
	opacity: 0;
	transition: opacity 160ms ease-out;
}
.modal-overlay.active {
	display: flex;
	opacity: 1;
}
.modal {
	background: var(--surface);
	border-radius: 14px;
	width: 100%;
	max-width: 640px;
	max-height: 90vh;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 0.5px solid var(--line);
}
.modal-header h3 {
	font-size: 17px;
}
.modal-close {
	width: 32px;
	height: 32px;
	border: none;
	background: none;
	font-size: 22px;
	line-height: 1;
	color: var(--sec);
	cursor: pointer;
	border-radius: 8px;
}
.modal-close:hover {
	background: var(--hover);
	color: var(--ink);
}
.modal-body {
	padding: 20px;
	overflow-y: auto;
	font-size: 14px;
	color: var(--body);
	line-height: 1.45;
}
.modal-footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	padding: 12px 20px;
	border-top: 0.5px solid var(--line);
}

/* ============================================================
   DETAY — iOS gruplu liste: gri zemin + beyaz kutu
   ============================================================ */
.application-detail {
}
.detail-section {
	background: var(--group);
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 12px;
}
.detail-section-title {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 8px 4px;
}
.detail-row {
	display: flex;
	gap: 12px;
	background: var(--surface);
	padding: 10px 12px;
	border-radius: 10px;
	margin-bottom: 4px;
	font-size: 14px;
}
.detail-row:last-child {
	margin-bottom: 0;
}
.detail-label {
	color: var(--sec);
	min-width: 140px;
	flex-shrink: 0;
}
.detail-value {
	color: var(--ink);
	flex: 1;
	word-break: break-word;
}

/* ============================================================
   SUZGEC SERIDI
   ============================================================ */
.filter-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-bottom: 16px;
}
.filter-bar select,
.filter-bar input {
	width: auto;
	min-width: 160px;
	height: 36px;
	font-size: 14px;
	border-radius: 999px;
}

/* ============================================================
   TOPLULUGUN BILESIMI — illustrasyon paleti (yalniz burada)
   ============================================================ */
.composition {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	padding: 16px;
	margin-bottom: 24px;
}
.composition-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 10px;
}
.composition-head h2 {
	font-size: 15px;
}
.composition-total {
	font-size: 13px;
	color: var(--sec);
}
.composition-total b {
	color: var(--ink);
	font-variant-numeric: tabular-nums;
}
.composition-bar {
	display: flex;
	height: 8px;
	border-radius: 4px;
	overflow: hidden;
	background: var(--group);
	margin-bottom: 10px;
}
.composition-bar span {
	display: block;
	height: 100%;
}
.composition-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}
.legend-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: var(--body);
}
.legend-dot {
	width: 8px;
	height: 8px;
	border-radius: 2px;
}
.legend-label {
	color: var(--body);
}
.legend-value {
	color: var(--ink);
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}
.seg-idea,
.dot-idea {
	background: var(--comp-idea);
}
.seg-individual,
.dot-individual {
	background: var(--comp-individual);
}
.seg-mentor,
.dot-mentor {
	background: var(--comp-mentor);
}
.seg-investor,
.dot-investor {
	background: var(--comp-investor);
}
.seg-other,
.dot-other {
	background: var(--comp-other);
}

/* ============================================================
   MOBIL
   ============================================================ */
@media (max-width: 900px) {
	.sidebar {
		position: fixed;
		left: 0;
		top: 0;
		transform: translateX(-100%);
		transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);
	}
	.sidebar.open {
		transform: translateX(0);
	}
	.mobile-menu-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}
	.container {
		padding: 16px;
	}
	.navbar {
		padding: 0 16px;
	}
	.user-info {
		display: none;
	}
}

/* ============================================================
   PANO — bes blok (owner 2026-09-04). Kap yok; beyaz kutu + sac teli.
   ============================================================ */
.pano .page-header p {
	text-transform: none;
}
.pano-kolonlar {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 16px;
	align-items: start;
}
.pano-sol,
.pano-sag {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
}
.pano-blok {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	padding: 14px 16px;
	margin: 0;
}
.pano-blok h2 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin-bottom: 6px;
}
.pano-blok.composition {
	margin-bottom: 0;
}
.pano-satir {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 56px;
	padding: 8px 0;
	border-bottom: 0.5px solid var(--line);
	color: var(--ink);
	text-decoration: none;
	border-radius: 6px;
}
.pano-satir:last-child {
	border-bottom: none;
}
.pano-satir:hover {
	background: var(--hover);
	margin: 0 -8px;
	padding-left: 8px;
	padding-right: 8px;
}
.pano-ikon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	color: var(--sec);
	display: inline-flex;
}
.pano-ikon svg {
	width: 20px;
	height: 20px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.pano-metin {
	flex: 1;
	min-width: 0;
	font-size: 17px;
	font-weight: 500;
	color: var(--ink);
	letter-spacing: -0.016em;
}
.pano-metin small {
	display: block;
	font-size: 13px;
	font-weight: 400;
	color: var(--sec);
	margin-top: 2px;
}
.pano-sayi {
	font-size: 17px;
	font-weight: 600;
	color: var(--ink);
	font-variant-numeric: tabular-nums;
}
.pano-sayi.sicak {
	color: var(--err);
}
.pano-chev {
	width: 16px;
	height: 16px;
	stroke: var(--dim);
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	flex-shrink: 0;
}
.pano-bos {
	font-size: 15px;
	color: var(--sec);
	padding: 12px 0;
}
.pano-uc {
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	color: var(--brand-text);
	padding: 4px 0 8px;
}
.pano-olay {
	font-size: 15px;
	color: var(--body);
	padding: 8px 0;
	border-bottom: 0.5px solid var(--line);
	line-height: 1.35;
}
.pano-olay:last-child {
	border-bottom: none;
}
.pano-olay b {
	font-weight: 500;
	color: var(--ink);
}
.pano-olay span {
	color: var(--sec);
	font-size: 13px;
	margin-left: 4px;
}
@media (max-width: 1000px) {
	.pano-kolonlar {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   BAŞVURULAR — bölünmüş görünüm (owner 2026-09-04). Sol kuyruk 320, sağ panel.
   ============================================================ */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
.bsv-ust {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}
.bsv-segment {
	display: inline-flex;
	background: var(--group);
	border-radius: 999px;
	padding: 2px;
}
.bsv-seg {
	border: 0;
	background: transparent;
	color: var(--body);
	font: inherit;
	font-size: 14px;
	font-weight: 500;
	padding: 6px 14px;
	border-radius: 999px;
	cursor: pointer;
	letter-spacing: -0.016em;
}
.bsv-seg.on {
	background: var(--surface);
	color: var(--ink);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.bsv-seg-sayi {
	color: var(--sec);
	font-variant-numeric: tabular-nums;
	margin-left: 2px;
}
.bsv-seg.on .bsv-seg-sayi {
	color: var(--ink);
}
.bsv-suzgec select {
	width: auto;
	min-width: 160px;
	height: 36px;
	border-radius: 999px;
	padding: 0 32px 0 14px;
}

.bsv-bolunmus {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: 0;
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	flex: 1;
	min-height: 0;
	overflow: clip;
}
.bsv-sol {
	border-right: 0.5px solid var(--line);
	padding: 8px;
	overflow-y: auto;
	min-height: 0;
}
.bsv-sag {
	padding: 16px 20px 0;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 0;
	overflow: hidden;
}
.bsv-icerik {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding-bottom: 8px;
}
@media (max-width: 900px) {
	.bsv-bolunmus {
		grid-template-columns: 1fr;
	}
	.bsv-sol {
		border-right: 0;
		border-bottom: 0.5px solid var(--line);
		max-height: 40vh;
	}
}

.bsv-satir {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 10px;
	border-radius: 8px;
	cursor: pointer;
	min-height: 56px;
}
.bsv-satir:hover {
	background: var(--hover);
}
.bsv-satir.on {
	background: var(--group);
	box-shadow: inset 3px 0 0 var(--brand);
}
.bsv-satir:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: -2px;
}
.bsv-satir-metin {
	min-width: 0;
	flex: 1;
}
.bsv-satir-ad {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	letter-spacing: -0.016em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.bsv-satir-alt {
	display: block;
	font-size: 13px;
	color: var(--sec);
	margin-top: 1px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.bsv-satir-alt.sicak {
	color: var(--err);
	font-weight: 500;
}

.bsv-av {
	--boy: 40px;
	width: var(--boy);
	height: var(--boy);
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #dce3ec;
	color: var(--ink);
	font-weight: 600;
	font-size: calc(var(--boy) * 0.36);
	overflow: hidden;
}
.bsv-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bsv-av.kare {
	border-radius: calc(var(--boy) * 0.22);
}
.bsv-av.yuvarlak {
	border-radius: 50%;
}
.bsv-av.mentor {
	box-shadow:
		0 0 0 2px var(--surface),
		0 0 0 3.5px var(--mentor-ring);
}
.bsv-av.investor {
	box-shadow:
		0 0 0 2px var(--surface),
		0 0 0 3.5px var(--investor-ring);
}
.bsv-rozet {
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.07em;
	padding: 1px 5px;
	border-radius: 5px;
	border: 1px solid;
	background: transparent;
	flex-shrink: 0;
}
.bsv-rozet.mentor {
	color: var(--mentor);
	border-color: rgba(73, 184, 0, 0.5);
}
.bsv-rozet.investor {
	color: var(--investor);
	border-color: rgba(253, 179, 57, 0.55);
}

.bsv-bas {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
}
.bsv-bas > div {
	min-width: 0;
	flex: 1;
}
.bsv-kopya {
	flex-shrink: 0;
	align-self: flex-start;
}
.bsv-ust-sag {
	display: flex;
	align-items: center;
	gap: 8px;
}
.bsv-bas-ad {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 17px;
	font-weight: 600;
	color: var(--ink);
	letter-spacing: -0.016em;
}
.bsv-bas-durum {
	font-size: 13px;
	color: var(--sec);
	margin-top: 2px;
}
.sicak {
	color: var(--err);
}
.bsv-not {
	font-size: 13px;
	color: var(--warn);
	background: #fff8e8;
	border: 0.5px solid rgba(253, 179, 57, 0.5);
	border-radius: 8px;
	padding: 8px 12px;
	margin-bottom: 12px;
}
.bsv-grup {
	background: var(--group);
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 10px;
}
.bsv-grup h3 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 6px 2px;
}
.bsv-kutu {
	background: var(--surface);
	border-radius: 10px;
	padding: 10px 14px;
}
.bsv-kutu + .bsv-kutu {
	margin-top: 8px;
}
.bsv-kv {
	font-size: 14px;
	color: var(--ink);
	line-height: 1.4;
}
.bsv-kv.sec,
.sec {
	color: var(--sec);
}
.bsv-kv + .bsv-kv {
	margin-top: 4px;
}
.bsv-kategori {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin-bottom: 6px;
}
.bsv-soru {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin-top: 8px;
}
.bsv-soru:first-of-type {
	margin-top: 0;
}
.bsv-cevap {
	font-size: 15px;
	color: var(--ink);
	line-height: 1.45;
	white-space: pre-wrap;
}
.bsv-cevap.sec {
	color: var(--sec);
	font-size: 14px;
}

.bsv-karar {
	margin: 0 -20px 0;
	padding: 12px 20px 16px;
	border-top: 0.5px solid var(--line);
	background: var(--surface);
	flex: none;
}
.bsv-karar-not {
	font-size: 13px;
	color: var(--sec);
	margin-bottom: 8px;
	display: block;
}
.bsv-karar-dugmeler {
	display: flex;
	align-items: center;
	gap: 10px;
}
.bsv-esnek {
	flex: 1;
}
.bsv-btn-ret {
	background: transparent;
	border-color: transparent;
	color: var(--err);
	padding-left: 0;
}
.bsv-btn-ret:hover {
	background: transparent;
	color: #b71c1c;
}
.bsv-ret textarea {
	width: 100%;
	margin-bottom: 8px;
}
.bsv-onizleme {
	font-size: 13px;
	color: var(--ink);
	background: var(--box);
	border-radius: 8px;
	padding: 8px 12px;
	margin-bottom: 10px;
	line-height: 1.4;
}
.bsv-bos {
	font-size: 15px;
	color: var(--sec);
	padding: 16px 12px;
}

/* ============================================================
   BİLDİRİM ZİLİ (üst çubuk) + AYARLAR › PANEL BİLDİRİMLERİ (owner 2026-09-05)
   ============================================================ */
.bildirim-zil {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 36px;
	padding: 0 12px;
	margin-right: 8px;
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	background: var(--surface);
	color: var(--sec);
	font: inherit;
	font-size: 14px;
	cursor: pointer;
	white-space: nowrap;
}
.bildirim-zil:hover {
	background: var(--hover);
	color: var(--ink);
}
.bildirim-zil.acik {
	color: var(--brand);
	border-color: rgba(0, 101, 255, 0.35);
}
.bildirim-zil.engelli {
	color: var(--err);
	border-color: rgba(211, 47, 47, 0.35);
}
.bildirim-zil.kapali {
	color: var(--ink);
}
@media (max-width: 640px) {
	.bildirim-zil span {
		display: none;
	}
	.bildirim-zil {
		padding: 0 9px;
	}
}
.pb-blok {
	padding: 14px 0 6px;
	border-top: 0.5px solid var(--line);
}
.pb-blok h3 {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
	margin: 0 0 8px;
}
.pb-satir {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	margin: 8px 0;
}
.pb-satir input[type="range"] {
	width: 200px;
}
.pb-ses {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 6px;
	border-bottom: 0.5px solid var(--line);
	cursor: pointer;
	border-radius: 6px;
}
.pb-ses:hover {
	background: var(--hover);
}
.pb-ses.on {
	background: var(--group);
}
.pb-ses-ad {
	font-size: 15px;
	color: var(--ink);
	font-weight: 500;
}
.pb-ses-alt {
	font-size: 13px;
	color: var(--sec);
}
.pb-esnek {
	flex: 1;
}
.pb-olay {
	display: grid;
	grid-template-columns: 82px 1fr 200px auto auto;
	gap: 10px;
	align-items: center;
	padding: 10px 6px;
	border-bottom: 0.5px solid var(--line);
}
.pb-olay select {
	height: 34px;
	width: 200px;
}
.pb-anahtar {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: var(--sec);
	cursor: pointer;
	white-space: nowrap;
}
.pb-anahtar input {
	width: 16px;
	height: 16px;
	margin: 0;
}
@media (max-width: 760px) {
	.pb-olay {
		grid-template-columns: 82px 1fr;
	}
	.pb-olay select {
		width: 100%;
	}
}

/* ============================================================
   GELEN KUTUSU (owner 2026-09-05, tasarım A "Kuyruk") — bsv-* iskeletini paylaşır
   ============================================================ */
.page-header.gk-bas {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
}
.gk-baglanti {
	color: var(--brand);
	text-decoration: none;
	font-size: 14px;
	white-space: nowrap;
}
.gk-cip {
	height: 32px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0 12px;
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	background: var(--surface);
	font: inherit;
	font-size: 13px;
	color: var(--ink);
	cursor: pointer;
	white-space: nowrap;
}
.gk-cip:hover {
	background: var(--hover);
}
.gk-cip.on {
	border-color: var(--brand);
	color: var(--brand);
}
.gk-secim {
	height: 32px;
	width: auto;
	border-radius: 999px;
	padding: 0 28px 0 12px;
	font-size: 13px;
}
.gk-arama {
	position: relative;
	display: inline-flex;
	align-items: center;
}
.gk-arama svg {
	position: absolute;
	left: 10px;
	width: 14px;
	height: 14px;
	stroke: var(--dim);
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	pointer-events: none;
}
.gk-arama input {
	height: 32px;
	width: 200px;
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	padding: 0 12px 0 30px;
	font: inherit;
	font-size: 13px;
	background: var(--surface);
	color: var(--ink);
}
.gk-arama input:focus {
	outline: 2px solid rgba(0, 101, 255, 0.35);
	outline-offset: 0;
	border-color: var(--brand);
}
.gk-sag {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
	flex-shrink: 0;
}
.gk-zaman {
	font-size: 12px;
	color: var(--sec);
	white-space: nowrap;
}
.gk-nokta {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--brand);
}
.bsv-satir-alt.okunmamis {
	color: var(--ink);
	font-weight: 500;
}
.bsv-bas > .gk-bas-sag {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-left: auto;
	flex: 0 0 auto;
}
.gk-durum-seg .bsv-seg {
	padding: 5px 12px;
	font-size: 13px;
}
.gk-nitelik {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}
.gk-nitelik .bsv-kutu b {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin-bottom: 2px;
}
.gk-nitelik .bsv-kutu span {
	font-size: 15px;
	color: var(--ink);
	word-break: break-word;
}
.gk-iki {
	flex: 1;
	min-height: 0;
	display: grid;
	grid-template-columns: 360px minmax(0, 1fr);
	gap: 14px;
	padding-bottom: 14px;
}
.gk-iki.tek {
	grid-template-columns: 1fr;
}
.gk-sabit {
	min-height: 0;
	overflow-y: auto;
}
.gk-sabit .bsv-grup:last-child {
	margin-bottom: 0;
}
.gk-sabit .gk-nitelik {
	grid-template-columns: 1fr 1fr;
}
.gk-sohbet-sutun {
	display: flex;
	flex-direction: column;
	min-height: 0;
	background: var(--group);
	border-radius: 10px;
	padding: 10px;
}
.gk-sohbet-sutun h3 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 6px 2px;
}
.gk-mesajlar {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	background: var(--surface);
	border-radius: 10px;
	padding: 10px 14px;
	display: flex;
	flex-direction: column;
}
.gk-mesajlar .gk-balon.biz {
	align-self: flex-end;
}
.gk-mesajlar .gk-balon.uye {
	align-self: flex-start;
}
.gk-balon {
	max-width: 78%;
	padding: 8px 12px;
	border-radius: 14px;
	font-size: 14px;
	line-height: 1.4;
	margin-bottom: 6px;
	white-space: pre-wrap;
	word-break: break-word;
}
.gk-balon.uye {
	background: var(--box);
	color: var(--ink);
	border-bottom-left-radius: 4px;
}
.gk-balon.biz {
	background: var(--brand);
	color: #fff;
	margin-left: auto;
	border-bottom-right-radius: 4px;
}
.gk-balon small {
	display: block;
	font-size: 11px;
	opacity: 0.7;
	margin-top: 3px;
}
.gk-yazici {
	flex: none;
	padding-top: 10px;
}
.gk-yazici textarea {
	width: 100%;
	margin-bottom: 8px;
	min-height: 64px;
	resize: vertical;
}
@media (max-width: 900px) {
	.gk-nitelik {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   İHTİYAÇ KARTLARI (owner 2026-09-05): eşit yükseklik, eylem şeridi hep altta, Düzenle + ⋯
   ============================================================ */
.ik-kart {
	display: flex;
	flex-direction: column;
	gap: 6px;
	width: 133px;
}
.ik-satir {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	margin-top: 2px;
}
.ik-durum {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 13px;
	color: var(--ink);
}
.ik-durum::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--ok-ring, #49b800);
}
.ik-durum.kapali {
	color: var(--sec);
}
.ik-durum.kapali::before {
	background: var(--dim);
}
.ik-meta {
	font-size: 12px;
	color: var(--sec);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ik-eylem {
	margin-top: auto;
	padding-top: 6px;
	display: flex;
	gap: 6px;
	align-items: center;
}
.ik-uc {
	width: 32px;
	height: 32px;
	flex: none;
	border-radius: 10px;
	border: 0.5px solid var(--frame);
	background: var(--surface);
	color: var(--sec);
	font: inherit;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1;
	cursor: pointer;
}
.ik-uc:hover {
	background: var(--hover);
	color: var(--ink);
}
.ik-menu {
	position: absolute;
	z-index: 60;
	min-width: 170px;
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	padding: 4px;
	box-shadow: 0 8px 24px rgba(13, 32, 52, 0.12);
}
.ik-menu button {
	display: block;
	width: 100%;
	text-align: left;
	padding: 8px 10px;
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 14px;
	color: var(--ink);
	border-radius: 6px;
	cursor: pointer;
}
.ik-menu button:hover {
	background: var(--hover);
}
.ik-menu button:disabled {
	color: var(--dim);
	cursor: default;
	background: transparent;
}
.ik-menu button.tehlike {
	color: var(--err);
}
.ik-menu-ayrac {
	height: 0.5px;
	background: var(--line);
	margin: 4px 6px;
}

/* ============================================================
   KART DÜZENLE penceresi (owner 2026-09-05) — yapılandırma kalıbı (gruplu liste + sabit önizleme)
   ============================================================ */
.modal.kf-genis {
	max-width: min(1060px, 94vw) !important;
}
.kf-yerlesim {
	display: grid;
	grid-template-columns: 1fr 1fr 200px;
	gap: 16px;
	align-items: start;
}
.kf-kol {
	min-width: 0;
}
.ik-onizleme-simge {
	position: absolute;
	top: 10px;
	left: 10px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.18);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.ik-onizleme-simge svg {
	width: 16px;
	height: 16px;
}
.kf-grup {
	background: var(--group);
	border-radius: 10px;
	padding: 8px;
	margin-bottom: 10px;
}
.kf-grup h4 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 2px 0 6px 4px;
}
.kf-alan {
	background: var(--surface);
	border-radius: 10px;
	padding: 10px 12px;
}
.kf-alan + .kf-alan {
	margin-top: 6px;
}
/* .kf-etiket: form alanı OLMAYAN kümeleri (sekme grubu vb.) adlandırır — <label> bir alana
   bağlanmadığında ekran okuyucu onu boşa okur, bu yüzden ayrı bir öğe kullanıyoruz. */
.kf-alan > label,
.kf-alan > .kf-etiket {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: var(--ink);
	margin-bottom: 6px;
}
.kf-alan .form-input {
	margin: 0;
}
.kf-not {
	font-size: 12px;
	color: var(--sec);
	line-height: 1.4;
	margin-top: 6px;
}
.kf-onizleme:empty {
	display: none;
}
.kf-dosya {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.kf-kaldir {
	border-color: transparent;
	background: transparent;
	color: var(--err);
	padding: 0 6px;
	height: 32px;
}
.kf-satir {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
input[type="checkbox"].kf-anahtar {
	appearance: none;
	-webkit-appearance: none;
	width: 40px;
	height: 24px;
	border-radius: 999px;
	background: #d1d5db;
	position: relative;
	cursor: pointer;
	flex: none;
	transition: background 150ms;
	margin: 0;
}
.kf-anahtar::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
	transition: transform 150ms;
}
.kf-anahtar:checked {
	background: var(--ok-ring, #49b800);
}
.kf-anahtar:checked::after {
	transform: translateX(16px);
}
.kf-anahtar:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}
.kf-sag {
	position: sticky;
	top: 0;
}
.kf-onizleme-baslik {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin-bottom: 8px;
}
@media (max-width: 1100px) {
	.kf-yerlesim {
		grid-template-columns: 1fr 200px;
	}
	.kf-kol + .kf-kol {
		grid-column: 1;
	}
}
@media (max-width: 720px) {
	.kf-yerlesim {
		grid-template-columns: 1fr;
	}
	.kf-sag {
		position: static;
	}
}
.kf-grup:last-child {
	margin-bottom: 0;
}
.kf-donem {
	display: flex;
	width: 100%;
}
.kf-donem .bsv-seg {
	flex: 1;
	text-align: center;
}
.kf-basamak {
	display: flex;
	align-items: center;
	gap: 6px;
}
.kf-basamak + .kf-basamak {
	margin-top: 6px;
}
.kf-basamak .form-input {
	flex: 0 0 128px;
	text-align: right;
	font-variant-numeric: tabular-nums;
}
.kf-aralik {
	flex: 1;
	min-width: 0;
	font-size: 12px;
	color: var(--sec);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.kf-aralik.hata {
	color: var(--err);
}
.kf-tl {
	color: var(--sec);
	width: 14px;
}
.kf-basamak-sil {
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	color: var(--sec);
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	border-radius: 6px;
}
.kf-basamak-sil:hover {
	background: var(--hover);
	color: var(--err);
}
.kf-ekle {
	margin-top: 8px;
}
.kf-hata {
	color: var(--err);
}
.kf-onizleme-alt {
	margin-top: 14px;
}
.kf-hap {
	display: inline-block;
	font-size: 12px;
	padding: 4px 9px;
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	margin: 0 6px 6px 0;
	color: var(--ink);
	background: var(--surface);
	white-space: nowrap;
}
.ik-kamera {
	position: absolute;
	right: -8px;
	bottom: -8px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--brand);
	color: #fff;
	border: 0;
	box-shadow: 0 0 0 3px var(--surface);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.ik-kamera svg {
	width: 18px;
	height: 18px;
}
.ik-kamera:hover {
	filter: brightness(1.08);
}
.ik-onizleme-not {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 8px;
	color: #fff;
	font-size: 11px;
	line-height: 1.3;
}
.kf-gorsel-satir {
	margin-top: 6px;
}
.kf-kaldir-link {
	color: var(--err);
	text-decoration: none;
}
.kf-kaldir-link:hover {
	text-decoration: underline;
}
.kf-sag .ik-onizleme {
	margin-right: 8px;
}

/* ============================================================
   KART GÖRSELİ KIRPMA (owner 2026-09-05) — uygulamadaki "Profil Fotoğrafını Ayarla" düzeni
   ============================================================ */
.ik-kirpma {
	position: fixed;
	inset: 0;
	z-index: 2000;
	background: #111214;
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #fff;
}
.ik-kirpma-baslik {
	font-size: 17px;
	font-weight: 600;
	margin: 28px 0 8px;
	letter-spacing: -0.016em;
}
.ik-kirpma-alan {
	flex: 1;
	width: min(92vw, 760px);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
}
.ik-kirpma-alan img {
	max-width: 100%;
	max-height: 68vh;
	display: block;
}
.ik-kirpma-not {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	margin: 8px 0 0;
}
.ik-kirpma-cubuk {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: min(92vw, 760px);
	padding: 14px 0 28px;
}
.ik-kirpma-yuvarlak {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: 0;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.ik-kirpma-yuvarlak.onay {
	background: #0065ff;
}
.ik-kirpma-yuvarlak:hover {
	filter: brightness(1.12);
}
.ik-kirpma-yuvarlak:disabled {
	opacity: 0.5;
	cursor: default;
}
.ik-kirpma-yuvarlak svg,
.ik-kirpma-hap svg {
	width: 22px;
	height: 22px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.ik-kirpma-hap {
	display: flex;
	gap: 4px;
	background: rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	padding: 6px;
}
.ik-kirpma-hap button {
	width: 48px;
	height: 40px;
	border: 0;
	background: transparent;
	color: #fff;
	border-radius: 999px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ik-kirpma-hap button:hover {
	background: rgba(255, 255, 255, 0.12);
}
.ik-kirpma .cropper-view-box {
	outline: 2px solid rgba(255, 255, 255, 0.9);
	border-radius: 12px;
}
.ik-kirpma .cropper-modal {
	background: #111214;
	opacity: 0.78;
}

/* Sayfa KAYDIRMAZ (owner 2026-09-05): Başvurular ve Gelen Kutusu ekranı doldurur; yalnız iç alanlar kaydırır. */
.container.bsv {
	display: flex;
	flex-direction: column;
	height: calc(100vh - 56px);
	max-width: none;
	box-sizing: border-box;
	overflow: hidden;
	padding-bottom: 16px;
}
.container.bsv .page-header {
	margin-bottom: 12px;
	flex: none;
}
.container.bsv .bsv-ust {
	flex: none;
}
@media (max-width: 1100px) {
	.gk-iki {
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr;
	}
	.gk-sabit {
		max-height: 38%;
	}
}
@media (max-height: 700px) {
	.container.bsv {
		height: auto;
		overflow: visible;
	}
	.bsv-bolunmus {
		min-height: 560px;
	}
}
.gk-satirlar {
	margin-top: 10px;
	border-top: 0.5px solid var(--line);
}
.gk-kv-satir {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 7px 0;
	border-bottom: 0.5px solid var(--line);
	font-size: 14px;
}
.gk-kv-satir:last-child {
	border-bottom: 0;
}
.gk-kv-satir span {
	color: var(--sec);
	flex: none;
}
.gk-kv-satir b {
	font-weight: 500;
	color: var(--ink);
	text-align: right;
	word-break: break-word;
}
.gk-balon.biz.otomatik {
	background: #dbe7ff;
	color: var(--ink);
}
.gk-balon.biz.otomatik small {
	color: var(--sec);
	opacity: 1;
}
.gk-kimbu {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gk-kimbu-ad {
	font-size: 14px;
	font-weight: 500;
	color: var(--ink);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.gk-hazir button {
	display: block;
	width: 100%;
	text-align: left;
	font: inherit;
	font-size: 13px;
	line-height: 1.35;
	padding: 7px 10px;
	margin-bottom: 6px;
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	background: var(--surface);
	color: var(--ink);
	cursor: pointer;
}
.gk-hazir button:hover {
	background: var(--hover);
	border-color: var(--brand);
}
.gk-hazir-cipler {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 8px 0 0;
}
.gk-hazir-cipler .gk-cip {
	height: 28px;
	font-size: 12px;
	max-width: 100%;
}

/* ============================================================
   AYARLAR (owner 2026-09-05): solda bölüm listesi, sağda gruplu bölümler
   ============================================================ */
.ay-yerlesim {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}
.ay-nav {
	position: sticky;
	top: 72px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.ay-nav-grup {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin: 12px 12px 4px;
}
.ay-nav-grup:first-child {
	margin-top: 4px;
}
.ay-nav a {
	display: block;
	padding: 8px 12px;
	border-radius: 8px;
	color: var(--ink);
	text-decoration: none;
	font-size: 14px;
}
.ay-nav a:hover {
	background: var(--hover);
}
.ay-nav a.on {
	background: var(--group);
	color: var(--brand);
	font-weight: 500;
}
.ay-icerik {
	min-width: 0;
}
.ay-icerik .card {
	margin-bottom: 16px;
}
.ay-baslik {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.02em;
	margin: 0 0 4px;
	color: var(--ink);
}
.ay-alt {
	color: var(--sec);
	font-size: 14px;
	margin: 0 0 16px;
	max-width: 70ch;
}
.hy-satir {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	background: var(--surface);
	border-radius: 10px;
	padding: 8px 8px 8px 12px;
	margin-bottom: 6px;
}
.hy-satir textarea {
	flex: 1;
	resize: vertical;
	min-height: 44px;
	margin: 0;
}
@media (max-width: 900px) {
	.ay-yerlesim {
		grid-template-columns: 1fr;
	}
	.ay-nav {
		position: static;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.ay-nav-grup {
		width: 100%;
	}
}

/* ============================================================
   ÜYE TAKİBİ (owner 2026-09-05): hazır görünümler, "Neyi yapmamış?" seçici, seçim çubuğu
   ============================================================ */
.ut-arac {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.ut-kosul {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
	position: relative;
}
.ut-kosul-sol {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.ut-secilenler {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}
.ut-secilenler .ve {
	font-size: 12px;
	color: var(--sec);
}
.ut-secilenler .gk-cip {
	border-color: var(--brand);
	color: var(--brand);
}
.ut-secilenler .gk-cip b {
	font-weight: 400;
	margin-left: 4px;
	color: var(--sec);
}
.ut-pop {
	position: absolute;
	top: 40px;
	left: 0;
	z-index: 40;
	width: 380px;
	max-height: 60vh;
	overflow-y: auto;
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 12px;
	padding: 8px;
	box-shadow: 0 8px 24px rgba(13, 32, 52, 0.12);
}
.ut-pop h4 {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin: 10px 8px 4px;
}
.ut-pop h4:first-child {
	margin-top: 2px;
}
.ut-pop label {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 8px;
	border-radius: 8px;
	font-size: 14px;
	color: var(--ink);
	cursor: pointer;
}
.ut-pop label:hover {
	background: var(--hover);
}
.ut-pop label input {
	width: 16px;
	height: 16px;
	margin: 0;
}
.ut-pop label .n {
	margin-left: auto;
	font-size: 12px;
	color: var(--sec);
	font-variant-numeric: tabular-nums;
}
.ut-pop label input[type="number"] {
	width: 52px;
	height: 26px;
	margin: 0 4px;
	padding: 0 6px;
}
.ut-liste-kap {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	overflow: hidden;
}
.ut-tablo {
	width: 100%;
	border-collapse: collapse;
}
.ut-tablo th {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	text-align: left;
	padding: 10px 12px;
	border-bottom: 0.5px solid var(--line);
}
.ut-tablo td {
	padding: 8px 12px;
	height: 52px;
	border-bottom: 0.5px solid var(--line);
	font-size: 14px;
	color: var(--ink);
	vertical-align: middle;
}
.ut-tablo tr.on td {
	background: var(--group);
}
.ut-tablo .ut-kutu {
	width: 36px;
	padding-right: 0;
}
.ut-tablo input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
}
.ut-uye {
	display: flex;
	align-items: center;
	gap: 10px;
}
.ut-uye .ad {
	font-weight: 500;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.ut-uye small {
	display: block;
	color: var(--sec);
	font-size: 12px;
	font-weight: 400;
}
.ut-eksik {
	color: var(--body);
}
.ut-eksik .sec {
	color: var(--sec);
}
.ut-secim {
	position: sticky;
	bottom: 12px;
	margin-top: 12px;
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--ink);
	color: #fff;
	border-radius: 14px;
	padding: 10px 14px;
	box-shadow: 0 8px 24px rgba(13, 32, 52, 0.18);
}
.ut-secim .btn-outline {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.35);
}
.ut-secim .btn-outline:hover {
	background: rgba(255, 255, 255, 0.12);
}
.ut-gonder-onizleme {
	background: var(--box);
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 14px;
	margin-bottom: 12px;
}
.ut-gonder-hazir {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 10px;
}

/* `hidden` özniteliği sınıf display'ini yenmeli (5 Eyl: seçim çubuğu hep görünüyordu) */
[hidden] {
	display: none !important;
}
.ut-sablon {
	display: inline-flex;
	align-items: stretch;
	padding: 0;
	overflow: hidden;
}
.ut-sablon > button {
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 13px;
	color: var(--ink);
	padding: 0 10px;
	cursor: pointer;
	max-width: 260px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ut-sablon > button:hover {
	background: var(--hover);
}
.ut-sablon .ut-sablon-sil {
	color: var(--sec);
	padding: 0 8px;
	border-left: 0.5px solid var(--frame);
}
.ut-sablon .ut-sablon-sil:hover {
	color: var(--err);
}

/* ============================================================
   ÜYE DOSYASI (owner 2026-09-05, spec kalıp c)
   ============================================================ */
.container.ud {
	max-width: 1200px;
}
.ud-bas {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 12px;
}
.ud-bas-metin {
	flex: 1;
	min-width: 0;
}
.ud-bas h1 {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.02em;
	margin: 0;
	color: var(--ink);
	display: flex;
	align-items: center;
	gap: 8px;
}
.ud-ikincil {
	font-size: 15px;
	color: var(--body);
	margin-top: 2px;
}
.ud-durum {
	font-size: 13px;
	color: var(--sec);
	margin-top: 4px;
}
.ud-eylemler {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}
.ud-eylemler .btn {
	text-decoration: none;
}
.ud-sinyal {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 16px 80px;
}
.ud-sinyal .gk-cip {
	cursor: default;
}
.ud-sinyal .gk-cip.sicak {
	color: var(--err);
	border-color: rgba(229, 57, 53, 0.4);
}
.ud-iki {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
}
.ud-kol {
	min-width: 0;
}
.ud-iki.ud-tek {
	grid-template-columns: minmax(0, 1fr);
}
.ud-liste {
	margin: 0;
	padding-left: 18px;
	font-size: 14px;
	color: var(--ink);
	line-height: 1.5;
}
.ud-liste li {
	margin: 2px 0;
}
.ud-proje {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}
.ud-proje-gorsel {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	object-fit: cover;
	flex: none;
	background: var(--box);
}
.ud-proje-gorsel.bos {
	display: inline-block;
}
.ud-tehlike {
	border: 0.5px solid rgba(229, 57, 53, 0.35);
}
.ud-tehlike h3 {
	color: var(--err);
}
.ud-tehlike-satir {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 0;
	border-bottom: 0.5px solid var(--line);
}
.ud-tehlike-satir:last-child {
	border-bottom: 0;
}
.ud-tehlike-satir b {
	font-weight: 500;
	font-size: 14px;
	color: var(--ink);
}
.ud-link {
	color: inherit;
	text-decoration: none;
}
.ud-link:hover {
	color: var(--brand);
	text-decoration: underline;
}
.uy-segment {
	margin-bottom: 14px;
}
@media (max-width: 900px) {
	.ud-iki {
		grid-template-columns: 1fr;
	}
	.ud-sinyal {
		margin-left: 0;
	}
}

/* ============================================================
   İÇERİK SAYFALARI (owner 2026-09-05): yan panel, kişi satırı, meta çipleri
   ============================================================ */
.yp-ortu {
	position: fixed;
	inset: 0;
	background: rgba(13, 32, 52, 0.18);
	z-index: 900;
}
.yp-panel {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(480px, 94vw);
	background: var(--surface);
	border-left: 0.5px solid var(--frame);
	box-shadow: -8px 0 24px rgba(13, 32, 52, 0.12);
	z-index: 901;
	display: flex;
	flex-direction: column;
}
.yp-bas {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 20px;
	border-bottom: 0.5px solid var(--line);
}
.yp-bas h2 {
	font-size: 17px;
	font-weight: 600;
	margin: 0;
	flex: 1;
	min-width: 0;
	color: var(--ink);
	letter-spacing: -0.016em;
}
.yp-kapat {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 0;
	background: var(--box);
	color: var(--sec);
	font-size: 16px;
	cursor: pointer;
	flex: none;
}
.yp-kapat:hover {
	background: var(--hover);
	color: var(--ink);
}
.yp-govde {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding: 16px 20px;
}
.yp-alt {
	padding: 12px 20px 16px;
	border-top: 0.5px solid var(--line);
	display: flex;
	gap: 10px;
	align-items: center;
}
.ic-kisi {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
}
.ic-baslik {
	font-weight: 500;
	color: var(--ink);
	cursor: pointer;
}
.ic-baslik:hover {
	color: var(--brand);
}
.ic-alt {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--sec);
	margin-top: 3px;
	flex-wrap: wrap;
}
.ic-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 14px;
}
.ic-meta .gk-cip {
	cursor: default;
	height: 28px;
	font-size: 12px;
}
.ic-metin {
	font-size: 15px;
	line-height: 1.5;
	color: var(--ink);
	white-space: pre-wrap;
	word-break: break-word;
}
.ic-yorum {
	padding: 8px 0;
	border-bottom: 0.5px solid var(--line);
	display: flex;
	gap: 8px;
	align-items: flex-start;
}
.ic-yorum:last-child {
	border-bottom: 0;
}
.ic-yorum .m {
	flex: 1;
	min-width: 0;
	font-size: 14px;
	color: var(--ink);
}
.ic-yorum small {
	display: block;
	color: var(--sec);
	font-size: 12px;
	margin-top: 2px;
}
.ut-tablo td.ic-uc {
	width: 44px;
	text-align: right;
}
.ic-kategori-kart {
	margin-top: 24px;
}

/* durum çipi türevleri (İçerik/Yayın sayfaları) */
.ik-durum.cozuldu {
	color: var(--sec);
}
.ik-durum.cozuldu::before {
	background: var(--dim);
}
.ik-durum.inceleniyor {
	color: var(--ink);
}
.ik-durum.inceleniyor::before {
	background: #f5a623;
}
.ik-durum.iptal {
	color: var(--sec);
}
.ik-durum.iptal::before {
	background: #ff3b30;
}

/* ============================================================
   YAYIN: Etkinlikler + Fırsatlar (owner 2026-09-05)
   ============================================================ */
.ya-ust-dugmeler {
	display: flex;
	gap: 8px;
	align-items: center;
}
.ya-kucuk-gorsel {
	width: 28px;
	height: 28px;
	border-radius: 7px;
	object-fit: cover;
	background: var(--box);
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 600;
	color: var(--sec);
}
.ya-kucuk-gorsel img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 7px;
}
.ya-cipler {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.ya-cipler .gk-cip {
	height: 30px;
}
.ya-tarih-iki {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
}
.ya-katilimci {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 0;
	border-bottom: 0.5px solid var(--line);
}
.ya-katilimci:last-child {
	border-bottom: 0;
}
.ya-katilimci .m {
	flex: 1;
	min-width: 0;
}
.ya-katilimci small {
	display: block;
	color: var(--sec);
	font-size: 12px;
}
.ya-giris-ok {
	color: #1a8f2e;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}
.ya-ilerleme {
	height: 4px;
	border-radius: 2px;
	background: var(--box);
	overflow: hidden;
	margin-top: 4px;
	width: 96px;
}
.ya-ilerleme > span {
	display: block;
	height: 100%;
	background: var(--brand);
}
/* önizleme: etkinlik kartı (uygulamadaki kartın sadeleştirilmiş hâli) */
.on-et {
	width: 200px;
	height: 132px;
	border-radius: 16px;
	padding: 12px;
	color: #fff;
	background: linear-gradient(135deg, #0065ff, #0a3f9e);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	font-family: inherit;
}
.on-et b {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.25;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.on-et small {
	font-size: 12px;
	opacity: 0.9;
	display: block;
}
.on-et .alt {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 11px;
}
.on-et .hap {
	background: rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	padding: 2px 8px;
}
/* önizleme: fırsat kartı (uygulama: 62×62 görsel · kesik çizgi · 17/600 başlık) */
.on-fr {
	width: 200px;
	background: #fff;
	border: 1px solid var(--frame);
	border-radius: 16px;
	padding: 12px;
	display: flex;
	gap: 8px;
	align-items: flex-start;
}
.on-fr .g {
	width: 62px;
	height: 62px;
	border-radius: 8px;
	background: #e8f0ff;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--brand);
	overflow: hidden;
}
.on-fr .g img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.on-fr .cizgi {
	width: 0;
	border-left: 1px dashed #7e7e7e;
	align-self: stretch;
}
.on-fr .m {
	flex: 1;
	min-width: 0;
}
.on-fr b {
	display: block;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: #000;
}
.on-fr small {
	display: block;
	font-size: 12px;
	color: var(--sec);
	margin-top: 4px;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.on-fr .ind {
	display: inline-block;
	margin-top: 6px;
	font-size: 12px;
	font-weight: 600;
	color: var(--brand);
}
.on-afis {
	width: 200px;
	aspect-ratio: 2 / 1;
	border-radius: 12px;
	background: var(--box);
	margin-top: 10px;
	overflow: hidden;
}
.on-afis img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* kapı modu */
.kp-ortu {
	position: fixed;
	inset: 0;
	z-index: 1500;
	background: var(--surface);
	display: flex;
	flex-direction: column;
}
.kp-bas {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 24px;
	border-bottom: 0.5px solid var(--line);
}
.kp-bas h2 {
	font-size: 20px;
	margin: 0;
	flex: 1;
	letter-spacing: -0.02em;
}
.kp-govde {
	flex: 1;
	min-height: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	padding: 24px;
}
.kp-kod {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.kp-kod input {
	font-size: 28px;
	padding: 16px 18px;
	border: 0.5px solid var(--frame);
	border-radius: 12px;
	letter-spacing: 0.04em;
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
.kp-sonuc {
	min-height: 96px;
	border-radius: 12px;
	padding: 16px;
	font-size: 17px;
	background: var(--group);
}
.kp-sonuc.ok {
	background: #e6f7ea;
	color: #1a8f2e;
}
.kp-sonuc.hata {
	background: #fdecec;
	color: #c62828;
}
.kp-liste {
	min-height: 0;
	overflow-y: auto;
	border: 0.5px solid var(--line);
	border-radius: 12px;
	padding: 4px 12px;
}
.kp-sayac {
	font-size: 13px;
	color: var(--sec);
}

/* ============================================================
   ANALİZ (owner 2026-09-05): sayı kutuları + çubuklu dağılımlar, grafik kütüphanesi yok
   ============================================================ */
.an-ust {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}
.an-bolum {
	margin-top: 28px;
}
.an-bolum h2 {
	font-size: 17px;
	font-weight: 600;
	margin: 0 0 4px;
	letter-spacing: -0.016em;
}
.an-bolum .an-alt {
	font-size: 13px;
	color: var(--sec);
	margin: 0 0 12px;
}
.an-izgara {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 10px;
}
.an-kutu {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 12px;
	padding: 12px 14px;
	min-height: 76px;
}
.an-kutu .ad {
	font-size: 12px;
	color: var(--sec);
	margin-bottom: 4px;
}
.an-kutu .deger {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.02em;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
}
.an-kutu .deger small {
	font-size: 13px;
	font-weight: 500;
	color: var(--sec);
	margin-left: 4px;
}
.an-kutu .alt {
	font-size: 12px;
	color: var(--sec);
	margin-top: 4px;
}
.an-kutu .alt.iyi {
	color: #1a8f2e;
}
.an-kutu .alt.kotu {
	color: #c62828;
}
.an-iki {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 12px;
	margin-top: 10px;
}
.an-liste {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 12px;
	padding: 12px 14px;
}
.an-liste h3 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 8px;
}
.an-satir {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 96px 44px;
	align-items: center;
	gap: 10px;
	padding: 5px 0;
	font-size: 13px;
}
.an-satir .ad {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.an-cubuk {
	height: 6px;
	border-radius: 3px;
	background: var(--box);
	overflow: hidden;
}
.an-cubuk > span {
	display: block;
	height: 100%;
	background: var(--brand);
}
.an-satir .n {
	text-align: right;
	font-variant-numeric: tabular-nums;
	color: var(--ink);
}
.an-yok {
	margin-top: 28px;
	background: var(--group);
	border-radius: 12px;
	padding: 14px 16px;
	font-size: 13px;
	color: var(--sec);
}
.an-yok ul {
	margin: 6px 0 0;
	padding-left: 18px;
}
.an-yok li {
	margin-bottom: 4px;
}
.an-hata {
	color: var(--sec);
	font-size: 13px;
}

/* Analiz grafikleri (dataviz kalıbı): ince işaretler, 2px çizgi, sessiz ızgara, metin daima metin renginde.
   Kategorik sıra sabit: s1 marka mavi · s2 turuncu · s3 aqua · s4 sarı (doğrulandı, açık yüzey). */
:root {
	--s1: #0065ff;
	--s2: #eb6834;
	--s3: #1baf7a;
	--s4: #eda100;
	--s1z: rgba(0, 101, 255, 0.12);
	--ord1: #86b6ef;
	--ord2: #5598e7;
	--ord3: #2a78d6;
	--ord4: #1c5cab;
	--izgara: #e9ecf1;
}
.an-kart {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 12px;
	padding: 12px 14px 8px;
	min-width: 0;
}
.an-kart .an-kart-ust {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 6px;
}
.an-kart h3 {
	font-size: 13px;
	font-weight: 600;
	color: var(--sec);
	margin: 0;
}
.an-kart .an-tablo-dugme {
	font-size: 12px;
	color: var(--sec);
	background: none;
	border: 0;
	cursor: pointer;
	padding: 2px 6px;
	border-radius: 6px;
}
.an-kart .an-tablo-dugme:hover {
	background: var(--box);
	color: var(--ink);
}
.an-grafik {
	width: 100%;
	height: auto;
	display: block;
	font-family: inherit;
}
.an-grafik text {
	font-size: 11px;
	fill: var(--sec);
}
.an-grafik .izgara {
	stroke: var(--izgara);
	stroke-width: 1;
}
.an-grafik .eksen {
	stroke: var(--frame);
	stroke-width: 1;
}
.an-grafik .cizgi {
	fill: none;
	stroke-width: 2;
	stroke-linejoin: round;
	stroke-linecap: round;
}
.an-grafik .alan {
	opacity: 0.12;
}
.an-grafik .nokta {
	r: 4;
	stroke: var(--surface);
	stroke-width: 2;
	opacity: 0;
}
.an-grafik .nokta.on {
	opacity: 1;
}
.an-grafik .cubuk {
	rx: 4;
	ry: 4;
}
.an-grafik .cubuk-duz {
	rx: 0;
	ry: 0;
}
.an-grafik .cubuk-duz:hover {
	filter: brightness(0.92);
}
.an-grafik .cubuk:hover,
.an-grafik .yatay-cubuk:hover {
	filter: brightness(0.92);
}
.an-grafik .deger {
	font-size: 11px;
	fill: var(--ink);
	font-variant-numeric: tabular-nums;
}
.an-grafik .imlec {
	stroke: var(--dim);
	stroke-width: 1;
	stroke-dasharray: 3 3;
	opacity: 0;
}
.an-lejant {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	font-size: 12px;
	color: var(--sec);
	margin: 4px 0 2px;
}
.an-lejant span::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 3px;
	background: var(--renk);
	margin-right: 6px;
	vertical-align: -1px;
}
/* Halkada çizilmeyen kalan pay ("Diğer"): renk kutusu, çizilmediği için nötr.
   8 Eylül 2026 denetimi — halka yalnız ilk 4'ü çiziyor, kalanı gizlemek yerine
   söylüyoruz (yığın çubuk `yigin100` da aynı mantıkla çalışıyor). */
.an-lejant .an-diger::before {
	background: var(--pressed);
}

.an-tip {
	position: fixed;
	z-index: 1200;
	pointer-events: none;
	background: var(--ink);
	color: var(--surface);
	font-size: 12px;
	line-height: 1.35;
	padding: 6px 9px;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(13, 32, 52, 0.18);
	max-width: 260px;
}
.an-tip b {
	font-weight: 600;
}
.an-tip .sat {
	display: flex;
	justify-content: space-between;
	gap: 12px;
}
.an-tablo {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
	margin-top: 4px;
}
.an-tablo th,
.an-tablo td {
	text-align: right;
	padding: 4px 6px;
	border-bottom: 0.5px solid var(--line);
	font-variant-numeric: tabular-nums;
}
.an-tablo th:first-child,
.an-tablo td:first-child {
	text-align: left;
}
.an-kutu .kivilcim {
	margin-top: 6px;
}
.an-yigin {
	display: flex;
	height: 14px;
	border-radius: 4px;
	overflow: hidden;
	gap: 2px;
	margin: 6px 0 4px;
	background: var(--box);
}
.an-yigin span {
	display: block;
	height: 100%;
}
.an-yatay {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 2fr) auto;
	align-items: center;
	gap: 10px;
	padding: 4px 0;
	font-size: 13px;
}
.an-genis svg.an-grafik {
	max-width: 760px;
}
.an-yatay .ad {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.an-yatay .n {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	min-width: 64px;
}
.an-yatay .n small {
	color: var(--sec);
}
.an-yatay .cub {
	height: 10px;
	border-radius: 4px;
	background: var(--box);
	overflow: hidden;
}
.an-yatay .cub > span {
	display: block;
	height: 100%;
	background: var(--s1);
	border-radius: 4px;
}
.an-yatay.huni .cub > span {
	background: var(--ord3);
}
.an-genis {
	grid-column: 1 / -1;
}

/* Analiz v2 (owner 2026-09-05 "daha büyük, bölüm bölüm"): sol bölüm listesi, büyük kartlar, pasta ve harita */
.an-yerlesim {
	margin-top: 8px;
}
.an-yerlesim .ay-icerik {
	min-width: 0;
}
.an-bolum-baslik {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 12px;
}
.an-bolum-baslik h2 {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin: 0;
}
.an-bolum-baslik p {
	font-size: 13px;
	color: var(--sec);
	margin: 0;
}
.an-kpi {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 10px;
	margin-bottom: 16px;
}
.an-kpi .an-kutu .deger {
	font-size: 28px;
}
.an-buyuk {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(440px, 1fr));
	gap: 14px;
}
.an-buyuk .an-kart {
	padding: 14px 16px 10px;
}
.an-buyuk .an-kart h3 {
	font-size: 15px;
	color: var(--ink);
}
.an-buyuk .an-grafik text {
	font-size: 12px;
}
.an-buyuk .an-yatay {
	font-size: 14px;
	padding: 6px 0;
}
.an-buyuk .an-yatay .cub {
	height: 14px;
	border-radius: 6px;
}
.an-buyuk .an-yatay .ad {
	white-space: normal;
	line-height: 1.25;
}
.an-buyuk .an-yatay .cub > span {
	border-radius: 6px;
}
.an-buyuk .an-genis {
	grid-column: 1 / -1;
}
.an-buyuk .an-genis svg.an-grafik {
	max-width: none;
}
.an-pasta {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 16px;
	align-items: center;
}
.an-pasta .an-lejant {
	flex-direction: column;
	gap: 8px;
	font-size: 14px;
	color: var(--ink);
}
.an-pasta .an-lejant span::before {
	width: 12px;
	height: 12px;
}
.an-pasta-merkez {
	font-size: 26px;
	font-weight: 700;
	fill: var(--ink);
	letter-spacing: -0.02em;
}
.an-pasta-alt {
	font-size: 12px;
	fill: var(--sec);
}
.an-pasta path {
	stroke: var(--surface);
	stroke-width: 2;
}
.an-pasta path:hover {
	filter: brightness(0.92);
}
.an-harita {
	position: relative;
}
.an-harita svg {
	width: 100%;
	height: auto;
	display: block;
}
.an-harita [data-iladi] path {
	fill: #edf1f6;
	stroke: #ffffff;
	stroke-width: 0.8;
	transition: filter 0.12s;
}
.an-harita [data-iladi] text {
	display: none;
}
.an-harita [data-iladi]:hover path {
	filter: brightness(0.88);
}
.an-harita-lejant {
	display: flex;
	gap: 6px;
	align-items: center;
	margin-top: 8px;
	font-size: 12px;
	color: var(--sec);
	flex-wrap: wrap;
}
.an-harita-lejant i {
	display: inline-block;
	width: 22px;
	height: 12px;
	border-radius: 3px;
	margin-right: 4px;
	vertical-align: -2px;
}
.an-harita-ust {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 16px;
	align-items: start;
}
@media (max-width: 1100px) {
	.an-harita-ust {
		grid-template-columns: 1fr;
	}
	.an-pasta {
		grid-template-columns: 1fr;
	}
}
.an-kohort td,
.an-kohort th {
	padding: 8px 6px;
	font-size: 13px;
}
.an-kohort td:first-child {
	white-space: nowrap;
}

/* Üye Dosyası (owner 2026-09-06): taşan metin sayfayı yana kaydırmasın; sekmeler; bio en çok 3 satır */
.ud-kol {
	min-width: 0;
}
.bsv-kutu,
.bsv-kv,
.ud-bas-metin {
	overflow-wrap: anywhere;
}
.ud-bio {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.ud-sekmeler {
	margin: 4px 0 14px;
}

/* Şikayette sohbet kesiti (reports.js): şikayet edilenin balonu işaretli; metin seçilebilir ama kopyalama düğmesi yok. */
/* ŞİKAYETLER — bölünmüş görünüm (owner 2026-09-06: "yan panel çok yoğunlaştı"). Sağ alan
   iki sütun: şikayet (kendi içinde kayar) · sohbet kesiti (boydan boya, yalnız mesajlar kayar). */
.bsv-icerik.sk-icerik {
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.sk-iki {
	flex: 1;
	min-height: 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: 14px;
	padding-bottom: 12px;
}
.sk-iki.tek {
	grid-template-columns: 1fr;
}
.sk-sol {
	min-width: 0;
	min-height: 0;
	overflow-y: auto;
}
.sk-sohbet-kol {
	min-height: 0;
}
.sk-sohbet-kol h3 {
	display: flex;
	align-items: baseline;
	gap: 8px;
}
.sk-kesit {
	font-weight: 400;
	color: var(--sec);
	font-size: 12px;
}
.sk-bekle {
	flex: 1;
	min-height: 0;
	display: grid;
	place-items: center;
	text-align: center;
	background: var(--surface);
	border-radius: 10px;
	padding: 24px;
}
.sk-bekle .bsv-kv {
	max-width: 34ch;
}
.sk-sohbet {
	display: flex;
	flex-direction: column;
}
.sk-sohbet .gk-balon {
	align-self: flex-start;
	max-width: 88%;
}
.sk-sohbet .gk-balon.sk-hedef {
	border-left: 3px solid var(--err);
}
.sk-kaynak {
	font-size: 11px;
	font-weight: 500;
	color: var(--sec);
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	padding: 0 7px;
	line-height: 18px;
	flex-shrink: 0;
}
.bsv-bas-ad .sk-cip {
	height: 24px;
	font-size: 12px;
	cursor: default;
}
@media (max-width: 1100px) {
	.sk-iki {
		grid-template-columns: 1fr;
	}
	.sk-sohbet-kol {
		min-height: 360px;
	}
}

/* AYARLAR — tek sayfa (owner 2026-09-06): sol liste kalktı; Panel uyarıları + SSS alt alta. */
.container.ay {
	max-width: 1040px;
}
.ay-bolum {
	margin-bottom: 36px;
}
.ay-bas {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 12px;
}
.ay-bas > div {
	min-width: 0;
}
.ay-bas .ay-alt {
	margin-bottom: 0;
}
.pb-grup {
	padding: 4px 14px;
}
.pb-izin {
	padding: 10px 0 12px;
	border-bottom: 0.5px solid var(--line);
}
.pb-izin b {
	font-size: 15px;
	color: var(--ink);
	font-weight: 500;
}
.pb-olaylar {
	padding: 4px 0;
}
.pb-olay {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 260px 34px auto;
	gap: 12px;
	align-items: center;
	padding: 10px 0;
	border-bottom: 0.5px solid var(--line);
}
.pb-olay:last-child {
	border-bottom: 0;
}
.pb-olay.kapali .pb-ses-ad,
.pb-olay.kapali .pb-ses-alt {
	color: var(--sec);
}
.pb-olay select {
	height: 34px;
	width: 100%;
}
.pb-olay select:disabled,
.pb-dinle:disabled,
.pb-olay .btn:disabled {
	opacity: 0.45;
}
.pb-olay-metin {
	min-width: 0;
}
.pb-dinle {
	width: 34px;
	height: 34px;
	border: 0.5px solid var(--frame);
	border-radius: 8px;
	background: var(--surface);
	color: var(--ink);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}
.pb-dinle:hover:not(:disabled) {
	background: var(--hover);
}
.pb-dinle svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
}
.pb-seviye {
	padding: 12px 0 8px;
	border-top: 0.5px solid var(--line);
}
.pb-seviye b {
	font-size: 14px;
	font-weight: 500;
	color: var(--ink);
}
.pb-ozel-baslik {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin: 8px 0 4px;
}
.pb-ozel {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	border-top: 0.5px solid var(--line);
}
.pb-not {
	padding: 8px 0 10px;
}
@media (max-width: 900px) {
	.pb-olay {
		grid-template-columns: 44px minmax(0, 1fr);
	}
	.pb-olay select {
		grid-column: 2;
	}
	.pb-olay .pb-dinle,
	.pb-olay .btn {
		grid-column: 2;
		justify-self: start;
	}
}

/* SSS — İçerik kalıbı: kategori grupları + soru satırları, ⋯ menüsü, sağ panelde düzenleme */
.sss-kat {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	margin-bottom: 12px;
	overflow: hidden;
}
.sss-kat.gizli {
	border-style: dashed;
}
.sss-kat-bas {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 12px 10px 16px;
	background: var(--group);
}
.sss-kat-ad {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.sss-kat-sag {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
}
.sss-soru {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px 10px 16px;
	border-top: 0.5px solid var(--line);
	cursor: pointer;
}
.sss-soru:hover {
	background: var(--hover);
}
.sss-soru:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: -2px;
}
.sss-soru.gizli .sss-soru-ad,
.sss-soru.gizli .sss-soru-alt {
	color: var(--sec);
}
.sss-soru-metin {
	min-width: 0;
	flex: 1;
}
.sss-soru-ad {
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.sss-soru-alt {
	font-size: 13px;
	color: var(--sec);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-top: 1px;
}
.sss-cip {
	font-size: 11px;
	font-weight: 600;
	color: var(--sec);
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	padding: 0 7px;
	line-height: 18px;
	vertical-align: middle;
	margin-left: 4px;
}
.sss-bos {
	font-size: 14px;
	color: var(--sec);
	padding: 12px 16px;
	border-top: 0.5px solid var(--line);
}

/* ANODOS STARTUP — Mesaj dizisi listesi + düzenleme paneli (owner 2026-09-06) */
.md-liste {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	overflow: hidden;
}
.md-satir {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px 12px 12px 16px;
	border-top: 0.5px solid var(--line);
	cursor: pointer;
}
.md-satir:first-child {
	border-top: 0;
}
.md-satir:hover {
	background: var(--hover);
}
.md-satir:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: -2px;
}
.md-satir.duraklatildi .md-ad,
.md-satir.duraklatildi .md-alt {
	color: var(--sec);
}
.md-metin {
	min-width: 0;
	flex: 1;
}
.md-ad {
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.md-alt {
	font-size: 13px;
	color: var(--sec);
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.md-sayilar {
	display: flex;
	gap: 14px;
	flex-shrink: 0;
	font-size: 12.5px;
	color: var(--sec);
	font-variant-numeric: tabular-nums;
}
.md-sayilar b {
	color: var(--ink);
	font-weight: 600;
	font-size: 14px;
	margin-right: 3px;
}
.md-kosullar {
	display: grid;
	gap: 8px;
}
.md-kosul-grup {
	background: var(--group);
	border-radius: 10px;
	padding: 8px 10px;
}
.md-kosul-baslik {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 4px 2px;
}
.md-kosul {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 5px 2px;
	cursor: pointer;
	font-size: 14px;
	color: var(--ink);
}
.md-kosul input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
	flex-shrink: 0;
}
.md-kosul-ad {
	flex: 1;
	min-width: 0;
}
.md-kosul-sayi {
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	color: var(--sec);
	border: 0.5px solid var(--frame);
	border-radius: 999px;
	padding: 0 7px;
	line-height: 18px;
}
.md-kosul-sayi.iyi {
	color: var(--ok, #15803d);
	border-color: rgba(21, 128, 61, 0.4);
}
.md-kosul-sayi.dikkat {
	color: var(--err);
	border-color: rgba(229, 57, 53, 0.4);
}
.md-kosul-gun {
	width: 64px;
	height: 30px;
	padding: 0 8px;
}
.md-ozet {
	font-size: 13px;
	color: var(--ink);
	background: var(--box);
	border-radius: 8px;
	padding: 8px 12px;
	line-height: 1.4;
}

/* Üyeye bildirim — geniş form, yazarak üye arama, gönderim geçmişi */
.ub-form {
	max-width: none;
}
.ub-ara {
	position: relative;
}
.ub-sonuc {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 4px);
	z-index: 20;
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	overflow: hidden;
}
.ub-sonuc-satir {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	text-align: left;
	padding: 8px 12px;
	border: 0;
	background: transparent;
	font: inherit;
	color: var(--ink);
	cursor: pointer;
}
.ub-sonuc-satir:hover,
.ub-sonuc-satir:focus-visible {
	background: var(--hover);
	outline: none;
}
.ub-sonuc-satir .sec {
	margin-left: auto;
	font-size: 12.5px;
}
.ub-secili {
	margin-top: 8px;
}
.ub-secili-ic {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--group);
	border-radius: 10px;
	padding: 8px 12px;
}
.ub-gecmis-baslik {
	font-size: 15px;
	font-weight: 600;
	color: var(--ink);
	margin: 22px 0 8px;
}
.ub-gecmis {
	background: var(--surface);
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	overflow: hidden;
}
.ub-gecmis-satir {
	padding: 10px 16px;
	border-top: 0.5px solid var(--line);
}
.ub-gecmis-satir:first-child {
	border-top: 0;
}
.ub-gecmis-metin {
	min-width: 0;
}
.ub-gecmis-satir .md-alt {
	white-space: normal;
}
.ub-gecmis-meta {
	font-size: 12.5px;
	color: var(--sec);
	margin-top: 3px;
}

/* Anodos Startup › Otomatik mesajlar: hoş geldin rol sekmeleri + geniş kutu + önizleme (owner 2026-09-06) */
.of-alt-baslik {
	font-size: 16px;
	font-weight: 600;
	color: var(--ink);
	margin: 22px 0 4px;
}
.hg-grup {
	padding: 12px 14px;
}
.hg-ust {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	margin-bottom: 10px;
}
.hg-anahtar {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--ink);
	align-self: flex-end;
	white-space: nowrap;
}
.hg-nokta {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--frame);
	margin-left: 4px;
	vertical-align: middle;
}
.hg-nokta.dolu {
	background: var(--ok-ring, #49b800);
}
.hg-nokta.bos {
	background: var(--err);
}
.hg-nokta.kapali {
	background: var(--frame);
}
.hg-govde {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(280px, 1fr);
	gap: 14px;
	align-items: start;
}
.hg-yaz textarea {
	width: 100%;
	resize: vertical;
	line-height: 1.45;
}
.hg-yaz textarea:disabled {
	opacity: 0.5;
}
.hg-sayac {
	text-align: right;
	margin-top: 4px;
}
.hg-onizleme {
	background: var(--group);
	border-radius: 10px;
	padding: 10px;
}
.hg-onizleme-baslik {
	font-size: 12px;
	font-weight: 600;
	color: var(--sec);
	margin: 0 0 6px 2px;
}
.hg-balonlar {
	max-height: 320px;
}
.hg-balonlar .gk-balon {
	max-width: 92%;
}
@media (max-width: 1100px) {
	.hg-govde {
		grid-template-columns: 1fr;
	}
}
.ub-gecmis-satir.kotu .md-ad {
	color: var(--sec);
}

/* SAYFA GEÇİŞİ (owner 2026-09-06 "hâlâ baştan yükleniyor"): belgeler arası View Transition —
   tarayıcı yeni sayfa çizilmeye hazır olana kadar eskisini tutar, sonra içerik 180 ms'de
   çaprazlanır; kenar çubuğu ve üst çubuk yerinde kalır (beyaz an ve "yükleniyor" hissi yok).
   style.css bütün sayfalarda yüklü olduğundan tek yerden açılır. Chrome 126+; desteklemeyen
   tarayıcı yok sayar. */
@view-transition {
	navigation: auto;
}
.sidebar {
	view-transition-name: kenar-cubugu;
}
.navbar {
	view-transition-name: ust-cubuk;
}
::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: 180ms;
}
::view-transition-old(kenar-cubugu),
::view-transition-new(kenar-cubugu),
::view-transition-old(ust-cubuk),
::view-transition-new(ust-cubuk) {
	animation: none;
}
@media (prefers-reduced-motion: reduce) {
	::view-transition-old(root),
	::view-transition-new(root) {
		animation: none;
	}
}

/* KABUK (owner 2026-09-06): sayfalar çerçevede; gömülü sayfa kendi kenar/üst çubuğunu çizmez. */
html.gomulu .sidebar,
html.gomulu .navbar,
html.gomulu .sidebar-overlay {
	display: none !important;
}
html.gomulu .container.bsv {
	height: 100vh;
}
html.gomulu .main-content {
	min-height: 100vh;
}
.kb-ana {
	height: 100vh;
}
.kb-icerik {
	position: relative;
	flex: 1;
	min-height: 0;
	background: var(--ground);
}
.kb-cerceve {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: transparent;
	opacity: 0;
	pointer-events: none;
	transition: opacity 160ms ease;
}
.kb-cerceve.on {
	opacity: 1;
	pointer-events: auto;
}
.kb-yukleniyor {
	position: absolute;
	top: 0;
	left: 0;
	height: 2px;
	width: 0;
	background: var(--brand);
	z-index: 5;
	opacity: 0;
	transition:
		width 600ms ease-out,
		opacity 200ms;
}
.kb-yukleniyor.on {
	opacity: 1;
	width: 70%;
}

/* RESMİ HESAPLAR (owner 2026-09-06): hesap listesi satırı + otomatik mesajlarda "Gönderen hesap" + Gelen Kutusu hesap çipi */
.rh-satir {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px 12px 12px 16px;
	border-top: 0.5px solid var(--line);
}
.rh-satir:first-child {
	border-top: 0;
}
.rh-metin {
	min-width: 0;
	flex: 1;
}
.rh-ad {
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
.rh-alt {
	font-size: 13px;
	color: var(--sec);
	margin-top: 2px;
}
.rh-gorev {
	max-width: 360px;
	margin-bottom: 12px;
}
.gk-hesap-cip {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	color: var(--sec);
	border: 0.5px solid var(--frame);
	border-radius: 5px;
	padding: 0 5px;
	margin-right: 6px;
	vertical-align: 1px;
}
.gk-yazici .gk-secim {
	margin-right: 10px;
}

/* EKİP (owner 2026-09-06): yetki matrisi + kişi listesi */
.ek-matris {
	display: flex;
	flex-direction: column;
}
.ek-satir {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 0;
	border-top: 0.5px solid var(--line);
}
.ek-satir:first-child {
	border-top: 0;
}
.ek-alan {
	flex: 1;
	min-width: 0;
}
.ek-alan b {
	font-size: 14px;
	font-weight: 500;
	color: var(--ink);
}
.ek-alan .kf-not {
	margin-top: 2px;
}
.ek-seg {
	flex-shrink: 0;
}
.ek-seg .bsv-seg {
	padding: 5px 10px;
	font-size: 12px;
}
.ek-yetki {
	max-width: 360px;
	font-size: 13px;
	color: var(--sec);
}
tr.ek-kapali td {
	color: var(--sec);
}
tr.ek-kapali td b {
	color: var(--sec);
}
.sifre-aciklama {
	margin: -6px 0 18px;
	font-size: 14px;
	color: var(--sec);
	text-align: center;
}

/* GİRİŞ EKRANI A "Sakin kart" (owner 2026-09-06): panel form diliyle aynı ölçek — 13px etiket, 44px kutu/düğme, 10px köşe */
.login-box {
	max-width: 400px;
	padding: 32px;
	border-radius: 16px;
}
.login-box .logo {
	margin-bottom: 28px;
}
.login-box .form-group {
	margin-bottom: 16px;
}
.login-box .form-group label {
	font-size: 13px;
	font-weight: 500;
	color: var(--ink);
	margin-bottom: 6px;
}
.login-box input[type="email"],
.login-box input[type="password"],
.login-box input[type="text"] {
	width: 100%;
	height: 44px;
	padding: 0 12px;
	border: 1px solid var(--frame);
	border-radius: 10px;
	background: var(--surface);
	font: inherit;
	font-size: 15px;
	color: var(--ink);
	outline: none;
	transition:
		border-color 120ms,
		box-shadow 120ms;
}
.login-box input:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(0, 101, 255, 0.18);
}
.sifre-kutu {
	position: relative;
}
.sifre-kutu input {
	padding-right: 44px !important;
}
.sifre-goz {
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	color: var(--sec);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.sifre-goz:hover {
	background: var(--hover);
	color: var(--ink);
}
.sifre-goz:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 1px;
}
.sifre-goz svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.login-box .error-message {
	margin: 0 0 14px;
	padding: 10px 12px;
	border-radius: 10px;
	background: #fdecec;
	color: var(--err);
	font-size: 13px;
	line-height: 1.4;
}
.login-box .login-btn {
	width: 100%;
	height: 44px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 600;
	margin-top: 4px;
}
.login-box .sifre-aciklama {
	margin: -12px 0 20px;
	text-align: left;
}

/* Yalnız EKRAN OKUYUCUYA görünen metin. Boş bir tablo başlığı ("İşlem" sütunu) ekranda
   boş kalmalı ama ekran okuyucuya adını söylemeli — 7 Eylül 2026 denetimi. */
.gorunmez {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* GÖRÜNTÜLEME KİPİ (owner 2026-09-06): işlem yetkisi olmayan yöneticide değiştirme kontrolleri gizli */
.yetki-not {
	margin: 0 0 14px;
	padding: 9px 12px;
	border-radius: 10px;
	background: var(--box);
	color: var(--sec);
	font-size: 13px;
}
html.yetki-gor .btn-primary,
html.yetki-gor .btn-danger,
html.yetki-gor .ik-uc,
html.yetki-gor .gk-yazici,
html.yetki-gor .bsv-karar,
html.yetki-gor .gk-durum-seg,
html.yetki-gor .kf-anahtar,
html.yetki-gor .hg-anahtar,
html.yetki-gor .ut-kutu,
html.yetki-gor #utHepsi,
html.yetki-gor .ut-secim,
html.yetki-gor .kf-kaldir,
html.yetki-gor .kf-ekle,
/* 🔑 YAPISAL KURAL (7 Eylül 2026 denetimi): tek tek sınıf saymak yerine EYLEM TAŞIYAN KAPLAR.
   Eski liste elle sayılmıştı ve yan panelin alt çubuğundaki "İlanı sil / Etkinliği sil /
   Konuyu sil" düğmeleri listede yoktu — görüntüleme yetkilisi onları görüyor, basınca
   sunucudan hata alıyordu. Sunucu kapısı sağlamdı, sızan yalnız düğmenin kendisiydi.
   Bundan sonra: yan panel alt çubuğundaki DÜĞMELER (bağlantılar kalır — gezinme),
   üye dosyasındaki tehlikeli bölge düğmeleri ve data-eylem taşıyan düğmeler gizlenir. */
	html.yetki-gor .yp-alt
	button,
html.yetki-gor .ud-tehlike-satir .btn,
html.yetki-gor button[data-eylem]:not([data-eylem="kopyala"]):not([data-eylem="incele"]) {
	display: none !important;
}
html.yetki-gor .login-box .btn-primary {
	display: inline-flex !important;
}
.login-alt {
	margin: 14px 0 0;
	text-align: center;
	font-size: 13px;
}
.login-alt a {
	color: var(--brand-text);
	text-decoration: none;
}
.login-alt a:hover {
	text-decoration: underline;
}
.login-adim {
	display: none;
}
.login-adim.on {
	display: block;
}
.gk-daha {
	display: flex;
	justify-content: center;
	padding: 10px 0 6px;
}

/* DAR EKRAN (owner 2026-09-06 "profesyonel mi"): geniş tablolar sayfayı taşırmasın, kendi içinde yana kaysın */
@media (max-width: 700px) {
	.ut-tablo {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
	}
	.ut-tablo thead,
	.ut-tablo tbody,
	.ut-tablo tr {
		display: table;
		width: 100%;
		table-layout: auto;
	}
	.ut-tablo td,
	.ut-tablo th {
		white-space: nowrap;
	}
}
@media (max-width: 700px) {
	.bsv-ust,
	.bsv-ust-sag {
		flex-wrap: wrap;
		row-gap: 8px;
	}
	.bsv-ust-sag {
		justify-content: flex-start;
	}
	.gk-arama {
		flex: 1 1 100%;
	}
	.gk-arama input {
		width: 100%;
	}
	.container,
	.page-header p {
		overflow-wrap: anywhere;
	}
}

/* İKİ ADIMLI DOĞRULAMA (owner 2026-09-06) */
.ia-kur {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: 18px;
	align-items: start;
}
.ia-qr {
	width: 200px;
	height: 200px;
	border: 0.5px solid var(--frame);
	border-radius: 10px;
	padding: 6px;
	background: #fff;
}
.ia-qr svg {
	width: 100%;
	height: 100%;
	display: block;
}
.ia-yedek {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px 14px;
}
.ia-yedek code {
	font-family: ui-monospace, Menlo, monospace;
	font-size: 14px;
	padding: 6px 10px;
	background: var(--box);
	border-radius: 8px;
}
@media (max-width: 560px) {
	.ia-kur {
		grid-template-columns: 1fr;
	}
	.ia-qr {
		margin: 0 auto;
	}
}
