
/* ImmigWay v2.9.8 - Premium Applicant Portal + Live Case */

/* Applicant portal dashboard */
.premium-portal-dashboard{
  background:linear-gradient(180deg,#f7f9fc 0%,#f2f6fb 100%);
  min-height:calc(100vh - 120px);
}
.premium-portal-dashboard>.container{max-width:1060px}
.premium-portal-dashboard .eyebrow{font-size:10px;letter-spacing:.14em;font-weight:900}
.premium-portal-dashboard .applicant-portal-head{
  align-items:center;margin-bottom:18px;padding:0 2px
}
.premium-portal-dashboard .applicant-portal-identity{gap:16px}
.premium-portal-dashboard .applicant-avatar-xl{
  width:72px;height:72px;border-radius:20px;
  box-shadow:0 8px 22px rgba(25,54,90,.14);border:3px solid #fff
}
.premium-portal-dashboard .applicant-portal-head h1{
  margin:1px 0 4px;font-size:34px;line-height:1.05;letter-spacing:-.035em
}
.premium-portal-dashboard .applicant-portal-head p{margin:0;font-size:13px}
.premium-portal-dashboard .applicant-portal-head>a{
  padding:8px 11px;border-radius:9px;border:1px solid #dce5ef;
  background:#fff;font-size:11px;font-weight:800
}

.portal-live-banner{
  display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:center;
  margin:0 0 16px;padding:13px 15px;border:1px solid #add9be;border-radius:14px;
  background:linear-gradient(180deg,#fbfffc,#f4fbf7);
  box-shadow:0 6px 18px rgba(20,111,65,.04)
}
.portal-live-dot{
  width:10px;height:10px;border-radius:50%;background:#1d9b5b;
  box-shadow:0 0 0 5px rgba(29,155,91,.09)
}
.portal-live-copy small{
  display:block;font-size:8px;letter-spacing:.11em;font-weight:900;color:#187747
}
.portal-live-copy strong{display:block;margin-top:1px;font-size:14px;color:#163525}
.portal-live-copy span{display:block;margin-top:2px;font-size:11px;color:#667c70}
.portal-live-banner .btn{font-size:11px;padding:8px 11px}

.premium-portal-dashboard .stats{
  grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px
}
.premium-portal-dashboard .stat{
  padding:15px 16px;border:1px solid #e0e7f0;border-radius:14px;
  background:#fff;box-shadow:0 6px 16px rgba(23,45,74,.035)
}
.premium-portal-dashboard .stat strong{font-size:24px;line-height:1;color:#17263b}
.premium-portal-dashboard .stat span{margin-top:5px;font-size:11px;color:#6e7d90}

.premium-portal-dashboard .profile-photo-panel{
  display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 16px;
  padding:16px 18px;border:1px solid #dbe5f1;border-radius:15px;
  background:linear-gradient(180deg,#f9fbfe,#f5f8fc);
  box-shadow:0 5px 16px rgba(25,50,80,.03)
}
.premium-portal-dashboard .profile-photo-copy .eyebrow{font-size:9px}
.premium-portal-dashboard .profile-photo-copy h3{margin:3px 0 5px;font-size:15px}
.premium-portal-dashboard .profile-photo-copy p{
  margin:0;font-size:11px;line-height:1.55;color:#65768a
}
.premium-portal-dashboard .profile-photo-actions{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end
}
.premium-portal-dashboard .profile-photo-actions form{display:flex;gap:7px;align-items:center}
.premium-portal-dashboard .profile-photo-actions small{
  width:100%;text-align:right;font-size:9px;color:#7a8799
}
.premium-portal-dashboard .profile-photo-file,
.premium-portal-dashboard .profile-photo-actions .btn{
  font-size:10px!important;border-radius:8px!important;padding:7px 9px!important
}

.premium-portal-dashboard .dashboard-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px
}
.premium-portal-dashboard .dashboard-grid>.panel{
  position:relative;padding:18px 18px 18px 60px!important;
  border:1px solid #dfe7f1!important;border-radius:15px!important;
  background:#fff!important;box-shadow:0 7px 20px rgba(25,50,80,.035)!important;
  min-height:154px
}
.premium-portal-dashboard .dashboard-grid>.panel:before{
  position:absolute;left:17px;top:17px;width:32px;height:32px;border-radius:10px;
  display:grid;place-items:center;background:#edf4ff;color:#1767d9;
  font-size:13px;font-weight:900
}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(1):before{content:"✓"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(2):before{content:"▣"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(3):before{content:"→"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(4):before{content:"£"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(5):before{content:"↗";background:#e4f6eb;color:#177b4a}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(6):before{content:"✉"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(7):before{content:"•"}
.premium-portal-dashboard .dashboard-grid>.panel:nth-child(5){
  border-color:#b8dec8!important;
  background:linear-gradient(180deg,#fbfffc,#f7fcf9)!important
}
.premium-portal-dashboard .dashboard-grid>.panel h3{
  margin:1px 0 7px;font-size:16px;line-height:1.25
}
.premium-portal-dashboard .dashboard-grid>.panel p{
  margin:0 0 10px;font-size:11px;line-height:1.6;color:#64758a
}
.premium-portal-dashboard .dashboard-grid>.panel .btn{
  font-size:10px;padding:8px 10px;border-radius:8px
}
.premium-portal-dashboard .portal-card-actions{display:flex;gap:7px;flex-wrap:wrap}

/* Applicant live case */
.portal-page-head{
  align-items:center!important;margin-bottom:18px!important;padding:0 2px
}
.portal-page-head h1{
  margin:4px 0 5px!important;font-size:32px!important;
  line-height:1.05!important;letter-spacing:-.035em!important
}
.portal-page-head p{margin:0!important;font-size:12px!important;color:#66768a!important}
.portal-page-head>.btn{
  padding:9px 12px!important;border-radius:9px!important;font-size:10px!important
}

.portal-case-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;margin-bottom:14px!important
}
.portal-case-summary>div{
  padding:13px 14px!important;border:1px solid #e2e9f2;
  border-radius:12px!important;background:#fff!important;
  box-shadow:0 5px 14px rgba(24,47,77,.025)
}
.portal-case-summary small{font-size:8px!important;letter-spacing:.08em!important}
.portal-case-summary strong{font-size:11px!important;margin-top:4px!important}

.portal-case-layout{
  grid-template-columns:minmax(0,1fr) 270px!important;
  gap:14px!important
}
.portal-case-main{gap:14px!important}
.portal-case-main>.panel,
.portal-case-side>.panel{
  border:1px solid #dfe7f1!important;border-radius:15px!important;
  box-shadow:0 7px 20px rgba(24,48,80,.035)!important;background:#fff!important
}
.portal-case-main>.panel{padding:18px 20px!important}
.portal-case-main>.panel>h2{
  margin:5px 0 14px!important;font-size:21px!important;letter-spacing:-.02em!important
}
.portal-case-main>.panel>.eyebrow{font-size:9px!important;letter-spacing:.12em!important}

.milestone{grid-template-columns:28px 1fr!important;gap:10px!important;padding:11px 0!important}
.milestone-mark{
  width:24px!important;height:24px!important;border-width:1.5px!important;font-size:9px!important
}
.milestone strong{font-size:11px!important}
.milestone p{font-size:10px!important;margin:2px 0!important}
.milestone small{font-size:9px!important}
.milestone-current{
  position:relative;margin:2px -8px;padding:11px 8px!important;
  border:1px solid #abd8bd!important;border-radius:11px!important;
  background:#f5fbf7!important
}
.milestone-current:after{
  content:"CURRENT";position:absolute;right:9px;top:9px;
  padding:3px 6px;border-radius:999px;background:#e6f5ec;color:#177747;
  font-size:7px;font-weight:900;letter-spacing:.08em
}
.milestone-current .milestone-mark{
  background:#e4f6eb!important;border-color:#54ad7a!important;color:#177747!important
}
.milestone-completed{opacity:.82}

.portal-case-side .panel{
  padding:18px!important;gap:8px!important;position:sticky;top:90px
}
.portal-case-side .panel h2,
.portal-case-side .panel h3{
  margin:0 0 6px!important;font-size:16px!important;line-height:1.25
}
.portal-case-side .panel p{
  margin:0 0 8px!important;font-size:11px!important;
  line-height:1.55!important;color:#68788b!important
}
.portal-case-side .panel .btn{
  padding:8px 10px!important;border-radius:8px!important;font-size:10px!important
}

.message-thread{gap:8px!important;max-height:500px!important}
.message-bubble{padding:9px 11px!important;border-radius:11px!important}
.message-bubble p{font-size:11px!important}
.message-bubble>small,.message-author{font-size:9px!important}
.message-compose textarea{
  border-radius:9px!important;font-size:11px!important;padding:9px 10px!important
}

@media(max-width:980px){
  .premium-portal-dashboard .dashboard-grid{grid-template-columns:1fr}
  .portal-case-layout{grid-template-columns:1fr!important}
  .portal-case-side .panel{position:static}
}
@media(max-width:760px){
  .premium-portal-dashboard .stats{grid-template-columns:1fr 1fr}
  .premium-portal-dashboard .profile-photo-panel{grid-template-columns:1fr}
  .premium-portal-dashboard .profile-photo-actions{justify-content:flex-start}
  .premium-portal-dashboard .profile-photo-actions small{text-align:left}
  .portal-live-banner{grid-template-columns:12px 1fr}
  .portal-live-banner .btn{grid-column:1/-1}
}
@media(max-width:560px){
  .premium-portal-dashboard .applicant-avatar-xl{width:60px;height:60px;border-radius:16px}
  .premium-portal-dashboard .applicant-portal-head h1{font-size:28px}
  .premium-portal-dashboard .dashboard-grid>.panel{padding:15px 15px 15px 54px!important}
  .premium-portal-dashboard .stats{grid-template-columns:1fr 1fr}
  .portal-case-summary{grid-template-columns:1fr 1fr!important}
  .portal-page-head h1{font-size:27px!important}
}
