:root{
  --bg:#f5f5f5;
  --panel:#ffffff;
  --panel-2:#ffffff;
  --text:#333333;
  --muted:#6b7280;
  --line:#c0c0c0;
  --shadow:0 18px 45px rgba(18,117,62,.12);
  --shadow-soft:0 10px 28px rgba(18,117,62,.10);
  --shadow-inset:inset 0 0 0 1px rgba(18,117,62,.10);
  --primary-blue:#2a3c8f;
  --green-900:#0b4a28;
  --green-800:#0e5e30;
  --green-700:#12753e;
  --green-600:#1f8a4f;
  --green-500:#2fa763;
  --green-400:#5fb786;
  --green-300:#96d0b0;
  --green-200:#cde9db;
  --green-100:#edf7f1;
  --cta-green-start:#0f5b34;
  --cta-green-mid:#146b3d;
  --cta-green-end:#0b4729;
  --cta-green-border:rgba(6,39,23,.62);
  --cta-green-shadow:rgba(8,54,31,.40);
  --cta-green-focus:rgba(24,116,70,.28);
  --sidebar:#152052;
  --sidebar-2:#2a3c8f;
}

*{ box-sizing:border-box; }
html,
body{
  height:100%;
  margin:0;
  padding:0;
}
body{
  margin:0;
  font-family: Segoe UI, Tahoma, Geneva, Verdana, sans-serif;
  line-height:1.45;
  color:var(--text);
  background:
    radial-gradient(1200px 520px at 0% -10%, rgba(31,138,79,.08), transparent 60%),
    radial-gradient(900px 460px at 100% -20%, rgba(42,60,143,.08), transparent 58%),
    var(--bg);
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.lps-dashboard-actions{
  display:flex;
  align-items:center;
  gap:12px;
}

.lps-btn-secondary{
  background: #f3f5f3;
  color: var(--text);
  border: 1px solid rgba(23,49,38,.14);
  box-shadow: var(--shadow-inset);
}

html,
body,
.lps-shell,
.lps-topbar,
.lps-content{
  max-width:100%;
}

body.lps-has-sidebar-open{ overflow:hidden; }
a{ color:inherit; text-decoration:none; }
button{ font:inherit; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible{
  outline:2px solid rgba(31,138,79,.45);
  outline-offset:2px;
}

/* Login */
.lps-login{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lps-login-bg{
  position:fixed;
  inset:0;
  background-size:cover;
  background-position:center;
  filter:saturate(.95) contrast(1.02);
  transform:scale(1.02);
}
.lps-login-scrim{
  position:fixed;
  inset:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.35), rgba(0,0,0,.25)),
    radial-gradient(1200px 700px at 65% 50%, rgba(0,0,0,.08), rgba(0,0,0,.55));
}
.lps-login-wrap{
  position:relative;
  width:min(980px, calc(100% - 32px));
  min-height: calc(100vh - 32px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.lps-login-card{
  width:min(520px, 100%);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(8px);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 22px 26px 20px;
  border: 1px solid rgba(255,255,255,.35);
}
.lps-login-brand{
  display:flex;
  align-items:center;
  gap: 14px;
  padding: 6px 4px 10px;
}
.lps-login-logo{
  width: 66px;
  height: 66px;
  object-fit:contain;
  border-radius: 999px;
  background:#fff;
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}
.lps-login-h1{
  font-weight: 800;
  letter-spacing:.2px;
  font-size: 22px;
  line-height:1.1;
}
.lps-login-sub{
  margin-top: 4px;
  font-size: 13px;
  color: #2d2d2d;
  opacity:.85;
  font-weight: 600;
}
.lps-login-divider{
  height: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--green-700), var(--green-500), var(--green-700));
  margin: 6px 0 18px;
}
.lps-form{ display:flex; flex-direction:column; gap: 12px; }
.lps-form .g-recaptcha{
  display:flex;
  justify-content:center;
}
.lps-field{
  position:relative;
  display:flex;
  align-items:center;
  background:#fff;
  border-radius: 6px;
  border: 1px solid rgba(0,0,0,.16);
  box-shadow: 0 1px 0 rgba(0,0,0,.03);
  overflow:hidden;
}
.lps-field input{
  width:100%;
  padding: 12px 44px 12px 44px;
  border:0;
  outline:none;
  font-size: 14px;
}
.lps-icon{
  position:absolute;
  left: 12px;
  width: 18px;
  height: 18px;
  color:#2f2f2f;
  opacity:.78;
}
.lps-icon svg{ width:18px; height:18px; display:block; }
.lps-eye{
  position:absolute;
  right: 10px;
  width: 30px;
  height: 30px;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:#2f2f2f;
  opacity:.7;
  cursor:pointer;
}
.lps-eye svg{ width:18px; height:18px; }
.lps-btn-primary{
  margin-top: 6px;
  width:100%;
  background: linear-gradient(135deg, var(--cta-green-start) 0%, var(--cta-green-mid) 58%, var(--cta-green-end) 100%);
  color:#f8fbff;
  border:1px solid var(--cta-green-border);
  padding: 12px 14px;
  font-weight: 800;
  letter-spacing:.8px;
  border-radius: 6px;
  box-shadow: 0 10px 18px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.22);
  cursor:pointer;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease, border-color .16s ease;
}
.lps-btn-primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(15,94,53,.40), inset 0 1px 0 rgba(255,255,255,.24);
  filter:brightness(1.03);
}
.lps-btn-primary:active{
  transform: translateY(0);
  box-shadow: 0 7px 14px rgba(15,94,53,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.lps-btn-primary:focus-visible{
  outline:none;
  border-color: rgba(8,51,29,.78);
  box-shadow: 0 0 0 3px var(--cta-green-focus), 0 10px 18px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.2);
}
.lps-login-foot{
  margin-top: 6px;
  text-align:center;
  font-size: 11px;
  color: #2d2d2d;
  opacity:.72;
}
.lps-error{
  margin-top: -6px;
  color:#b42318;
  font-size: 12px;
  font-weight: 600;
}
.lps-login-footer{
  position:fixed;
  right: 18px;
  bottom: 10px;
  display:flex;
  justify-content:flex-end;
  gap: 12px;
  color: rgba(255,255,255,.88);
  font-size: 11px;
  text-shadow: 0 1px 2px rgba(0,0,0,.4);
}
.lps-version{ opacity:.9; }

/* App shell */
.lps-app{
  margin:0;
  padding:0;
  background:#e9e9e9;
}
.lps-shell{
  --lps-header-height: 60px;
  --lps-sidebar-collapsed-width: 70px;
  --lps-sidebar-open-width: 300px;
  min-height:100vh;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns: 1fr;
  grid-template-rows: var(--lps-header-height) 1fr;
}
.lps-sidebar {
  grid-column: 1;
  grid-row: 2;
  background: linear-gradient(180deg, #4a4f55, #3d4248 65%, #2f3439);
  color: rgba(255,255,255,.92);
  box-shadow: 10px 0 30px rgba(0,0,0,.20);
  border-right: 1px solid rgba(255,255,255,.08);
  position:fixed;
  top: var(--lps-header-height);
  left:0;
  bottom:0;
  width: var(--lps-sidebar-collapsed-width);
  height: auto;
  transform: none;
  transition: width .2s ease, top .2s ease;
  z-index:45;
  overflow: auto;
  scrollbar-width: none; /* Firefox */
}

.lps-sidebar::-webkit-scrollbar { width: 0; height: 0; }



.lps-sidebar-top{
  height: 76px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding: 0 18px;
  border-bottom: 1px solid rgba(255,255,255,.18);
}
.lps-icon-btn{
  width: 38px;
  height: 38px;
  display:grid;
  place-items:center;
  border:0;
  background: transparent;
  border-radius: 999px;
  color:#fff;
  cursor:pointer;
}
.lps-sidebar-chevron svg{ width:20px; height:20px; display:block; }

.lps-sidebar-profile{
  padding: 16px 8px 12px;
  text-align:center;
  border-bottom: 0;
}
.lps-sidebar-profile-name{
  display:none;
  font-size:17px;
  font-weight:800;
  line-height:1.2;
}
.lps-shell.is-expanded .lps-sidebar-profile{
  margin-top: 4px;
  padding: 18px 18px 18px;
  border-top: 1px solid rgba(255,255,255,.14);
}
.lps-shell.is-expanded .lps-sidebar-profile-name{
  display:block;
}
.lps-sidebar-profile-sub,
.lps-sidebar-profile-meta,
.lps-sidebar-profile-role{
  display:none;
}
.lps-shell.is-expanded .lps-sidebar-profile-sub,
.lps-shell.is-expanded .lps-sidebar-profile-meta,
.lps-shell.is-expanded .lps-sidebar-profile-role{
  display:block;
}
.lps-sidebar-profile-sub{
  margin-top:6px;
  font-size:12px;
  line-height:1.3;
  color:rgba(255,255,255,.84);
}
.lps-sidebar-profile-meta{
  margin-top:4px;
  font-size:12px;
  font-weight:700;
}
.lps-sidebar-profile-role{
  margin-top:2px;
  font-size:12px;
  color:rgba(255,255,255,.84);
}

.lps-nav{
  padding: 12px 8px 18px;
  display:flex;
  flex-direction:column;
  gap: 8px;
  height: calc(100% - px - 200px);
  overflow:auto;
}
.lps-nav-section{
  margin: 10px 12px 8px;
  font-size:16px;
  font-weight:800;
  color:rgba(255,255,255,.88);
  display:none;
}
.lps-shell.is-expanded .lps-nav-section{ display:block; }
.lps-nav-item{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 16px;
  padding: 16px 0;
  border-radius: 16px;
  color: rgba(255,255,255,.92);
}
.lps-shell.is-expanded .lps-nav-item{
  justify-content:flex-start;
  padding: 16px 18px;
}
.lps-nav-item:hover{ background: rgba(255,255,255,.07); }
.lps-nav-item.is-active{
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(227,233,229,.92));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
  color:#0c0f0d;
}
.lps-nav-ico{
  width: 28px;
  height: 28px;
  display:grid;
  place-items:center;
  color: currentColor;
}
.lps-nav-ico svg{ width:28px; height:28px; }
.lps-nav-label{
  display:none;
  font-weight:700;
  font-size: 16px;
}
.lps-shell.is-expanded .lps-nav-label{ display:block; }
.lps-nav-group{ margin-top: 4px; }

.lps-nav-hover-tooltip{
  position: fixed;
  top: 0;
  left: 0;
  transform: translate(-8px, -50%);
  opacity: 0;
  padding: 8px 12px;
  border-radius: 10px;
  border: 1px solid rgba(47, 58, 71, .24);
  background: linear-gradient(180deg, #f9fbfc, #edf2f5);
  color: #26323b;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .2px;
  white-space: nowrap;
  box-shadow: 0 12px 24px rgba(0, 0, 0, .18);
  pointer-events: none;
  z-index: 90;
  transition: opacity .16s ease, transform .2s ease;
}

.lps-nav-hover-tooltip::before{
  content: '';
  position: absolute;
  left: -6px;
  top: 50%;
  width: 10px;
  height: 10px;
  transform: translateY(-50%) rotate(45deg);
  border-left: 1px solid rgba(47, 58, 71, .24);
  border-bottom: 1px solid rgba(47, 58, 71, .24);
  background: #f3f6f8;
}

.lps-nav-hover-tooltip.is-visible{
  opacity: 1;
  transform: translate(0, -50%);
}

@media (max-width: 720px){
  .lps-nav-hover-tooltip{ display:none !important; }
}

/* Topbar */
.lps-topbar{
  grid-column: 1;
  grid-row: 1;
  background: linear-gradient(180deg, #f5f7f5, #dfe6df);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 0 24px;
  width: 100%;
  margin-left: 0;
  transition: margin-left .2s ease, width .2s ease;
  position: relative;
  z-index:55;
  border-bottom: 1px solid rgba(27,54,36,.08);
  box-shadow: none;
}
.lps-topbar-brand{
  display:flex;
  align-items:center;
  gap: 14px;
  min-width:0;
  flex:1;
}
.lps-topbar-menu{
  width:34px;
  height:34px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--primary-blue);
  display:grid;
  place-items:center;
  cursor:pointer;
}
.lps-topbar-menu svg{ width:24px; height:24px; }
.lps-topbar-menu .lps-icon-back{ display:none; }
.lps-shell.is-expanded .lps-topbar-menu .lps-icon-burger{ display:none; }
.lps-shell.is-expanded .lps-topbar-menu .lps-icon-back{ display:block; }
.lps-topbar-logo{
  width:44px;
  height:44px;
  object-fit:contain;
}
.lps-topbar-title{
  font-size:19px;
  font-weight: 800;
  color:var(--green-700);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  min-width:0;
  max-width:100%;
}
.lps-topbar-actions{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
  flex-shrink:0;
}
.lps-topbar-search{
  width:52px;
  height:52px;
  border-radius:999px;
  border:1px solid rgba(20,58,36,.18);
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(232,239,233,.92));
  display:grid;
  place-items:center;
  color:#556b5d;
  cursor:pointer;
}
.lps-topbar-search svg{ width:26px; height:26px; }
.lps-topbar-search-shell{
  position:relative;
  display:flex;
  align-items:center;
}
.lps-topbar-search-shell.is-open .lps-topbar-search{
  border-color: rgba(18,117,62,.45);
  color:#1f8a4f;
}
.lps-search-modal{
  z-index:130;
  padding: clamp(12px, 4vw, 30px);
}
.lps-search-modal-backdrop{
  border:0;
  cursor:pointer;
}
.lps-search-modal-panel{
  position:relative;
  width:min(680px, 100%);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px 18px 16px;
  border:1px solid rgba(20,58,36,.2);
  border-radius:20px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(238,243,238,.96));
  box-shadow: var(--shadow);
  animation: lpsModalIn .18s ease-out;
}
.lps-search-modal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.lps-search-modal-head h2{
  margin:0;
  font-size:20px;
  font-weight:800;
  color:var(--green-700);
}
.lps-search-modal-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:8px;
  padding:6px 8px 6px 12px;
  border:1px solid rgba(20,58,36,.2);
  border-radius:999px;
  background:#fff;
}
.lps-topbar-search-panel-ico{
  width:18px;
  height:18px;
  color:#5d6f62;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.lps-topbar-search-panel-ico svg{
  width:18px;
  height:18px;
}
.lps-search-modal-row input{
  flex:1;
  min-width:0;
  border:0;
  outline:none;
  background:transparent;
  color:#2a3530;
  font-size:13px;
  font-weight:600;
}
.lps-search-modal-row input::placeholder{
  color:#7b877f;
}
.lps-topbar-search-go{
  border:1px solid rgba(18,117,62,.28);
  background:#1f8a4f;
  color:#fff;
  border-radius:999px;
  padding:4px 10px;
  min-height:28px;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  flex:0 0 auto;
}
.lps-topbar-search-close{
  width:28px;
  height:28px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#5b6872;
  font-size:24px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  flex:0 0 auto;
}
.lps-search-modal-close{
  width:32px;
  height:32px;
}
.lps-topbar-search-close:hover{
  background: rgba(91,104,114,.12);
}
.lps-topbar-divider{
  width:1px;
  height:54px;
  background:rgba(20,58,36,.24);
}
.lps-topbar-icon{
  width:30px;
  height:30px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--primary-blue);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lps-topbar-icon svg{ width:28px; height:28px; }
