/* Oriential Recruitment V1.5.0
   Visual bridge from Oriential Theme 0.3.0.
   Reuses the current website foundation: exact corporate canvas, signature
   gradient, rounded neutral glass, eyebrow, button motion
   and compact island treatment. Recruitment remains a dashboard, not a copy
   of the public website navigation.
*/

:root{
  --ori-canvas:#06090D;
  --ori-surface-1:#0A0F15;
  --ori-surface-2:#0D141E;
  --ori-surface-3:#101B28;
  --ori-white:#fff;
  --ori-soft:#D8DEE7;
  --ori-purple:#883BD2;
  --ori-red:#D23C3B;
  --ori-cyan:#3BD0D2;
  --ori-gradient:linear-gradient(150deg,#D23C3B 0%,#883BD2 50%,#3BD0D2 100%);
  --ori-border:rgba(255,255,255,.12);
  --ori-border-soft:rgba(255,255,255,.07);
  --ori-muted:rgba(216,222,231,.58);
  --ori-ease:cubic-bezier(.22,.72,.23,1);
  --ori-font-headline:"Oriential Gotham","Gotham",Arial,Helvetica,sans-serif;
  --ori-font-body:"Exo 2",Arial,Helvetica,sans-serif;
}

/* Shared website atmosphere */
body{
  background:
    radial-gradient(520px circle at 13% 7%,rgba(136,59,210,.13),transparent 72%),
    radial-gradient(380px circle at 89% 11%,rgba(59,208,210,.06),transparent 72%),
    radial-gradient(360px circle at 30% 100%,rgba(210,60,59,.035),transparent 70%),
    var(--ori-canvas);
}
.pattern-atmosphere{
  height:min(440px,48vh)!important;
  background-size:720px auto!important;
  opacity:.032!important;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.92) 0%,rgba(0,0,0,.48) 48%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.92) 0%,rgba(0,0,0,.48) 48%,transparent 100%)!important;
}

/* Website glass component copied into Recruitment */
.glass-card,.ori-glass{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 70px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(16px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(135%)!important;
}
.glass-card:before,.ori-glass:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:220px;height:220px;
  left:var(--ori-glass-x,8%);
  top:var(--ori-glass-y,12%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(136,59,210,.18),rgba(59,208,210,.06) 48%,transparent 72%);
  filter:blur(22px);
  transform:translate(-50%,-50%);
  transition:left .8s var(--ori-ease),top .8s var(--ori-ease),opacity .5s;
  opacity:.48;
  pointer-events:none;
}
.glass-card:hover:before,.glass-card:focus-within:before,.ori-glass:hover:before,.ori-glass:focus-within:before{
  left:88%;top:74%;opacity:.72;
}

/* Website eyebrow */
.eyebrow{
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  color:rgba(216,222,231,.44)!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  line-height:1.3!important;
}
.eyebrow:before{
  content:"";
  position:relative;
  display:block;
  width:7px;height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--ori-purple);
  box-shadow:0 0 0 0 rgba(136,59,210,.34);
  animation:ori-recruit-dot-pulse 2.4s var(--ori-ease) infinite;
}
@keyframes ori-recruit-dot-pulse{
  0%,64%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(136,59,210,.34)}
  12%{transform:scale(1.08);box-shadow:0 0 0 7px rgba(136,59,210,0)}
}

/* Website button family, adapted to existing .btn markup */
.btn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:46px;
  padding-inline:18px;
  border-radius:999px!important;
  font-size:11px;
  font-weight:600!important;
  letter-spacing:.035em;
  transition:transform .2s var(--ori-ease),box-shadow .24s,background .24s,border-color .24s!important;
}
.btn:hover{transform:translateY(-2px)!important}
.btn:active{transform:translateY(0) scale(.97)!important}
.btn.primary{
  background:var(--ori-gradient)!important;
  background-size:170% 170%!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 12px 34px rgba(136,59,210,.17)!important;
  animation:ori-recruit-button-gradient 8s ease-in-out infinite;
}
.btn.ghost{
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.035)!important;
  color:#fff!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.btn.ghost:hover{background:rgba(255,255,255,.065)!important;box-shadow:0 12px 34px rgba(0,0,0,.18)!important}
