/*
 * Site geneli kağıt teması — tokens.css sonrası yüklenir.
 * Ana sayfa (landing) bu dosyayı kullanmaz.
 */

/* Düz kağıt zemin (defter çizgisi yok) — solve/select vb. */
body.optic-body.paper-flow {
  background: var(--paper);
  color: var(--ink-soft);
}
body.optic-body.paper-flow::before {
  display: none !important;
}

/* Breadcrumb + başlık */
body.paper-flow .crumb {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--muted);
  padding: 22px 0 8px;
}
body.paper-flow .crumb a:hover {
  color: var(--accent-dark);
}
body.paper-flow .crumb .cur {
  color: var(--accent-dark);
}
body.paper-flow h1.title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(26px, 4vw, 32px);
  letter-spacing: -0.01em;
  margin: 0 0 16px;
  color: var(--ink);
}
body.paper-flow .lead {
  font-size: 15px;
  line-height: 1.65;
  max-width: 680px;
}
body.paper-flow .exam-desc-toggle {
  color: var(--accent-dark);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
body.paper-flow .exam-desc-bottom .exam-desc-wrap {
  margin-top: 0;
}
body.paper-flow .exam-desc-bottom .lead {
  max-width: none;
}

/* Konu anlatımı linkleri */
.guide-eyebrow {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--accent-dark);
  margin: 28px 0 8px;
}
.guide-link {
  display: inline-block;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
}
.guide-link:hover {
  color: var(--accent-dark);
}
.guide-link + .guide-link {
  margin-top: 8px;
}
.paper-hr {
  border: none;
  border-top: 1px dashed var(--line);
  margin: 32px 0;
}

/* Stepper — revize */
body.paper-flow .stepper {
  max-width: none;
  margin: 34px 0 30px;
}
body.paper-flow .step-circle,
body.paper-flow .stepper .circle {
  width: 34px;
  height: 34px;
  border: 1.5px solid var(--line);
  color: var(--muted);
  background: var(--card);
}
body.paper-flow .step-circle.done,
body.paper-flow .stepper .node.done .circle,
body.paper-flow .step-item.done .step-circle {
  background: var(--ink);
  border-color: var(--ink);
  color: #fff;
}
body.paper-flow .step-circle.active,
body.paper-flow .stepper .node.active .circle,
body.paper-flow .step-item.active .step-circle {
  border-color: var(--accent);
  color: var(--accent-dark);
  background: var(--card);
}
body.paper-flow .step-label,
body.paper-flow .stepper .label {
  font-size: 9.5px;
  letter-spacing: 0.05em;
  color: var(--muted);
}
body.paper-flow .step-label.active,
body.paper-flow .stepper .node.active .label {
  color: var(--accent-dark);
  font-weight: 600;
}
body.paper-flow .step-line,
body.paper-flow .stepper .line {
  flex: 1;
  height: 1.5px;
  border: none;
  background: var(--line);
  margin: 0 6px;
  position: relative;
  top: -12px;
}
body.paper-flow .step-line.done,
body.paper-flow .stepper .line.done {
  background: var(--ink);
  border: none;
}

/* Exam chip */
body.paper-flow .exam-chip,
body.paper-flow .tag-exam {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  background: var(--card);
  border-radius: 100px;
  padding: 8px 8px 8px 16px;
  font-weight: 600;
  font-size: 14px;
  font-family: var(--font-body);
  color: var(--ink);
  margin-bottom: 30px;
}
body.paper-flow .exam-chip .chip-change,
body.paper-flow .tag-exam .chg {
  color: var(--accent-dark);
  font-weight: 600;
  font-size: 12.5px;
  border: 1px solid var(--accent-tint);
  background: var(--accent-tint);
  padding: 5px 12px;
  border-radius: 100px;
  text-decoration: none;
  margin-left: 0;
}

/* Adım başlıkları */
body.paper-flow h2.step-title,
body.paper-flow .q {
  font-family: var(--font-display);
  font-weight: 460;
  font-size: 22px;
  margin: 0 0 4px;
  color: var(--ink);
}
body.paper-flow .step-sub,
body.paper-flow .qsub {
  font-size: 14px;
  color: var(--ink-soft);
  margin: 0 0 22px;
}

/* Ders kartları */
body.paper-flow .subject-grid,
body.paper-flow #subject-grid.card-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 34px;
}
@media (max-width: 640px) {
  body.paper-flow .subject-grid,
  body.paper-flow #subject-grid.card-grid {
    grid-template-columns: 1fr;
  }
}
body.paper-flow .subject-card,
body.paper-flow .sel-card.dcard:not(.sel-card--link) {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 20px 22px;
  transition: 0.15s ease;
  box-shadow: none;
  transform: none;
}
body.paper-flow .subject-card::before,
body.paper-flow .sel-card.dcard:not(.sel-card--link)::before {
  display: none;
}
body.paper-flow .subject-card:hover,
body.paper-flow .sel-card.dcard:not(.sel-card--link):hover {
  border-color: var(--ink);
  transform: translateY(-2px);
  box-shadow: none;
}
body.paper-flow .subject-card.selected,
body.paper-flow .sel-card.dcard.selected {
  border-color: var(--ink);
  box-shadow: 0 0 0 1px var(--ink);
}
.subject-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--card-2);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  color: var(--accent-dark);
}
.subject-icon svg {
  width: 17px;
  height: 17px;
}
body.paper-flow .sel-card-name,
body.paper-flow .dname,
body.paper-flow .subject-name {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 4px;
}
body.paper-flow .sel-card-meta,
body.paper-flow .dmeta,
body.paper-flow .subject-meta {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--muted);
}

