:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#17354b;background:#f1f5f7;font-size:18px}*{box-sizing:border-box}body{margin:0}header{background:#103a5d;color:white;padding:22px max(22px,calc((100% - 760px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:30px;font-weight:800;letter-spacing:-1px}.tagline{font-size:14px;color:#cee1eb}.pill{border:1px solid #8daebf;border-radius:30px;padding:6px 12px;font-size:14px}main{max-width:800px;margin:auto;padding:22px 20px 55px}.preview{background:#fff7db;color:#654a00;border:1px solid #ebdba0;padding:14px 16px;border-radius:10px;font-size:15px;line-height:1.5}.heading{margin:26px 0 18px}.heading h1{font-size:30px;margin:0}.heading p{margin:6px 0;color:#647885}section{background:white;border:1px solid #dae4e9;border-radius:15px;padding:22px;margin:18px 0;box-shadow:0 3px 10px #17354b06}h2{font-size:21px;margin:0 0 14px}h3{font-size:20px;margin:8px 0}p{line-height:1.5}button,select{font:inherit;border-radius:9px;border:1px solid #bdcdd7;background:white;color:#17354b;min-height:48px;padding:10px 14px;cursor:pointer}button:hover{background:#eaf2f6}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #bf952d;outline-offset:3px}.primary{background:#0b5a87;border-color:#0b5a87;color:white}.primary:hover{background:#10405e}.out{color:#973c2b;border-color:#dba294}.break{color:#6b5310;border-color:#dcc98f;background:#fffaf0}.actions details{grid-column:1/-1;margin:4px 0}.actions details label{display:block;margin:10px 0;font-size:15px}.actions details input,.actions details textarea{display:block;width:100%;font:inherit;padding:10px;margin-top:5px}main>nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0}.link{border:0;background:transparent;text-decoration:underline;font-size:15px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.row h2{margin:0}.worker{display:flex;align-items:center;gap:15px;border-top:1px solid #e5edf1;padding:18px 0;cursor:pointer}.worker:first-of-type{margin-top:15px}.worker input{width:23px;height:23px;accent-color:#0b5a87;flex-shrink:0}.worker div{flex:1;min-width:0}.worker small{display:block;margin-top:4px;font-size:15px;text-transform:capitalize}.hours{font-size:17px;font-weight:700;white-space:nowrap}.muted{color:#627682;font-size:15px}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.two label{display:block;font-size:15px;font-weight:600}.two select{width:100%;margin-top:7px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.job{border:1px solid #d3e1e9;background:#f7fafc;border-radius:10px;padding:18px;margin-top:14px}.job button{width:100%}.source{font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:1px;color:#466d83}.allocation{display:grid;grid-template-columns:1fr auto;gap:4px 12px;border-top:1px solid #e4ebef;padding:14px 0}.allocation span{font-size:15px;grid-column:1;color:#627682;text-transform:capitalize}.allocation b{grid-column:2;grid-row:1/3;align-self:center;white-space:nowrap}.error{border-left:4px solid #b44a35;background:#fff0ec;color:#873420;padding:16px}.notice{color:#276246;font-size:15px}.empty{color:#627682}details{padding:18px;border:1px solid #d3e1e9;border-radius:10px;margin:18px 0}details p{font-size:15px}summary{cursor:pointer;font-weight:700}@media(max-width:420px){main{padding:16px 12px 40px}section{padding:17px}header{padding:20px}.row{align-items:flex-start}.worker{gap:9px}.actions{gap:8px}.actions button{font-size:16px}.two{grid-template-columns:1fr}h2{font-size:20px}}@media print{header,.preview,button,.actions,.two,details{display:none}section{box-shadow:none;break-inside:avoid}body{background:white}}
input[type=file]{display:block;max-width:100%;margin:12px 0;font:inherit;font-size:16px}.media-item{border-top:1px solid #dae4e9;padding:14px 0;overflow-wrap:anywhere}.media-item p{margin:5px 0}section>label{display:block;margin:12px 0}section>label>select{display:block;width:100%;margin-top:6px}
.login-form{display:grid;gap:14px;max-width:440px}.login-form input{font:inherit;padding:14px;border:1px solid #bdcdd7;border-radius:9px}main>select{display:block;width:100%;margin:14px 0}
.login-form label{display:grid;gap:6px}.login-form input,.login-form textarea,.login-form select{width:100%;min-width:0}.login-form textarea{font:inherit;min-height:100px;padding:12px}section>input{max-width:100%;font:inherit} @media print{form,main>p,main>a,section>input{display:none}aside{font-weight:bold}}
@media print{.login-form{display:none}}
section>select{width:100%;max-width:100%;min-width:0}.worker span{min-width:0;overflow-wrap:anywhere}
.language-control{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:15px}.language-control select{font-size:16px;min-height:44px;max-width:160px}header{flex-wrap:wrap}@media print{.language-control{display:none}}

.unplanned-work form{display:grid;gap:12px}.unplanned-work label{display:flex;flex-direction:column;gap:5px}.unplanned-work input,.unplanned-work select,.unplanned-work textarea{max-width:100%;box-sizing:border-box;padding:10px;font:inherit}.unplanned-work fieldset label{flex-direction:row;align-items:center}.unplanned-work details,.unplanned-work article{border:1px solid #aab8c5;border-radius:8px;padding:12px;margin:12px 0;overflow-wrap:anywhere}.unplanned-work summary{cursor:pointer;font-weight:600}.unplanned-work button{padding:12px;margin:6px 0}.unplanned-work textarea{min-height:90px}
.password-field{position:relative;display:block}.password-field input{width:100%;box-sizing:border-box;padding-right:52px}.password-field .eye{position:absolute;top:0;right:0;bottom:0;width:48px;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:#4a5d6b;cursor:pointer}.password-field .eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.suite-video h2{margin-bottom:12px}.video-frame{position:relative;aspect-ratio:16/9;width:100%;border-radius:12px;overflow:hidden;background:#103a5d}.video-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#103a5d}.suite-video .muted{margin:12px 0 0}@media print{.suite-video{display:none}}
