/* ==============================
   NOYANLAR — styles.css (NO SAVE PLAN)
   Matches index.html + app.js
   ============================== */

/* THEME TOKENS (Dark default) */
:root,
:root[data-theme="dark"]{
  --brand:#8b1c23;
  --brand-2:#caa46a;

  --bg:#0f1118;
  --card:#101629;
  --ink:#e9ecf3;
  --muted:#9aa3b2;
  --line:#26314a;

  --chip:#0b1020;
  --chip-border:#2a385b;
  --chip-hover:#caa46a30;

  --table-alt:#0c1222;
  --table-head:#0f172a;

  --btn-ghost-bg:#0b1020;
  --btn-ghost-border:#1f2a44;

  --watermark:#8b1c23;
  --shadow:0 20px 50px rgba(0,0,0,.35);
}

/* LIGHT THEME OVERRIDES (when .light class OR data-theme="light") */
:root.light,
:root[data-theme="light"]{
  --bg:#f5f7fb;
  --card:#ffffff;
  --ink:#0e1426;
  --muted:#5a667c;
  --line:#c4cfe2;

  --chip:#ffffff;
  --chip-border:#c4cfe2;
  --chip-hover:rgba(139,28,35,0.10);

  --table-alt:#f6f8fc;
  --table-head:#eef3fb;

  --btn-ghost-bg:#ffffff;
  --btn-ghost-border:#b4c1d9;

  --watermark:#8b1c23;
  --shadow:0 12px 28px rgba(16, 30, 67, 0.10);
}

