/* PetroHub Home Dashboard — ultra-clean polish */

.ph-home-dashboard-wrap{

  width:100%;

  max-width:1260px;

  margin:14px auto 18px;

  box-sizing:border-box;

}



.ph-home-console-bar{

  display:flex;

  justify-content:space-between;

  align-items:center;

  gap:16px;

}

.ph-home-console-bar__eyebrow{

  display:block;

  font-size:10px;

  letter-spacing:.12em;

  text-transform:uppercase;

  font-weight:800;

  color:#64748b;

  margin-bottom:5px;

}

.ph-home-console-bar h2{

  margin:0;

  font-size:26px;

  line-height:1.02;

  color:#0b2340;

}

.ph-home-console-bar p{

  margin:5px 0 0;

  font-size:13px;

  line-height:1.4;

  color:#64748b;

  max-width:580px;

}

.ph-home-console-bar__status{

  display:inline-flex;

  align-items:center;

  gap:8px;

  min-height:34px;

  padding:0 13px;

  border-radius:999px;

  background:#fff;

  border:1px solid #dde5ee;

  box-shadow:0 4px 14px rgba(15,23,42,.04);

  font-size:12px;

  font-weight:800;

  color:#0b2340;

  white-space:nowrap;

}

.ph-live-dot{

  width:8px;

  height:8px;

  border-radius:999px;

  background:#22c55e;

  box-shadow:0 0 0 3px rgba(34,197,94,.16);

}



.ph-home-kpi-bar{

  display:grid;

  grid-template-columns:repeat(5,minmax(0,1fr));

  gap:10px;

  margin-bottom:14px;

}

