:root{--blue:#003893;--dark:#052b6d;--paper:#f4f6fb;--line:#d7e0ee;--muted:#63708a;--amber:#806100}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:#1d3353;font:17px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button{min-height:48px;border:1px solid #cbd7eb;border-radius:9px;background:#fff;color:#14376f;padding:11px 14px;font-weight:650;cursor:pointer;touch-action:manipulation}button:hover{background:#edf3ff}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #cb9a35;outline-offset:2px}button.primary{background:var(--blue);color:#fff;border-color:var(--blue)}button.primary:hover{background:#002667}.app{max-width:620px;min-height:100vh;margin:auto;background:#fff;border-inline:1px solid var(--line)}header{background:var(--blue);color:#fff;padding:20px;display:flex;align-items:center;justify-content:space-between}header b{font-size:12px;letter-spacing:2px;color:#d8e5d9}h1{font-size:25px;line-height:1.15;margin:3px 0 0}header button{border-color:#78958b;color:white;background:transparent;min-width:95px}header button:hover{background:#ffffff15}main{padding:18px 16px}.morepanel{padding:16px;background:#f1f5fc;display:grid;grid-template-columns:1fr 1fr;gap:10px}.morepanel button{text-align:left;font-size:15px}.morepanel p{grid-column:1/-1;color:var(--muted);font-size:13px;margin:5px 0}.daytools label{display:block;font-size:14px;font-weight:600;color:var(--muted);margin-bottom:6px}select{min-height:50px;border:1px solid #cad6ea;background:#fff;border-radius:8px;color:#163b7a;padding:10px 12px;max-width:100%}.daytools select{display:block;width:100%;font-size:18px;font-weight:700}.actions{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;margin-top:12px}.actions button{font-size:16px}.notice{padding:13px 14px;margin-top:14px;border-radius:9px;background:#fff3d6;color:#70521c;font-size:14px;line-height:1.6}.notice b{display:block;font-size:16px}.notice p{margin:4px 0 10px}.notice button{width:100%;margin-top:8px}.notice.readonly{background:#edf1f1;color:#526563}.tabs{position:sticky;top:0;background:#fff;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 0 10px}.tabs button{border:2px solid #d7e0ee;padding:11px 6px;font-size:18px;min-height:60px}.tabs small{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:3px}.tabs button[aria-pressed=true]{background:#fff8d9;border-color:var(--blue);color:var(--blue)}.tabs button[aria-pressed=true] small{color:var(--blue)}.next{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:17px 15px;background:#eef4ff;border:1px solid #cfdbed;border-radius:10px}.next small{display:block;font-size:13px;color:#506a90}.next b{font-size:29px;line-height:1.3;display:block;margin-top:3px}.next button{min-width:137px;font-size:17px;min-height:57px}.linebar{display:flex;align-items:center;justify-content:space-between;margin-top:17px;gap:10px}.linebar span{font-weight:700;font-size:19px}.linebar button{font-size:13px;min-height:44px;padding:9px 11px}.hint{font-size:12px;line-height:1.5;margin:9px 0 14px;color:var(--muted)}.row{display:grid;grid-template-columns:29px 41px minmax(55px,1fr) 112px;align-items:center;gap:4px;min-height:65px;border:1px solid var(--line);border-bottom:0;padding:6px 11px}.row:first-child{border-radius:8px 8px 0 0}.row:last-child{border-bottom:1px solid var(--line);border-radius:0 0 8px 8px}.row:only-child{border-radius:8px}.row.isnext{background:#fff9df;border-color:#ebcd4c}.position{font-size:13px;color:#6f7c92}.taxi{font-size:23px;font-weight:750}.draghandle{touch-action:none;min-height:46px;width:39px;padding:4px;color:#6f7d9a;border-color:transparent;font-size:23px;cursor:grab;background:transparent;letter-spacing:-5px}.draghandle:hover{background:#fff7ce}.draghandle:active{cursor:grabbing}.status{font-size:12px;padding:7px;min-height:44px;border-color:#ccdbee;color:#003893;background:#f1f5ff;white-space:nowrap}.status.overseas{color:#895d11;background:#fff5dd;border-color:#ead8ab}.status.sick,.status.unavailable{background:#f7eff0;color:#8d5058;border-color:#e9d8db}.isaway .taxi{color:#859087}.dropabove{box-shadow:inset 0 4px var(--blue)}.dropbelow{box-shadow:inset 0 -4px var(--blue)}.bottomnote{font-size:13px;color:var(--muted);text-align:center;margin:20px 0 10px}footer{padding:0 20px 22px;text-align:center;color:#6c7890;font-size:10px}dialog{border:0;border-radius:14px;width:min(560px,calc(100% - 24px));padding:20px;color:#1d3353;box-shadow:0 15px 65px #12387344;max-height:90dvh;overflow:auto}dialog::backdrop{background:#142c5688}.dialoghead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.dialoghead h2{font-size:23px;margin:0}.dialoghead button{border:0;padding:5px 10px;min-width:44px;font-size:20px}.dialogactions{display:flex;justify-content:flex-end;gap:10px;padding-top:18px;margin-top:18px;border-top:1px solid var(--line)}.dialogactions button{min-width:110px}.field{display:block;font-size:15px;font-weight:600;margin:18px 0}.field input,.field select,.field textarea{display:block;min-height:50px;width:100%;margin-top:7px;padding:11px;border:1px solid #cad6ea;border-radius:8px}.field textarea{height:140px}.help{font-size:15px;color:#5d6e89;line-height:1.7}.warning{background:#fff3d6;color:#75521b;border-radius:7px;padding:12px;font-size:14px;line-height:1.7}.driveredit{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:10px 0}.driveredit b{font-size:17px}.driveredit select{font-size:14px;max-width:58%}.sharepreview{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px;background:#fff;margin:16px 0}.shareactions{display:grid;grid-template-columns:1fr;gap:10px}.shareactions button{min-height:52px;text-align:center}.shareactions a{display:block;min-height:50px;text-decoration:none;color:#14376f;font-weight:650;border:1px solid #cbd7eb;border-radius:9px;text-align:center;padding:12px}.sharepreviewwrap{max-height:340px;overflow:auto;background:#eef1ee;padding:10px;border-radius:8px}.sharepreviewwrap .sharepreview{margin:0}details{margin-top:20px}summary{cursor:pointer;font-size:15px;font-weight:650;color:var(--blue);min-height:44px;padding-top:10px}.job{padding:11px 0;border-top:1px solid var(--line);font-size:14px}.job small{color:var(--muted);display:block;margin-top:4px}.ruleslist{padding-left:20px;font-size:15px;line-height:1.8}.ruleslist li{margin:12px 0}.copybox{width:100%;height:220px;font-size:15px;border:1px solid var(--line);padding:12px;border-radius:6px}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#003893;color:white;padding:15px 20px;max-width:calc(100vw - 24px);width:max-content;box-shadow:0 4px 20px #0002;border-radius:9px;font-size:14px;z-index:5;display:none}#toast.show{display:block}[hidden]{display:none!important}@media(max-width:360px){main{padding:15px 10px}.row{grid-template-columns:24px 36px minmax(48px,1fr) 103px;padding:6px}.status{font-size:11px}.taxi{font-size:21px}.next b{font-size:25px}.next button{min-width:123px;padding:11px}.actions button{font-size:14px;padding:10px}.linebar button{font-size:12px}.tabs button{font-size:17px}}


.recordhint{font-size:13px;color:var(--muted);line-height:1.5;margin:10px 0 0}.next>div{min-width:0}.next button{font-size:16px;min-width:145px;padding-inline:12px}@media(max-width:360px){.next button{font-size:14px;min-width:132px;padding-inline:9px}.next b{font-size:23px}}

header{background:#fff;color:var(--blue);border-bottom:5px solid #fece02;padding:12px 18px;gap:12px}header button{color:var(--blue);border-color:#b7c8e4;background:#f5f8ff;flex-shrink:0}header button:hover{background:#fff7ce}.brand{min-width:0}.logowrap{width:210px;height:127px;overflow:hidden;background:white}.logowrap img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}header h1{font-size:21px;color:var(--blue);margin:4px 0 0 7px}.tabs button[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 -4px #fece02}.row.isnext{border-color:#e5cb54}.status.available{color:var(--blue);background:#eef4ff}@media(max-width:450px){.logowrap{width:180px;height:109px}header{padding:10px 14px}header h1{font-size:20px}header button{min-width:86px;padding:10px}}