/* GLOBAL RESET */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; color:var(--ink);
  font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  background:
    radial-gradient(1000px 600px at 10% -10%, color-mix(in srgb, var(--watermark) 18%, transparent), transparent 60%),
    radial-gradient(900px 500px at 120% 10%, color-mix(in srgb, var(--brand-2) 18%, transparent), transparent 55%),
    linear-gradient(120deg, color-mix(in srgb, #0b0f1a 70%, var(--bg)), var(--bg) 40%, color-mix(in srgb, #0b0f1a 70%, var(--bg)));
}

/* BRAND BAR */
.brandbar{
  position:sticky; top:0; z-index:10;
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:12px 20px;
  background:linear-gradient(180deg, color-mix(in srgb, #111523 70%, var(--bg)), var(--bg));
  border-bottom:1px solid var(--line);
}
.brand-left{display:flex; gap:12px; align-items:center}
.brand-logo{display:grid; place-items:center; color:var(--brand)}
.brand-title{font-weight:800}
.brand-sub{font-size:12px; color:var(--muted)}
.nav-link{
  color:var(--ink); text-decoration:none; padding:8px 12px; border-radius:10px;
  border:1px solid var(--btn-ghost-border); background:var(--btn-ghost-bg); cursor:pointer;
}
.nav-link:hover{box-shadow:0 0 0 3px var(--chip-hover)}

/* PAGE LAYOUT */
.wrap{max-width:1200px;margin:26px auto;padding:0 16px; position:relative}
.page-head{display:flex; align-items:center; gap:12px; flex-wrap:wrap}
.page-head h1{margin:0; font-size:clamp(24px,3vw,36px)}
.badge{display:inline-block; padding:4px 10px; border-radius:999px; background:var(--chip); border:1px solid var(--btn-ghost-border); font-size:12px}

.grid{display:grid; gap:18px}
@media(min-width:980px){ .grid{grid-template-columns:1.25fr .75fr} }

.card{
  border-radius:18px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--card) 85%, #0f1426), var(--card)) padding-box,
    linear-gradient(135deg, color-mix(in srgb, #1b2032 70%, var(--brand-2)), var(--chip-hover)) border-box;
  border:1px solid transparent;
  box-shadow:var(--shadow);
  overflow:hidden;
}

/* FORM AREA */
.form-card{padding:18px}
.form-grid{
  display:grid; gap:12px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;
}
.inputs-grid{
  display:grid; gap:12px; margin-top:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media(min-width:980px){ .inputs-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }

/* Fields */
.field{display:flex; flex-direction:column; gap:6px}
label{font-size:12px; color:var(--muted); margin-bottom:6px; display:block}
input,select{
  width:100%; padding:12px 14px; border-radius:12px;
  border:1px solid var(--line); background:var(--chip); color:var(--ink); outline:none;
}
input:focus,select:focus{
  border-color:var(--brand-2);
  box-shadow:0 0 0 3px var(--chip-hover, rgba(202,164,106,0.18));
}
@supports (color: color-mix(in srgb, #000 50%, #fff 50%)){
  input:focus,select:focus{ border-color:color-mix(in srgb, var(--brand-2) 40%, var(--line)); }
}
.prefix-wrap{position:relative}
.prefix-wrap .prefix{position:absolute; left:10px; top:50%; transform:translateY(-50%); opacity:.9; font-weight:700; pointer-events:none;}
.prefix-wrap input{padding-left:34px}

/* Checkbox */
.checkbox .chk{display:flex; align-items:center; gap:8px; flex-wrap:wrap}
.checkbox .chk span{word-break:break-word; overflow-wrap:anywhere; line-height:1.2}

/* Actions */
.actions{display:flex; gap:10px; margin-top:12px; flex-wrap:wrap}
.btn{
  cursor:pointer; border:none; border-radius:12px; padding:12px 16px; font-weight:700;
  color:#fff; background:linear-gradient(135deg,var(--brand),#6e1318)
}
.btn.secondary{background:var(--chip); color:var(--ink); border:1px solid var(--line)}
.btn.outline{background:transparent; color:var(--ink); border:1px dashed var(--line)}
.btn.ghost{background:var(--btn-ghost-bg); color:var(--ink); border:1px solid var(--btn-ghost-border)}
.btn.gold{background:linear-gradient(135deg,#caa46a,#9b7c40); color:#111}
.btn.tiny{padding:8px 10px; border-radius:10px; font-size:12px}

/* Helper note */
.note{margin:12px 0 8px; font-size:12px; color:var(--muted)}

/* TABLE */
.table-wrap{ max-height:420px; overflow:auto; border:1px solid var(--line); border-radius:12px; background:var(--card) }
table{width:100%; border-collapse:collapse; background:var(--chip)}
th,td{ padding:12px 10px; border-bottom:1px solid var(--line); text-align:right }
th:first-child,td:first-child{text-align:left}
thead th{position:sticky; top:0; background:var(--table-head); z-index:1}
tbody tr:nth-child(odd){background:var(--table-alt)}
tbody tr:hover{background:color-mix(in srgb, var(--table-alt) 70%, var(--brand-2) 5%)}

/* SUMMARY PANEL */
.summary-card{padding:18px; position:relative; background:var(--card)}
.meta{ display:grid; gap:8px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-bottom:10px; }
@media(min-width:980px){ .meta{ grid-template-columns: repeat(4, minmax(0,1fr)); } }
.meta span{font-size:12px; color:var(--muted)}
.meta strong{display:block; font-size:16px; font-weight:800}
.stats{display:grid; gap:12px; grid-template-columns:repeat(2,minmax(0,1fr))}
.stat{ background:var(--chip); border:1px solid var(--line); border-radius:14px; padding:12px }
.stat span{font-size:12px; color:var(--muted)}
.stat strong{display:block; font-size:18px; font-weight:800; margin-top:4px}
.divider{border:none; border-top:1px dashed var(--line); margin:12px 0}
.chart{ width:100%; margin-top:10px; background:var(--chip); border:1px solid var(--line); border-radius:12px }

/* FOOTER */
.site-footer{
  max-width:1200px; margin:22px auto 32px; padding:0 16px;
  color:var(--muted); display:flex; align-items:center; justify-content:space-between; gap:10px;
  border-top:1px dashed var(--line); padding-top:14px;
}
.site-footer a{color:var(--ink); text-decoration:none}
.site-footer a:hover{color:var(--brand-2)}
.footer-links{display:flex; gap:10px; align-items:center}

/* PRINT */
.print-area::before{
  content:"Noyanlar";
  position:fixed; inset:auto 0 20% 0; text-align:center;
  font-size:120px; font-weight:900; color:var(--watermark); opacity:.05; pointer-events:none;
}
@media print{
  .no-print{display:none !important}
  body{background:#fff; color:#000}
  .card, .table-wrap, .stat{box-shadow:none; background:#fff; border-color:#ddd}
  .print-area{background:#fff}
  .badge{border-color:#ddd}
  .site-footer{border-top-color:#ddd; color:#333}
}

/* RESPONSIVE TWEAKS */
@media (max-width: 900px){
  .form-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px){
  .form-grid{ grid-template-columns:1fr; }
}

/* ====== PDF / Print styles ====== */
.print-only{ display:none; }
@media print {
  @page { size: A4; margin: 14mm; }
  body{ background:#fff !important; color:#000 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .no-print, .brandbar, .actions, .inputs-grid, .form-grid, .note, .nav-link { display:none !important; }
  .print-only{ display:block !important; }
  .card, .table-wrap, .stat, .summary-card { background:#fff !important; border:1px solid #ccc !important; box-shadow:none !important; }
  .table-wrap{ max-height:none !important; overflow:visible !important; }
  thead th{ background:#f2f2f2 !important; color:#000 !important; }
  .print-header, .summary-card { break-inside: avoid; }
  table, tr, td, th { break-inside: avoid; }
  .grid{ display:block !important; }
}