@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#142f29;background:#f4f6f5;--green:#133c32;--gold:#b29550;--line:#dbe3df;--muted:#5e726a}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:inherit}header{height:100px;padding:14px clamp(20px,5vw,76px);display:flex;justify-content:space-between;align-items:center;background:#112b27;color:white;border-bottom:1px solid #345047}.brand{display:flex;align-items:center;text-decoration:none;gap:10px}.brand img{width:72px;height:72px;object-fit:contain}.brand span{font-size:18px;letter-spacing:1.5px}.brand b{font-weight:400;color:#d5bf85}.brand small{display:block;font-size:10px;letter-spacing:1px;margin-top:5px;color:#becbc6}#header-actions{display:flex;gap:12px;align-items:center}#header-actions select{background:#203d35;color:white;border:1px solid #597065;padding:10px;border-radius:8px}main{max-width:1140px;margin:auto;padding:52px 24px 70px;min-height:calc(100vh - 166px)}footer{font-size:12px;color:var(--muted);text-align:center;padding:22px;border-top:1px solid var(--line)}.eyebrow{font-size:13px;font-weight:800;color:#937637;letter-spacing:2px;text-transform:uppercase;margin:0 0 16px}h1{font-size:clamp(30px,4vw,46px);font-weight:700;letter-spacing:-1.6px;line-height:1.2;margin:0 0 18px}h2{font-size:24px;letter-spacing:-.7px;margin:0 0 10px}p{font-size:16px;line-height:1.65}.sub{color:var(--muted);max-width:570px}.language-screen{max-width:720px;margin:26px auto;text-align:center}.language-grid{display:grid;gap:14px;margin:36px auto}.language-choice{background:white;text-align:left;border:1px solid var(--line);border-radius:12px;padding:22px 26px;display:flex;align-items:center;gap:20px;font-size:21px;transition:.2s}.language-choice:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 12px 30px #14352b0d}.flag{font-size:30px}.language-choice small{font-size:14px;display:block;color:var(--muted);margin-top:5px}.language-choice .tick{margin-left:auto;color:var(--gold);font-size:24px}.auth{max-width:460px;margin:25px auto}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 8px 40px #1b342804}.auth .card{margin-top:28px}.field{display:block;font-size:14px;font-weight:700;margin-bottom:20px}.field input,.field select,.field textarea{display:block;width:100%;margin-top:8px;background:#fbfcfb;border:1px solid #cad6cf;border-radius:8px;padding:14px;min-height:52px;font-size:16px;color:#19352b}.field textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #baa46c70;outline-offset:3px}.btn{border:1px solid #c8d5ce;background:white;border-radius:8px;padding:13px 20px;font-size:15px;font-weight:700;min-height:48px;color:var(--green);text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.btn.ghost{background:transparent;color:inherit;border-color:#71877d}.btn.wide{width:100%}.textbtn{border:0;background:transparent;padding:10px 0;color:var(--green);text-decoration:underline;font-size:14px}.hint{font-size:14px;line-height:1.6;color:var(--muted);font-weight:400}.preview-notice{background:#f8f3e6;border-left:3px solid var(--gold);padding:12px 16px;font-size:14px;line-height:1.6;margin:0 0 24px}.check{display:flex;gap:12px;align-items:center;font-size:15px;margin:14px 0}.check input{width:19px;height:19px;accent-color:var(--green)}.layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px}.aside .sub{font-size:14px}.steps{list-style:none;padding:0;margin:30px 0}.steps button{background:transparent;border:0;display:flex;width:100%;gap:14px;align-items:center;text-align:left;padding:15px 0;color:var(--muted);font-size:15px}.stepno{width:34px;height:34px;border-radius:50%;border:1px solid #b9c9bf;display:grid;place-items:center;flex-shrink:0}.steps .current{font-weight:800;color:var(--green)}.current .stepno{background:var(--green);color:white;border-color:var(--green)}.saved-note{font-size:14px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.kind-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:25px}.kind{border:1px solid #ccd7d1;padding:16px;border-radius:10px;display:flex;gap:10px;align-items:center;font-size:15px}.kind:has(input:checked){border-color:var(--green);background:#eff5f1}.kind input{accent-color:var(--green)}.actions{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.actions-right{display:flex;gap:10px;flex-wrap:wrap}.error{color:#9b302f;font-size:14px;line-height:1.6}.portrait{height:180px;width:180px;object-fit:cover;border-radius:14px;border:1px solid var(--line)}.photo-empty{width:180px;height:180px;border:1px dashed #b3c5ba;border-radius:14px;background:#f5f8f6;display:grid;place-items:center;font-size:45px;color:#718d7d}.photo-controls{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.file-row{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:10px;margin:12px 0}.file-row .field{margin:0;flex:1}.file-row small{display:block;font-size:12px;font-weight:400;overflow-wrap:anywhere;margin-top:6px}.pill{font-size:13px;padding:7px 12px;border-radius:6px;background:#edf3ef;display:inline-block;white-space:nowrap}.pill.pending,.pill.on_hold{background:#f9f0da;color:#806320}.pill.inactive,.pill.declined{background:#f6e9e7;color:#873c38}.success{background:#ecf5ef;padding:20px;border-radius:10px;margin:20px 0}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:28px}.toolbar h1{margin-bottom:0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.filters button.active{background:var(--green);color:white}.roster{display:grid;gap:10px}.person{display:flex;align-items:center;text-align:left;width:100%;gap:18px;background:white;border:1px solid var(--line);border-radius:12px;padding:18px;color:var(--green)}.avatar{width:48px;height:48px;background:#e8f0ea;border-radius:10px;display:grid;place-items:center;font-weight:800;flex-shrink:0}.person .grow{flex:1}.person small{display:block;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.empty{padding:45px 20px;text-align:center;border:1px dashed #bdcec4;border-radius:12px;color:var(--muted)}.review{margin:24px 0;border-top:1px solid var(--line);padding-top:24px}.review .fields{margin-top:15px}.intro{position:fixed;inset:0;z-index:10;background:#112b27;pointer-events:none}.intro img{position:fixed;left:50%;top:50%;width:min(360px,70vw);transform:translate(-50%,-50%)}.intro.complete{display:none}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#153a2d;color:white;padding:14px 24px;border-radius:10px;opacity:0;pointer-events:none;max-width:90vw;font-size:14px}#toast.show{opacity:1}.office-nav{display:flex;gap:15px;align-items:center;font-size:14px;margin-bottom:24px}#header-actions .btn{font-size:13px;padding:8px 12px;min-height:40px}input[type=file]{max-width:100%}[hidden]{display:none!important}@media(max-width:720px){header{padding:10px 14px;height:88px}.brand img{width:56px;height:56px}.brand span{font-size:14px;letter-spacing:.4px}.brand small{font-size:8px}#header-actions{gap:6px}#header-actions select{padding:8px;font-size:16px;width:72px}#header-actions .btn{font-size:12px;padding:7px}main{padding:30px 16px 48px}.layout{grid-template-columns:1fr;gap:22px}.aside h1{font-size:30px;margin-bottom:8px}.aside .sub{margin:8px 0}.steps{display:flex;margin:18px 0 0;justify-content:space-between;gap:6px}.steps button{flex-direction:column;gap:7px;padding:0;font-size:12px;text-align:center}.saved-note{display:none}.card{padding:24px 18px;border-radius:12px}.fields{grid-template-columns:1fr}.kind-grid{grid-template-columns:1fr}.language-screen{margin:10px auto}.language-choice{padding:19px}.actions-right{width:100%}.actions-right .btn{flex:1}.person{gap:10px;padding:14px}.person .pill{font-size:11px;max-width:95px;white-space:normal}.file-row{flex-wrap:wrap}.file-row .field{min-width:180px}.toolbar h1{font-size:30px}.intro img{width:260px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.intro{display:none}}

