/* ==========================================================
   DÜZCEYORUM — Tasarım Sistemi
   Palet: neredeyse siyah metin, beyaz/açık gri zemin,
   tek canlı vurgu rengi (kırmızı-turuncu) sadece eylem noktalarında.
   ========================================================== */
:root{
  --ink:#1d1d1f;
  --ink-soft:#48484c;
  --muted:#6e6e73;
  --hairline:#d2d2d7;
  --surface:#ffffff;
  --surface-alt:#f5f5f7;
  --surface-deep:#0b0b0c;
  --accent:#ff3b30;
  --accent-dark:#d92a20;
  --accent-tint:#fff0ee;
  --success:#1c8a4b;
  --success-tint:#e6f6ec;
  --error:#d9362b;
  --error-tint:#fdeceb;
  --radius-lg:22px;
  --radius-md:14px;
  --radius-sm:10px;
  --radius-pill:980px;
  --shadow-soft:0 1px 2px rgba(0,0,0,.04), 0 12px 32px rgba(0,0,0,.06);
  --shadow-lift:0 8px 20px rgba(0,0,0,.08), 0 24px 48px rgba(0,0,0,.08);
  --maxw:1120px;
}
*{box-sizing:border-box;}
html,body{height:100%;}
html{scroll-padding-top:76px;-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',Helvetica,Arial,sans-serif;
  background:var(--surface);
  color:var(--ink);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.muted{color:var(--muted);}
.small{font-size:13px;}
::selection{background:var(--accent-tint);color:var(--accent-dark);}

h1,h2,h3{margin:0;letter-spacing:-0.02em;font-weight:700;}
p{margin:0;}

/* ---------------- Buttons ---------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 24px;border-radius:var(--radius-pill);
  font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;
  font-family:inherit;transition:transform .15s ease, background .15s ease, box-shadow .15s ease;
  white-space:nowrap;
}
.btn:active{transform:scale(.97);}
.btn-primary{background:var(--ink);color:#fff;}
.btn-primary:hover{background:#000;}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:var(--accent-dark);}
.btn-outline{background:transparent;border-color:var(--hairline);color:var(--ink);}
.btn-outline:hover{border-color:var(--ink);}
.btn-ghost{background:transparent;color:var(--ink);padding:12px 16px;}
.btn-ghost:hover{color:var(--accent);}
.btn-sm{padding:8px 16px;font-size:13px;}
.btn-block{width:100%;}
.btn-danger{background:var(--error);color:#fff;}
.btn-success{background:var(--success);color:#fff;}
.btn:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:2px solid var(--accent); outline-offset:2px;
}

/* ---------------- Nav ---------------- */
.nav{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.78);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid var(--hairline);
  padding-top:env(safe-area-inset-top,0px);
}
.nav-inner{display:flex;align-items:center;gap:18px;justify-content:space-between;height:56px;}
.logo{font-size:19px;font-weight:700;letter-spacing:-0.01em;color:var(--ink);white-space:nowrap;}
.logo span{color:var(--accent);}
.nav-search{flex:1;display:flex;max-width:360px;background:var(--surface-alt);border-radius:var(--radius-pill);overflow:hidden;border:1px solid transparent;}
.nav-search:focus-within{border-color:var(--hairline);background:#fff;}
.nav-search input{border:none;background:transparent;padding:9px 16px;flex:1;font-family:inherit;font-size:14px;outline:none;}
.nav-search button{border:none;background:transparent;color:var(--muted);padding:0 14px;cursor:pointer;font-size:15px;}
.nav-links{display:flex;align-items:center;gap:4px;}
.nav-links-main{gap:2px;}
.nav-links a.link{padding:8px 12px;font-size:14px;font-weight:500;color:var(--ink-soft);border-radius:8px;white-space:nowrap;}
.nav-links a.link:hover{color:var(--ink);background:var(--surface-alt);}

/* ---------------- Hero ---------------- */
.hero{padding:96px 0 72px;text-align:center;}
.hero-eyebrow{font-size:14px;font-weight:600;color:var(--accent);margin-bottom:16px;}
.hero h1{font-size:56px;line-height:1.05;font-weight:800;letter-spacing:-0.03em;max-width:780px;margin:0 auto;}
.hero p{color:var(--muted);max-width:540px;margin:20px auto 0;font-size:19px;line-height:1.5;}
.hero-cta{display:flex;gap:14px;justify-content:center;margin-top:32px;flex-wrap:wrap;}
.hero-stats{display:flex;justify-content:center;gap:56px;margin-top:64px;flex-wrap:wrap;}
.hero-stats strong{display:block;font-size:34px;font-weight:800;letter-spacing:-0.02em;}
.hero-stats span{font-size:13px;color:var(--muted);}

/* ---------------- Sections ---------------- */
.section{padding:64px 0;}
.section-alt{background:var(--surface-alt);}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px;}
.section-title{font-size:26px;font-weight:800;letter-spacing:-0.02em;}

