/* Zeyru: Nova teması üzerine küçük eklemeler (React sürümüne özel) */
.pn-body, .as-body { min-height: 100dvh; }
.logo-word { font-family: var(--font-display); }
.z-center { display: grid; place-items: center; min-height: 60vh; color: var(--text-muted); font-size: 14px; }
.z-spin { width: 1.4rem; height: 1.4rem; animation: z-rot .8s linear infinite; }
@keyframes z-rot { to { transform: rotate(360deg); } }
.z-empty { padding: 1.6rem 1rem; text-align: center; color: var(--text-muted); font-size: 13.5px; }
.z-empty svg { display: block; width: 1.6rem; height: 1.6rem; margin: 0 auto .5rem; opacity: .6; }
.qr img { display: block; width: 100%; height: 100%; border-radius: 12px; background: #fff; }
.codes code.is-used { text-decoration: line-through; opacity: .45; }
.af-alert a { font-weight: 600; text-decoration: underline; }
.z-err { margin-top: .5rem; font-size: 13px; font-style: normal; color: var(--danger, #d4483b); }

/* Bildirim kutusu */
.z-toast { position: fixed; left: 50%; bottom: calc(1.25rem + env(safe-area-inset-bottom)); z-index: 400; display: flex; align-items: center; gap: .55rem; max-width: min(92vw, 30rem); padding: .75rem 1rem; border-radius: 14px; font-size: 14px; font-weight: 500; color: #fff; background: var(--navy-900, #0b2a3c); box-shadow: 0 18px 40px -16px rgb(2 12 24 / .55); transform: translate(-50%, 0); animation: z-toast-in .35s cubic-bezier(.32,.72,0,1); }
.z-toast[hidden] { display: none; }
.z-toast.is-err { background: #b42318; }
.z-toast svg { width: 1.1rem; height: 1.1rem; flex-shrink: 0; }
@keyframes z-toast-in { from { opacity: 0; transform: translate(-50%, 12px); } }
@media (max-width: 1023px) { .z-toast { bottom: calc(5.4rem + env(safe-area-inset-bottom)); } }
.z-err-box { display: inline-flex; align-items: center; gap: .5rem; color: var(--danger, #d4483b); }
.z-err-box svg { width: 1.1rem; height: 1.1rem; }

/* Tablolar ve formlar */
.ptable td .t-sub { display: block; font-size: 12px; color: var(--text-muted); }
.z-warn-txt { color: var(--warn); font-weight: 600; }
.z-danger-txt { color: var(--danger, #d4483b); font-weight: 600; }
.z-row { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.z-grid2 { display: grid; gap: .9rem; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); }
.z-secret { display: inline-flex; align-items: center; gap: .4rem; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; padding: .25rem .55rem; border-radius: 8px; background: var(--pn-bg); box-shadow: inset 0 0 0 1px var(--border); }
.z-mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; letter-spacing: .02em; }
.z-note { padding: .8rem .95rem; border-radius: 14px; font-size: 13.5px; line-height: 1.6; color: var(--text-soft); background: var(--pn-bg); box-shadow: inset 0 0 0 1px var(--border); }
.z-note b { color: var(--text); }
.z-note.is-warn { background: var(--warn-soft); box-shadow: none; }
.z-pager { display: flex; justify-content: space-between; align-items: center; margin-top: 1rem; font-size: 13px; color: var(--text-muted); }
.mf-field select, .mf-field textarea { width: 100%; padding: .75rem .95rem; border: 0; border-radius: 14px; font: inherit; font-size: 14.5px; color: var(--text); background: var(--surface); box-shadow: inset 0 0 0 1px var(--border-strong, var(--border)); outline: 0; }
.mf-field select:focus, .mf-field textarea:focus { box-shadow: inset 0 0 0 1.5px var(--hl), 0 0 0 4px rgb(12 90 130 / .12); }
/* Tema yalnızca type özniteliği olan inputları biçimlendiriyor: türsüz, tarih, tablo/liste içi alanlar da aynı görünsün */
.pform .mf-field input:not([type]), .pform .mf-field input[type="date"], .mf .mf-field input:not([type]),
.ptable td input:not([type="checkbox"]), .rows input:not([type="checkbox"]), .rows select, .ptool select {
  width: 100%; padding: .6rem .8rem; border: 0; border-radius: 12px; font: inherit; font-size: 14px; color: var(--text);
  background: var(--surface); box-shadow: inset 0 0 0 1px var(--border-strong, var(--border)); outline: 0;
}
.pform .mf-field input:not([type]):focus, .pform .mf-field input[type="date"]:focus, .ptable td input:focus, .rows input:focus, .rows select:focus, .ptool select:focus { box-shadow: inset 0 0 0 1.5px var(--hl), 0 0 0 4px rgb(12 90 130 / .12); }
.card-head h2 svg { display: inline-block; width: 18px; height: 18px; margin-right: .35rem; vertical-align: -3px; }
.ptool { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; }
.ptool .psearch { flex: 1 1 16rem; }
.msg.is-internal .msg-box { background: var(--warn-soft); }
.msg-body { white-space: pre-wrap; overflow-wrap: anywhere; }
.odom-list .is-taken { opacity: .55; }
.z-cart { display: grid; gap: .5rem; }
.z-cart li { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: .6rem; align-items: center; font-size: 13.5px; }
.z-cart li small { display: block; color: var(--text-muted); font-size: 12px; }
.z-cart li b { font-variant-numeric: tabular-nums; }
.z-cart button { width: 1.8rem; height: 1.8rem; display: grid; place-items: center; border-radius: 8px; color: var(--text-muted); }
.z-cart button:hover { color: var(--danger, #d4483b); background: var(--hover); }
.z-cart svg { width: .95rem; height: .95rem; }
@media print {
  .sb, .tb, .mbar, .ph-acts, .side-stack:not(.inv-keep), .pn-foot, .z-noprint, .notice { display: none !important; }
  .cols-main { display: block !important; }
}

/* Dil: EN sözlüğü yüklenene kadar Türkçe parlamasın (locale.js, en fazla 1,5 sn) */
html.i18n-wait body{opacity:0}
.tb-locale .locale-menu{z-index:60}

.locale-note{margin:.6rem 0 0;font-size:.72rem;line-height:1.35;color:var(--text-muted);max-width:15rem}

/* Giriş/kayıt: oturum kontrolü sürerken form görünmez (GuestGuard) */
html.auth-check .as-main>*{visibility:hidden}

/* Temanın örnek QR'ındaki orta beyaz kutu gerçek QR'yi kapatıyordu (okunmuyordu) */
.qr::after{content:none;display:none}
.qr{background-image:none}


/* ===== Ürün yönetimi (yönetim paneli) ===== */
.z-code { font-family: var(--font-mono, ui-monospace, monospace); font-size: 12.5px; padding: .1rem .4rem; border-radius: 6px; background: var(--hover, rgb(12 90 130 / .06)); color: var(--text); word-break: break-all; }
.ptable .t-check { width: 2.4rem; }
.ptable .t-check input { width: 1rem; height: 1rem; accent-color: var(--hl); }
.ptable tr.is-off td:not(.t-check):not(.t-act) { opacity: .6; }
.z-form-wide { max-width: 62rem; }
.z-frow { display: grid; grid-template-columns: minmax(0, 17rem) minmax(0, 1fr); gap: .5rem 2rem; align-items: start; padding: 1rem 0; border-bottom: 1px dashed var(--border); }
.z-frow:last-of-type { border-bottom: 0; }
.z-flabel { display: grid; gap: .2rem; padding-top: .55rem; text-align: right; }
.z-flabel b { font-size: 14px; color: var(--text); }
.z-flabel small { font-size: 12.5px; line-height: 1.45; color: var(--text-muted); }
.z-fval { min-width: 0; }
.z-fval > input, .z-fval > textarea, .z-frow > input { width: 100%; }
@media (max-width: 760px) { .z-frow { grid-template-columns: 1fr; } .z-flabel { text-align: left; padding-top: 0; } }
.z-factions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .8rem; margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid var(--border); }
.z-factions .mf-err { margin-right: auto; }
.z-pick { display: grid; gap: .7rem; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); }
.z-pick-opt { display: flex; align-items: center; gap: .8rem; padding: .9rem 1rem; border: 0; border-radius: 14px; text-align: left; cursor: pointer; color: var(--text); background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); transition: box-shadow .3s var(--ui-spring), background-color .3s; }
.z-pick-opt:hover { box-shadow: inset 0 0 0 1px var(--border-strong, var(--text-faint)); }
.z-pick-opt[aria-pressed="true"] { background: rgb(12 90 130 / .06); box-shadow: inset 0 0 0 1.5px var(--hl), 0 0 0 4px rgb(12 90 130 / .1); }
.z-pick-opt b { display: block; font-size: 14.5px; }
.z-pick-opt small { font-size: 12.5px; color: var(--text-muted); }
.z-pick-ico { width: 2.4rem; height: 2.4rem; flex-shrink: 0; display: grid; place-items: center; border-radius: 11px; color: var(--hl); background: rgb(12 90 130 / .1); }
.z-pick-ico svg { width: 1.1rem; height: 1.1rem; }
.z-kpis { display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); margin-bottom: .6rem; }
.z-kpis > div { display: grid; gap: .3rem; padding: .85rem 1rem; border-radius: 14px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); }
.z-kpis small { font-size: 12px; color: var(--text-muted); }
.z-kpis b { font-family: var(--font-display); font-size: 1.35rem; color: var(--text); }
.z-subh { margin: 1.4rem 0 .6rem; font-size: 15px; color: var(--text); }
.z-radios, .z-checks { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; padding-top: .45rem; }
.z-radios { flex-direction: column; }
.z-linklist { display: grid; gap: .5rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr)); }
.z-linklist.is-compact { grid-template-columns: repeat(auto-fill, minmax(min(100%, 13rem), 1fr)); max-height: 14rem; overflow-y: auto; padding: .2rem; }
.z-linkitem { display: flex; align-items: flex-start; gap: .65rem; padding: .7rem .8rem; border-radius: 12px; cursor: pointer; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); transition: box-shadow .25s; }
.z-linkitem:has(input:checked) { box-shadow: inset 0 0 0 1.5px var(--hl); background: rgb(12 90 130 / .05); }
.z-linkitem input { margin-top: .2rem; accent-color: var(--hl); }
.z-linkitem b { display: block; font-size: 14px; color: var(--text); }
.z-linkitem small { font-size: 12px; color: var(--text-muted); }
.z-guide { padding: .75rem 1rem; border-radius: 12px; background: rgb(12 90 130 / .05); box-shadow: inset 0 0 0 1px var(--border); }
.z-guide summary { display: flex; align-items: center; gap: .45rem; cursor: pointer; font-weight: 600; font-size: 14px; color: var(--text); }
.z-guide summary svg { width: 1rem; height: 1rem; color: var(--hl); }
.z-guide p { margin: .6rem 0 0; font-size: 13px; line-height: 1.55; color: var(--text-soft); }
.z-meter { display: block; width: 100%; max-width: 9rem; height: .4rem; border-radius: 99px; overflow: hidden; background: var(--hover, rgb(12 90 130 / .08)); }
.z-meter i { display: block; height: 100%; border-radius: inherit; background: var(--ok, #10b981); }
.z-meter i.is-warn { background: var(--warn, #f59e0b); }
.z-meter i.is-danger { background: var(--danger, #dc2626); }
.z-scroll { overflow-x: auto; }
.z-tld input:not([type="checkbox"]) { min-width: 5.5rem; }
.z-tld input[type="date"] { min-width: 8.5rem; }
.z-whois { margin-top: 1.2rem; }
.z-whois-head { display: flex; align-items: center; gap: .8rem; padding: 1rem 1.1rem; border-radius: 14px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); }
.z-whois-head svg { width: 1.6rem; height: 1.6rem; color: var(--text-muted); }
.z-whois-head.is-ok svg { color: var(--ok, #10b981); }
.z-whois-head.is-taken svg { color: var(--danger, #dc2626); }
.z-whois-head b { display: block; font-size: 16px; color: var(--text); }
.z-whois-head small { font-size: 12.5px; color: var(--text-muted); }
.z-dl { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: .55rem 1.2rem; margin: 1rem 0 0; font-size: 14px; }
.z-dl dt { color: var(--text-muted); }
.z-dl dd { margin: 0; color: var(--text); }
.z-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.sb-subsec { margin: .55rem 0 .2rem; padding-left: 2.6rem; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--text-faint, var(--text-muted)); }
.sb-subsec:first-child { margin-top: .2rem; }