.jps-ep-wrap{max-width:1180px;margin:24px auto;padding:0 16px;font-family:inherit;color:#121212}.jps-ep-wrap h1,.jps-ep-wrap h2{margin:0 0 18px;font-weight:800;letter-spacing:-.02em}.jps-ep-wrap h3{margin:26px 0 12px;font-weight:750}.jps-ep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.jps-ep-cards{grid-template-columns:repeat(5,minmax(0,1fr));margin:18px 0 22px}.jps-ep-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:18px;box-shadow:0 8px 28px rgba(0,0,0,.06)}.jps-ep-card strong{display:block;font-size:14px;color:#555;margin-bottom:10px}.jps-ep-card span{font-size:24px;font-weight:800;color:#111}.jps-ep-form{background:#fff;border:1px solid #e9e9e9;border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(0,0,0,.05);margin-bottom:26px}.jps-ep-form label{display:block;font-weight:650;font-size:14px;color:#222}.jps-ep-form input,.jps-ep-form select,.jps-ep-form textarea{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #d8d8d8;border-radius:10px;padding:11px 12px;font-size:14px;background:#fff}.jps-ep-form textarea{resize:vertical}.jps-ep-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#111;color:#fff!important;padding:11px 18px;text-decoration:none;font-weight:700;cursor:pointer;margin-top:12px}.jps-ep-btn:hover{background:#333;color:#fff}.jps-ep-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.jps-ep-table-wrap{overflow:auto;border:1px solid #e6e6e6;border-radius:14px;background:#fff;margin-bottom:18px}.jps-ep-table{width:100%;border-collapse:collapse;min-width:760px}.jps-ep-table th,.jps-ep-table td{padding:12px 14px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}.jps-ep-table th{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#666;background:#fafafa}.jps-ep-table tr:last-child td{border-bottom:0}.jps-ep-status{display:inline-block;border:1px solid #dedede;background:#f8f8f8;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.jps-ep-link{font-weight:700;text-decoration:none}.jps-ep-success,.jps-ep-alert,.jps-ep-warning{border-radius:12px;padding:12px 14px;margin:14px 0}.jps-ep-success{background:#eefbf2;border:1px solid #cdeed6;color:#135c2d}.jps-ep-alert{background:#fff3f3;border:1px solid #ffd0d0;color:#8b1a1a}.jps-ep-warning{background:#fff9e6;border:1px solid #ffe6a6;color:#6b4b00}.jps-ep-muted{color:#666}.jps-ep-inline-form{display:flex;gap:6px;align-items:center;margin-top:8px}.jps-ep-inline-form select{max-width:150px}.jps-ep-inline-form button{border:1px solid #222;background:#222;color:#fff;border-radius:8px;padding:6px 9px;cursor:pointer}@media(max-width:900px){.jps-ep-grid,.jps-ep-cards{grid-template-columns:1fr}.jps-ep-card span{font-size:22px}.jps-ep-form{padding:16px}.jps-ep-wrap{padding:0 12px}}
.jps-ep-filter-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #e7e7e7;border-radius:14px;padding:14px;margin:14px 0 18px}.jps-ep-filter-form input,.jps-ep-filter-form select{min-height:36px;border:1px solid #d7d7d7;border-radius:8px;padding:6px 10px}.jps-ep-checklist{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:18px;margin:18px 0;box-shadow:0 8px 28px rgba(0,0,0,.04)}.jps-ep-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.jps-ep-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750;border:1px solid #ddd;background:#fafafa}.jps-ep-pill.is-ok{background:#eefbf2;border-color:#cdeed6;color:#135c2d}.jps-ep-pill.is-missing{background:#fff3f3;border-color:#ffd0d0;color:#8b1a1a}.jps-ep-detail-table th{width:230px;background:#fafafa}.jps-ep-detail-table td{white-space:normal}.jps-ep-card span{word-break:break-word}@media(min-width:901px){.jps-ep-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
.jps-ep-checkbox{display:flex!important;gap:8px;align-items:center;margin:10px 0;font-weight:650}.jps-ep-checkbox input{width:auto!important;margin:0!important}.jps-ep-table textarea{min-width:180px;border:1px solid #d8d8d8;border-radius:8px;padding:7px}.jps-ep-table .jps-ep-btn{margin-top:0;padding:8px 12px}.jps-ep-card .jps-ep-btn{margin-top:12px}.jps-ep-table td strong{font-weight:800}.jps-ep-wrap code{background:#f5f5f5;border:1px solid #e5e5e5;border-radius:6px;padding:2px 5px}.jps-ep-form h3:first-child{margin-top:0}@media(max-width:700px){.jps-ep-actions{display:grid;grid-template-columns:1fr}.jps-ep-btn{width:100%}.jps-ep-inline-form{display:grid;grid-template-columns:1fr}.jps-ep-inline-form select,.jps-ep-inline-form textarea{width:100%;max-width:none}}
.jps-ep-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:18px 0 22px}.jps-ep-action-card{display:block;text-decoration:none!important;background:#fff;border:1px solid #e8e8e8;border-radius:18px;padding:18px;box-shadow:0 8px 28px rgba(0,0,0,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;color:#111!important}.jps-ep-action-card:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(0,0,0,.08);border-color:#d0d0d0}.jps-ep-action-card strong{display:block;font-size:17px;margin-bottom:7px}.jps-ep-action-card span{display:block;color:#666;line-height:1.45}.jps-ep-admin-edit{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:16px;margin:18px 0}.jps-ep-admin-edit summary{cursor:pointer;margin-bottom:12px}.jps-ep-timesheet-admin-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;align-items:end;min-width:620px}.jps-ep-timesheet-admin-form label{font-size:12px;font-weight:700}.jps-ep-timesheet-admin-form select,.jps-ep-timesheet-admin-form input,.jps-ep-timesheet-admin-form textarea{width:100%;max-width:none;border:1px solid #d8d8d8;border-radius:8px;padding:7px;background:#fff}.jps-ep-timesheet-admin-form button{height:36px}.jps-ep-conditional-field{transition:opacity .15s ease}.jps-ep-form small{display:block;margin-top:5px;font-weight:400}.tablenav-pages .button{vertical-align:middle}

/* Advanced UI Upgrade */
.jps-ep-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(135deg,#111827,#1f2937);color:#fff;border-radius:24px;padding:26px;margin:0 0 22px;box-shadow:0 18px 50px rgba(0,0,0,.14)}.jps-ep-hero h2{color:#fff!important;margin:0 0 8px!important;font-size:clamp(26px,3vw,42px)}.jps-ep-hero p{margin:0;color:rgba(255,255,255,.82);max-width:760px}.jps-ep-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;margin:0 0 8px!important;color:rgba(255,255,255,.72)!important}.jps-ep-hero-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:18px;padding:14px 18px;font-weight:800;white-space:nowrap}.jps-ep-progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:18px 0 24px}.jps-ep-progress-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:16px;box-shadow:0 8px 28px rgba(0,0,0,.05)}.jps-ep-progress-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:9px}.jps-ep-progress-head span{font-weight:800}.jps-ep-progress-track{height:10px;background:#f1f1f1;border-radius:999px;overflow:hidden}.jps-ep-progress-fill{height:100%;background:#111;border-radius:999px}.jps-ep-alert-list{display:grid;gap:12px}.jps-ep-alert-item{display:grid;gap:4px;background:#fff;border:1px solid #e8e8e8;border-left-width:5px;border-radius:14px;padding:14px 16px;box-shadow:0 8px 26px rgba(0,0,0,.04)}.jps-ep-alert-item.is-danger{border-left-color:#b91c1c}.jps-ep-alert-item.is-warning{border-left-color:#d97706}.jps-ep-alert-item.is-info{border-left-color:#2563eb}.jps-ep-alert-item strong{font-size:14px}.jps-ep-alert-item span{color:#555}.jps-ep-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.jps-ep-policy-card{background:#fff;border:1px solid #e8e8e8;border-radius:18px;padding:18px;box-shadow:0 8px 28px rgba(0,0,0,.05)}.jps-ep-policy-card p{color:#555}.jps-ep-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:18px 0 22px}.jps-ep-timeline-step{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px 12px;box-shadow:0 6px 22px rgba(0,0,0,.04)}.jps-ep-timeline-step span{display:block;width:12px;height:12px;border-radius:50%;background:#d1d5db;margin-bottom:8px}.jps-ep-timeline-step.is-done{border-color:#bbf7d0;background:#f0fdf4}.jps-ep-timeline-step.is-done span{background:#16a34a}.jps-ep-timeline-step.is-current{border-color:#fed7aa;background:#fff7ed}.jps-ep-timeline-step.is-current span{background:#f97316}.jps-ep-timeline-step strong{font-size:13px}@media(max-width:700px){.jps-ep-hero{display:block;padding:20px}.jps-ep-hero-badge{display:inline-block;margin-top:14px}.jps-ep-progress-grid,.jps-ep-policy-grid{grid-template-columns:1fr}.jps-ep-timeline{grid-template-columns:1fr}}

/* =========================================================
   JPS Employee Portal — Commercial Premium UI Refresh
   Keeps all existing features. Visual/UI upgrade only.
   ========================================================= */
.jps-ep-wrap{
  --jps-primary:#2563eb;
  --jps-primary-2:#7c3aed;
  --jps-accent:#06b6d4;
  --jps-success:#10b981;
  --jps-warning:#f59e0b;
  --jps-danger:#ef4444;
  --jps-ink:#0f172a;
  --jps-muted:#64748b;
  --jps-line:rgba(148,163,184,.24);
  --jps-card:#ffffff;
  --jps-soft:#f8fafc;
  max-width:1200px;
  margin:26px auto;
  padding:24px;
  border-radius:30px;
  color:var(--jps-ink);
  background:
    radial-gradient(circle at 0% 0%, rgba(37,99,235,.16), transparent 32%),
    radial-gradient(circle at 100% 8%, rgba(124,58,237,.16), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 48%,#f6f7fb 100%);
  box-shadow:0 24px 70px rgba(15,23,42,.08);
  border:1px solid rgba(148,163,184,.18);
}
.jps-ep-wrap h1,.jps-ep-wrap h2,.jps-ep-wrap h3{color:var(--jps-ink);}
.jps-ep-wrap h1,.jps-ep-wrap h2{letter-spacing:-.035em;}

/* Premium hero */
.jps-ep-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.34), transparent 22%),
    radial-gradient(circle at 88% 12%, rgba(6,182,212,.38), transparent 24%),
    linear-gradient(135deg,#1d4ed8 0%,#6d28d9 47%,#db2777 100%) !important;
  color:#fff;
  border:0;
  border-radius:30px;
  padding:32px;
  box-shadow:0 28px 75px rgba(37,99,235,.28), inset 0 1px 0 rgba(255,255,255,.28);
}
.jps-ep-hero:before{
  content:"";
  position:absolute;
  inset:auto -70px -95px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(255,255,255,.15);
  filter:blur(2px);
}
.jps-ep-hero:after{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.55),transparent 82%);
  pointer-events:none;
}
.jps-ep-hero > *{position:relative;z-index:1;}
.jps-ep-hero h2{font-size:clamp(30px,4vw,50px)!important;line-height:1.02!important;margin-bottom:10px!important;text-shadow:0 5px 20px rgba(0,0,0,.18);}
.jps-ep-hero p{font-size:15px;line-height:1.65;color:rgba(255,255,255,.88)!important;}
.jps-ep-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:rgba(255,255,255,.9)!important;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  padding:7px 12px;
  margin-bottom:12px!important;
  backdrop-filter:blur(10px);
}
.jps-ep-kicker:before{content:"✦";font-size:12px;}
.jps-ep-hero-badge{
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(14px);
}