/* ---------------- Category chips / grid ---------------- */
.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;}
.category-chip{
  background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);
  padding:18px 14px;text-align:center;transition:.15s;
}
.category-chip:hover{border-color:var(--ink);}
.category-chip.active{background:var(--ink);border-color:var(--ink);color:#fff;}
.category-chip .icon{font-size:24px;display:block;margin-bottom:8px;}
.category-chip .name{font-size:13px;font-weight:600;display:block;}
.category-chip .count{font-size:12px;color:var(--muted);display:block;margin-top:2px;}
.category-chip.active .count{color:#c9c9cc;}

/* ---------------- Cards ---------------- */
.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:24px;}

/* Complaint cards */
.complaint-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;}
.complaint-card{
  background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);
  padding:22px;display:flex;flex-direction:column;gap:10px;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.complaint-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:transparent;}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;}
.badge{background:var(--surface-alt);color:var(--ink-soft);font-size:12px;font-weight:600;padding:5px 12px;border-radius:var(--radius-pill);}
.badge-accent{background:var(--accent-tint);color:var(--accent-dark);}
.complaint-card h3{font-size:17px;font-weight:700;letter-spacing:-0.01em;}
.company-name{font-size:13px;color:var(--muted);}
.company-name strong{color:var(--ink-soft);}
.excerpt{color:var(--muted);font-size:14px;line-height:1.5;flex:1;}
.card-bottom{display:flex;gap:16px;font-size:13px;color:var(--muted);padding-top:8px;border-top:1px solid var(--hairline);}

/* ---------------- CTA band ---------------- */
.cta-band{
  background:var(--ink);color:#fff;border-radius:28px;padding:56px 40px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:16px;
}
.cta-band h2{font-size:30px;letter-spacing:-0.02em;}
.cta-band p{color:#c9c9cc;max-width:480px;}

/* ---------------- Detail page ---------------- */
.detail-wrap{max-width:760px;margin:0 auto;padding:48px 24px 80px;}
.detail-head .badge{margin-bottom:14px;}
.detail-head h1{font-size:34px;letter-spacing:-0.02em;margin:8px 0 8px;}
.detail-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-top:14px;}
.detail-body{margin:28px 0;font-size:17px;line-height:1.7;color:var(--ink-soft);white-space:pre-line;}

.attachment-box{margin:24px 0;border:1px solid var(--hairline);border-radius:var(--radius-md);overflow:hidden;}
.attachment-box img{width:100%;max-height:480px;object-fit:cover;}
.attachment-box .file-link{display:flex;align-items:center;gap:10px;padding:18px;font-weight:600;font-size:14px;}

