*{box-sizing:border-box}
:root{
  --bg:#f4f7fb;--surface:#fff;--surface-2:#f8fafc;--text:#142033;--muted:#738096;
  --line:#e7ebf1;--brand:#25a7df;--brand-dark:#1579ad;--sidebar:#111827;--sidebar-2:#172033;
  --shadow:0 12px 35px rgba(15,23,42,.07);--radius:18px;
}
html,body{margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
.app-shell{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:280px;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:40}
.brand{display:flex;align-items:center;gap:13px;padding:2px 8px 24px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-mark,.login-logo{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:800;letter-spacing:.03em;background:linear-gradient(135deg,#25a7df,#1689c2);box-shadow:0 9px 24px rgba(37,167,223,.28);color:white}
.brand strong{display:block;font-size:16px}
.brand span{display:block;font-size:11px;color:#98a3b7;margin-top:3px}
.nav{display:flex;flex-direction:column;gap:8px;margin-top:25px}
.nav-link{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;color:#aeb8c9;font-size:14px;transition:.2s}
.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.08);color:#fff}
.nav-link.active{box-shadow:inset 3px 0 0 #25a7df}
.nav-link small{margin-left:auto;font-size:10px;color:#7d8798}
.nav-link.muted{opacity:.68;cursor:default}
.nav-icon{width:22px;text-align:center;font-size:17px}
.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:18px 8px 0}
.user-mini{display:flex;gap:11px;align-items:center}
.avatar{width:38px;height:38px;border-radius:12px;background:#28344a;display:grid;place-items:center;font-weight:700}
.user-mini strong{display:block;font-size:13px}
.user-mini span{display:block;font-size:11px;color:#97a3b6;margin-top:2px}
.logout-link{display:block;margin-top:15px;color:#ffb5b5;font-size:12px}
.main{margin-left:280px;min-height:100vh}
.topbar{height:104px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 34px;gap:16px;position:sticky;top:0;z-index:20}
.topbar h1{font-size:22px;margin:0 0 4px}
.topbar p{font-size:13px;color:var(--muted);margin:0}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.online-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.menu-btn{display:none;background:none;border:0;font-size:24px}
.content{padding:30px 34px 46px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:21px;display:flex;gap:16px;align-items:center;box-shadow:var(--shadow)}
.stat-card span{font-size:12px;color:var(--muted)}
.stat-card strong{display:block;font-size:28px;margin:5px 0 2px;line-height:1}
.stat-card small{font-size:11px;color:#9aa5b5}
.stat-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-size:21px;font-weight:700}
.icon-blue{background:#eaf7fd;color:#1689c2}.icon-amber{background:#fff5df;color:#c88600}.icon-orange{background:#fff0e8;color:#d86423}.icon-green{background:#eaf9ef;color:#239a4b}
.panel-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-top:18px}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.panel-head{padding:21px 22px;display:flex;align-items:center;border-bottom:1px solid var(--line)}
.panel-head h2{font-size:15px;margin:0 0 4px}
.panel-head p{font-size:11px;color:var(--muted);margin:0}
.panel-head .btn{margin-left:auto}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:850px}
th{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#8994a6;text-align:left;padding:13px 18px;background:#fafbfd;border-bottom:1px solid var(--line)}
td{padding:16px 18px;border-bottom:1px solid #eff2f6;font-size:12px;color:#4a5567}
tbody tr:hover{background:#fbfcff}
.cell-main{font-weight:700;color:#1f2a3d}
.cell-sub{font-size:11px;color:#8793a5;margin-top:3px}
.badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap}
.badge-blue{background:#eaf1ff;color:#2457e6}.badge-purple{background:#eaf7fd;color:#1689c2}.badge-indigo{background:#e7f5fb;color:#1477a8}
.badge-amber{background:#fff4db;color:#a96d00}.badge-orange{background:#fff0e7;color:#c85c1e}.badge-cyan{background:#e7f8fb;color:#147f90}
.badge-violet{background:#eaf7fd;color:#1689c2}.badge-green{background:#e7f8ec;color:#238843}.badge-gray{background:#edf0f4;color:#6b7280}.badge-red{background:#feeceb;color:#c13c35}
.quick-list{padding:9px 22px}
.quick-item{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid #eff2f6;font-size:12px}
.quick-item span{color:var(--muted)}
.quick-item strong{text-align:right}
.next-step{margin:18px 20px 22px;padding:18px;border-radius:15px;background:linear-gradient(135deg,#eef8fc,#f5fbfe)}
.next-step span{font-size:9px;letter-spacing:.12em;color:#4f7890;font-weight:700}
.next-step strong{display:block;margin:6px 0;font-size:14px}
.next-step p{font-size:11px;color:#667085;line-height:1.5;margin:0}
.btn{border:0;border-radius:11px;padding:10px 14px;font-weight:700;font-size:12px;cursor:pointer}
.btn-primary{background:linear-gradient(135deg,var(--brand),#1689c2);color:#fff;box-shadow:0 9px 20px rgba(37,167,223,.24)}
.btn-primary:hover{filter:brightness(.97)}
.btn-block{width:100%;display:block;text-align:center;padding:13px}
.btn-soft{background:#f1f4f9;color:#728097}
.input{width:100%;height:45px;border:1px solid #dfe5ec;border-radius:11px;padding:0 13px;outline:none;background:#fff;color:var(--text);margin:7px 0 15px}
.input:focus{border-color:#25a7df;box-shadow:0 0 0 3px rgba(37,167,223,.12)}
label{font-size:12px;font-weight:700;color:#4d596b}
.alert{padding:12px 14px;border-radius:11px;font-size:12px;margin:14px 0}
.alert-danger{background:#fff0f0;color:#a43e3e;border:1px solid #ffdcdc}
.alert-success{background:#ecfbf1;color:#1f7c40;border:1px solid #cdeed8}
.empty-state{padding:34px;text-align:center;display:flex;flex-direction:column;gap:5px;align-items:center}
.empty-icon{width:48px;height:48px;border-radius:15px;background:#f0f4fa;display:grid;place-items:center;font-size:20px;color:#77849b}
.empty-state strong{color:#354054}
.empty-state span{font-size:11px;color:#8b96a6}
.login-body{min-height:100vh;background:#0f172a}
.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}
.login-hero{padding:8vw;display:flex;flex-direction:column;justify-content:center;color:#fff;background:
radial-gradient(circle at 20% 20%,rgba(37,167,223,.24),transparent 32%),
linear-gradient(145deg,#0f172a,#17223c)}
.hero-badge{font-size:10px;letter-spacing:.18em;font-weight:800;color:#63c6ee;margin-bottom:24px}
.login-hero h1{font-size:clamp(38px,5vw,72px);line-height:1.02;margin:0 0 22px;letter-spacing:-.04em}
.login-hero>p{max-width:650px;color:#aab6cc;font-size:15px;line-height:1.7}
.hero-points{margin-top:44px;display:grid;gap:16px}
.hero-points div{display:flex;align-items:center;gap:13px;color:#bac5d9;font-size:13px}
.hero-points b{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.07);display:grid;place-items:center;color:#63c6ee;font-size:11px}
.login-panel{display:grid;place-items:center;padding:35px;background:#f7f9fc}
.login-card,.setup-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:0 24px 60px rgba(15,23,42,.12)}
.login-card .login-logo,.setup-card .login-logo{margin-bottom:25px}
.login-card h2,.setup-card h1{margin:0 0 7px;font-size:26px;letter-spacing:-.02em}
.login-subtitle,.setup-card>p{font-size:13px;color:var(--muted);margin:0 0 27px}
.login-foot{text-align:center;margin-top:24px;font-size:10px;color:#a0a8b5}
.setup-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#eef3fb,#f8f9fc)}
.setup-card{width:min(520px,100%)}
@media(max-width:1100px){
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panel-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}
  .main{margin-left:0}.menu-btn{display:block}.topbar{padding:0 18px;height:88px}.topbar-actions{display:none}
  .content{padding:20px 16px 34px}.stats-grid{grid-template-columns:1fr 1fr}
  .login-layout{grid-template-columns:1fr}.login-hero{display:none}.login-panel{min-height:100vh;padding:18px}
}
@media(max-width:560px){
  .stats-grid{grid-template-columns:1fr}
  .topbar p{display:none}
  .login-card,.setup-card{padding:26px;border-radius:18px}
}

.page-actions{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.search-form{display:flex;gap:8px;flex:1;max-width:580px}.input.compact{margin:0;height:40px}.hidden{display:none!important}.form-panel{margin-bottom:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px;padding:22px}.field{min-width:0}.field.span2,.span2{grid-column:span 2}.textarea{height:82px;padding:12px;resize:vertical}.textarea.big{height:110px}.field small{display:block;margin:-9px 0 13px;color:#8a96a8;font-size:10px}.click-row{cursor:pointer}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.detail-card,.timeline-panel{margin-bottom:18px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:8px 22px 22px}.info-grid>div{padding:15px 0;border-bottom:1px solid #eef1f5}.info-grid>div:nth-child(odd){padding-right:20px}.info-grid span{display:block;color:#8792a4;font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.info-grid strong{font-size:13px}.side-form{padding:20px}.timeline{padding:12px 22px 22px}.timeline-item{position:relative;padding:8px 0 16px 25px;border-left:1px solid #dfe5ee}.timeline-dot{position:absolute;left:-5px;top:13px;width:9px;height:9px;border-radius:50%;background:#25a7df;box-shadow:0 0 0 4px #eaf7fd}.timeline-item strong{display:block;font-size:12px}.timeline-item span{font-size:10px;color:#929caf}.timeline-item p{font-size:12px;line-height:1.55;color:#566174;margin:7px 0 0}.timeline.small .timeline-item{padding-bottom:13px}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.form-grid,.info-grid{grid-template-columns:1fr}.field.span2,.span2{grid-column:span 1}.page-actions{align-items:stretch;flex-direction:column}.search-form{max-width:none}}

.row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.row-actions form{margin:0}.btn.mini{padding:7px 10px;font-size:10px}.role-pill{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:700}.role-admin{background:#e7f5fb;color:#1477a8}.role-service_manager{background:#eaf7fd;color:#1689c2}.role-technician{background:#e7f8ec;color:#238843}.role-reception{background:#fff4db;color:#9d6800}.role-info{margin-top:18px}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:18px}.role-grid>div{padding:15px;border-right:1px solid #eef1f5}.role-grid>div:last-child{border-right:0}.role-grid strong{display:block;font-size:12px;margin-bottom:6px}.role-grid span{font-size:11px;color:#7c8798;line-height:1.45}
@media(max-width:900px){.role-grid{grid-template-columns:1fr 1fr}.role-grid>div{border-right:0;border-bottom:1px solid #eef1f5}}
@media(max-width:560px){.role-grid{grid-template-columns:1fr}}

/* Teknor corporate branding */
.company-brand{gap:14px;padding-top:5px;padding-bottom:22px}
.sidebar-logo{display:block;width:148px;max-width:100%;height:auto;object-fit:contain;filter:brightness(1.35) saturate(.95)}
.company-brand>div{min-width:0}
.company-brand strong{font-size:12px;line-height:1.35;color:#d9e4ee;font-weight:700;max-width:145px}
.brand-mark{display:none!important}

.login-company-brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}
.login-company-brand img{width:150px;max-width:65%;height:auto;display:block}
.login-company-brand span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}

.login-card h2,.setup-card h1{color:#111827}
.sidebar{background:linear-gradient(180deg,#10151b,#151d27)}
.nav-link.active{background:rgba(37,167,223,.13)}
.nav-link:hover{background:rgba(255,255,255,.07)}
.btn-primary{background:linear-gradient(135deg,#25a7df,#1689c2)}
.btn-primary:hover{filter:brightness(.96)}
.online-dot{background:#25a7df;box-shadow:0 0 0 4px rgba(37,167,223,.12)}
.login-hero{background:
radial-gradient(circle at 20% 20%,rgba(37,167,223,.22),transparent 32%),
linear-gradient(145deg,#10151b,#17222d)}


/* v2.2.1 - Teknor branding fix + cache-safe sizing */
.company-brand{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:4px 8px 20px!important;
}
.sidebar-logo-box{
  width:174px!important;
  height:62px!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  background:#ffffff!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sidebar-logo{
  width:100%!important;
  height:100%!important;
  max-width:154px!important;
  max-height:46px!important;
  object-fit:contain!important;
  display:block!important;
  filter:none!important;
}
.brand-system-title{
  color:#d9e4ee!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
  max-width:180px!important;
}
.login-company-brand{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  align-items:flex-start!important;
  margin-bottom:24px!important;
}
.login-logo-box{
  width:190px!important;
  height:72px!important;
  padding:9px 12px!important;
  border:1px solid #e4e9ef!important;
  border-radius:12px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.login-logo-box img{
  width:100%!important;
  height:100%!important;
  max-width:166px!important;
  max-height:52px!important;
  object-fit:contain!important;
  display:block!important;
}

/* Remove remaining purple accents */
:root{--brand:#2fa9df!important;--brand-dark:#147eaf!important}
.btn-primary{background:linear-gradient(135deg,#2fa9df,#147eaf)!important;box-shadow:0 9px 20px rgba(47,169,223,.22)!important}
.nav-link.active{box-shadow:inset 3px 0 0 #2fa9df!important;background:rgba(47,169,223,.13)!important}
.input:focus{border-color:#2fa9df!important;box-shadow:0 0 0 3px rgba(47,169,223,.12)!important}
.role-admin,.role-service_manager{background:#e8f7fd!important;color:#147eaf!important}
.badge-purple,.badge-indigo,.badge-violet{background:#e8f7fd!important;color:#147eaf!important}


/* v2.2.2 - transparent Teknor logo, no white background */
.sidebar-logo-box,
.login-logo-box{
  display:none!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  width:auto!important;
  height:auto!important;
}

.company-brand{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:8px!important;
  padding:6px 10px 20px!important;
  background:transparent!important;
}

.sidebar-logo{
  display:block!important;
  width:176px!important;
  max-width:176px!important;
  height:58px!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
  filter:none!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.brand-system-title{
  color:#eef5f8!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
  max-width:190px!important;
  margin:0!important;
}

.login-company-brand{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin-bottom:24px!important;
  background:transparent!important;
}

.login-teknor-logo{
  display:block!important;
  width:185px!important;
  max-width:185px!important;
  height:72px!important;
  max-height:72px!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.login-company-brand span{
  color:#64748b!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}

/* Keep the sidebar corporate dark and blue */
.sidebar{background:linear-gradient(180deg,#0f141a,#141d27)!important}
.nav-link.active{
  background:rgba(47,169,223,.14)!important;
  box-shadow:inset 3px 0 0 #2fa9df!important;
}

.service-detail-actions{margin-bottom:12px}


/* =========================================================
   v2.4 MOBILE EXPERIENCE
   ========================================================= */
.sidebar-overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(4,10,18,.58);
  backdrop-filter:blur(2px);
  z-index:35;
}
.sidebar-overlay.show{display:block}
body.menu-open{overflow:hidden}

@media(max-width:820px){
  body{overflow-x:hidden}
  .sidebar{
    width:min(86vw,320px)!important;
    box-shadow:18px 0 45px rgba(0,0,0,.28);
  }

  .topbar{
    min-height:76px!important;
    height:auto!important;
    padding:14px 16px!important;
    align-items:center!important;
  }

  .topbar > div:nth-child(2){
    min-width:0;
    flex:1;
  }

  .topbar h1{
    font-size:18px!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .topbar p{
    display:block!important;
    font-size:11px!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:72vw;
  }

  .menu-btn{
    width:42px;
    height:42px;
    border-radius:12px;
    background:#f1f5f8!important;
    color:#17212d;
    flex:0 0 auto;
  }

  .content{padding:16px 12px 28px!important}

  .stats-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  .stat-card{
    padding:14px!important;
    border-radius:15px!important;
    gap:10px!important;
    min-height:102px;
  }

  .stat-icon{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:17px!important;
  }

  .stat-card strong{font-size:22px!important}
  .stat-card span{font-size:10px!important}
  .stat-card small{font-size:9px!important}

  .panel,.form-panel{
    border-radius:15px!important;
  }

  .panel-head{
    padding:16px!important;
    gap:10px;
    align-items:flex-start!important;
  }

  .panel-head h2{font-size:14px!important}
  .panel-head p{font-size:10px!important}
  .panel-head .btn{margin-left:auto}

  .page-actions{
    gap:10px!important;
    margin-bottom:12px!important;
  }

  .page-actions .btn{
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .search-form{
    width:100%;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
  }

  .search-form .input{
    min-width:0;
  }

  .form-grid{
    display:block!important;
    padding:16px!important;
  }

  .form-grid .field,
  .form-grid .span2{
    width:100%!important;
    grid-column:auto!important;
  }

  .input{
    height:48px!important;
    font-size:16px!important; /* iOS zoom prevention */
    margin-top:7px!important;
    margin-bottom:14px!important;
  }

  textarea.input{
    height:96px!important;
    min-height:96px!important;
    line-height:1.4!important;
  }

  textarea.input.big{
    height:128px!important;
    min-height:128px!important;
  }

  select.input{font-size:16px!important}

  .btn{
    min-height:42px;
    touch-action:manipulation;
  }

  .btn-primary.btn-block,
  .form-grid > .span2 > .btn-primary{
    width:100%!important;
    min-height:48px;
    font-size:13px;
  }

  /* Responsive tables become stacked mobile cards */
  .table-wrap{
    overflow:visible!important;
    padding:8px 10px 12px;
  }

  table{
    min-width:0!important;
    width:100%!important;
  }

  thead{display:none!important}

  tbody, tr, td{display:block!important;width:100%!important}

  tbody tr{
    background:#fff;
    border:1px solid #e8edf2;
    border-radius:13px;
    margin-bottom:10px;
    padding:11px 12px;
    box-shadow:0 4px 14px rgba(15,23,42,.035);
  }

  tbody tr:hover{background:#fff!important}

  tbody td{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    border-bottom:1px solid #eff2f5!important;
    padding:9px 0!important;
    text-align:right!important;
  }

  tbody td:last-child{border-bottom:0!important}

  tbody td::before{
    content:"";
    flex:0 0 34%;
    text-align:left;
    color:#8994a4;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }

  /* services.php */
  body:has(.click-row) tbody td:nth-child(1)::before{content:"Servis No"}
  body:has(.click-row) tbody td:nth-child(2)::before{content:"Firma / Cihaz"}
  body:has(.click-row) tbody td:nth-child(3)::before{content:"Seri No"}
  body:has(.click-row) tbody td:nth-child(4)::before{content:"Teknisyen"}
  body:has(.click-row) tbody td:nth-child(5)::before{content:"Durum"}
  body:has(.click-row) tbody td:nth-child(6)::before{content:"Giriş"}

  .cell-main,.cell-sub{text-align:right}
  .badge{white-space:normal!important;text-align:center}

  .detail-grid{display:block!important}
  .detail-grid > aside{margin-top:12px}

  .info-grid{
    display:block!important;
    padding:6px 16px 16px!important;
  }

  .info-grid>div,
  .info-grid>div:nth-child(odd){
    padding:12px 0!important;
  }

  .timeline{padding:10px 16px 16px!important}
  .timeline-item{padding-left:22px!important}
  .timeline-item p{font-size:13px!important}

  .side-form{padding:16px!important}

  .role-grid{display:block!important;padding:10px 16px 16px!important}
  .role-grid>div{
    border-right:0!important;
    border-bottom:1px solid #eef1f5;
    padding:13px 0!important;
  }

  .row-actions{
    justify-content:flex-end!important;
  }

  .service-detail-actions{
    position:sticky;
    top:76px;
    z-index:15;
    background:rgba(244,247,251,.92);
    backdrop-filter:blur(8px);
    padding:8px 0;
  }

  .service-detail-actions .btn{
    width:100%;
  }

  .company-brand{
    padding-left:4px!important;
    padding-right:4px!important;
  }

  .sidebar-logo{
    width:168px!important;
    max-width:168px!important;
  }
}

@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr!important}

  .topbar p{max-width:62vw}

  .search-form{
    grid-template-columns:1fr!important;
  }

  .search-form .btn{
    width:100%!important;
  }

  .page-actions .btn-primary{
    width:100%!important;
  }

  tbody td{
    flex-direction:column!important;
    gap:4px!important;
    text-align:left!important;
  }

  tbody td::before{
    flex:none!important;
    width:auto!important;
  }

  .cell-main,.cell-sub{text-align:left!important}

  .row-actions{
    justify-content:flex-start!important;
    width:100%;
  }

  .row-actions .btn,
  .row-actions form{
    flex:1 1 auto;
  }

  .row-actions form .btn{
    width:100%;
  }
}


/* v2.5 - simplified corporate login */
.simple-login-hero{
  position:relative;
  z-index:2;
  max-width:590px;
  padding:20px;
}
.login-hero-logo{
  display:block;
  width:235px;
  max-width:70%;
  height:auto;
  object-fit:contain;
  object-position:left center;
  margin:0 0 30px;
  background:transparent;
  border:0;
  box-shadow:none;
}
.login-hero-line{
  width:54px;
  height:4px;
  border-radius:99px;
  background:#2fa9df;
  margin-bottom:24px;
}
.simple-login-hero h1{
  max-width:570px;
  margin:0 0 18px;
  font-size:38px;
  line-height:1.13;
  letter-spacing:-.035em;
  color:#fff;
  font-weight:800;
}
.simple-login-hero p{
  max-width:520px;
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:#aebdca;
}
.login-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%,rgba(47,169,223,.20),transparent 32%),
    radial-gradient(circle at 85% 80%,rgba(47,169,223,.08),transparent 28%),
    linear-gradient(145deg,#0d1319,#17232e)!important;
}
.login-hero::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border:1px solid rgba(255,255,255,.035);
  border-radius:50%;
  right:-170px;
  bottom:-210px;
}

@media(max-width:820px){
  .login-hero{
    min-height:270px!important;
    padding:32px 24px!important;
  }
  .simple-login-hero{
    padding:0!important;
  }
  .login-hero-logo{
    width:180px!important;
    margin-bottom:20px!important;
  }
  .login-hero-line{
    margin-bottom:17px!important;
  }
  .simple-login-hero h1{
    font-size:26px!important;
    margin-bottom:12px!important;
  }
  .simple-login-hero p{
    font-size:13px!important;
    line-height:1.55!important;
  }
}

.serial-scan{position:relative}.serial-scan .input{width:100%;padding-right:52px!important}.scan-icon{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:10px;background:#e8f7fd;color:#168fbe;display:flex;align-items:center;justify-content:center;cursor:pointer}.scan-icon svg{width:21px;height:21px;fill:currentColor}.scan-modal{display:none;position:fixed;inset:0;z-index:1000;background:rgba(3,9,15,.8);padding:20px;align-items:center;justify-content:center}.scan-modal.open{display:flex}.scan-box{width:min(600px,100%);background:#fff;border-radius:20px;overflow:hidden}.scan-head{padding:17px 19px;display:flex;justify-content:space-between;align-items:flex-start}.scan-head b,.scan-head small{display:block}.scan-head small{margin-top:4px;color:#788696}.scan-head button{border:0;border-radius:9px;width:36px;height:36px;font-size:23px}.scan-video{position:relative;aspect-ratio:4/3;background:#05080b}.scan-video video{width:100%;height:100%;object-fit:cover}.scan-frame{position:absolute;left:9%;right:9%;top:36%;height:28%;border:2px solid #fff;border-radius:13px;box-shadow:0 0 0 999px rgba(0,0,0,.22)}.scan-frame:after{content:"";position:absolute;left:5%;right:5%;top:50%;height:2px;background:#2fa9df;box-shadow:0 0 10px #2fa9df}.scan-status{padding:14px 19px 18px;color:#657384;font-size:12px}@media(max-width:600px){.scan-modal{padding:0;align-items:flex-end}.scan-box{border-radius:22px 22px 0 0}.scan-video{aspect-ratio:3/4;max-height:65vh}}


/* v2.8 - searchable company selector */
.company-search-wrap{position:relative}
.company-search-input-row{position:relative}
.company-search-input-row .input{padding-right:48px!important}
.company-clear-btn{
  display:none;
  position:absolute;
  right:7px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  border:0;
  border-radius:9px;
  background:#eef3f6;
  color:#607080;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}
.company-clear-btn.show{display:block}
.company-search-input-row .input.selected{
  border-color:#2fa9df!important;
  background:#f1fbff!important;
  font-weight:700;
}
.company-search-error{
  border-color:#dc4c4c!important;
  box-shadow:0 0 0 3px rgba(220,76,76,.12)!important;
}
.company-search-results{
  display:none;
  position:absolute;
  left:0;
  right:0;
  top:calc(100% - 8px);
  z-index:120;
  max-height:330px;
  overflow:auto;
  background:#fff;
  border:1px solid #dfe6ec;
  border-radius:12px;
  box-shadow:0 18px 45px rgba(15,23,42,.14);
  padding:6px;
}
.company-search-results.open{display:block}
.company-result-item{
  width:100%;
  border:0;
  background:transparent;
  border-radius:9px;
  padding:11px 12px;
  text-align:left;
  cursor:pointer;
  display:block;
}
.company-result-item:hover{background:#edf8fc}
.company-result-item strong{
  display:block;
  color:#17212d;
  font-size:12px;
}
.company-result-item span{
  display:block;
  margin-top:4px;
  color:#7a8796;
  font-size:10px;
}
.company-search-loading,.company-search-empty{
  padding:15px 12px;
  color:#788696;
  font-size:11px;
}
@media(max-width:820px){
  .company-search-results{
    max-height:42vh;
    border-radius:11px;
  }
  .company-result-item{
    padding:14px 12px;
  }
  .company-result-item strong{font-size:14px}
  .company-result-item span{font-size:11px}
}


/* v2.9 - device handover / brought-by fields */
.handover-section{
  padding:14px;
  border:1px solid #e5ebf0;
  border-radius:14px;
  background:#fafcfd;
  margin-bottom:12px;
}
.handover-choice{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 14px;
}
.handover-option{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 13px;
  border:1px solid #dfe7ed;
  border-radius:11px;
  background:#fff;
  cursor:pointer;
  font-size:12px;
  font-weight:700;
}
.handover-option:has(input:checked){
  border-color:#2fa9df;
  background:#edf9fd;
  color:#147eaf;
}
.handover-option input{accent-color:#2fa9df}
.handover-extra{max-width:520px}
.handover-extra .input{margin-bottom:0}
@media(max-width:600px){
  .handover-choice{display:grid;grid-template-columns:1fr}
  .handover-option{min-height:46px}
}

/* v3.4 inventory */
.inventory-stats{margin-bottom:16px}
.inventory-filters{
  padding:0 18px 18px;
  display:grid;
  grid-template-columns:minmax(220px,340px) minmax(260px,1fr) auto auto;
  gap:9px;
  align-items:center;
}
.inventory-filters .input{margin:0!important}
.inventory-company{margin-top:14px}
.inventory-company .panel-head{border-bottom:1px solid #edf1f4}
.inventory-table td{vertical-align:middle}
@media(max-width:820px){
  .inventory-filters{grid-template-columns:1fr;padding:0 14px 14px}
  .inventory-filters .btn{width:100%}
  .inventory-table tbody td:nth-child(1)::before{content:"Kullanıcı"}
  .inventory-table tbody td:nth-child(2)::before{content:"Cihaz"}
  .inventory-table tbody td:nth-child(3)::before{content:"Seri No"}
  .inventory-table tbody td:nth-child(4)::before{content:"Demirbaş"}
  .inventory-table tbody td:nth-child(5)::before{content:"Servis"}
  .inventory-table tbody td:nth-child(6)::before{content:"Son Durum"}
  .inventory-table tbody td:nth-child(7)::before{content:"Son Geliş"}
}
