.agency-page{
  padding-bottom:28px;
}

.agency-tabs-card{
  margin-top:22px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 10px 26px rgba(17,24,39,.05);
  overflow:hidden;
}

.agency-tabs-bar{
  padding:6px 18px 0;
  border-bottom:1px solid #edf1f7;
}

.agency-tabs-nav{
  display:flex;
  align-items:center;
  gap:8px;
  overflow:auto;
  scrollbar-width:none;
}

.agency-tabs-nav::-webkit-scrollbar{
  display:none;
}

.agency-tab-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:#6b7280;
  min-height:42px;
  padding:9px 13px 10px;
  font-size:.86rem;
  font-weight:700;
  white-space:nowrap;
  border-radius:10px 10px 0 0;
}

.agency-tab-btn.active{
  color:#ff6b1a;
  border-bottom-color:#ff6b1a;
  background:linear-gradient(180deg,#fff7f1,#fff);
}

.agency-tab-btn i{
  font-size:.86rem;
}

.agency-tab-pane{
  display:none;
  padding:0 0 18px;
}

.agency-tab-pane.active{
  display:block;
}

.agency-pane-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px 12px;
}

.agency-pane-head h2{
  margin:0;
  color:#1f2430;
  font-size:.98rem;
  font-weight:700;
}

.agency-pane-head p{
  margin:4px 0 0;
  color:#6b7280;
  font-size:.84rem;
  line-height:1.5;
}

.agency-primary-btn{
  min-height:36px;
  padding:0 14px;
  border:0;
  border-radius:10px;
  background:linear-gradient(180deg,#ff8f3a,#ff6820);
  color:#fff;
  font-size:.82rem;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(255,116,40,.16);
}

.agency-primary-btn.is-light{
  background:#fff5ee;
  color:#cc5c22;
  box-shadow:none;
}

.agency-primary-btn:disabled{
  opacity:.52;
  cursor:not-allowed;
  box-shadow:none;
}

.common-list-shell{
  margin:0 18px;
  border-radius:14px;
  border:1px solid #edf1f7;
  background:#fff;
  overflow:hidden;
}

.common-list-head,
.common-list-row,
.common-list-footer{
  display:grid;
  align-items:center;
  gap:14px;
}

.common-list-head{
  padding:10px 14px;
  background:#f8fafc;
  color:#8b93a4;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.common-list-body{
  display:block;
}

.common-list-row{
  padding:12px 14px;
  border-top:1px solid #edf1f7;
  background:#fff;
}

.common-list-row:first-child{
  border-top:0;
}

.common-list-footer{
  grid-template-columns:1fr auto;
  padding:11px 14px;
  border-top:1px solid #edf1f7;
  background:#fff;
}

.common-list-count{
  color:#555f73;
  font-size:.82rem;
}

.common-list-pager,
.common-pagination{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}

.common-pagination{
  margin:14px 18px 0;
}

.pager-btn,
.invoice-page-btn{
  min-width:30px;
  height:30px;
  border:1px solid #edf1f7;
  border-radius:9px;
  background:#fff;
  color:#475467;
  font-size:.78rem;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.pager-btn.is-active,
.invoice-page-btn.is-active{
  background:#ff6b1a;
  border-color:#ff6b1a;
  color:#fff;
}

.info-grid-head,
.info-grid-row{
  grid-template-columns:196px minmax(0,1fr) 148px;
}

.info-cell-label{
  color:#8b93a4;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.info-cell strong{
  display:block;
  color:#1f2430;
  font-size:.89rem;
  font-weight:700;
}

.info-cell-side{
  justify-self:end;
}

.info-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  font-size:.68rem;
  font-weight:700;
  text-transform:uppercase;
}

.info-badge.is-green{
  background:#eefaf0;
  color:#1d8d45;
}

.info-inline{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#7b8496;
  font-size:.78rem;
  font-weight:600;
}

.employee-list-shell{
  margin:0 18px;
  border-radius:14px;
  border:1px solid #edf1f7;
  overflow:hidden;
}

.employee-list-head,
.employee-row{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) 128px 178px 128px 78px;
  align-items:center;
  gap:14px;
}

.employee-list-head{
  padding:10px 14px;
  background:#f8fafc;
  color:#8b93a4;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.employee-row{
  padding:12px 14px;
  border-top:1px solid #edf1f7;
  background:#fff;
}

.employee-row.is-passive{
  background:#fcfcfd;
}

.employee-person{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}

.employee-avatar{
  width:32px;
  height:32px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ff6d2a;
  color:#fff;
  font-size:.76rem;
  font-weight:700;
  flex:0 0 auto;
}

