:root{
  --teal:#0F766E; --teal-d:#0b5a54; --teal-l:#F0FDFA;
  --ink:#1f2937; --muted:#6b7280; --line:#e5e7eb; --bg:#f7f8f7;
  --ok:#166534; --ok-bg:#dcfce7; --err:#991b1b; --err-bg:#fee2e2;
  --info:#1e40af; --info-bg:#dbeafe; --amber:#fef08a;
  --radius:10px; --shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}
h1{font-size:22px;margin:0} h2{font-size:17px;margin:28px 0 12px}
a{color:var(--teal);text-decoration:none} a:hover{text-decoration:underline}

/* Topbar */
.topbar{display:flex;align-items:center;gap:24px;background:#fff;border-bottom:1px solid var(--line);
  padding:0 24px;height:58px;position:sticky;top:0;z-index:20}
.brand{font-weight:800;font-size:18px;color:var(--ink);letter-spacing:-.3px}
.brand span{color:var(--teal)}
.topnav{display:flex;gap:4px;margin-left:8px}
.topnav a{padding:8px 14px;border-radius:8px;color:var(--muted);font-weight:600;font-size:13px}
.topnav a:hover{background:var(--teal-l);text-decoration:none}
.topnav a.active{background:var(--teal);color:#fff}
.topbar-right{margin-left:auto;display:flex;align-items:center;gap:14px}
.who{color:var(--muted);font-size:13px;font-weight:600}

/* Layout */
.wrap{max-width:900px;margin:28px auto;padding:0 24px}
.wrap.wide{max-width:1400px}
.lead{color:var(--muted);margin:6px 0 20px}
.page-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.page-head h1{margin-right:auto}
.head-actions{display:flex;gap:8px}
.count-badge{display:inline-block;background:var(--teal-l);color:var(--teal);font-size:13px;
  font-weight:700;padding:2px 10px;border-radius:20px;vertical-align:middle;margin-left:6px}

/* Buttons */
.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;
  border:1px solid transparent;border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600;
  cursor:pointer;font-family:inherit;transition:.12s}
.btn-primary{background:var(--teal);color:#fff}
.btn-primary:hover{background:var(--teal-d);text-decoration:none}
.btn-secondary{background:#fff;color:var(--teal);border-color:var(--teal)}
.btn-secondary:hover{background:var(--teal-l);text-decoration:none}
.btn-ghost{background:transparent;color:var(--muted);border-color:var(--line)}
.btn-ghost:hover{background:#fff;color:var(--ink);text-decoration:none}
.btn-block{width:100%}

/* Cards */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}
.table-card{padding:0;overflow:hidden}

/* Forms */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid .col-2{grid-column:1 / -1}
label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}
label .muted,.muted{color:var(--muted);font-weight:400}
input[type=text],input[type=email],input[type=password],select{
  border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:14px;font-family:inherit;
  background:#fff;color:var(--ink);width:100%}
input:focus,select:focus{outline:2px solid var(--teal);outline-offset:-1px;border-color:var(--teal)}
.form-actions{display:flex;gap:10px;align-items:center}
.inline{flex-direction:row;align-items:center;gap:8px}
.inline input{width:auto}

/* Filter + bulk bar */
.filterbar{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.filterbar input[type=text]{flex:1;min-width:240px}
.filterbar select{width:auto}
.bulkbar{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px}
.bulk-hint{color:var(--muted);font-size:12px;margin-left:auto}

/* Tables */
table{width:100%;border-collapse:collapse}
thead th{background:#fafafa;border-bottom:2px solid var(--line);text-align:left;
  padding:11px 12px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
tbody td{padding:11px 12px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:top}
tbody tr:hover{background:var(--teal-l)}
.data-table .adres{max-width:220px;color:var(--muted)}
.data-table .firma{font-weight:600}
.prefix{background:var(--amber);color:#713f12;font-weight:700;padding:1px 6px;border-radius:4px;font-size:12px}
.chk{width:36px;text-align:center}
.sort-link{color:var(--muted);font-weight:700}
.sort-link:hover{color:var(--teal)}
.empty{text-align:center;color:var(--muted);padding:32px!important}
.row-actions{white-space:nowrap;display:flex;gap:10px}
.link-edit{font-weight:600}
.link-del{background:none;border:none;color:var(--err);font-weight:600;cursor:pointer;font-size:13px;font-family:inherit;padding:0}
.link-del:hover{text-decoration:underline}
.count-badge{white-space:nowrap}

/* Tags */
.tag{display:inline-block;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:700}
.tag-meyman{background:#e0e7ff;color:#3730a3}
.tag-pirtukxane{background:#fce7f3;color:#9d174d}
.tag-manuel{background:#f3f4f6;color:#374151}
.tag{background:#e0f2fe;color:#075985}  /* varsayılan: yeni kaynaklar (ups vb.) */
.tag-meyman{background:#e0e7ff;color:#3730a3}
.tag-pirtukxane{background:#fce7f3;color:#9d174d}

/* Alerts */
.alert-ok,.alert-error,.alert-info{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:13px;font-weight:600}
.alert-ok{background:var(--ok-bg);color:var(--ok)}
.alert-error{background:var(--err-bg);color:var(--err)}
.alert-info{background:var(--info-bg);color:var(--info)}

/* User cards */
.user-card{margin-bottom:16px}
.user-role{font-weight:700;color:var(--teal);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}

/* Login */
.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0F766E 0%,#0b5a54 100%)}
.login-card{background:#fff;border-radius:16px;padding:36px 32px;width:100%;max-width:380px;box-shadow:0 20px 50px rgba(0,0,0,.2)}
.login-brand{font-weight:800;font-size:26px;text-align:center;color:var(--ink);letter-spacing:-.5px}
.login-brand span{color:var(--teal)}
.login-sub{text-align:center;color:var(--muted);margin:6px 0 24px;font-size:13px}
.login-card form{display:flex;flex-direction:column;gap:16px}
.login-card button{margin-top:6px}

/* Geniş liste sayfası: ekranı tam kullan, tablo taşmasın */
.wrap.wide{max-width:100%;padding:24px 16px}
.table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}
.data-table{width:100%;min-width:0;table-layout:auto}
.data-table th,.data-table td{padding:8px 8px;font-size:12px}
.data-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.data-table .firma{white-space:normal;font-weight:600;max-width:150px}
.data-table .adres{white-space:normal;max-width:200px;color:var(--muted)}
.data-table .email{max-width:170px}
.row-actions{gap:6px;white-space:nowrap}
.link-edit,.link-del{font-size:12px}

@media(max-width:640px){
  .form-grid{grid-template-columns:1fr}
  .topnav{display:none}
  .wrap{padding:0 14px}
  .head-actions{flex-wrap:wrap}
}