.share-row{display:flex;align-items:center;gap:10px;margin:28px 0;padding:18px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);}
.share-label{font-size:13px;color:var(--muted);font-weight:600;margin-right:4px;}
.share-btn{
  width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--surface-alt);transition:.15s;
}
.share-btn:hover{background:var(--ink);}
.share-btn:hover svg{fill:#fff;}
.share-btn svg{width:18px;height:18px;fill:var(--ink-soft);}

/* ---------------- Comments ---------------- */
.comments-section{margin-top:40px;}
.comment-list{display:flex;flex-direction:column;gap:14px;margin-bottom:24px;}
.comment{border:1px solid var(--hairline);border-radius:var(--radius-md);padding:16px 18px;}
.comment-top{display:flex;justify-content:space-between;margin-bottom:6px;align-items:center;}
.comment-top strong{font-size:14px;}
.comment p{font-size:14px;color:var(--ink-soft);line-height:1.55;}
.comment-attachment{margin-top:10px;}
.comment-attachment img{max-width:220px;border-radius:8px;border:1px solid var(--hairline);}
.company-reply{margin-top:12px;margin-left:24px;padding:14px 16px;background:var(--accent-tint);border-radius:var(--radius-sm);border:1px solid #ffd9d4;}
.company-reply .comment-top strong{color:var(--accent-dark);}
.company-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;color:var(--accent-dark);background:#ffe1dc;padding:2px 8px;border-radius:var(--radius-pill);margin-left:6px;}

/* ---------------- Forms ---------------- */
.form-page{max-width:680px;margin:48px auto;padding:0 24px 80px;}
.form-page h1{font-size:32px;letter-spacing:-0.02em;margin-bottom:8px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;color:var(--ink-soft);}
.form-group input[type=text],.form-group input[type=email],.form-group select,.form-group textarea{
  width:100%;padding:13px 14px;border:1px solid var(--hairline);border-radius:var(--radius-sm);
  font-family:inherit;font-size:15px;outline:none;background:#fff;color:var(--ink);
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--ink);}
.form-hint{font-size:12px;color:var(--muted);margin-top:6px;display:block;}

.file-drop{
  border:1.5px dashed var(--hairline);border-radius:var(--radius-md);padding:26px;text-align:center;
  cursor:pointer;transition:.15s;background:var(--surface-alt);
}
.file-drop:hover{border-color:var(--ink);}
.file-drop input{display:none;}
.file-drop .file-drop-icon{font-size:26px;margin-bottom:8px;}
.file-drop .file-drop-text{font-size:14px;font-weight:600;}
.file-drop .file-drop-sub{font-size:12px;color:var(--muted);margin-top:4px;}
.file-drop.has-file{border-style:solid;border-color:var(--success);background:var(--success-tint);}

/* Alerts */
.alert{padding:14px 18px;border-radius:var(--radius-sm);margin-bottom:18px;font-size:14px;}
.alert p{margin:2px 0;}
.alert-success{background:var(--success-tint);color:var(--success);}
.alert-error{background:var(--error-tint);color:var(--error);}

/* Empty state */
.empty-state{text-align:center;padding:72px 20px;color:var(--muted);}
.empty-state .icon{font-size:34px;margin-bottom:12px;}

/* Pagination */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:36px;}
.pagination a{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--hairline);border-radius:50%;font-size:14px;}
.pagination a.active{background:var(--ink);color:#fff;border-color:var(--ink);}

/* ---------------- Footer ---------------- */
.footer{background:var(--surface-deep);color:#98989d;margin-top:0;padding:64px 0 0;}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:36px;padding-bottom:36px;}
.footer .logo{color:#fff;}
.footer-inner h4{color:#fff;margin:0 0 12px;font-size:13px;font-weight:600;}
.footer-links{list-style:none;padding:0;margin:0;}
.footer-links li{margin-bottom:10px;font-size:14px;}
.footer-links a:hover{color:#fff;}
.footer-bottom{border-top:1px solid #2b2b2d;padding:18px 0;text-align:center;font-size:12px;}

/* ---------------- Dashboard shell (admin / firma) ---------------- */
.dash-nav{background:var(--surface-deep);padding:0;}
.dash-nav-inner{display:flex;align-items:center;justify-content:space-between;height:56px;}
.dash-nav .logo{color:#fff;}
.dash-tag{font-size:11px;color:#98989d;border:1px solid #333;padding:3px 9px;border-radius:var(--radius-pill);margin-left:8px;}
.dash-tabs{display:flex;gap:4px;border-bottom:1px solid var(--hairline);margin-bottom:26px;}
.dash-tabs a{padding:12px 18px;font-size:14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;}
.dash-tabs a.active{color:var(--ink);border-color:var(--accent);}
.dash-list{display:flex;flex-direction:column;gap:14px;}
.dash-item{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:22px;background:#fff;}
.dash-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap;}
.stat-card{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:22px;}
.stat-card strong{font-size:28px;font-weight:800;display:block;}
.stat-card span{font-size:13px;color:var(--muted);}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;}
.thumb{width:64px;height:64px;border-radius:10px;object-fit:cover;border:1px solid var(--hairline);}
.reply-box{margin-top:14px;border-top:1px solid var(--hairline);padding-top:14px;}
.reply-box textarea{width:100%;padding:10px 12px;border:1px solid var(--hairline);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;min-height:70px;}
.table-simple{width:100%;border-collapse:collapse;}
.table-simple th,.table-simple td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--hairline);font-size:14px;}
.table-simple th{color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;}

.auth-shell{max-width:400px;margin:80px auto;padding:0 24px;}
.auth-shell .card{padding:32px;}
.auth-shell h1{font-size:24px;margin-bottom:6px;}

/* ---------------- Breadcrumb ---------------- */
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:20px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.breadcrumb a:hover{color:var(--ink);}
.breadcrumb .sep{color:var(--hairline);}

/* ---------------- Type / status badges ---------------- */
.badge-tesekkur{background:var(--success-tint);color:var(--success);}
.badge-sikayet{background:var(--accent-tint);color:var(--accent-dark);}
.status-tag{font-size:12px;font-weight:600;padding:5px 12px;border-radius:var(--radius-pill);}
.status-waiting{background:#fff4e5;color:#a15c00;}
.status-answered{background:#e6f0ff;color:#1d5fd6;}
.status-resolved{background:var(--success-tint);color:var(--success);}

/* ---------------- Action row (like/save) ---------------- */
.action-row{display:flex;align-items:center;gap:10px;margin-top:18px;}
.action-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:var(--radius-pill);border:1px solid var(--hairline);background:#fff;font-size:13.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:.15s;}
.action-btn:hover{border-color:var(--ink);color:var(--ink);}
.action-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff;}

/* ---------------- How it works ---------------- */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.step-item{text-align:center;padding:8px;}
.step-num{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;margin:0 auto 16px;font-size:16px;}
.step-item h3{font-size:16px;margin-bottom:8px;}
.step-item p{font-size:14px;color:var(--muted);line-height:1.5;}

/* ---------------- Brand hero ---------------- */
.brand-hero{display:flex;gap:20px;align-items:center;padding:32px 0;flex-wrap:wrap;}
.brand-logo{width:76px;height:76px;border-radius:18px;background:var(--surface-alt);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;color:var(--ink-soft);border:1px solid var(--hairline);flex-shrink:0;}
.brand-hero h1{font-size:28px;}
.brand-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 8px;}
.brand-rating{display:flex;align-items:center;gap:6px;margin-top:8px;}
.stars{color:#f5a623;font-size:15px;letter-spacing:1px;}
.stars-input{display:flex;gap:4px;flex-direction:row-reverse;justify-content:flex-end;}
.stars-input input{display:none;}
.stars-input label{font-size:24px;color:var(--hairline);cursor:pointer;}
.stars-input input:checked ~ label,
.stars-input label:hover,
.stars-input label:hover ~ label{color:#f5a623;}

/* ---------------- Filter bar ---------------- */
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;align-items:center;}
.filter-bar a{padding:8px 16px;border:1px solid var(--hairline);border-radius:var(--radius-pill);font-size:13px;font-weight:600;color:var(--ink-soft);}
.filter-bar a.active{background:var(--ink);color:#fff;border-color:var(--ink);}

/* ---------------- Brand directory ---------------- */
.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.brand-card{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:20px;text-align:center;transition:.15s;}
.brand-card:hover{border-color:var(--ink);transform:translateY(-2px);}
.brand-card .brand-logo{margin:0 auto 12px;}
.brand-card h3{font-size:15px;margin-bottom:4px;}
.brand-card .muted{font-size:12.5px;}

/* ---------------- Compare ---------------- */
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.compare-col{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:24px;}
.compare-col .brand-logo{margin:0 auto 14px;}
.compare-col h3{text-align:center;font-size:18px;margin-bottom:18px;}
.compare-row{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--hairline);font-size:14px;}
.compare-row:first-of-type{border-top:none;}
.compare-row strong{font-size:16px;}
.compare-picker{display:flex;gap:12px;margin-bottom:28px;flex-wrap:wrap;}
.compare-picker select{flex:1;min-width:200px;padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-sm);font-family:inherit;font-size:14.5px;}

/* ---------------- Auth pages ---------------- */
.auth-shell-public{max-width:420px;margin:56px auto;padding:0 24px;}
.auth-shell-public .card{padding:32px;}
.auth-shell-public h1{font-size:24px;margin-bottom:6px;}
.auth-switch{font-size:13.5px;color:var(--muted);margin-top:18px;text-align:center;}

/* ---------------- Account (hesabım) ---------------- */
.account-head{display:flex;align-items:center;gap:16px;margin-bottom:28px;}
.account-avatar{width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;}

/* ---------------- Static content pages ---------------- */
.static-page{max-width:760px;margin:0 auto;padding:48px 24px 80px;}
.static-page h1{font-size:32px;margin-bottom:20px;}
.static-page h2{font-size:20px;margin:28px 0 10px;}
.static-page p{color:var(--ink-soft);line-height:1.7;margin-bottom:14px;font-size:15.5px;}
.static-page ul{color:var(--ink-soft);line-height:1.8;font-size:15.5px;padding-left:20px;}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;}
.contact-card{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:22px;}
.contact-card .icon{font-size:22px;margin-bottom:10px;}

/* ---------------- Responsive ---------------- */
@media(max-width:960px){
  .complaint-grid{grid-template-columns:1fr 1fr;}
  .category-grid{grid-template-columns:repeat(3,1fr);}
  .footer-inner{grid-template-columns:1fr;}
  .stat-row{grid-template-columns:1fr;}
  .steps-grid{grid-template-columns:1fr;}
  .brand-grid{grid-template-columns:repeat(2,1fr);}
  .compare-grid{grid-template-columns:1fr;}
  .brand-stats{grid-template-columns:repeat(2,1fr);}
  .contact-grid{grid-template-columns:1fr;}
}
@media(max-width:680px){
  .nav-search{display:none;}
  .nav-links-main{display:none;}
  .hero h1{font-size:38px;}
  .hero p{font-size:16px;}
  .hero-stats{gap:32px;}
  .complaint-grid{grid-template-columns:1fr;}
  .category-grid{grid-template-columns:repeat(2,1fr);}
  .form-row{grid-template-columns:1fr;}
  .cta-band{padding:40px 24px;}
  .nav-links a.link{display:none;}
  .brand-grid{grid-template-columns:1fr 1fr;}
}
