/*
 * Kısa bağlantı servisi görsel sistemi — v1.0.0
 * Spacious editorial interface for Kadınoloji.
 */
:root {
  --brand: #8f1d5c;
  --brand-rgb: 143, 29, 92;
  --brand-dark: #60103b;
  --brand-deep: #321022;
  --brand-soft: #f8edf3;
  --brand-wash: #fff7fb;
  --ink: #1b171a;
  --ink-soft: #50474d;
  --muted: #786e75;
  --muted-light: #aaa0a7;
  --paper: #ffffff;
  --canvas: #f5f2f3;
  --canvas-warm: #faf8f7;
  --surface: rgba(255,255,255,.92);
  --surface-solid: #fff;
  --surface-soft: #f8f6f7;
  --line: #e9e3e6;
  --line-strong: #dcd3d8;
  --success: #147a56;
  --success-soft: #e9f7f1;
  --warning: #a65a0b;
  --warning-soft: #fff3df;
  --danger: #bd2b45;
  --danger-soft: #fff0f3;
  --info: #2f6690;
  --shadow-sm: 0 12px 32px rgba(40, 23, 33, .06);
  --shadow: 0 30px 80px rgba(45, 22, 35, .11);
  --shadow-deep: 0 34px 90px rgba(27, 11, 20, .22);
  --radius-sm: 12px;
  --radius: 18px;
  --radius-lg: 26px;
  --radius-xl: 38px;
  --font-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-display: "Playfair Display", serif;
  --transition: 180ms cubic-bezier(.2,.8,.2,1);
  --admin-content-padding-inline: clamp(24px, 4vw, 64px);
  --admin-content-padding-top: 38px;
  --admin-content-padding-bottom: 60px;
  --admin-page-title-size: clamp(3rem, 4.4vw, 4.85rem);
  --admin-panel-padding: clamp(26px, 2.6vw, 38px);
  --admin-content-gap: 28px;
  --admin-grid-gap: 18px;
  --admin-toolbar-padding: 20px;
  --admin-toolbar-radius: 20px;
  --admin-surface-radius: 26px;
  --admin-surface-border: 1px solid rgba(255,255,255,.9);
  --admin-surface-bg: rgba(255,255,255,.87);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); font-family: var(--font-sans); font-size: 15px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