.employee-row.is-passive .employee-avatar{
  background:#dfe5f2;
  color:#69758b;
}

.employee-name{
  display:block;
  color:#1f2430;
  font-size:.89rem;
  font-weight:700;
}

.employee-state{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:2px;
  color:#16a34a;
  font-size:.69rem;
  font-weight:700;
  text-transform:uppercase;
}

.employee-state::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:currentColor;
}

.employee-row.is-passive .employee-state{
  color:#98a2b3;
}

.employee-contact,
.employee-mail{
  color:#5a6478;
  font-size:.83rem;
  word-break:break-word;
}

.employee-mail a{
  color:#475467;
  text-decoration:none;
}

.employee-cell{
  display:flex;
  align-items:center;
}

.employee-role-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:#f4f5f8;
  color:#545b68;
  font-size:.68rem;
  font-weight:700;
  text-transform:uppercase;
}

.employee-actions{
  justify-content:flex-end;
  gap:8px;
}

.row-action-btn,
.action-btn,
.invoice-action-btn{
  width:30px;
  height:30px;
  border:0;
  border-radius:9px;
  background:#f8fafc;
  color:#6a7280;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.row-action-btn.is-muted,
.action-btn.is-delete{
  color:#8c6b63;
}

.employee-list-footer{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:14px;
  padding:11px 14px;
  border-top:1px solid #edf1f7;
  background:#fff;
}

.employee-list-count{
  color:#555f73;
  font-size:.82rem;
}

.employee-pager{
  display:flex;
  align-items:center;
  gap:8px;
}

.employee-pager-btn,
.employee-pager-current{
  width:30px;
  height:30px;
  border:1px solid #edf1f7;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#475467;
  font-size:.78rem;
  font-weight:700;
}

.employee-pager-current{
  background:#ff6b1a;
  border-color:#ff6b1a;
  color:#fff;
}

.employee-empty,
.invoice-empty,
.bank-empty{
  margin:0 18px;
  padding:24px 18px;
  border-radius:14px;
  border:1px solid #edf1f7;
  background:#fff;
  text-align:center;
  color:#70798c;
}

.employee-empty i,
.invoice-empty i,
.bank-empty i{
  font-size:1.6rem;
  color:#ff7a33;
}

.employee-empty h3,
.invoice-empty h3,
.bank-empty h3{
  margin:8px 0 5px;
  color:#1f2430;
  font-size:.93rem;
  font-weight:700;
}

.employee-empty p,
.invoice-empty p,
.bank-empty p{
  margin:0;
  font-size:.83rem;
  line-height:1.6;
}

.invoice-list-shell{
  margin:0 18px;
  border-radius:14px;
  border:1px solid #edf1f7;
  overflow:hidden;
}

.invoice-list-head,
.invoice-row{
  display:grid;
  grid-template-columns:178px minmax(0,1.1fr) minmax(0,1fr) 78px;
  align-items:center;
  gap:14px;
}

.invoice-list-head{
  padding:10px 14px;
  background:#f8fafc;
  color:#8b93a4;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.invoice-row{
  padding:12px 14px;
  border-top:1px solid #edf1f7;
  background:#fff;
}

.invoice-label{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.invoice-label h4{
  margin:0;
  color:#1f2430;
  font-size:.88rem;
  font-weight:700;
}

.invoice-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:21px;
  width:max-content;
  padding:0 9px;
  border-radius:999px;
  font-size:.62rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.invoice-badge.personal{
  background:#e9efff;
  color:#5a6ed2;
}

.invoice-badge.corporate{
  background:#ffe8de;
  color:#c45d25;
}

.invoice-summary strong{
  display:block;
  color:#1f2430;
  font-size:.87rem;
  font-weight:700;
}

.invoice-summary p,
.invoice-contact p{
  margin:3px 0 0;
  color:#727c8f;
  font-size:.81rem;
  line-height:1.45;
}

.invoice-contact{
  min-width:0;
}

.invoice-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}

.bank-list-shell{
  margin:0 18px;
}

.bank-list-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.bank-card{
  border:1px solid #edf1f7;
  border-radius:14px;
  background:#fff;
  padding:15px;
  box-shadow:0 6px 16px rgba(15,23,42,.035);
}

.bank-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.bank-card-title{
  display:flex;
  align-items:flex-start;
  gap:11px;
  min-width:0;
}

.bank-card-icon{
  width:34px;
  height:34px;
  border-radius:11px;
  background:#fff4ec;
  color:#ff6b1a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.88rem;
  flex:0 0 auto;
}

.bank-card-title strong{
  display:block;
  color:#1f2430;
  font-size:.9rem;
  font-weight:700;
}

.bank-card-title p{
  margin:3px 0 0;
  color:#727c8f;
  font-size:.8rem;
  line-height:1.4;
}

.bank-type-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:8px;
  min-height:22px;
  padding:0 9px;
  border-radius:999px;
  background:#f4f5f8;
  color:#586174;
  font-size:.66rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.bank-card-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}

