/* Dizin: assets/hesabim.css — KOZA Hesabım
   Kimlik: lacivert #0B1220, kobalt #2563EB, açık mavi #60A5FA. Yazı: Onest (tek aile, değişken kalınlık).
   Tek "gösterişli" öğe: Özet'te lacivert bant içindeki karşılama ve kırpılmış dev amblem. Gerisi sade. */

@font-face { font-family: "Onest"; font-style: normal; font-display: swap; font-weight: 300 800;
  src: url("fonts/onest-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Onest"; font-style: normal; font-display: swap; font-weight: 300 800;
  src: url("fonts/onest-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD, U+20BA; }

:root {
  --pt-ink: #0B1220;
  --pt-navy: #101B31;
  --pt-navy-2: #17253F;
  --pt-accent: #2563EB;
  --pt-accent-d: #1D4FD0;
  --pt-sky: #60A5FA;
  --pt-bg: #F3F5F9;
  --pt-surface: #FFFFFF;
  --pt-line: #E1E6EE;
  --pt-line-2: #EDF0F5;
  --pt-text: #16203A;
  --pt-muted: #5E6880;
  --pt-ok: #157F4C;  --pt-ok-bg: #E6F5EC;
  --pt-warn: #9A5B00; --pt-warn-bg: #FFF3DC;
  --pt-bad: #B42318;  --pt-bad-bg: #FDECEA;
  --pt-info: #1D4FD0; --pt-info-bg: #E8F0FE;
  --pt-radius: 14px;
  --pt-ring: 0 0 0 3px rgba(37, 99, 235, .32);
  --bs-body-font-family: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bs-primary: #2563EB; --bs-primary-rgb: 37, 99, 235;
  --bs-link-color: #1D4FD0; --bs-link-color-rgb: 29, 79, 208; --bs-link-hover-color: #0B1220;
  --bs-border-color: #E1E6EE;
}

html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--pt-bg); color: var(--pt-text); font-family: var(--bs-body-font-family); font-size: 16px; line-height: 1.5;
  font-feature-settings: "ss01"; -webkit-font-smoothing: antialiased; }
h1, h2, h3, .h4, .h5 { color: var(--pt-ink); letter-spacing: -.01em; }
.pt-wrap { max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.pt-muted { color: var(--pt-muted); }
.text-end, .pt-num { font-variant-numeric: tabular-nums; }
a { text-underline-offset: 3px; }
:focus-visible { outline: none; box-shadow: var(--pt-ring) !important; border-radius: 8px; }
.pt-skip { position: absolute; left: 12px; top: 8px; z-index: 100; background: #fff; padding: 8px 12px; border-radius: 8px; }

/* ---------- üst bant ---------- */
.pt-top { background: var(--pt-ink); color: #fff; position: relative; overflow: hidden; }
.pt-bar { display: flex; align-items: center; gap: 12px; min-height: 64px; position: relative; z-index: 2; }
.pt-home { text-decoration: none; }
.pt-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; }
.pt-brand .pt-amblem { width: 30px; height: 32px; flex: 0 0 auto; }
.pt-word { display: inline-flex; align-items: baseline; gap: 8px; font-size: 19px; line-height: 1; }
.pt-word strong { font-weight: 800; letter-spacing: -.02em; }
.pt-brand-sub { font-weight: 400; color: #B9C6DC; }
.pt-brand-light, .pt-brand-light .pt-brand-sub { color: var(--pt-ink); }
.pt-brand-light .pt-brand-sub { color: var(--pt-muted); }
.pt-acc-switch { color: #DCE5F4; text-decoration: none; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: 6px 14px; display: inline-flex; align-items: center; gap: 8px; max-width: 46vw; min-height: 42px; font-size: 15px; font-weight: 500; }
a.pt-acc-switch:hover { color: #fff; border-color: rgba(255,255,255,.42); background: rgba(255,255,255,.04); }
.pt-acc-static { border-color: transparent; padding-left: 4px; }
.pt-acc-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pt-icon-btn { color: #C9D4E6; width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; font-size: 19px; text-decoration: none; }
.pt-icon-btn:hover, .pt-icon-btn.active { color: #fff; background: rgba(255,255,255,.1); }

/* Özet karşılaması (bant içinde) */
.pt-hero { position: relative; z-index: 2; padding-top: 18px; padding-bottom: 30px; }
.pt-hero h1 { color: #fff; font-size: clamp(28px, 4.4vw, 40px); font-weight: 700; letter-spacing: -.025em; margin: 0 0 6px; }
.pt-hero p { color: #AEBBD3; margin: 0; font-size: 17px; }
.pt-hero-mark { position: absolute; right: -60px; top: -40px; width: 380px; height: 400px; opacity: .09; z-index: 1; pointer-events: none; }
.pt-hero-mark path:last-child { fill: #60A5FA; }
.has-hero .pt-top { background: linear-gradient(180deg, var(--pt-ink) 0%, var(--pt-navy) 100%); }

/* menü */
.pt-nav { position: relative; z-index: 2; border-top: 1px solid rgba(255,255,255,.07); }
.pt-nav-in { display: flex; gap: 4px; }
.pt-nav a { color: #A9B6CD; text-decoration: none; padding: 14px 14px 13px; display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 15px; position: relative; }
.pt-nav a i { font-size: 17px; }
.pt-nav a:hover { color: #fff; }
.pt-nav a.active { color: #fff; }
.pt-nav a.active::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--pt-sky); }

/* ---------- içerik ---------- */
.pt-main { padding-top: 26px; padding-bottom: 96px; }
.pt-main > h1, .pt-main .h4 { font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
.pt-alert { border-radius: 12px; border: 0; padding: 12px 16px; font-weight: 500; }
.alert-success { background: var(--pt-ok-bg); color: var(--pt-ok); }
.alert-danger { background: var(--pt-bad-bg); color: var(--pt-bad); }
.alert-warning { background: var(--pt-warn-bg); color: var(--pt-warn); }
.alert-info { background: var(--pt-info-bg); color: var(--pt-info); }
.alert-secondary { background: var(--pt-line-2); color: var(--pt-muted); }
.alert { border: 0; border-radius: 12px; }

.pt-card { background: var(--pt-surface); border: 1px solid var(--pt-line); border-radius: var(--pt-radius); padding: 20px 22px; margin-bottom: 18px; }
.pt-card h2 { font-size: 17px; font-weight: 650; margin: 0 0 14px; display: flex; align-items: center; gap: 10px; color: var(--pt-ink); }
.pt-card h2 > i { color: var(--pt-accent) !important; font-size: 18px; }
.pt-card h2 a { font-size: 14px; font-weight: 500; text-decoration: none; }

/* özet sayıları: tek yüzey, ince ayraçlı */
.pt-stat { background: var(--pt-surface); border: 1px solid var(--pt-line); border-radius: var(--pt-radius); padding: 16px 18px; height: 100%; }
.pt-stat .lbl { color: var(--pt-muted); font-size: 14px; }
.pt-stat .val { font-size: 26px; font-weight: 700; margin-top: 4px; letter-spacing: -.02em; font-variant-numeric: tabular-nums; color: var(--pt-ink); line-height: 1.2; }
.pt-stat .val.text-danger { color: var(--pt-bad) !important; }
.has-hero .pt-main { padding-top: 0; }
.has-hero .pt-stats { margin-top: -1px; padding-top: 22px; }

/* listeler */
.pt-list .row-item { display: flex; gap: 14px; align-items: center; padding: 14px 0; border-top: 1px solid var(--pt-line-2); }
.pt-list .row-item:first-child { border-top: 0; padding-top: 4px; }
.pt-list a.row-item:hover .row-title { color: var(--pt-accent); }
.pt-list .row-main { flex: 1; min-width: 0; }
.pt-list .row-title { font-weight: 600; overflow-wrap: anywhere; color: var(--pt-ink); }
.pt-list .row-sub { color: var(--pt-muted); font-size: 14px; overflow-wrap: anywhere; }

/* tablolar */
.pt-table { width: 100%; border-collapse: collapse; }
.pt-table th { color: var(--pt-muted); font-weight: 500; font-size: 13.5px; text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--pt-line); white-space: nowrap; }
.pt-table td { padding: 14px 12px; border-bottom: 1px solid var(--pt-line-2); vertical-align: middle; }
.pt-table tbody tr:hover td { background: #FAFBFD; }
.pt-table tr:last-child td { border-bottom: 0; }
.pt-table th.text-end { text-align: right; }

/* rozetler (Bootstrap .badge de aynı dile çekilir) */
.pt-badge, .badge { display: inline-flex; align-items: center; gap: 4px; border-radius: 999px; padding: 4px 10px; font-size: 12.5px; font-weight: 600; line-height: 1.3; white-space: nowrap; border: 0 !important; }
.pt-badge.is-ok, .badge.bg-success-subtle { background: var(--pt-ok-bg) !important; color: var(--pt-ok) !important; }
.pt-badge.is-warn, .badge.bg-warning-subtle { background: var(--pt-warn-bg) !important; color: var(--pt-warn) !important; }
.pt-badge.is-bad, .badge.bg-danger-subtle { background: var(--pt-bad-bg) !important; color: var(--pt-bad) !important; }
.pt-badge.is-muted, .badge.bg-secondary-subtle, .badge.bg-light { background: var(--pt-line-2) !important; color: var(--pt-muted) !important; }
.badge.bg-primary-subtle, .badge.bg-info-subtle { background: var(--pt-info-bg) !important; color: var(--pt-info) !important; }

/* düğmeler */
.btn { border-radius: 10px; font-weight: 600; letter-spacing: -.005em; }
.btn-pt, .btn-primary { background: var(--pt-accent); border-color: var(--pt-accent); color: #fff; min-height: 48px; padding-left: 20px; padding-right: 20px; }
.btn-pt:hover, .btn-primary:hover, .btn-pt:focus-visible { background: var(--pt-accent-d); border-color: var(--pt-accent-d); color: #fff; }
.btn-sm.btn-primary { min-height: 34px; padding: 4px 12px; }
.btn-light { background: #fff; color: var(--pt-ink); border: 1px solid var(--pt-line) !important; }
.btn-light:hover { background: #F6F8FB; border-color: #CBD3DF !important; color: var(--pt-ink); }
.btn-dark { background: var(--pt-ink); border-color: var(--pt-ink); }
.btn-outline-primary { color: var(--pt-accent); border-color: #B9CDF7; background: #fff; }
.btn-outline-primary:hover { background: var(--pt-info-bg); color: var(--pt-accent-d); border-color: var(--pt-accent); }
.btn-outline-danger { border-color: #F2C3BF; color: var(--pt-bad); background: #fff; }
.btn-success { background: #16834F; border-color: #16834F; }
.btn-group .btn { font-weight: 500; }
.btn-group .btn-dark { background: var(--pt-ink); }
.btn-link { font-weight: 500; }

/* formlar */
.form-control, .form-select { border-radius: 10px; border-color: #D3DAE5; min-height: 46px; font-size: 16px; }
.form-control:focus, .form-select:focus { border-color: var(--pt-accent); box-shadow: var(--pt-ring); }
.form-select-sm { min-height: 36px; font-size: 14.5px; }
textarea.form-control { min-height: 0; }
.form-label { font-weight: 500; }
.form-check-input:checked { background-color: var(--pt-accent); border-color: var(--pt-accent); }
.form-check-input:focus { box-shadow: var(--pt-ring); }
.modal-content { border: 0; border-radius: 18px; }
.modal-header, .modal-footer { border-color: var(--pt-line-2); }

/* alt bilgi */
.pt-foot { color: var(--pt-muted); font-size: 13.5px; text-align: center; margin-top: 40px; display: grid; gap: 4px; justify-items: center; }
.pt-foot > div:first-child { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--pt-ink); }
.pt-foot-mark { width: 16px; height: 17px; }
.pt-foot a { color: var(--pt-muted); }

/* ---------- giriş ---------- */
.pt-login-page { background: var(--pt-bg); }
.pt-login { min-height: 100vh; min-height: 100dvh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.pt-login-side { background: var(--pt-ink); color: #fff; position: relative; overflow: hidden; padding: 40px 48px; display: flex; flex-direction: column; justify-content: space-between; }
.pt-login-side .pt-side-mark { position: absolute; width: 560px; height: 590px; right: -170px; bottom: -120px; opacity: .1; }
.pt-login-side .pt-side-mark path:last-child { fill: #60A5FA; }
.pt-login-side h2 { color: #fff; font-size: clamp(30px, 3.4vw, 44px); font-weight: 700; letter-spacing: -.03em; line-height: 1.12; max-width: 13ch; position: relative; }
.pt-login-side ul { list-style: none; padding: 0; margin: 22px 0 0; color: #AEBBD3; position: relative; display: grid; gap: 10px; }
.pt-login-side li { display: flex; gap: 10px; align-items: center; }
.pt-login-side li i { color: var(--pt-sky); }
.pt-login-side .pt-side-foot { color: #7F8DA8; font-size: 13.5px; position: relative; }
.pt-login-main { display: flex; align-items: center; justify-content: center; padding: 32px 20px; }
.pt-login-card { width: 100%; max-width: 400px; }
.pt-login-card h1 { font-size: 28px; font-weight: 700; letter-spacing: -.02em; }
.pt-login-card .form-control { min-height: 52px; font-size: 17px; }
.pt-login-card .btn-pt { min-height: 52px; font-size: 16.5px; }
.pt-login-brand-m { display: none; }
.pt-code { letter-spacing: .5em; text-align: center; font-weight: 700; font-size: 26px !important; font-variant-numeric: tabular-nums; }

/* firma seçimi */
.pt-acc-pick { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid var(--pt-line); border-radius: var(--pt-radius); background: #fff; width: 100%; text-align: left; margin-bottom: 10px; color: inherit; font-weight: 500; }
.pt-acc-pick:hover { border-color: var(--pt-accent); }

/* metinler (aydınlatma, teklif notları) */
.pt-doc-box { max-height: 46vh; overflow: auto; border: 1px solid var(--pt-line); border-radius: 12px; padding: 16px 18px; background: #FAFBFD; }
.pt-doc { font-size: 15px; line-height: 1.65; max-width: 72ch; }
.pt-doc .pt-doc-title { font-size: 18px; font-weight: 700; margin: 0 0 10px; display: block; }
.pt-doc h3 { font-size: 15.5px; font-weight: 700; margin: 18px 0 6px; }
.pt-doc p { margin: 0 0 10px; }
.pt-doc ul { padding-left: 20px; margin: 0 0 10px; }
.pt-check { min-height: 32px; display: flex; align-items: center; gap: 10px; padding-left: 0; }
.pt-check .form-check-input { width: 22px; height: 22px; margin: 0; flex: 0 0 auto; }
.pt-reply { background: var(--pt-info-bg); border-left: 3px solid var(--pt-accent); border-radius: 10px; padding: 10px 14px; font-size: 15px; }
.pt-date { flex: 1 1 140px; max-width: 220px; }

/* ---------- telefon ---------- */
@media (max-width: 991px) {
  .pt-login { grid-template-columns: 1fr; }
  .pt-login-side { display: none; }
  .pt-login-brand-m { display: block; margin-bottom: 28px; }
  .pt-login-main { align-items: flex-start; padding-top: 48px; }
}
@media (max-width: 767px) {
  .pt-wrap { padding: 0 16px; }
  .pt-bar { min-height: 58px; }
  .pt-brand-sub { display: none; }
  .pt-login-brand-m .pt-brand-sub { display: inline; }
  .pt-hero { padding-top: 8px; padding-bottom: 22px; }
  .pt-hero p { font-size: 15px; }
  .pt-hero-mark { width: 240px; height: 250px; right: -70px; top: -20px; }
  .pt-main { padding-top: 20px; }
  .pt-card { padding: 16px; border-radius: 12px; }
  /* menü altta sabit, açık zemin */
  .pt-nav { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    border-top: 1px solid var(--pt-line); padding-bottom: env(safe-area-inset-bottom); }
  .pt-nav .pt-wrap { padding: 0 4px; }
  .pt-nav-in { gap: 0; }
  .pt-nav a { flex: 1; flex-direction: column; gap: 3px; font-size: 12px; padding: 8px 2px 7px; justify-content: center; min-height: 62px; color: var(--pt-muted); }
  .pt-nav a i { font-size: 20px; width: 52px; height: 30px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; }
  .pt-nav a:hover { color: var(--pt-ink); }
  .pt-nav a.active { color: var(--pt-accent); font-weight: 650; }
  .pt-nav a.active i { background: var(--pt-info-bg); }
  .pt-nav a.active::after { display: none; }
  .pt-nav-6 a { font-size: 11px; }
  .pt-nav-6 a i { width: 44px; }
  .pt-table.pt-stack thead { display: none; }
  .pt-table.pt-stack tr { display: block; border-bottom: 1px solid var(--pt-line-2); padding: 10px 0; }
  .pt-table.pt-stack tbody tr:hover td { background: transparent; }
  .pt-table.pt-stack td { display: flex; justify-content: space-between; gap: 12px; border: 0; padding: 4px 0; text-align: right; }
  .pt-table.pt-stack td::before { content: attr(data-label); color: var(--pt-muted); font-size: 14px; text-align: left; }
  .pt-table.pt-stack td:empty { display: none; }
  .pt-member-actions { flex-basis: 100%; justify-content: flex-end; }
  .pt-date { max-width: none; }
  .pt-date-go { flex: 1 1 100%; }
}

/* yazdırma (cari ekstre → PDF olarak kaydet) */
@media print {
  .pt-top, .pt-foot, .d-print-none, .pt-skip { display: none !important; }
  body { background: #fff; font-size: 12px; }
  .pt-main { padding: 0; }
  .pt-card, .pt-stat { border: 0; padding: 0; }
  .pt-table td, .pt-table th { padding: 4px 6px; }
  a { color: inherit; text-decoration: none; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

/* Hizmetlerim: bölüm kısayolları, arama, toplu seçim */
.pt-subnav { position: sticky; top: 0; z-index: 15; background: var(--pt-bg); padding: 10px 0 12px; margin: -6px 0 8px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.pt-chips { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; flex: 1 1 auto; min-width: 0; }
.pt-chips::-webkit-scrollbar { display: none; }
.pt-chip { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; padding: 8px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--pt-line); color: var(--pt-ink); text-decoration: none; font-weight: 500; font-size: 14.5px; }
.pt-chip i { color: var(--pt-accent); }
.pt-chip span { font-variant-numeric: tabular-nums; color: var(--pt-muted); font-size: 13px; }
.pt-chip:hover { border-color: var(--pt-accent); color: var(--pt-accent-d); }
.pt-search { position: relative; flex: 0 1 300px; }
.pt-search i { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--pt-muted); }
.pt-search .form-control { padding-left: 38px; min-height: 42px; border-radius: 999px; }
.pt-svc-sec { scroll-margin-top: 76px; }
.pt-count { font-size: 13px; font-weight: 500; color: var(--pt-muted); background: var(--pt-line-2); border-radius: 999px; padding: 2px 9px; font-variant-numeric: tabular-nums; }
.pt-selall { font-size: 14px; font-weight: 500; color: var(--pt-muted); display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.pt-pick { width: 22px; flex: 0 0 22px; display: inline-flex; }
.pt-pick .form-check-input, .pt-selall .form-check-input { width: 20px; height: 20px; margin: 0; cursor: pointer; }
.pt-bulkbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; background: var(--pt-ink); color: #fff; padding: 12px 0; padding-bottom: calc(12px + env(safe-area-inset-bottom)); box-shadow: 0 -8px 24px rgba(11,18,32,.18); }
.pt-bulkbar .btn-link { color: #B9C6DC; }
.pt-bulkbar .btn-pt { min-height: 44px; }
body.has-bulk .pt-main { padding-bottom: 150px; }
.pt-batch { padding-left: 18px; color: var(--pt-text); }
.pt-batch li { margin: 2px 0; }
.pt-batch:not([hidden]) { max-height: 220px; overflow: auto; }
@media (max-width: 767px) {
  .pt-search { flex: 1 1 100%; }
  .pt-bulkbar { bottom: calc(62px + env(safe-area-inset-bottom)); padding-bottom: 12px; }
  .pt-bulkbar .pt-wrap > span { display: none; }
  .pt-bulkbar .pt-wrap > strong::after { content: " seçili"; font-weight: 400; }
}

/* Erişilebilirlik (pages/erisilebilirlik.php) */
.pt-chip.is-on { background: var(--pt-ink); border-color: var(--pt-ink); color: #fff; }
.pt-chip.is-on i { color: #fff; }
.pt-a11y-dot { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 50%; color: #fff; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(11,18,32,.18); }
.pt-a11y-dot svg { width: 62%; height: 62%; }
.pt-a11y-dot.is-lg { width: 52px; height: 52px; }
.pt-val-sm { font-size: 20px !important; }
.pt-meter { height: 8px; border-radius: 999px; background: var(--pt-line-2); overflow: hidden; margin-top: 10px; }
.pt-meter span { display: block; height: 100%; background: var(--pt-accent); border-radius: inherit; }
.pt-meter.is-near span { background: var(--pt-warn); }
.pt-meter.is-over span { background: var(--pt-bad); }
.pt-a11y-alert { background: var(--pt-warn-bg); border-color: transparent; color: var(--pt-ink); }
.pt-a11y-alert > i { color: var(--pt-warn); }
.pt-chart { position: relative; display: flex; align-items: stretch; gap: 6px; height: 220px; padding-top: 22px; border-bottom: 1px solid var(--pt-line); }
.pt-col { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; position: relative; }
.pt-col-c { width: 100%; max-width: 44px; background: #C7D7FE; border-radius: 6px 6px 0 0; }
.pt-col.is-cur .pt-col-c { background: var(--pt-accent); }
.pt-col.is-over .pt-col-c { background: var(--pt-bad); }
.pt-col-v { font-size: 11.5px; color: var(--pt-muted); font-variant-numeric: tabular-nums; margin-bottom: 4px; white-space: nowrap; }
.pt-col-l { position: absolute; bottom: -22px; font-size: 11.5px; color: var(--pt-muted); white-space: nowrap; }
.pt-chart + details { margin-top: 32px !important; }
.pt-chart-limit { position: absolute; left: 0; right: 0; border-top: 1.5px dashed var(--pt-bad); pointer-events: none; z-index: 1; }
.pt-chart-limit span { position: absolute; right: 0; top: -19px; font-size: 11px; color: var(--pt-bad); background: var(--pt-surface); padding: 0 4px; }
@media (max-width: 575.98px) { .pt-chart { gap: 3px; } .pt-col-v { display: none; } .pt-col:nth-child(even) .pt-col-l { display: none; } }
.pt-embed { display: flex; gap: 10px; align-items: flex-start; background: #0B1220; border-radius: 12px; padding: 12px 12px 12px 14px; }
.pt-embed code { flex: 1; min-width: 0; color: #E5ECFF; font-size: 13px; line-height: 1.5; word-break: break-all; }
.pt-guides details { border-top: 1px solid var(--pt-line-2); padding: 10px 0; }
.pt-guides details:first-child { border-top: 0; }
.pt-guides summary { cursor: pointer; font-weight: 600; color: var(--pt-ink); }
.pt-guides details p { margin: 8px 0 0; font-size: 14.5px; }
.pt-tools { display: flex; flex-wrap: wrap; gap: 4px 18px; padding: 10px 0; border-top: 1px solid var(--pt-line-2); margin: 0; }
.pt-tools legend { float: none; width: 100%; font-size: 13px; font-weight: 700; color: var(--pt-muted); margin: 0 0 4px; }
.pt-tools .form-check { min-width: 170px; }
.pt-a11y-sticky { position: sticky; top: 16px; }
.pt-a11y-seg { display: inline-flex; border: 1px solid var(--pt-line); border-radius: 999px; padding: 3px; margin-bottom: 12px; }
.pt-a11y-seg button { border: 0; background: transparent; border-radius: 999px; padding: 5px 14px; font-size: 13.5px; font-weight: 600; color: var(--pt-muted); }
.pt-a11y-seg button.is-on { background: var(--pt-ink); color: #fff; }
.pt-a11y-stage { position: relative; margin: 0 auto; height: 260px; border: 1px solid var(--pt-line); border-radius: 12px; background: #fff; overflow: hidden; }
.pt-a11y-stage[data-view="m"] { width: 170px; height: 300px; border-radius: 22px; border-width: 6px; border-color: #1f2937; }
.pt-a11y-page { padding: 18px; display: flex; flex-direction: column; gap: 9px; }
.pt-a11y-page i { display: block; height: 9px; border-radius: 5px; background: var(--pt-line-2); }
.pt-a11y-page i:first-child { height: 16px; width: 55%; background: var(--pt-line); }
.pt-a11y-page i.s { width: 70%; }
.pt-a11y-btn { position: absolute; border-radius: 50%; color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0,0,0,.25); transition: all .15s; }
.pt-a11y-btn svg { width: 62%; height: 62%; }
.pt-a11y-btn[hidden] { display: none; }
.pt-a11y-hidden { position: absolute; inset: auto 0 12px; text-align: center; font-size: 12px; color: var(--pt-muted); margin: 0; }
@media (max-width: 991.98px) { .pt-a11y-sticky { position: static; } }
@media (prefers-reduced-motion: reduce) { .pt-a11y-btn { transition: none; } }
@media (max-width: 575.98px) { .pt-embed { flex-direction: column; align-items: stretch; } .pt-embed code { flex: none; } }

/* Üye ol ve Yeni hizmet al */
.pt-signup-card { max-width: 560px; }
.pt-signup-card .form-control { min-height: 48px; font-size: 16px; }
.pt-signup-card textarea.form-control { min-height: 0; }
.pt-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pt-seg2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pt-seg2 .btn { border: 1.5px solid var(--pt-line); background: #fff; color: var(--pt-ink); min-height: 48px; font-weight: 600; }
.pt-seg2 .btn-check:checked + .btn { border-color: var(--pt-accent); background: #EEF3FF; color: var(--pt-accent); }
.pt-seg2 .btn-check:focus-visible + .btn { outline: 3px solid var(--pt-sky); outline-offset: 2px; }
.pt-kvkk summary { cursor: pointer; font-weight: 600; color: var(--pt-ink); font-size: 14.5px; }
.pt-kvkk .pt-doc-box { max-height: 220px; }
.pt-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.pt-plan { position: relative; cursor: pointer; margin: 0; }
.pt-plan input { position: absolute; opacity: 0; }
.pt-plan-in { display: flex; flex-direction: column; gap: 4px; height: 100%; border: 1.5px solid var(--pt-line); border-radius: 14px; padding: 16px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.pt-plan:hover .pt-plan-in { border-color: #BFD0F5; }
.pt-plan input:checked + .pt-plan-in { border-color: var(--pt-accent); box-shadow: 0 0 0 3px rgba(37,99,235,.15); }
.pt-plan input:focus-visible + .pt-plan-in { outline: 3px solid var(--pt-sky); outline-offset: 2px; }
.pt-plan-name { font-weight: 700; color: var(--pt-ink); display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.pt-plan-price { font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: var(--pt-ink); font-variant-numeric: tabular-nums; }
.pt-plan-price small { font-size: 14px; font-weight: 500; color: var(--pt-muted); }
.pt-plan-limit { font-size: 13.5px; color: var(--pt-muted); }
.pt-plan-feat { font-size: 13.5px; margin-top: 4px; }
.pt-other summary { list-style: none; cursor: pointer; }
.pt-other summary::-webkit-details-marker { display: none; }
.pt-other + .pt-other summary.row-item { border-top: 1px solid var(--pt-line-2); }