.btn.compact{min-height:36px;padding-inline:14px;font-size:9.5px}
@keyframes ori-recruit-button-gradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* ---------------- Internal dashboard ---------------- */
.admin-layout{
  gap:14px!important;
  padding:12px!important;
}
.admin-sidebar{
  border-radius:28px!important;
  padding:18px 13px 14px!important;
  background:rgba(7,11,16,.44)!important;
}
.sidebar-brand{
  min-height:56px;
  display:flex;
  align-items:center;
  padding:0 8px 13px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.sidebar-brand img{width:148px!important}
.workspace-chip{
  margin-top:13px;
  border-radius:20px!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:none!important;
}
.workspace-mark{
  background:linear-gradient(145deg,rgba(136,59,210,.24),rgba(59,208,210,.07))!important;
  border-color:rgba(136,59,210,.45)!important;
}
.sidebar-section-label{
  color:rgba(216,222,231,.38)!important;
  letter-spacing:.12em!important;
}
.sidebar-item{
  min-height:46px;
  border-radius:15px!important;
  transition:transform .2s var(--ori-ease),background .2s,border-color .2s;
}
.sidebar-item:hover{transform:translateX(3px);background:rgba(255,255,255,.04)!important}
.sidebar-item.active{
  background:rgba(136,59,210,.12)!important;
  border-color:rgba(136,59,210,.45)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.sidebar-user{
  border-radius:18px!important;
  background:rgba(255,255,255,.022);
}
.admin-topbar{
  min-height:62px!important;
  margin:0 0 14px!important;
  padding:0 16px 0 20px!important;
  border-radius:28px!important;
  background:rgba(7,11,16,.44)!important;
}
.admin-topbar h2{font-size:18px!important;letter-spacing:-.03em}
.admin-topbar p{font-size:9px!important;color:rgba(216,222,231,.48)!important}
.admin-content{padding:18px 4px 36px!important}
.admin-page-head{
  margin-bottom:18px!important;
  padding:10px 4px 0!important;
  gap:26px!important;
}
.admin-page-head h1{
  margin-top:11px!important;
  font-family:var(--ori-font-headline)!important;
  font-size:clamp(36px,4vw,56px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
.admin-page-head>div:first-child>p{
  max-width:690px;
  margin-top:13px!important;
  color:rgba(216,222,231,.60)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.recruitment-source-actions{gap:7px!important}
.recruitment-source-actions .pill{border-radius:999px;background:rgba(255,255,255,.025)!important}

.metric-grid{
  gap:12px!important;
  margin-bottom:14px!important;
}
.metric-card{
  min-height:132px!important;
  padding:22px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:space-between!important;
  border-radius:24px!important;
  transition:transform .25s var(--ori-ease),border-color .25s;
}
.metric-card:hover{transform:translateY(-3px)}
.metric-card>strong{
  min-width:0!important;
  color:rgba(255,255,255,.28)!important;
  font-family:var(--ori-font-body)!important;
  font-size:10px!important;
  letter-spacing:.12em;
}
.metric-card>div{gap:5px!important}
.metric-card span{
  font-family:var(--ori-font-headline)!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1!important;
}
.metric-card small{
  white-space:normal!important;
  color:rgba(216,222,231,.48)!important;
  font-size:10px!important;
  line-height:1.45;
}
.metric-card:nth-child(1)>strong:after{content:"01"}
.metric-card:nth-child(2)>strong:after{content:"02"}
.metric-card:nth-child(3)>strong:after{content:"03"}
.metric-card:nth-child(4)>strong:after{content:"04"}
.metric-card>strong{font-size:0!important}
.metric-card>strong:after{font-size:9px}

/* Candidate list mirrors the website capability/service row rhythm */
.candidate-table{
  border-radius:28px!important;
  overflow:hidden;
  padding:8px!important;
}
.candidate-table-head{
  margin:0 0 2px;
  padding:14px 13px!important;
  border-bottom:1px solid rgba(255,255,255,.055)!important;
}
.candidate-table-head h2{font-size:20px!important}
.candidate-grid-header{
  margin:0 8px;
  padding-inline:8px!important;
  border-bottom:0!important;
}
.candidate-grid-body{display:grid;gap:0}
.candidate-grid{grid-template-columns:minmax(220px,1.55fr) minmax(112px,.8fr) minmax(118px,.82fr) minmax(142px,1fr) minmax(90px,.62fr) 238px!important}
.candidate-grid-row{
  position:relative;
  margin:0;
  padding:0 8px!important;
  min-height:78px!important;
  border-radius:18px;
  border-bottom:1px solid rgba(255,255,255,.055)!important;
  transition:background .28s var(--ori-ease),transform .28s var(--ori-ease)!important;
}
.candidate-grid-row:last-child{border-bottom:0!important}
.candidate-grid-row:hover{
  background:rgba(255,255,255,.045)!important;
  transform:translateX(5px);
}
.candidate-identity .avatar{
  width:42px!important;height:42px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,rgba(136,59,210,.44),rgba(59,208,210,.16))!important;
}
.candidate-identity strong{font-family:var(--ori-font-headline)!important;font-size:13px!important;letter-spacing:-.015em}
.candidate-cell>small{color:rgba(216,222,231,.48)!important}
.candidate-actions{gap:7px!important}
.action-link{
  border:0;
  background:transparent;
  color:rgba(216,222,231,.48);
  cursor:pointer;
  font-family:var(--ori-font-body);
  font-size:9px;
  font-weight:600;
  letter-spacing:.04em;
  padding:8px 5px;
}
.action-link:hover{color:#fff}
.candidate-share[data-copy-state="success"],.candidate-share[data-copy-state="success"]{border-color:rgba(59,208,210,.34)!important}

/* ---------------- Interviewer workspace ---------------- */
.interview-minibar,.simple-topbar{
  position:sticky!important;
  top:10px;
  z-index:70!important;
  width:min(980px,calc(100vw - 28px));
  margin:10px auto 0!important;
  min-height:54px!important;
  padding:0 10px 0 12px!important;
  border-radius:28px!important;
  background:rgba(7,11,16,.44)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 60px rgba(0,0,0,.30)!important;
}
.back-action{
  min-height:36px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.025)!important;
}
.manager-shell{
  height:auto!important;
  min-height:calc(100dvh - 76px);
  padding-top:12px!important;
  gap:12px!important;
}
.question-workspace,.meeting-card,.assessment-panel{border-radius:26px!important}
.question-workspace{padding:18px!important}
.question-main h1{font-size:clamp(27px,2.55vw,38px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
.candidate-mini h2{font-size:20px!important}
.candidate-meta-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:5px}

/* The missing share surface */
.candidate-access-bar{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.35fr);
  gap:22px;
  align-items:center;
  padding:16px 18px!important;
  border-radius:22px!important;
}
.candidate-access-bar>div:first-child{display:grid;gap:4px}
.candidate-access-bar>div:first-child>strong{font-family:var(--ori-font-headline);font-size:16px;color:#fff}
.candidate-access-bar>div:first-child>span{font-size:10px;line-height:1.45;color:var(--ori-muted)}
.candidate-access-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:7px;
  align-items:center;
}
.candidate-access-actions code{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(6,9,13,.52);
  color:rgba(216,222,231,.72);
  font-size:9px;
}
.meeting-card{margin-top:0!important}

/* ---------------- Candidate shared experience ---------------- */
.candidate-view{
  background:
    radial-gradient(500px circle at 20% 12%,rgba(136,59,210,.13),transparent 72%),
    radial-gradient(360px circle at 84% 18%,rgba(59,208,210,.055),transparent 72%),
    var(--ori-canvas)!important;
}
.candidate-appbar{
  position:fixed!important;
  z-index:90!important;
  inset-block-start:16px;
  left:50%;
  width:min(760px,calc(100vw - 36px));
  height:54px!important;
  margin:0!important;
  padding:0 10px 0 15px!important;
  transform:translateX(-50%);
  border-radius:28px!important;
  background:rgba(7,11,16,.44)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 60px rgba(0,0,0,.30)!important;
}
.candidate-appbar .appbar-left{gap:13px!important}
.candidate-brand{display:flex;align-items:center}
.candidate-appbar img{width:132px!important}
.candidate-appbar .room-state{color:rgba(255,255,255,.68)!important;font-size:10px!important;font-weight:600}
.candidate-header-tools{display:flex;align-items:center;gap:7px}
.candidate-site{
  min-height:34px;
  padding:0 11px;
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.018);
  color:rgba(255,255,255,.62);
  font-size:9px;
  font-weight:600;
  text-decoration:none;
}
.candidate-site:hover{color:#fff;background:rgba(255,255,255,.05)}
.candidate-shell{
  height:auto!important;
  min-height:100dvh;
  padding-top:86px!important;
  padding-bottom:38px!important;
  gap:14px!important;
}
.candidate-question-panel,.candidate-meeting{border-radius:28px!important}
.candidate-question-panel{padding:26px!important}
.candidate-heading{padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.06)}
.candidate-heading h2{font-size:22px!important}
.candidate-progress-head{margin-top:24px!important}
.candidate-question-panel>h1{
  max-width:920px;
  margin-top:12px!important;
  font-family:var(--ori-font-headline)!important;
  font-size:clamp(32px,4vw,52px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
.candidate-helper{max-width:760px!important;color:rgba(216,222,231,.58)!important}
.question-progress{height:3px!important;background:rgba(255,255,255,.08)!important}
.question-progress>span{background:var(--ori-gradient)!important}
.candidate-meeting{padding:8px!important}
.candidate-meeting .meeting-head{padding:10px 12px 12px!important}
.candidate-disclosure{
  max-width:930px!important;
  margin:0 auto;
  color:rgba(216,222,231,.36)!important;
  font-size:9px!important;
  line-height:1.55!important;
  text-align:center;
}
.result-card{
  border-radius:30px!important;
  padding:44px!important;
  background:
    radial-gradient(circle at 16% 92%,rgba(210,60,59,.09),transparent 34%),
    radial-gradient(circle at 86% 8%,rgba(59,208,210,.08),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;
}
.result-card h1{
  font-family:var(--ori-font-headline)!important;
  font-size:clamp(48px,7vw,82px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
}
.result-steps span,.connection-options span{background:rgba(255,255,255,.02)}

/* ---------------- Auth / account / modal surfaces ---------------- */
.auth-card,.account-card,.app-modal-panel{border-radius:30px!important}
.auth-card{padding:42px!important}
.brand-logo{width:182px!important}
.auth-card h1,.account-card>h1{letter-spacing:-.045em!important}
.app-modal-panel{box-shadow:0 34px 110px rgba(0,0,0,.42)!important}
.candidate-dialog-head{
  background:rgba(7,11,16,.72)!important;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.candidate-dialog-actions{background:rgba(7,11,16,.88)!important}
input,textarea,select{
  border-radius:14px!important;
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(6,9,13,.50)!important;
}
input:focus,textarea:focus,select:focus{
  border-color:rgba(136,59,210,.82)!important;
  box-shadow:0 0 0 3px rgba(136,59,210,.14)!important;
}

/* Candidate link inside Edit */
.edit-share-section{padding-top:2px}
.candidate-share-box{
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(420px,1.3fr);
  gap:16px;
  align-items:center;
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.018);
}
.candidate-share-copy{display:grid;gap:3px}
.candidate-share-copy strong{font-family:var(--ori-font-headline);font-size:14px;color:#fff}
.candidate-share-copy span{font-size:10px;line-height:1.45;color:var(--ori-muted)}
.candidate-share-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:7px;
  align-items:center;
}
.candidate-share-controls input{min-height:36px!important;border-radius:999px!important;font-size:9px}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .eyebrow:before,.btn.primary{animation:none!important}
  .btn,.candidate-grid-row,.metric-card{transition:none!important}
}

/* Responsive */
@media(max-width:1180px){
  .candidate-grid{grid-template-columns:minmax(210px,1.5fr) minmax(100px,.8fr) 110px 120px 90px 240px!important}
  .candidate-access-bar{grid-template-columns:1fr}
  .candidate-access-actions{grid-template-columns:minmax(0,1fr) auto auto}
}
@media(max-width:900px){
  .admin-page-head{display:grid!important}
  .recruitment-source-actions{justify-content:flex-start!important}
  .candidate-share-box{grid-template-columns:1fr}
}
@media(max-width:780px){
  .admin-layout{padding:7px!important}
  .admin-topbar{border-radius:22px!important}
  .admin-page-head h1{font-size:36px!important}
  .metric-grid{gap:8px!important}
  .metric-card{min-height:105px!important;padding:16px!important}
  .candidate-table{padding:5px!important;border-radius:22px!important}
  .candidate-grid-row{transform:none!important}
  .candidate-actions{grid-column:1 / -1!important;justify-self:stretch!important;display:grid!important;grid-template-columns:auto 1fr 1fr!important}
  .candidate-actions .btn{min-width:0!important}
  .action-link{text-align:left}
  .interview-minibar,.simple-topbar{top:6px;width:calc(100vw - 14px)}
  .candidate-access-actions,.candidate-share-controls{grid-template-columns:1fr 1fr}
  .candidate-access-actions code,.candidate-share-controls input{grid-column:1 / -1}
  .candidate-appbar{top:8px;width:calc(100vw - 16px);height:52px!important}
  .candidate-appbar .secure-pill{display:none}
  .candidate-site{display:none}
  .candidate-shell{padding-top:70px!important}
  .candidate-question-panel{padding:20px!important}
  .candidate-question-panel>h1{font-size:34px!important}
  .result-card{padding:28px 20px!important}
}
@media(max-width:560px){
  .metric-grid{grid-template-columns:1fr 1fr!important}
  .metric-card span{font-size:15px!important}
  .candidate-access-actions,.candidate-share-controls{grid-template-columns:1fr}
  .candidate-access-actions code,.candidate-share-controls input{grid-column:auto}
  .candidate-appbar img{width:118px!important}
}


/* V1.5.0: no pattern, calmer question scale */
.pattern-atmosphere{display:none!important;background-image:none!important;opacity:0!important}
.candidate-question-panel>h1{font-size:clamp(22px,2.45vw,34px)!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.025em!important}.question-main h1{font-size:clamp(20px,1.72vw,28px)!important;line-height:1.12!important;font-weight:700!important;letter-spacing:-.025em!important}.candidate-helper,.candidate-note{display:none!important}


/* V1.5.1: sign-in hierarchy. The eyebrow belongs to the same left
   content edge as the logo, heading and form, not the card centre. */
.auth-body .auth-card{
  display:flex;
  flex-direction:column;
  align-items:stretch!important;
  text-align:left!important;
}
.auth-body .auth-card .auth-eyebrow{
  display:inline-flex!important;
  width:fit-content;
  max-width:100%;
  align-self:flex-start!important;
  justify-content:flex-start!important;
  text-align:left!important;
  margin-left:0!important;
  margin-right:auto!important;
  transform:none!important;
}
.auth-body .auth-card .auth-eyebrow::before{flex-shrink:0}

/* V1.5.2: keep recruitment dashboard readable rather than oversized marketing type. */
.question-main h1{font-size:clamp(16px,1.34vw,24px)!important;line-height:1.16!important}.candidate-question-panel>h1{font-size:clamp(20px,2.05vw,28px)!important;line-height:1.16!important}.btn[disabled],button[disabled]{opacity:.45!important;cursor:not-allowed!important;transform:none!important}