/* Sınav seçim kartları (adım 1) */
body.paper-flow .sel-card--link {
  border-radius: var(--radius-md);
  border: 1px solid var(--line);
  padding: 18px 20px;
}
body.paper-flow .sel-card--link::before {
  display: none;
}
body.paper-flow .sel-card--link:hover {
  border-color: var(--ink);
  transform: translateY(-2px);
  box-shadow: none;
}

/* Ünite listesi */
body.paper-flow .unit-item {
  border-radius: var(--radius-md);
  border: 1px solid var(--line);
  padding: 14px 16px;
}
body.paper-flow .unit-item:hover,
body.paper-flow .unit-item.selected {
  border-color: var(--ink);
  box-shadow: none;
}

/* Özet kutuları */
body.paper-flow .sum-box {
  border-radius: var(--radius-md);
  border: 1px solid var(--line);
}
body.paper-flow .start-btn {
  border-radius: 100px;
}

/* Alt navigasyon */
body.paper-flow .footer-nav,
body.paper-flow .nav-row.navrow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0 28px;
  font-size: 14px;
}
body.paper-flow .nav-back,
body.paper-flow .navrow .nav-back {
  color: var(--ink-soft);
  font-weight: 600;
}
body.paper-flow .nav-next,
body.paper-flow .navrow .next {
  color: var(--accent-dark);
  font-weight: 600;
}
body.paper-flow .nav-next[style*="opacity:0.3"],
body.paper-flow .navrow .next[style*="opacity:0.3"] {
  color: var(--line) !important;
}
body.paper-flow .backdash,
body.paper-flow .panel-link-wrap {
  text-align: center;
  padding-bottom: 32px;
}
body.paper-flow .backdash a,
body.paper-flow .panel-link {
  font-size: 13.5px;
  color: var(--muted);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Rehber / blog kartları */
.guide-section {
  margin-top: 48px;
}
.guide-eyebrow2,
body.paper-flow .guide-h,
body.paper-flow .blog-section-label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--accent-dark);
  margin: 0 0 16px;
  padding-top: 0;
  border-top: none;
}
body.paper-flow .articles.guide-grid,
body.paper-flow .blog-grid.guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding-bottom: 60px;
}
@media (max-width: 800px) {
  body.paper-flow .articles.guide-grid,
  body.paper-flow .blog-grid.guide-grid {
    grid-template-columns: 1fr;
  }
}
body.paper-flow .guide-card,
body.paper-flow .art.blog-card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  padding: 18px;
  display: block;
  color: inherit;
  transition: border-color 0.15s ease;
}
body.paper-flow .guide-card:hover,
body.paper-flow .art.blog-card:hover {
  border-color: var(--ink);
  transform: none;
  box-shadow: none;
}
body.paper-flow .guide-tag,
body.paper-flow .pill.blog-tag {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  border: 1px solid var(--line);
  border-radius: 100px;
  padding: 3px 10px;
  margin-bottom: 12px;
  color: var(--muted);
}
body.paper-flow .guide-title,
body.paper-flow .blog-title {
  font-weight: 600;
  font-size: 14.5px;
  line-height: 1.4;
  margin: 0 0 10px;
}
body.paper-flow .guide-meta,
body.paper-flow .blog-meta,
body.paper-flow .meta.blog-meta {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--muted);
  margin-bottom: 12px;
}
body.paper-flow .guide-read,
body.paper-flow .blog-read {
  color: var(--accent-dark);
  font-weight: 600;
  font-size: 13px;
}

/* Resume banner */
body.paper-flow .resume-banner {
  border-radius: var(--radius-md);
  border: 1px solid var(--line);
  box-shadow: none;
}

/* ============================================================
   Site geneli kağıt zemin — rehber, blog, hata defteri, gate
   (tokens.css: --paper #FAF6EC, Fraunces / Inter / IBM Plex Mono)
   ============================================================ */
