
/* D14A GenBroker premium visual layer. Structure-safe: only paints existing markup. */
:root{
  --gb-ink:#0b1220;
  --gb-ink-2:#111827;
  --gb-muted:#64748b;
  --gb-muted-2:#8a98aa;
  --gb-line:rgba(148,163,184,.28);
  --gb-line-strong:rgba(148,163,184,.42);
  --gb-bg:#f3f6fb;
  --gb-bg-deep:#eaf0f8;
  --gb-surface:rgba(255,255,255,.88);
  --gb-surface-solid:#fff;
  --gb-red:#e11d2f;
  --gb-red-2:#b91c1c;
  --gb-red-3:#ff4357;
  --gb-blue:#2563eb;
  --gb-cyan:#06b6d4;
  --gb-green:#16a34a;
  --gb-amber:#f59e0b;
  --gb-violet:#7c3aed;
  --gb-radius-xl:28px;
  --gb-radius-lg:22px;
  --gb-radius-md:16px;
  --gb-shadow-card:0 18px 44px rgba(15,23,42,.08),0 3px 10px rgba(15,23,42,.04);
  --gb-shadow-card-hover:0 24px 58px rgba(15,23,42,.12),0 6px 18px rgba(15,23,42,.05);
  --gb-shadow-red:0 14px 32px rgba(225,29,47,.22);
  --gb-ring:0 0 0 4px rgba(37,99,235,.10);
}
html{scroll-behavior:smooth;}
body,
body.auth-layout-body{
  background:
    radial-gradient(circle at 9% -10%, rgba(225,29,47,.12), transparent 30%),
    radial-gradient(circle at 88% 0%, rgba(37,99,235,.11), transparent 34%),
    linear-gradient(180deg,#f8fbff 0%,#eef3f9 48%,#f6f8fb 100%) !important;
  color:var(--gb-ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
a{transition:color .18s ease, opacity .18s ease, transform .18s ease;}
a:hover{text-decoration:none;}

/* Global glass cards */
.panel,.card,.stat-card,.cab-panel,.cab-hero,.cab-stat,.cab-empty,.cab-mobile-card,
.admin-card,.admin-stat,.admin-users-card,.admin-users-stat,
.crm-main-card,.crm-panel,.crm-kpi,.crm-card-lite,.crm-empty,.crm-mobile-record,
.client-link-panel,.company-logistics-panel,.company-history-panel,
.block-card,.logic-card,.example-card,.doc-example-card,.request-docs-card,
.modal-panel,.cab-modal-panel,.auth-card,.login-card{
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.86)) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:var(--gb-shadow-card) !important;
  backdrop-filter:blur(18px) saturate(138%);
  -webkit-backdrop-filter:blur(18px) saturate(138%);
}
.panel,.card,.stat-card,.cab-panel,.cab-hero,.cab-stat,.cab-empty,
.admin-card,.admin-stat,.admin-users-card,.admin-users-stat,
.crm-main-card,.crm-panel,.crm-kpi,.crm-card-lite,.crm-empty,
.client-link-panel,.company-logistics-panel,.company-history-panel,
.block-card,.logic-card,.example-card,.doc-example-card,.request-docs-card{
  border-radius:var(--gb-radius-xl) !important;
}
.crm-panel,.crm-kpi,.crm-card-lite,.cab-stat,.admin-stat,.admin-users-stat{position:relative;overflow:hidden;}
.crm-panel::before,.crm-kpi::before,.cab-stat::before,.admin-stat::before,.admin-users-stat::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent);
  pointer-events:none;
}
.crm-kpi:hover,.crm-panel:hover,.cab-stat:hover,.admin-stat:hover,.admin-users-stat:hover,.crm-card-lite:hover{
  box-shadow:var(--gb-shadow-card-hover) !important;
  transform:translateY(-1px);
}
.crm-kpi,.crm-panel,.cab-stat,.admin-stat,.admin-users-stat,.crm-card-lite{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}

/* Header / app topbar */
.topbar,.auth-topbar{
  background:
    radial-gradient(circle at 8% 0%, rgba(225,29,47,.20), transparent 34%),
    linear-gradient(135deg,#090f1d 0%,#111827 52%,#0b1020 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 46px rgba(15,23,42,.20) !important;
}
.nav a,.auth-topbar-brand{opacity:.92;}
.nav a:hover,.auth-topbar-brand:hover{opacity:1;}

/* Wordmark polish */
.gb-text-logo{letter-spacing:-.01em !important;}
.gb-text-logo-gen{
  background:linear-gradient(180deg,#ff9ba4 0%,#ff5064 34%,#e11d2f 68%,#a50f1d 100%) !important;
  -webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.18)) drop-shadow(0 7px 14px rgba(225,29,47,.32)) !important;
}
.gb-text-logo-broker{filter:drop-shadow(0 1px 0 rgba(255,255,255,.16)) drop-shadow(0 8px 18px rgba(0,0,0,.24)) !important;}