.lps-topbar-user-form{ margin:0; }
.lps-notifications{
  position:relative;
}
.lps-topbar-notification{
  position:relative;
}
.lps-notification-badge{
  position:absolute;
  top:-5px;
  right:-7px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#cc1f1f;
  color:#fff;
  font-size:11px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  box-shadow:0 2px 8px rgba(0,0,0,.22);
}
.lps-notifications-menu{
  position:absolute;
  top:calc(100% + 14px);
  right:-8px;
  width:min(380px, calc(100vw - 24px));
  background:#fff;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.16);
  border:1px solid rgba(0,0,0,.08);
  overflow:hidden;
  z-index:30;
}
.lps-notifications-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#f8faf9;
}
.lps-notifications-title{
  font-size:15px;
  font-weight:800;
  color:#23303b;
}
.lps-notifications-mark-all{
  border:1px solid rgba(0,0,0,.14);
  background:#fff;
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  font-weight:700;
  color:#214458;
  cursor:pointer;
}
.lps-notifications-mark-all:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.lps-notifications-list{
  max-height:360px;
  overflow:auto;
}
.lps-notifications-empty{
  padding:20px 16px;
  text-align:center;
  color:#6b7280;
  font-size:14px;
}
.lps-notification-item{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(0,0,0,.06);
  background:#fff;
  padding:12px 14px;
  display:flex;
  align-items:flex-start;
  gap:10px;
  text-align:left;
  cursor:pointer;
}
.lps-notification-item:last-child{
  border-bottom:0;
}
.lps-notification-item:hover{
  background:#f5f8f7;
}
.lps-notification-item.is-unread{
  background:#eef6f1;
}
.lps-notification-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#2f8a57;
  margin-top:6px;
  flex:0 0 auto;
  opacity:.25;
}
.lps-notification-item.is-unread .lps-notification-dot{
  opacity:1;
}
.lps-notification-body{
  min-width:0;
}
.lps-notification-item-title{
  font-size:13px;
  font-weight:800;
  color:#1f2937;
}
.lps-notification-item-message{
  margin-top:3px;
  font-size:13px;
  color:#374151;
  line-height:1.35;
}
.lps-notification-item-meta{
  margin-top:6px;
  font-size:12px;
  color:#6b7280;
}
.lps-profile{
  position:relative;
}
.lps-profile-menu{
  position:absolute;
  top:calc(100% + 14px);
  right:-4px;
  min-width:250px;
  background:#fff;
  border-radius:12px;
  box-shadow:0 10px 26px rgba(0,0,0,.14);
  border:1px solid rgba(0,0,0,.07);
  padding:10px;
  z-index:20;
}
.lps-profile-email{
  padding:2px 10px 10px;
  font-size:16px;
  font-weight:800;
  color:var(--primary-blue);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lps-profile-divider{
  height:1px;
  background:rgba(0,0,0,.10);
  margin:0 6px 8px;
}
.lps-profile-item{
  display:block;
  width:100%;
  border:1px solid transparent;
  background:transparent;
  text-align:left;
  padding:12px 14px;
  border-radius:8px;
  font-size:16px;
  font-weight:600;
  color:#2f3439;
  cursor:pointer;
  transition: background-color .12s ease, color .12s ease, border-color .12s ease;
}
.lps-profile-item:hover{
  background:#f4f6f8;
  color:#1f2f73;
  border-color:#e4e9ef;
  box-shadow:none;
}
.lps-profile-item:focus,
.lps-profile-item:focus-visible,
.lps-profile-item:active{
  background:#f4f6f8;
  color:#1f2f73;
  border-color:#dce3ec;
  outline:none;
  box-shadow:none;
}

/* Content & cards */
.lps-content{
  grid-column: 1;
  grid-row: 2;
  padding: 22px 18px 10px;
  margin-left: var(--lps-sidebar-collapsed-width);
  min-width:0;
  transition: margin-left .2s ease;
}
.lps-shell.is-expanded .lps-sidebar{
  top: 0;
  width: var(--lps-sidebar-open-width);
}
.lps-shell.is-expanded .lps-topbar{
  margin-left: var(--lps-sidebar-open-width);
  width: calc(100% - var(--lps-sidebar-open-width));
}
.lps-shell.is-expanded .lps-content{
  margin-left: var(--lps-sidebar-open-width);
}
.lps-dashboard-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin: 2px 8px 30px;
  flex-wrap:wrap;
}
.lps-dashboard-title{
  margin:0;
  font-size:48px;
  line-height:1.1;
  color:#18211b;
}
.lps-dashboard-office{
  margin-top:14px;
  font-size:22px;
  font-weight:800;
  color:#18211b;
}
.lps-dashboard-sub{
  margin-top:6px;
  font-size:18px;
  font-weight:800;
  color:#18211b;
}
.lps-btn{
  background:linear-gradient(135deg, var(--cta-green-start) 0%, var(--cta-green-mid) 58%, var(--cta-green-end) 100%);
  color:#f8fbff;
  border:1px solid var(--cta-green-border);
  padding: 12px 22px;
  border-radius: 14px;
  font-weight: 800;
  letter-spacing:.45px;
  box-shadow: 0 10px 22px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.22);
  cursor:pointer;
  display:flex;
  align-items:center;
  gap: 10px;
  white-space:nowrap;
  flex-shrink:0;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease, border-color .18s ease;
}
.lps-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(15,94,53,.42), inset 0 1px 0 rgba(255,255,255,.24);
  filter:brightness(1.04);
}
.lps-btn:active{
  transform: translateY(0);
  box-shadow: 0 7px 14px rgba(15,94,53,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.lps-btn:focus-visible{
  outline: none;
  border-color: rgba(8,51,29,.78);
  box-shadow: 0 0 0 3px var(--cta-green-focus), 0 12px 22px rgba(15,94,53,.34), inset 0 1px 0 rgba(255,255,255,.2);
}
.lps-btn-ico{
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display:grid;
  place-items:center;
  background: rgba(7,49,28,.26);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}
.lps-btn-ico svg{ width:16px; height:16px; }

.lps-flash{
  background: rgba(79,152,97,.14);
  border: 1px solid rgba(79,152,97,.28);
  color: var(--green-800);
  padding: 10px 12px;
  border-radius: 12px;
  font-weight: 800;
  margin-bottom: 14px;
}
.lps-cards{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px 22px;
  align-items:stretch;
  padding: 0 10px 12px 6px;
}
.lps-card-link{
  display:block;
  text-decoration:none;
  color:inherit;
}
.lps-card{
  background: linear-gradient(180deg, #d8d8da, #c5c5c8);
  border-radius: 18px;
  box-shadow: 0 8px 13px rgba(0,0,0,.18);
  border: 1px solid rgba(96,99,104,.24);
  padding: 18px 14px 10px 92px;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap: 0;
  min-height: 116px;
  position:relative;
  overflow:hidden;
}
.lps-card-link .lps-card{
  transition: transform .15s ease, box-shadow .15s ease;
}
.lps-card-link:hover .lps-card{
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(0,0,0,.24);
}
.lps-card::after{
  content:"";
  position:absolute;
  left:-28px;
  bottom:-32px;
  width: 82%;
  height: 48%;
  transform: skewX(34deg);
  background: linear-gradient(90deg, rgba(92,95,101,.30), rgba(188,193,200,.60));
  opacity:.65;
}
.lps-card-ico{
  width: 64px;
  height: 64px;
  border-radius: 20px;
  display:grid;
  place-items:center;
  color:#fff;
  box-shadow: 0 8px 14px rgba(0,0,0,.26);
  position:absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index:2;
}
.lps-card-ico svg{ width:26px; height:26px; }
.lps-card-body{ flex:1; position:relative; z-index:1; text-align:right; }
.lps-card-title{ font-weight: 800; color:#6e747c; font-size: 14px; line-height:1.25; }
.lps-card-num{ font-size: 46px; font-weight: 900; color:#374151; margin-top: 2px; line-height:1; }

.lps-card-green .lps-card-ico{ background:linear-gradient(180deg, #2ccf1f, #1f8f16); }
.lps-card-purple .lps-card-ico{ background:linear-gradient(180deg, #6a64c7, #5754b4); }
.lps-card-orange .lps-card-ico{ background:linear-gradient(180deg, #de8d13, #c57a0d); }
.lps-card-blue .lps-card-ico{ background:linear-gradient(125deg, #3c5aa6, #2a7fda 66%, #2ea87c); }
.lps-card-amber .lps-card-ico{ background:linear-gradient(125deg, #cb7e0f, #c9841b 62%, #57b56e); }
.lps-card-green2 .lps-card-ico{ background:linear-gradient(180deg, #30ba1f, #219019); }
.lps-card-sky .lps-card-ico{ background:linear-gradient(180deg, #1899ca, #1473a1); }
.lps-card-magenta .lps-card-ico{ background:linear-gradient(180deg, #b153c4, #8740a3); }
.lps-card-yellow .lps-card-ico{ background:linear-gradient(180deg, #d3a12b, #b6851c); }
.lps-card-salmon .lps-card-ico{ background:linear-gradient(180deg, #d26c5f, #b45549); }

.lps-footer{
  margin-top: 18px;
  padding: 10px 4px 6px;
  display:flex;
  justify-content:flex-end;
  color:#4d4d4d;
  font-size: 12px;
  opacity:.9;
}
.lps-footer-right{ opacity:.85; }

/* Documents page (table format) */
.lps-docs{
  background: transparent;
  border-radius: 0;
  border: 0;
  overflow: visible;
}
.lps-docs-header{
  display:flex;
  flex-direction:column;
  gap: 22px;
  padding: 18px 8px 10px;
}
.lps-docs-heading{
  width:100%;
}
.lps-docs-title{
  display:flex;
  align-items:center;
  gap: 14px;
  font-size: 24px;
  font-weight: 900;
  letter-spacing:.3px;
  color:#41574b;
}
.lps-docs-title-ico{
  width: 30px;
  height: 30px;
  display:grid;
  place-items:center;
  color:#171a17;
}
.lps-docs-title-ico svg{ width:28px; height:28px; }
.lps-docs-rule{
  margin-top:10px;
  height:1px;
  background:rgba(23,49,38,.22);
}
.lps-docs-actions{
  display:flex;
  align-items:center;
  gap: 12px;
  flex-wrap:wrap;
}
.lps-docs-actions .is-right{ margin-left:auto; }
.lps-pill{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 18px;
  border-radius: 999px;
  border: 1px solid rgba(69,80,89,.24);
  background: linear-gradient(180deg, #f7f9fb, #eceff3);
  font-weight: 900;
  letter-spacing:.4px;
  cursor:pointer;
  user-select:none;
  color:#2f3a42;
  min-height:40px;
  box-shadow: 0 4px 10px rgba(0,0,0,.10);
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease, background-color .16s ease, color .16s ease;
}
.lps-pill:disabled{ opacity:1; cursor:not-allowed; }
.lps-pill-muted{
  background: linear-gradient(180deg, #f4f6f8, #e9edf2);
  color:#25323c;
  border-color: rgba(87,100,112,.28);
}
.lps-docs-actions .lps-pill:disabled{
  opacity:.56;
  filter: grayscale(.32) saturate(.72);
  box-shadow:none;
  color:#6f7d87;
  border-color: rgba(112,126,138,.28);
  background: linear-gradient(180deg, #f5f7f9, #eceff2);
}
.lps-docs-actions .lps-pill:disabled .lps-pill-ico svg{
  opacity:.48;
}
.lps-pill-primary{
  background: linear-gradient(135deg, var(--cta-green-start) 0%, var(--cta-green-mid) 58%, var(--cta-green-end) 100%);
  color:#f8fbff;
  border-color: var(--cta-green-border);
  box-shadow: 0 8px 16px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.2);
}
.lps-pill-primary:not(:disabled):hover{
  box-shadow: 0 12px 20px rgba(15,94,53,.40), inset 0 1px 0 rgba(255,255,255,.24);
  filter:brightness(1.04);
}
.lps-pill-primary:not(:disabled):active{
  box-shadow: 0 7px 14px rgba(15,94,53,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.lps-pill-primary:focus-visible{
  outline:none;
  border-color: rgba(8,51,29,.78);
  box-shadow: 0 0 0 3px var(--cta-green-focus), 0 10px 18px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.2);
}
.lps-pill:not(:disabled):hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 20px rgba(0,0,0,.16);
  filter:brightness(1.03);
}
.lps-pill:not(:disabled):active{
  transform: translateY(0);
}
.lps-pill-ico svg{ width:18px; height:18px; opacity:.9; }

.lps-docs-toolbar{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 8px 8px 10px;
  flex-wrap:wrap;
}
.lps-tool-btn{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(87,100,112,.24);
  background: linear-gradient(180deg, #f8fafc, #edf1f5);
  font-weight: 900;
  color:#39444d;
  opacity:1;
  cursor:pointer;
  box-shadow: 0 4px 10px rgba(0,0,0,.08);
  transition: transform .16s ease, box-shadow .16s ease, color .16s ease, filter .16s ease;
}
.lps-tool-btn:disabled{ opacity:1; }
.lps-tool-btn:hover,
.lps-tool-btn.is-active{
  color: var(--green-800);
  transform: translateY(-2px);
  box-shadow: 0 10px 16px rgba(0,0,0,.14);
  filter:brightness(1.02);
}
.lps-tool-ico svg{ width:18px; height:18px; }
.lps-toolbar-spacer{ flex:1; }
.lps-search{
  position:relative;
  display:flex;
  align-items:center;
}
.lps-search input{
  width: 242px;
  max-width:100%;
  padding: 9px 0 9px 32px;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid rgba(23,49,38,.12);
  outline:none;
  background: transparent;
  color:#173126;
}
.lps-search-ico{
  position:absolute;
  left: 4px;
  width: 16px;
  height: 16px;
  opacity:.7;
}
.lps-search-ico svg{ width:16px; height:16px; }

.lps-table-wrap{
  background:var(--panel-2);
  border-radius:4px 4px 0 0;
  border:1px solid var(--line);
  overflow:auto;
  max-width:100%;
  max-height:360px;
  box-shadow: var(--shadow-soft);
  -webkit-overflow-scrolling: touch;
}
.lps-table{
  width:100%;
  min-width:1220px;
  border-collapse:separate;
  border-spacing:0;
  font-size: 13px;
}
.lps-table [data-col-views]{
  display:none;
}
.lps-table-wrap[data-table-view="core"] .lps-table [data-col-views*="core"]{
  display:table-cell;
}
.lps-table-wrap[data-table-view="routing"] .lps-table [data-col-views*="routing"]{
  display:table-cell;
}
.lps-table-wrap[data-table-view="timeline"] .lps-table [data-col-views*="timeline"]{
  display:table-cell;
}
.lps-table-wrap[data-table-view="core"] .lps-table{
  min-width: 2780px;
}
.lps-table-wrap[data-table-view="routing"] .lps-table{
  min-width: 2780px;
}
.lps-table-wrap[data-table-view="timeline"] .lps-table{
  min-width: 2780px;
}
.lps-table thead th{
  position:sticky;
  top:0;
  background: linear-gradient(180deg, var(--green-700), var(--green-800));
  color:#fff;
  padding: 14px 12px;
  text-align:left;
  font-weight: 900;
  border-bottom: 1px solid rgba(0,0,0,.08);
  white-space:nowrap;
}
.lps-table thead th:first-child{ border-top-left-radius:4px; }
.lps-table thead th:last-child{ border-top-right-radius:4px; }
.lps-table tbody td{
  padding: 14px 12px;
  border-bottom: 1px solid rgba(23,49,38,.10);
  color:#2a2a2a;
  white-space:nowrap;
}
.lps-col-title{
  max-width: 270px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lps-table tbody tr:hover td{ background: rgba(79,152,97,.05); }
.lps-table tbody tr.is-selected td{ background: rgba(47,106,68,.12); }

.lps-table-wrap.is-compact .lps-table thead th,
.lps-table-wrap.is-compact .lps-table tbody td{
  padding-top: 9px;
  padding-bottom: 9px;
}

.lps-table-wrap.hide-meta-cols .lps-col-lpsno,
.lps-table-wrap.hide-meta-cols .lps-col-complexity,
.lps-table-wrap.hide-meta-cols .lps-col-sign{
  display:none;
}
.lps-empty{
  text-align:center;
  padding: 120px 10px !important;
  color:#6a6a6a !important;
  font-weight: 400;
}
.lps-row-actions{
  display:flex;
  align-items:center;
  gap: 10px;
}
.lps-row-icon{
  width:28px;
  height:28px;
  padding:0;
  border:0;
  background:transparent;
  color:#4f5860;
  display:grid;
  place-items:center;
  text-decoration:none;
  cursor:pointer;
  border-radius:6px;
}
.lps-row-icon:hover{ background: rgba(47, 106, 68, .10); color:#2f6a44; }
.lps-row-icon svg{ width:22px; height:22px; }
.lps-col-check{ width: 46px; }
.lps-col-actions{ width: 104px; }
.lps-col-id{ width: 70px; }
.lps-col-lpsno{ width: 120px; }
.lps-col-type{ width: 190px; }
.lps-col-status{ width: 120px; }
.lps-col-complexity{ width: 120px; }
.lps-col-sign{ width: 190px; }
.lps-col-annotated-at{ width: 190px; }
.lps-col-classification{ width: 170px; }
.lps-col-destination{ width: 220px; }
.lps-col-source{ width: 210px; }
.lps-col-datetime{ width: 190px; }
.lps-col-last-transaction{ width: 250px; }
.lps-col-duration{ width: 120px; }
.lps-col-remarks{ width: 320px; }

.lps-status,
.lps-complexity{
  font-weight:700;
}
.lps-status-saved{ color:#1881e6; }
.lps-status-new,
.lps-status-incoming,
.lps-status-outgoing{ color:#173126; }
.lps-complexity-complex{ color:#b28c1d; }
.lps-complexity-moderate{ color:#5b6f18; }
.lps-complexity-highly-technical{ color:#34569e; }
.lps-complexity-simple{ color:#666; }
.lps-complexity-urgent{ color:#b3362a; }

.lps-graph-page{
  display:flex;
  flex-direction:column;
  gap: 14px;
}

.lps-graph-filters{
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap: 10px;
  padding: 0 8px;
}

.lps-graph-filter-field{
  display:flex;
  flex-direction:column;
  gap: 6px;
  min-width: 180px;
}

.lps-graph-filter-field span{
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
  color:#596571;
}

.lps-graph-filter-field input{
  min-height: 40px;
  border-radius: 10px;
  border: 1px solid rgba(23,49,38,.2);
  background: linear-gradient(180deg, #ffffff, #eef3ef);
  color:#23313a;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 700;
}

.lps-graph-filter-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap: 10px;
}

.lps-graph-filter-actions .lps-pill,
.lps-graph-filter-actions a.lps-pill{
  min-height: 40px;
}

.lps-graph-filter-meta{
  margin: -4px 8px 0;
  font-size: 12px;
  font-weight: 700;
  color:#4d5a67;
}

.lps-graph-summary-cards{
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0 8px;
  gap: 16px;
}

.lps-graph-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 18px;
  padding: 0 8px;
}

.lps-graph-grid-single{
  grid-template-columns: 1fr;
}

.lps-graph-card{
  background: var(--panel-2);
  border-radius: 12px;
  border: 1px solid rgba(23,49,38,.12);
  box-shadow: var(--shadow-soft);
  padding: 14px;
}

.lps-graph-card-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin: 0 0 10px;
}

.lps-graph-card h3{
  margin: 0;
  color:#2f3a45;
  font-size: 15px;
  font-weight: 900;
}

.lps-graph-filters-inline{
  padding: 0;
  gap: 8px;
}

.lps-graph-filters-inline .lps-graph-filter-field{
  min-width: 138px;
}

.lps-graph-filters-inline .lps-graph-filter-field span{
  font-size: 10px;
}

.lps-graph-filters-inline .lps-graph-filter-field input{
  min-height: 34px;
  padding: 6px 8px;
  font-size: 12px;
}

.lps-graph-filters-inline .lps-graph-filter-actions{
  gap: 8px;
}

.lps-graph-filters-inline .lps-graph-filter-actions .lps-pill,
.lps-graph-filters-inline .lps-graph-filter-actions a.lps-pill{
  min-height: 34px;
  padding: 7px 12px;
  font-size: 12px;
}

.lps-doc-type-chart{
  margin: 0 0 14px;
  padding: 10px 10px 6px;
  border-radius: 10px;
  border: 1px solid rgba(23,49,38,.1);
  background: linear-gradient(180deg, rgba(255,255,255,.75), rgba(236,243,239,.8));
  display:flex;
  width:max-content;
  min-width:100%;
  gap: 12px;
  align-items:end;
}

.lps-doc-type-chart-shell{
  margin: 0 0 14px;
  display:grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
}

.lps-doc-type-axis{
  list-style: none;
  margin: 0;
  padding: 0;
  height: 180px;
  display:grid;
  grid-template-rows: repeat(7, 1fr);
  color:#6b7783;
  font-size: 11px;
  font-weight: 800;
  text-align: right;
}

.lps-doc-type-axis li{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.lps-doc-type-chart-wrap{
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom: 2px;
  min-width: 0;
  touch-action: pan-y;
  cursor: grab;
}

.lps-doc-type-chart-wrap.is-dragging{
  cursor: grabbing;
  user-select:none;
}

.lps-doc-type-chart-scroll{
  min-width: 100%;
}

.lps-doc-type-bar{
  margin: 0;
  flex: 0 0 108px;
  min-width: 0;
  display:flex;
  flex-direction:column;
  gap: 6px;
}

.lps-chart-slider{
  display:grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  gap: 8px;
  align-items: stretch;
  min-width:0;
}

.lps-chart-slider-btn{
  display:grid;
  place-items:center;
  border: 1px solid rgba(23,49,38,.2);
  border-radius: 10px;
  background: linear-gradient(180deg, #fbfdfc, #e8f0ec);
  color:#365046;
  cursor:pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}

.lps-chart-slider-btn svg{
  width: 18px;
  height: 18px;
}

.lps-chart-slider-btn:hover:not(:disabled){
  border-color: rgba(23,49,38,.38);
  color:#1c2e26;
}

.lps-chart-slider-btn:disabled{
  opacity:.35;
  cursor:not-allowed;
}

.lps-doc-type-bar-wrap{
  height: 180px;
  padding: 0 8px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}

.lps-doc-type-bar-fill{
  display:block;
  width:100%;
  max-width: 46px;
  height: var(--bar-height, 0%);
  border-radius: 10px 10px 4px 4px;
  background: linear-gradient(180deg, #2a3c8f 0%, #1f8a4f 100%);
  box-shadow: 0 8px 14px rgba(31,138,79,.2);
}

.lps-doc-type-bar-meta{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 2px;
  text-align:center;
  color:#364451;
}

.lps-doc-type-bar-meta strong{
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
}

.lps-doc-type-bar-meta span{
  max-width:100%;
  font-size: 11px;
  font-weight: 700;
  color:#5c6873;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lps-duration-legend{
  display:flex;
  flex-wrap:wrap;
  gap: 12px;
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  color:#42505c;
}

.lps-duration-legend-item{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  border: 1px solid rgba(23,49,38,.18);
  border-radius: 999px;
  background: linear-gradient(180deg, #fbfdfc, #eef4f1);
  color: inherit;
  padding: 4px 10px;
  font: inherit;
  cursor: pointer;
  transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}

.lps-duration-legend-item:hover{
  border-color: rgba(23,49,38,.36);
}

.lps-duration-legend-item:focus-visible{
  outline: 2px solid rgba(31,138,79,.55);
  outline-offset: 2px;
}

.lps-duration-legend-item.is-inactive{
  opacity: .45;
}

.lps-duration-legend-item.is-active{
  opacity: 1;
}

.lps-duration-swatch{
  width: 12px;
  height: 12px;
  border-radius: 3px;
  border: 1px solid rgba(0,0,0,.15);
}

.lps-duration-swatch-orange,
.lps-duration-bar-orange{
  background:#f39a3d;
}

.lps-duration-swatch-green,
.lps-duration-bar-green{
  background:#37a64b;
}

.lps-duration-swatch-blue,
.lps-duration-bar-blue{
  background:#2d7fd3;
}

.lps-duration-swatch-purple,
.lps-duration-bar-purple{
  background:#9e5ac6;
}

.lps-duration-chart{
  min-width:max-content;
}

.lps-duration-group{
  flex-basis: 132px;
  gap: 8px;
}

.lps-duration-bar-wrap{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap: 6px;
  padding: 0 6px;
}

.lps-duration-bar{
  width: 18px;
  max-width: 22%;
  height: var(--bar-height, 0%);
  border-radius: 6px 6px 2px 2px;
  box-shadow: 0 6px 10px rgba(0,0,0,.16);
}

.lps-duration-bar.is-hidden{
  display: none;
}

.lps-bar-list{
  margin: 0;
  padding: 0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap: 10px;
}

.lps-bar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  color:#364451;
  font-size: 13px;
  margin-bottom: 4px;
}

.lps-bar-track{
  width:100%;
  height: 12px;
  border-radius: 999px;
  background:#e7ecef;
  overflow:hidden;
}

.lps-bar-fill{
  display:block;
  height:100%;
  width: var(--bar-width, 0%);
  border-radius: inherit;
  background: linear-gradient(90deg, #1f8a4f, #2a3c8f);
}

.lps-bar-list-files .lps-bar-fill{
  background: linear-gradient(90deg, #2a3c8f, #5b6f18);
}

.lps-empty-mini{
  margin:0;
  color:#6b7783;
  font-size: 13px;
}

.lps-table-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding: 12px 14px;
  background: rgba(130,148,136,.25);
  color:#2e2e2e;
  font-weight: 800;
  border:1px solid var(--line);
  border-top:0;
}

.lps-table-footer nav[aria-label="Pagination Navigation"]{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] > div:first-child{
  display:flex;
  align-items:center;
  gap:8px;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] > div:last-child{
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] > div:last-child > div:last-child{
  margin-left:auto;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] p{
  margin:0;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] a,
.lps-table-footer nav[aria-label="Pagination Navigation"] span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.lps-table-footer nav[aria-label="Pagination Navigation"] svg{
  width:16px;
  height:16px;
  display:block;
}

@media (min-width: 640px){
  .lps-table-footer nav[aria-label="Pagination Navigation"] > div:first-child{
    display:none;
  }

  .lps-table-footer nav[aria-label="Pagination Navigation"] > div:last-child{
    display:flex;
  }
}
.lps-foot-pill{
  display:inline-block;
  padding: 0 6px;
  background: transparent;
  border: 0;
  margin-left: 6px;
}
.lps-foot-caret svg{ width:14px; height:14px; vertical-align:middle; }
.lps-foot-right{
  display:flex;
  align-items:center;
  gap:16px;
  margin-left:auto;
}
.lps-pagination-icons{
  display:flex;
  align-items:center;
  gap:8px;
}
.lps-page-icon{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  color:#8d9791;
}
.lps-page-icon svg{ width:22px; height:22px; }
.lps-page-icon.is-disabled{
  pointer-events:none;
  opacity:.5;
}

.lps-user-filters{
  margin-bottom:16px;
  display:block;
  min-height:0;
  padding:0;
  justify-content:initial;
  align-items:initial;
}

.lps-user-filters-body{
  padding:16px;
  display:block !important;
  text-align:center;
}

.lps-user-search-form{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:center;
  width:min(980px, 100%);
  max-width:980px;
  margin:0 auto;
}

.lps-user-search-label{
  font-weight:600;
  text-align:center;
}

.lps-user-search-input{
  min-width:260px;
  max-width:420px;
  flex:1;
  padding:10px 12px;
  border:1px solid rgba(14,35,29,.22);
  border-radius:10px;
}

.lps-user-search-center{
  width:100%;
  max-width:980px;
  margin:0 auto;
}

.lps-user-filters .lps-user-search-center .lps-user-search-form{
  display:flex;
  justify-content:center;
  width:100%;
  max-width:980px;
  margin:0 auto;
}

.lps-user-role-select{
  padding:10px 12px;
  border:1px solid rgba(14,35,29,.22);
  border-radius:10px;
  background:#fff;
}

.lps-user-table-card{
  overflow:hidden;
  display:block;
  min-height:0;
  padding:0;
  justify-content:initial;
  align-items:initial;
}

.lps-reference-card{
  overflow:hidden;
  display:block;
  min-height:0;
  padding:0;
  justify-content:initial;
  align-items:initial;
}

.lps-user-filters::after,
.lps-user-table-card::after{
  content:none;
}

.lps-reference-card::after{
  content:none;
}

.lps-user-table-body{
  padding:0;
  text-align:left;
}

.lps-reference-card-body{
  padding:16px;
  text-align:left;
}

.lps-doc-types-page .lps-dashboard-header{
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(240,246,242,.9));
  border: 1px solid rgba(23,49,38,.12);
  border-radius: 16px;
  padding: 18px 20px;
  box-shadow: var(--shadow-soft);
}

.lps-doc-types-card .lps-card-title{
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #1f3b2f;
}

.lps-reference-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 12px 14px;
  margin: 12px 0 14px;
  border: 1px solid rgba(23,49,38,.12);
  border-radius: 12px;
  background: #f7faf8;
}

.lps-reference-toolbar-left{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap:wrap;
}

.lps-reference-toolbar-title{
  font-weight: 800;
  color: #1f2d3a;
}

.lps-reference-toolbar-meta{
  background: rgba(15,91,120,.12);
  color: #0f5b78;
  font-weight: 800;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.lps-reference-toolbar-actions{
  display:flex;
  align-items:center;
  gap: 10px;
}

.lps-doc-types-table .lps-col-check{
  width: 46px;
}

.lps-doc-types-table input[type="checkbox"]{
  width: 18px;
  height: 18px;
  accent-color: #0f5b78;
}

.lps-doc-types-table .lps-table tbody tr.is-selected td{
  background: rgba(15,91,120,.08);
}

.lps-pill-danger{
  background: linear-gradient(180deg, #d54b40, #bf3b32);
  border: 1px solid #b33831;
  color: #fff;
  box-shadow: 0 8px 14px rgba(191,59,50,.3);
}

.lps-pill-danger:not(:disabled):hover{
  filter: brightness(1.06);
  box-shadow: 0 10px 16px rgba(191,59,50,.36);
}

.lps-pill-danger:disabled{
  background: #e1e5ea;
  border-color: #d0d7df;
  color: #7b8794;
  box-shadow: none;
}

@media (max-width: 720px){
  .lps-reference-toolbar{
    flex-direction: column;
    align-items: stretch;
  }

  .lps-reference-toolbar-actions{
    justify-content: flex-start;
  }
}

.lps-reference-caps .lps-input,
.lps-reference-caps .lps-table th,
.lps-reference-caps .lps-table td,
.lps-reference-caps .lps-label,
.lps-reference-caps .lps-dashboard-sub{
  text-transform: uppercase;
}

.lps-user-actions-col{
  width:200px;
}

.lps-user-pagination{
  padding:16px 20px;
  border-top:1px solid rgba(14,35,29,.12);
  display:flex;
  justify-content:flex-end;
}

.lps-user-pagination nav svg{
  width:18px;
  height:18px;
  display:block;
}

nav[aria-label="Pagination Navigation"] svg{
  width:18px;
  height:18px;
  display:block;
}

svg.w-5{ width:20px; }
svg.h-5{ height:20px; }

.lps-user-pagination nav[aria-label="Pagination Navigation"]{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.lps-user-pagination nav[aria-label="Pagination Navigation"] p{
  margin:0;
}

.lps-user-pagination nav[aria-label="Pagination Navigation"] .flex{ display:flex; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .inline-flex{ display:inline-flex; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .items-center{ align-items:center; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .justify-between{ justify-content:space-between; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .gap-2{ gap:8px; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .hidden{ display:none; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:hidden{ display:flex; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:flex{ display:none; }
.lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:flex-1{ flex:1 1 auto; }

@media (min-width: 640px){
  .lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:hidden{ display:none; }
  .lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:flex{ display:flex; }
  .lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:items-center{ align-items:center; }
  .lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:justify-between{ justify-content:space-between; }
  .lps-user-pagination nav[aria-label="Pagination Navigation"] .sm\:gap-2{ gap:8px; }
}

.lps-inline-form{
  display:inline;
}

.lps-user-table-wrap .lps-table-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:nowrap;
  gap:8px;
}

.lps-user-table-wrap .lps-table-actions .lps-row-icon{
  width:24px;
  height:24px;
  flex-shrink:0;
}

.lps-user-table-wrap .lps-table-actions .lps-row-icon svg{
  width:18px;
  height:18px;
}

.lps-user-table-wrap .lps-table-actions .lps-inline-form{
  display:flex;
  margin:0;
}

.lps-user-table-wrap .lps-user-table{
  width:100%;
}

.lps-user-table-wrap .lps-table-actions .lps-pill{
  min-height:34px;
  min-width:82px;
  padding:8px 12px;
  justify-content:center;
}

.lps-user-mobile-list{
  display:none;
}

.lps-user-mobile-card{
  border:1px solid rgba(14,35,29,.14);
  border-radius:12px;
  background:#fff;
  box-shadow:0 4px 10px rgba(0,0,0,.08);
  overflow:hidden;
  width:100%;
  margin:0;
}

.lps-user-mobile-row{
  display:grid;
  grid-template-columns: minmax(112px, 42%) 1fr;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border-bottom:1px solid rgba(23,49,38,.10);
}

.lps-user-mobile-row span{
  font-weight:800;
  color:#4f5b63;
}

.lps-user-mobile-row strong{
  font-weight:700;
  color:#1f2937;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.lps-user-mobile-actions{
  display:flex;
  gap:8px;
  padding:10px 12px;
  align-items:center;
  width:100%;
  margin:0;
}

.lps-user-mobile-actions .lps-row-icon{
  width:28px;
  height:28px;
  border:1px solid rgba(87,100,112,.24);
  border-radius:8px;
  flex-shrink:0;
}

.lps-user-mobile-actions .lps-row-icon svg{
  width:18px;
  height:18px;
}

.lps-user-mobile-actions .lps-pill,
.lps-user-mobile-actions .lps-user-mobile-form{
  flex:1 1 auto;
}

.lps-user-mobile-actions .lps-pill{
  width:100%;
  justify-content:center;
}

.lps-user-mobile-empty{
  border:1px solid rgba(14,35,29,.14);
  border-radius:12px;
  background:#fff;
  padding:14px 12px;
  text-align:center;
  color:#4f5b63;
  font-weight:600;
}

/* Create form */
.lps-form-card{
  max-width: 980px;
  margin: 0 auto;
  background: rgba(255,255,255,.88);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: var(--shadow-soft);
  padding: 16px 16px 14px;
}
.lps-form-card-title{
  font-weight: 900;
  letter-spacing:.4px;
  color:var(--green-800);
  margin: 4px 2px 14px;
}
.lps-form-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.lps-form-row{ display:flex; flex-direction:column; gap: 6px; }
.lps-form-row-wide{ grid-column: 1 / -1; }
.lps-label{ font-weight: 900; color:#444; font-size: 12px; }
.lps-input{
  border: 1px solid rgba(23,49,38,.14);
  border-radius: 12px;
  padding: 10px 12px;
  outline:none;
  background: rgba(255,255,255,.95);
}
.lps-toggle-group{
  display:flex;
  flex-wrap:wrap;
  gap: 8px;
}
.lps-circle-toggle input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.lps-circle-toggle span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(23,49,38,.24);
  background: rgba(255,255,255,.95);
  color: var(--text);
  font-weight: 700;
  cursor:pointer;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.lps-circle-toggle input:checked + span{
  background: var(--green-700);
  border-color: var(--green-700);
  color:#fff;
}
.lps-circle-toggle input:focus-visible + span{
  box-shadow: 0 0 0 3px rgba(47,106,68,.25);
}
.lps-textarea{ min-height: 110px; resize: vertical; }
.lps-form-actions{
  grid-column: 1 / -1;
  display:flex;
  justify-content:flex-end;
  gap: 10px;
  padding-top: 6px;
}
.lps-destination-row{
  display:flex;
  gap:8px;
  align-items:center;
}
.lps-destination-row .lps-input{
  flex:1;
}
.lps-destination-row .lps-pill{
  min-width:44px;
  padding:10px 14px;
}
.lps-upload-box{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(23,49,38,.14);
  border-radius:12px;
  padding:10px 12px;
  background:rgba(255,255,255,.98);
  box-shadow:var(--shadow-inset);
  min-height:56px;
  cursor:pointer;
}
.lps-upload-display{
  flex:1;
  min-height:40px;
  display:flex;
  align-items:center;
  padding:8px 10px;
  border:1px solid rgba(23,49,38,.12);
  border-radius:8px;
  background:#f8f9f8;
  color:#2c2c2c;
  font-weight:600;
  font-size:13px;
}
.lps-upload-placeholder{ color:#6b6b6b; }
.lps-upload-meta{
  display:flex;
  flex-direction:column;
  gap:2px;
  font-size:12px;
  color:#2c2c2c;
}
.lps-upload-meta div{ line-height:1.3; }
.lps-upload-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#2f2f2f;
  color:#fff;
  padding:11px 16px;
  border-radius:8px;
  font-weight:800;
  letter-spacing:.4px;
  box-shadow:0 6px 14px rgba(0,0,0,.16);
  text-transform:uppercase;
}
.lps-upload-btn svg{
  width:16px;
  height:16px;
  display:block;
}
.lps-upload-input{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}

/* Add document modal */
.lps-has-modal-open{ overflow:hidden; }
.lps-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  z-index:120;
  padding: 16px;
}
.lps-modal.is-open{ display:flex; }
.lps-modal-backdrop{
  position:absolute;
  inset:0;
  background: rgba(11, 20, 15, .52);
  backdrop-filter: blur(2px);
}
.lps-modal-panel{
  position:relative;
  width:min(980px, 100%);
  max-height: calc(100vh - 32px);
  overflow:auto;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,247,.96));
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 14px 16px 16px;
  animation: lpsModalIn .18s ease-out;
}
.lps-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  margin: -2px -4px 12px;
  padding: 6px 6px 10px;
  position: sticky;
  top: -14px;
  z-index: 1;
  background: linear-gradient(180deg, rgba(247,250,247,.98), rgba(247,250,247,.85));
  border-bottom: 1px solid rgba(23,49,38,.08);
}
.lps-modal-close{
  width:36px;
  height:36px;
  color: var(--green-900);
}
.lps-modal-close svg{ width:20px; height:20px; display:block; }
.lps-modal-subtitle{
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.lps-action-modal-panel{
  width: min(1420px, 100%);
  max-height: calc(100vh - 24px);
  padding: 0;
  overflow: hidden;
  border-radius: 14px;
  border-color: #d5d5d5;
  background: #ececec;
}

.lps-action-modal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 26px 36px 28px;
  margin: 0;
  position: sticky;
  top: 0;
  z-index: 3;
  background: linear-gradient(135deg, #5b3d66, #65426f);
  border-bottom: 0;
  color: #fff;
  border-radius: 0 0 72px 72px;
  box-shadow: 0 10px 20px rgba(0,0,0,.22);
}

.lps-action-modal-head h2{
  margin: 0;
  font-size: 18px;
  line-height: 1;
  letter-spacing: .2px;
  font-weight: 800;
}

.lps-action-close{
  width: 44px;
  height: 44px;
  color: #fff;
  border-radius: 999px;
  background: transparent;
  border: 0;
  font-size: 40px;
  line-height: 1;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.lps-action-close:hover{
  background: rgba(255,255,255,.16);
}

.lps-action-modal-body{
  padding: 18px 34px 24px;
  display:flex;
  flex-direction:column;
  gap: 16px;
  background: #ececec;
}

.lps-action-block{
  display:flex;
  flex-direction:column;
  gap: 10px;
}

.lps-action-label{
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #666b72;
}

.lps-action-textarea,
.lps-action-input,
.lps-action-line{
  width: 100%;
  min-height: 48px;
  border: 1px solid #bfc4c9;
  border-radius: 6px;
  background: #f7f8f9;
  color:#2c2c2c;
  padding: 13px 14px;
  font-size: 14px;
}

.lps-action-textarea{
  min-height: 126px;
  resize: vertical;
}

.lps-action-row{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.lps-action-line.is-strike{
  text-decoration: line-through;
  opacity: .75;
}

.lps-revise-section{
  border: 1px solid #c8c8c8;
  border-radius: 4px;
  background: #f1f1f1;
  padding: 16px 18px 18px;
  margin: 0;
}

.lps-revise-section legend{
  color: #6c7480;
  font-size: 15px;
  font-weight: 800;
  padding: 0 8px;
}

.lps-revise-file-grid{
  display:grid;
  grid-template-columns: 160px 1fr auto;
  gap: 12px;
  align-items:center;
}

.lps-revise-file-grid + .lps-revise-file-grid{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 2px solid #c1c1c1;
}

.lps-choice-group{
  display:flex;
  align-items:center;
  gap: 18px 24px;
  flex-wrap:wrap;
  padding: 2px 0;
}

.lps-choice-item{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  color:#6f7782;
  font-size: 14px;
  font-weight: 600;
  cursor:pointer;
  min-height: 44px;
}

.lps-choice-item input{
  width: 20px;
  height: 20px;
  accent-color: #2d8d3d;
  cursor:pointer;
  margin: 0;
}

.lps-choice-item input:checked + span{
  color: #0d8a2b;
  font-weight: 800;
}

.lps-choice-item span{
  line-height: 1.2;
}

.lps-choice-group-multi .lps-choice-item{
  padding: 8px 12px;
  border: 1px solid #ced2d7;
  border-radius: 999px;
  background: #fff;
}

.lps-file-action{
  display:flex;
  flex-direction:column;
  gap: 8px;
}

.lps-file-action-label{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .45px;
  color: #2f2f2f;
  text-transform: uppercase;
}

.lps-file-action-name{
  width: 100%;
  border: 1px solid rgba(47,63,143,.28);
  background: #fff;
  border-radius: 12px;
  min-height: 44px;
  padding: 10px 12px;
  color: #2c2c2c;
}

.lps-file-action-btn{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.lps-action-remove{
  min-height: 44px;
  padding: 0 16px;
  border-radius: 8px;
  border: 1px solid rgba(180,45,45,.30);
  color: #7d1f1f;
  background: #fff;
  box-shadow: none;
}

.lps-action-remove.is-active{
  background: #fde9e9;
  color: #6d1616;
  border-color: rgba(180,45,45,.44);
}

.lps-annotation-edit-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
}

.lps-action-upload-btn{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  justify-content:center;
  min-height: 44px;
  min-width: 186px;
  padding: 8px 14px;
  border-radius: 8px;
  background: linear-gradient(180deg, #383838, #2b2b2b);
  color:#fff;
  font-weight: 800;
  letter-spacing: .4px;
  border: 1px solid rgba(0,0,0,.22);
  text-transform: uppercase;
  cursor:pointer;
}

.lps-action-upload-btn svg{
  width: 18px;
  height: 18px;
}

.lps-action-upload-input{
  display: none !important;
}

.lps-action-submit{
  width: auto;
  justify-content:flex-end;
  min-height: 44px;
  font-size: 14px;
}

.lps-action-modal-actions{
  position: sticky;
  bottom: -24px;
  margin: 4px -34px -24px;
  padding: 12px 34px 16px;
  background: linear-gradient(180deg, rgba(236,236,236,.78), rgba(236,236,236,.98));
  border-top: 1px solid #d0d0d0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap: 10px;
  z-index:2;
}

[data-lps-revise-modal] .lps-action-modal-panel{
  width: min(1450px, calc(100vw - 64px));
  max-height: calc(100vh - 28px);
  border-radius: 0 0 18px 18px;
  background: #e9e9e9;
  box-shadow: 0 12px 26px rgba(0,0,0,.24);
}

[data-lps-revise-modal] .lps-action-modal-head{
  min-height: 104px;
  padding: 30px 40px;
  border-radius: 0 0 96px 0;
}

[data-lps-revise-modal] .lps-action-modal-head h2{
  font-size: 30px;
  font-weight: 500;
}

[data-lps-revise-modal] .lps-action-modal-body{
  margin: 20px 36px 0;
  padding: 40px 38px 0;
  max-height: calc(100vh - 186px);
  overflow-y: auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  box-shadow: 0 5px 14px rgba(0,0,0,.18);
}

[data-lps-revise-modal] .lps-revise-section{
  background: #fff;
  border-color: #bfbfbf;
  padding: 32px 20px 28px;
}

[data-lps-revise-modal] .lps-revise-section legend{
  background: #fff;
  font-weight: 700;
}

[data-lps-revise-modal] .lps-revise-file-grid{
  grid-template-columns: 150px minmax(0, 1fr) auto;
  gap: 20px;
}

[data-lps-revise-modal] .lps-action-textarea,
[data-lps-revise-modal] .lps-action-input,
[data-lps-revise-modal] .lps-action-line{
  background: #fff;
  min-height: 52px;
  font-size: 20px;
  border-color: #bfc4ca;
}

[data-lps-revise-modal] .lps-action-textarea{
  min-height: 138px;
}

[data-lps-revise-modal] .lps-action-label{
  font-size: 18px;
  font-weight: 700;
}

[data-lps-revise-modal] .lps-action-modal-actions{
  position: sticky;
  bottom: 0;
  margin: 0 -38px;
  padding: 22px 0 22px;
  background: #e9e9e9;
  border-top: 1px solid #d0d0d0;
  box-shadow: 0 -3px 12px rgba(0,0,0,.08);
}

[data-lps-revise-modal] .lps-action-update{
  background: #5f3b66;
  border-color: #5f3b66;
  min-width: 148px;
  box-shadow: none;
}

.lps-action-update{
  min-width: 152px;
  box-shadow: 0 8px 16px var(--cta-green-shadow), inset 0 1px 0 rgba(255,255,255,.2);
}

.lps-action-update:hover{
  box-shadow: 0 12px 20px rgba(15,94,53,.40), inset 0 1px 0 rgba(255,255,255,.24);
  filter: brightness(1.04);
}

[data-lps-revise-modal] .lps-action-update{
  background: #5f3b66;
  border-color: #5f3b66;
  box-shadow: none;
}

[data-lps-revise-modal] .lps-action-update:hover{
  box-shadow: 0 8px 16px rgba(95,59,102,.32);
  filter: brightness(1.04);
}

.lps-details-modal-panel{
  width: min(1180px, 100%);
  max-height: calc(100vh - 24px);
  border-radius: 14px;
  border: 1px solid #c5c5c5;
  background: #ececec;
  padding: 0;
  overflow: auto;
}

.lps-details-head{
  position: sticky;
  top: 0;
  z-index: 2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 10px;
  padding: 16px 22px 10px;
  background: linear-gradient(180deg, rgba(236,236,236,.97), rgba(236,236,236,.9));
  border-bottom: 1px solid #cdcdcd;
}

.lps-details-head h2{
  margin: 0;
  font-size: 22px;
  color: #161b22;
  line-height: 1.1;
  font-weight: 800;
}

.lps-details-close{
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #6a727a;
  font-size: 36px;
  line-height: 1;
  cursor: pointer;
  display:grid;
  place-items:center;
}

.lps-details-close:hover{
  background: rgba(79, 88, 97, .12);
}

.lps-details-body{
  padding: 12px 24px 22px;
  display:flex;
  flex-direction:column;
  gap: 14px;
}

.lps-details-item{
  display:flex;
  flex-direction:column;
  gap: 5px;
  padding: 2px 0;
}

.lps-details-label{
  font-size: 13px;
  color: #626d78;
  font-weight: 800;
}

.lps-details-value{
  font-size: 14px;
  line-height: 1.3;
  color: #19202a;
  word-break: break-word;
  padding-left: 16px;
}

.lps-details-card-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.lps-details-card{
  border: 1px solid #bcbcbc;
  border-radius: 6px;
  background: #f2f2f2;
  padding: 14px 18px;
}

.lps-details-card h3{
  margin: 0 0 6px;
  color: #6a7480;
  font-size: 13px;
  font-weight: 800;
}

.lps-details-card p{
  margin: 0;
  color: #1c2530;
  font-size: 14px;
  line-height: 1.35;
  word-break: break-word;
  min-height: 28px;
}

.lps-details-card-sub{
  margin-top: 10px !important;
}

.lps-details-line{
  display:flex;
  align-items:center;
  gap: 10px;
  color:#19202a;
  font-size: 14px;
}

.lps-details-line-ico{
  width: 20px;
  height: 20px;
  color:#1d2a36;
  flex-shrink:0;
}

.lps-details-line-ico svg{
  width: 20px;
  height: 20px;
  display:block;
}

.lps-details-annotation-row{
  display:flex;
  align-items:flex-start;
  gap: 10px;
}

.lps-details-annotation-list{
  display:flex;
  flex-direction:column;
  gap: 10px;
}

.lps-details-annotation-entry{
  border: 1px solid #d2d2d2;
  border-radius: 8px;
  background: #f6f6f6;
  padding: 10px 12px;
  display:flex;
  flex-direction:column;
  gap: 4px;
}

.lps-details-annotation-entry.is-empty{
  border-style: dashed;
  background: transparent;
  color:#6b7783;
}

.lps-details-annotation-ico{
  width: 22px;
  height: 22px;
  margin-top: 2px;
  color: #19202a;
  flex-shrink:0;
}

.lps-details-annotation-ico svg{
  width: 22px;
  height: 22px;
  display:block;
}

.lps-details-annotation-main{
  color:#161f2a;
  font-size: 16px;
  line-height: 1.32;
  word-break: break-word;
  white-space: pre-line;
  font-weight: 700;
}

.lps-details-annotation-meta{
  color:#697582;
  font-size: 13px;
  line-height: 1.35;
}

.lps-details-annotation-meta strong{
  color:#677381;
}

.lps-details-duration-list{
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.lps-details-duration-item{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border: 1px solid #d2d2d2;
  border-radius: 6px;
  background: #f8f8f8;
}

.lps-details-duration-label{
  display: flex;
  flex-direction: column;
  gap: 2px;
  color: #23303c;
  font-size: 13px;
  font-weight: 700;
}

.lps-details-duration-meta{
  color: #6c7885;
  font-size: 12px;
  font-weight: 600;
}

.lps-details-duration-value{
  color: #5b6774;
  font-size: 13px;
  font-weight: 700;
}

.lps-details-duration-list .is-empty{
  color: #6c7885;
  font-size: 13px;
}

.lps-details-duration-longest{
  margin-top: 10px !important;
}

.lps-details-tracking .lps-details-mini-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
}

.lps-details-tracking .lps-details-mini-grid div{
  color:#24303d;
  font-size: 13px;
  line-height: 1.35;
}

.lps-details-tracking .lps-details-mini-grid strong{
  color:#64717f;
}

.lps-doc-details-caps,
.lps-doc-details-caps .lps-details-head h2,
.lps-doc-details-caps .lps-details-body,
.lps-doc-details-caps .lps-details-card h3,
.lps-doc-details-caps .lps-details-card p,
.lps-doc-details-caps .lps-details-value,
.lps-doc-details-caps .lps-details-label,
.lps-doc-details-caps .lps-details-line,
.lps-doc-details-caps .lps-details-annotation-main,
.lps-doc-details-caps .lps-details-annotation-meta,
.lps-doc-details-caps .lps-details-duration-list,
.lps-doc-details-caps .lps-details-duration-longest,
.lps-doc-details-caps .lps-details-tracking .lps-details-mini-grid,
.lps-doc-details-caps .lps-details-tracking .lps-details-mini-grid strong{
  text-transform: uppercase;
}

.lps-doc-details-caps{
  --details-bg:#f5f7fb;
  --details-card:#ffffff;
  --details-border:#d7dee7;
  --details-ink:#1f2a33;
  --details-muted:#5e6c7a;
  --details-accent:#0f5b78;
  --details-accent-soft:rgba(15,91,120,.12);
  font-family:"Source Sans 3","IBM Plex Sans","Noto Sans",sans-serif;
  letter-spacing: normal;
}

.lps-doc-details-caps .lps-details-value,
.lps-doc-details-caps .lps-details-line,
.lps-doc-details-caps .lps-details-annotation-main,
.lps-doc-details-caps .lps-details-annotation-meta,
.lps-doc-details-caps .lps-details-duration-list,
.lps-doc-details-caps .lps-details-duration-longest,
.lps-doc-details-caps .lps-details-tracking .lps-details-mini-grid,
.lps-doc-details-caps .lps-details-tracking .lps-details-mini-grid strong{
  text-transform: none;
}

.lps-doc-details-caps .lps-details-modal-panel{
  background: var(--details-bg);
  border: 1px solid var(--details-border);
  box-shadow: 0 12px 28px rgba(15,23,38,.18);
}

.lps-doc-details-caps .lps-details-head{
  background: #fff;
  border-bottom: 1px solid var(--details-border);
  padding: 18px 24px 12px;
  position: sticky;
}

.lps-doc-details-caps .lps-details-head::after{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--details-accent), #2a7f64);
}

.lps-doc-details-caps .lps-details-head h2{
  font-size: 22px;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--details-ink);
}

.lps-doc-details-caps .lps-details-close{
  color: #3d4c59;
  background: #f0f3f7;
}

.lps-doc-details-caps .lps-details-close:hover{
  background: #e3e9f0;
}

.lps-doc-details-caps .lps-details-body{
  padding: 16px 24px 22px;
  gap: 16px;
}

.lps-doc-details-caps .lps-details-item{
  padding: 8px 12px;
  border-radius: 10px;
  background: var(--details-card);
  border: 1px solid var(--details-border);
  box-shadow: 0 6px 10px rgba(15,23,38,.06);
}

.lps-doc-details-caps .lps-details-label{
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--details-muted);
}

.lps-doc-details-caps .lps-details-value{
  font-size: 15px;
  padding-left: 0;
  color: var(--details-ink);
  font-weight: 600;
}

.lps-doc-details-caps .lps-details-card-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.lps-doc-details-caps .lps-details-card{
  border-radius: 12px;
  background: var(--details-card);
  border: 1px solid var(--details-border);
  box-shadow: 0 8px 16px rgba(15,23,38,.08);
}

.lps-doc-details-caps .lps-details-card h3{
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #51606d;
}

.lps-doc-details-caps .lps-details-card p{
  font-size: 14px;
  color: #23313c;
}

.lps-doc-details-caps .lps-details-line-ico{
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--details-accent-soft);
  border: 1px solid rgba(15,91,120,.35);
  color: var(--details-accent);
  display:grid;
  place-items:center;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.6);
}

.lps-doc-details-caps .lps-details-annotation-entry{
  border-radius: 10px;
  background: #fff;
  border: 1px solid var(--details-border);
}

.lps-doc-details-caps .lps-details-duration-item{
  border-radius: 10px;
  background: #fff;
  border: 1px solid var(--details-border);
}

.lps-doc-details-caps .lps-details-tracking .lps-details-mini-grid div{
  background: #fff;
  border: 1px solid var(--details-border);
  border-radius: 8px;
  padding: 8px 10px;
}

@media (max-width: 960px){
  .lps-doc-details-caps .lps-details-card-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 720px){
  .lps-doc-details-caps .lps-details-head{ padding: 16px 18px 12px; }
  .lps-doc-details-caps .lps-details-body{ padding: 14px 18px 20px; }
}

.lps-details-card-wide{
  grid-column: 1 / -1;
}

.lps-modal-panel .lps-form-actions{
  position: sticky;
  bottom: -16px;
  margin: 2px -16px -16px;
  padding: 10px 16px 14px;
  background: linear-gradient(180deg, rgba(247,250,247,.75), rgba(247,250,247,.98));
  border-top: 1px solid rgba(23,49,38,.08);
}

@keyframes lpsModalIn{
  from{
    opacity:0;
    transform: translateY(8px) scale(.985);
  }
  to{
    opacity:1;
    transform: translateY(0) scale(1);
  }
}

/* Responsive */
@media (max-width: 1320px){
  .lps-cards{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1100px){
  .lps-cards{ grid-template-columns: repeat(2, minmax(0,1fr)); gap:18px; padding-right:0; }
  .lps-graph-grid{ grid-template-columns: 1fr; }
  .lps-doc-type-axis{ height: 168px; }
  .lps-doc-type-bar-wrap{ height: 168px; }
  .lps-doc-type-chart-scroll{ min-width: 100%; }
  .lps-doc-type-bar{ flex-basis: 98px; }
  .lps-duration-group{ flex-basis: 120px; }
  .lps-topbar-title{ font-size: 17px; }
  .lps-search input{ width: 220px; }
  .lps-dashboard-title{ font-size:38px; }
  .lps-dashboard-office{ font-size:20px; }
  .lps-dashboard-sub{ font-size:16px; }
}

@media (max-width: 900px){
  .lps-topbar{ padding: 0 12px; }
  .lps-topbar-title{ font-size: 14px; }
  .lps-topbar-title{ max-width:50vw; }
  .lps-topbar-search{ width:40px; height:40px; }
  .lps-topbar-search svg{ width:22px; height:22px; }
  .lps-topbar-divider{ height:34px; }
  .lps-topbar-actions{ gap:10px; }
  .lps-search-modal-panel{ width:min(620px, 100%); }
  .lps-content{ padding: 16px 12px 10px; }
  .lps-docs-actions{ width:100%; }
  .lps-docs-actions .is-right{ margin-left:0; }
  .lps-pill{ padding: 10px 14px; }
  .lps-chart-slider{ grid-template-columns: 30px minmax(0, 1fr) 30px; gap: 6px; }
  .lps-chart-slider-btn svg{ width: 16px; height: 16px; }
  .lps-graph-filter-actions{ margin-left:0; }
  .lps-graph-card-head{ align-items:stretch; }
  .lps-graph-filters-inline{
    width: 100%;
  }
  .lps-graph-filters-inline .lps-graph-filter-field{
    min-width: 0;
    flex: 1 1 180px;
  }

  .lps-user-search-label{
    width:100%;
  }

  .lps-user-search-input,
  .lps-user-role-select{
    min-width:0;
    width:100%;
    max-width:none;
  }

  .lps-user-filters .lps-user-search-center .lps-user-search-form{
    width:100%;
    max-width:460px;
    margin:0 auto;
  }
}

@media (max-width: 720px){
  .lps-graph-card-head{
    flex-direction:column;
    align-items:stretch;
  }
  .lps-graph-filters-inline{
    width: 100%;
  }
  .lps-graph-filters{ padding: 0; }
  .lps-graph-filter-field{
    min-width: 0;
    width: 100%;
  }
  .lps-graph-filter-actions{
    width: 100%;
    flex-wrap: wrap;
    gap: 8px;
  }
  .lps-graph-filter-actions .lps-pill,
  .lps-graph-filter-actions a.lps-pill{
    flex: 1 1 150px;
    justify-content: center;
  }
  .lps-graph-filter-meta{ margin: -2px 0 0; }
  .lps-doc-type-chart-shell{ grid-template-columns: 44px 1fr; }
  .lps-doc-type-axis{ height: 160px; }
  .lps-doc-type-bar-wrap{ height: 160px; }
  .lps-doc-type-chart-scroll{ min-width: 100%; }

  .lps-shell{
    --lps-header-height: 64px;
    --lps-sidebar-collapsed-width: 0px;
    --lps-sidebar-open-width: min(328px, calc(100vw - 18px));
    grid-template-columns: 1fr;
    grid-template-rows: var(--lps-header-height) 1fr;
  }

  .lps-shell::before{
    content:"";
    position:fixed;
    inset:0;
    background: rgba(11, 20, 15, .44);
    opacity:0;
    pointer-events:none;
    transition: opacity .18s ease;
    z-index:44;
  }

  .lps-shell.is-expanded::before{
    opacity:1;
    pointer-events:auto;
  }

  .lps-sidebar{
    top: 0;
    width: var(--lps-sidebar-open-width);
    transform: translateX(-100%);
    transition: transform .18s ease, box-shadow .18s ease;
    box-shadow: 10px 0 24px rgba(0,0,0,.14);
  }

  .lps-shell.is-expanded .lps-sidebar{
    transform: translateX(0);
    box-shadow: 10px 0 30px rgba(0,0,0,.24);
  }

  .lps-topbar,
  .lps-shell.is-expanded .lps-topbar{
    margin-left: 0;
    width: 100%;
  }

  .lps-content{ grid-column: 1; }
  .lps-content,
  .lps-shell.is-expanded .lps-content{ margin-left: 0; }

  .lps-sidebar-top,
  .lps-sidebar-profile,
  .lps-nav-section,
  .lps-nav-label,
  .lps-sidebar-profile-name,
  .lps-sidebar-profile-sub,
  .lps-sidebar-profile-meta,
  .lps-sidebar-profile-role{ display:none; }
  .lps-nav{
    height:100%;
    padding: 26px 7px 20px;
    gap: 14px;
    overflow:auto;
  }
  .lps-nav-item{
    justify-content:center;
    padding: 14px 0;
    border-radius: 14px;
  }
  .lps-nav-ico{
    width:30px;
    height:30px;
  }
  .lps-nav-ico svg{
    width:30px;
    height:30px;
  }
  .lps-shell.is-expanded .lps-sidebar-top{ display:flex; }
  .lps-shell.is-expanded .lps-sidebar-profile{ display:block; }
  .lps-shell.is-expanded .lps-sidebar-profile-name,
  .lps-shell.is-expanded .lps-sidebar-profile-sub,
  .lps-shell.is-expanded .lps-sidebar-profile-meta,
  .lps-shell.is-expanded .lps-sidebar-profile-role,
  .lps-shell.is-expanded .lps-nav-section,
  .lps-shell.is-expanded .lps-nav-label{ display:block; }
  .lps-shell.is-expanded .lps-nav{
    height: calc(100% - 76px - 128px);
    padding: 12px 10px 18px 8px;
    gap: 8px;
  }
  .lps-shell.is-expanded .lps-nav-item{
    justify-content:flex-start;
    padding: 16px 18px;
    border-radius: 16px;
  }

  .lps-dashboard-header{ margin: 2px 0 18px; }
  .lps-docs-header{ gap: 12px; padding-inline:0; }
  .lps-docs-toolbar{ padding-inline:0; }
  .lps-docs-actions{ width:100%; flex-wrap:wrap; }
  .lps-docs-actions > *{ width:100%; }
  .lps-docs-actions .lps-pill{ width:100%; justify-content:center; }
  .lps-docs-actions .is-right{ margin-left:0; }
  .lps-toolbar-spacer{ display:none; }
  .lps-search{ width:100%; }
  .lps-search input{ width: 100%; }

  .lps-user-filters-body{
    padding:12px;
  }

  .lps-user-search-form{
    gap:8px;
    width:100%;
    max-width:none;
    margin:0;
  }

  .lps-user-filters .lps-user-search-center .lps-user-search-form{
    width:100%;
    max-width:none;
    margin:0;
  }

  .lps-user-search-input,
  .lps-user-role-select{
    font-size:16px;
  }

  .lps-user-search-input::placeholder{
    font-size:14px;
  }

  .lps-user-search-form .lps-pill,
  .lps-user-search-form a.lps-pill{
    width:100%;
    justify-content:center;
  }

  .lps-user-table-wrap .lps-table{
    min-width:0;
    width:100%;
  }

  .lps-user-table-wrap .lps-table-actions{
    gap:6px;
  }

  .lps-user-table-wrap .lps-table-actions .lps-pill{
    min-height:32px;
    padding:7px 10px;
    font-size:12px;
  }

  .lps-user-pagination{
    justify-content:center;
    padding:12px;
  }

  .lps-user-details-modal .lps-details-label{
    font-size:14px;
  }

  .lps-user-details-modal .lps-details-value{
    font-size:14px;
  }

  .lps-user-details-modal .lps-details-card h3,
  .lps-user-details-modal .lps-details-card p{
    font-size:14px;
  }

  .lps-topbar{ padding: 0 14px; }
  .lps-topbar-title{ font-size: 15px; }
  .lps-topbar-title{ max-width:46vw; }
  .lps-topbar-divider{ display:none; }
  .lps-topbar-search{ width:32px; height:32px; }
  .lps-topbar-search svg{ width:20px; height:20px; }
  .lps-search-modal{ padding: 12px; }
  .lps-search-modal-panel{ padding:14px; border-radius:16px; }
  .lps-search-modal-head h2{ font-size:17px; }
  .lps-search-modal-row{
    grid-template-columns: 1fr;
    gap:10px;
    border-radius:14px;
    padding:10px;
  }
  .lps-search-modal-row .lps-topbar-search-panel-ico{ display:none; }
  .lps-topbar-search-go{ width:100%; min-height:36px; font-size:13px; }
  .lps-search-modal-close{ width:30px; height:30px; font-size:22px; }
  .lps-topbar-actions{ gap:8px; }
  .lps-topbar-icon{ width:28px; height:28px; }
  .lps-topbar-icon svg{ width:24px; height:24px; }

  .lps-form-grid{ grid-template-columns: 1fr; }
  .lps-modal-panel{ padding: 14px; }
  .lps-action-modal-panel{ padding: 0; }
  .lps-modal-head{
    top: -14px;
    margin-bottom: 10px;
  }
  .lps-action-modal-head{
    padding: 14px 16px 16px;
    border-radius: 0 0 34px 34px;
  }
  .lps-action-modal-head h2{ font-size: 17px; }
  .lps-action-modal-body{
    padding: 12px 14px 14px;
    gap: 12px;
  }
  .lps-revise-section{ padding: 12px; }
  .lps-revise-file-grid{
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .lps-choice-group{ gap: 10px 14px; }
  .lps-choice-item{ font-size: 13px; }
  .lps-choice-item input{ width: 18px; height: 18px; }
  .lps-action-row{ grid-template-columns: 1fr; }
  .lps-action-modal-actions{
    bottom: -14px;
    margin: 4px -14px -14px;
    padding: 10px 14px 12px;
  }
  .lps-details-body{ padding: 12px 14px 14px; }
  .lps-details-card-grid{ grid-template-columns: 1fr; }
  .lps-details-head h2{ font-size: 18px; }
  .lps-details-label{ font-size: 18px; }
  .lps-details-value{ font-size: 18px; padding-left: 0; }
  .lps-details-card h3{ font-size: 16px; }
  .lps-details-card p,
  .lps-details-line,
  .lps-details-annotation-main,
  .lps-details-annotation-meta,
  .lps-details-tracking .lps-details-mini-grid div{ font-size: 15px; }
  .lps-details-tracking .lps-details-mini-grid{ grid-template-columns: 1fr; }
  .lps-modal-panel .lps-form-actions{
    bottom: -14px;
    margin: 2px -14px -14px;
    padding: 10px 14px 12px;
  }
  .lps-destination-row{ flex-wrap:wrap; }
  .lps-destination-row .lps-pill{ min-width: 42px; }
  .lps-destination-row .lps-pill{ flex:1; justify-content:center; }
  .lps-dashboard-header{
    flex-direction:column;
    margin-right:0;
  }
  .lps-dashboard-title{ font-size:30px; }
  .lps-dashboard-office{ font-size:18px; }
  .lps-dashboard-sub{ font-size:15px; }
  .lps-btn{ width:100%; justify-content:center; }
  .lps-cards{ grid-template-columns:1fr; padding:0; gap:14px; }
  .lps-graph-summary-cards{ grid-template-columns: 1fr; }
  .lps-card{ padding: 22px 16px 12px 122px; min-height: 118px; }
  .lps-card-ico{ width:66px; height:66px; border-radius:20px; left:16px; top:50%; transform: translateY(-50%); }
  .lps-card-ico svg{ width:26px; height:26px; }
  .lps-card-title{ font-size:16px; }
  .lps-card-num{ font-size:36px; }
  .lps-table-wrap{ max-height:58vh; }
  .lps-table-footer{ padding: 10px 12px; }
  .lps-foot-right{ width:100%; justify-content:space-between; margin-left:0; }
  .lps-profile-menu{
    right:0;
    min-width:min(228px, calc(100vw - 24px));
  }
  .lps-notifications-menu{
    right:-4px;
    width:min(340px, calc(100vw - 18px));
  }
}

@media (max-width: 720px){
  .lps-user-filters{
    padding:0 !important;
    min-height:0 !important;
  }

  .lps-user-filters-body{
    padding:12px !important;
    text-align:center !important;
  }

  .lps-user-search-center{
    width:100%;
    max-width:none;
    margin-inline:auto;
    margin-left:auto !important;
    margin-right:auto !important;
    position:static !important;
    left:auto !important;
    transform:none !important;
  }

  .lps-user-filters .lps-user-search-center .lps-user-search-form{
    width:100% !important;
    max-width:none !important;
    margin-inline:auto !important;
    margin-left:auto !important;
    margin-right:auto !important;
    position:static !important;
    left:auto !important;
    transform:none !important;
  }

  .lps-user-table-card{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    justify-content:initial !important;
    align-items:initial !important;
  }

  .lps-user-table-body{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  .lps-user-table-wrap{
    display:none;
  }

  .lps-user-mobile-list{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    transform:none !important;
  }

  .lps-user-mobile-card{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 10px 0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    float:none !important;
    transform:none !important;
    left:0 !important;
  }

  .lps-user-table-wrap .lps-user-table{
    min-width:0;
    width:100%;
    border-collapse:collapse;
    border-spacing:0;
    table-layout:fixed;
    display:block;
    margin:0;
    position:relative;
    left:0;
  }

  .lps-user-table-wrap .lps-user-table tbody{
    display:block;
    width:100%;
    margin:0;
  }

  .lps-user-table-wrap .lps-user-table thead{
    display:none;
  }

  .lps-user-table-wrap .lps-user-table tbody tr{
    display:block;
    width:100%;
    margin:0 0 10px 0;
    border:1px solid rgba(14,35,29,.14);
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 10px rgba(0,0,0,.08);
    overflow:hidden;
    position:relative;
    left:0;
  }

  .lps-user-table-wrap .lps-user-table tbody td{
    display:grid;
    grid-template-columns: minmax(108px, 42%) 1fr;
    gap:10px;
    align-items:center;
    white-space:normal;
    padding:10px 12px;
    border-bottom:1px solid rgba(23,49,38,.10);
    overflow-wrap:anywhere;
    word-break:break-word;
    width:100%;
    margin:0;
    box-sizing:border-box;
  }

  .lps-user-table-wrap .lps-user-table tbody td:last-child{
    border-bottom:0;
  }

  .lps-user-table-wrap .lps-user-table tbody td::before{
    content: attr(data-label);
    font-weight:800;
    color:#4f5b63;
  }

  .lps-user-table-wrap .lps-user-table .lps-table-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }

  .lps-user-table-wrap .lps-user-table .lps-table-actions .lps-row-icon{
    width:28px;
    height:28px;
    border:1px solid rgba(87,100,112,.24);
    border-radius:8px;
  }

  .lps-user-table-wrap .lps-user-table .lps-table-actions .lps-row-icon svg{
    width:18px;
    height:18px;
  }

  .lps-user-table-wrap .lps-user-table .lps-table-actions .lps-pill,
  .lps-user-table-wrap .lps-user-table .lps-table-actions .lps-inline-form{
    flex:1 1 auto;
  }

  .lps-user-table-wrap .lps-user-table .lps-table-actions .lps-pill{
    width:100%;
    justify-content:center;
  }

  .lps-user-table-wrap .lps-user-table .lps-user-empty-row{
    display:block;
    border:0;
    background:transparent;
    box-shadow:none;
  }

  .lps-user-table-wrap .lps-user-table .lps-user-empty-row td{
    display:block;
    grid-template-columns:none;
    text-align:center;
    border-bottom:0;
    padding:20px 12px;
  }

  .lps-user-table-wrap .lps-user-table .lps-user-empty-row td::before{
    content:none;
  }
}

@media (max-width: 480px){
  .lps-content{ padding: 14px 10px 8px; }
  .lps-topbar-title{ font-size: 13px; max-width:42vw; }
  .lps-dashboard-title{ font-size:26px; }
  .lps-pill{ min-height:36px; padding:8px 12px; font-size:12px; }
  .lps-table{ font-size:12px; }
  .lps-modal{ padding: 10px; }
  .lps-modal-panel{
    max-height: calc(100vh - 20px);
    border-radius: 14px;
    padding: 12px;
  }
  .lps-action-modal-panel{
    padding: 0;
    border-radius: 14px;
  }
  .lps-action-modal-head h2{ font-size: 17px; }
  .lps-action-label{ font-size: 14px; }
  .lps-action-textarea,
  .lps-action-input,
  .lps-action-line{ min-height: 42px; font-size: 14px; }
  .lps-action-textarea{ min-height: 102px; }
  .lps-choice-item{ font-size: 12px; }
  .lps-choice-item input{ width: 16px; height: 16px; }
  .lps-action-upload-btn{ width: 100%; min-width: 0; }
  .lps-details-label{ font-size: 15px; }
  .lps-details-value{ font-size: 15px; }
  .lps-details-card h3{ font-size: 14px; }
  .lps-details-card p,
  .lps-details-line,
  .lps-details-annotation-main,
  .lps-details-annotation-meta,
  .lps-details-tracking .lps-details-mini-grid div{ font-size: 13px; }
  .lps-modal-panel .lps-form-actions{
    margin: 2px -12px -12px;
    padding: 10px 12px;
    bottom: -12px;
  }

  .lps-search-modal{ padding: 10px; }
  .lps-search-modal-panel{
    width:100%;
    max-height: calc(100vh - 20px);
    overflow:auto;
    border-radius:14px;
    padding:12px;
    gap:10px;
  }
  .lps-search-modal-head h2{ font-size:16px; }
  .lps-search-modal-row{ padding:8px; gap:8px; }
  .lps-search-modal-row input{ font-size:16px; }
  .lps-topbar-search-go{ min-height:38px; }
}

@media (max-width: 390px){
  .lps-search-modal{ padding: 8px; }
  .lps-search-modal-panel{ padding:10px; border-radius:12px; }
  .lps-search-modal-head h2{ font-size:15px; }
  .lps-search-modal-close{ width:28px; height:28px; font-size:20px; }
  .lps-topbar-search-go{ min-height:36px; font-size:12px; }

  .lps-user-mobile-row{
    grid-template-columns: 1fr;
    gap:4px;
    align-items:start;
    padding:9px 10px;
  }

  .lps-user-mobile-row strong{
    font-weight:600;
  }

  .lps-user-mobile-actions{
    flex-direction:column;
    align-items:stretch;
    gap:6px;
    padding:9px 10px;
  }

  .lps-user-mobile-actions .lps-row-icon{
    width:100%;
    height:34px;
    border-radius:10px;
  }
}

/* Global UI polish layer */
.lps-topbar{
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:var(--lps-header-height);
  margin-top:0;
  inset-block-start:0;
  backdrop-filter:none;
  box-shadow:none;
}

.lps-topbar-menu,
.lps-topbar-search,
.lps-topbar-icon,
.lps-notifications-mark-all,
.lps-profile-item,
.lps-pill,
.lps-tool-btn,
.lps-nav-item,
.lps-card-link .lps-card{
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease, filter .18s ease;
}

.lps-topbar-menu:hover,
.lps-topbar-icon:hover{
  background: rgba(20,58,36,.08);
  border-radius: 10px;
}

.lps-sidebar{
  box-shadow: 8px 0 26px rgba(20, 41, 95, .20);
}

.lps-nav-item{
  position:relative;
  border:1px solid transparent;
}

.lps-nav-item::before{
  content:"";
  position:absolute;
  left:8px;
  top:50%;
  width:4px;
  height:54%;
  border-radius:999px;
  transform:translateY(-50%);
  background:linear-gradient(180deg, rgba(28,112,66,.96), rgba(15,73,44,.96));
  opacity:0;
  transition:opacity .16s ease;
}

.lps-shell.is-expanded .lps-nav-item.is-active{
  border-color: rgba(17,78,48,.18);
  box-shadow: 0 10px 18px rgba(19,54,37,.12);
}

.lps-shell.is-expanded .lps-nav-item.is-active::before{
  opacity:1;
}

.lps-content{
  padding: calc(var(--lps-header-height) + 24px) 22px 14px;
}

.lps-dashboard-header{
  margin-bottom: 24px;
}

.lps-docs{
  background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,251,248,.95));
  border: 1px solid rgba(23,49,38,.10);
  border-radius: 20px;
  box-shadow: 0 14px 30px rgba(16,63,42,.08);
  padding: 8px 10px 6px;
}

.lps-docs-rule{
  background: linear-gradient(90deg, rgba(20,58,36,.24), rgba(20,58,36,.06));
}

.lps-cards{
  gap: 18px;
}

.lps-card{
  background: linear-gradient(180deg, #f5f7fa, #e8edf1);
  border: 1px solid rgba(71,89,112,.22);
  box-shadow: 0 12px 24px rgba(24,38,62,.14);
}

.lps-card::after{
  opacity:.48;
}

.lps-card-title{
  color:#5a6470;
}

.lps-card-num{
  color:#283241;
}

.lps-search input{
  border: 1px solid rgba(23,49,38,.16);
  border-radius: 999px;
  background:#fff;
  box-shadow: inset 0 1px 2px rgba(23,49,38,.06);
  padding: 10px 12px 10px 34px;
}

.lps-search input:focus-visible{
  border-color: rgba(18,117,62,.55);
  box-shadow: 0 0 0 3px rgba(18,117,62,.16), inset 0 1px 2px rgba(23,49,38,.06);
  outline:none;
}

.lps-search-ico{
  left: 12px;
}

.lps-table-wrap{
  border-radius: 12px;
  border-color: rgba(23,49,38,.14);
  box-shadow: 0 10px 24px rgba(20,58,36,.10);
}

.lps-table thead th{
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.12);
}

.lps-table tbody tr:nth-child(even) td{
  background: rgba(23,49,38,.018);
}

.lps-table tbody tr:hover td{
  background: rgba(79,152,97,.08);
}

.lps-profile-menu,
.lps-notifications-menu,
.lps-modal-panel,
.lps-search-modal-panel{
  border-color: rgba(23,49,38,.16);
  box-shadow: 0 20px 42px rgba(15,35,28,.18);
}

@media (max-width: 900px){
  .lps-content{
    padding: calc(var(--lps-header-height) + 18px) 14px 10px;
  }

  .lps-docs{
    border-radius: 16px;
    padding: 6px;
  }

  .lps-card-num{
    font-size: 38px;
  }
}

@media (max-width: 720px){
  .lps-topbar{
    backdrop-filter:none;
  }

  .lps-content{
    padding-top: calc(var(--lps-header-height) + 14px);
  }

  .lps-nav-item::before{
    left:6px;
  }

  .lps-docs{
    border-radius: 14px;
  }
}

@media (max-width: 480px){
  .lps-content{
    padding-top: calc(var(--lps-header-height) + 14px);
  }
}

.lps-doc-details-caps .lps-details-head{
  padding: 18px 24px 14px;
}