body, input, select, textarea, button { font-family: var(--font-sans); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
img, svg { max-width: 100%; }
::selection { background: rgba(var(--brand-rgb), .18); color: var(--brand-deep); }
:focus-visible { outline: 3px solid rgba(var(--brand-rgb), .22); outline-offset: 3px; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--ink); letter-spacing: .01em; }
h1 { font-size: clamp(2.6rem, 5vw, 5.9rem); line-height: .97; }
h2 { font-size: clamp(1.6rem, 3vw, 2.8rem); line-height: 1.08; }
h3 { font-size: 1.1rem; line-height: 1.25; }
code { padding: .18em .42em; border-radius: 7px; background: #f2edf0; color: var(--brand-dark); font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: .88em; }

/* Shared brand */
.brand-lockup { display: inline-flex; align-items: center; gap: 13px; min-width: 0; }
.brand-mark { width: 46px; height: 50px; display: grid; place-items: center; flex: 0 0 46px; }
.brand-mark img { width: 34px; height: 47px; display: block; object-fit: contain; }
.brand-lockup.light .brand-mark img { filter: brightness(0) invert(1); }
.brand-copy { display: grid; min-width: 0; line-height: 1.15; }
.brand-copy strong { font-size: 1rem; letter-spacing: .01em; }
.brand-copy small { margin-top: 4px; color: var(--muted); font-size: .68rem; white-space: nowrap; }
.brand-lockup.light .brand-copy strong { color: #fff; }
.brand-lockup.light .brand-copy small { color: rgba(255,255,255,.55); }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--brand); font-size: .68rem; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.section-icon, .panel-icon, .settings-icon, .stat-icon, .feature-icon, .list-icon, .user-avatar, .new-key-icon { display: grid; place-items: center; flex: 0 0 auto; color: var(--brand); background: var(--brand-soft); }
.section-icon { width: 54px; height: 54px; border-radius: 18px; font-size: 1.2rem; }
.panel-icon, .settings-icon, .list-icon { width: 42px; height: 42px; border-radius: 14px; }

/* Buttons */
.button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 20px; border: 1px solid transparent; border-radius: 14px; font-size: .8rem; font-weight: 800; letter-spacing: .01em; transition: transform var(--transition), box-shadow var(--transition), background var(--transition), border-color var(--transition), color var(--transition); }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0); }
.button.primary { background: var(--brand); color: #fff; box-shadow: 0 15px 30px rgba(var(--brand-rgb), .22); }
.button.primary:hover { background: var(--brand-dark); box-shadow: 0 18px 38px rgba(var(--brand-rgb), .3); }
.button.secondary { border-color: var(--line-strong); background: #fff; color: var(--ink-soft); box-shadow: 0 8px 20px rgba(30,20,25,.04); }
.button.secondary:hover { border-color: rgba(var(--brand-rgb), .35); color: var(--brand); }
.button.large { min-height: 56px; padding-inline: 25px; border-radius: 17px; }
.button.full { width: 100%; }
.button[disabled] { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; }
.icon-button { width: 42px; height: 42px; display: inline-grid; place-items: center; border: 1px solid var(--line); border-radius: 13px; background: #fff; color: var(--ink-soft); transition: all var(--transition); }
.icon-button:hover { border-color: rgba(var(--brand-rgb), .28); background: var(--brand-soft); color: var(--brand); transform: translateY(-2px); }
.icon-button.danger, .button-link.danger { color: var(--danger); }
.icon-button.danger:hover { border-color: rgba(189,43,69,.2); background: var(--danger-soft); }
.button-link { display: inline-flex; align-items: center; gap: 7px; padding: 0; border: 0; background: transparent; font-size: .75rem; font-weight: 800; }

/* Notices */
.notice { display: flex; align-items: flex-start; gap: 11px; padding: 14px 16px; border: 1px solid; border-radius: 15px; font-size: .8rem; line-height: 1.5; }
.notice.success { border-color: #cfeadd; background: var(--success-soft); color: var(--success); }
.notice.error { border-color: #f2ccd4; background: var(--danger-soft); color: var(--danger); }
.notice i { margin-top: 2px; }
.status-pill, .badge { display: inline-flex; align-items: center; gap: 7px; width: fit-content; border-radius: 999px; font-size: .69rem; font-weight: 800; white-space: nowrap; }
.status-pill { padding: 8px 11px; }
.badge { padding: 7px 10px; }
.status-pill.success, .badge.success { background: var(--success-soft); color: var(--success); }
.status-pill.danger, .badge.danger { background: var(--danger-soft); color: var(--danger); }
.badge.warning { background: var(--warning-soft); color: var(--warning); }
.badge.neutral { background: #f0edef; color: var(--muted); }

/* Custom form system */
.stack-form { display: grid; gap: 20px; }
.form-grid { display: grid; grid-auto-rows: max-content; align-items: start; gap: 18px; }
.form-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.span-two { grid-column: 1 / -1; }
.field { display: grid; grid-auto-rows: max-content; align-content: start; gap: 8px; min-width: 0; height: fit-content; }
.form-grid > .field { align-self: start; }
.field-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--ink-soft); font-size: .74rem; font-weight: 800; }
.field-label small { color: var(--muted-light); font-size: .65rem; font-weight: 650; }
.field-label b { color: var(--danger); }
.field > small { color: var(--muted); font-size: .67rem; line-height: 1.5; }
.input-control, .prefix-control, .select-control, .textarea-control, .color-control { position: relative; min-width: 0; border: 1px solid var(--line-strong); border-radius: 15px; background: #fff; box-shadow: 0 8px 24px rgba(32,20,27,.035); transition: border-color var(--transition), box-shadow var(--transition), transform var(--transition); }
.input-control, .select-control, .color-control { min-height: 52px; display: flex; align-items: center; }
.input-control:focus-within, .prefix-control:focus-within, .select-control:focus-within, .textarea-control:focus-within, .color-control:focus-within { border-color: rgba(var(--brand-rgb), .55); box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .09), 0 12px 28px rgba(30,20,26,.05); }
.input-control > i:first-child, .textarea-control > i:first-child { width: 48px; flex: 0 0 48px; color: var(--brand); text-align: center; }
.input-control input, .prefix-control input, .select-control select, .textarea-control textarea { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--ink); }
.input-control input { height: 50px; padding: 0 15px 0 0; }
.input-control input::placeholder, textarea::placeholder { color: #b4aab0; }
.input-control input[readonly] { color: var(--muted); cursor: default; }
.prefix-control { min-height: 52px; display: flex; align-items: stretch; overflow: hidden; }
.prefix-control > span { display: flex; align-items: center; padding: 0 14px; border-right: 1px solid var(--line); background: var(--surface-soft); color: var(--muted); font-size: .72rem; white-space: nowrap; }
.prefix-control input { padding: 0 14px; }
.select-control select { height: 50px; padding: 0 48px 0 15px; appearance: none; cursor: pointer; }
.select-control > i { position: absolute; right: 16px; color: var(--brand); pointer-events: none; }
.textarea-control { min-height: 126px; display: flex; align-items: flex-start; }
.textarea-control > i:first-child { padding-top: 17px; }
.textarea-control textarea { min-height: 124px; resize: vertical; padding: 15px 15px 15px 0; line-height: 1.65; }
.field-action { width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 46px; border: 0; background: transparent; color: var(--muted); }
.field-action:hover { color: var(--brand); }
.color-control { padding: 6px 12px 6px 7px; gap: 11px; }
.color-control input[type="color"] { width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; overflow: hidden; appearance: none; -webkit-appearance: none; -moz-appearance: none; background: transparent; box-shadow: none; cursor: pointer; }
.color-control input[type="color"]::-webkit-color-swatch-wrapper { padding: 0; border: 0; border-radius: 50%; }
.color-control input[type="color"]::-webkit-color-swatch { border: 0; border-radius: 50%; }
.color-control input[type="color"]::-moz-color-swatch { border: 0; border-radius: 50%; }
.color-control span { flex: 1; color: var(--ink-soft); font-size: .75rem; font-weight: 800; letter-spacing: .06em; }
.color-control i { color: var(--brand); }
.choice-fieldset { display: grid; gap: 10px; margin: 0; padding: 0; border: 0; }
.choice-fieldset legend { margin-bottom: 8px; color: var(--ink-soft); font-size: .74rem; font-weight: 800; }
.choice-row { position: relative; min-height: 68px; display: flex; align-items: center; gap: 13px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); cursor: pointer; transition: all var(--transition); }
.choice-row:hover { border-color: rgba(var(--brand-rgb), .28); background: var(--brand-wash); }
.choice-row > input { position: absolute; opacity: 0; pointer-events: none; }
.choice-box { width: 25px; height: 25px; display: grid; place-items: center; flex: 0 0 25px; border: 1.5px solid var(--line-strong); border-radius: 8px; background: #fff; color: transparent; transition: all var(--transition); }
.choice-row > input:checked + .choice-box { border-color: var(--brand); background: var(--brand); color: #fff; box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .1); }
.choice-row > input[type="radio"] + .choice-box { border-radius: 50%; }
.choice-row > input[type="radio"]:checked + .choice-box::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; }
.choice-copy { display: grid; gap: 3px; }
.choice-copy strong { color: var(--ink-soft); font-size: .77rem; }
.choice-copy small { color: var(--muted); font-size: .66rem; line-height: 1.4; }
.password-meter { height: 4px; overflow: hidden; border-radius: 999px; background: #eee8eb; }
.password-meter i { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--danger); transition: width 180ms ease, background 180ms ease; }
.password-meter i[data-level="medium"] { background: var(--warning); }
.password-meter i[data-level="strong"] { background: var(--success); }
.form-note { display: flex; align-items: flex-start; gap: 11px; padding: 14px 16px; border: 1px solid #dce8f0; border-radius: 16px; background: #f4f9fc; color: #496575; }
.form-note i { margin-top: 3px; color: var(--info); }
.form-note p { margin: 0; font-size: .72rem; line-height: 1.6; }
.form-note.success-note { border-color: #cfeadd; background: var(--success-soft); color: var(--success); }
.form-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; padding-top: 6px; }
.form-divider { height: 1px; margin: 6px 0; background: var(--line); }
/* Public experience */
.public-page { min-height: 100vh; overflow-x: hidden; background: var(--canvas-warm); }
.public-page::before { content: ""; position: fixed; z-index: -1; inset: 0; pointer-events: none; background: radial-gradient(circle at 8% 5%, rgba(var(--brand-rgb), .11), transparent 28%), radial-gradient(circle at 92% 20%, rgba(207,154,183,.18), transparent 25%), linear-gradient(180deg,#fbf8f9 0%,#f7f3f4 55%,#fbfaf9 100%); }
.public-header, .public-footer { width: min(1480px, calc(100% - 64px)); margin-inline: auto; }
.public-header { min-height: 104px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.public-status { display: inline-flex; align-items: center; gap: 9px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.8); border-radius: 999px; background: rgba(255,255,255,.62); color: var(--muted); font-size: .7rem; font-weight: 750; box-shadow: var(--shadow-sm); backdrop-filter: blur(16px); }
.public-status i { color: var(--success); }
.hero-section { position: relative; width: min(1540px, calc(100% - 48px)); min-height: 760px; margin: 0 auto; padding: 50px 48px 78px; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(430px, .82fr); align-items: center; gap: clamp(50px, 7vw, 120px); overflow: hidden; border-radius: 54px; background: rgba(255,255,255,.56); box-shadow: inset 0 0 0 1px rgba(255,255,255,.78), 0 40px 100px rgba(56,28,43,.08); backdrop-filter: blur(22px); }
.hero-section::before { content: attr(data-site-domain); position: absolute; left: -25px; bottom: -88px; color: transparent; font-family: var(--font-display); font-size: clamp(10rem, 22vw, 22rem); font-weight: 400; letter-spacing: .01em; line-height: .8; -webkit-text-stroke: 1px rgba(var(--brand-rgb), .08); pointer-events: none; }
.hero-section::after { content: ""; position: absolute; width: 440px; height: 440px; right: -170px; top: -190px; border: 1px solid rgba(var(--brand-rgb), .13); border-radius: 50%; box-shadow: 0 0 0 54px rgba(var(--brand-rgb), .025), 0 0 0 108px rgba(var(--brand-rgb), .018); pointer-events: none; }
.hero-copy { position: relative; z-index: 2; max-width: 820px; padding-left: clamp(0px, 3vw, 42px); }
.hero-kicker { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 26px; color: var(--brand); font-size: .72rem; font-weight: 850; letter-spacing: .18em; }
.hero-kicker i { font-size: .9rem; }
.hero-copy h1 { max-width: 760px; margin-bottom: 28px; font-family: var(--font-display); font-size: clamp(3.6rem, 6.7vw, 7.2rem); font-weight: 400; letter-spacing: .01em; line-height: 1.02; }
.hero-copy h1 em { color: var(--brand); font-style: italic; }
.hero-copy > p { max-width: 610px; margin-bottom: 0; color: var(--ink-soft); font-size: clamp(.98rem, 1.25vw, 1.16rem); line-height: 1.82; }
.hero-points { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 34px; }
.hero-points span { display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; border-bottom: 1px solid rgba(var(--brand-rgb), .22); color: var(--ink-soft); font-size: .72rem; font-weight: 750; }
.hero-points i { color: var(--brand); }
.hero-domain { display: flex; align-items: center; gap: 14px; margin-top: 42px; color: var(--muted); font-size: .76rem; }
.hero-domain > span { padding: 10px 15px; border-radius: 12px; background: var(--ink); color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 800; }
.hero-domain i { color: var(--brand); }
.hero-domain strong { color: var(--ink-soft); }
.shortener-card { position: relative; z-index: 2; min-height: 500px; display: flex; flex-direction: column; justify-content: center; overflow: hidden; padding: clamp(28px, 4vw, 46px); border-radius: 36px 36px 90px 36px; background: #20131a; color: #fff; box-shadow: var(--shadow-deep); }
.shortener-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 85% 10%, rgba(var(--brand-rgb), .58), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.035), transparent 55%); pointer-events: none; }
.shortener-card::after { content: ""; position: absolute; width: 190px; height: 190px; right: -70px; bottom: -80px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255,255,255,.025), 0 0 0 76px rgba(255,255,255,.018); pointer-events: none; }
.card-orbit { display: none; }
.shortener-card > .stack-form { position: relative; z-index: 2; }
.shortener-heading { position: relative; z-index: 2; display: flex; align-items: center; gap: 15px; margin-bottom: 29px; }
.shortener-heading .section-icon { background: rgba(255,255,255,.09); color: #fff; }
.shortener-heading .eyebrow { margin-bottom: 5px; color: #dba8c5; }
.shortener-heading h2 { margin: 0; color: #fff; font-size: 1.42rem; letter-spacing: .01em; }
.shortener-card .field-label { color: rgba(255,255,255,.74); }
.shortener-card .field > small { color: rgba(255,255,255,.44); }
.shortener-card .input-control, .shortener-card .prefix-control { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.08); box-shadow: none; }
.shortener-card .input-control input, .shortener-card .prefix-control input { color: #fff; }
.shortener-card .input-control input::placeholder { color: rgba(255,255,255,.34); }
.shortener-card .input-control > i:first-child { color: rgba(255,255,255,.34); transition: color var(--transition); }
.shortener-card .input-control:focus-within > i:first-child,
.shortener-card .input-control:has(input:not(:placeholder-shown)) > i:first-child { color: #fff; }
.shortener-card .prefix-control > span { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.06); color: rgba(255,255,255,.52); }
.shortener-card .button.primary { background: #fff; color: var(--brand-dark); box-shadow: none; }
.shortener-card .button.primary:hover { background: var(--brand-soft); }
.closed-state { position: relative; z-index: 2; text-align: left; }
.closed-state h3 { margin-bottom: 12px; color: #fff; font-family: var(--font-display); font-size: 2rem; font-weight: 400; }
.closed-state p { max-width: 390px; margin-bottom: 30px; color: rgba(255,255,255,.62); font-size: .86rem; line-height: 1.75; }
.service-status { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 17px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.06); }
.service-status span { display: inline-flex; align-items: center; gap: 8px; color: #88e2bd; font-size: .72rem; font-weight: 800; }
.service-status span i { font-size: .48rem; }
.service-status small { color: rgba(255,255,255,.42); font-size: .64rem; }
.result-box { position: relative; z-index: 2; }
.result-box > span { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; color: #8ce0bd; font-size: .76rem; font-weight: 800; }
.copy-line { display: flex; gap: 9px; min-width: 0; }
.result-box input, .copy-line input { min-width: 0; flex: 1; height: 52px; padding: 0 15px; border: 1px solid var(--line-strong); border-radius: 15px; outline: 0; background: #fff; color: var(--ink); }
.result-copy-line button, .copy-line button { min-width: 118px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 15px; background: var(--brand); color: #fff; font-size: .75rem; font-weight: 800; }
.shortener-card .result-box input { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.1); color: #fff; }
.shortener-card .result-copy-line button { background: #fff; color: var(--brand-dark); }

.feature-section { width: min(1400px, calc(100% - 64px)); margin: 115px auto 120px; }
.section-heading { display: grid; grid-template-columns: minmax(0,.8fr) minmax(300px,.55fr); align-items: end; gap: 70px; margin-bottom: 42px; }
.section-heading > div:first-child { max-width: 760px; }
.section-heading h2 { margin: 14px 0 0; font-family: var(--font-display); font-size: clamp(2.8rem, 5.5vw, 5.8rem); font-weight: 400; letter-spacing: .01em; }
.section-heading > p { margin: 0 0 8px; color: var(--muted); font-size: .95rem; line-height: 1.75; }
.feature-grid { display: grid; grid-template-columns: 1.15fr .85fr .85fr; grid-template-rows: repeat(2, minmax(190px, auto)); gap: 18px; }
.feature-grid article { position: relative; overflow: hidden; padding: 30px; border: 1px solid var(--line); border-radius: 28px; background: rgba(255,255,255,.74); box-shadow: var(--shadow-sm); transition: transform var(--transition), box-shadow var(--transition); }
.feature-grid article:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.feature-grid article:first-child { grid-row: 1 / 3; min-height: 430px; display: flex; flex-direction: column; justify-content: flex-end; border: 0; background: var(--brand); color: #fff; }
.feature-grid article:first-child::before { content: "01"; position: absolute; top: 18px; right: 25px; color: rgba(255,255,255,.13); font-family: var(--font-display); font-size: 8rem; line-height: 1; }
.feature-grid article:nth-child(2) { grid-column: 2 / 4; }
.feature-grid article:nth-child(3) { grid-column: 2 / 3; }
.feature-grid article:nth-child(4) { grid-column: 3 / 4; }
.feature-icon { width: 58px; height: 58px; border-radius: 19px; font-size: 1.25rem; }
.feature-grid article:first-child .feature-icon { background: rgba(255,255,255,.12); color: #fff; }
.feature-grid h3 { margin: 22px 0 10px; font-family: var(--font-display); font-size: 1.55rem; font-weight: 400; }
.feature-grid article:first-child h3 { color: #fff; font-size: 2.2rem; }
.feature-grid p { max-width: 480px; margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.7; }
.feature-grid article:first-child p { color: rgba(255,255,255,.67); }
/* Shared legal footer */
.site-footer { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 28px; padding: 28px 0; border-top: 1px solid var(--line); color: var(--muted); }
.site-footer-identity { display: flex; align-items: center; gap: 15px; min-width: 0; }
.site-footer-logo { width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 46px; border: 1px solid rgba(var(--brand-rgb), .1); border-radius: 15px; background: var(--brand-soft); }
.site-footer-logo img { width: 24px; height: 24px; display: block; }
.site-footer-legal { display: grid; min-width: 0; gap: 4px; font-size: .69rem; line-height: 1.55; }
.site-footer-legal > span { min-width: 0; }
.site-footer-legal a { color: var(--ink-soft); transition: color var(--transition); }
.site-footer-legal a:hover { color: var(--brand); }
.site-footer-legal strong { font-weight: 850; }
.site-footer-legal small { color: var(--muted-light); font-size: .64rem; }
.site-footer-service { display: grid; justify-items: end; gap: 3px; padding: 11px 14px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.58); box-shadow: var(--shadow-sm); }
.site-footer-service span { display: inline-flex; align-items: center; gap: 8px; color: var(--ink-soft); font-size: .68rem; font-weight: 850; }
.site-footer-service i { color: var(--success); }
.site-footer-service small { color: var(--muted); font-size: .6rem; }
.public-footer { min-height: 122px; }
.admin-footer { margin-top: 64px; }
.installer-footer { width: min(100%, 920px); margin-top: auto; }

/* Authentication */
.auth-page { min-height: 100vh; background: #f5f1f3; }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(360px,.85fr) minmax(520px,1.15fr); }
.auth-art { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; padding: 48px; background: var(--brand-deep); color: #fff; }
.auth-art::before { content: "K"; position: absolute; right: -40px; bottom: -120px; color: rgba(255,255,255,.055); font-family: var(--font-display); font-size: 34rem; line-height: .8; }
.auth-art::after { content: ""; position: absolute; width: 340px; height: 340px; left: -170px; top: 24%; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018); }
.auth-art-copy { position: relative; z-index: 1; max-width: 480px; }
.auth-art-copy span { color: #dca9c5; font-size: .7rem; font-weight: 850; letter-spacing: .18em; }
.auth-art-copy h2 { margin: 18px 0 20px; color: #fff; font-family: var(--font-display); font-size: clamp(3rem,5vw,5.4rem); font-weight: 400; line-height: .94; }
.auth-art-copy p { max-width: 400px; color: rgba(255,255,255,.57); line-height: 1.75; }
.auth-art-note { position: relative; z-index: 1; display: flex; align-items: center; gap: 11px; color: rgba(255,255,255,.55); font-size: .72rem; }
.auth-art-note i { color: #8ce0bd; }
.auth-form-wrap { display: grid; place-items: center; padding: 55px; }
.auth-card { width: min(100%, 540px); }
.auth-card > .brand-lockup { margin-bottom: 78px; }
.auth-heading { margin-bottom: 30px; }
.auth-heading .section-icon { margin-bottom: 22px; }
.auth-heading h1 { margin: 13px 0 12px; font-family: var(--font-display); font-size: clamp(2.7rem,5vw,4.7rem); font-weight: 400; }
.auth-heading p { max-width: 430px; margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.65; }
.back-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 27px; color: var(--muted); font-size: .73rem; font-weight: 750; }
.back-link:hover { color: var(--brand); }

/* Installer — split editorial wizard */
.install-page { min-height: 100vh; background: #f4f0f2; }
.installer-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(380px, 34vw) minmax(0, 1fr); }
.installer-aside { position: relative; overflow: hidden; min-height: 100vh; display: flex; flex-direction: column; padding: 44px; background: linear-gradient(145deg, #2b111f 0%, #501438 58%, #74194c 100%); color: #fff; }
.installer-aside::before { content: ""; position: absolute; width: 520px; height: 520px; left: -290px; bottom: -220px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 70px rgba(255,255,255,.026),0 0 0 140px rgba(255,255,255,.017); }
.installer-aside::after { content: "K"; position: absolute; right: -35px; bottom: -105px; color: rgba(255,255,255,.055); font-family: var(--font-display); font-size: 27rem; line-height: .8; }
.installer-aside-top, .installer-aside-copy, .installer-progress, .installer-footer { position: relative; z-index: 1; }
.installer-aside-top { display: flex; align-items: center; justify-content: space-between; }
.installer-aside .version-badge { padding: 8px 11px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: rgba(255,255,255,.6); font-size: .65rem; font-weight: 800; }
.installer-aside-copy { margin: auto 0 46px; max-width: 440px; }
.installer-aside-copy .eyebrow { color: #e9b9d3; }
.installer-aside-copy h2 { margin: 19px 0 20px; color: #fff; font-family: var(--font-display); font-size: clamp(3rem, 5vw, 5.2rem); font-weight: 400; line-height: .95; }
.installer-aside-copy p { max-width: 380px; margin: 0; color: rgba(255,255,255,.57); line-height: 1.75; }
.installer-progress { display: grid; gap: 8px; }
.installer-step { position: relative; min-height: 58px; display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 13px; padding: 8px 12px; border: 1px solid transparent; border-radius: 15px; color: rgba(255,255,255,.42); }
.installer-step > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 11px; font-size: .69rem; font-weight: 850; }
.installer-step > small { font-size: .72rem; font-weight: 750; }
.installer-step.active { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.08); color: #fff; }
.installer-step.active > span { border-color: transparent; background: #fff; color: var(--brand-dark); }
.installer-step.complete { color: #9ae3c3; }
.installer-step.complete > span { border-color: rgba(154,227,195,.28); background: rgba(154,227,195,.1); color: #9ae3c3; }
.installer-main { min-width: 0; min-height: 100vh; display: flex; flex-direction: column; padding: 42px clamp(42px, 6.2vw, 104px) 30px; background: #fff; }
.installer-main-header { display: flex; align-items: center; justify-content: flex-end; min-height: 45px; }
.installer-main-header span { display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: .68rem; font-weight: 750; }
.installer-main-header i { color: var(--success); }
.installer-content { width: min(100%, 920px); margin: auto 0; padding: 42px 0 56px; }
.installer-main > .notice { width: min(100%,920px); margin: 20px 0 0; }
.installer-welcome { text-align: left; }
.installer-welcome > .section-icon { margin-bottom: 27px; }
.installer-content h1 { margin: 14px 0 18px; font-family: var(--font-display); font-size: clamp(3.2rem, 6vw, 6rem); font-weight: 400; line-height: .93; letter-spacing: .01em; }
.installer-content > p, .installer-title p, .installer-finish > p { max-width: 720px; color: var(--muted); font-size: .87rem; line-height: 1.72; }
.installer-info-card { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 32px 0 20px; }
.installer-info-card > div, .finish-details > div { display: flex; align-items: center; gap: 14px; min-width: 0; min-height: 78px; padding: 17px 18px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-soft); }
.installer-info-card > div > i, .finish-details > div > i { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 38px; border-radius: 12px; background: var(--brand-soft); color: var(--brand); }
.installer-info-card span, .finish-details span { display: grid; min-width: 0; }
.installer-info-card small, .finish-details small { color: var(--muted); font-size: .72rem; line-height: 1.35; }
.installer-info-card strong, .finish-details strong { margin-top: 5px; overflow: hidden; color: var(--ink-soft); font-size: .82rem; text-overflow: ellipsis; white-space: nowrap; }
.requirements-card { margin-top: 22px; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: #faf8f9; }
.requirements-card > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 15px; }
.requirements-card h2 { margin: 0 0 5px; font-size: 1.02rem; }
.requirements-card p { margin: 0; color: var(--muted); font-size: .76rem; }
.requirements-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.requirement { display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 62px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.requirement > i { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 34px; border-radius: 11px; background: var(--success-soft); color: var(--success); }
.requirement.fail > i { background: var(--danger-soft); color: var(--danger); }
.requirement.warn > i { background: #fff7e5; color: var(--warning); }
.requirement span { display: grid; min-width: 0; }
.requirement strong { color: var(--ink-soft); font-size: .76rem; line-height: 1.3; }
.requirement small { margin-top: 3px; overflow: hidden; color: var(--muted); font-size: .68rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.installer-title { display: flex; align-items: flex-start; gap: 18px; margin-bottom: 32px; }
.installer-title .section-icon { margin-top: 4px; }
.installer-title h1 { font-size: clamp(2.8rem,5vw,5rem); }
.installer-title p { margin-bottom: 0; }
.installer-form { max-width: 800px; }
.installer-form .form-grid.two { grid-auto-rows: 126px; }
.installer-form .form-grid.two > .field { height: 126px; align-content: start; grid-template-rows: 22px 52px minmax(28px, 1fr); }
.installer-form .field-support { display: grid; align-self: start; gap: 7px; min-width: 0; }
.installer-form .field-support > small { color: var(--muted); font-size: .67rem; line-height: 1.5; }
.installer-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 28px; }
.installer-actions.split { justify-content: space-between; }
.connection-success { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; padding: 14px 16px; border: 1px solid #cfeadd; border-radius: 16px; background: var(--success-soft); color: var(--success); }
.connection-success > i { font-size: 1.15rem; }
.connection-success span { display: grid; }
.connection-success strong { font-size: .75rem; }
.connection-success small { margin-top: 2px; font-size: .65rem; }
.installer-finish { text-align: left; }
.finish-icon { width: 84px; height: 84px; display: grid; place-items: center; margin-bottom: 27px; border-radius: 27px; background: var(--success-soft); color: var(--success); font-size: 2rem; }
.finish-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 30px 0; }
.finish-actions { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 32px; }
.finish-actions .button { width: 100%; min-height: 62px; }
.installer-finish .success-note { margin-top: 24px; }

/* Admin shell */
.admin-page { min-height: 100vh; background: #f4f1f2; }
.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 276px minmax(0,1fr); gap: 22px; padding: 20px; }
.admin-sidebar { position: sticky; top: 20px; height: calc(100vh - 40px); display: flex; flex-direction: column; overflow: hidden; padding: 25px 19px 18px; border-radius: 30px; background: linear-gradient(170deg,#1c1118 0%,#28131f 65%,#381329 100%); color: #fff; box-shadow: var(--shadow-deep); }
.admin-sidebar::before { content: ""; position: absolute; width: 250px; height: 250px; right: -150px; top: -110px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 35px rgba(255,255,255,.02),0 0 0 70px rgba(255,255,255,.013); }
.admin-sidebar > * { position: relative; z-index: 1; }
.admin-sidebar .brand-lockup { padding-inline: 7px; }
.admin-nav { display: grid; gap: 7px; min-height: 0; margin-top: 36px; padding-right: 4px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.16) transparent; }
.admin-nav::-webkit-scrollbar { width: 5px; }
.admin-nav::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(255,255,255,.16); }
.admin-nav a { position: relative; min-height: 49px; display: flex; align-items: center; gap: 13px; padding: 0 14px; border-radius: 14px; color: rgba(255,255,255,.55); font-size: .75rem; font-weight: 750; transition: all var(--transition); }
.admin-nav a i { width: 22px; color: rgba(255,255,255,.43); font-size: .95rem; text-align: center; }
.admin-nav a:hover { background: rgba(255,255,255,.06); color: #fff; }
.admin-nav a.active { background: #fff; color: var(--brand-dark); box-shadow: 0 15px 32px rgba(0,0,0,.18); }
.admin-nav a.active i { color: var(--brand); }
.sidebar-meta { display: grid; gap: 5px; margin-top: auto; padding: 15px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.04); }
.sidebar-meta span { display: inline-flex; align-items: center; gap: 7px; color: #9ae3c3; font-size: .66rem; font-weight: 750; }
.sidebar-meta small { color: rgba(255,255,255,.35); font-size: .61rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sidebar-user { display: grid; grid-template-columns: 38px minmax(0,1fr) 38px; align-items: center; gap: 10px; margin-top: 11px; padding: 12px 5px 0; border-top: 1px solid rgba(255,255,255,.08); }
.user-avatar { width: 38px; height: 38px; border-radius: 12px; background: rgba(255,255,255,.09); color: #fff; }
.user-copy { display: grid; min-width: 0; }
.user-copy strong, .user-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.user-copy strong { color: #fff; font-size: .69rem; }
.user-copy small { margin-top: 3px; color: rgba(255,255,255,.37); font-size: .59rem; }
.ghost-light { width: 36px; height: 36px; border-color: transparent; background: transparent; color: rgba(255,255,255,.45); }
.ghost-light:hover { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.07); color: #fff; }
.admin-main { min-width: 0; padding: var(--admin-content-padding-top) var(--admin-content-padding-inline) var(--admin-content-padding-bottom); border-radius: 30px; background: rgba(255,255,255,.52); box-shadow: inset 0 0 0 1px rgba(255,255,255,.72); }
.admin-main > .notice { margin-bottom: 20px; }
.admin-content { width: 100%; min-width: 0; display: grid; gap: var(--admin-content-gap); }
.admin-content > * { width: 100%; min-width: 0; }
.mobile-admin-bar, .sidebar-backdrop { display: none; }
.page-header { width: 100%; min-width: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 35px; margin-bottom: 0; }
.page-header > div:first-child,
.page-header > .page-header-main { min-width: 0; flex: 1 1 auto; }
.page-header .eyebrow { font-size: .68rem; letter-spacing: .17em; }
.page-header h1 { margin: 11px 0 9px; font-family: var(--font-display); font-size: var(--admin-page-title-size); font-weight: 400; line-height: 1.02; letter-spacing: .01em; }
.page-header p { max-width: 820px; margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.65; }
.header-actions { display: flex; align-items: center; gap: 9px; }
.copyable-url { display: flex; align-items: center; gap: 8px; color: var(--brand) !important; }
.stat-grid { display: grid; grid-template-columns: 1.35fr repeat(3,1fr); gap: var(--admin-grid-gap); margin: 0; }
.stat-grid article { position: relative; min-height: 150px; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: 23px; border: 1px solid rgba(255,255,255,.8); border-radius: 24px; background: rgba(255,255,255,.85); box-shadow: var(--shadow-sm); }
.stat-grid article:first-child { min-height: 185px; grid-row: span 1; background: var(--brand); color: #fff; }
.stat-grid article:first-child::after { content: ""; position: absolute; width: 150px; height: 150px; right: -70px; bottom: -75px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 30px rgba(255,255,255,.035); }
.stat-icon { width: 46px; height: 46px; border-radius: 15px; font-size: 1rem; }
.stat-grid article:first-child .stat-icon { background: rgba(255,255,255,.14); color: #fff; }
.stat-grid article > div { display: grid; gap: 4px; }
.stat-grid article span:not(.stat-icon) { color: var(--muted); font-size: .68rem; font-weight: 750; }
.stat-grid article:first-child span:not(.stat-icon) { color: rgba(255,255,255,.62); }
.stat-grid article strong { color: var(--ink); font-family: var(--font-display); font-size: clamp(2.2rem,3vw,3.5rem); font-weight: 400; line-height: 1; }
.stat-grid article:first-child strong { color: #fff; }
.stat-grid.compact { grid-template-columns: repeat(4,1fr); }
.stat-grid.compact article:first-child { min-height: 150px; }
.small-stat { font-family: var(--font-sans) !important; font-size: .95rem !important; font-weight: 800 !important; }
.dashboard-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--admin-grid-gap); }
.panel { width: 100%; min-width: 0; padding: var(--admin-panel-padding); border: var(--admin-surface-border); border-radius: var(--admin-surface-radius); background: var(--admin-surface-bg); box-shadow: var(--shadow-sm); }
.panel-header, .form-section-heading { display: flex; align-items: center; gap: 13px; }
.panel-header { justify-content: space-between; margin-bottom: 22px; }
.panel-header > div { display: flex; align-items: center; gap: 12px; }
:is(.panel-header, .form-section-heading) h2 { margin: 0 0 4px; font-size: 1rem; }
:is(.panel-header, .form-section-heading) p { margin: 0; color: var(--muted); font-size: .66rem; }
.panel-header > a { display: inline-flex; align-items: center; gap: 7px; color: var(--brand); font-size: .68rem; font-weight: 800; }
.simple-list { display: grid; }
:is(.simple-list > a, .static-row, .key-list article, .user-admin-card, .language-admin-card) { padding-block: 18px; border-bottom: 1px solid var(--line); }
:is(.simple-list > a, .static-row, .key-list article, .user-admin-card, .language-admin-card):last-child { border-bottom: 0; }
.simple-list > a, .static-row { min-width: 0; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 11px; }

.simple-list > a:hover strong { color: var(--brand); }
.simple-list div { min-width: 0; }
.simple-list strong, .simple-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.simple-list strong { color: var(--ink-soft); font-size: .74rem; }
.simple-list small { margin-top: 3px; color: var(--muted); font-size: .62rem; }
.simple-list > a > span:last-child, .static-row > span:last-child { color: var(--muted); font-size: .65rem; font-weight: 750; white-space: nowrap; }
.simple-list.ranked > a { grid-template-columns: 28px minmax(0,1fr) auto; }
.simple-list.ranked > a > b { color: var(--brand); font-family: var(--font-display); font-size: 1.2rem; font-weight: 400; }
.empty-state { min-height: 210px; display: grid; place-items: center; align-content: center; padding: 30px; color: var(--muted); text-align: center; }
.empty-state > i { margin-bottom: 14px; color: var(--muted-light); font-size: 1.8rem; }
.empty-state h2, .empty-state h3 { margin: 0 0 7px; font-size: 1rem; }
.empty-state p { max-width: 380px; margin: 0; color: var(--muted); font-size: .71rem; line-height: 1.55; }
.empty-state.large { min-height: 330px; }
.table-panel { padding: 0; overflow: hidden; }
.filter-bar { display: grid; grid-template-columns: minmax(260px,1fr) 190px auto; align-items: end; gap: var(--admin-grid-gap); padding: var(--admin-toolbar-padding); border-bottom: 1px solid var(--line); background: var(--surface-soft); }
.filter-bar .field { gap: 0; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 17px 20px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: middle; }
th { color: var(--muted); background: #fff; font-size: .64rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
td { color: var(--ink-soft); font-size: .7rem; }
tbody tr { transition: background var(--transition); }
tbody tr:hover { background: var(--brand-wash); }
tbody tr:last-child td { border-bottom: 0; }
.link-cell { display: grid; gap: 5px; min-width: 180px; }
.link-cell strong { color: var(--ink-soft); font-size: .72rem; }
.link-cell button { display: inline-flex; align-items: center; gap: 6px; width: fit-content; max-width: 240px; padding: 0; border: 0; background: transparent; color: var(--brand); font-size: .63rem; }
.link-cell button span, .destination { display: block; max-width: 270px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.destination { color: var(--muted); }
.destination:hover { color: var(--brand); }
.row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.row-actions form { display: inline-flex; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 20px; border-top: 1px solid var(--line); }
.pagination a { width: 37px; height: 37px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 11px; color: var(--muted); font-size: .7rem; font-weight: 750; }
.pagination a:hover, .pagination a.active { border-color: var(--brand); background: var(--brand); color: #fff; }
.settings-form { width: 100%; gap: 0; }
.settings-section { display: grid; grid-template-columns: minmax(240px,.58fr) minmax(0,1.42fr); align-items: start; gap: clamp(42px,4.5vw,72px); padding-block: clamp(48px,5vw,70px); border-bottom: 1px solid var(--line); }
.settings-section:first-child { padding-top: 8px; }
.settings-section:last-of-type { border-bottom: 0; }
.settings-copy { position: sticky; top: 28px; display: flex; align-items: flex-start; gap: 13px; }
.settings-copy h2 { margin: 0 0 7px; font-size: 1.08rem; }
.settings-copy p { max-width: 310px; margin: 0; color: var(--muted); font-size: .73rem; line-height: 1.72; }
.settings-stack, .settings-form-grid { width: 100%; min-width: 0; display: grid; grid-auto-rows: max-content; align-items: start; align-content: start; gap: 24px; }
.settings-form-grid.two, .settings-form-grid--site, .settings-form-grid--links, .settings-form-grid--qr, .settings-form-grid--security { grid-template-columns: repeat(2,minmax(0,1fr)); }
.settings-form-grid--single { grid-template-columns: minmax(0,1fr); }
.settings-form-grid > .field, .settings-form-grid > .field.span-two, .settings-form-grid.three > .field:last-child:nth-child(odd) { align-self: start; height: auto !important; min-height: 0; }
.settings-form-grid > .field.span-two { grid-column: 1 / -1; }
.settings-form-grid .field-card, .settings-stack > .field-card { display: grid; width: 100%; height: auto !important; min-height: 0; align-self: start; align-content: start; grid-template-rows: max-content max-content max-content; gap: 11px; padding: 21px 22px; border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.82); box-shadow: 0 12px 34px rgba(42,25,34,.035); }
.settings-form-grid .field-card > small, .settings-stack > .field-card > small { min-height: 0; margin-top: 0; color: var(--muted); font-size: .68rem; line-height: 1.62; }
.settings-form-grid :is(.input-control,.select-control,.color-control), .settings-stack :is(.input-control,.select-control,.color-control,.range-control) { min-height: 58px; }
.settings-form-grid .textarea-control { min-height: 136px; }
.settings-form-grid .textarea-control textarea { min-height: 134px; }
.settings-stack > .choice-row { width: 100%; min-height: 82px; padding: 20px 22px; }
.settings-save { margin-top: 18px; padding-top: 38px; border-top: 1px solid var(--line); }
.settings-save .button { min-width: 210px; }
.new-key-box { display: grid; grid-template-columns: 52px minmax(220px,.65fr) minmax(300px,1fr); align-items: center; gap: 17px; margin-bottom: 18px; padding: 22px; border: 1px solid #cfeadd; border-radius: 22px; background: var(--success-soft); }
.new-key-icon { width: 52px; height: 52px; border-radius: 17px; background: #fff; color: var(--success); }
.new-key-box strong { color: var(--success); font-size: .8rem; }
.new-key-box p { margin: 4px 0 0; color: #507764; font-size: .66rem; }
.key-list { display: grid; }
.key-list article { min-width: 0; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 12px; }

.key-list article > div:nth-child(2) { display: grid; min-width: 0; }
.key-list strong { font-size: .74rem; }
.key-list code { width: fit-content; margin-top: 4px; }
.key-list small { margin-top: 4px; overflow: hidden; color: var(--muted); font-size: .61rem; text-overflow: ellipsis; white-space: nowrap; }
.key-list article > div:last-child { display: grid; justify-items: end; gap: 8px; }
.api-grid { align-items: start; }
.code-panel { margin-top: 18px; }
.code-panel pre { margin: 0; overflow: auto; padding: 22px; border-radius: 18px; background: #1d151a; color: #e8dfe4; font-size: .71rem; line-height: 1.7; }
.code-panel code { padding: 0; background: transparent; color: inherit; }
.bar-chart { height: 260px; display: grid; grid-template-columns: repeat(30,minmax(4px,1fr)); align-items: end; gap: 5px; padding-top: 20px; }
.bar-column { height: 100%; display: grid; grid-template-rows: 1fr 20px; align-items: end; gap: 5px; }
.bar-fill { min-height: 3px; display: block; border-radius: 999px 999px 4px 4px; background: linear-gradient(180deg,var(--brand),#c76398); transition: opacity var(--transition), transform var(--transition); transform-origin: bottom; }
.bar-column:hover .bar-fill { opacity: .75; transform: scaleY(1.03); }
.bar-column > span:last-child { color: var(--muted-light); font-size: .52rem; text-align: center; }
.detail-panel { margin-top: 18px; }
.detail-panel dl { margin: 0; }
.detail-panel dl > div { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 20px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.detail-panel dl > div:last-child { border-bottom: 0; }
.detail-panel dt { color: var(--muted); font-size: .68rem; font-weight: 750; }
.detail-panel dd { min-width: 0; margin: 0; color: var(--ink-soft); font-size: .71rem; overflow-wrap: anywhere; }
.detail-panel dd a { color: var(--brand); }

/* Status pages */
.status-page { min-height: 100vh; display: grid; place-items: center; padding: 30px; background: radial-gradient(circle at 20% 10%,var(--brand-soft),transparent 35%),var(--canvas); }
.status-card { width: min(100%,540px); padding: 46px; border-radius: 34px; background: #fff; box-shadow: var(--shadow); text-align: center; }
.status-icon { width: 74px; height: 74px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 24px; background: var(--brand-soft); color: var(--brand); font-size: 1.7rem; }
.status-icon.danger { background: var(--danger-soft); color: var(--danger); }
.status-code { display: block; color: var(--brand); font-family: var(--font-display); font-size: 5rem; line-height: 1; }
.status-card h1 { margin: 8px 0 13px; font-family: var(--font-display); font-size: 2.4rem; font-weight: 400; }
.status-card p { margin-bottom: 24px; color: var(--muted); }

/* Responsive */

@media (max-width: 1320px) and (min-width: 981px) {
  .installer-shell { grid-template-columns: minmax(340px, 32vw) minmax(0,1fr); }
  .installer-aside { padding: 36px; }
  .installer-aside-copy h2 { font-size: clamp(3rem,4.4vw,4.25rem); }
  .installer-main { padding-inline: clamp(36px,5vw,68px); }
  .installer-content h1 { font-size: clamp(3.4rem,5.2vw,5rem); }
}
@media (max-width: 1180px) {
  .hero-section { grid-template-columns: 1fr 430px; gap: 45px; padding-inline: 40px; }
  .hero-copy h1 { font-size: clamp(3.35rem,5.7vw,5.7rem); }
  .admin-shell { grid-template-columns: 242px minmax(0,1fr); }
  .stat-grid { grid-template-columns: repeat(2,1fr); }
  .stat-grid article:first-child { grid-row: auto; }
  .stat-grid.compact { grid-template-columns: repeat(2,1fr); }
  .settings-section { grid-template-columns: 1fr; gap: 22px; }
}
@media (max-width: 980px) {
  .public-header, .public-footer, .feature-section { width: min(100% - 36px, 760px); }
  .hero-section { width: min(100% - 24px,760px); min-height: auto; grid-template-columns: 1fr; padding: 55px 34px 34px; border-radius: 38px; }
  .hero-copy { padding-left: 0; }
  .hero-copy h1 { max-width: 620px; font-size: clamp(3.35rem,10vw,5.6rem); line-height: 1.04; }
  .shortener-card { min-height: 440px; }
  .section-heading { grid-template-columns: 1fr; gap: 20px; }
  .feature-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .feature-grid article:first-child { grid-row: auto; grid-column: 1 / -1; min-height: 360px; }
  .feature-grid article:nth-child(2), .feature-grid article:nth-child(3), .feature-grid article:nth-child(4) { grid-column: auto; }
  .auth-shell { grid-template-columns: 1fr; }
  .auth-art { min-height: 340px; padding: 34px; }
  .auth-art-copy h2 { font-size: 3.8rem; }
  .auth-art-note { display: none; }
  .auth-form-wrap { padding: 45px 30px 60px; }
  .auth-card > .brand-lockup { margin-bottom: 48px; }
  .installer-shell { grid-template-columns: 1fr; }
  .installer-aside { min-height: auto; padding: 30px; }
  .installer-aside-copy { margin: 70px 0 35px; }
  .installer-aside-copy h2 { font-size: 3.4rem; }
  .installer-progress { grid-template-columns: repeat(4,1fr); }
  .installer-step { min-height: auto; grid-template-columns: 1fr; justify-items: center; gap: 6px; padding: 9px 4px; text-align: center; }
  .installer-main { min-height: auto; padding: 30px; }
  .installer-content { padding: 55px 0; }
  .admin-shell { display: block; padding: 0; }
  .admin-sidebar { position: fixed; z-index: 50; top: 12px; bottom: 12px; left: 12px; width: min(280px,calc(100vw - 42px)); height: auto; transform: translateX(calc(-100% - 24px)); transition: transform 220ms ease; }
  .sidebar-open .admin-sidebar { transform: translateX(0); }
  .sidebar-backdrop { position: fixed; z-index: 40; inset: 0; display: block; border: 0; background: rgba(23,13,19,.46); opacity: 0; pointer-events: none; transition: opacity 220ms ease; }
  .sidebar-open .sidebar-backdrop { opacity: 1; pointer-events: auto; }
  .admin-main { min-height: 100vh; padding: 0 24px 50px; border-radius: 0; }
  .mobile-admin-bar { min-height: 86px; display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; }
  .mobile-admin-bar .brand-copy { display: none; }
}
@media (max-width: 720px) {
  h1 { font-size: 2.8rem; }
  .public-header { min-height: 88px; }
  .public-header .brand-copy small { display: none; }
  .public-status { width: 43px; height: 43px; justify-content: center; padding: 0; }
  .public-status span, .public-status { font-size: 0; }
  .public-status i { font-size: .95rem; }
  .hero-section { padding: 45px 22px 22px; }
  .hero-copy h1 { font-size: clamp(3rem,14vw,4.8rem); line-height: 1.06; }
  .hero-copy > p { font-size: .95rem; }
  .hero-domain { flex-wrap: wrap; }
  .shortener-card { min-height: 400px; padding: 27px 22px; border-radius: 28px 28px 64px 28px; }
  .service-status { align-items: flex-start; flex-direction: column; }
  .feature-section { margin-block: 80px; }
  .section-heading h2 { font-size: 3.4rem; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-grid article:first-child, .feature-grid article:nth-child(2), .feature-grid article:nth-child(3), .feature-grid article:nth-child(4) { grid-column: auto; }
  .feature-grid article:first-child { min-height: 330px; }
  .site-footer { grid-template-columns: 1fr; align-items: start; gap: 18px; }
  .site-footer-service { justify-items: start; }
  .public-footer { min-height: 150px; }
  .auth-art { min-height: 290px; }
  .auth-art-copy h2 { font-size: 3.1rem; }
  .auth-form-wrap { padding-inline: 22px; }
  .installer-aside { padding: 24px; }
  .installer-aside-copy { margin-top: 55px; }
  .installer-aside-copy h2 { font-size: 3rem; }
  .installer-progress { gap: 3px; }
  .installer-step small { font-size: .57rem; }
  .installer-main { padding: 24px 22px; }
  .installer-main-header { justify-content: flex-start; }
  .installer-content h1 { font-size: 3.25rem; }
  .installer-title { display: block; }
  .installer-title .section-icon { margin-bottom: 18px; }
  .installer-info-card, .requirements-grid, .finish-details, .form-grid.two { grid-template-columns: 1fr; }
  .span-two { grid-column: auto; }
  .installer-actions.split { align-items: stretch; flex-direction: column-reverse; }
  .finish-actions { grid-template-columns: 1fr; }
  .installer-actions .button { width: 100%; }
  .page-header { align-items: flex-start; flex-direction: column; }
  .page-header h1 { font-size: 3.5rem; }
  .page-header > .button, .header-actions { width: 100%; }
  .header-actions .button { flex: 1; }
  .stat-grid, .stat-grid.compact, .dashboard-grid { grid-template-columns: 1fr; }
  .stat-grid article, .stat-grid article:first-child { min-height: 145px; }
  .filter-bar { grid-template-columns: 1fr; }
  .filter-bar .button { width: 100%; }
  .settings-section { padding-block: 24px; }
  .new-key-box { grid-template-columns: 46px minmax(0,1fr); }
  .new-key-box .copy-line { grid-column: 1 / -1; }
  .copy-line { flex-direction: column; }
  .copy-line button { min-height: 48px; }
  .detail-panel dl > div { grid-template-columns: 1fr; gap: 5px; }
  .bar-chart { gap: 3px; }
}
@media (max-width: 520px) {
  .public-header, .public-footer, .feature-section { width: calc(100% - 28px); }
  .site-footer-identity { align-items: flex-start; }
  .site-footer-legal { font-size: .65rem; }
  .hero-section { width: calc(100% - 12px); }
  .hero-points { display: grid; }
  .result-copy-line button { min-height: 48px; }
  .admin-main { padding-inline: 16px; }
  .panel { padding: 20px; border-radius: 22px; }
  .table-panel { padding: 0; }
  .form-actions { align-items: stretch; flex-direction: column-reverse; }
  .form-actions .button { width: 100%; }
  .row-actions { min-width: 132px; }
}

/* QR, kullanıcılar ve API dokümantasyonu */
.form-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.compact-section { padding-block: 26px; }
.admin-nav-label { margin: 22px 14px 2px; color: rgba(255,255,255,.34); font-size: .58rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.key-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 7px; color: var(--muted); font-size: .58rem; }
.key-meta i { color: var(--brand); }

.result-qr-preview { display: grid; place-items: center; padding: 7px; border-radius: 22px; background: #fff; box-shadow: 0 18px 38px rgba(0,0,0,.22); transition: transform var(--transition); }
.result-qr-preview:hover { transform: translateY(-3px) rotate(1deg); }
.result-qr-preview img { display: block; width: 100%; aspect-ratio: 1; border-radius: 15px; }

.user-admin-list { display: grid; }
.user-admin-card { display: grid; grid-template-columns: 52px minmax(0,1fr) auto auto; align-items: center; gap: 16px; }

.user-admin-avatar { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 18px; background: var(--brand-soft); color: var(--brand); font-size: 1.05rem; }
.user-admin-copy { display: grid; min-width: 0; gap: 4px; }
.user-admin-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.user-admin-title strong { font-size: .83rem; }
.user-admin-copy a { width: fit-content; max-width: 100%; overflow: hidden; color: var(--muted); font-size: .67rem; text-overflow: ellipsis; white-space: nowrap; }
.user-admin-copy small { color: var(--muted); font-size: .58rem; }
.user-admin-status { display: flex; justify-content: flex-end; }

.qr-admin-grid { display: grid; grid-template-columns: minmax(360px,.82fr) minmax(0,1.18fr); gap: var(--admin-grid-gap); align-items: start; }
.qr-preview-panel { overflow: hidden; }
.qr-preview-surface { display: grid; place-items: center; min-height: 430px; padding: clamp(24px,5vw,52px); border: 1px solid var(--line); border-radius: 25px; background: radial-gradient(circle at 30% 20%, var(--brand-soft), transparent 46%), #fbf9fa; }
.qr-preview-surface img { width: min(100%, 390px); aspect-ratio: 1; border-radius: 28px; box-shadow: 0 28px 70px rgba(67,27,48,.13); }
.qr-preview-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.qr-detail-panel { min-height: 100%; }
.qr-copy-line { margin-top: 24px; }

.api-docs-intro { display: grid; grid-template-columns: .55fr 1.45fr 1fr; gap: var(--admin-grid-gap); margin: 0; }
.api-docs-intro article { min-width: 0; display: flex; align-items: center; gap: 14px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.9); border-radius: 22px; background: rgba(255,255,255,.86); box-shadow: var(--shadow-sm); }
.api-docs-intro article > span { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 15px; background: var(--brand-soft); color: var(--brand); }
.api-docs-intro article > div { display: grid; min-width: 0; gap: 3px; }
.api-docs-intro small { color: var(--muted); font-size: .59rem; }
.api-docs-intro strong { overflow: hidden; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.api-docs-section { margin-bottom: 22px; }
.api-doc-block { display: grid; gap: 16px; }
.api-doc-block > p { margin: 0; color: var(--muted); line-height: 1.75; }
.api-endpoint-list { display: grid; gap: 18px; margin-bottom: 22px; }
.api-endpoint-card > header { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 18px; align-items: start; }
.api-endpoint-card h2 { margin: 0 0 7px; font-size: 1.12rem; }
.api-endpoint-card header p { margin: 0; color: var(--muted); line-height: 1.7; }
.http-method { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; padding: 0 12px; border-radius: 11px; font-size: .61rem; font-weight: 900; letter-spacing: .04em; }
.http-method.get { background: #e7f7ef; color: #14794f; }
.http-method.post { background: #eee9ff; color: #5b42b2; }
.http-method.patch { background: #fff3dc; color: #986217; }
.http-method.delete { background: #fff0f1; color: #b33442; }
.api-scope { width: fit-content; display: inline-flex; align-items: center; gap: 7px; margin: 18px 0 0 90px; padding: 8px 11px; border-radius: 10px; background: var(--brand-soft); color: var(--brand-dark); font-size: .62rem; font-weight: 700; }
.api-scope code { background: transparent; }
.api-example-url { min-width: 0; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 12px; margin-top: 18px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 16px; background: #fbf9fa; }
.api-example-url > span { color: var(--muted); font-size: .58rem; font-weight: 750; }
.api-example-url code { min-width: 0; overflow: hidden; color: var(--ink); font-size: .64rem; text-overflow: ellipsis; white-space: nowrap; }
.api-example-url button { min-height: 34px; display: inline-flex; align-items: center; gap: 7px; padding: 0 11px; border: 0; border-radius: 10px; background: var(--brand); color: #fff; font-size: .58rem; font-weight: 800; cursor: pointer; }
.api-endpoint-card pre, .api-docs-section pre { margin-top: 18px; }
.api-parameter-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 14px; }
.api-parameter-grid > div { display: grid; gap: 5px; padding: 12px; border-radius: 13px; background: var(--surface-alt); }
.api-parameter-grid code { width: fit-content; }
.api-parameter-grid span { color: var(--muted); font-size: .59rem; }
.api-doc-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.api-doc-columns h3 { margin: 0 0 8px; font-size: .78rem; }
.api-doc-columns pre { margin: 0; height: 100%; }
.api-error-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; margin-top: 16px; }
.api-error-grid span { padding: 11px 12px; border-radius: 12px; background: var(--surface-alt); color: var(--muted); font-size: .59rem; }
.api-error-grid code { margin-right: 5px; color: var(--brand); }

@media (max-width: 1180px) {
  .form-grid.three { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .form-grid.three > .field:last-child:nth-child(odd) { grid-column: 1 / -1; }
  .qr-admin-grid { grid-template-columns: 1fr; }
  .api-docs-intro { grid-template-columns: 1fr 1fr; }
  .api-docs-intro article:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .api-parameter-grid, .api-error-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .form-grid.three { grid-template-columns: 1fr; }
  .form-grid.three > .field:last-child:nth-child(odd) { grid-column: auto; }
  .result-qr-preview { width: 132px; justify-self: center; }
  .user-admin-card { grid-template-columns: 46px minmax(0,1fr) auto; }
  .user-admin-status { grid-column: 2; justify-content: flex-start; }
  .user-admin-card > .row-actions { grid-column: 3; grid-row: 1 / span 2; }
  .qr-preview-surface { min-height: 330px; }
  .qr-preview-actions { grid-template-columns: 1fr; }
  .api-docs-intro { grid-template-columns: 1fr; }
  .api-docs-intro article:nth-child(2) { grid-column: auto; grid-row: auto; }
  .api-endpoint-card > header { grid-template-columns: 1fr; }
  .http-method { width: fit-content; }
  .api-scope { margin-left: 0; }
  .api-example-url { grid-template-columns: 1fr; }
  .api-example-url button { width: 100%; justify-content: center; }
  .api-parameter-grid, .api-doc-columns, .api-error-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .user-admin-card { grid-template-columns: 44px minmax(0,1fr); }
  .user-admin-status, .user-admin-card > .row-actions { grid-column: 2; grid-row: auto; justify-content: flex-start; }
  .qr-preview-surface { min-height: 280px; padding: 20px; }
}

/* QR customizer and public result layout */
.range-control { display: flex; align-items: center; min-height: 56px; padding: 0 15px; border: 1px solid var(--line-strong); border-radius: 15px; background: #fff; box-shadow: 0 8px 24px rgba(32,20,27,.035); transition: border-color var(--transition), box-shadow var(--transition); }
.range-control:focus-within { border-color: rgba(var(--brand-rgb), .55); box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .09), 0 12px 28px rgba(30,20,26,.05); }
.range-control input[type="range"] { width: 100%; height: 24px; margin: 0; appearance: none; -webkit-appearance: none; background: transparent; cursor: pointer; }
.range-control input[type="range"]::-webkit-slider-runnable-track { height: 6px; border-radius: 999px; background: linear-gradient(90deg, var(--brand-soft), rgba(var(--brand-rgb), .28)); }
.range-control input[type="range"]::-webkit-slider-thumb { width: 20px; height: 20px; margin-top: -7px; border: 4px solid #fff; border-radius: 50%; appearance: none; -webkit-appearance: none; background: var(--brand); box-shadow: 0 3px 12px rgba(var(--brand-rgb), .3); }
.range-control input[type="range"]::-moz-range-track { height: 6px; border: 0; border-radius: 999px; background: linear-gradient(90deg, var(--brand-soft), rgba(var(--brand-rgb), .28)); }
.range-control input[type="range"]::-moz-range-thumb { width: 13px; height: 13px; border: 4px solid #fff; border-radius: 50%; background: var(--brand); box-shadow: 0 3px 12px rgba(var(--brand-rgb), .3); }
.qr-range-field output { color: var(--brand); font-size: .72rem; font-weight: 850; }

.qr-settings-section { align-items: start; }
.qr-settings-controls { min-width: 0; }
.qr-live-card { position: sticky; top: 28px; display: grid; gap: 16px; padding: 18px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(145deg, #fff, #fbf7f9); box-shadow: 0 24px 60px rgba(55,29,43,.08); }
.qr-live-card-header { display: grid; gap: 4px; }
.qr-live-card-header span { display: flex; align-items: center; gap: 8px; color: var(--ink); font-size: .78rem; font-weight: 850; }
.qr-live-card-header span i { color: var(--brand); }
.qr-live-card-header small,
.qr-live-card > p { margin: 0; color: var(--muted); font-size: .65rem; line-height: 1.55; }
.qr-live-canvas { display: grid; place-items: center; min-height: 300px; padding: 24px; overflow: hidden; border: 1px solid rgba(var(--brand-rgb), .1); border-radius: 20px; background: radial-gradient(circle at 30% 20%, var(--brand-soft), transparent 50%), #f8f5f7; }
.qr-live-canvas svg { display: block; width: min(100%, 310px); height: auto; filter: drop-shadow(0 18px 28px rgba(52,25,40,.12)); }

.result-with-qr { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; align-items: stretch; }
.result-with-qr > .result-status { display: flex; align-items: center; gap: 8px; margin: 0; color: #8ce0bd; font-size: .76rem; font-weight: 800; }
.result-copy-line { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; min-width: 0; }
.result-copy-line input { width: 100%; min-width: 0; }
.result-copy-line button { min-width: 118px; }
.result-with-qr .result-qr-preview { width: min(100%, 240px); justify-self: center; padding: 9px; border-radius: 25px; }
.result-with-qr .result-qr-preview img { border-radius: 18px; }
.result-action-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; width: 100%; }
.result-action-grid .button { width: 100%; min-width: 0; min-height: 52px; padding-inline: 12px; }
.shortener-card .result-action-grid .button.secondary { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.1); color: #fff; }
.shortener-card .result-action-grid .button.secondary:hover { background: rgba(255,255,255,.17); }
.shortener-card .result-action-grid .button.primary { background: #fff; color: var(--brand-dark); }

@media (max-width: 1180px) {
    .qr-live-card { position: relative; top: auto; }
  .qr-live-canvas { min-height: 270px; }
}

@media (max-width: 600px) {
  .qr-live-canvas { min-height: 230px; padding: 18px; }
  .result-copy-line { grid-template-columns: 1fr; }
  .result-copy-line button { min-height: 48px; }
  .result-action-grid { gap: 8px; }
  .result-action-grid .button { min-height: 54px; gap: 6px; padding-inline: 7px; font-size: .66rem; line-height: 1.15; }
}

@media (max-width: 1320px) and (min-width: 1181px) {
  .settings-section { grid-template-columns: minmax(210px,.48fr) minmax(0,1.52fr); gap: 34px; }
  .settings-form-grid--site, .settings-form-grid--links, .settings-form-grid--qr, .settings-form-grid--security { grid-template-columns: minmax(0,1fr); }
  .settings-form-grid > .field.span-two { grid-column: auto; }
}
@media (max-width: 1180px) {
  .settings-section { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .settings-copy { position: relative; top: auto; max-width: 760px; }
  .settings-copy p { max-width: 680px; }
}
@media (max-width: 760px) {
  .settings-section { gap: 22px; padding-block: 38px; }
  .settings-form-grid--site, .settings-form-grid--links, .settings-form-grid--qr, .settings-form-grid--security { grid-template-columns: minmax(0,1fr); }
  .settings-form-grid > .field.span-two { grid-column: auto; }
  .settings-form-grid .field-card, .settings-stack > .field-card { padding: 18px; }
  .settings-stack, .settings-form-grid { gap: 19px; }
}

/* Transparent QR preview */
.qr-transparency-choice {
  grid-column: 1 / -1;
}
.result-with-qr .result-qr-preview,
.result-qr-preview {
  padding: 14px;
  overflow: hidden;
  background: #fff;
}


/* Gerçek şeffaf QR ve form satırı yüksekliği düzeltmesi */
.input-control,
.select-control,
.color-control {
  height: 52px;
  flex: 0 0 auto;
}
.form-grid > .field,
.form-grid > label.field {
  align-self: start;
  align-content: start;
  height: fit-content !important;
}
.form-grid > .field > .input-control,
.form-grid > .field > .select-control,
.form-grid > .field > .color-control,
.form-grid > .field > .password-control {
  align-self: start;
}
.settings-copy--qr {
  display: grid;
  align-content: start;
  gap: 22px;
  width: 100%;
}
.settings-copy-heading {
  display: flex;
  align-items: flex-start;
  gap: 13px;
}
.settings-copy--qr .qr-live-card {
  position: relative;
  top: auto;
  width: 100%;
  gap: 13px;
  padding: 16px;
}
.settings-copy--qr .qr-live-card > p {
  max-width: none;
}
.settings-copy--qr .qr-live-canvas {
  min-height: 240px;
  padding: 14px;
}
.settings-copy--qr .qr-live-canvas svg {
  width: min(100%, 280px);
}
.qr-settings-section > .qr-settings-controls {
  width: 100%;
  min-width: 0;
}
.qr-settings-section.is-transparent .qr-live-canvas {
  background-color: #f7f4f6;
  background-image:
    linear-gradient(45deg, rgba(90,31,69,.08) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(90,31,69,.08) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(90,31,69,.08) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(90,31,69,.08) 75%);
  background-position: 0 0, 0 10px, 10px -10px, -10px 0;
  background-size: 20px 20px;
}
.qr-settings-section.is-transparent [data-qr-control="background"] {
  opacity: .56;
}
@media (max-width: 1180px) {
  .settings-copy--qr .qr-live-card {
    max-width: 560px;
  }
}
@media (max-width: 760px) {
  .settings-copy--qr .qr-live-card {
    max-width: none;
  }
  .settings-copy--qr .qr-live-canvas {
    min-height: 220px;
  }
}

/* Compact single-line footer and expanded feature grid */
.feature-grid {
  grid-template-rows: repeat(3, minmax(190px, auto));
}
.feature-grid article:nth-child(5) { grid-column: 1 / 2; }
.feature-grid article:nth-child(6) { grid-column: 2 / 3; }
.feature-grid article:nth-child(7) { grid-column: 3 / 4; }

.site-footer {
  gap: 24px;
  padding-block: 18px;
}
.site-footer-identity {
  gap: 11px;
}
.site-footer-logo {
  width: auto;
  height: auto;
  flex: 0 0 auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}
.site-footer-logo img {
  width: 22px;
  height: 22px;
}
.site-footer-legal,
.site-footer-service {
  margin: 0;
  min-width: 0;
  font-size: .67rem;
  line-height: 1.45;
}
.site-footer-legal {
  display: block;
  color: var(--muted);
}
.site-footer-company-short {
  display: none;
}
.site-footer-service {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--muted);
}
.site-footer-service::before {
  content: "·";
  color: var(--muted-light);
  order: 2;
}
.site-footer-service i { color: var(--success); }
.site-footer-service strong {
  order: 1;
  color: var(--ink-soft);
  font-weight: 850;
}
.site-footer-service i { order: 0; }
.site-footer-service span { order: 3; }
.public-footer { min-height: 88px; }

@media (max-width: 980px) {
  .feature-grid article:nth-child(n+2) { grid-column: auto; }
}

@media (max-width: 720px) {
  .site-footer {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 9px;
    padding-block: 16px;
    text-align: center;
  }
  .site-footer-identity {
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
  }
  .site-footer-legal {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    text-align: center;
    line-height: 1.4;
  }
  .site-footer-copyright,
  .site-footer-company-short,
  .site-footer-separator {
    display: none;
  }
  .site-footer-company-full {
    display: block;
    max-width: 34rem;
    text-align: center;
  }
  .site-footer-rights {
    display: block;
  }
  .site-footer-service {
    display: none;
  }
  .public-footer { min-height: auto; }
}

/* Multilingual header and stronger feature headings */
.feature-grid h3 {
  font-weight: 700;
}

.public-header {
  position: relative;
  z-index: 40;
}
.language-menu {
  position: relative;
  flex: 0 0 auto;
}
.language-menu summary {
  min-width: 164px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 16px;
  background: rgba(255,255,255,.7);
  color: var(--ink-soft);
  box-shadow: var(--shadow-sm);
  backdrop-filter: blur(18px);
  cursor: pointer;
  list-style: none;
  user-select: none;
  transition: border-color var(--transition), background var(--transition), transform var(--transition), box-shadow var(--transition);
}
.language-menu summary::-webkit-details-marker { display: none; }
.language-menu summary:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--brand) 30%, var(--line));
  background: rgba(255,255,255,.9);
  box-shadow: var(--shadow);
}
.language-menu summary:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--brand) 18%, transparent);
  outline-offset: 3px;
}
.language-menu summary > i:first-child {
  color: var(--brand);
  font-size: .94rem;
}
.language-menu summary > span {
  flex: 1;
  font-size: .75rem;
  font-weight: 800;
  white-space: nowrap;
}
.language-menu summary > small {
  color: var(--muted-light);
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .08em;
}
.language-menu-arrow {
  color: var(--muted-light);
  font-size: .68rem;
  transition: transform var(--transition);
}
.language-menu[open] .language-menu-arrow { transform: rotate(180deg); }
.language-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: 260px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 21px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 24px 70px rgba(64,27,47,.16);
  backdrop-filter: blur(22px);
  transform-origin: top right;
  animation: languageMenuIn .18s ease both;
}
.language-dropdown a {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 11px;
  padding: 9px 11px 9px 13px;
  border-radius: 14px;
  color: var(--ink-soft);
  text-decoration: none;
  transition: background var(--transition), color var(--transition);
}
.language-dropdown a:hover,
.language-dropdown a.active {
  background: var(--brand-soft);
  color: var(--brand);
}
.language-dropdown a > span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.language-dropdown strong {
  overflow: hidden;
  font-size: .76rem;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.language-dropdown small {
  color: var(--muted);
  font-size: .62rem;
}
.language-code {
  min-width: 34px;
  height: 26px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 9px;
  color: var(--muted);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.language-dropdown a.active .language-code {
  border-color: color-mix(in srgb, var(--brand) 25%, var(--line));
  color: var(--brand);
  background: #fff;
}
.language-dropdown > a > i {
  color: var(--brand);
  font-size: .72rem;
}
@keyframes languageMenuIn {
  from { opacity: 0; transform: translateY(-7px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@media (max-width: 620px) {
  .language-menu summary {
    min-width: 0;
    width: 46px;
    padding: 0;
    justify-content: center;
    border-radius: 15px;
  }
  .language-menu summary > span,
  .language-menu summary > small,
  .language-menu-arrow { display: none; }
  .language-dropdown {
    width: min(270px, calc(100vw - 28px));
  }
}
.language-dropdown a > span:first-child { align-content: center; }

/* URL tabanlı dil dizinleri ve tüm diller sayfası */
.language-dropdown {
  width: 296px;
  padding: 9px;
  overflow: hidden;
}
.language-dropdown-list {
  display: grid;
  gap: 7px;
  max-height: min(510px, calc(100vh - 190px));
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--brand) 30%, transparent) transparent;
}
.language-dropdown-list::-webkit-scrollbar { width: 7px; }
.language-dropdown-list::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: color-mix(in srgb, var(--brand) 30%, transparent);
  background-clip: padding-box;
}
.language-dropdown-list a {
  min-height: 56px;
}
.language-all-link {
  min-height: 52px !important;
  margin-top: 7px;
  border-top: 1px solid var(--line);
  border-radius: 0 0 14px 14px !important;
  background: #fff;
  color: var(--brand) !important;
  font-weight: 850;
}
.language-all-link > span {
  display: inline-flex !important;
  align-items: center;
  gap: 10px !important;
}
.language-all-link > span i { font-size: .9rem; }
.language-all-link > i { justify-self: end; }

.languages-page {
  width: min(100% - 48px, 1500px);
  margin-inline: auto;
  padding: 42px 0 92px;
}
.languages-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .7fr);
  gap: clamp(30px, 5vw, 84px);
  align-items: end;
  padding: clamp(38px, 6vw, 78px);
  border: 1px solid var(--line);
  border-radius: 40px;
  background:
    radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--brand-soft) 84%, transparent), transparent 34%),
    linear-gradient(145deg, #fff 0%, #fbf8fa 100%);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.languages-hero-copy {
  display: grid;
  align-content: end;
  gap: 19px;
}
.languages-back {
  width: max-content;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
  font-size: .74rem;
  font-weight: 800;
  text-decoration: none;
  transition: color var(--transition), transform var(--transition);
}
.languages-back:hover { color: var(--brand); transform: translateX(-3px); }
[dir="rtl"] .languages-back:hover { transform: translateX(3px); }
.languages-hero .hero-kicker { width: max-content; }
.languages-hero h1 {
  max-width: 760px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(3.25rem, 7vw, 6.8rem);
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1.02;
}
.languages-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(1rem, 1.35vw, 1.25rem);
  line-height: 1.75;
}
.languages-search-card {
  display: grid;
  gap: 22px;
  padding: 26px;
  border: 1px solid color-mix(in srgb, var(--brand) 12%, var(--line));
  border-radius: 28px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 22px 60px rgba(71,31,51,.08);
  backdrop-filter: blur(18px);
}
.languages-search-card .field { margin: 0; }
.languages-count {
  display: flex;
  align-items: baseline;
  gap: 11px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}
.languages-count strong {
  color: var(--brand);
  font-family: "Playfair Display", serif;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
}
.languages-count span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 750;
}
.languages-directory {
  margin-top: 42px;
  padding: clamp(30px, 5vw, 64px);
  border: 1px solid var(--line);
  border-radius: 38px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.languages-directory-heading {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(320px, .65fr);
  gap: 40px;
  align-items: end;
  margin-bottom: 34px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line);
}
.languages-directory-heading h2 {
  margin: 8px 0 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(2.3rem, 4vw, 4rem);
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1.08;
}
.languages-directory-heading p {
  margin: 0;
  color: var(--muted);
  line-height: 1.72;
}
.languages-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.language-card {
  min-width: 0;
  min-height: 94px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 13px;
  padding: 17px 18px;
  border: 1px solid var(--line);
  border-radius: 21px;
  background: #fff;
  color: var(--ink-soft);
  text-decoration: none;
  box-shadow: 0 10px 30px rgba(70,30,50,.035);
  transition: transform var(--transition), border-color var(--transition), background var(--transition), box-shadow var(--transition);
}
.language-card:hover,
.language-card.active {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--brand) 32%, var(--line));
  background: var(--brand-soft);
  box-shadow: 0 18px 42px rgba(70,30,50,.09);
}
.language-card-main {
  min-width: 0;
  display: grid;
  gap: 5px;
}
.language-card-main strong {
  overflow: hidden;
  font-size: .88rem;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.language-card-main small {
  overflow: hidden;
  color: var(--muted);
  font-size: .68rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.language-card-code {
  max-width: 72px;
  padding: 7px 9px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--muted);
  font-size: .62rem;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.language-card > i {
  color: var(--brand);
  font-size: .78rem;
}
.languages-empty {
  padding: 70px 24px;
  text-align: center;
}
.languages-empty > i {
  color: var(--brand);
  font-size: 2.3rem;
}
.languages-empty h3 {
  margin: 20px 0 8px;
  font-family: "Playfair Display", serif;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .01em;
}
.languages-empty p { margin: 0; color: var(--muted); }

@media (max-width: 1180px) {
  .languages-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 920px) {
  .languages-page { width: min(100% - 30px, 1500px); padding-top: 24px; }
  .languages-hero,
  .languages-directory-heading { grid-template-columns: 1fr; }
  .languages-search-card { max-width: 620px; }
  .languages-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .language-dropdown { width: min(300px, calc(100vw - 28px)); }
  .languages-page { width: min(100% - 22px, 1500px); }
  .languages-hero { padding: 28px 22px; border-radius: 29px; }
  .languages-hero h1 { font-size: clamp(2.8rem, 15vw, 4.5rem); }
  .languages-search-card { padding: 18px; border-radius: 22px; }
  .languages-directory { margin-top: 22px; padding: 25px 17px; border-radius: 28px; }
  .languages-grid { grid-template-columns: 1fr; }
  .language-card { min-height: 82px; }
}

/* SEO, sosyal paylaşım ve uygulama meta altyapısı */
.seo-foundation-notice {
  margin-bottom: 10px;
}
.seo-search-preview {
  display: grid;
  gap: 6px;
  width: 100%;
  margin-top: 22px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 12px 34px rgba(72,29,50,.055);
}
.seo-search-preview small {
  color: #4d7a54;
  font-size: .67rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.seo-search-preview strong {
  color: #2d4fa3;
  font-family: "Playfair Display", serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: .01em;
}
.seo-search-preview span {
  color: var(--muted);
  font-size: .7rem;
  line-height: 1.58;
}
.seo-asset-preview {
  width: 100%;
  margin-top: 22px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(72,29,50,.07);
}
.seo-asset-preview img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1200 / 630;
  object-fit: cover;
}
.manifest-icon-preview {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  margin-top: 22px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
}
.manifest-icon-preview img {
  width: 62px;
  height: 62px;
  border-radius: 18px;
  box-shadow: 0 10px 25px rgba(90,31,69,.15);
}
.manifest-icon-preview span {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.manifest-icon-preview strong {
  font-size: .85rem;
}
.manifest-icon-preview small {
  color: var(--muted);
  font-size: .66rem;
}
.meta-endpoint-list {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}
.meta-endpoint-list a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  color: var(--text);
  text-decoration: none;
  transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.meta-endpoint-list a:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb,var(--brand) 30%,var(--line));
  box-shadow: 0 12px 28px rgba(72,29,50,.07);
}
.meta-endpoint-list a > i {
  color: var(--brand);
  font-size: 1.1rem;
}
.meta-endpoint-list a span {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.meta-endpoint-list strong {
  font-size: .72rem;
}
.meta-endpoint-list small {
  overflow: hidden;
  color: var(--muted);
  font-size: .61rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 1180px) {
  .seo-search-preview,
  .seo-asset-preview,
  .manifest-icon-preview { max-width: 680px; }
}
@media (max-width: 760px) {
  .meta-endpoint-list { grid-template-columns: 1fr; }
  .seo-search-preview { margin-top: 16px; }
}

/* SEO ve Meta yönetim ekranı — açıklayıcı form ve önizleme düzeni */
.seo-settings-page .seo-settings-copy {
  display: grid;
  align-content: start;
  gap: 22px;
  width: 100%;
}
.seo-settings-page .seo-settings-copy .settings-copy-heading {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
}
.seo-settings-page .seo-settings-copy .settings-copy-heading > div {
  min-width: 0;
}
.seo-settings-page .seo-settings-copy .settings-copy-heading h2 {
  margin: 0 0 7px;
}
.seo-settings-page .seo-settings-copy .settings-copy-heading p {
  max-width: 320px;
}
.seo-settings-page .seo-settings-content {
  gap: 34px;
}
.seo-field-group {
  display: grid;
  gap: 22px;
  width: 100%;
  min-width: 0;
  padding-top: 34px;
  border-top: 1px solid var(--line);
}
.seo-field-group:first-child {
  padding-top: 0;
  border-top: 0;
}
.seo-field-group-heading {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
}
.seo-field-group-heading > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  border-radius: 13px;
  background: var(--brand-soft);
  color: var(--brand);
  font-size: .92rem;
}
.seo-field-group-heading > div {
  min-width: 0;
}
.seo-field-group-heading h3 {
  margin: 0 0 5px;
  color: var(--ink);
  font-size: .86rem;
  line-height: 1.35;
}
.seo-field-group-heading p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: .69rem;
  line-height: 1.65;
}
.seo-settings-page .field-card {
  gap: 12px;
}
.seo-settings-page .field-label {
  align-items: flex-start;
  line-height: 1.45;
}
.seo-settings-page .field-label > small {
  padding-top: 1px;
  color: var(--muted-light);
  font-size: .62rem;
  text-align: right;
  white-space: nowrap;
}
.seo-settings-page .field-card > small {
  max-width: 840px;
  color: var(--muted);
  font-size: .68rem;
  line-height: 1.65;
}
.seo-settings-page .textarea-control {
  width: 100%;
  min-height: 142px;
  overflow: hidden;
}
.seo-settings-page .textarea-control > i:first-child {
  padding-top: 18px;
}
.seo-settings-page .textarea-control textarea {
  min-height: 140px;
  padding: 16px 17px 16px 0;
  line-height: 1.7;
}
.seo-settings-page .textarea-control--code {
  min-height: 190px;
  background: #211a1e;
  border-color: #352a30;
  box-shadow: 0 14px 36px rgba(25,15,20,.12);
}
.seo-settings-page .textarea-control--code > i:first-child {
  color: #d9a9c5;
}
.seo-settings-page .textarea-control--code textarea {
  min-height: 188px;
  color: #f8edf3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: .7rem;
  tab-size: 2;
}
.seo-settings-page .textarea-control--code textarea::placeholder {
  color: #9f858f;
}
.seo-form-grid-balanced,
.seo-keyword-grid {
  align-items: start;
}
.seo-keyword-grid {
  grid-template-columns: minmax(220px, .82fr) minmax(0, 1.18fr);
}
.seo-settings-page .seo-search-preview,
.seo-settings-page .seo-asset-preview,
.seo-settings-page .manifest-icon-preview {
  width: 100%;
  max-width: none;
  margin-top: 0;
}
.seo-preview-caption {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.seo-preview-caption i {
  color: var(--brand);
}
.seo-search-preview {
  gap: 7px;
  padding: 18px 19px 20px;
}
.seo-search-preview strong,
.seo-search-preview span {
  overflow-wrap: anywhere;
}
.seo-asset-preview {
  display: grid;
  gap: 0;
  padding: 14px;
}
.seo-asset-preview .seo-preview-caption {
  padding: 1px 2px 12px;
}
.seo-asset-preview img {
  border-radius: 15px;
}
.manifest-icon-preview {
  padding: 16px;
}
.seo-field-group--endpoints {
  gap: 18px;
}
.seo-settings-page .meta-endpoint-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.seo-settings-page .meta-endpoint-list a {
  min-height: 78px;
}

@media (max-width: 1320px) and (min-width: 1181px) {
  .seo-form-grid-balanced,
  .seo-keyword-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 1180px) {
  .seo-settings-page .seo-settings-copy {
    max-width: 760px;
  }
  .seo-settings-page .seo-settings-copy .settings-copy-heading p {
    max-width: 680px;
  }
  .seo-settings-page .seo-search-preview,
  .seo-settings-page .seo-asset-preview,
  .seo-settings-page .manifest-icon-preview {
    max-width: 720px;
  }
}

@media (max-width: 820px) {
  .seo-form-grid-balanced,
  .seo-keyword-grid,
  .seo-settings-page .meta-endpoint-list {
    grid-template-columns: minmax(0, 1fr);
  }
  .seo-field-group {
    gap: 18px;
    padding-top: 28px;
  }
}

@media (max-width: 620px) {
  .seo-settings-page .seo-settings-content {
    gap: 28px;
  }
  .seo-field-group-heading > span {
    width: 35px;
    height: 35px;
    flex-basis: 35px;
    border-radius: 12px;
  }
  .seo-settings-page .field-label {
    display: grid;
    justify-content: start;
    gap: 4px;
  }
  .seo-settings-page .field-label > small {
    text-align: left;
    white-space: normal;
  }
  .seo-settings-page .textarea-control > i:first-child {
    width: 42px;
    flex-basis: 42px;
  }
  .seo-search-preview {
    padding: 16px;
  }
}

/* Language administration */
.button.disabled,
.button[aria-disabled="true"] { opacity: .5; pointer-events: none; transform: none; box-shadow: none; }
.language-permission-notice { margin-bottom: 24px; }
.language-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--admin-grid-gap); margin: 0; }
.language-summary-card { min-width: 0; display: flex; align-items: center; gap: 14px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.9); border-radius: 20px; background: rgba(255,255,255,.82); box-shadow: var(--shadow-sm); }
.language-summary-card > span { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 44px; border-radius: 15px; background: var(--brand-soft); color: var(--brand); font-size: 1rem; }
.language-summary-card > div { display: grid; gap: 2px; }
.language-summary-card strong { color: var(--ink); font-family: var(--font-display); font-size: 1.55rem; font-weight: 400; line-height: 1; }
.language-summary-card small { color: var(--muted); font-size: .64rem; }
.language-directory-header code { padding: 2px 6px; border-radius: 7px; background: var(--surface-soft); color: var(--brand); font-size: .62rem; }
.language-toolbar { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(190px, .38fr) auto; align-items: end; gap: var(--admin-grid-gap); margin-bottom: var(--admin-content-gap); padding: var(--admin-toolbar-padding); border: 1px solid var(--line); border-radius: var(--admin-toolbar-radius); background: var(--surface-soft); }
.language-toolbar-actions { display: flex; align-items: center; gap: 10px; }
.language-toolbar-actions .button { min-height: 52px; }
.language-admin-list { display: grid; }
.language-admin-card { display: grid; grid-template-columns: minmax(270px, 1.25fr) minmax(220px, .9fr) minmax(150px, .55fr) auto; align-items: center; gap: 24px; padding-inline: 4px; }

.language-admin-identity { min-width: 0; display: flex; align-items: center; gap: 14px; }
.language-code-mark { width: 54px; height: 54px; display: grid; place-items: center; flex: 0 0 54px; border-radius: 18px; background: var(--brand-soft); color: var(--brand); font-size: .78rem; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.language-admin-identity > div { min-width: 0; display: grid; gap: 5px; }
.language-admin-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.language-admin-title strong { color: var(--ink); font-size: .86rem; }
.language-admin-identity > div > span { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; color: var(--muted); font-size: .66rem; }
.language-admin-identity code { padding: 3px 7px; border-radius: 8px; background: var(--surface-soft); color: var(--brand); font-size: .58rem; }
.language-admin-progress { min-width: 0; display: grid; gap: 7px; }
.language-admin-progress > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: .62rem; }
.language-admin-progress > div strong { color: var(--ink-soft); font-size: .68rem; }
.language-progress-track { width: 100%; height: 7px; display: block; overflow: hidden; border-radius: 999px; background: #ece7ea; }
.language-progress-track i { height: 100%; display: block; border-radius: inherit; background: var(--brand); transition: width .25s ease; }
.language-admin-progress small { color: var(--muted); font-size: .58rem; }
.language-admin-meta { display: grid; justify-items: start; gap: 9px; }
.language-admin-meta small { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: .59rem; }
.language-admin-meta small i { color: var(--brand); }
.language-admin-actions form { display: contents; }
.compact-empty { padding-block: 35px; }

.language-editor-form { gap: 0; }
.language-completion-card { display: grid; gap: 10px; margin-top: 22px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.75); box-shadow: 0 10px 28px rgba(42,25,34,.035); }
.language-completion-card > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.language-completion-card > div span { color: var(--muted); font-size: .62rem; }
.language-completion-card > div strong { color: var(--brand); font-size: .82rem; }
.language-completion-card small { color: var(--muted); font-size: .6rem; line-height: 1.5; }
.language-completion-card small b { color: var(--ink-soft); }
.language-catalog-copy { display: grid; align-content: start; }
.language-catalog-stats { display: grid; gap: 8px; margin-top: 22px; }
.language-catalog-stats button { width: 100%; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.72); color: var(--ink-soft); text-align: left; transition: all var(--transition); }
.language-catalog-stats button:hover,
.language-catalog-stats button.active { border-color: rgba(var(--brand-rgb), .28); background: var(--brand-soft); color: var(--brand); box-shadow: inset 0 0 0 1px rgba(var(--brand-rgb), .06); }
.language-catalog-stats button i { color: var(--brand); }
.language-catalog-stats button span { min-width: 0; overflow: hidden; font-size: .62rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.language-catalog-stats button b { color: var(--muted); font-size: .6rem; }
.language-catalog-content { min-width: 0; display: grid; gap: 22px; }
.language-catalog-toolbar { position: sticky; top: 18px; z-index: 8; display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, .55fr); align-items: end; gap: 14px; padding: 15px; border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.94); box-shadow: 0 16px 42px rgba(42,25,34,.08); backdrop-filter: blur(18px); }
.language-missing-toggle { min-height: 52px; padding-block: 8px; }
.language-missing-toggle .choice-copy small { display: none; }
.translation-group-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.translation-group-tabs button { min-height: 38px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--muted); font-size: .63rem; font-weight: 800; transition: all var(--transition); }
.translation-group-tabs button:hover,
.translation-group-tabs button.active { border-color: rgba(var(--brand-rgb), .25); background: var(--brand-soft); color: var(--brand); }
.translation-group-tabs button b { min-width: 21px; min-height: 21px; display: inline-grid; place-items: center; padding: 0 5px; border-radius: 999px; background: rgba(var(--brand-rgb), .09); font-size: .56rem; }
.translation-catalog-list { display: grid; gap: 26px; }
.translation-group { display: grid; gap: 14px; }
.translation-group > header { display: flex; align-items: center; gap: 12px; padding: 0 3px; }
.translation-group > header > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 38px; border-radius: 13px; background: var(--brand-soft); color: var(--brand); }
.translation-group > header h3 { margin: 0 0 3px; font-size: .84rem; }
.translation-group > header p { margin: 0; color: var(--muted); font-size: .61rem; }
.translation-rows { display: grid; gap: 13px; }
.translation-row { min-width: 0; display: grid; grid-template-columns: minmax(180px, .7fr) minmax(220px, 1fr) minmax(260px, 1.25fr); align-items: start; gap: 16px; padding: 17px; border: 1px solid var(--line); border-radius: 19px; background: rgba(255,255,255,.8); box-shadow: 0 10px 30px rgba(42,25,34,.03); }
.translation-row.is-missing { border-color: rgba(174,118,13,.22); background: rgba(255,249,231,.52); }
.translation-row-meta { min-width: 0; display: grid; justify-items: start; gap: 9px; }
.translation-row-meta code { max-width: 100%; padding: 6px 8px; overflow-wrap: anywhere; border-radius: 9px; background: var(--surface-soft); color: var(--brand); font-size: .58rem; line-height: 1.5; }
.translation-source { min-width: 0; display: grid; gap: 7px; }
.translation-source > span { color: var(--muted-light); font-size: .58rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.translation-source p { margin: 0; color: var(--ink-soft); font-size: .68rem; line-height: 1.65; overflow-wrap: anywhere; }
.translation-value { gap: 7px; }
.translation-value .textarea-control { min-height: 82px; }
.translation-value .textarea-control > i:first-child { padding-top: 15px; }
.translation-value textarea { min-height: 80px; padding-top: 13px; padding-bottom: 13px; font-size: .69rem; line-height: 1.55; }
.language-generated-files { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.language-generated-files article { min-width: 0; display: flex; align-items: center; gap: 13px; padding: 17px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.78); }
.language-generated-files article > i { width: 40px; height: 40px; display: grid; place-items: center; flex: 0 0 40px; border-radius: 13px; background: var(--brand-soft); color: var(--brand); }
.language-generated-files article > div { min-width: 0; display: grid; gap: 4px; }
.language-generated-files strong { font-size: .72rem; }
.language-generated-files span { color: var(--muted); font-size: .62rem; line-height: 1.5; }

@media (max-width: 1280px) {
  .language-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .language-admin-card { grid-template-columns: minmax(260px, 1fr) minmax(200px, .8fr) auto; }
  .language-admin-meta { grid-column: 2; }
  .language-admin-actions { grid-column: 3; grid-row: 1 / span 2; }
  .translation-row { grid-template-columns: minmax(170px, .65fr) minmax(0, 1.35fr); }
  .translation-value { grid-column: 1 / -1; }
}
@media (max-width: 1080px) {
  .language-catalog-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .language-catalog-toolbar { top: 10px; }
}
@media (max-width: 860px) {
  .language-toolbar { grid-template-columns: minmax(0, 1fr); }
  .language-toolbar-actions { width: 100%; }
  .language-toolbar-actions .button { flex: 1; }
  .language-admin-card { grid-template-columns: minmax(0, 1fr) auto; gap: 16px; }
  .language-admin-progress,
  .language-admin-meta { grid-column: 1; }
  .language-admin-actions { grid-column: 2; grid-row: 1 / span 3; }
  .language-catalog-toolbar { position: relative; top: auto; grid-template-columns: minmax(0, 1fr); }
  .translation-row { grid-template-columns: minmax(0, 1fr); }
  .translation-value { grid-column: auto; }
}
@media (max-width: 620px) {
  .language-summary-grid { grid-template-columns: minmax(0, 1fr); }
  .language-directory-panel,
  .language-editor-panel { padding: 20px; }
  .language-admin-card { grid-template-columns: minmax(0, 1fr); }
  .language-admin-actions { grid-column: 1; grid-row: auto; }
  .language-catalog-stats,
  .language-generated-files { grid-template-columns: minmax(0, 1fr); }
  .translation-group-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .translation-group-tabs button { width: 100%; justify-content: center; }
}

/* Dil editörü: başlık/ilerleme yerleşimi ve güvenilir filtre görünürlüğü */
.language-meta-copy {
  display: grid;
  align-content: start;
  gap: 22px;
  width: 100%;
}
.language-meta-copy .settings-copy-heading {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
}
.language-meta-copy .settings-copy-heading > div {
  min-width: 0;
}
.language-meta-copy .language-completion-card {
  width: 100%;
  margin-top: 0;
}
.translation-row.is-filtered-out,
.translation-group.is-filtered-out {
  display: none !important;
}


/* Kısa bağlantı sonucu: güvenli indirme ve yeni işlem akışı */
.is-hidden { display: none !important; }
.result-action-grid > * { position: relative; z-index: 1; pointer-events: auto; }
.new-short-url-button {
  width: 100%;
  min-height: 50px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.07);
  color: #fff;
}
.new-short-url-button:hover {
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.14);
}


/* Global admin header action row */
.page-header-kicker-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}
.header-back-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  flex: 0 0 auto;
  color: var(--brand);
  font-size: .69rem;
  font-weight: 850;
  letter-spacing: .01em;
  transition: gap var(--transition), color var(--transition);
}
.header-back-link:hover { gap: 13px; color: var(--brand-dark); }

@media (max-width: 720px) {
  .page-header-kicker-row { align-items: flex-start; flex-direction: column; gap: 12px; }
  .header-back-link { min-height: 38px; }
}


/* Admin responsive tokens */
@media (max-width: 980px) {
  :root {
    --admin-content-padding-inline: 24px;
    --admin-content-padding-top: 0px;
    --admin-content-padding-bottom: 50px;
    --admin-page-title-size: clamp(3rem, 8vw, 4.2rem);
    --admin-panel-padding: 26px;
  }
}
@media (max-width: 720px) {
  :root {
    --admin-content-padding-inline: 16px;
    --admin-panel-padding: 20px;
  }
  .page-header { gap: 18px; }
  .page-header h1 { font-size: var(--admin-page-title-size); }
}


/* Button labels are cased by the locale-aware JavaScript helper. */
button:not(.icon-button):not(.field-action):not(.sidebar-backdrop),
a.button,
.button-link,
.result-copy-line button,
.copy-line button {
  text-transform: none;
}