/* CRM shell */
.crm-app-wrap{padding:14px 0 10px !important;}
.crm-app{gap:18px !important;}
.crm-sidebar{gap:14px !important;}
.crm-brand{
  border-radius:26px !important;
  padding:18px !important;
  background:
    radial-gradient(circle at top right, rgba(225,29,47,.09), transparent 40%),
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.82)) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:var(--gb-shadow-card) !important;
}
.crm-brand::before{
  height:4px !important;
  background:linear-gradient(90deg,#0b1220 0%,#e11d2f 45%,#ff7380 58%,#0b1220 100%) !important;
}
.crm-brand h1{font-size:17px !important;font-weight:900 !important;letter-spacing:-.035em !important;color:#0f172a !important;}
.crm-brand p{font-size:12.5px !important;color:#637083 !important;}
.crm-help{
  border-radius:22px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(248,250,252,.82)) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 12px 32px rgba(15,23,42,.06) !important;
}
.crm-help h3{letter-spacing:-.02em;}

/* Custom icon system */
.gb-icon,.crm-nav-icon,.cab-nav-icon{
  width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;
  color:currentColor;position:relative;
}
.gb-icon::before,.crm-nav-icon::before,.cab-nav-icon::before{
  content:"";display:block;width:20px;height:20px;background:currentColor;
  mask-repeat:no-repeat;mask-position:center;mask-size:20px 20px;
  -webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:20px 20px;
}
.gb-icon-dashboard::before,.gb-icon-cabinet::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 10.8 12 4l8 6.8V20a1 1 0 0 1-1 1h-5v-6h-4v6H5a1 1 0 0 1-1-1v-9.2Zm2 1V19h2v-6h8v6h2v-7.2l-6-5.1-6 5.1Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 10.8 12 4l8 6.8V20a1 1 0 0 1-1 1h-5v-6h-4v6H5a1 1 0 0 1-1-1v-9.2Zm2 1V19h2v-6h8v6h2v-7.2l-6-5.1-6 5.1Z'/%3E%3C/svg%3E");
}
.gb-icon-applications::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3h10a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm0 2v14h10V5H7Zm2 3h6v2H9V8Zm0 4h6v2H9v-2Zm0 4h4v2H9v-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3h10a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm0 2v14h10V5H7Zm2 3h6v2H9V8Zm0 4h6v2H9v-2Zm0 4h4v2H9v-2Z'/%3E%3C/svg%3E");
}
.gb-icon-trash::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-2 6h10l-.7 11a2 2 0 0 1-2 1.9H9.7a2 2 0 0 1-2-1.9L7 9Zm2.1 2 .55 8.7h4.7L14.9 11H9.1Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-2 6h10l-.7 11a2 2 0 0 1-2 1.9H9.7a2 2 0 0 1-2-1.9L7 9Zm2.1 2 .55 8.7h4.7L14.9 11H9.1Z'/%3E%3C/svg%3E");
}
.gb-icon-companies::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v10h-7v-4H9v4H4Zm2-2h2v-4h6v4h4v-8h-4V5H6v14Zm2-11h2v2H8V8Zm0 4h2v2H8v-2Zm4-4h2v2h-2V8Zm0 4h2v2h-2v-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v10h-7v-4H9v4H4Zm2-2h2v-4h6v4h4v-8h-4V5H6v14Zm2-11h2v2H8V8Zm0 4h2v2H8v-2Zm4-4h2v2h-2V8Zm0 4h2v2h-2v-2Z'/%3E%3C/svg%3E");
}
.gb-icon-users::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-2a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm6.5 2a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0-2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM2 21a7 7 0 0 1 14 0h-2a5 5 0 0 0-10 0H2Zm13.2-5.8A5.7 5.7 0 0 1 22 21h-2a3.7 3.7 0 0 0-3.7-3.7c-.2-.75-.56-1.46-1.1-2.1Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-2a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm6.5 2a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0-2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM2 21a7 7 0 0 1 14 0h-2a5 5 0 0 0-10 0H2Zm13.2-5.8A5.7 5.7 0 0 1 22 21h-2a3.7 3.7 0 0 0-3.7-3.7c-.2-.75-.56-1.46-1.1-2.1Z'/%3E%3C/svg%3E");
}
.gb-icon-reports::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 20V4h2v16H5Zm4 0V9h2v11H9Zm4 0V6h2v14h-2Zm4 0v-7h2v7h-2Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 20V4h2v16H5Zm4 0V9h2v11H9Zm4 0V6h2v14h-2Zm4 0v-7h2v7h-2Z'/%3E%3C/svg%3E");
}
.gb-icon-settings::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19.4 13.5a7.8 7.8 0 0 0 0-3l2-1.5-2-3.5-2.4 1a8 8 0 0 0-2.6-1.5L14 2h-4l-.4 3a8 8 0 0 0-2.6 1.5l-2.4-1-2 3.5 2 1.5a7.8 7.8 0 0 0 0 3l-2 1.5 2 3.5 2.4-1a8 8 0 0 0 2.6 1.5l.4 3h4l.4-3a8 8 0 0 0 2.6-1.5l2.4 1 2-3.5-2-1.5ZM12 15.5A3.5 3.5 0 1 1 12 8a3.5 3.5 0 0 1 0 7.5Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19.4 13.5a7.8 7.8 0 0 0 0-3l2-1.5-2-3.5-2.4 1a8 8 0 0 0-2.6-1.5L14 2h-4l-.4 3a8 8 0 0 0-2.6 1.5l-2.4-1-2 3.5 2 1.5a7.8 7.8 0 0 0 0 3l-2 1.5 2 3.5 2.4-1a8 8 0 0 0 2.6 1.5l.4 3h4l.4-3a8 8 0 0 0 2.6-1.5l2.4 1 2-3.5-2-1.5ZM12 15.5A3.5 3.5 0 1 1 12 8a3.5 3.5 0 0 1 0 7.5Z'/%3E%3C/svg%3E");
}
.crm-nav-link,.crm-mobile-link{
  position:relative;
  overflow:hidden;
}
.crm-nav-link{
  min-height:46px !important;
  border-radius:18px !important;
  padding:12px 13px !important;
  background:rgba(255,255,255,.74) !important;
  border:1px solid rgba(255,255,255,.58) !important;
  box-shadow:0 9px 22px rgba(15,23,42,.05) !important;
  font-weight:850 !important;
}
.crm-nav-link .crm-nav-icon{
  width:30px;height:30px;flex:0 0 30px;border-radius:12px;
  color:#64748b;background:linear-gradient(180deg,#f8fafc,#eef2f7);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 6px 12px rgba(15,23,42,.06);
}
.crm-nav-link .crm-nav-icon::before{width:18px;height:18px;mask-size:18px 18px;-webkit-mask-size:18px 18px;}
.crm-nav-link:hover{
  transform:translateY(-1px) !important;
  background:#fff !important;
  border-color:rgba(225,29,47,.18) !important;
  box-shadow:0 16px 34px rgba(15,23,42,.08) !important;
}
.crm-nav-link:hover .crm-nav-icon{color:var(--gb-red);}
.crm-nav-link.active{
  color:#fff !important;
  background:
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.28),transparent 32%),
    linear-gradient(135deg,#ff4357 0%,#e11d2f 45%,#9f1239 100%) !important;
  border-color:rgba(255,255,255,.22) !important;
  box-shadow:0 16px 34px rgba(225,29,47,.25) !important;
}
.crm-nav-link.active .crm-nav-icon{
  color:#fff;background:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.24);
}
.crm-nav-link.active::after{
  content:"";position:absolute;inset:-2px auto -2px 0;width:4px;background:rgba(255,255,255,.82);border-radius:999px;
}
.crm-mobile-link .crm-nav-icon{width:23px;height:23px;flex:0 0 23px;color:#64748b;}
.crm-mobile-link .crm-nav-icon::before{width:20px;height:20px;mask-size:20px 20px;-webkit-mask-size:20px 20px;}
.crm-mobile-link.active .crm-nav-icon{color:var(--gb-red);}
.crm-mobile-link.active{
  background:linear-gradient(180deg,#fff5f6,#ffe7ea) !important;
  color:#b91c1c !important;
  box-shadow:inset 0 0 0 1px rgba(225,29,47,.10);
}
.crm-mobile-nav{
  border-radius:24px !important;
  padding:9px !important;
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
}

/* Buttons */
.btn,.crm-btn,.cab-btn,.auth-btn,.bulk-btn,.company-action-btn,.block-nav-btn,.modal-close,
button[type="submit"],button[type="button"]{
  transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease,background .17s ease,opacity .17s ease;
}
.btn-primary,.crm-btn-red,.auth-btn,.quick-submit-btn,.request-docs-actions .primary,
button.btn-primary{
  background:
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.36),transparent 30%),
    linear-gradient(135deg,#ff4357 0%,#e11d2f 50%,#b91c1c 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:var(--gb-shadow-red) !important;
}
.btn-dark,.crm-btn-dark,.cab-btn.dark,.cab-mobile-link.active{
  background:linear-gradient(135deg,#0b1220,#111827 56%,#1e293b) !important;
  color:#fff !important;
  box-shadow:0 13px 28px rgba(15,23,42,.22) !important;
}
.btn-light,.crm-btn-soft,.crm-btn-ghost,.auth-btn-soft,.btn-secondary,.btn-soft,.cab-btn:not(.dark){
  background:linear-gradient(180deg,#ffffff,#f8fafc) !important;
  border:1px solid rgba(148,163,184,.30) !important;
  color:#111827 !important;
  box-shadow:0 10px 22px rgba(15,23,42,.05) !important;
}
.btn:hover,.crm-btn:hover,.cab-btn:hover,.auth-btn:hover,.bulk-btn:hover,.company-action-btn:hover,
button[type="submit"]:hover,button[type="button"]:hover{
  transform:translateY(-1px);
  box-shadow:var(--gb-shadow-card-hover) !important;
}
.btn:active,.crm-btn:active,.cab-btn:active,.auth-btn:active,button:active{transform:translateY(0) scale(.99);}

/* Inputs and form controls */
input,select,textarea,.crm-input,.crm-select,.auth-input,.application-select,
.form-grid input,.form-grid select,.form-grid textarea{
  border-radius:16px !important;
  border:1px solid rgba(148,163,184,.30) !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 9px 20px rgba(15,23,42,.035) !important;
  transition:border-color .17s ease,box-shadow .17s ease,background .17s ease;
}
input:focus,select:focus,textarea:focus,.crm-input:focus,.crm-select:focus,.auth-input:focus{
  outline:none !important;
  border-color:rgba(37,99,235,.42) !important;
  box-shadow:var(--gb-ring),inset 0 1px 0 rgba(255,255,255,.9) !important;
  background:#fff !important;
}
label,.crm-label,.auth-label{color:#0f172a;font-weight:850;letter-spacing:-.015em;}
.muted,.crm-subtitle,.crm-panel-sub,.crm-kpi-desc,.cab-sub,.admin-sub,.admin-users-sub{color:#64748b !important;}

/* Tables */
.table,.crm-table,.cab-table,.admin-table,.admin-users-table,.company-applications-table{
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.table th,.crm-table th,.cab-table th,.admin-table th,.admin-users-table th,.company-applications-table th{
  background:linear-gradient(180deg,#fbfdff,#f3f7fb) !important;
  color:#526172 !important;
  text-transform:uppercase;
  letter-spacing:.045em;
  font-size:11px !important;
  border-bottom:1px solid rgba(148,163,184,.25) !important;
}
.table td,.crm-table td,.cab-table td,.admin-table td,.admin-users-table td,.company-applications-table td{
  border-bottom:1px solid rgba(226,232,240,.72) !important;
}
.table tr:hover td,.crm-table tr:hover td,.cab-table tr:hover td,.admin-table tr:hover td,.admin-users-table tr:hover td,
.company-applications-table tr:hover td{
  background:linear-gradient(90deg,rgba(225,29,47,.025),rgba(37,99,235,.025)) !important;
}
.crm-table-wrap,.cab-table-wrap,.admin-table-wrap,.admin-users-table-wrap,.company-table-block{
  border-radius:22px !important;
  overflow:auto;
  border:1px solid rgba(148,163,184,.22);
  background:rgba(255,255,255,.66);
}

/* Statuses and badges */
.crm-status,.cab-status-pill,.company-status-pill,.report-status-pill,.badge,.crm-badge,.crm-tag,.application-chip,
.priority-badge,.history-source-badge,.request-docs-badge{
  border-radius:999px !important;
  font-weight:900 !important;
  letter-spacing:-.01em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 8px 16px rgba(15,23,42,.05);
}
.crm-status,.cab-status-pill,.company-status-pill,.report-status-pill{position:relative;padding-left:24px !important;}
.crm-status::before,.cab-status-pill::before,.company-status-pill::before,.report-status-pill::before{
  content:"";position:absolute;left:10px;top:50%;width:7px;height:7px;border-radius:999px;transform:translateY(-50%);
  background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 13%,transparent);
}
.crm-status.success,.cab-status-pill.success,.company-status-pill.success{background:linear-gradient(180deg,#ecfdf5,#dcfce7) !important;border-color:#a7f3d0 !important;color:#047857 !important;}
.crm-status.info,.cab-status-pill.info,.company-status-pill.info{background:linear-gradient(180deg,#eff6ff,#dbeafe) !important;border-color:#bfdbfe !important;color:#1d4ed8 !important;}
.crm-status.warning,.cab-status-pill.warning,.company-status-pill.warning{background:linear-gradient(180deg,#fff7ed,#ffedd5) !important;border-color:#fed7aa !important;color:#c2410c !important;}
.crm-status.danger,.cab-status-pill.danger,.company-status-pill.danger{background:linear-gradient(180deg,#fff1f2,#ffe4e6) !important;border-color:#fecdd3 !important;color:#be123c !important;}
.crm-status.new,.cab-status-pill.new,.company-status-pill.new{background:linear-gradient(180deg,#eef2ff,#e0e7ff) !important;border-color:#c7d2fe !important;color:#4338ca !important;}

/* Main headings */
.crm-title,.panel h1,.panel h2,.cab-head h1,.auth-card h2,.auth-aside h1,
.admin-head h1,.admin-users-head h1,.crm-section-title{
  letter-spacing:-.045em !important;
  color:#0b1220 !important;
}
.crm-title{font-size:30px !important;font-weight:950 !important;}
.crm-main-card{
  background:
    radial-gradient(circle at 0% 0%,rgba(225,29,47,.085),transparent 28%),
    radial-gradient(circle at 92% 0%,rgba(37,99,235,.085),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.82)) !important;
}
.crm-main-card::before,.cab-hero::before,.panel::before{
  content:"";display:block;position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.96),transparent);
  pointer-events:none;
}
.crm-main-card,.cab-hero,.panel{position:relative;overflow:hidden;}

/* File inputs */
input[type="file"]::file-selector-button{
  border:0;border-radius:12px;padding:9px 13px;margin-right:10px;font-weight:900;color:#fff;
  background:linear-gradient(135deg,#0f172a,#263247);
  box-shadow:0 8px 18px rgba(15,23,42,.16);
  cursor:pointer;
}
input[type="file"]::-webkit-file-upload-button{
  border:0;border-radius:12px;padding:9px 13px;margin-right:10px;font-weight:900;color:#fff;
  background:linear-gradient(135deg,#0f172a,#263247);
  box-shadow:0 8px 18px rgba(15,23,42,.16);
  cursor:pointer;
}

/* Cabinet / quick forms */
.quick-shell,.quick-logistics-card,.quick-file-box,.field-stack,.request-docs-item,.docs-status-box,
.logistics-box,.logistics-upload-card,.delivery-logistics-card{
  border-radius:24px !important;
  border-color:rgba(148,163,184,.24) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,250,252,.74)) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.045) !important;
}
.cab-modal{
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  background:rgba(15,23,42,.46) !important;
}
.cab-modal-panel,.modal-panel{border-radius:30px !important;}

/* Auth */
.auth-page{
  background:
    radial-gradient(circle at 10% 14%,rgba(225,29,47,.12),transparent 26%),
    radial-gradient(circle at 92% 8%,rgba(37,99,235,.10),transparent 30%),
    linear-gradient(180deg,#f8fbff,#edf3fa) !important;
}
.auth-aside{
  background:
    radial-gradient(circle at 100% 100%,rgba(225,29,47,.24),transparent 30%),
    radial-gradient(circle at 0 0,rgba(37,99,235,.14),transparent 30%),
    linear-gradient(145deg,#070d1a,#111827 58%,#0b1020) !important;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 26px 70px rgba(15,23,42,.26) !important;
}
.auth-card{border-radius:28px !important;}
.auth-point,.auth-step{
  border-radius:20px !important;
  border-color:rgba(255,255,255,.13) !important;
  background:rgba(255,255,255,.065) !important;
}
.auth-logo{
  background:radial-gradient(circle at 34% 24%,#ff99a4 0%,#ff4357 32%,#e11d2f 62%,#9f1239 100%) !important;
  box-shadow:0 18px 34px rgba(225,29,47,.30),inset 0 1px 0 rgba(255,255,255,.38) !important;
}

/* Scroll top */
.gb-scroll-top{
  background:radial-gradient(circle at 34% 20%,#ff7380,#e11d2f 58%,#9f1239) !important;
  border-color:rgba(255,255,255,.28) !important;
  box-shadow:0 16px 36px rgba(225,29,47,.30) !important;
}

@media (max-width:860px){
  .crm-app-wrap{padding:8px 0 !important;}
  .crm-main-card,.crm-panel,.cab-panel,.cab-hero,.panel{border-radius:24px !important;}
  .crm-title{font-size:24px !important;}
  .crm-mobile-record,.cab-mobile-card,.admin-mobile-card,.admin-users-mobile-card{
    border-radius:24px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.82)) !important;
    border:1px solid rgba(255,255,255,.72) !important;
    box-shadow:var(--gb-shadow-card) !important;
  }
  .btn,.crm-btn,.cab-btn,.auth-btn,button[type="submit"],button[type="button"]{border-radius:16px !important;}
  input,select,textarea,.crm-input,.crm-select,.auth-input{border-radius:18px !important;}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;scroll-behavior:auto !important;}
}


/* D14A2 patch 1: cabinet glow and quick form bugfix. Scope: /cabinet visual only. */
body,
body.auth-layout-body{
  background:
    radial-gradient(circle at 9% -10%, rgba(225,29,47,.084), transparent 30%),
    radial-gradient(circle at 88% 0%, rgba(37,99,235,.077), transparent 34%),
    linear-gradient(180deg,#f8fbff 0%,#eef3f9 48%,#f6f8fb 100%) !important;
}
.topbar,.auth-topbar{
  background:
    radial-gradient(circle at 8% 0%, rgba(225,29,47,.14), transparent 34%),
    linear-gradient(135deg,#090f1d 0%,#111827 52%,#0b1020 100%) !important;
}
.gb-text-logo-gen{
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.13)) drop-shadow(0 5px 10px rgba(225,29,47,.22)) !important;
}

/* Hard reset for the first row of the quick request form: it must never become a red button/panel. */
.quick-primary,
.quick-primary.admin,
.quick-shell.company-scope .quick-primary,
.cab-panel .quick-primary,
.panel .quick-primary{
  background:transparent !important;
  background-image:none !important;
  color:inherit !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
  padding:0 !important;
  overflow:visible !important;
}
.quick-primary:hover,
.quick-primary.admin:hover,
.quick-shell.company-scope .quick-primary:hover,
.cab-panel .quick-primary:hover,
.panel .quick-primary:hover{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  transform:none !important;
}
.quick-primary::before,
.quick-primary::after,
.quick-primary.admin::before,
.quick-primary.admin::after{
  display:none !important;
  content:none !important;
}
.quick-primary .field,
.quick-primary.admin .field,
.quick-shell.company-scope .quick-primary .field{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,250,252,.74)) !important;
  border:1px solid rgba(148,163,184,.24) !important;
  border-radius:24px !important;
  box-shadow:0 12px 28px rgba(15,23,42,.045) !important;
  padding:12px !important;
  min-width:0 !important;
  color:var(--gb-ink,#0b1220) !important;
}
.quick-primary label,
.quick-primary.admin label,
.quick-shell.company-scope .quick-primary label{
  color:#0f172a !important;
}
.quick-primary input,
.quick-primary select,
.quick-primary.admin input,
.quick-primary.admin select,
.quick-shell.company-scope .quick-primary input,
.quick-shell.company-scope .quick-primary select{
  background:rgba(255,255,255,.86) !important;
  color:#111827 !important;
  border:1px solid rgba(148,163,184,.30) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 9px 20px rgba(15,23,42,.035) !important;
}
.quick-primary input::placeholder{color:#8a98aa !important;}

/* Keep only the submit button red in the quick form. */
.quick-submit-btn,
.cab-btn.red.quick-submit-btn{
  background:linear-gradient(135deg,#ff4357 0%,#e11d2f 50%,#b91c1c 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:0 14px 32px rgba(225,29,47,.22) !important;
}

/* D14A3 patch: remove field/button halos without changing d14a layout. */
:root{
  --gb-field-shadow:none;
  --gb-field-focus:0 0 0 3px rgba(37,99,235,.10);
  --gb-button-shadow:0 6px 14px rgba(15,23,42,.08);
  --gb-red-button-shadow:0 8px 18px rgba(225,29,47,.16);
}

/* Global controls: keep the premium d14a shape, remove the white/grey underlay glow. */
input,
select,
textarea,
.crm-input,
.crm-select,
.auth-input,
.application-select,
.form-grid input,
.form-grid select,
.form-grid textarea,
.quick-primary input,
.quick-primary select,
.quick-primary.admin input,
.quick-primary.admin select,
.quick-shell.company-scope .quick-primary input,
.quick-shell.company-scope .quick-primary select,
.field input,
.field select,
.field textarea,
.field-stack input,
.field-stack select,
.field-stack textarea,
.quick-file-box input,
.quick-logistics-card input,
.quick-logistics-card select,
.logistics-box input,
.logistics-box select,
.logistics-box textarea,
.logistics-upload-card input,
.delivery-logistics-card input,
.delivery-logistics-card select,
.request-docs-item input,
.request-docs-item textarea{
  background:#fff !important;
  box-shadow:none !important;
  filter:none !important;
}

input:focus,
select:focus,
textarea:focus,
.crm-input:focus,
.crm-select:focus,
.auth-input:focus,
.application-select:focus,
.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus{
  box-shadow:var(--gb-field-focus) !important;
  background:#fff !important;
}

/* Field shells: remove the extra white plate/glow under each input, preserve borders and spacing. */
.field,
.quick-primary .field,
.quick-primary.admin .field,
.quick-shell.company-scope .quick-primary .field,
.quick-file-box,
.field-stack,
.quick-logistics-card,
.logistics-box,
.logistics-upload-card,
.delivery-logistics-card,
.request-docs-item,
.docs-status-box,
.file-upload-box,
.file-upload-card,
.upload-card,
.upload-box,
.client-upload-box,
.cab-upload-box{
  box-shadow:none !important;
  filter:none !important;
}

.quick-primary .field,
.quick-primary.admin .field,
.quick-shell.company-scope .quick-primary .field{
  background:rgba(255,255,255,.64) !important;
  border:1px solid rgba(148,163,184,.24) !important;
}

.quick-file-box,
.field-stack,
.quick-logistics-card,
.logistics-box,
.logistics-upload-card,
.delivery-logistics-card,
.request-docs-item,
.docs-status-box,
.file-upload-box,
.file-upload-card,
.upload-card,
.upload-box,
.client-upload-box,
.cab-upload-box{
  background:rgba(255,255,255,.72) !important;
}

/* Buttons: remove white flares/plates behind buttons, leave only controlled accent shadow. */
.btn,
.crm-btn,
.cab-btn,
.auth-btn,
.bulk-btn,
.company-action-btn,
.block-nav-btn,
.modal-close,
button[type="submit"],
button[type="button"]{
  filter:none !important;
  box-shadow:var(--gb-button-shadow) !important;
}

.btn-primary,
.crm-btn-red,
.auth-btn,
.quick-submit-btn,
.request-docs-actions .primary,
button.btn-primary,
.cab-btn.red.quick-submit-btn,
.request-docs-btn,
.request-tpo-btn{
  box-shadow:var(--gb-red-button-shadow) !important;
}

.btn:hover,
.crm-btn:hover,
.cab-btn:hover,
.auth-btn:hover,
.bulk-btn:hover,
.company-action-btn:hover,
button[type="submit"]:hover,
button[type="button"]:hover{
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
}

.btn-primary:hover,
.crm-btn-red:hover,
.auth-btn:hover,
.quick-submit-btn:hover,
.request-docs-actions .primary:hover,
button.btn-primary:hover,
.cab-btn.red.quick-submit-btn:hover,
.request-docs-btn:hover,
.request-tpo-btn:hover{
  box-shadow:0 10px 22px rgba(225,29,47,.18) !important;
}

/* Native file buttons are too visually heavy in d14a. Keep them compact and prevent overlap. */
input[type="file"]{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
input[type="file"]::file-selector-button{
  padding:7px 11px !important;
  border-radius:10px !important;
  margin-right:8px !important;
  font-size:13px !important;
  line-height:1.15 !important;
  box-shadow:none !important;
  background:#111827 !important;
}
input[type="file"]::-webkit-file-upload-button{
  padding:7px 11px !important;
  border-radius:10px !important;
  margin-right:8px !important;
  font-size:13px !important;
  line-height:1.15 !important;
  box-shadow:none !important;
  background:#111827 !important;
}

/* Prevent pseudo-elements from creating invisible decorative plates around form fields. */
.field::before,
.field::after,
.quick-file-box::before,
.quick-file-box::after,
.field-stack::before,
.field-stack::after,
.quick-logistics-card::before,
.quick-logistics-card::after,
.logistics-box::before,
.logistics-box::after,
.logistics-upload-card::before,
.logistics-upload-card::after,
.delivery-logistics-card::before,
.delivery-logistics-card::after,
.request-docs-item::before,
.request-docs-item::after,
.docs-status-box::before,
.docs-status-box::after,
.file-upload-box::before,
.file-upload-box::after,
.file-upload-card::before,
.file-upload-card::after,
.upload-card::before,
.upload-card::after,
.upload-box::before,
.upload-box::after{
  display:none !important;
  content:none !important;
}

@media (max-width:860px){
  input,
  select,
  textarea,
  .quick-primary input,
  .quick-primary select,
  .field input,
  .field select,
  .field textarea{
    box-shadow:none !important;
  }
  .field,
  .quick-primary .field,
  .quick-file-box,
  .field-stack,
  .quick-logistics-card,
  .logistics-box,
  .logistics-upload-card,
  .delivery-logistics-card,
  .request-docs-item,
  .docs-status-box{
    box-shadow:none !important;
  }
}

/* D14A4 patch: exact halo cleanup for quick dashboard and application card. No layout or structure changes. */
:root{
  --gb-field-border:rgba(148,163,184,.30);
  --gb-field-bg:#fff;
  --gb-field-focus-soft:0 0 0 3px rgba(37,99,235,.10);
}

/* Remove decorative plates created by d14a/d14a3 around field wrappers.
   Keep the actual input/select/file borders from page templates. */
.quick-shell .quick-primary > .field,
.quick-shell .quick-grid .field,
.quick-shell .quick-file-box,
.quick-shell .quick-logistics-card,
.ops-grid > .field-stack:not(.full),
.logistics-edit-box .field-stack,
.crm-panel .ops-grid > .field-stack:not(.logistics-edit-box),
.crm-panel .field-stack:not(.logistics-edit-box):not(.logistics-upload-card){
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  border-radius:0 !important;
  padding:0 !important;
}

.quick-shell .quick-primary > .field::before,
.quick-shell .quick-primary > .field::after,
.quick-shell .quick-grid .field::before,
.quick-shell .quick-grid .field::after,
.quick-shell .quick-file-box::before,
.quick-shell .quick-file-box::after,
.quick-shell .quick-logistics-card::before,
.quick-shell .quick-logistics-card::after,
.crm-panel .field-stack::before,
.crm-panel .field-stack::after{
  display:none !important;
  content:none !important;
}

/* Cabinet quick form: normalize first-row frames to the same calm input-only style as the rest. */
.quick-shell .quick-primary input,
.quick-shell .quick-primary select,
.quick-shell .quick-grid input,
.quick-shell .quick-grid select,
.quick-shell .quick-logistics-card input,
.quick-shell .quick-logistics-card select,
.quick-shell .quick-logistics-card textarea{
  background:var(--gb-field-bg) !important;
  border:1px solid #dbe1ea !important;
  box-shadow:none !important;
  filter:none !important;
}
.quick-shell .quick-primary input:focus,
.quick-shell .quick-primary select:focus,
.quick-shell .quick-grid input:focus,
.quick-shell .quick-grid select:focus,
.quick-shell .quick-logistics-card input:focus,
.quick-shell .quick-logistics-card select:focus,
.quick-shell .quick-logistics-card textarea:focus{
  box-shadow:var(--gb-field-focus-soft) !important;
}
.quick-shell .quick-file{
  background:#fff !important;
  border:1px dashed #cbd5e1 !important;
  box-shadow:none !important;
  filter:none !important;
}
.quick-shell .quick-file:hover{background:#f8fafc !important;}
.quick-shell .quick-inline-note{
  box-shadow:none !important;
  filter:none !important;
}

/* Application card operations: remove the white glow behind every operational field. */
.crm-panel .ops-grid input,
.crm-panel .ops-grid select,
.crm-panel .ops-grid textarea,
.field-stack input,
.field-stack select,
.field-stack textarea,
.logistics-upload-card input,
.resend-row input[type=file],
.payment-request-grid input[type=file]{
  background:#fff !important;
  box-shadow:none !important;
  filter:none !important;
}
.crm-panel .ops-grid input:focus,
.crm-panel .ops-grid select:focus,
.crm-panel .ops-grid textarea:focus,
.field-stack input:focus,
.field-stack select:focus,
.field-stack textarea:focus{
  box-shadow:var(--gb-field-focus-soft) !important;
}
.logistics-edit-box{
  background:rgba(248,250,252,.52) !important;
  border:1px dashed #d6dee9 !important;
  box-shadow:none !important;
  filter:none !important;
}
.logistics-upload-card{
  background:rgba(255,255,255,.62) !important;
  border:1px dashed #d6dee9 !important;
  box-shadow:none !important;
  filter:none !important;
}

/* Compact file controls across application card. */
.field-stack input[type=file],
.logistics-upload-card input[type=file],
.resend-row input[type=file],
.payment-request-grid input[type=file],
.crm-input[type=file]{
  height:40px !important;
  min-height:40px !important;
  padding:6px 10px !important;
  line-height:26px !important;
  border:1px solid #dbe1ea !important;
  border-radius:13px !important;
  background:#fff !important;
  box-shadow:none !important;
  filter:none !important;
  font-size:12.5px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.field-stack input[type=file]::file-selector-button,
.logistics-upload-card input[type=file]::file-selector-button,
.resend-row input[type=file]::file-selector-button,
.payment-request-grid input[type=file]::file-selector-button,
.crm-input[type=file]::file-selector-button{
  height:26px !important;
  padding:0 10px !important;
  margin-right:8px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#111827 !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:26px !important;
}
.field-stack input[type=file]::-webkit-file-upload-button,
.logistics-upload-card input[type=file]::-webkit-file-upload-button,
.resend-row input[type=file]::-webkit-file-upload-button,
.payment-request-grid input[type=file]::-webkit-file-upload-button,
.crm-input[type=file]::-webkit-file-upload-button{
  height:26px !important;
  padding:0 10px !important;
  margin-right:8px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#111827 !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:26px !important;
}

/* Remove white flare/highlight from request buttons in application card. */
.js-request-docs-form .crm-btn-red,
.js-request-tpo-form .crm-btn-red,
.request-actions-row .crm-btn-red{
  background:linear-gradient(135deg,#ff4357 0%,#e11d2f 54%,#b91c1c 100%) !important;
  box-shadow:0 8px 18px rgba(225,29,47,.16) !important;
  filter:none !important;
}
.js-request-docs-form .crm-btn-red::before,
.js-request-docs-form .crm-btn-red::after,
.js-request-tpo-form .crm-btn-red::before,
.js-request-tpo-form .crm-btn-red::after,
.request-actions-row .crm-btn-red::before,
.request-actions-row .crm-btn-red::after{
  display:none !important;
  content:none !important;
}

/* Remove button underlays in application operational block while preserving normal button shape. */
.crm-panel .ops-grid .crm-btn,
.logistics-upload-card .crm-btn,
.request-actions-row .crm-btn{
  filter:none !important;
}
.crm-panel .ops-grid .crm-btn-soft,
.logistics-upload-card .crm-btn-soft{
  box-shadow:none !important;
}

@media (max-width:860px){
  .quick-shell .quick-primary > .field,
  .quick-shell .quick-grid .field,
  .quick-shell .quick-file-box,
  .quick-shell .quick-logistics-card,
  .crm-panel .field-stack:not(.logistics-edit-box):not(.logistics-upload-card){
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
  }
  .field-stack input[type=file],
  .logistics-upload-card input[type=file],
  .crm-input[type=file]{
    height:40px !important;
    font-size:12.5px !important;
  }
}

/* D14A5 patch: make the /cabinet quick request panel visually uniform with the hero card. */
.cab-page > .cab-panel:has(#dashboardQuickForm),
.cab-page > section.cab-panel:has(.quick-shell){
  background:#fff !important;
  background-image:none !important;
  background-color:#fff !important;
  border:1px solid rgba(229,231,235,.95) !important;
  box-shadow:0 14px 34px rgba(15,23,42,.06) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.cab-page > .cab-panel:has(#dashboardQuickForm)::before,
.cab-page > .cab-panel:has(#dashboardQuickForm)::after,
.cab-page > section.cab-panel:has(.quick-shell)::before,
.cab-page > section.cab-panel:has(.quick-shell)::after{
  display:none !important;
  content:none !important;
}
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-shell,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-primary,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-grid,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-grid-col,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-file-box,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-logistics-card{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-inline-note,
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-card{
  background:#f8fafc !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
}
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-file{
  background:#fff !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
}
.cab-page > .cab-panel:has(#dashboardQuickForm) .quick-file:hover{
  background:#f8fafc !important;
}

/* D14A6 patch 2: registry/trash/reports compact fixes. Scope-safe, no layout rebuild. */
.application-card{
  overflow:visible !important;
}
.application-card-head{
  align-items:center !important;
  gap:10px !important;
}
.application-card .application-select,
.crm-mobile-record .mobile-check{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:28px !important;
  padding:4px 8px !important;
  margin:0 !important;
  border:1px solid #dbe1ea !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:none !important;
  filter:none !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.check-all-row{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  min-height:22px !important;
  padding:0 !important;
  margin:4px 0 2px !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
}
.application-card .application-select input[type="checkbox"],
.check-all-row input[type="checkbox"],
.crm-table input[type="checkbox"],
.crm-mobile-record .mobile-check input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:15px !important;
  height:15px !important;
  min-width:15px !important;
  min-height:15px !important;
  margin:0 !important;
  padding:0 !important;
  border:1.5px solid #94a3b8 !important;
  border-radius:4px !important;
  background:#fff !important;
  box-shadow:none !important;
  filter:none !important;
  position:relative !important;
  vertical-align:middle !important;
  cursor:pointer !important;
}
.application-card .application-select input[type="checkbox"]:checked,
.check-all-row input[type="checkbox"]:checked,
.crm-table input[type="checkbox"]:checked,
.crm-mobile-record .mobile-check input[type="checkbox"]:checked{
  border-color:#e11d2f !important;
  background:#e11d2f !important;
}
.application-card .application-select input[type="checkbox"]:checked::after,
.check-all-row input[type="checkbox"]:checked::after,
.crm-table input[type="checkbox"]:checked::after,
.crm-mobile-record .mobile-check input[type="checkbox"]:checked::after{
  content:"" !important;
  position:absolute !important;
  left:4px !important;
  top:1px !important;
  width:4px !important;
  height:8px !important;
  border:solid #fff !important;
  border-width:0 2px 2px 0 !important;
  transform:rotate(45deg) !important;
}
.application-card .application-actions .crm-btn{
  box-shadow:none !important;
  white-space:nowrap !important;
}

/* Compact one-line status pills for trash and reports. */
.crm-table td .crm-status,
.crm-table td .report-status-pill,
.crm-table td .status-pill{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  max-width:170px !important;
  min-height:24px !important;
  padding:5px 10px 5px 22px !important;
  font-size:10.5px !important;
  line-height:1 !important;
  white-space:nowrap !important;
  word-break:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.crm-table td .crm-status::before,
.crm-table td .report-status-pill::before,
.crm-table td .status-pill::before{
  left:9px !important;
  width:6px !important;
  height:6px !important;
}
.crm-table th:nth-child(8),
.crm-table td:nth-child(8){
  min-width:150px !important;
  white-space:nowrap !important;
}
.crm-table th:nth-child(9),
.crm-table td:nth-child(9){
  white-space:nowrap !important;
}

/* Reports preview: prevent compressed columns and wrapped action/status cells. */
.reports-preview .crm-table-wrap{
  overflow-x:auto !important;
  overflow-y:visible !important;
}
.reports-preview .crm-table{
  min-width:1080px !important;
  width:100% !important;
  table-layout:auto !important;
}
.reports-preview .crm-table th,
.reports-preview .crm-table td{
  word-break:normal !important;
  overflow-wrap:normal !important;
}
.reports-preview .crm-table th:nth-child(1),
.reports-preview .crm-table td:nth-child(1){min-width:120px !important;}
.reports-preview .crm-table th:nth-child(2),
.reports-preview .crm-table td:nth-child(2){min-width:120px !important;}
.reports-preview .crm-table th:nth-child(4),
.reports-preview .crm-table td:nth-child(4){min-width:150px !important;white-space:normal !important;}
.reports-preview .crm-table th:nth-child(5),
.reports-preview .crm-table td:nth-child(5){min-width:150px !important;white-space:normal !important;}
.reports-preview .crm-table th:nth-child(6),
.reports-preview .crm-table td:nth-child(6){min-width:130px !important;white-space:normal !important;}
.reports-preview .crm-table th:nth-child(7),
.reports-preview .crm-table td:nth-child(7){min-width:120px !important;}
.reports-preview .crm-table th:nth-child(8),
.reports-preview .crm-table td:nth-child(8){min-width:170px !important;}
.reports-preview .crm-table th:nth-child(9),
.reports-preview .crm-table td:nth-child(9){min-width:105px !important;}
.reports-preview .report-status-pill.crm-tag{
  max-width:165px !important;
  white-space:nowrap !important;
  text-align:left !important;
}
.reports-preview .crm-table .crm-btn{
  min-width:78px !important;
  height:32px !important;
  padding:0 12px !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}

@media (max-width:760px){
  .application-card .application-select,
  .crm-mobile-record .mobile-check{
    width:max-content !important;
    max-width:100% !important;
  }
  .crm-table td .crm-status,
  .crm-table td .report-status-pill,
  .crm-table td .status-pill{
    max-width:100% !important;
  }
}



/* D14A7 patch: reports preview fits inside the panel, no horizontal scroll and no Open action column. */
.reports-preview .crm-table-wrap{
  overflow-x:visible !important;
  overflow-y:visible !important;
  width:100% !important;
  max-width:100% !important;
}
.reports-preview .crm-table{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  table-layout:fixed !important;
}
.reports-preview .crm-table th,
.reports-preview .crm-table td{
  box-sizing:border-box !important;
  padding:10px 9px !important;
  font-size:12px !important;
  line-height:1.22 !important;
  white-space:normal !important;
  word-break:break-word !important;
  overflow-wrap:anywhere !important;
  vertical-align:top !important;
}
.reports-preview .crm-table th{
  font-size:10px !important;
  line-height:1.1 !important;
  letter-spacing:.04em !important;
}
.reports-preview .crm-table th:nth-child(1),
.reports-preview .crm-table td:nth-child(1){width:12% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(2),
.reports-preview .crm-table td:nth-child(2){width:11% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(3),
.reports-preview .crm-table td:nth-child(3){width:9% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(4),
.reports-preview .crm-table td:nth-child(4){width:16% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(5),
.reports-preview .crm-table td:nth-child(5){width:14% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(6),
.reports-preview .crm-table td:nth-child(6){width:14% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(7),
.reports-preview .crm-table td:nth-child(7){width:12% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(8),
.reports-preview .crm-table td:nth-child(8){width:12% !important;min-width:0 !important;}
.reports-preview .crm-table th:nth-child(9),
.reports-preview .crm-table td:nth-child(9){
  display:none !important;
}
.reports-preview .crm-table .crm-link{
  display:inline !important;
  white-space:normal !important;
  word-break:break-word !important;
}
.reports-preview .report-status-pill.crm-tag{
  display:inline-flex !important;
  max-width:100% !important;
  min-height:22px !important;
  padding:4px 8px 4px 20px !important;
  font-size:10px !important;
  line-height:1.05 !important;
  white-space:normal !important;
  text-align:left !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
.reports-preview .report-status-pill.crm-tag::before{
  left:8px !important;
  width:5px !important;
  height:5px !important;
}
.reports-preview .crm-table-wrap::-webkit-scrollbar{
  display:none !important;
}
@media (max-width:980px){
  .reports-preview .crm-table th,
  .reports-preview .crm-table td{
    padding:8px 6px !important;
    font-size:11px !important;
  }
  .reports-preview .crm-table th{
    font-size:9px !important;
  }
}


/* D14A9 patch: stabilize CRM sidebar width and remove cramped brand text. */
.crm-app{
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:16px !important;
}
.crm-sidebar{
  width:220px !important;
  min-width:220px !important;
  flex:0 0 220px !important;
}
.crm-brand{
  width:100% !important;
  min-width:0 !important;
  padding:16px 18px !important;
}
.crm-brand-logo-chip{
  max-width:100% !important;
}
.crm-brand p{
  font-size:12.5px !important;
  line-height:1.5 !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
}
@media (max-width:1180px){
  .crm-app{grid-template-columns:1fr !important;}
  .crm-sidebar{width:auto !important;min-width:0 !important;flex:auto !important;}
}


/* D14A10 patch: calm gradient action buttons for success/destructive controls. */
:root{
  --gb-success-1:#34d399;
  --gb-success-2:#16a34a;
  --gb-success-3:#047857;
  --gb-success-shadow:0 9px 18px rgba(22,163,74,.16);
  --gb-danger-1:#fb7185;
  --gb-danger-2:#dc2626;
  --gb-danger-3:#991b1b;
  --gb-danger-shadow:0 9px 18px rgba(220,38,38,.16);
}

/* Green actions: archive, restore, activate, Excel and bulk download. */
.crm-btn-green,
.bulk-btn.green,
.btn.activate,
.btn.on,
.admin-mobile-actions .btn.activate,
.admin-mobile-actions .btn.on,
.admin-users-mobile-actions .btn.on,
a.crm-btn-green,
button.crm-btn-green{
  background:linear-gradient(135deg,var(--gb-success-1) 0%,var(--gb-success-2) 54%,var(--gb-success-3) 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:var(--gb-success-shadow) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.12) !important;
  filter:none !important;
}
.crm-btn-green:hover,
.bulk-btn.green:hover,
.btn.activate:hover,
.btn.on:hover,
.admin-mobile-actions .btn.activate:hover,
.admin-mobile-actions .btn.on:hover,
.admin-users-mobile-actions .btn.on:hover,
a.crm-btn-green:hover,
button.crm-btn-green:hover{
  background:linear-gradient(135deg,#4ade80 0%,#15803d 58%,#065f46 100%) !important;
  border-color:rgba(255,255,255,.20) !important;
  box-shadow:0 10px 22px rgba(22,163,74,.20) !important;
}

/* Red/destructive actions: deactivate/delete/disable. */
.btn.deactivate,
.btn.delete,
.btn.off,
.btn.del,
.admin-mobile-actions .btn.deactivate,
.admin-mobile-actions .btn.delete,
.admin-users-mobile-actions .btn.off,
.admin-users-mobile-actions .btn.del,
button.btn.deactivate,
button.btn.delete,
button.btn.off,
button.btn.del{
  background:linear-gradient(135deg,var(--gb-danger-1) 0%,var(--gb-danger-2) 54%,var(--gb-danger-3) 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.16) !important;
  box-shadow:var(--gb-danger-shadow) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.12) !important;
  filter:none !important;
}
.btn.deactivate:hover,
.btn.delete:hover,
.btn.off:hover,
.btn.del:hover,
.admin-mobile-actions .btn.deactivate:hover,
.admin-mobile-actions .btn.delete:hover,
.admin-users-mobile-actions .btn.off:hover,
.admin-users-mobile-actions .btn.del:hover,
button.btn.deactivate:hover,
button.btn.delete:hover,
button.btn.off:hover,
button.btn.del:hover{
  background:linear-gradient(135deg,#f43f5e 0%,#b91c1c 58%,#7f1d1d 100%) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:0 10px 22px rgba(220,38,38,.20) !important;
}

/* Remove accidental glossy pseudo-layers from these action buttons. */
.crm-btn-green::before,.crm-btn-green::after,
.bulk-btn.green::before,.bulk-btn.green::after,
.btn.activate::before,.btn.activate::after,
.btn.on::before,.btn.on::after,
.btn.deactivate::before,.btn.deactivate::after,
.btn.delete::before,.btn.delete::after,
.btn.off::before,.btn.off::after,
.btn.del::before,.btn.del::after{
  display:none !important;
  content:none !important;
  animation:none !important;
}


/* D14A12 patch: mobile cabinet nav and trash mobile select alignment. */
/* /cabinet is not crm_shell, so its mobile bottom navigation is explicitly styled here
   with the same modern visual language as crm_shell mobile navigation. */
.cab-dashboard-mobile-nav{
  display:none !important;
}
@media (max-width:860px){
  .cab-dashboard-mobile-nav{
    display:flex !important;
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    z-index:1800 !important;
    gap:6px !important;
    overflow-x:auto !important;
    justify-content:space-between !important;
    border-radius:24px !important;
    padding:9px !important;
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(255,255,255,.78) !important;
    box-shadow:0 18px 40px rgba(15,23,42,.14) !important;
    backdrop-filter:blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  }
  .cab-dashboard-mobile-nav::-webkit-scrollbar{display:none !important;}
  .cab-dashboard-mobile-nav .crm-mobile-link{
    flex:1 1 0 !important;
    min-width:0 !important;
    display:grid !important;
    justify-items:center !important;
    align-items:center !important;
    gap:4px !important;
    padding:9px 5px !important;
    border-radius:15px !important;
    color:#0f172a !important;
    text-decoration:none !important;
    font-size:11px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .cab-dashboard-mobile-nav .crm-mobile-link.active{
    color:#fff !important;
    background:linear-gradient(135deg,#0b1220,#111827 56%,#1e293b) !important;
    box-shadow:0 12px 24px rgba(15,23,42,.18) !important;
  }
  .cab-dashboard-mobile-nav .crm-mobile-link.active .crm-nav-icon{color:#fff !important;}
  .cab-dashboard-mobile-nav .crm-nav-icon{
    width:22px !important;
    height:22px !important;
    flex:0 0 22px !important;
    color:#64748b !important;
  }
  .cab-dashboard-mobile-nav .crm-nav-icon::before{
    width:19px !important;
    height:19px !important;
    mask-size:19px 19px !important;
    -webkit-mask-size:19px 19px !important;
  }
}
@media (max-width:380px){
  .cab-dashboard-mobile-nav{left:8px !important;right:8px !important;padding:7px !important;gap:4px !important;}
  .cab-dashboard-mobile-nav .crm-mobile-link{font-size:10px !important;padding:8px 4px !important;}
}

/* Trash mobile cards: keep the select trigger in its own row and prevent overlap with the application number. */
.crm-mobile-record.trash-mobile-record{
  display:block !important;
  overflow:visible !important;
}
.crm-mobile-record.trash-mobile-record .trash-mobile-check,
.crm-mobile-record.trash-mobile-record .mobile-check{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 0 12px 0 !important;
  padding:6px 10px !important;
  line-height:1 !important;
  clear:both !important;
  position:relative !important;
  z-index:1 !important;
  cursor:pointer !important;
}
.crm-mobile-record.trash-mobile-record .crm-mobile-record-title{
  display:block !important;
  clear:both !important;
  margin:0 0 10px 0 !important;
  padding:0 !important;
  line-height:1.18 !important;
  position:relative !important;
  z-index:0 !important;
}
.crm-mobile-record.trash-mobile-record .crm-mobile-record-meta{
  margin-top:0 !important;
}

/* D14A13 patch: restore unified red mobile bottom navigation.
   Root cause: d14a12 added a dark active state for /cabinet bottom nav while
   crm_shell pages kept the original red-soft active state. This final override
   keeps the modern icons but restores one red translucent active style everywhere. */
@media (max-width:860px){
  .crm-mobile-nav,
  .cab-dashboard-mobile-nav,
  .cab-mobile-nav{
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(255,255,255,.78) !important;
    box-shadow:0 18px 40px rgba(15,23,42,.14) !important;
    backdrop-filter:blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  }

  .crm-mobile-nav .crm-mobile-link,
  .cab-dashboard-mobile-nav .crm-mobile-link,
  .cab-mobile-nav .cab-mobile-link{
    background:transparent !important;
    border:1px solid transparent !important;
    color:#0f172a !important;
    box-shadow:none !important;
  }

  .crm-mobile-nav .crm-mobile-link.active,
  .cab-dashboard-mobile-nav .crm-mobile-link.active,
  .cab-mobile-nav .cab-mobile-link.active{
    color:#b91c1c !important;
    background:linear-gradient(180deg,rgba(255,241,242,.92),rgba(255,228,230,.76)) !important;
    border:1px solid rgba(225,29,47,.16) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.62),0 8px 18px rgba(225,29,47,.06) !important;
    text-shadow:none !important;
  }

  .crm-mobile-nav .crm-mobile-link.active .crm-nav-icon,
  .cab-dashboard-mobile-nav .crm-mobile-link.active .crm-nav-icon,
  .cab-mobile-nav .cab-mobile-link.active .cab-nav-icon,
  .cab-mobile-nav .cab-mobile-link.active span:first-child{
    color:#dc2626 !important;
  }

  .crm-mobile-nav .crm-mobile-link.active::before,
  .crm-mobile-nav .crm-mobile-link.active::after,
  .cab-dashboard-mobile-nav .crm-mobile-link.active::before,
  .cab-dashboard-mobile-nav .crm-mobile-link.active::after,
  .cab-mobile-nav .cab-mobile-link.active::before,
  .cab-mobile-nav .cab-mobile-link.active::after{
    display:none !important;
    content:none !important;
  }
}


/* D14A14 patch: one mobile bottom nav scale and exact active item.
   Fixes visual jump between /cabinet and crm_shell pages and prevents two active items
   such as Dashboard + Applications on /admin/applications. */
@media (max-width:860px){
  .crm-mobile-nav,
  .cab-dashboard-mobile-nav{
    display:flex !important;
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    z-index:1800 !important;
    gap:6px !important;
    justify-content:flex-start !important;
    align-items:stretch !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    border-radius:24px !important;
    padding:9px !important;
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(255,255,255,.78) !important;
    box-shadow:0 18px 40px rgba(15,23,42,.14) !important;
    backdrop-filter:blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  }
  .crm-mobile-nav::-webkit-scrollbar,
  .cab-dashboard-mobile-nav::-webkit-scrollbar{display:none !important;}

  .crm-mobile-nav .crm-mobile-link,
  .cab-dashboard-mobile-nav .crm-mobile-link{
    flex:0 0 calc((100% - 24px)/5) !important;
    min-width:64px !important;
    max-width:calc((100% - 24px)/5) !important;
    min-height:58px !important;
    display:grid !important;
    justify-items:center !important;
    align-items:center !important;
    align-content:center !important;
    gap:4px !important;
    padding:8px 5px !important;
    border-radius:16px !important;
    border:1px solid transparent !important;
    background:transparent !important;
    color:#0f172a !important;
    box-shadow:none !important;
    text-decoration:none !important;
    font-size:11px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
  }
  .crm-mobile-nav .crm-mobile-link span:last-child,
  .cab-dashboard-mobile-nav .crm-mobile-link span:last-child{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .crm-mobile-nav .crm-nav-icon,
  .cab-dashboard-mobile-nav .crm-nav-icon{
    width:22px !important;
    height:22px !important;
    flex:0 0 22px !important;
    color:#64748b !important;
  }
  .crm-mobile-nav .crm-nav-icon::before,
  .cab-dashboard-mobile-nav .crm-nav-icon::before{
    width:19px !important;
    height:19px !important;
    mask-size:19px 19px !important;
    -webkit-mask-size:19px 19px !important;
  }
  .crm-mobile-nav .crm-mobile-link.active,
  .cab-dashboard-mobile-nav .crm-mobile-link.active{
    color:#b91c1c !important;
    background:linear-gradient(180deg,rgba(255,241,242,.92),rgba(255,228,230,.76)) !important;
    border:1px solid rgba(225,29,47,.16) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.62),0 8px 18px rgba(225,29,47,.06) !important;
    text-shadow:none !important;
  }
  .crm-mobile-nav .crm-mobile-link.active .crm-nav-icon,
  .cab-dashboard-mobile-nav .crm-mobile-link.active .crm-nav-icon{
    color:#dc2626 !important;
  }
  .crm-mobile-nav .crm-mobile-link.active::before,
  .crm-mobile-nav .crm-mobile-link.active::after,
  .cab-dashboard-mobile-nav .crm-mobile-link.active::before,
  .cab-dashboard-mobile-nav .crm-mobile-link.active::after{
    display:none !important;
    content:none !important;
  }
}
@media (max-width:380px){
  .crm-mobile-nav,
  .cab-dashboard-mobile-nav{left:8px !important;right:8px !important;padding:7px !important;gap:4px !important;}
  .crm-mobile-nav .crm-mobile-link,
  .cab-dashboard-mobile-nav .crm-mobile-link{
    flex-basis:calc((100% - 16px)/5) !important;
    max-width:calc((100% - 16px)/5) !important;
    min-width:58px !important;
    font-size:10px !important;
    min-height:56px !important;
    padding:7px 4px !important;
  }
}


/* D14A16 patch: forced documents modal alignment and comment field polish. */
#forcedDocsModal .modal-panel-docs{
  width:min(760px,100%) !important;
}
#forcedDocsModal .forced-docs-grid{
  gap:14px !important;
}
#forcedDocsModal .forced-docs-list{
  gap:10px !important;
}
#forcedDocsModal .forced-docs-option{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:44px !important;
  padding:10px 14px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(203,213,225,.72) !important;
  box-shadow:none !important;
  line-height:1.2 !important;
}
#forcedDocsModal .forced-docs-option input[type="checkbox"]{
  flex:0 0 16px !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  min-height:16px !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  align-self:center !important;
}
#forcedDocsModal .forced-docs-option span{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  color:#0f172a !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  letter-spacing:-.015em !important;
}
#forcedDocsModal .forced-docs-custom-row{
  align-items:center !important;
}
#forcedDocsModal .forced-docs-comment-field{
  display:grid !important;
  gap:8px !important;
  margin-top:2px !important;
}
#forcedDocsModal .forced-docs-comment-label{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:850 !important;
  line-height:1.25 !important;
  letter-spacing:-.01em !important;
}
#forcedDocsModal #forcedRequestComment,
#forcedDocsModal .forced-docs-comment-input{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  min-height:96px !important;
  padding:13px 15px !important;
  resize:vertical !important;
  border-radius:16px !important;
  border:1px solid rgba(203,213,225,.92) !important;
  background:#fff !important;
  color:#0f172a !important;
  box-shadow:none !important;
  font-size:14px !important;
  line-height:1.45 !important;
  text-align:left !important;
  vertical-align:top !important;
}
#forcedDocsModal #forcedRequestComment::placeholder{
  color:#94a3b8 !important;
  opacity:1 !important;
}
#forcedDocsModal #forcedRequestComment:focus,
#forcedDocsModal .forced-docs-comment-input:focus{
  outline:none !important;
  border-color:rgba(37,99,235,.42) !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10) !important;
}
@media (max-width:860px){
  #forcedDocsModal .forced-docs-option{
    min-height:50px !important;
    padding:12px 14px !important;
    gap:12px !important;
  }
  #forcedDocsModal .forced-docs-option input[type="checkbox"]{
    flex-basis:18px !important;
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    min-height:18px !important;
  }
  #forcedDocsModal .forced-docs-option span{
    font-size:15px !important;
    line-height:1.25 !important;
  }
  #forcedDocsModal .forced-docs-comment-field{
    gap:7px !important;
  }
  #forcedDocsModal #forcedRequestComment,
  #forcedDocsModal .forced-docs-comment-input{
    min-height:104px !important;
    padding:13px 14px !important;
  }
}


/* D14A17 patch: remove white underlay/halo behind file inputs in payment modals. */
#dutyPaymentModal .payment-request-grid,
#servicePaymentCalculationModal .payment-request-grid{
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
#dutyPaymentModal .payment-request-grid .field-stack,
#servicePaymentCalculationModal .payment-request-grid .field-stack{
  display:grid !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
#dutyPaymentModal .payment-request-grid .field-stack::before,
#dutyPaymentModal .payment-request-grid .field-stack::after,
#servicePaymentCalculationModal .payment-request-grid .field-stack::before,
#servicePaymentCalculationModal .payment-request-grid .field-stack::after{
  display:none !important;
  content:none !important;
}
#dutyPaymentModal .payment-request-grid .field-stack label,
#servicePaymentCalculationModal .payment-request-grid .field-stack label{
  margin:0 !important;
  padding:0 !important;
  color:#0f172a !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  letter-spacing:-.01em !important;
}
#dutyPaymentModal .payment-request-grid input[type="file"],
#servicePaymentCalculationModal .payment-request-grid input[type="file"]{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:40px !important;
  min-height:40px !important;
  padding:6px 10px !important;
  border:1px solid rgba(203,213,225,.95) !important;
  border-radius:13px !important;
  background:#fff !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
  color:#0f172a !important;
  font-size:12.5px !important;
  line-height:26px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#dutyPaymentModal .payment-request-grid input[type="file"]:focus,
#servicePaymentCalculationModal .payment-request-grid input[type="file"]:focus{
  outline:none !important;
  border-color:rgba(37,99,235,.42) !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10) !important;
}
#dutyPaymentModal .payment-request-grid input[type="file"]::file-selector-button,
#servicePaymentCalculationModal .payment-request-grid input[type="file"]::file-selector-button,
#dutyPaymentModal .payment-request-grid input[type="file"]::-webkit-file-upload-button,
#servicePaymentCalculationModal .payment-request-grid input[type="file"]::-webkit-file-upload-button{
  height:26px !important;
  padding:0 10px !important;
  margin:0 8px 0 0 !important;
  border:0 !important;
  border-radius:9px !important;
  background:#111827 !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:none !important;
  filter:none !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:26px !important;
  text-shadow:none !important;
  cursor:pointer !important;
}
#dutyPaymentModal .payment-request-grid input[type="file"]:hover,
#servicePaymentCalculationModal .payment-request-grid input[type="file"]:hover{
  background:#fff !important;
  box-shadow:none !important;
}


/* D14A18 patch: application card header actions and timeline date polish. */
.crm-actions a[href*="dutyPaymentModal"]{
  background:linear-gradient(135deg,#fed7aa 0%,#fb923c 56%,#ea580c 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 9px 18px rgba(234,88,12,.15) !important;
  text-shadow:0 1px 0 rgba(124,45,18,.16) !important;
  filter:none !important;
}
.crm-actions a[href*="dutyPaymentModal"]:hover{
  background:linear-gradient(135deg,#ffedd5 0%,#fb923c 52%,#c2410c 100%) !important;
  box-shadow:0 10px 22px rgba(234,88,12,.18) !important;
}
.crm-actions a[href*="servicePaymentCalculationModal"]{
  background:linear-gradient(135deg,#ead7bd 0%,#c08a54 56%,#8b5e34 100%) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 9px 18px rgba(139,94,52,.14) !important;
  text-shadow:0 1px 0 rgba(83,52,28,.16) !important;
  filter:none !important;
}
.crm-actions a[href*="servicePaymentCalculationModal"]:hover{
  background:linear-gradient(135deg,#f3e5d0 0%,#bd7f45 54%,#70451f 100%) !important;
  box-shadow:0 10px 22px rgba(139,94,52,.17) !important;
}
.crm-actions a[href*="dutyPaymentModal"]::before,
.crm-actions a[href*="dutyPaymentModal"]::after,
.crm-actions a[href*="servicePaymentCalculationModal"]::before,
.crm-actions a[href*="servicePaymentCalculationModal"]::after{
  display:none !important;
  content:none !important;
}

/* D14A20 patch: remove left edge artifact from all gradient action buttons.
   Cause: gradient buttons kept a real semi-transparent border / decorative layer.
   On some Chromium renders it appears as a thin vertical line on the left edge.
   Fix: no physical border, clip gradient cleanly to the rounded shape, use inset shadow only. */
.crm-actions a[href*="dutyPaymentModal"],
.crm-actions a[href*="servicePaymentCalculationModal"],
.crm-btn-green,
a.crm-btn-green,
button.crm-btn-green,
.bulk-btn.green,
.btn.activate,
.btn.on,
.btn.deactivate,
.btn.delete,
.btn.off,
.btn.del,
.admin-mobile-actions .btn.activate,
.admin-mobile-actions .btn.on,
.admin-mobile-actions .btn.deactivate,
.admin-mobile-actions .btn.delete,
.admin-users-mobile-actions .btn.on,
.admin-users-mobile-actions .btn.off,
.admin-users-mobile-actions .btn.del,
.btn-primary,
.crm-btn-red,
.auth-btn,
.quick-submit-btn,
.cab-btn.red.quick-submit-btn,
.request-docs-actions .primary,
.request-docs-btn,
.request-tpo-btn,
button.btn-primary{
  position:relative !important;
  overflow:hidden !important;
  border:0 !important;
  outline:0 !important;
  background-origin:border-box !important;
  background-clip:border-box !important;
  -webkit-background-clip:border-box !important;
  isolation:isolate !important;
  filter:none !important;
  -webkit-mask-image:-webkit-radial-gradient(#fff,#000) !important;
}
.crm-actions a[href*="dutyPaymentModal"]::before,
.crm-actions a[href*="dutyPaymentModal"]::after,
.crm-actions a[href*="servicePaymentCalculationModal"]::before,
.crm-actions a[href*="servicePaymentCalculationModal"]::after,
.crm-btn-green::before,
.crm-btn-green::after,
.bulk-btn.green::before,
.bulk-btn.green::after,
.btn.activate::before,
.btn.activate::after,
.btn.on::before,
.btn.on::after,
.btn.deactivate::before,
.btn.deactivate::after,
.btn.delete::before,
.btn.delete::after,
.btn.off::before,
.btn.off::after,
.btn.del::before,
.btn.del::after,
.btn-primary::before,
.btn-primary::after,
.crm-btn-red::before,
.crm-btn-red::after,
.auth-btn::before,
.auth-btn::after,
.quick-submit-btn::before,
.quick-submit-btn::after,
.request-docs-actions .primary::before,
.request-docs-actions .primary::after,
.request-docs-btn::before,
.request-docs-btn::after,
.request-tpo-btn::before,
.request-tpo-btn::after{
  display:none !important;
  content:none !important;
}

/* Keep each color family shadowed without a real border. */
.crm-actions a[href*="dutyPaymentModal"]{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 9px 18px rgba(234,88,12,.15) !important;
}
.crm-actions a[href*="dutyPaymentModal"]:hover{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 10px 22px rgba(234,88,12,.18) !important;
}
.crm-actions a[href*="servicePaymentCalculationModal"]{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 9px 18px rgba(139,94,52,.14) !important;
}
.crm-actions a[href*="servicePaymentCalculationModal"]:hover{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 10px 22px rgba(139,94,52,.17) !important;
}
.crm-btn-green,
a.crm-btn-green,
button.crm-btn-green,
.bulk-btn.green,
.btn.activate,
.btn.on,
.admin-mobile-actions .btn.activate,
.admin-mobile-actions .btn.on,
.admin-users-mobile-actions .btn.on{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),var(--gb-success-shadow) !important;
}
.crm-btn-green:hover,
a.crm-btn-green:hover,
button.crm-btn-green:hover,
.bulk-btn.green:hover,
.btn.activate:hover,
.btn.on:hover,
.admin-mobile-actions .btn.activate:hover,
.admin-mobile-actions .btn.on:hover,
.admin-users-mobile-actions .btn.on:hover{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 10px 22px rgba(22,163,74,.20) !important;
}
.btn.deactivate,
.btn.delete,
.btn.off,
.btn.del,
.admin-mobile-actions .btn.deactivate,
.admin-mobile-actions .btn.delete,
.admin-users-mobile-actions .btn.off,
.admin-users-mobile-actions .btn.del,
button.btn.deactivate,
button.btn.delete,
button.btn.off,
button.btn.del,
.btn-primary,
.crm-btn-red,
.auth-btn,
.quick-submit-btn,
.cab-btn.red.quick-submit-btn,
.request-docs-actions .primary,
.request-docs-btn,
.request-tpo-btn,
button.btn-primary{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),var(--gb-red-button-shadow) !important;
}
.btn.deactivate:hover,
.btn.delete:hover,
.btn.off:hover,
.btn.del:hover,
.admin-mobile-actions .btn.deactivate:hover,
.admin-mobile-actions .btn.delete:hover,
.admin-users-mobile-actions .btn.off:hover,
.admin-users-mobile-actions .btn.del:hover,
button.btn.deactivate:hover,
button.btn.delete:hover,
button.btn.off:hover,
button.btn.del:hover,
.btn-primary:hover,
.crm-btn-red:hover,
.auth-btn:hover,
.quick-submit-btn:hover,
.cab-btn.red.quick-submit-btn:hover,
.request-docs-actions .primary:hover,
.request-docs-btn:hover,
.request-tpo-btn:hover,
button.btn-primary:hover{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 10px 22px rgba(225,29,47,.18) !important;
}

/* D14A21 patch: mobile client prepare button polish in application card. */
.gb-icon-mail::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2Zm.8 2 7.2 5.1L19.2 7H4.8ZM4 8.9V17h16V8.9l-8 5.7-8-5.7Z'/%3E%3C/svg%3E") !important;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2Zm.8 2 7.2 5.1L19.2 7H4.8ZM4 8.9V17h16V8.9l-8 5.7-8-5.7Z'/%3E%3C/svg%3E") !important;
}
.client-link-panel .client-prepare-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  white-space:nowrap !important;
  text-align:center !important;
}
.client-link-panel .client-prepare-btn .client-prepare-icon{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  color:currentColor !important;
}
.client-link-panel .client-prepare-btn .client-prepare-icon::before{
  width:18px !important;
  height:18px !important;
  mask-size:18px 18px !important;
  -webkit-mask-size:18px 18px !important;
}
@media (max-width:860px){
  .client-link-panel form[action*="/send-client"]{
    width:100% !important;
    margin:0 !important;
  }
  .client-link-panel .client-prepare-btn{
    width:100% !important;
    min-height:58px !important;
    padding:0 18px !important;
    border-radius:18px !important;
    gap:12px !important;
    font-size:16px !important;
    font-weight:950 !important;
    line-height:1.15 !important;
    letter-spacing:-.015em !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 12px 24px rgba(225,29,47,.20) !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon{
    width:24px !important;
    height:24px !important;
    flex-basis:24px !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon::before{
    width:22px !important;
    height:22px !important;
    mask-size:22px 22px !important;
    -webkit-mask-size:22px 22px !important;
  }
}

/* D14A22 patch: mobile client prepare button height rollback.
   Keep the improved full-width mobile button and SVG mail icon from d14a21,
   but return the vertical size to the previous compact action-button scale. */
@media (max-width:860px){
  .client-link-panel .client-prepare-btn{
    width:100% !important;
    min-height:46px !important;
    height:46px !important;
    padding:0 14px !important;
    border-radius:16px !important;
    gap:10px !important;
    font-size:15px !important;
    font-weight:950 !important;
    line-height:1.08 !important;
    letter-spacing:-.012em !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 8px 18px rgba(225,29,47,.16) !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon{
    width:20px !important;
    height:20px !important;
    flex:0 0 20px !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon::before{
    width:18px !important;
    height:18px !important;
    mask-size:18px 18px !important;
    -webkit-mask-size:18px 18px !important;
  }
}

/* D14A23 patch: mobile client prepare button font scale fix.
   Keeps d14a22 compact height, but returns typography to the same scale as neighboring action buttons. */
@media (max-width:860px){
  .client-link-panel .client-prepare-btn{
    font-size:13px !important;
    font-weight:900 !important;
    letter-spacing:-.01em !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon{
    width:18px !important;
    height:18px !important;
    flex:0 0 18px !important;
  }
  .client-link-panel .client-prepare-btn .client-prepare-icon::before{
    width:16px !important;
    height:16px !important;
    mask-size:16px 16px !important;
    -webkit-mask-size:16px 16px !important;
  }
}


/* D15A mailings module: icon and compact mail controls. */
.gb-icon-mailings::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6.5A2.5 2.5 0 0 1 5.5 4h13A2.5 2.5 0 0 1 21 6.5v11a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 3 17.5v-11Zm2.5-.5a.5.5 0 0 0-.5.5v.7l7 4.7 7-4.7v-.7a.5.5 0 0 0-.5-.5h-13ZM19 9.6l-6.4 4.3a1 1 0 0 1-1.2 0L5 9.6v7.9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5V9.6Z'/%3E%3C/svg%3E") !important;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6.5A2.5 2.5 0 0 1 5.5 4h13A2.5 2.5 0 0 1 21 6.5v11a2.5 2.5 0 0 1-2.5 2.5h-13A2.5 2.5 0 0 1 3 17.5v-11Zm2.5-.5a.5.5 0 0 0-.5.5v.7l7 4.7 7-4.7v-.7a.5.5 0 0 0-.5-.5h-13ZM19 9.6l-6.4 4.3a1 1 0 0 1-1.2 0L5 9.6v7.9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5V9.6Z'/%3E%3C/svg%3E") !important;
}
@media (max-width:860px){
  .mailings-tabs{gap:7px !important}
  .mailings-tab{min-height:40px !important}
  .mailings-preview{border-radius:20px !important}
}

/* D15C1 patch: prevent CRM sidebar brand card from being vertically compressed.
   Root cause: .crm-sidebar is a fixed-height flex column; on pages with longer help text
   the flex algorithm can shrink the .crm-brand item, and its overflow:hidden clips the
   GenBroker CRM title/subtitle. Keep brand/nav at content height and let the help block
   absorb overflow instead. */
.crm-sidebar{
  overflow-x:hidden !important;
  overflow-y:auto !important;
  align-content:start !important;
}
.crm-sidebar .crm-brand,
.crm-sidebar .crm-nav{
  flex:0 0 auto !important;
}
.crm-sidebar .crm-brand{
  height:auto !important;
  min-height:max-content !important;
}
.crm-sidebar .crm-brand h1,
.crm-sidebar .crm-brand p{
  min-width:0 !important;
}
.crm-sidebar .crm-help{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}
@media (max-width:1180px){
  .crm-sidebar{
    overflow:visible !important;
  }
  .crm-sidebar .crm-help{
    overflow:visible !important;
  }
}

/* D15C2 patch: keep sidebar brand stable without stretching the help card.
   D15C1 correctly stopped the GenBroker CRM brand from shrinking, but made
   .crm-help flex-grow and fill the rest of the sticky sidebar. That created a
   visible background plate behind the lower sidebar/menu area. Keep brand/nav
   fixed, let help shrink/scroll only when needed, and do not let it grow. */
.crm-sidebar{
  overflow-x:visible !important;
  overflow-y:visible !important;
}
.crm-sidebar .crm-brand,
.crm-sidebar .crm-nav{
  flex:0 0 auto !important;
}
.crm-sidebar .crm-brand{
  height:auto !important;
  min-height:max-content !important;
}
.crm-sidebar .crm-help{
  flex:0 1 auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  align-self:stretch !important;
}
@media (max-width:1180px){
  .crm-sidebar,
  .crm-sidebar .crm-help{
    overflow:visible !important;
    max-height:none !important;
  }
}

/* D15D1 patch: Telegram bot module icon. Structure-safe visual addition only. */
.gb-icon-telegram::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.8 4.2 18.7 19c-.2 1-.9 1.2-1.8.8l-5-3.7-2.4 2.3c-.3.3-.5.5-1 .5l.4-5.2L18.3 6c.4-.4-.1-.6-.6-.2L6 13.1 1 11.5c-1-.3-1-1 .2-1.5L20.7 2.5c.9-.3 1.7.2 1.1 1.7Z'/%3E%3C/svg%3E") !important;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.8 4.2 18.7 19c-.2 1-.9 1.2-1.8.8l-5-3.7-2.4 2.3c-.3.3-.5.5-1 .5l.4-5.2L18.3 6c.4-.4-.1-.6-.6-.2L6 13.1 1 11.5c-1-.3-1-1 .2-1.5L20.7 2.5c.9-.3 1.7.2 1.1 1.7Z'/%3E%3C/svg%3E") !important;
}

/* D15D31 patch: make only login left heading white.
   Scope: login/auth page dark left card only. */
body.auth-layout-body .auth-aside h1,
.auth-page .auth-aside h1{
  color:#ffffff !important;
}
