

/* Güncel durum: mali özetler ve tarih sıralı hatırlatmalar. */
.dashboard-page { background:#eeefef; }
.dashboard-page .sidebar { background:#34383c; }
.dashboard-page .navitem.active { background:#464c51; border-color:#626970; }
.dashboard-page .navgroup-label { color:#aab3bb; }
.dashboard-page main { padding:24px; }
.dashboard-eyebrow { margin:0 0 7px; font-size:10px; letter-spacing:1.5px; color:#869198; font-weight:700; }
.dashboard-layout { display:grid; grid-template-columns:minmax(0,1fr) 275px; gap:20px; align-items:start; }
.dashboard-content { min-width:0; display:flex; flex-direction:column; gap:20px; }
.overview-card { background:white; border:1px solid #e0e3e5; border-radius:8px; overflow:hidden; }
.overview-card header { display:flex; align-items:center; gap:12px; padding:17px 20px; border-bottom:1px solid #e8eaec; }
.overview-card h2 { margin:0; font-weight:500; font-size:18px; color:#405267; }
.overview-card header > span { color:#959ca1; font-size:11px; }
.overview-card header > a { margin-left:auto; color:#62717e; text-decoration:none; font-size:11px; white-space:nowrap; }
.collections h2 { color:#28a9c6; } .payments-overview h2 { color:#b36d43; } .production-overview h2 { color:#588e80; }
.overview-body { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) minmax(135px,.85fr); min-height:228px; }
.ring-stat { display:flex; align-items:center; flex-direction:column; justify-content:center; padding:22px 8px; }
.ring-stat h3 { margin:0 0 17px; font-size:10px; letter-spacing:.5px; color:#959da3; font-weight:700; text-align:center; }
.metric-ring { --ring-color:#f27e70; width:min(154px,100%); aspect-ratio:1; border-radius:50%; padding:9px; background:conic-gradient(var(--ring-color) var(--progress),#eff0f1 0); }
.metric-ring.slate { --ring-color:#879499; } .metric-ring.teal { --ring-color:#23bca1; }
.metric-center { background:white; border-radius:50%; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; text-align:center; padding:6px; }
.metric-center strong { font-size:clamp(11px,1.08vw,19px); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; letter-spacing:-.5px; }
.ring-check { color:#24bca0; font-size:39px; line-height:1; font-weight:800; }
.ring-empty-label { font-size:10px; color:#929a9f; text-transform:uppercase; font-weight:600; }
.overview-side { border-left:1px solid #e8eaec; display:flex; flex-direction:column; }
.overview-side > div { flex:1; padding:23px 15px; display:grid; grid-template-columns:28px 1fr; gap:5px 9px; align-content:center; }
.overview-side > div + div { border-top:1px solid #e8eaec; }
.stat-icon { grid-row:span 2; width:28px; height:28px; background:#eef0f0; border-radius:50%; display:grid; place-items:center; color:#96a0a5; font-size:17px; }
.overview-side strong { font-size:19px; color:#48565d; } .overview-side div > span:last-child { font-size:9px; line-height:1.6; color:#929b9f; font-weight:700; }
.overview-note { margin:0; padding:10px 20px; background:#fafbfb; font-size:10px; line-height:1.6; color:#92999d; border-top:1px solid #eff0f1; }
.production-summary { padding:18px 22px; display:flex; gap:30px; align-items:center; flex-wrap:wrap; }
.production-summary > div { display:flex; flex-direction:column; gap:4px; } .production-summary strong { font-size:26px; color:#405a53; } .production-summary span { font-size:11px; color:#8b9692; } .production-summary .btn { margin-left:auto; font-size:11px; }
.production-overview table th { background:#f8faf9; font-size:10px; } .production-overview table td { font-size:12px; } .plan-product { display:block; font-size:10px; color:#87938e; margin-top:4px; }
.balance-strip { display:flex; gap:32px; padding:22px; flex-wrap:wrap; } .balance-strip > div { display:flex; flex-direction:column; gap:7px; } .balance-strip span { font-size:11px; color:#8c969e; } .balance-strip strong { color:#415365; font-size:21px; } .balance-strip p { font-size:12px; color:#8c969e; }
.dashboard-small-stats { display:flex; gap:15px; flex-wrap:wrap; } .dashboard-small-stats a { flex:1; background:#fff; border:1px solid #e0e3e5; padding:17px 20px; border-radius:7px; display:flex; align-items:center; gap:12px; text-decoration:none; color:#52616c; } .dashboard-small-stats strong { font-size:22px; } .dashboard-small-stats span { font-size:11px; }
.reminder-panel { background:#f9fafb; border:1px solid #e0e3e5; border-radius:8px; overflow:hidden; }
.reminder-heading { padding:18px; background:linear-gradient(120deg,#405367,#526780); } .reminder-heading h2 { margin:0 0 7px; font-size:15px; color:#fff; } .reminder-heading span { font-size:11px; color:#e0e8f0; }
.reminder-group { padding:17px 16px 5px; background:linear-gradient(135deg,#117b69,#168371); color:#fff; }
.reminder-group.overdue { background:linear-gradient(135deg,#bd5046,#ac4140); }
.reminder-group.upcoming { background:linear-gradient(135deg,#ffe68a,#ffd34e); color:#59420b; }
.reminder-group.missing { background:linear-gradient(135deg,#e9edf1,#dce3e9); color:#435361; }
.reminder-group.upcoming .reminder-item { border-left-color:#96721466; background:#ffffff33; }
.reminder-group.upcoming .reminder-item:hover { background:#ffffff66; }
.reminder-group.upcoming h3 > span { background:#89670d22; }
.reminder-group.missing .reminder-item { border-left-color:#53667766; background:#ffffff22; }
.reminder-group.missing h3 > span { background:#53667722; }
.reminder-group.upcoming .reminder-item:focus-visible,.reminder-group.missing .reminder-item:focus-visible { outline-color:currentColor; }
.reminder-group h3 { font-size:10px; letter-spacing:.5px; margin:0 0 12px 17px; display:flex; align-items:center; justify-content:space-between; } .reminder-group h3 > span { border-radius:20px; padding:3px 7px; background:#ffffff24; }
.reminder-item { color:inherit; position:relative; display:flex; flex-direction:column; gap:5px; padding:10px 10px 13px 17px; border-left:2px solid #ffffff66; border-radius:0 6px 6px 0; background:#ffffff08; text-decoration:none; margin:0 0 10px 3px; transition:background .15s; }
.reminder-item:hover { background:#ffffff16; } .reminder-item:focus-visible { outline:2px solid #fff; outline-offset:2px; } .timeline-dot { width:8px; height:8px; border:2px solid currentColor; border-radius:50%; position:absolute; top:13px; left:-5px; background:currentColor; }
.reminder-meta { font-size:9px; text-transform:uppercase; font-weight:700; opacity:.9; } .reminder-item strong { font-size:12px; } .reminder-item > span:not(.reminder-meta):not(.timeline-dot) { font-size:11px; line-height:1.4; overflow-wrap:anywhere; } .reminder-item b { font-size:12px; font-weight:600; }
.more-reminders summary { font-size:10px; padding:0 0 14px 18px; cursor:pointer; } .reminder-foot { font-size:10px; line-height:1.6; color:#929ca1; margin:0; padding:15px 18px; } .reminder-empty { padding:35px 20px; text-align:center; display:flex; flex-direction:column; gap:10px; color:#8c969b; } .reminder-empty > span { color:#25b99f; font-size:36px; } .reminder-empty p { font-size:12px; line-height:1.5; margin:0; }
@media(min-width:1600px) { .metric-ring { width:170px; } .overview-body { min-height:260px; } .dashboard-layout { grid-template-columns:minmax(0,1fr) 285px; } }
@media(max-width:1250px) { .overview-body { grid-template-columns:repeat(3,minmax(0,1fr)); } .overview-side { grid-column:1/-1; border-left:none; border-top:1px solid #e8eaec; flex-direction:row; } .overview-side > div { padding:12px 16px; } .overview-side > div + div { border-top:none; border-left:1px solid #e8eaec; } .metric-center strong { font-size:13px; } .overview-card header { flex-wrap:wrap; } }
@media(max-width:1000px) { .dashboard-layout { grid-template-columns:minmax(0,1fr); } .reminder-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); } .reminder-heading,.reminder-foot,.reminder-empty { grid-column:1/-1; } }
@media(max-width:600px) { .dashboard-page main { padding:14px; } .overview-body { grid-template-columns:1fr; } .ring-stat { padding:15px; } .metric-ring { width:155px; } .overview-side { grid-column:1; } .reminder-panel { display:block; } .overview-card header > span { width:100%; order:3; } .production-summary { gap:18px; } .production-summary .btn { margin-left:0; } }
@media print { .dashboard-layout { display:block; } .overview-card,.reminder-panel { break-inside:avoid; margin-bottom:14px; } .reminder-group,.reminder-group.overdue,.reminder-group.upcoming,.reminder-group.missing { color:#333; background:white; border:1px solid #ddd; } .reminder-heading { background:white; } .reminder-heading h2,.reminder-heading span { color:#333; } .reminder-item { border-color:#ccc; } .metric-ring { print-color-adjust:exact; } }
.dashboard-top-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-bottom:22px; }
.top-stat { display:flex; align-items:center; gap:18px; border-radius:10px; padding:23px; min-height:128px; color:#fff; text-decoration:none; box-shadow:0 5px 16px #26374d12; transition:transform .15s,box-shadow .15s; }
.top-stat:hover { transform:translateY(-2px); box-shadow:0 8px 22px #26374d25; }
.orders-stat { background:linear-gradient(120deg,#298dcc,#4368c4); }
.vehicles-stat { background:linear-gradient(120deg,#e59732,#e47741); }
.employees-stat { background:linear-gradient(120deg,#7763c5,#a567c1); }
.top-stat-icon { display:grid; place-items:center; width:51px; height:51px; flex-shrink:0; border:1px solid #ffffff3b; border-radius:12px; background:#ffffff1f; font-size:29px; }
.top-stat > div > span { font-size:10px; letter-spacing:1.2px; font-weight:700; color:#fff; opacity:.9; }
.top-stat strong { display:block; margin:6px 0; font-size:30px; font-weight:700; line-height:1.1; }
.top-stat small { font-size:15px; font-weight:400; opacity:.9; }
.top-stat p { margin:0; font-size:11px; line-height:1.4; color:#fff; opacity:.85; }
.top-stat-arrow { margin-left:auto; align-self:flex-start; opacity:.65; font-size:20px; }
.dashboard-page .collections header { background:#e7f6fa; border-bottom-color:#cceaf0; }
.dashboard-page .collections header h2 { color:#168fa8; font-weight:600; }
.dashboard-page .payments-overview header { background:#fff0e6; border-bottom-color:#f9ddc8; }
.dashboard-page .payments-overview header h2 { color:#c57533; font-weight:600; }
.dashboard-page .production-overview header { background:#e5f5ed; border-bottom-color:#c9e9d8; }
.dashboard-page .production-overview header h2 { color:#27835d; font-weight:600; }
.dashboard-page .overview-card.collections { border-top:4px solid #24adc3; }
.dashboard-page .overview-card.payments-overview { border-top:4px solid #ec9762; }
.dashboard-page .overview-card.production-overview { border-top:4px solid #36a677; }
.dashboard-page .metric-ring.coral { --ring-color:#f06e65; }
.dashboard-page .metric-ring.slate { --ring-color:#62928a; }
.dashboard-page .metric-ring.coral .metric-center { background:#fff9f7; }
.dashboard-page .metric-ring.slate .metric-center { background:#f5fbf9; }
.dashboard-page .metric-ring.coral strong { color:#ce514b; }
.dashboard-page .metric-ring.slate strong { color:#33766a; }
@media(max-width:1050px) { .top-stat { padding:18px; gap:12px; } .top-stat-icon { width:38px; height:38px; font-size:24px; } .top-stat-arrow { display:none; } .top-stat strong { font-size:25px; } }
@media(max-width:650px) { .dashboard-top-stats { grid-template-columns:1fr; gap:12px; } .top-stat { min-height:104px; } .top-stat-icon { width:44px; height:44px; } }
@media print { .top-stat { print-color-adjust:exact; box-shadow:none; } }
  :root{
    --bg: #F6F3EC;
    --surface: #FFFFFF;
    --ink: #262220;
    --ink-soft: #6B6459;
    --line: #E3DCCF;
    --primary: #2B3A67;
    --primary-soft: #E7EAF2;
    --accent: #D9691F;
    --accent-soft: #FBE9DC;
    --ok: #3E7C5A;
    --ok-soft: #E4F0E8;
    --warn: #C7912B;
    --warn-soft: #FAF0DD;
    --danger: #B5432E;
    --danger-soft: #F8E5E0;
    --mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
    --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:var(--sans);
    -webkit-font-smoothing:antialiased;
  }
  #app{display:flex; min-height:100vh;}

  /* SIDEBAR */
  .sidebar{
    width:232px; flex-shrink:0;
    background:var(--primary);
    color:#EDEFF6;
    display:flex; flex-direction:column;
    position:sticky; top:0; height:100vh;
  }
  .brand{
    padding:22px 20px 16px 20px;
    border-bottom:1px solid rgba(255,255,255,0.12);
  }
  .brand .mark{
    display:flex; align-items:center; gap:8px;
    font-weight:700; font-size:15px; letter-spacing:0.02em;
  }
  .mark .spool{
    width:16px;height:16px;border-radius:50%;
    background:var(--accent);
    position:relative; flex-shrink:0;
    box-shadow: inset 0 0 0 3px rgba(43,58,103,0.9);
  }
  .brand .sub{
    font-size:11px; color:#B9C0D9; margin-top:4px; letter-spacing:0.06em; text-transform:uppercase;
  }
  nav.navlist{ padding:12px 10px; display:flex; flex-direction:column; gap:2px; flex:1; overflow-y:auto;}
  .navitem{
    display:flex; align-items:center; gap:10px;
    padding:9px 12px; border-radius:8px;
    color:#CBD1E6; font-size:13.5px; cursor:pointer;
    border:1px solid transparent;
    transition:background .12s ease;
  }
  .navitem .ico{width:16px;text-align:center; font-size:13px; opacity:.9;}
  .navitem:hover{background:rgba(255,255,255,0.07); color:#fff;}
  .navitem.active{
    background:rgba(217,105,31,0.16);
    border-color:rgba(217,105,31,0.5);
    color:#fff; font-weight:600;
  }
  .navgroup-label{
    font-size:10px; text-transform:uppercase; letter-spacing:.09em;
    color:#8B93B8; padding:14px 12px 4px 12px;
  }
  .sidebar-foot{
    padding:14px 20px; font-size:11px; color:#8B93B8; border-top:1px solid rgba(255,255,255,0.1);
  }

  /* MAIN */
  main{flex:1; min-width:0; padding:28px 34px 60px 34px;}
  .pagehead{
    display:flex; justify-content:space-between; align-items:flex-end;
    margin-bottom:20px; gap:16px; flex-wrap:wrap;
  }
  .pagehead h1{ font-size:22px; margin:0 0 4px 0; letter-spacing:-0.01em;}
  .pagehead p.desc{margin:0; color:var(--ink-soft); font-size:13.5px;}
  .btn{
    border:none; cursor:pointer; border-radius:8px; padding:9px 16px;
    font-size:13.5px; font-weight:600; font-family:var(--sans);
    display:inline-flex; align-items:center; gap:6px;
    transition:transform .06s ease, box-shadow .12s ease;
  }
  .btn:active{transform:translateY(1px);}
  .btn-accent{background:var(--accent); color:#fff;}
  .btn-accent:hover{box-shadow:0 4px 14px rgba(217,105,31,0.35);}
  .btn-ghost{background:var(--surface); color:var(--primary); border:1px solid var(--line);}
  .btn-ghost:hover{border-color:var(--primary);}
  .btn-sm{padding:5px 10px; font-size:12px; border-radius:6px;}
  .btn-danger-ghost{background:transparent; color:var(--danger); border:1px solid var(--danger-soft);}
  .btn-danger-ghost:hover{background:var(--danger-soft);}

  .card{
    background:var(--surface); border:1px solid var(--line); border-radius:12px;
    padding:20px; margin-bottom:18px;
  }
  .card h3{margin:0 0 14px 0; font-size:14px; letter-spacing:.01em;}

  /* FORM */
  .formgrid{
    display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:12px; margin-bottom:14px;
  }
  .field{display:flex; flex-direction:column; gap:5px;}
  .field label{font-size:11.5px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em;}
  .field input, .field select, .field textarea{
    border:1px solid var(--line); border-radius:7px; padding:8px 10px;
    font-size:13.5px; font-family:var(--sans); background:#FCFBF8; color:var(--ink);
  }
  .field input:focus, .field select:focus, .field textarea:focus{
    outline:none; border-color:var(--primary); background:#fff;
  }
  .field.span2{grid-column:span 2;}
  .form-actions{display:flex; gap:8px; margin-top:4px;}

  /* TABLE */
  table{width:100%; border-collapse:collapse; font-size:13px;}
  thead th{
    text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:.05em;
    color:var(--ink-soft); border-bottom:1px solid var(--line); padding:8px 10px; white-space:nowrap;
  }
  tbody td{padding:9px 10px; border-bottom:1px solid #EFEAE0; vertical-align:middle;}
  tbody tr:hover{background:#FBF9F5;}
  td.num, th.num{font-family:var(--mono); text-align:right;}
  .empty-row td{text-align:center; color:var(--ink-soft); padding:26px; font-size:13px;}
  .rowactions{display:flex; gap:6px;}

  .badge{
    display:inline-block; padding:2px 9px; border-radius:20px; font-size:11px; font-weight:600;
  }
  .badge-ok{background:var(--ok-soft); color:var(--ok);}
  .badge-warn{background:var(--warn-soft); color:var(--warn);}
  .badge-danger{background:var(--danger-soft); color:var(--danger);}
  .badge-neutral{background:var(--primary-soft); color:var(--primary);}
  .badge-accent{background:rgba(217,105,31,0.18); color:var(--accent);}

  .login-wrap{
    width:100%; min-height:100vh; display:flex; align-items:center; justify-content:center;
    background:var(--bg);
  }
  .login-card{
    background:var(--surface); border:1px solid var(--line); border-radius:14px;
    padding:32px 30px; width:100%; max-width:380px; box-shadow:0 10px 34px rgba(38,34,32,0.08);
  }

  /* THREAD PROGRESS (signature element) */
  .thread{display:flex; align-items:center; gap:0; min-width:190px;}
  .thread .seg{display:flex; align-items:center;}
  .thread .dot{
    width:11px; height:11px; border-radius:50%; background:#E3DCCF; flex-shrink:0;
    border:2px solid var(--surface); box-shadow:0 0 0 1px var(--line);
    position:relative; z-index:1;
  }
  .thread .dot.filled{background:var(--accent); box-shadow:0 0 0 1px var(--accent);}
  .thread .line{
    width:22px; height:2px; background:repeating-linear-gradient(90deg, var(--line) 0 4px, transparent 4px 7px);
  }
  .thread .line.filled{background:repeating-linear-gradient(90deg, var(--accent) 0 4px, transparent 4px 7px);}
  .thread-label{font-size:9.5px; color:var(--ink-soft); margin-top:4px; display:flex; justify-content:space-between; width:190px;}

  /* DASHBOARD */
  .kpi-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:14px; margin-bottom:20px;}
  .kpi{
    background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:16px 18px;
  }
  .kpi .val{font-family:var(--mono); font-size:24px; font-weight:600; color:var(--primary);}
  .kpi .lbl{font-size:12px; color:var(--ink-soft); margin-top:2px;}
  .kpi.accent .val{color:var(--accent);}

  .hint{font-size:12px; color:var(--ink-soft); margin-top:-8px; margin-bottom:12px;}
  .hint b{color:var(--ink);}

  .toast{
    position:fixed; bottom:22px; right:22px; background:var(--primary); color:#fff;
    padding:11px 18px; border-radius:9px; font-size:13px; box-shadow:0 8px 24px rgba(0,0,0,0.2);
    opacity:0; transform:translateY(8px); transition:all .25s ease; pointer-events:none; z-index:50;
  }
  .toast.show{opacity:1; transform:translateY(0);}

  select[multiple]{min-height:70px;}
  ::placeholder{color:#B7AF9F;}

  @media (max-width: 880px){
    #app{flex-direction:column;}
    .sidebar{width:100%; height:auto; position:relative; flex-direction:row; overflow-x:auto;}
    nav.navlist{flex-direction:row;}
    .brand, .sidebar-foot{display:none;}
    main{padding:18px;}
  }

  [hidden]{display:none !important;}
  .module-links{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px;}
  .permission-option{display:block; margin:10px 0; font-size:13px;}
  .line-row{border-bottom:1px solid var(--line); padding-bottom:14px; margin-bottom:14px;}
  .calculation-details{white-space:pre-wrap; font-size:12px;}
  input[readonly]{background:var(--primary-soft);}
  .search-form{flex-wrap:wrap;}
  .card td{overflow-wrap:anywhere;}
  @media print{
    .sidebar,.pagehead .rowactions,.module-links,.search-form,.pagination,form[data-confirm],a.btn,button[data-print]{display:none!important;}
    main{padding:0;}
    .card{break-inside:avoid; border:0; padding:0;}
    .table-scroll{overflow:visible;}
    table{font-size:10px;}
    thead{display:table-header-group;}
    tr{break-inside:avoid;}
    @page{size:A4 landscape; margin:12mm;}
  }
  a{color:var(--primary);}
  a.btn, a.navitem{text-decoration:none;}
  .navitem{white-space:nowrap;}
  .notice,.error-box{padding:14px 18px; margin-bottom:18px; border-radius:8px;}
  .notice{background:var(--ok-soft); color:var(--ok);}
  .error-box{background:var(--danger-soft); color:var(--danger);}
  .error-box ul{margin-bottom:0;}
  .text-danger{color:var(--danger);}
  .table-scroll{overflow-x:auto;}
  .search-form{display:flex; align-items:flex-end; gap:10px; margin-bottom:20px;}
  .search-form .field{flex:1; max-width:420px;}
  .size-fieldset{border:1px solid var(--line); border-radius:8px; padding:16px; margin-bottom:18px;}
  .size-fieldset legend{font-size:13px; padding:0 6px;}
  .size-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));}
  .size-fieldset .hint{margin:0;}
  .pagination{margin-top:18px;}
  .pagination svg{width:18px; height:18px;}
  .sidebar-foot form{margin-top:12px;}
  .login-card .field{margin-bottom:16px;}
  button:disabled{opacity:.6; cursor:wait;}
  @media(max-width:880px){
    .sidebar{flex-wrap:wrap;}
    nav.navlist{flex-basis:100%;}
    .sidebar-foot{display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:8px 18px;}
    .sidebar-foot form{margin:0;}
    .field.span2{grid-column:auto;}
    .login-wrap{padding:18px;}
  }


/* Müşteri kartı: örnek ekrandaki gibi solda etiket, sağda giriş alanı. */
.customer-form { padding: 0; }
.stock-card-form .field { grid-template-columns:minmax(180px,28%) minmax(0,1fr); max-width:1120px; }
.stock-card-form .customer-section { padding:16px 26px; }
.stock-card-form .field > label,.stock-card-form .field > span { font-size:11px; text-transform:uppercase; letter-spacing:.4px; color:#73828e; }
.stock-repeat-row,.stock-gross { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.stock-repeat-row input { min-width:0; }
.stock-photo-preview { display:block; max-width:140px; max-height:120px; object-fit:contain; margin-bottom:10px; border-radius:6px; }
.stock-form-hint { color:#73828e; font-size:12px; margin:12px 0 12px 28%; }
.stock-gross span { min-width:35px; color:#73828e; }
.stock-gross input { flex:1; min-width:0; width:100%; }
.payment-plan-status { display:inline-block; padding:6px 10px; border-radius:6px; font-size:12px; font-weight:600; white-space:nowrap; }
.payment-plan-status.overdue { background:#fbe1de; color:#a52d27; }
.payment-plan-status.today { background:#d9f2e4; color:#17613b; }
.payment-plan-status.upcoming { background:#fff1b7; color:#775708; }
.payment-plan-status.neutral { background:#e9edf1; color:#435361; }
.payment-plans-overview h2 { margin:0; font-size:20px; }
.card th.finance-in,.card td.finance-in { background:#e4f5e9; color:#176b3a; font-weight:600; white-space:nowrap; print-color-adjust:exact; }
.card th.finance-out,.card td.finance-out { background:#fce7e5; color:#a8342c; font-weight:600; white-space:nowrap; print-color-adjust:exact; }
.card tr.finance-row-in > td { background:#e4f5e9; color:#176b3a; print-color-adjust:exact; }
.card tr.finance-row-out > td { background:#fce7e5; color:#a8342c; print-color-adjust:exact; }
.card tr.finance-row-transfer > td { background:#eaf0f8; color:#36577b; print-color-adjust:exact; }
.card tr.finance-row-in:hover > td { background:#d5efde; }
.card tr.finance-row-out:hover > td { background:#f8d8d4; }
.card tr.finance-row-transfer:hover > td { background:#dce6f3; }
.profile-header { display:flex; align-items:center; gap:22px; background:linear-gradient(115deg,#fff,#edf3fa); }
.profile-avatar { display:grid; place-items:center; width:78px; height:78px; flex-shrink:0; border-radius:50%; background:#405b8b; color:white; font-size:34px; font-weight:700; }
.profile-header h2 { margin:0 0 6px; }
.profile-header p { margin:6px 0; }
.profile-details { display:grid; grid-template-columns:150px 1fr; gap:14px; }
.profile-details dt { color:#71808c; }.profile-details dd { margin:0; white-space:pre-wrap; }
.profile-foot-link { color:inherit; text-decoration:none; }
.employee-note { border-top:1px solid #e8e2d8; padding:18px 0; }
.employee-note h3 { margin:0; }.employee-note .pagehead { margin-bottom:10px; }
.employee-note-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; }
.rating-display { display:inline-flex; align-items:center; gap:10px; white-space:nowrap; }
.rating-stars { position:relative; font-size:25px; letter-spacing:2px; color:#d0d6dc; display:inline-block; line-height:1.3; }
.rating-stars > span { position:absolute; left:0; top:0; color:#eaaa1b; overflow:hidden; white-space:nowrap; }
.rating-value { color:#725719; font-size:13px; }
.star-buttons { display:flex; align-items:center; gap:4px; }
.star-buttons button { border:0; background:transparent; color:#c1c9d0; font-size:29px; padding:3px 5px; cursor:pointer; }
.star-buttons button.selected,.star-buttons button:hover { color:#eaaa1b; }
.star-buttons .star-clear { font-size:12px; color:#71808c; }
.star-buttons button:focus-visible { outline:2px solid #3f648d; border-radius:4px; }
.star-score { display:flex; align-items:center; gap:10px; margin:6px 0; }.star-score input { max-width:110px; }
.formgrid:has(.star-editor) { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:650px) { .formgrid:has(.star-editor) { grid-template-columns:1fr; } }
@media(max-width:650px) { .profile-details { grid-template-columns:1fr; gap:6px; }.employee-note .pagehead { align-items:flex-start; flex-direction:column; }.profile-header { gap:14px; } }
.card .employee-payments-table td { overflow-wrap:normal; }
.employee-payments-table td:nth-child(2),.employee-payments-table td:nth-child(3),.employee-payments-table td:nth-child(4),.employee-payments-table td:nth-child(5),.employee-payments-table .btn { white-space:nowrap; }
@media(max-width:800px) { .stock-card-form .field { grid-template-columns:1fr; } .stock-form-hint { margin-left:0; } .stock-repeat-row { flex-wrap:wrap; } }
.customer-section { padding: 22px 28px; border-bottom: 1px solid var(--border, #ddd); }
.customer-section h2 { font-size: 16px; margin: 0 0 20px; }
.customer-form .field { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 10px 22px; align-items: center; margin: 14px 0; }
.customer-form .field > small { grid-column: 2; }
.customer-form .field > label, .customer-form .field > span { margin: 0; }
.customer-form .customer-radio, .customer-form .customer-check { display: flex; align-items: center; gap: 18px; }
.customer-radio label { display: inline-flex; gap: 8px; align-items: center; }
.customer-form input[type=checkbox], .customer-form input[type=radio] { width: auto; }
.customer-repeat-row { margin-bottom: 12px; }
.customer-contact-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 20px; }
.customer-form .customer-contact-row .field { display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
.customer-contact-row > button { justify-self: start; }
.customer-form > .form-actions { padding: 24px 28px; margin: 0; }
.customer-form [hidden] { display: none !important; }
@media (max-width: 800px) { .customer-form .field { grid-template-columns: 1fr; } .customer-form .field > small { grid-column: 1; } .customer-contact-row { grid-template-columns: 1fr; } .customer-section { padding: 18px; } }

.nav-dropdown { border-bottom:1px solid #ffffff0d; margin:3px 0; }
.nav-dropdown > summary { display:flex; align-items:center; gap:12px; padding:13px 12px; cursor:pointer; list-style:none; color:#b9c3d6; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.02em; border-radius:6px; }
.nav-dropdown > summary::-webkit-details-marker { display:none; }
.nav-dropdown > summary:hover,.nav-dropdown.current > summary { color:#fff; background:#ffffff09; }
.nav-dropdown > summary:focus-visible { outline:2px solid #f0bd89; outline-offset:-2px; }
.nav-dropdown-icon { width:18px; text-align:center; color:#a0adbf; font-size:19px; }
.nav-dropdown-arrow { margin-left:auto; width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid #93a0b3; }
.nav-dropdown[open] .nav-dropdown-arrow { transform:rotate(180deg); }
.nav-dropdown-items { padding:3px 0 10px; }
.nav-dropdown-items .navitem { padding:10px 9px 10px 18px; font-size:12px; gap:12px; white-space:normal; }
.nav-child-icon { width:16px; flex-shrink:0; color:#a0adbf; font-size:15px; }
.dashboard-page .nav-dropdown > summary { color:#b2b9be; }
.dashboard-page .nav-dropdown.current > summary,.dashboard-page .nav-dropdown > summary:hover { color:#fff; }

/* Veri giriş ekranları: solda alan adı, sağda kontrol ve satır ayırıcıları. */
.entry-form { --entry-label-width:28%; }
.entry-form .formgrid { display:block; margin-bottom:0; }
.entry-form .field,
.entry-form.customer-form .customer-contact-row .field {
    display:grid; grid-template-columns:minmax(180px,var(--entry-label-width)) minmax(0,1fr);
    align-items:center; gap:7px 24px; padding:15px 0; margin:0;
    border-bottom:1px solid #e5e7e9; max-width:1120px; min-width:0;
}
.entry-form .field > label:first-child,.entry-form .field > span:first-child {
    font-size:11px; font-weight:600; color:#7c8790; text-transform:uppercase;
    letter-spacing:.04em; line-height:1.6; margin:0; padding-left:23px; position:relative;
}
.entry-form .field > label:first-child::before,.entry-form .field > span:first-child::before {
    content:'◇'; position:absolute; left:0; top:0; color:#9ba3aa; font-size:15px;
}
.entry-form .field > small { grid-column:2; line-height:1.6; margin:0; }
.entry-form .field input,.entry-form .field select,.entry-form .field textarea {
    width:100%; min-width:0; border-radius:2px; border-color:#c9ced2;
    background:#fff; padding:8px 10px; min-height:36px;
}
.entry-form .field textarea { min-height:76px; resize:vertical; }
.entry-form .field input:focus,.entry-form .field select:focus,.entry-form .field textarea:focus {
    outline:2px solid #2b3a6720; outline-offset:1px; border-color:#627ba3;
}
.entry-form .field input[readonly] { background:#f5f7f9; color:#63717e; }
.entry-form .field input[type=checkbox],.entry-form .field input[type=radio] { width:auto; min-height:0; }
.entry-form .size-fieldset { margin-top:24px; border-color:#dfe3e6; border-radius:3px; }
.entry-form .size-fieldset legend { color:#667785; padding:0 10px; }
.entry-form .form-actions { padding-top:22px; margin-top:0; flex-wrap:wrap; }
.entry-form .customer-section { padding:14px 28px; border-color:#d7dde1; }
.entry-form .customer-contact-row { grid-template-columns:1fr; gap:0; }
.entry-form .customer-contact-row > button { margin-top:12px; }
.entry-form .stock-form-hint { margin-left:calc(var(--entry-label-width) + 24px); }
.entry-form .formgrid.size-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(90px,1fr)); gap:12px; }
.entry-form .size-grid .field { display:flex; align-items:stretch; border:0; padding:8px 0; }
.entry-form .size-grid .field > label { padding-left:0; }
.entry-form .size-grid .field > label::before { content:none; }
.entry-form [hidden] { display:none !important; }
@media(max-width:800px) {
    .entry-form .field,.entry-form.customer-form .customer-contact-row .field { grid-template-columns:1fr; gap:9px; padding:15px 0; }
    .entry-form .field > small { grid-column:1; }
    .entry-form .customer-section { padding:14px 18px; }
    .entry-form .stock-form-hint { margin-left:0; }
    .entry-form .star-buttons { flex-wrap:wrap; }
}
/* Profil menüsü, ekip durumu ve birebir mesajlaşma. */
.account-bar{display:flex;justify-content:flex-end;align-items:center;gap:24px;margin:-8px 0 22px;padding:10px 0;border-bottom:1px solid #ddd}
.account-menu{position:relative}.account-menu summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none}.account-menu summary::-webkit-details-marker{display:none}
.account-text{display:flex;flex-direction:column;max-width:190px}.account-text strong,.account-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;color:#283954}.account-text small{font-size:11px;margin-top:3px}
.account-avatar{width:42px;height:42px;border-radius:50%;background:#e0e2e4;color:#737a83;display:inline-flex;align-items:center;justify-content:center;font-size:20px;position:relative;flex-shrink:0}
.presence-dot{width:10px;height:10px;border:2px solid white;border-radius:50%;background:#9ba2aa;display:inline-block}.account-avatar .presence-dot{position:absolute;top:0;right:0}.presence-dot.online{background:#21bb95}
.account-dropdown{position:absolute;right:0;top:52px;width:230px;padding:12px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 8px 25px #0002;z-index:30}.account-dropdown a,.account-dropdown button{display:block;padding:10px 6px;width:100%;text-align:left;background:none;border:0;color:#283954}.account-dropdown strong{display:block;padding:8px 6px;border-bottom:1px solid #eee;overflow-wrap:anywhere}
.message-badge{background:#de6547;color:white;font-size:11px;border-radius:12px;padding:2px 7px}.message-badge[hidden]{display:none}
.chat-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:20px}.chat-people,.chat-panel{margin:0!important}.chat-people label{display:block;font-size:12px;margin:12px 0 6px}.chat-people input{width:100%;margin-bottom:12px}.chat-people>small{display:block;margin-top:15px;color:#7c8790;line-height:1.7}
.chat-person{display:flex;align-items:center;gap:10px;padding:12px 8px;border-bottom:1px solid #eee;color:#283954}.chat-person.selected{background:#e7f5ef;border-radius:6px}.chat-person-info{min-width:0;flex:1}.chat-person-info strong,.chat-person-info small{display:block;overflow-wrap:anywhere}.chat-person-info small{color:#7c8790;font-size:11px;margin-top:4px}
.chat-peer-header{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid #e5e7e9}.chat-peer-header h2{margin:0}.chat-peer-header p{margin:5px 0;font-size:13px}.chat-peer-header small{color:#73808a}
.chat-messages{height:420px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px 4px}.chat-bubble{align-self:flex-start;max-width:82%;background:#f0f2f5;padding:12px 16px;border-radius:12px;overflow-wrap:anywhere}.chat-bubble.mine{align-self:flex-end;background:#dff4ea}.chat-bubble p{white-space:pre-wrap;margin:0;line-height:1.6}.chat-bubble small{display:block;color:#6e7b86;font-size:10px;margin-top:5px}
.chat-panel textarea{width:100%;resize:vertical;margin-top:6px}.chat-compose-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.chat-compose-actions small{color:#7c8790}.chat-feedback{color:#b64a30;font-size:13px;min-height:20px}.chat-welcome{padding:60px 20px;text-align:center}.chat-welcome p{color:#73808a}.chat-panel [data-older]{margin-top:12px}
@media(max-width:800px){.account-bar{gap:12px}.account-text{max-width:150px}.chat-layout{grid-template-columns:1fr}.chat-people [data-people-list]{max-height:220px;overflow:auto}.chat-messages{height:360px}.chat-compose-actions{flex-wrap:wrap}.chat-bubble{max-width:92%}}
@media print{.account-bar,.chat-compose-actions{display:none}}
.chat-people input,.chat-panel textarea{font:inherit;padding:10px 12px;border:1px solid #c9ced2;border-radius:5px;background:white}.chat-person{text-decoration:none}.chat-person:hover{background:#f1f6f4}.chat-panel form>label{font-size:12px;font-weight:600}
.chat-file-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0}.chat-file-picker>label{font-size:12px;font-weight:600}.chat-file-picker input{max-width:100%;font:inherit;font-size:12px}.chat-file-picker>small{width:100%;color:#7c8790;font-size:11px}.chat-selected-image{display:block;max-width:150px;max-height:100px;border-radius:6px}.chat-attachment-image{display:block;max-width:100%;max-height:230px;object-fit:contain;border-radius:6px;margin:8px 0}.chat-file-download{display:block;padding:10px 0;color:#245d77;font-size:12px;overflow-wrap:anywhere}.chat-bubble:has(.chat-attachment-image){min-width:160px}
.message-popup{position:fixed;bottom:0;right:24px;width:340px;background:white;border:1px solid #ddd;border-radius:12px 12px 0 0;box-shadow:0 3px 28px #0003;z-index:100}.message-popup[hidden]{display:none}.popup-header{display:flex;align-items:center;gap:8px;padding:13px 15px;background:#2b3a67;color:white;border-radius:12px 12px 0 0}.popup-header strong{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.popup-header button{background:none;border:0;color:white;font-size:22px;cursor:pointer;padding:0 5px}.popup-log{height:270px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:12px}.popup-log .chat-bubble{padding:8px 10px;font-size:12px}.popup-compose{padding:12px;border-top:1px solid #eee}.popup-compose label{font-size:11px;color:#73808a}.popup-compose textarea{width:100%;font:inherit;font-size:13px;padding:8px;border:1px solid #ccd2d7;border-radius:5px;resize:vertical;margin:6px 0}.popup-compose>div{display:flex;align-items:center;gap:10px;justify-content:space-between}.popup-compose a{font-size:11px;max-width:180px;color:#49637d}.message-popup [data-popup-error]{font-size:12px;color:#b64a30;padding:0 12px}.message-popup.minimized [data-popup-content]{display:none}@media(max-width:600px){.message-popup{right:8px;width:calc(100% - 16px);max-width:340px}.popup-log{height:210px}}
/* Araç uyarıları: tarih durumuna göre satırın tamamı. */
tr.vehicle-alert-overdue>td{background:#fbe0dc;color:#8b3027}tr.vehicle-alert-upcoming>td{background:#fff0bd;color:#765a14}tr.vehicle-alert-today>td{background:#d7f1e4;color:#1e6846}tr.vehicle-alert-missing>td{background:#f0f2f4;color:#66717d}
tr.vehicle-alert-overdue:hover>td{background:#f8d2cc}tr.vehicle-alert-upcoming:hover>td{background:#ffe89b}tr.vehicle-alert-today:hover>td{background:#c2e8d4}
@media print{tr[class^=vehicle-alert-]>td{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Ortak responsive düzen: tüm modüller, mobil menü ve dokunmatik kontroller. */
#app,#main,.card,.overview-card,.formgrid,.field,.line-row,.chat-panel,.chat-people{min-width:0}
#main{width:100%;padding-inline:clamp(18px,2.4vw,40px)}
h1,h2,h3,p,.desc,.kpi .val,.profile-details dd{overflow-wrap:anywhere}
input,select,textarea{max-width:100%;min-width:0}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%}
img{max-width:100%}.pagehead>div{min-width:0}.rowactions,.form-actions{flex-wrap:wrap}
.search-form .field{flex:1 1 170px;min-width:0}.table-scroll{max-width:100%;width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.table-scroll:focus-visible{outline:2px solid #627ba3;outline-offset:3px}.table-scroll table{min-width:100%}.table-scroll th,.table-scroll td{min-width:90px}.table-scroll td .rowactions{min-width:160px}.table-scroll td .btn{white-space:nowrap}
.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr))}.kpi .val{font-size:clamp(18px,2vw,24px)}
.profile-header>div:last-child{min-width:0}.profile-details dd{min-width:0}.customer-radio,.customer-check{flex-wrap:wrap}.stock-repeat-row>*{min-width:0}.stock-repeat-row input{flex:1 1 140px}
.mobile-menu-toggle,.mobile-menu-close,.mobile-menu-backdrop{display:none}.account-bar{gap:16px}.account-messages{margin-left:auto}.account-dropdown{max-width:calc(100vw - 30px)}
.message-popup{bottom:calc(var(--keyboard-inset,0px) + env(safe-area-inset-bottom,0px));max-height:calc(var(--usable-height,100dvh) - 20px);overflow:auto;overscroll-behavior:contain}
.popup-log{max-height:clamp(90px,calc(var(--usable-height,100dvh) - 250px),270px)}
@media(min-width:1025px){.sidebar{width:232px;position:sticky;top:0;height:100dvh;overflow:visible}.sidebar .brand{display:block}.sidebar .sidebar-foot{display:block}.sidebar nav.navlist{flex-direction:column;flex-basis:auto}.dashboard-top-stats .top-stat>div{min-width:0}}
@media(min-width:1025px) and (max-width:1200px){.sidebar{width:210px}.dashboard-top-stats{gap:12px}.top-stat{padding:16px;gap:10px}.top-stat strong{font-size:24px}.chat-layout{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:1024px){
    #app{flex-direction:column}#main,.dashboard-page main{padding:16px 20px 36px}
    .sidebar{width:100%;flex-direction:column;position:relative;height:auto;overflow:visible}.sidebar .brand{display:block}.sidebar nav.navlist{flex-direction:column;flex-basis:auto}.sidebar .sidebar-foot{display:block;padding:14px 20px}.sidebar-foot form{margin-top:10px}
    .nav-ready .sidebar{position:fixed;top:0;left:0;bottom:0;width:min(300px,86vw);height:100dvh;z-index:220;transform:translateX(-105%);transition:transform .18s ease;flex-wrap:nowrap;box-shadow:8px 0 30px #0003;padding-top:10px}
    .nav-ready .sidebar .brand{padding-right:48px}.nav-ready .sidebar .navlist{flex:1;overflow-y:auto;min-height:0}.nav-ready .sidebar .sidebar-foot{flex-shrink:0;padding-bottom:max(14px,env(safe-area-inset-bottom))}
    .mobile-menu-toggle{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;padding:10px 12px;min-height:44px;border:1px solid #d8dde3;border-radius:8px;background:white;color:#2b3a67;font:inherit;font-size:14px;font-weight:600}
    .mobile-menu-toggle span{font-size:20px}.mobile-menu-close{display:block;position:absolute;right:12px;top:12px;width:40px;height:40px;border:0;background:#ffffff14;color:white;font-size:26px;border-radius:6px;cursor:pointer}
    .mobile-nav-open{overflow:hidden}.mobile-nav-open .sidebar{transform:translateX(0)}.mobile-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:210;background:#0007;border:0;width:100%;height:100dvh}
    .navitem,.nav-dropdown>summary{min-height:44px}.account-bar{margin:0 0 20px;padding:0 0 12px}.dashboard-layout{grid-template-columns:minmax(0,1fr)}
    .top-stat{padding:18px;gap:12px}.top-stat-icon{width:40px;height:40px}.top-stat strong{font-size:25px}.top-stat-arrow{display:none}
    .overview-body{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-side{grid-column:1/-1;border-left:none;border-top:1px solid #e8eaec;flex-direction:row}.overview-side>div+div{border-top:0;border-left:1px solid #e8eaec}
    .chat-layout{grid-template-columns:240px minmax(0,1fr)}.overview-card header{flex-wrap:wrap}.btn{min-height:42px;justify-content:center}
}
@media(max-width:700px){
    #main,.dashboard-page main{padding:12px 14px 28px}.account-bar{gap:9px}.account-text{max-width:125px}.account-avatar{width:36px;height:36px;font-size:17px}.account-messages{font-size:12px}.account-menu summary{gap:6px}.account-text strong{font-size:13px}.account-text small{font-size:9px}.mobile-menu-toggle{padding:8px;font-size:12px}
    .pagehead{align-items:flex-start;gap:12px}.pagehead h1{font-size:21px}.pagehead .rowactions{width:100%}.pagehead .rowactions .btn{flex:1 1 auto}.card{padding:16px;border-radius:10px}.module-links{gap:6px}.module-links .btn{font-size:12px;flex:1 1 auto}
    .formgrid{grid-template-columns:minmax(0,1fr)}.formgrid .span2{grid-column:auto}.entry-form .field,.entry-form.customer-form .customer-contact-row .field,.stock-card-form .field{grid-template-columns:minmax(0,1fr);gap:8px}.entry-form .field>small{grid-column:1}
    .field input,.field select,.field textarea,.entry-form .field input,.entry-form .field select,.entry-form .field textarea,.chat-people input,.chat-panel textarea,.popup-compose textarea{font-size:16px;min-height:44px}.field input[type=checkbox],.field input[type=radio],.entry-form .field input[type=checkbox],.entry-form .field input[type=radio]{min-height:0;flex-shrink:0}
    .field input[type=file]{font-size:13px}.search-form .field{flex-basis:100%;max-width:none}.search-form .btn{flex:1}.search-form{gap:12px}.form-actions .btn{flex:1 1 120px}.form-actions{gap:10px}.entry-form .customer-section{padding:16px}.size-fieldset{padding:12px;min-width:0}.entry-form .formgrid.size-grid{grid-template-columns:repeat(auto-fit,minmax(75px,1fr))}.customer-radio{gap:12px!important}.customer-check{align-items:flex-start!important}
    .table-scroll{border-radius:6px}.table-scroll th,.table-scroll td{padding:10px 12px;min-width:100px}.table-scroll td{overflow-wrap:normal}.table-scroll table{font-size:13px}.table-scroll td .btn{min-height:40px}.calculation-details{overflow-wrap:anywhere}.permission-option{padding:8px 0;line-height:1.5}
    .dashboard-top-stats{grid-template-columns:1fr;gap:12px}.top-stat{min-height:100px;padding:18px}.overview-body{grid-template-columns:1fr}.ring-stat{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid #f0f1f2}.ring-stat h3{margin:0;text-align:left;line-height:1.5;font-size:11px}.metric-ring{width:140px}.metric-center strong{font-size:15px}.overview-side{grid-column:1;flex-wrap:wrap}.overview-side>div{flex:1;min-width:130px;padding:16px 12px}.overview-card header{padding:16px}.overview-card header>span{width:100%;order:3}.production-summary{padding:16px;gap:16px}.production-summary .btn{margin-left:0}.balance-strip{padding:16px;gap:18px}.reminder-panel{display:block}.dashboard-small-stats a{flex-basis:100%}
    .chat-layout{grid-template-columns:minmax(0,1fr);gap:14px}.chat-people [data-people-list]{max-height:180px;overflow:auto}.chat-people>small{font-size:11px}.chat-peer-header h2{font-size:18px}.chat-messages{height:clamp(240px,45dvh,420px);padding:12px 0}.chat-bubble{max-width:90%;padding:10px 12px}.chat-compose-actions{flex-wrap:wrap}.chat-compose-actions .btn{width:100%}.chat-file-picker input{width:100%;min-height:40px;font-size:13px}.chat-welcome{padding:30px 8px}.message-popup{right:8px;width:calc(100vw - 16px);max-width:360px}.popup-header{padding:10px 12px}.popup-header button{width:40px;min-height:40px}.popup-compose .btn{min-height:40px}.popup-compose{padding:10px}.popup-compose a{font-size:12px}.popup-compose textarea{min-height:54px}
    .profile-header{align-items:flex-start;gap:12px}.profile-avatar{width:54px;height:54px;font-size:24px}.profile-header h2{font-size:20px}.profile-details{grid-template-columns:1fr;gap:7px}.profile-details dd{margin-bottom:12px}.rating-display{flex-wrap:wrap;white-space:normal}.star-buttons{flex-wrap:wrap}.star-buttons button{min-width:42px;min-height:42px}.stock-repeat-row{flex-wrap:wrap}.stock-gross{gap:6px}
    .login-wrap{padding:20px 14px;min-height:100dvh}.login-card{padding:26px 22px}.login-card .btn{width:100%;min-height:44px}
}
@media(max-width:360px){.account-text{max-width:90px}.account-messages{font-size:11px}.account-bar{gap:6px}.account-avatar{width:32px;height:32px}.mobile-menu-toggle{gap:4px;padding:6px}.ring-stat{grid-template-columns:minmax(0,1fr) 120px;padding:14px;gap:10px}.metric-ring{width:120px}.metric-center strong{font-size:13px}.card{padding:12px}}
@media(prefers-reduced-motion:reduce){.nav-ready .sidebar,.top-stat,.navitem{transition:none}}
@media print{.mobile-menu-toggle,.mobile-menu-close,.mobile-menu-backdrop,.message-popup{display:none!important}#main{padding:0}.table-scroll{max-width:none;overflow:visible}.table-scroll th,.table-scroll td{min-width:0}.table-scroll td .rowactions{min-width:0}}
.card dd{overflow-wrap:anywhere;min-width:0}.table-scroll td{max-width:360px;overflow-wrap:anywhere}
@media(max-width:700px){.message-popup{width:calc(100% - 16px)}}

/* Sağ alt kişi/sohbet sekmeleri; tüm oturum açılmış ekranlarda ortak. */
.chat-dock{position:fixed;right:16px;bottom:env(safe-area-inset-bottom,0px);width:320px;z-index:130;font-size:13px}
.chat-dock-tabs{display:flex;min-height:52px;background:#2b3a67;box-shadow:0 3px 20px #0003;border-radius:10px 10px 0 0;overflow:hidden}
.chat-dock-tabs>button{display:flex;flex:1;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:52px;padding:10px 8px;border:0;background:transparent;color:white;font:inherit;font-weight:600;cursor:pointer}
.chat-dock-tabs>button+button{border-left:1px solid #ffffff30}.chat-dock-tabs>button:hover,.chat-dock-tabs>button[aria-expanded=true]{background:#405381}.chat-dock-tabs>button:focus-visible,.chat-dock-panel button:focus-visible{outline:3px solid #eca152;outline-offset:-3px}
.chat-dock-tabs .presence-dot{border-color:#2b3a67;flex-shrink:0}.chat-dock-tabs [data-online-count]{background:#ffffff20;padding:2px 6px;border-radius:20px;font-size:12px}
.chat-dock-panel{background:white;border:1px solid #d7dee7;border-bottom:0;border-radius:12px 12px 0 0;box-shadow:0 -4px 24px #0002;max-height:calc(var(--usable-height,100dvh) - 90px);overflow:auto;overscroll-behavior:contain}
.chat-dock-panel[hidden]{display:none}.chat-dock-panel>header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f1f5fa;color:#263754;border-radius:12px 12px 0 0}
.chat-dock-panel>header button{border:0;background:transparent;font-size:24px;min-width:40px;min-height:40px;cursor:pointer;color:#263754}
.chat-dock-panel>label{display:block;padding:12px 14px 6px;font-size:12px;color:#63718a}.chat-dock-panel>input{display:block;width:calc(100% - 28px);margin:0 14px;padding:10px;border:1px solid #ccd4df;border-radius:6px;font:inherit;min-height:42px}
.chat-dock-panel [data-dock-status]{margin:10px 14px;font-size:11px;color:#6c7887;line-height:1.5}.chat-dock-panel [data-dock-list]{max-height:min(340px,45dvh);overflow:auto;overscroll-behavior:contain}
.dock-person{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid #edf0f4;background:white;color:#293b57;font:inherit;cursor:pointer;min-height:58px}.dock-person:hover,.dock-person:focus-visible{background:#eef6f3}.dock-person>.presence-dot{flex-shrink:0}.dock-person strong{font-size:13px}.dock-person small{font-size:11px;line-height:1.5}.dock-empty{padding:12px;color:#6b7684;font-size:12px}.dock-full-link{display:block;padding:14px;color:#395a85;border-top:1px solid #e4e9ef;font-size:12px}
.message-popup{right:352px;z-index:131}.popup-header small{display:block;margin-top:4px;font-size:11px;font-weight:400;color:#c5ebdb}.popup-header strong{line-height:1.3}
#main{padding-bottom:76px}
@media(min-width:701px) and (max-width:900px){.chat-dock{width:290px;right:8px}.message-popup{right:310px;width:320px}}
@media(max-width:700px){.chat-dock{right:8px;width:calc(100% - 16px);max-width:360px}.message-popup{right:8px;bottom:calc(60px + var(--keyboard-inset,0px) + env(safe-area-inset-bottom,0px));max-height:calc(var(--usable-height,100dvh) - 80px)}.chat-dock-tabs>button{min-height:52px}.chat-dock-panel>input{font-size:16px;min-height:44px}.chat-dock-panel [data-dock-list]{max-height:min(300px,40dvh)}.message-popup .popup-log{max-height:clamp(70px,calc(var(--usable-height,100dvh) - 310px),210px)}.dashboard-page main,#main{padding-bottom:76px}}
@media print{.chat-dock,.message-popup{display:none!important}#main{padding-bottom:0}}