.bank-card-body{
  margin-top:13px;
  display:grid;
  gap:10px;
}

.bank-line{
  display:grid;
  gap:3px;
}

.bank-line-label{
  color:#98a2b3;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.bank-line strong,
.bank-line span{
  color:#1f2430;
  font-size:.85rem;
}

.bank-line code{
  display:inline-block;
  padding:8px 10px;
  border-radius:10px;
  background:#f8fafc;
  color:#1f2430;
  font-size:.83rem;
  font-weight:600;
  letter-spacing:.03em;
  word-break:break-all;
}

.bank-list-footer{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:14px;
  margin:14px 18px 0;
  padding:11px 14px;
  border:1px solid #edf1f7;
  border-radius:14px;
  background:#fff;
}

.bank-list-count{
  color:#555f73;
  font-size:.82rem;
}

.bank-form-grid textarea{
  min-height:98px;
}

.document-upload-card{
  display:grid;
  grid-template-columns:minmax(180px,.8fr) minmax(240px,1.2fr) auto;
  align-items:end;
  gap:14px;
  margin:0 26px 20px;
  padding:16px;
  border:1px solid #e3e8f0;
  border-radius:14px;
  background:rgba(248,250,252,.82);
}

.document-form-field label,
.document-date-editor label{
  display:block;
  margin-bottom:6px;
  color:#778297;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.document-form-field input,
.document-form-field select,
.document-date-editor input{
  width:100%;
  min-height:42px;
  border:1px solid #dfe5ed;
  border-radius:10px;
  background:#fff;
  color:#263247;
  padding:0 11px;
  font-size:.82rem;
  outline:none;
}

.document-form-field input:focus,
.document-form-field select:focus,
.document-date-editor input:focus{
  border-color:#efad88;
  box-shadow:0 0 0 3px rgba(234,106,24,.09);
}

.document-file-field input{
  padding:7px 9px;
}

.document-file-field input::file-selector-button{
  margin-right:10px;
  padding:5px 9px;
  border:0;
  border-radius:7px;
  background:#fff2e9;
  color:#d65e1d;
  font-weight:700;
}

.document-date-fields{
  grid-column:1 / 3;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.document-date-fields[hidden]{display:none}

.document-upload-btn{height:42px}

.document-policy-text{
  grid-column:1 / -1;
  margin:0;
  color:#8792a5;
  font-size:.73rem;
}

.document-list-wrap{margin:0 26px}

.document-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.document-card{
  min-width:0;
  padding:16px;
  border:1px solid #e3e8f0;
  border-radius:15px;
  background:rgba(255,255,255,.8);
  box-shadow:0 7px 18px rgba(45,53,88,.035);
}

.document-card-head{
  display:flex;
  align-items:flex-start;
  gap:11px;
}

.document-file-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#fff3eb;
  color:#e96620;
}

.document-title{min-width:0;flex:1}
.document-title h3{margin:0;color:#202a3d;font-size:.88rem;font-weight:700}
.document-requirement{color:#8b95a6;font-size:.66rem;font-weight:600}

.document-status{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  font-size:.62rem;
  font-weight:700;
  white-space:nowrap;
}

.document-status.is-valid{background:#eaf8ef;color:#27834b}
.document-status.is-warning{background:#fff5d9;color:#9a6811}
.document-status.is-expired{background:#feebeb;color:#b33e3e}
.document-status.is-no-date{background:#edf1f7;color:#667085}

.document-file-link{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  margin-top:14px;
  padding:10px 11px;
  border-radius:10px;
  background:#f6f8fb;
  color:#34445d;
  font-size:.78rem;
  text-decoration:none;
}

.document-file-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-file-link small{color:#929cad;font-size:.66rem}
.document-file-link:hover{color:#d85c1b;background:#fff5ee}

.document-dates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}

.document-dates.is-unlimited{grid-template-columns:1fr}
.document-dates span{color:#3f4b5f;font-size:.76rem}
.document-dates small{display:block;margin-bottom:2px;color:#98a2b3;font-size:.61rem;text-transform:uppercase}

.document-date-editor{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  align-items:end;
  gap:8px;
  margin-top:13px;
  padding-top:13px;
  border-top:1px solid #e8ecf2;
}

.document-date-editor input{min-height:36px;font-size:.76rem}
.document-date-editor button{
  min-height:36px;
  padding:0 10px;
  border:0;
  border-radius:9px;
  background:#fff1e7;
  color:#d65e1d;
  font-size:.72rem;
  font-weight:700;
}
.document-date-editor button i{margin-right:4px}

.document-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:13px;
  color:#929cad;
  font-size:.68rem;
}

.document-delete-btn{
  border:0;
  background:transparent;
  color:#9a6259;
  font-size:.7rem;
  font-weight:700;
}

.document-empty,
.document-loading,
.document-load-error{
  padding:26px 18px;
  border:1px solid #e3e8f0;
  border-radius:14px;
  background:#fff;
  color:#758095;
  text-align:center;
  font-size:.82rem;
}
.document-empty i{color:#ff7a33;font-size:1.6rem}
.document-empty h3{margin:8px 0 5px;color:#1f2430;font-size:.93rem}
.document-empty p{margin:0}
.document-load-error{color:#a84444;background:#fff8f8}

.modal-content{
  border-radius:18px;
  border:1px solid #f1d2c3;
  overflow:hidden;
}

.modal-header,
.modal-footer{
  padding-left:24px;
  padding-right:24px;
}

.modal-section-title{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
  color:#c95d26;
}

.modal-section-title h4{
  margin:0;
  font-size:.94rem;
  font-weight:700;
  color:#2b2d34;
}

.form-grid-inner,
.invoice-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.form-field label,
.invoice-form-field label{
  display:block;
  margin-bottom:6px;
  color:#6c7080;
  font-size:.69rem;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.input-icon-wrapper{
  position:relative;
}

.input-icon-wrapper i{
  position:absolute;
  top:50%;
  left:14px;
  transform:translateY(-50%);
  color:#98a1b2;
}

.input-icon-wrapper input,
.input-icon-wrapper select,
.invoice-form-field input,
.invoice-form-field select,
.invoice-form-field textarea,
#employeePhoneCode{
  width:100%;
  min-height:46px;
  border:1px solid #e7ebf2;
  border-radius:12px;
  background:#f5f7fb;
  color:#1f2430;
  font-size:.89rem;
  padding:0 14px;
  outline:none;
}

.input-icon-wrapper input,
.input-icon-wrapper select{
  padding-left:42px;
}

.invoice-form-field textarea{
  min-height:98px;
  padding:12px 14px;
  resize:vertical;
}

.invoice-form-grid .span-2{
  grid-column:span 2;
}

.invoice-type-row{
  display:flex;
  gap:12px;
}

.invoice-type-row label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#4b4f5c;
  font-weight:700;
}

@media (max-width:1100px){
  /* Tek kolona dusen listede baslik satiri anlamsiz kaliyor. */
  .employee-list-head,
  .invoice-list-head,
  .common-list-head{
    display:none;
  }

  .employee-row,
  .invoice-row,
  .common-list-row{
    grid-template-columns:1fr;
    gap:8px;
  }

  .employee-row:first-child,
  .invoice-row:first-child,
  .common-list-row:first-child{
    border-top:0;
  }

  .employee-actions,
  .invoice-actions{
    justify-content:flex-start;
  }

  .info-cell-side{
    justify-self:start;
  }

  .common-list-footer,
  .employee-list-footer,
  .bank-list-footer{
    grid-template-columns:1fr;
  }

  .bank-list-grid{
    grid-template-columns:1fr;
  }

  .document-grid{grid-template-columns:1fr}
}

@media (max-width:780px){
  .agency-tabs-card{
    margin-top:20px;
  }

  .agency-tabs-bar{
    padding:8px 10px 0;
  }

  .agency-tab-btn{
    min-height:40px;
    padding:9px 10px 10px;
  }

  .agency-pane-head{
    flex-direction:column;
    align-items:flex-start;
  }

  .form-grid-inner,
  .invoice-form-grid{
    grid-template-columns:1fr;
  }

  .invoice-form-grid .span-2{
    grid-column:span 1;
  }

  .document-upload-card{
    grid-template-columns:1fr;
    margin-right:18px;
    margin-left:18px;
  }

  .document-date-fields{grid-column:1;grid-template-columns:1fr}
  .document-list-wrap{margin-right:18px;margin-left:18px}
  .document-upload-btn{width:100%;justify-content:center}
}

@media (max-width:520px){
  .document-card-head{flex-wrap:wrap}
  .document-status{margin-left:49px}
  .document-date-editor{grid-template-columns:1fr}
  .document-date-editor button{width:100%}
  .document-card-footer{align-items:flex-start;flex-direction:column}
}
