/* Interview Prep is an additive Total Rewards Hub workspace. Every surface,
   colour and motion value comes from the Hub's existing design tokens. */
.ip-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:var(--sp-7);align-items:end;margin-bottom:var(--sp-7);padding:clamp(22px,4vw,46px);border:1px solid var(--card-border);border-radius:var(--radius-lg);background:radial-gradient(circle at 86% 15%,rgba(79,179,255,.14),transparent 28%),linear-gradient(145deg,rgba(212,175,106,.08),var(--card-bg));box-shadow:var(--shadow);position:relative;overflow:hidden}
.ip-hero:after{content:"";position:absolute;inset:auto -10% -68% 20%;height:260px;background:radial-gradient(circle,rgba(124,92,255,.15),transparent 65%);pointer-events:none}
.ip-hero h1{max-width:850px;margin:0 0 14px;font-size:clamp(2.25rem,5vw,4.6rem);line-height:1.01}.ip-hero p{max-width:70ch;margin:0;color:var(--grey-200);font-size:clamp(.94rem,.89rem + .25vw,1.08rem)}
.ip-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.ip-role-card{position:relative;z-index:1;padding:18px 20px;border:1px solid var(--card-border);border-radius:var(--radius);background:rgba(5,11,26,.58);box-shadow:var(--shadow-sm)}
[data-theme="light"] .ip-role-card{background:rgba(255,255,255,.58)}.ip-role-card span,.ip-role-card small{display:block;color:var(--grey-400);font-size:var(--fs-xs)}.ip-role-card strong{display:block;margin:4px 0;color:var(--white);font-family:var(--font-head);font-size:1.18rem}
.ip-profile{padding:clamp(20px,3vw,30px);margin-bottom:var(--sp-4)}.ip-section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.ip-section-head h2{margin:0 0 3px;font-size:var(--fs-h3)}.ip-section-head p{margin:0;color:var(--grey-400);font-size:var(--fs-sm)}
.ip-step{flex:0 0 auto;padding:4px 9px;border:1px solid var(--card-border);border-radius:var(--radius-pill);color:var(--grey-200);font-size:.63rem;font-weight:800;letter-spacing:.08em}.ip-role-label{margin:18px 0 5px}.ip-role-input{max-width:460px!important}
.ip-source-grid,.ip-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:17px}.ip-source-card{position:relative;min-height:126px;padding:22px;border:1px solid rgba(62,207,142,.42);border-radius:var(--radius);background:rgba(255,255,255,.025)}
.ip-source-top{display:flex;align-items:flex-start;gap:12px}.ip-source-top strong{display:block;color:var(--white);font-size:.9rem;overflow-wrap:anywhere}.ip-source-top small{display:block;color:var(--grey-400);font-size:.72rem}.ip-source-check{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:rgba(62,207,142,.17);color:var(--green);font-weight:800}
.ip-file-action{position:absolute;right:16px;bottom:13px;border:0;background:transparent;color:var(--blue);font-size:.75rem;font-weight:750;cursor:pointer}.ip-source-kind{position:absolute;left:22px;bottom:12px;color:var(--grey-400);font-size:.67rem;text-transform:uppercase;letter-spacing:.07em}
.ip-text-grid label{font-size:.76rem}.ip-text-grid textarea,.ip-mock textarea{width:100%;margin-top:5px;padding:11px 12px;border:1px solid var(--card-border);border-radius:var(--radius-xs);background:var(--navy-600);color:var(--white);font:inherit;resize:vertical}.ip-text-grid textarea:disabled,.ip-role-input:disabled{opacity:.72;cursor:not-allowed}
.ip-profile-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid var(--card-border)}.ip-profile-foot>span{color:var(--grey-400);font-size:var(--fs-xs)}
.ip-match{display:grid;grid-template-columns:auto auto minmax(260px,1fr) auto;align-items:center;gap:16px;margin:0 0 var(--sp-5);padding:16px 20px;border:1px solid rgba(79,179,255,.3);border-radius:var(--radius);background:linear-gradient(120deg,var(--navy-700),rgba(44,111,168,.24));box-shadow:var(--shadow-sm)}
.ip-match-score{--score:68;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:conic-gradient(var(--gold-bright) calc(var(--score)*1%),rgba(255,255,255,.08) 0);position:relative}.ip-match-score:before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--navy-700)}.ip-match-score span{position:relative;color:var(--white);font-weight:800;font-size:.82rem}.ip-match>div:nth-child(2) small,.ip-focus small{display:block;color:var(--grey-400);font-size:.7rem}.ip-match>div:nth-child(2) strong{display:block;color:var(--white)}
.ip-focus>div{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.ip-focus span{padding:4px 8px;border:1px solid rgba(79,179,255,.25);border-radius:5px;background:rgba(79,179,255,.09);color:var(--grey-200);font-size:.67rem}
.ip-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.ip-bank{overflow:hidden;padding:0}.ip-bank>.ip-section-head{padding:24px 24px 14px}.ip-tabs{display:flex;gap:25px;padding:0 24px;border-bottom:1px solid var(--card-border);overflow:auto}.ip-tab{flex:0 0 auto;padding:12px 2px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--grey-400);font-size:.83rem;font-weight:750}.ip-tab span{margin-left:3px;color:var(--grey-400);font-size:.68rem}.ip-tab.active{border-color:var(--gold-bright);color:var(--white)}
.ip-bank-tools{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;padding:12px 24px;background:rgba(255,255,255,.025);border-bottom:1px solid var(--card-border)}.ip-bank-tools input,.ip-bank-tools select{width:100%;padding:9px 11px;border:1px solid var(--card-border);border-radius:var(--radius-xs);background:var(--navy-600);color:var(--white);font:inherit;font-size:.78rem}
.ip-question{padding:19px 24px;border-bottom:1px solid rgba(138,151,181,.16);transition:background var(--dur-fast)}.ip-question:hover{background:rgba(255,255,255,.018)}.ip-q-meta{display:flex;align-items:center;gap:7px;margin:0 0 7px 34px}.ip-level,.ip-skill{padding:2px 7px;border-radius:4px;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.ip-level.hard{background:rgba(242,84,91,.15);color:var(--red)}.ip-level.medium{background:rgba(242,177,52,.16);color:var(--amber)}.ip-level.easy{background:rgba(62,207,142,.15);color:var(--green)}.ip-skill{background:rgba(79,179,255,.13);color:var(--blue);text-transform:none}.ip-time{margin-left:auto;color:var(--grey-400);font-size:.67rem}
.ip-q-row{display:grid;grid-template-columns:26px minmax(0,1fr) 34px;gap:8px;align-items:start}.ip-q-number{color:var(--grey-400);font-size:.76rem}.ip-q-copy h3{margin:0;color:var(--white);font-family:var(--font-body);font-size:.88rem;line-height:1.5}.ip-guide-toggle{margin-top:7px;padding:0;border:0;background:transparent;color:var(--blue);font-size:.72rem;font-weight:750}.ip-guide{margin-top:12px;padding:13px 14px;border-left:3px solid var(--gold);border-radius:0 var(--radius-xs) var(--radius-xs) 0;background:rgba(212,175,106,.08);color:var(--grey-200);font-size:.78rem}.ip-guide p{margin:4px 0 0}.ip-save{width:32px;height:32px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--grey-400);font-size:1rem}.ip-save:hover,.ip-save.active{border-color:var(--card-border);color:var(--gold-bright);background:var(--card-bg)}
.ip-bank-lock,.ip-empty{padding:28px;text-align:center;background:linear-gradient(140deg,rgba(212,175,106,.08),rgba(79,179,255,.05))}.ip-bank-lock{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.ip-bank-lock strong{color:var(--gold-bright)}.ip-bank-lock span{color:var(--grey-400);font-size:.78rem}.ip-empty span{font-size:1.7rem}.ip-empty h3{margin:8px 0}.ip-empty p{max-width:50ch;margin:0 auto 15px;color:var(--grey-400)}
.ip-side{display:grid;gap:16px;position:sticky;top:calc(var(--header-h) + 16px)}.ip-side .card{padding:20px}.ip-side h3{margin:0 0 15px;font-size:1rem}.ip-readiness{display:flex;align-items:baseline;gap:4px;margin-bottom:17px}.ip-readiness strong{font-family:var(--font-head);font-size:2.8rem;color:var(--gold-bright);line-height:1}.ip-readiness span{color:var(--grey-400);font-size:.75rem}.ip-readiness b{margin-left:10px;color:var(--white);font-size:.78rem}
.ip-meter{margin:12px 0}.ip-meter span{display:flex;justify-content:space-between;color:var(--grey-400);font-size:.68rem}.ip-meter i{display:block;height:5px;margin-top:5px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden}.ip-meter em{display:block;height:100%;border-radius:inherit;background:var(--blue)}.ip-meter.coral em{background:var(--gold)}.ip-meter.green em{background:var(--green)}
.ip-plan{list-style:none;margin:0;padding:0}.ip-plan li{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid rgba(138,151,181,.15)}.ip-plan li:last-child{border-bottom:0}.ip-plan li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:rgba(79,179,255,.11);color:var(--blue)}.ip-plan li div{min-width:0;flex:1}.ip-plan strong,.ip-plan small{display:block}.ip-plan strong{color:var(--white);font-size:.75rem}.ip-plan small{color:var(--grey-400);font-size:.62rem}.ip-plan li>b{color:var(--green);font-size:.6rem}
.ip-cta{padding:22px;border:1px solid rgba(212,175,106,.45);border-radius:var(--radius);background:linear-gradient(145deg,var(--gold-dim),#8e6725);box-shadow:var(--shadow)}.ip-cta h3{margin:0 0 5px;color:#fff;font-size:1.45rem}.ip-cta p{margin:0 0 14px;color:rgba(255,255,255,.82);font-size:.78rem}.ip-cta .btn{width:100%;justify-content:center;background:var(--navy-900);color:var(--white)}
.ip-mock{padding:clamp(20px,3vw,30px);margin-bottom:var(--sp-5);border-color:var(--blue)}.ip-mock-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ip-mock-head h2{margin:0}.ip-mock-prompt{margin:18px 0;padding:22px;border:1px solid var(--card-border);border-radius:var(--radius);background:var(--card-bg)}.ip-mock-prompt span{color:var(--blue);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.ip-mock-prompt h3{margin:8px 0 0;color:var(--white)}.ip-mock-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:13px}
@media(max-width:1000px){.ip-workspace{grid-template-columns:1fr}.ip-side{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.ip-cta{min-height:100%}}
@media(max-width:760px){.ip-hero{grid-template-columns:1fr}.ip-role-card{max-width:360px}.ip-source-grid,.ip-text-grid{grid-template-columns:1fr}.ip-match{grid-template-columns:auto 1fr auto}.ip-focus{grid-column:1/-1;grid-row:2}.ip-side{grid-template-columns:1fr}.ip-profile-foot{align-items:flex-start;flex-direction:column}.ip-bank>.ip-section-head{padding:20px 16px 12px}.ip-tabs{padding:0 16px;gap:18px}.ip-bank-tools{padding:10px 16px}.ip-question{padding:17px 16px}}
@media(max-width:480px){.ip-hero{padding:22px 17px}.ip-hero h1{font-size:2.35rem}.ip-role-card{width:100%}.ip-match{grid-template-columns:auto 1fr;padding:14px}.ip-match>.btn{grid-column:1/-1;width:100%}.ip-bank-tools{grid-template-columns:1fr}.ip-section-head{flex-direction:column}.ip-step{align-self:flex-start}.ip-q-meta{margin-left:0}.ip-q-row{grid-template-columns:1fr 32px}.ip-q-number{display:none}.ip-time{margin-left:0}.ip-bank-lock{align-items:stretch;flex-direction:column}.ip-mock-actions .btn{width:100%}.ip-hero-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.ip-question{transition:none}}
