/* BRILL TEAM PROJECT / Electra Afikim — worker-only portal. Hebrew RTL, mobile first. */
:root{--w-ink:#102d40;--w-navy:#0a2d40;--w-teal:#137e79;--w-teal-dark:#0b6663;--w-border:#dce6eb;--w-muted:#617686;--w-paper:#fff;--w-canvas:#f3f6f9}
body.worker-portal{background:var(--w-canvas);color:var(--w-ink);font-family:Arial,"Noto Sans Hebrew",sans-serif}
.worker-portal .app-shell{min-height:100vh}
.worker-portal .topbar{background:#fff;border-bottom:1px solid #e3eaef}
.worker-portal .training-chip{font-size:11px;background:#ebf4f4;color:#126d69;border:1px solid #d6e9e7;letter-spacing:0}
.worker-main{width:min(1180px,calc(100% - 48px));margin:0 auto;min-height:calc(100vh - 153px);padding:clamp(30px,5vw,56px) 0}
.worker-main *{box-sizing:border-box}
.worker-main button{cursor:pointer;font-family:inherit}
.worker-main button:disabled{cursor:not-allowed;opacity:.56}
.worker-main button:focus-visible,.worker-main input:focus-visible{outline:3px solid rgba(19,126,121,.27);outline-offset:2px}
.worker-login{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:560px;background:var(--w-paper);overflow:hidden;border:1px solid #dae4e9;border-radius:23px;box-shadow:0 22px 60px rgba(10,41,62,.08)}
.worker-intro{position:relative;background:linear-gradient(152deg,#0d4353 0%,#0b2d41 63%,#071e2e 100%);padding:clamp(38px,5vw,68px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;color:#fff;overflow:hidden}
.worker-intro::before{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(199,244,242,.07);border-radius:50%;inset:auto auto -245px -175px;box-shadow:0 0 0 42px rgba(180,245,239,.021),0 0 0 90px rgba(180,245,239,.018);pointer-events:none}
.worker-eyebrow{font-size:12px;color:#a6eadf;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;gap:11px}
.worker-accent{display:inline-block;width:7px;height:7px;border-radius:100%;background:#87d9ca;box-shadow:0 0 0 5px rgba(135,217,202,.1);flex:none}
.worker-intro h1{position:relative;font-weight:800;font-size:clamp(35px,3.5vw,48px);line-height:1.22;letter-spacing:-1.3px;margin:28px 0 21px;color:#fff;max-width:570px}
.worker-intro p{font-size:16px;line-height:1.9;color:#d2e1e7;max-width:430px;margin:0}
.worker-intro-footer{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:65px;font-size:12px;color:#b5d0d8}
.worker-intro-line{background:#8bd8cc;width:29px;height:2px}
.worker-login-panel{padding:clamp(30px,4.2vw,58px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.worker-identity-label{font-size:12px;color:var(--w-teal);font-weight:750}
.worker-login-panel h2{font-size:28px;letter-spacing:-.5px;line-height:1.22;margin:11px 0 6px;color:var(--w-ink)}
.worker-login-description{font-size:14px;line-height:1.7;color:var(--w-muted);margin:0 0 28px}
#worker-entry{display:flex;flex-direction:column;gap:23px}
.worker-field{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:700;color:#244457}
.worker-field input{display:block;width:100%;height:53px;font-size:16px;font-family:inherit;font-weight:550;background:#fbfcfd;border:1px solid #c8d7de;border-radius:11px;padding:0 16px;color:var(--w-ink);outline:none;transition:border-color .16s,box-shadow .16s;box-shadow:none;direction:ltr;text-align:left}
.worker-field input::placeholder{color:#9aaab4;font-size:13px;font-weight:400}
.worker-field input:hover{border-color:#92acb8}
.worker-field input:focus{border-color:var(--w-teal);box-shadow:0 0 0 3px rgba(19,126,121,.13);background:#fff}
.worker-field input[aria-invalid=true]{border-color:#b63337}
.worker-field small{font-size:11px;font-weight:400;color:#7b8c98;line-height:1.6}
.worker-primary,.worker-secondary{min-height:50px;padding:12px 20px;border-radius:11px;border:1px solid transparent;font-size:14px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:background .15s,border-color .15s,color .15s;white-space:normal}
.worker-primary{background:var(--w-teal);color:#fff;box-shadow:0 8px 21px rgba(19,126,121,.14)}
.worker-primary:hover:not(:disabled){background:var(--w-teal-dark)}
.worker-secondary{background:#fff;color:#234a5e;border-color:#ccd9e1;box-shadow:none}
.worker-secondary:hover:not(:disabled){border-color:#759eaa;background:#f5fafb}
#worker-enter{width:100%;justify-content:space-between;margin-top:1px;font-size:15px}
#worker-enter span:last-child{font-size:21px;font-weight:400;line-height:1}
.worker-entry-note{font-size:12px;line-height:1.85;color:#71838f;border-top:1px solid #e7edf0;margin:25px 0 0;padding-top:17px}
.exam-notice{padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.65;margin:0;border:1px solid transparent}
.exam-notice[hidden]{display:none!important}
.exam-notice.is-error{color:#8a2732;background:#fff0f1;border-color:#f5d3d6}
.exam-notice.is-success{color:#11665f;background:#e8f7f2;border-color:#cee9df}
.worker-exam{max-width:1160px;margin:0 auto}
.worker-exam-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}
.worker-exam-heading .worker-eyebrow{color:var(--w-teal)}
.worker-exam-heading h1{font-size:clamp(26px,3.2vw,37px);font-weight:800;line-height:1.25;color:var(--w-ink);letter-spacing:-.75px;margin:12px 0 10px}
.worker-exam-heading p{margin:0;color:var(--w-muted);font-size:14px}
.worker-exam-heading p strong{color:#294557}
.worker-timer{padding:12px 19px;border-radius:12px;border:1px solid #d6e6e7;background:#edf8f6;min-width:145px;text-align:center;display:flex;flex-direction:column;gap:2px;color:#105d5c;align-self:flex-end}
.worker-timer-caption{font-size:11px;font-weight:700}
.worker-timer strong{direction:ltr;unicode-bidi:isolate;font:800 25px/1.3 ui-monospace,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:1px}
.worker-timer.is-low{background:#fff2ec;border-color:#f5d4c3;color:#a44120}
.worker-progress{margin-bottom:24px}
.worker-progress-info{display:flex;align-items:center;justify-content:space-between;color:#556e7d;gap:15px;font-size:13px;margin-bottom:11px}
.worker-progress-info strong{color:var(--w-ink)}
.worker-progress-track{height:5px;background:#dce7ea;border-radius:99px;overflow:hidden}
.worker-progress-track span{display:block;height:100%;background:var(--w-teal);border-radius:99px;transition:width .15s ease}
.worker-exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;align-items:start}
.worker-question-card,.worker-navigator{background:#fff;border:1px solid var(--w-border);border-radius:17px;box-shadow:0 7px 24px rgba(22,51,70,.036)}
.worker-question-card{min-width:0;padding:clamp(26px,3.1vw,39px)}
.worker-question-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;color:#197c77;font-size:12px;font-weight:750;border-bottom:1px solid #e9eff1;padding-bottom:19px}
.worker-question-meta span:last-child{color:#6a7f8a;font-size:12px;direction:rtl}
.worker-question-card h2{margin:28px 0 28px;color:var(--w-ink);font-size:clamp(19px,2.3vw,26px);line-height:1.66;font-weight:800;letter-spacing:-.25px;outline:none}
.worker-choice-list{display:grid;gap:11px}
.worker-choice{background:#fff;color:#243f51;width:100%;min-height:66px;text-align:right;display:grid;grid-template-columns:35px minmax(0,1fr) 23px;align-items:center;gap:16px;border:1px solid #d5e0e6;border-radius:12px;padding:13px 15px;font-size:15px;line-height:1.6;font-weight:550}
.worker-choice:hover:not(:disabled){border-color:#6dadac;background:#f8fcfb}
.worker-choice.is-selected{background:#edf9f6;border-color:#16877e;color:#103b3b;box-shadow:0 0 0 1px #16877e inset}
.worker-choice-letter{width:34px;height:34px;background:#f0f4f6;border:1px solid #e6edef;border-radius:9px;display:inline-flex;justify-content:center;align-items:center;color:#4e6a7a;font-weight:800}
.worker-choice.is-selected .worker-choice-letter{background:#16877e;border-color:#16877e;color:#fff}
.worker-choice-mark{font-size:21px;font-weight:800;color:var(--w-teal);text-align:center}
.worker-save-status{min-height:21px;margin:17px 0 20px;color:#647a85;font-size:12px;font-weight:600}
.worker-question-actions{border-top:1px solid #e9eef1;padding-top:21px;margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.worker-question-actions button{min-width:130px}
.worker-navigator{padding:21px 18px;position:sticky;top:20px}
.worker-nav-head{display:flex;flex-direction:column;gap:5px;margin-bottom:18px}
.worker-nav-head strong{font-size:15px;color:#173a4c}
.worker-nav-head small{font-size:11px;color:#78909b}
.worker-nav-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.worker-nav-item{height:34px;min-width:0;border-radius:8px;font-size:12px;font-weight:750;color:#58707b;background:#f6f8fa;border:1px solid #dce5ea;padding:0}
.worker-nav-item:hover:not(:disabled){border-color:#6da9a6}
.worker-nav-item.is-answered{background:#e4f4ee;color:#1c7067;border-color:#c9e4d9}
.worker-nav-item.is-current{color:#fff;background:#0c384d;border-color:#0c384d;box-shadow:0 0 0 2px rgba(13,56,77,.11)}
.worker-nav-legend{display:flex;gap:14px;align-items:center;justify-content:center;margin-top:20px;border-top:1px solid #edf1f3;padding-top:15px;font-size:10px;color:#617b85}
.worker-nav-legend span{display:inline-flex;align-items:center;gap:6px}
.worker-legend-dot{display:inline-block;width:9px;height:9px;background:#f6f8fa;border:1px solid #cbd7de;border-radius:3px}
.worker-legend-dot.is-answered{background:#b9ddcf;border-color:#a6d1c2}
.worker-dialog-backdrop{position:fixed;z-index:1000;inset:0;background:rgba(6,28,42,.62);display:flex;justify-content:center;align-items:center;padding:24px}
.worker-dialog{background:#fff;border-radius:18px;box-shadow:0 22px 80px rgba(2,17,26,.32);width:min(100%,480px);padding:34px;max-height:min(90vh,650px);overflow:auto}
.worker-dialog-overline{font-size:12px;font-weight:800;color:#16817b}
.worker-dialog h2{font-size:27px;line-height:1.3;margin:10px 0 13px;color:#102e41}
.worker-dialog p{font-size:15px;line-height:1.8;color:#607884;margin:0 0 24px}
.worker-dialog-actions{display:flex;gap:10px}
.worker-dialog-actions button{flex:1}
.worker-receipt{max-width:650px;margin:clamp(18px,5vw,55px) auto 0;background:#fff;border:1px solid var(--w-border);border-radius:19px;padding:clamp(28px,4.5vw,58px);box-shadow:0 19px 53px rgba(12,41,55,.075);text-align:center}
.worker-receipt-icon{display:flex;align-items:center;justify-content:center;margin:0 auto 23px;width:70px;height:70px;border-radius:50%;background:#e0f4ec;border:1px solid #b7e3d3;color:#128071;font-size:34px;font-weight:800}
.worker-receipt .worker-eyebrow{justify-content:center;color:#147d78}
.worker-receipt h1{color:var(--w-ink);margin:12px 0;font-size:clamp(28px,3.2vw,39px);font-weight:800}
.worker-receipt>p{color:#607684;font-size:15px;line-height:1.8;max-width:500px;margin:0 auto 27px}
.worker-receipt-details{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;background:#f3f7f8;padding:14px;border-radius:12px;margin:20px 0}
.worker-receipt-details div{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#738893}
.worker-receipt-details strong{font-size:15px;color:var(--w-ink)}
.worker-receipt .worker-receipt-note{font-size:13px;color:#657a87;margin:23px auto}
.worker-receipt .worker-secondary{min-width:175px}
.worker-portal .footer-credit{direction:ltr;unicode-bidi:isolate}
@media(max-width:920px){
 .worker-main{width:calc(100% - 32px);padding:28px 0 34px}
 .worker-login{grid-template-columns:1fr;max-width:660px;margin:0 auto;min-height:0}
 .worker-intro{padding:28px 35px;min-height:0}
 .worker-intro h1{font-size:32px;line-height:1.2;letter-spacing:-.6px;margin:15px 0 9px}
 .worker-intro p{font-size:13px;line-height:1.7;max-width:520px}
 .worker-intro-footer{display:none}
 .worker-login-panel{padding:30px 35px}
 .worker-login-panel h2{font-size:24px}
 .worker-login-description{margin-bottom:22px}
 .worker-exam-layout{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;max-width:100%}
 .worker-navigator{order:-1;position:relative;top:auto;display:flex;align-items:center;gap:16px;padding:12px 14px;min-width:0;max-width:100%;overflow:hidden}
 .worker-nav-head{flex:none;margin:0;min-width:100px}
 .worker-nav-head small{display:none}
 .worker-nav-grid{display:flex;flex:1;gap:7px;overflow-x:auto;min-width:0;max-width:100%;scrollbar-gutter:stable;padding-bottom:6px}
 .worker-nav-item{flex:0 0 35px;height:35px}
 .worker-nav-legend{display:none}
 .worker-question-card{padding:26px}
}
@media(max-width:560px){
 .worker-main{width:calc(100% - 24px);padding:15px 0 26px}
 .worker-login{border:1px solid #dce6e9;border-radius:17px}
 .worker-intro{padding:24px 22px 22px}
 .worker-intro h1{font-size:28px}
 .worker-intro p{font-size:12px}
 .worker-eyebrow{font-size:11px}
 .worker-login-panel{padding:23px 20px 24px}
 .worker-login-panel h2{font-size:23px;margin:7px 0 5px}
 .worker-login-description{font-size:12px;margin-bottom:21px}
 #worker-entry{gap:16px}
 .worker-field{gap:7px;font-size:13px}
 .worker-field input{height:49px}
 .worker-entry-note{margin-top:19px;padding-top:15px;font-size:11px}
 .worker-exam-header{align-items:center;gap:10px;margin-bottom:18px}
 .worker-exam-heading h1{font-size:21px;line-height:1.3;margin:8px 0 6px}
 .worker-exam-heading p{font-size:12px}
 .worker-timer{min-width:101px;padding:9px 8px;border-radius:11px}
 .worker-timer strong{font-size:21px;letter-spacing:0}
 .worker-timer-caption{font-size:10px}
 .worker-progress{margin-bottom:14px}
 .worker-progress-info{font-size:11px;margin-bottom:8px}
 .worker-navigator{border-radius:12px}
 .worker-nav-head{min-width:64px}
 .worker-nav-head strong{font-size:11px}
 .worker-nav-grid{gap:6px}
 .worker-nav-item{flex-basis:30px;height:30px;font-size:11px}
 .worker-question-card{padding:20px 17px;border-radius:13px}
 .worker-question-meta{font-size:11px;padding-bottom:14px}
 .worker-question-card h2{font-size:19px;line-height:1.52;margin:19px 0 21px}
 .worker-choice-list{gap:9px}
 .worker-choice{min-height:62px;gap:10px;padding:10px;grid-template-columns:29px minmax(0,1fr) 16px;font-size:13px;line-height:1.6}
 .worker-choice-letter{width:29px;height:29px;border-radius:8px}
 .worker-choice-mark{font-size:15px}
 .worker-question-actions{margin-top:7px;padding-top:15px;gap:8px}
 .worker-question-actions button{min-width:0;flex:1;padding:10px 8px;min-height:45px;font-size:12px}
 .worker-save-status{margin:14px 0;font-size:11px}
 .worker-dialog{padding:24px 19px}
 .worker-dialog h2{font-size:24px}
 .worker-dialog p{font-size:13px}
 .worker-dialog-actions{flex-direction:column}
 .worker-receipt{padding:31px 20px;margin:14px auto 0}
 .worker-receipt h1{font-size:28px}
 .worker-receipt-details{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
 .worker-choice,.worker-primary,.worker-secondary,.worker-progress-track span{transition:none!important}
}

/* Prevent intrinsic-width expansion from horizontal exam navigation. */
.worker-exam-layout,.worker-question-card,.worker-navigator,.worker-choice-list,.worker-choice,.worker-choice-text{min-width:0;max-width:100%}
.worker-choice-text{overflow-wrap:anywhere}