.ph-kpi-card{

  background:linear-gradient(180deg,#102847 0%,#0b2340 100%);

  border:1px solid rgba(255,255,255,.06);

  border-radius:14px;

  padding:12px 14px 13px;

  color:#fff;

  box-shadow:0 8px 20px rgba(11,35,64,.12);

}

.ph-kpi-label{

  display:block;

  font-size:10px;

  letter-spacing:.08em;

  text-transform:uppercase;

  color:rgba(255,255,255,.72);

  margin-bottom:7px;

  font-weight:800;

}

.ph-kpi-value{

  display:block;

  font-size:28px;

  line-height:1;

  font-weight:900;

  color:#f4ca49;

}

.ph-kpi-note{

  display:block;

  margin-top:7px;

  font-size:11px;

  color:rgba(255,255,255,.70);

  font-weight:700;

}



.ph-home-terminal-layout{

  display:grid;

  grid-template-columns:minmax(0,2.2fr) minmax(300px,.9fr);

  gap:14px;

  align-items:start;

}

.ph-home-primary-stage{display:flex;flex-direction:column;gap:14px;}



.ph-featured-market,

.ph-terminal-tile{

  position:relative;

  display:block;

  overflow:hidden;

  border-radius:16px;

  text-decoration:none;

  color:inherit;

  border:1px solid #dee6ee;

  background:#fff;

  box-shadow:0 4px 14px rgba(15,23,42,.05);

  background-image:var(--ph-tile-bg);

  background-repeat:no-repeat;

  background-position:center;

  background-size:var(--ph-tile-bg-mode,cover);

  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;

}

.ph-featured-market:hover,

.ph-terminal-tile:hover{

  transform:translateY(-1px);

  box-shadow:0 10px 22px rgba(15,23,42,.09);

  border-color:#ced8e3;

}

.ph-featured-market:focus-visible,

.ph-terminal-tile:focus-visible{

  outline:none;

  box-shadow:0 0 0 4px rgba(244,202,73,.24),0 10px 22px rgba(15,23,42,.09);

}

.ph-featured-market{min-height:276px;}

.ph-featured-market__overlay,

.ph-terminal-tile__overlay{

  position:absolute;

  inset:0;

  background:linear-gradient(280deg, rgb(155 150 133 / 17%) 0%, rgb(11 35 64) 100%);

}

.ph-featured-market__body,

.ph-terminal-tile__body{

  position:relative;

  display:flex;

  flex-direction:column;

  height:100%;

  padding:18px;

}

.ph-featured-market__body{justify-content:flex-end;gap:8px;}

.ph-featured-market__eyebrow,

.ph-terminal-tile__eyebrow{

  display:block;

  font-size:10px;

  letter-spacing:.1em;

  text-transform:uppercase;

  font-weight:800;

  color:#607184;

}

.ph-featured-market__title{

  font-size:42px;

  line-height:1;

  letter-spacing:.045em;

  text-transform:uppercase;

  font-weight:900;

  color:#102847;

}

.ph-featured-market__stats{

  display:block;

  font-size:15px;

  color:#bcc0a9;

  font-weight:700;

}

.ph-featured-market__chips{

  display:flex;

  flex-wrap:wrap;

  gap:8px;

  margin-top:2px;

}

.ph-market-chip{

  display:inline-flex;

  flex-direction:column;

  justify-content:center;

  gap:2px;

  min-width:86px;

  padding:9px 11px;

  border-radius:12px;

  background:rgba(255,255,255,.76);

  border:1px solid rgba(11,35,64,.08);

  backdrop-filter:blur(4px);

}

.ph-market-chip strong{

  font-size:18px;

  line-height:1;

  color:#0b2340;

}

.ph-market-chip em{

  font-style:normal;

  font-size:9px;

  letter-spacing:.1em;

  text-transform:uppercase;

  font-weight:900;

  color:##192c42;

}

.ph-featured-market__cta,

.ph-terminal-tile__cta{

  display:inline-flex;

  align-items:center;

  gap:6px;

  margin-top:auto;

  font-size:12px;

  font-weight:800;

  color:#eceff3;

}



.ph-home-secondary-grid{

  display:grid;

  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:12px;

}

.ph-terminal-tile{min-height:156px;}

.ph-terminal-tile-sm{min-height:124px;}

.ph-terminal-tile-xl{min-height:188px;}

.ph-terminal-tile__body{justify-content:flex-end;gap:6px;}

.ph-terminal-tile__title{

  font-size:25px;

  line-height:1.03;

  letter-spacing:.045em;

  text-transform:uppercase;

  font-weight:900;

  color:#f8fafc;

}

.ph-terminal-tile-sm .ph-terminal-tile__title{font-size:18px;}

.ph-terminal-tile__summary{

  display:block;

  font-size:12px;

  line-height:1.35;

  color:#9fa7af;

  font-weight:500;

  max-width:28ch;
  
  padding-top:5px;

}



.ph-area-news,.ph-area-create_quote,.ph-area-initiation,.ph-area-my_quotes,.ph-area-drafts,.ph-area-my_company,.ph-area-privacy,.ph-area-terms{grid-column:span 1;}



.ph-home-side-rail{

  position:sticky;

  top:88px;

  display:flex;

  flex-direction:column;

  gap:14px;

}

.ph-side-card{

  background:#fff;

  border:1px solid #dee6ee;

  border-radius:16px;

  padding:16px;

  box-shadow:0 4px 14px rgba(15,23,42,.05);

}

.ph-side-card__head{margin-bottom:12px;}

.ph-side-card__eyebrow{

  display:block;

  font-size:10px;

  letter-spacing:.1em;

  text-transform:uppercase;

  color:#64748b;

  font-weight:800;

  margin-bottom:5px;

}

.ph-side-card h3{

  margin:0;

  font-size:22px;

  line-height:1.04;

  color:#0b2340;

}

.ph-task-list,.ph-activity-list{display:flex;flex-direction:column;gap:8px;}

.ph-task-item{

  display:flex;

  justify-content:space-between;

  align-items:center;

  gap:12px;

  padding:10px 11px;

  border-radius:12px;

  background:#f8fafc;

  border:1px solid #e8eef5;

}

.ph-task-item span{font-size:12px;font-weight:700;color:#415366;}

.ph-task-item strong{font-size:18px;line-height:1;color:#0b2340;}

.ph-activity-item{

  display:flex;

  gap:9px;

  align-items:flex-start;

  padding:9px 0;

  border-top:1px solid #edf2f7;

}

.ph-activity-item:first-child{border-top:0;padding-top:0;}

.ph-activity-dot{

  width:8px;height:8px;border-radius:999px;background:#f4ca49;flex:0 0 auto;margin-top:5px;

  box-shadow:0 0 0 3px rgba(244,202,73,.16);

}

.ph-activity-copy strong{display:block;font-size:12px;line-height:1.35;color:#0f172a;}

.ph-activity-copy span{display:block;font-size:11px;color:#64748b;margin-top:2px;font-weight:700;}

.ph-activity-empty{font-size:12px;color:#64748b;}



.ph-tile-badge{

  display:inline-flex;

  align-items:center;

  align-self:flex-start;

  min-height:24px;

  padding:0 9px;

  border-radius:999px;

  background:#bca96ecf;

  color:#0b2340;

  font-size:10px;

  font-weight:900;

  letter-spacing:.06em;

  text-transform:uppercase;

}

.ph-tile-badge--featured{background:#f4ca49;color:#0b2340;}



@media (max-width: 1180px){

  .ph-home-kpi-bar{grid-template-columns:repeat(3,minmax(0,1fr));}

  .ph-home-terminal-layout{grid-template-columns:1fr;}

  .ph-home-side-rail{position:relative;top:auto;}

}

@media (max-width: 860px){

  .ph-home-console-bar{flex-direction:column;align-items:flex-start;}

  .ph-home-kpi-bar{grid-template-columns:repeat(2,minmax(0,1fr));}

  .ph-home-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}

}

@media (max-width: 560px){

  .ph-home-dashboard-wrap{margin:12px auto 16px;}

  .ph-home-kpi-bar,.ph-home-secondary-grid{grid-template-columns:1fr;}

  .ph-featured-market__title{font-size:34px;}

  .ph-terminal-tile__title{font-size:22px;}

}





.ph-market-chip--link,

.ph-task-item--link,

.ph-activity-item--link,

.ph-side-card__title-link{

  text-decoration:none;

  color:inherit;

}

.ph-market-chip--link,

.ph-task-item--link,

.ph-activity-item--link{

  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background-color .12s ease;

}

.ph-market-chip--link:hover,

.ph-market-chip--link:focus-visible{

  transform:translateY(-1px);

  box-shadow:0 8px 18px rgba(15,23,42,.10);

  border-color:rgba(11,35,64,.16);

}

.ph-task-item--link:hover,

.ph-task-item--link:focus-visible{

  background:#ffffff;

  border-color:#d6e1ec;

  box-shadow:0 8px 16px rgba(15,23,42,.06);

}

.ph-activity-item--link:hover,

.ph-activity-item--link:focus-visible{

  background:#f8fafc;

  border-radius:10px;

  padding-left:8px;

  padding-right:8px;

  margin-left:-8px;

  margin-right:-8px;

}

.ph-side-card__title-link:hover,

.ph-side-card__title-link:focus-visible{

  color:#123a66;

}

.ph-activity-log-page{max-width:980px;margin:16px auto;}

.ph-side-card--activity-log .ph-activity-list--page{gap:0;}





/* v0.3.4 layout fix: avoid nested anchors in Market tile and keep chips in one row */

.ph-market-chip{

  text-decoration:none;

  color:inherit;

  align-items:flex-start;

}

.ph-market-chip--link:hover{

  transform:translateY(-1px);

  box-shadow:0 8px 18px rgba(15,23,42,.10);

  border-color:rgba(11,35,64,.14);

}

.ph-featured-market__cta--link{

  text-decoration:none;

}

.ph-featured-market__cta--link:hover{

  text-decoration:underline;

}





.ph-featured-market__title--link{

  display:inline-block;

  text-decoration:none;

  color:#e6eaef;

}

.ph-featured-market__title--link:hover{

  text-decoration:underline;

}



/* Hide top eyebrow labels on tiles */
.ph-terminal-tile__eyebrow,
.ph-featured-market__eyebrow{
  display:none !important;
}

/* v0.4.4 mobile premium compact pass */
@media (max-width: 560px){
  .ph-home-dashboard-wrap{margin:8px auto 12px;padding:0 2px;}

  .ph-home-console-bar{
    gap:8px;
    margin-bottom:8px;
    padding:0 2px;
  }
  .ph-home-console-bar__eyebrow{
    font-size:8px;
    margin-bottom:3px;
    letter-spacing:.14em;
  }
  .ph-home-console-bar h2{
    font-size:12px;
    line-height:1;
  }
  .ph-home-console-bar p{
    margin:2px 0 0;
    font-size:9px;
    line-height:1.25;
    max-width:none;
  }
  .ph-home-console-bar__status{
    min-height:24px;
    padding:0 9px;
    font-size:9px;
    border-radius:999px;
  }
  .ph-live-dot{
    width:6px;
    height:6px;
    box-shadow:0 0 0 2px rgba(34,197,94,.14);
  }

  .ph-home-kpi-bar{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:4px;
    margin-bottom:10px;
  }
  .ph-kpi-card{
    border-radius:8px;
    padding:5px 6px 6px;
    box-shadow:0 4px 10px rgba(11,35,64,.10);
  }
  .ph-kpi-label{
    font-size:4.8px;
    line-height:1.1;
    margin-bottom:4px;
    letter-spacing:.06em;
  }
  .ph-kpi-value{
    font-size:18px;
    line-height:.95;
  }
  .ph-kpi-note{
    margin-top:3px;
    font-size:5.6px;
    line-height:1.15;
    letter-spacing:-.01em;
  }

  .ph-home-primary-stage,
  .ph-home-secondary-grid,
  .ph-home-side-rail{
    gap:10px;
  }

  .ph-home-secondary-grid{grid-template-columns:1fr;}

  .ph-featured-market,
  .ph-terminal-tile,
  .ph-side-card{
    border-radius:14px;
  }

  .ph-featured-market{min-height:220px;}
  .ph-featured-market__body,
  .ph-terminal-tile__body{
    padding:14px;
  }
  .ph-featured-market__body{gap:6px;}
  .ph-featured-market__title{
    font-size:24px;
    line-height:.96;
    letter-spacing:.035em;
  }
  .ph-featured-market__stats{
    font-size:10px;
    line-height:1.25;
  }
  .ph-featured-market__chips{
    gap:6px;
    margin-top:2px;
  }
  .ph-market-chip{
    min-width:0;
    flex:1 1 0;
    padding:7px 8px;
    border-radius:10px;
  }
  .ph-market-chip strong{
    font-size:16px;
  }
  .ph-market-chip em{
    font-size:8px;
    letter-spacing:.08em;
  }

  .ph-terminal-tile{min-height:132px;}
  .ph-terminal-tile-sm{min-height:112px;}
  .ph-terminal-tile-xl{min-height:152px;}
  .ph-terminal-tile__title{
    font-size:17px;
    line-height:1;
    letter-spacing:.035em;
  }
  .ph-terminal-tile-sm .ph-terminal-tile__title{font-size:15px;}
  .ph-terminal-tile__summary{
    font-size:10px;
    line-height:1.25;
    max-width:24ch;
    padding-top:2px;
  }

  .ph-featured-market__cta,
  .ph-terminal-tile__cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    min-height:28px;
    margin-top:auto;
    padding:0 10px;
    border-radius:999px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(3px);
    font-size:10px;
    line-height:1;
    color:#f8fafc;
    text-decoration:none;
  }

  .ph-tile-badge{
    min-height:20px;
    padding:0 8px;
    font-size:8px;
  }

  .ph-side-card{
    padding:12px;
  }
  .ph-side-card__head{margin-bottom:8px;}
  .ph-side-card__eyebrow{
    font-size:8px;
    margin-bottom:3px;
  }
  .ph-side-card h3{
    font-size:16px;
    line-height:1;
  }
  .ph-task-list,.ph-activity-list{gap:6px;}
  .ph-task-item{
    padding:8px 9px;
    border-radius:10px;
  }
  .ph-task-item span{font-size:10px;}
  .ph-task-item strong{font-size:15px;}
  .ph-activity-item{padding:7px 0;gap:7px;}
  .ph-activity-copy strong{font-size:10px;}
  .ph-activity-copy span{font-size:9px;}
}
