/* Shared component layer kept intentionally small; page/layout rules live under desktop/ and mobile/. */
.fij-public-shell svg[aria-hidden="true"],.fj-auth svg[aria-hidden="true"]{pointer-events:none}
.fij-public-shell main svg:not([width]):not(.fij-unbounded-svg),.fj-auth main svg:not([width]):not(.fij-unbounded-svg){max-width:100%;height:auto}
.fij-qr svg,.fij-two-factor-qr svg,.fij-auth-qr svg{max-width:none;max-height:none}

/* UP1758: bottom app bar guard is in core so it is protected even before the mobile view CSS loads. */
.fij-mobile-bottom-nav{display:none;box-sizing:border-box}
.fij-mobile-bottom-nav,.fij-mobile-bottom-nav *{box-sizing:border-box}
.fij-mobile-bottom-nav svg,.fij-mobile-bottom-nav__item svg,.fij-appbar-icon{display:block!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important;max-height:22px!important;flex:0 0 22px!important;overflow:visible!important}
.fij-mobile-bottom-nav__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.fij-mobile-bottom-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;overflow:hidden;text-align:center;line-height:1.1;text-decoration:none}
.fij-mobile-bottom-nav__item span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:860px){.fij-mobile-bottom-nav{display:block;position:fixed;left:0;right:0;bottom:0;z-index:150;background:#fff;border-top:1px solid var(--fj-line);padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -14px 34px rgba(16,22,37,.12)}.fij-mobile-bottom-nav__item{color:#64748b;font-size:11px;font-weight:850}.fij-mobile-bottom-nav__item.is-active{color:var(--fj-teal-dark);background:var(--fj-mint)}}
@media (min-width:861px){.fij-mobile-bottom-nav{display:none!important}}

/* UP1759 consolidated polish */
.fij-polished-card,
.fij-job-card,
.fij-company-list-item,
.fij-article-row{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.fij-job-card:hover,
.fij-company-list-item:hover,
.fij-article-row:hover{transform:translateY(-2px);box-shadow:var(--fj-card-shadow-hover);border-color:var(--fj-line-strong)}
.fij-public-shell .hero,.fij-public-shell .fjx-hero{isolation:isolate}
.fij-public-shell .hero::before,.fij-public-shell .fjx-hero::before{content:"";position:absolute;right:8%;top:12%;width:280px;height:280px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.035);transform:rotate(12deg);z-index:0;pointer-events:none}
.fij-public-shell .hero .container,.fij-public-shell .fjx-hero .container{position:relative;z-index:1}

/* UP1760 components: buttons logo hero */
/* Brand lockup alignment */
.fij-brand-lockup,.fij-public-brand,.fij-auth-brand,.fij-footer-brand{display:inline-flex!important;align-items:center!important;gap:10px!important;line-height:1!important;text-decoration:none!important;white-space:nowrap}
.fij-brand-lockup-mark{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:32px;height:32px;line-height:1;overflow:hidden}
.fij-brand-lockup-mark svg{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;overflow:visible}
.fij-brand-lockup-text,.fij-brand-lockup-text-v1683{display:inline-block!important;font-family:"Prompt",Inter,ui-sans-serif,system-ui,sans-serif!important;font-weight:900!important;letter-spacing:-.055em!important;line-height:1!important;color:currentColor!important;transform:translateY(.5px)}
.fij-clap-frame{fill:#ffffff}.fij-clap-top{fill:var(--fj-orange)}.fij-clap-cut{fill:var(--fj-navy)}.fij-clap-body{fill:#ffffff}.fij-clap-line{stroke:var(--fj-navy);stroke-width:4;stroke-linecap:square}.fij-clap-accent{fill:var(--fj-teal)}

/* Unified button system: square, offset-shadow, animated hover. */
.fij-public-shell .btn,.fij-public-shell .button,.fij-public-shell button[type="submit"],.fij-public-shell input[type="submit"],.fij-public-shell .fij-home-btn-primary,.fij-public-shell .fij-home-btn-secondary,.fij-public-shell .fij-join-primary,.fij-public-shell .fij-join-secondary,.fij-public-shell .fij-nav-action,.fij-public-shell .fij-view-role,.fij-public-shell .fij-company-action,.fij-public-shell .fij-list-link,.fj-auth .btn,.fj-auth button[type="submit"],.fj-auth input[type="submit"]{
  --fj-local-shadow:var(--fj-btn-shadow);
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:0!important;border:1px solid var(--fj-navy)!important;background:var(--fj-navy)!important;color:#fff!important;font-family:"Prompt",Inter,ui-sans-serif,system-ui,sans-serif!important;font-weight:900!important;letter-spacing:-.018em!important;text-decoration:none!important;min-height:42px;padding:10px 17px;box-shadow:9px 9px 0 var(--fj-local-shadow);transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;cursor:pointer;line-height:1.05;appearance:none;-webkit-appearance:none;
}
.fij-public-shell .btn:hover,.fij-public-shell .button:hover,.fij-public-shell button[type="submit"]:hover,.fij-public-shell input[type="submit"]:hover,.fij-public-shell .fij-home-btn-primary:hover,.fij-public-shell .fij-home-btn-secondary:hover,.fij-public-shell .fij-join-primary:hover,.fij-public-shell .fij-join-secondary:hover,.fij-public-shell .fij-nav-action:hover,.fij-public-shell .fij-view-role:hover,.fij-public-shell .fij-company-action:hover,.fij-public-shell .fij-list-link:hover,.fj-auth .btn:hover,.fj-auth button[type="submit"]:hover,.fj-auth input[type="submit"]:hover{transform:translate(-2px,-2px);box-shadow:13px 13px 0 var(--fj-btn-shadow-strong)}
.fij-public-shell .btn.ghost,.fij-public-shell .btn.secondary,.fij-public-shell .button.secondary,.fij-public-shell .fij-home-btn-secondary,.fij-public-shell .fij-join-secondary,.fij-public-shell .fij-nav-action:not(.fij-nav-action-primary){background:#fff!important;color:var(--fj-navy)!important;border-color:var(--fj-navy)!important;--fj-local-shadow:#edf8f5}
.fij-public-shell .fij-nav-action-primary,.fij-public-shell .fij-home-search button,.fij-public-shell .fij-jobs-search button[type="submit"],.fij-public-shell .fij-companies-search button[type="submit"],.fij-public-shell .fij-unified-public-search button[type="submit"],.fj-auth .btn.full,.fj-auth button[type="submit"]{background:var(--fj-teal)!important;border-color:var(--fj-navy)!important;color:#06151a!important;--fj-local-shadow:var(--fj-btn-shadow-warm)}
.fij-public-shell .fij-list-link,.fij-public-shell .fij-view-role,.fij-public-shell .fij-company-action{min-height:34px;padding:8px 12px;font-size:12px;background:#fff!important;color:var(--fj-navy)!important;--fj-local-shadow:#e7f5f1;box-shadow:6px 6px 0 var(--fj-local-shadow)}
.fij-public-shell .fij-list-link:hover,.fij-public-shell .fij-view-role:hover,.fij-public-shell .fij-company-action:hover{box-shadow:9px 9px 0 var(--fj-btn-shadow-strong)}
.fij-public-shell .fij-home-search button,.fij-public-shell .fij-jobs-search button,.fij-public-shell .fij-companies-search button,.fij-public-shell .fij-unified-public-search button{box-shadow:5px 5px 0 #ffd9ca;min-height:43px;padding-inline:18px}

/* Film-craft hero backgrounds: subtle production motifs, no stock-photo dependency. */
.fij-home-hero,.fij-public-shell .hero,.fij-public-shell .fjx-hero,.fij-auth-brand-panel{position:relative;overflow:hidden;isolation:isolate}
.fij-home-hero::before,.fij-public-shell .hero::before,.fij-public-shell .fjx-hero::before,.fij-auth-brand-panel::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:
  radial-gradient(circle at 18% 24%,rgba(37,185,143,.18) 0 0,transparent 145px),
  radial-gradient(circle at 78% 30%,rgba(255,106,58,.15) 0 0,transparent 120px),
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
  linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,auto,56px 56px,56px 56px;opacity:.88}
.fij-home-hero::after,.fij-public-shell .hero::after,.fij-public-shell .fjx-hero::after,.fij-auth-brand-panel::after{content:"";position:absolute;right:clamp(18px,8vw,140px);top:clamp(48px,10vw,110px);width:clamp(210px,25vw,430px);height:clamp(210px,25vw,430px);z-index:0;opacity:.28;pointer-events:none;background-repeat:no-repeat;background-size:contain;background-position:center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='10' stroke-linecap='square' stroke-linejoin='miter'%3E%3Crect x='58' y='72' width='304' height='205'/%3E%3Cpath d='M58 132h304M92 72l42 60M168 72l42 60M244 72l42 60M320 72l42 60M116 318h188M162 278v40M258 278v40'/%3E%3Ccircle cx='314' cy='220' r='34'/%3E%3Cpath d='M94 202h104M94 234h75'/%3E%3C/g%3E%3C/svg%3E")}
.fij-home-hero > *,.fij-public-shell .hero > *,.fij-public-shell .fjx-hero > *,.fij-auth-brand-panel > *{position:relative;z-index:1}
.fij-jobs-hero::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='11' stroke-linecap='square' stroke-linejoin='miter'%3E%3Crect x='68' y='112' width='284' height='184'/%3E%3Cpath d='M118 112V78h184v34M96 162h228M96 214h228M96 266h138M126 80l34 32M212 80l34 32M298 80l34 32'/%3E%3C/g%3E%3C/svg%3E")}
.fij-companies-hero::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='11' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M78 330V126h108v204M186 330V82h156v248'/%3E%3Cpath d='M110 170h32M110 220h32M110 270h32M226 132h36M226 182h36M226 232h36M226 282h36M300 132h22M300 182h22M300 232h22M300 282h22'/%3E%3C/g%3E%3C/svg%3E")}
.fij-career-hub-hero::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='10' stroke-linecap='square' stroke-linejoin='miter'%3E%3Crect x='82' y='76' width='256' height='268'/%3E%3Cpath d='M124 132h172M124 176h140M124 220h172M124 264h112M166 344v-46M254 344v-46'/%3E%3C/g%3E%3C/svg%3E")}
.fij-auth-brand-panel::after{opacity:.20;right:-54px;top:92px;width:520px;height:520px;transform:rotate(-8deg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 520'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='12' stroke-linecap='square' stroke-linejoin='miter'%3E%3Crect x='90' y='110' width='340' height='220'/%3E%3Cpath d='M90 176h340M132 110l54 66M228 110l54 66M324 110l54 66M150 382h220M204 330v52M316 330v52M142 256h132M142 292h92'/%3E%3C/g%3E%3C/svg%3E")}

/* Refined list cards after the design-system pass. */
.fij-job-card,.fij-company-list-item,.fij-article-row{border-radius:0!important;background:#fff;border:1px solid var(--fj-line);box-shadow:0 14px 38px rgba(16,18,35,.06)}
.fij-job-card:hover,.fij-company-list-item:hover,.fij-article-row:hover{transform:translate(-1px,-2px);box-shadow:13px 13px 0 #dff5ef,0 20px 54px rgba(16,18,35,.08)}
.fij-kicker,.eyebrow{font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--fj-teal)}

/* UP1762 - global breadcrumb and pagination alignment */
.fij-public-breadcrumb,
.fij-breadcrumbs,
.fij-mobile-breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  width:min(var(--fj-max),calc(100% - 36px));
  margin:18px auto 18px;
  padding:0;
  color:#6f7c8f;
  font-family:var(--fj-font);
  font-size:12px;
  font-weight:750;
  line-height:1.25;
  letter-spacing:.01em;
}
.fij-public-breadcrumb a,
.fij-breadcrumbs a,
.fij-mobile-breadcrumb a{color:#536173;text-decoration:none;border-bottom:1px solid transparent;}
.fij-public-breadcrumb a:hover,
.fij-breadcrumbs a:hover,
.fij-mobile-breadcrumb a:hover{color:var(--fj-teal-dark);border-bottom-color:var(--fj-teal-dark);}
.fij-breadcrumb-sep,
.fij-mobile-breadcrumb-sep{color:#a2adba;font-weight:700;}
.fij-breadcrumb-current,
.fij-mobile-breadcrumb-current{color:#2f3847;font-weight:850;max-width:70ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.fij-page > .fij-public-breadcrumb:first-child,
.fij-page > .fij-mobile-breadcrumb:first-child{margin-top:18px;margin-bottom:14px;}
.fij-public-shell .hero + .fij-public-breadcrumb,
.fij-public-shell .fjx-hero + .fij-public-breadcrumb{margin-top:18px;}

.fij-pagination-global{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px 18px;
  margin:28px 0 0;
  padding:0;
  color:#536173;
}
.fij-pagination-global-summary{margin:0;color:#647083;font-size:13px;font-weight:700;}
.fij-pagination-global-nav{display:flex;align-items:center;flex-wrap:wrap;gap:7px;}
.fij-pagination-global-nav a,
.fij-pagination-global-nav span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  min-height:34px;
  padding:7px 11px;
  border:1px solid #cbdad5;
  background:#fff;
  color:var(--fj-navy);
  font-size:13px;
  font-weight:850;
  line-height:1;
  text-decoration:none;
  border-radius:0;
  box-shadow:none;
}
.fij-pagination-global-nav a:hover{background:#effbf8;border-color:var(--fj-teal);color:var(--fj-teal-dark);box-shadow:4px 4px 0 #dff5ef;transform:translate(-1px,-1px);}
.fij-pagination-global-nav .is-current{background:var(--fj-navy);border-color:var(--fj-navy);color:#fff;box-shadow:4px 4px 0 #dff5ef;}
.fij-pagination-global-nav .is-disabled{background:#f3f7f6;color:#9aa7b4;border-color:#dfe8e5;cursor:not-allowed;}
.fij-pagination-global-nav .is-gap{border-color:transparent;background:transparent;color:#9aa7b4;min-width:20px;padding-inline:2px;}

@media (max-width:860px){
  .fij-public-breadcrumb,
  .fij-breadcrumbs,
  .fij-mobile-breadcrumb{width:min(100% - 28px,var(--fj-max));margin:12px auto 12px;font-size:11px;gap:5px;}
  .fij-breadcrumb-current,
  .fij-mobile-breadcrumb-current{max-width:52vw;}
  .fij-pagination-global{align-items:flex-start;margin-top:22px;gap:10px;}
  .fij-pagination-global-summary{width:100%;font-size:12px;}
  .fij-pagination-global-nav{gap:6px;}
  .fij-pagination-global-nav a,
  .fij-pagination-global-nav span{min-width:35px;min-height:36px;padding:8px 10px;font-size:12px;}
}

/* UP1763 - global Prompt typography and compact public UI enforcement */
.fij-public-shell,
.fij-public-shell input,
.fij-public-shell select,
.fij-public-shell textarea,
.fij-public-shell button,
.fij-public-shell .btn,
.fij-public-shell .button,
.fij-public-shell .card,
.fij-public-shell .meta-token,
.fij-public-shell .status-badge,
.fij-public-shell .eyebrow,
.fij-public-shell .fij-list-link,
.fij-public-shell .fij-pagination-global,
.fj-auth,
.fj-auth input,
.fj-auth select,
.fj-auth textarea,
.fj-auth button,
.fj-auth .btn,
.fj-auth .button,
.fj-auth .card,
.fj-auth .role-option,
.fj-auth label{font-family:var(--fj-font)!important;}
.fij-public-shell h1,
.fij-public-shell h2,
.fij-public-shell h3,
.fij-public-shell h4,
.fj-auth h1,
.fj-auth h2,
.fj-auth h3{font-family:var(--fj-font)!important;font-weight:900;letter-spacing:-.058em;}
.fij-public-shell p,
.fj-auth p{font-family:var(--fj-font)!important;font-weight:400;}
.fij-public-shell .btn,
.fij-public-shell button.btn,
.fij-public-shell a.btn,
.fij-public-shell .button,
.fij-public-shell .fij-list-action,
.fij-public-shell .fij-list-link,
.fij-public-shell .fij-pagination-global-nav a,
.fij-public-shell .fij-pagination-global-nav span,
.fj-auth .btn,
.fj-auth button{
  font-weight:900;
  border-radius:0!important;
  letter-spacing:-.01em;
}
.fij-public-shell .btn:not(.secondary):not(.ghost),
.fij-public-shell button.btn:not(.secondary):not(.ghost),
.fj-auth .btn:not(.secondary):not(.ghost),
.fj-auth button[type="submit"]{
  background:var(--fj-navy);
  border-color:var(--fj-navy);
  color:#fff;
  box-shadow:7px 7px 0 #dff5ef;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
}
.fij-public-shell .btn:not(.secondary):not(.ghost):hover,
.fij-public-shell button.btn:not(.secondary):not(.ghost):hover,
.fj-auth .btn:not(.secondary):not(.ghost):hover,
.fj-auth button[type="submit"]:hover{
  transform:translate(-2px,-2px);
  box-shadow:10px 10px 0 #b9eee2;
  background:var(--fj-purple);
  border-color:var(--fj-navy);
  color:#fff;
}
.fij-public-shell .btn.secondary,
.fij-public-shell .btn.ghost,
.fj-auth .btn.secondary,
.fj-auth .btn.ghost{
  box-shadow:5px 5px 0 #e7f5f1;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
.fij-public-shell .btn.secondary:hover,
.fij-public-shell .btn.ghost:hover,
.fj-auth .btn.secondary:hover,
.fj-auth .btn.ghost:hover{transform:translate(-1px,-1px);box-shadow:8px 8px 0 #c9f1e8;}
.fij-public-shell .meta-token,
.fij-public-shell .status-badge{
  font-size:11px;
  line-height:1.15;
  font-weight:750;
  letter-spacing:.002em;
}
.fij-public-shell .fij-inline-icon svg,
.fj-auth .fij-inline-icon svg{max-width:100%!important;max-height:100%!important;}
@media (max-width:860px){
  .fij-public-shell .btn,
  .fij-public-shell button.btn,
  .fj-auth .btn,
  .fj-auth button[type="submit"]{box-shadow:5px 5px 0 #dff5ef;min-height:38px;padding:9px 12px;}
  .fij-public-shell .btn:hover,
  .fij-public-shell button.btn:hover,
  .fj-auth .btn:hover,
  .fj-auth button[type="submit"]:hover{transform:translate(-1px,-1px);box-shadow:7px 7px 0 #b9eee2;}
}