body.paper-site {
  --paper: #FAF6EC;
  --bg: #FAF6EC;
  --bg2: var(--card-2);
  --card2: var(--card-2);
  --brd: var(--line);
  --brd2: var(--line);
  --t1: var(--ink);
  --t2: var(--ink-soft);
  --t3: var(--muted);
  --navy: var(--ink);
  --cy: var(--accent-dark);
  --tl: var(--accent);
  background: var(--paper) !important;
  color: var(--ink-soft);
  font-family: var(--font-body);
}
body.paper-site::before,
body.paper-site::after {
  display: none !important;
}
body.paper-site h1,
body.paper-site h2,
body.paper-site h3,
body.paper-site .display {
  font-family: var(--font-display);
  color: var(--ink);
}
body.paper-site .login-page-left--register-hero h1.register-hero-title {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body.paper-site a[style*="color: var(--cy)"],
body.paper-site .link-accent {
  color: var(--accent-dark) !important;
}
body.paper-site .ocean-main,
body.paper-site main {
  background: transparent;
}

/* Rehber hub */
body.paper-site .rehber-hub h1 {
  font-weight: 600;
  letter-spacing: -0.01em;
}
body.paper-site .rehber-hub h2 {
  font-family: var(--font-display);
  font-weight: 600;
}
body.paper-site .rehber-hub a.rounded-xl {
  border-color: var(--line) !important;
  background: var(--card) !important;
  border-radius: var(--radius-md) !important;
}
body.paper-site .rehber-hub a.rounded-xl:hover {
  border-color: var(--ink) !important;
}

/* Blog index */
.blog-index-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1rem 3.5rem;
}
.blog-index-title {
  font-family: var(--font-display);
  font-size: clamp(26px, 4vw, 32px);
  font-weight: 600;
  letter-spacing: -0.01em;
  margin: 0 0 0.5rem;
  color: var(--ink);
}
.blog-index-lead {
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
  color: var(--ink-soft);
}
.blog-index-header {
  margin-bottom: 2.5rem;
  max-width: 42rem;
}
.blog-index-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 640px) {
  .blog-index-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .blog-index-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.blog-index-card {
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
  border-radius: var(--radius-md);
  border: 1px solid var(--line);
  background: var(--card);
  color: inherit;
  text-decoration: none;
  transition: border-color 0.15s ease, transform 0.15s ease;
}
.blog-index-card:hover {
  border-color: var(--ink);
  transform: translateY(-2px);
}
.blog-index-card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.blog-index-cat {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 100px;
  border: 1px solid var(--line);
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.blog-index-date {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--muted);
}
.blog-index-card-title {
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.35;
  margin: 0 0 0.75rem;
  color: var(--ink);
}
.blog-index-excerpt {
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--ink-soft);
  margin: 0;
  flex: 1;
}
.blog-index-more {
  font-size: 13px;
  font-weight: 600;
  margin-top: 1rem;
  color: var(--accent-dark);
}

/* Rehber makale */
body.paper-site .rehber-article-body h2,
body.paper-site .rehber-article-body h3 {
  font-family: var(--font-display);
  color: var(--ink);
}
body.paper-site .rehber-article-body p,
body.paper-site .rehber-article-body li {
  color: var(--ink-soft);
}

/* Puan hesapla — scoped overrides */
body.paper-site .ph-page {
  --ph-paper: var(--paper);
  --ph-white: var(--card);
  --ph-ink: var(--ink);
  --ph-graphite: var(--ink-soft);
  --ph-red: var(--accent-dark);
  --ph-green: var(--success);
  --ph-line: var(--line);
  font-family: var(--font-body);
  color: var(--ink-soft);
}
body.paper-site .ph-page h1,
body.paper-site .ph-page h2,
body.paper-site .ph-page h3 {
  font-family: var(--font-display);
  color: var(--ink);
}
body.paper-site .ph-mono,
body.paper-site .ph-exam-pill,
body.paper-site .ph-score-val {
  font-family: var(--font-mono);
}

/* Net / takvim / geri sayım — ortak kartlar */
body.paper-site .st-cal-wrap,
body.paper-site .gs-idx,
body.paper-site .net-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1rem 2rem;
}
body.paper-site .st-hero,
body.paper-site .gs-card,
body.paper-site .st-table-wrap {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
}
body.paper-site .st-count .st-d,
body.paper-site .gs-mini-cd {
  font-family: var(--font-mono);
  color: var(--accent-dark);
}

/* Hata defteri */
body.mn-body.paper-site {
  background: var(--paper) !important;
}
body.mn-body.paper-site .mn-main {
  max-width: 1180px;
  margin: 0 auto;
  padding: 28px 32px 60px;
}
body.mn-body.paper-site .page-title {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 600;
}
body.mn-body.paper-site .kpi-value {
  font-family: var(--font-display);
}
body.mn-body.paper-site .panel,
body.mn-body.paper-site .kpi,
body.mn-body.paper-site .m-card,
body.mn-body.paper-site .mn-empty {
  background: var(--card);
  border-color: var(--line);
}

/* Misafir limit gate */
body.guest-gate-body.paper-site {
  background: var(--paper) !important;
  font-family: var(--font-body);
  color: var(--ink);
  min-height: 100vh;
}
body.guest-gate-body.paper-site .display,
body.guest-gate-body.paper-site .hero-title,
body.guest-gate-body.paper-site .stat-val {
  font-family: var(--font-display);
}
body.guest-gate-body.paper-site .modal {
  background: var(--card);
  border: 1px solid var(--line);
}
body.guest-gate-body.paper-site .field,
body.guest-gate-body.paper-site .ghost-q,
body.guest-gate-body.paper-site .ghost-pill {
  background: var(--card);
  border-color: var(--line);
}
body.guest-gate-body.paper-site .btn-primary {
  background: var(--ink);
  font-family: var(--font-body);
}