/* Mobile-first Workers refinements, preserving the existing company palette. */
.registry-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 28px}.summary-card{text-align:left;padding:20px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--green)}.summary-card strong{display:block;font-size:32px;line-height:1.2;margin-bottom:8px}.summary-card span{font-size:14px}.person .grow{min-width:0}h1,h2,.brand,.kind,.summary-card{overflow-wrap:anywhere}input,select,textarea{min-width:0}button:focus-visible,a:focus-visible{outline:3px solid #b18739;outline-offset:3px}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:default;opacity:.65}.steps button{min-height:44px}.pill{font-size:14px}.brand small{font-size:12px}.steps li{min-width:0}footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}@media(max-width:720px){header{height:auto;min-height:88px;flex-wrap:wrap;gap:10px}.brand small{font-size:10px}#header-actions .btn,.steps button{font-size:14px}.person .pill{font-size:14px}.summary-card{padding:14px 10px}.summary-card strong{font-size:28px}.steps{gap:8px}.steps li{flex:1}.steps button{width:100%}.language-screen h1{font-size:clamp(27px,7vw,40px)}}

.resend{display:block}.summary-card:hover{border-color:var(--green)}

.language-choice .language-emblem{width:112px;height:112px;object-fit:contain;flex-shrink:0}.language-choice{padding:16px 24px}.language-choice>span:not(.tick){min-width:0}@media(max-width:600px){.language-choice{padding:14px 16px;gap:16px}.language-choice .language-emblem{width:88px;height:88px}}

.privacy-notice{margin:20px 0;border:1px solid var(--line);border-radius:10px;background:#f7faf8;padding:16px}.privacy-notice summary{cursor:pointer;font-size:16px;font-weight:700}.privacy-notice p{font-size:14px;line-height:1.7}.privacy-check{align-items:flex-start;line-height:1.6}.privacy-check input{flex-shrink:0;margin-top:4px}.camera-dialog{padding:0;border:1px solid #426357;border-radius:18px;width:min(94vw,500px);max-height:94dvh;color:var(--green);background:#fff}.camera-dialog::backdrop{background:#071d17d9}.camera-panel{padding:20px}.camera-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.camera-heading h2{font-size:22px;margin:0}.camera-viewport{position:relative;aspect-ratio:3/4;max-height:54dvh;margin:auto;overflow:hidden;border-radius:12px;background:#112b27}.camera-viewport video,.camera-review{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.camera-outline{position:absolute;inset:0;pointer-events:none}.face-guide{position:absolute;width:51%;height:51%;top:13%;left:24.5%;border:3px dashed #fff;border-radius:50%;box-shadow:0 0 0 100vmax #001b1926}.shoulder-guide{position:absolute;width:88%;height:36%;top:70%;left:6%;border:3px dashed #fff;border-bottom:0;border-radius:50% 50% 0 0}.camera-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.camera-viewport [hidden],.camera-buttons [hidden]{display:none}.camera-panel .hint{font-size:14px;margin:12px 0}@media(max-width:420px){.camera-panel{padding:16px}.camera-heading h2{font-size:19px}}

.layout>*,.fields>*,.field{min-width:0}.field input,.field select,.field textarea{min-width:0;max-width:100%}.field input[type=date]{width:100%;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none;text-align:left}.field input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.4em}.error{overflow-wrap:anywhere}.privacy-check{padding:14px;border:1px solid var(--line);border-radius:10px;background:#f7faf8}