/* Commercial action cards */
.jps-ep-action-grid{gap:18px;margin:22px 0 26px;}
.jps-ep-action-card{
  position:relative;
  overflow:hidden;
  min-height:148px;
  border:1px solid rgba(148,163,184,.22)!important;
  border-radius:24px!important;
  padding:22px 20px 20px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 18px 45px rgba(15,23,42,.08)!important;
  color:var(--jps-ink)!important;
  backdrop-filter:blur(14px);
}
.jps-ep-action-card:before{
  content:"";
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:17px;
  margin-bottom:16px;
  font-size:22px;
  color:#fff;
  background:linear-gradient(135deg,var(--card-a,#2563eb),var(--card-b,#7c3aed));
  box-shadow:0 14px 28px rgba(37,99,235,.24);
}
.jps-ep-action-card:after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-68px;
  top:-68px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--card-a,#2563eb),var(--card-b,#7c3aed));
  opacity:.10;
  transition:transform .24s ease,opacity .24s ease;
}
.jps-ep-action-card:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 28px 65px rgba(15,23,42,.14)!important;
  border-color:rgba(37,99,235,.28)!important;
}
.jps-ep-action-card:hover:after{transform:scale(1.2);opacity:.16;}
.jps-ep-action-card strong{font-size:18px!important;letter-spacing:-.02em;color:var(--jps-ink);}
.jps-ep-action-card span{font-size:14px;color:var(--jps-muted)!important;}
.jps-ep-action-card:nth-child(1){--card-a:#2563eb;--card-b:#06b6d4}.jps-ep-action-card:nth-child(1):before{content:"👤"}
.jps-ep-action-card:nth-child(2){--card-a:#7c3aed;--card-b:#db2777}.jps-ep-action-card:nth-child(2):before{content:"📁"}
.jps-ep-action-card:nth-child(3){--card-a:#10b981;--card-b:#14b8a6}.jps-ep-action-card:nth-child(3):before{content:"⏱"}
.jps-ep-action-card:nth-child(4){--card-a:#f59e0b;--card-b:#ef4444}.jps-ep-action-card:nth-child(4):before{content:"🎓"}
.jps-ep-action-card:nth-child(5){--card-a:#0ea5e9;--card-b:#2563eb}.jps-ep-action-card:nth-child(5):before{content:"✉️"}
.jps-ep-action-card:nth-child(6){--card-a:#8b5cf6;--card-b:#6366f1}.jps-ep-action-card:nth-child(6):before{content:"📜"}
.jps-ep-action-card:nth-child(7){--card-a:#ec4899;--card-b:#f43f5e}.jps-ep-action-card:nth-child(7):before{content:"💬"}
.jps-ep-action-card:nth-child(8){--card-a:#06b6d4;--card-b:#3b82f6}.jps-ep-action-card:nth-child(8):before{content:"🔔"}

/* KPI cards and progress */
.jps-ep-card,.jps-ep-progress-card,.jps-ep-form,.jps-ep-checklist,.jps-ep-policy-card,.jps-ep-admin-edit,.jps-ep-table-wrap{
  border:1px solid rgba(148,163,184,.20)!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 16px 42px rgba(15,23,42,.07)!important;
  border-radius:22px!important;
}
.jps-ep-card{position:relative;overflow:hidden;padding:20px!important;}
.jps-ep-card:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,#2563eb,#7c3aed,#06b6d4);}
.jps-ep-card strong{color:var(--jps-muted)!important;text-transform:uppercase;letter-spacing:.06em;font-size:12px!important;}
.jps-ep-card span{font-size:30px!important;background:linear-gradient(135deg,#1d4ed8,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.jps-ep-progress-card{padding:18px!important;}
.jps-ep-progress-head strong{color:var(--jps-ink);}
.jps-ep-progress-head span{color:#2563eb!important;font-weight:900;}
.jps-ep-progress-track{height:12px!important;background:#e5edf7!important;box-shadow:inset 0 1px 2px rgba(15,23,42,.08);}
.jps-ep-progress-fill{background:linear-gradient(90deg,#2563eb,#06b6d4,#10b981)!important;box-shadow:0 8px 18px rgba(37,99,235,.26);}

/* Forms, buttons */
.jps-ep-form{padding:26px!important;}
.jps-ep-form label{color:#334155!important;}
.jps-ep-form input,.jps-ep-form select,.jps-ep-form textarea,
.jps-ep-filter-form input,.jps-ep-filter-form select,
.jps-ep-timesheet-admin-form input,.jps-ep-timesheet-admin-form select,.jps-ep-timesheet-admin-form textarea{
  border:1px solid rgba(148,163,184,.32)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 1px 0 rgba(15,23,42,.03);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.jps-ep-form input:focus,.jps-ep-form select:focus,.jps-ep-form textarea:focus,
.jps-ep-filter-form input:focus,.jps-ep-filter-form select:focus{
  outline:none!important;
  border-color:#2563eb!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.13)!important;
}
.jps-ep-btn,.jps-ep-inline-form button{
  border:0!important;
  background:linear-gradient(135deg,#2563eb,#7c3aed)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(37,99,235,.25)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.jps-ep-btn:hover,.jps-ep-inline-form button:hover{
  transform:translateY(-2px);
  filter:saturate(1.08);
  box-shadow:0 18px 38px rgba(37,99,235,.32)!important;
}

/* Tables */
.jps-ep-table th{
  background:linear-gradient(180deg,#f8fbff,#eef4ff)!important;
  color:#334155!important;
  font-weight:900!important;
}
.jps-ep-table td{color:#334155;}
.jps-ep-table tr:hover td{background:#f8fbff;}
.jps-ep-status{
  border:1px solid rgba(37,99,235,.18)!important;
  color:#1d4ed8!important;
  background:#eff6ff!important;
  font-weight:850!important;
}
.jps-ep-pill{border:1px solid rgba(148,163,184,.25)!important;background:#f8fafc!important;color:#334155!important;}
.jps-ep-pill.is-ok{background:#ecfdf5!important;border-color:#a7f3d0!important;color:#047857!important;}
.jps-ep-pill.is-missing{background:#fef2f2!important;border-color:#fecaca!important;color:#b91c1c!important;}

/* Alerts and notices */
.jps-ep-success{background:linear-gradient(135deg,#ecfdf5,#f0fdfa)!important;border-color:#a7f3d0!important;color:#047857!important;}
.jps-ep-warning{background:linear-gradient(135deg,#fffbeb,#fff7ed)!important;border-color:#fed7aa!important;color:#9a3412!important;}
.jps-ep-alert{background:linear-gradient(135deg,#fef2f2,#fff1f2)!important;border-color:#fecaca!important;color:#b91c1c!important;}
.jps-ep-alert-item{border-radius:18px!important;box-shadow:0 15px 36px rgba(15,23,42,.07)!important;}
.jps-ep-alert-item.is-danger{border-left-color:#ef4444!important;background:linear-gradient(135deg,#fff,#fef2f2)!important;}
.jps-ep-alert-item.is-warning{border-left-color:#f59e0b!important;background:linear-gradient(135deg,#fff,#fffbeb)!important;}
.jps-ep-alert-item.is-info{border-left-color:#2563eb!important;background:linear-gradient(135deg,#fff,#eff6ff)!important;}

/* Onboarding timeline */
.jps-ep-timeline-step{border-radius:18px!important;box-shadow:0 14px 35px rgba(15,23,42,.07)!important;}
.jps-ep-timeline-step span{width:18px!important;height:18px!important;box-shadow:0 0 0 6px rgba(148,163,184,.12);}
.jps-ep-timeline-step.is-done{background:linear-gradient(135deg,#ecfdf5,#fff)!important;border-color:#a7f3d0!important;}
.jps-ep-timeline-step.is-current{background:linear-gradient(135deg,#fff7ed,#fff)!important;border-color:#fed7aa!important;}

/* Responsive polish */
@media(max-width:900px){
  .jps-ep-wrap{margin:12px auto;padding:14px;border-radius:22px;}
  .jps-ep-hero{padding:24px;border-radius:24px;}
  .jps-ep-action-card{min-height:132px;}
}
@media(prefers-reduced-motion:reduce){
  .jps-ep-action-card,.jps-ep-btn,.jps-ep-form input,.jps-ep-form select,.jps-ep-form textarea{transition:none!important;}
  .jps-ep-action-card:hover,.jps-ep-btn:hover{transform:none!important;}
}
