:root{--bg:#f4f6fa;--panel:#fff;--text:#172033;--muted:#6b7280;--line:#e4e8f0;--blue:#2459d3;--blue2:#eaf0ff;--green:#147a48;--greenbg:#e8f7ef;--red:#b42318;--amber:#a15c00}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:var(--blue);text-decoration:none}.top{height:auto;min-height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:12px max(calc((100% - 1180px)/2),24px)}.brand{font-size:20px;font-weight:800;color:#172033;white-space:nowrap}.brand span{font-size:14px;font-weight:600;margin-left:8px}.top nav{display:flex;gap:18px}.top nav a{color:#424c60;font-weight:600}.profile{margin-left:auto;font-size:13px;display:flex;align-items:center;gap:9px}.profile small{color:var(--muted)}.profile a{margin-left:8px}.wrap{max-width:1180px;margin:34px auto;padding:0 22px;min-height:70vh}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}h1{font-size:30px;line-height:1.2;margin:0 0 8px;letter-spacing:-.5px}h2{font-size:19px;margin:0 0 16px}.muted{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:24px;box-shadow:0 3px 14px #1d2c4a06}.panel.narrow{width:min(460px,calc(100% - 30px));padding:32px}.center{min-height:100vh;display:grid;place-items:center;padding:25px}.logo{font-weight:900;font-size:25px;color:var(--blue);margin-bottom:18px}.logo span{color:#f59e0b}label{display:block;font-size:13px;font-weight:700;color:#3e4759;margin-bottom:15px}input,textarea,select{display:block;width:100%;margin-top:7px;border:1px solid #d7dce7;background:#fff;border-radius:9px;padding:12px 13px;font:inherit;color:var(--text);outline:none}input:focus,textarea:focus,select:focus{border-color:#7b9cf2;box-shadow:0 0 0 3px #2459d318}textarea{resize:vertical}button{border:0;border-radius:9px;padding:11px 16px;font:inherit;font-weight:700;cursor:pointer}.primary{background:var(--blue);color:#fff}.primary:hover{background:#1949b8}.secondary{background:#edf1f8;color:#25334b}.secondary:hover{background:#e1e7f1}.panel form>button{margin-top:3px}.panel.narrow form button{width:100%;margin-top:5px}.small{font-size:12px}.smallbtn{font-size:12px;padding:7px 9px}.alert{padding:11px 13px;background:#fff0ee;color:var(--red);border-radius:9px;margin:14px 0}.success{padding:11px 13px;background:var(--greenbg);color:var(--green);border-radius:9px;margin:14px 0}.success.inline{display:inline-block;margin:0}.grid{display:grid;gap:20px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.hidden{display:none}.taskcreate .grid{gap:14px}.tasklist{display:grid;gap:14px}.taskcard{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px;color:inherit;transition:.15s}.taskcard:hover{border-color:#a8bdf7;box-shadow:0 6px 20px #244d9d0d;transform:translateY(-1px)}.taskcard.isdone{opacity:.78}.taskcard h2{margin:13px 0 7px;font-size:19px}.taskmeta,.taskfoot{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.taskmeta time{margin-left:auto;color:var(--muted);font-size:12px}.pill,.priority{font-size:11px;font-weight:800;padding:4px 8px;border-radius:6px}.pill.open{background:#fff3db;color:#8c5200}.pill.done{background:var(--greenbg);color:var(--green)}.priority{background:#edf1f7;color:#566176}.p-high{background:#fff0ee;color:#b42318}.p-low{background:#f1f3f6;color:#667085}.taskexcerpt{color:#626c7e;margin:0 0 17px;white-space:pre-wrap}.taskfoot{font-size:12px;color:#7a8392;border-top:1px solid #eff1f5;padding-top:13px}.taskfoot b{color:#3d4658}.arrow{margin-left:auto;font-size:20px;color:var(--blue)}.empty{text-align:center;padding:60px 20px}.emptyicon{font-size:34px;color:var(--green)}.filters{margin:0 0 14px}.filter{display:inline-block;padding:8px 12px;border-radius:8px;background:var(--blue2);font-weight:700;font-size:13px}.back{display:inline-block;margin-bottom:18px;font-weight:700}.taskhead{margin-bottom:22px}.taskhead h1{margin-top:12px}.detail{grid-template-columns:1fr 1fr;align-items:start}.description{white-space:normal;overflow-wrap:anywhere;min-height:35px}.actions{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.completeform{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.commentform{padding-bottom:18px;border-bottom:1px solid var(--line)}.timeline{margin-top:12px}.event{border-left:2px solid #dce5fb;padding:0 0 16px 15px;margin-left:5px;position:relative}.event:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#7191e8;left:-5px;top:5px}.eventtop{display:flex;gap:12px;align-items:center;justify-content:space-between}.eventtop strong{font-size:13px}.eventtop time{font-size:11px;color:var(--muted)}.eventbody{font-size:13px;font-weight:700;margin-top:4px}.event p{font-size:13px;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 8px}th{color:var(--muted);font-size:11px;text-transform:uppercase}footer{text-align:center;padding:20px;color:#9098a8;font-size:12px;border-top:1px solid var(--line)}.narrow .muted{margin-bottom:24px}@media(max-width:760px){.top{flex-wrap:wrap;gap:12px;padding:14px 18px}.brand span{display:block;margin-left:0;font-size:12px}.top nav{order:3;width:100%}.profile{font-size:12px}.profile small{display:none}.wrap{margin:22px auto;padding:0 13px}.heading{align-items:flex-start;flex-direction:column}h1{font-size:25px}.grid.two,.detail{grid-template-columns:1fr}.panel{padding:18px}.taskcard{padding:16px}.taskmeta time{width:100%;margin-left:0}.taskfoot{gap:8px 12px}.eventtop{align-items:flex-start;flex-direction:column;gap:2px}}

/* v1.3 production usability */
.unread,.overdue{display:inline-block;border-radius:10px;padding:5px 9px;font-size:12px;font-weight:700;background:#e2edff;color:#184f9a}.overdue{background:#fff0db;color:#9c4500}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filters .filter{padding:8px 12px;border-radius:10px;background:#f2f4f8;text-decoration:none}.taskcard:has(.unread){border-left:4px solid #3977d6}.taskcard:has(.overdue){border-left:4px solid #d87a19}

/* v1.4: responsive tabular tasks and employees */
.employee-layout{display:flex;flex-direction:column;gap:18px}.employee-layout>.panel{width:100%;min-width:0}.employee-layout>.panel:first-child form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:end}.employee-layout>.panel:first-child form>input[type=hidden]{display:none}.employee-layout>.panel:first-child form>button{height:43px}.staff-photo{width:58px;height:70px;object-fit:cover;border-radius:9px;display:block}.staff-placeholder{display:block;font-size:11px;color:#777}.photo-form{display:flex;flex-direction:column;gap:5px;max-width:150px}.photo-form input{font-size:11px;max-width:140px}.tasks-table-wrap{overflow-x:auto}.tasks-table{width:100%;border-collapse:collapse;font-size:13px}.tasks-table th,.tasks-table td{padding:13px 11px;text-align:left;border-bottom:1px solid #e1e5eb;vertical-align:top}.tasks-table tbody tr:hover{background:#edf3ff}.tasks-table .isdone{opacity:.7}.task-title-cell{min-width:220px}.task-title-cell a{font-weight:700;text-decoration:none}.task-title-cell .unread,.task-title-cell .overdue{display:inline-block;margin:4px}.task-preview{position:fixed;z-index:500;pointer-events:none;max-width:min(360px,calc(100vw - 24px));max-height:240px;overflow:hidden;background:#fff;color:#263247;box-shadow:0 12px 34px #0003;border:1px solid #d6deea;border-radius:12px;padding:14px 16px;font-size:13px;line-height:1.5}.task-preview strong{display:block;margin-bottom:8px}.task-preview div{overflow-wrap:anywhere}.settings-form{max-width:520px}.settings-mail-link{display:inline-block;padding:10px 14px}@media(max-width:700px){.task-preview{display:none!important}.employee-layout>.panel:first-child form{grid-template-columns:1fr}}

/* v1.4.2: role avatars and password reset controls in employee table */
.staff-role-avatar{border-radius:50%;width:58px;height:58px;background:#f2f6fd;}
.admin-password-form{display:flex;flex-direction:column;gap:6px;min-width:165px;max-width:225px;}
.admin-password-form input{margin:0;padding:7px 9px;font-size:12px;}
.admin-password-form button{align-self:flex-start;}

/* v1.4.5: compact executor avatars in task grid */
.task-assignee{display:inline-flex;align-items:center;gap:9px;min-width:145px}
.task-mini-photo{width:34px;height:34px;min-width:34px;object-fit:cover;border-radius:50%;border:1px solid #dbe3ec;background:#f5f6f8}

/* v1.5 status, deadline and priority signals */
.status-label,.priority-label,.due-label{display:inline-flex;align-items:center;gap:5px;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:750;white-space:nowrap}
.status-new{background:#eceef1;color:#505967}.status-completed{background:#dcf7e3;color:#1d713b}.status-shipped{background:#d7d9af;color:#505c28}
.priority-high{background:#ffebeb;color:#bb2020}.priority-normal{background:#edf0f4;color:#667085}.priority-low{background:#f2e8d9;color:#80654a}
.due-critical{background:#ffe2e1;color:#bd211a}.due-warning{background:#fff0d2;color:#aa6400}.due-comfort{background:#e4f5e7;color:#24713b}.due-neutral{background:#f0f2f5;color:#697386}
.messenger-form{min-width:175px;display:grid;gap:5px}.messenger-form input{margin:0;padding:7px;font-size:12px}.messenger-form button{justify-self:start}

/* v1.6: production workflow, evidence, shipments and penalties */
.top-avatar{display:inline-block;width:33px;height:33px;min-width:33px;object-fit:cover;border-radius:50%;border:2px solid #dce5f7;vertical-align:middle;background:#edf3fc}
.status-submitted{background:#fff1cf;color:#936000}.status-ready,.status-completed{background:#dcf7e3;color:#1d713b}.status-shipped{background:#d7d9af;color:#505c28}
.wf-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.wf-gallery a{display:block;color:#424f61;font-size:12px}.wf-gallery img{width:100%;height:135px;object-fit:cover;border-radius:10px;border:1px solid #dde4ee;display:block}.wf-gallery small{display:block;margin-top:3px}
.penalty-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff8e9;color:#7e5100;border:1px solid #ecd6a3;padding:12px 16px;border-radius:12px;margin-bottom:14px;font-size:13px;flex-wrap:wrap}
.penalty-manager{border:1px solid #dce1e9;background:#fff;border-radius:12px;margin-bottom:18px;padding:12px 17px}.penalty-manager summary{font-size:13px;font-weight:700;cursor:pointer}.penalty-manager .tablewrap{margin-top:12px}
.wf-penalty-row{border-bottom:1px solid #eceef2;padding:12px 0;display:grid;gap:5px}.wf-penalty-row small{color:#5c6677}.wf-penalty-row form{justify-self:start}
.wf-notice{background:#eef5fc;color:#285380;border:1px solid #c5d9ed}
.completeform h3{margin:0 0 8px;font-size:16px}.detail{grid-template-columns:repeat(2,minmax(0,1fr))}.detail>.panel{min-width:0}
@media(max-width:760px){.detail{grid-template-columns:1fr}.top-avatar{width:30px;height:30px}.penalty-summary{flex-direction:column;align-items:flex-start}}

/* Cordman Production v1.7 — multiple work types with per-type requirements */
.work-types{margin:18px 0;padding:18px 16px;background:#f8fafc;border:1px solid #dfe6f1;border-radius:13px;min-width:0}
.work-types h3{font-size:17px;margin:0 0 6px}
.work-types .muted{margin:0 0 13px}
.work-head,.work-line{display:grid;grid-template-columns:minmax(125px,1.15fr) minmax(85px,.65fr) 76px minmax(150px,1.65fr);gap:10px;align-items:start}
.work-head{font-size:11px;color:#667085;font-weight:700;text-transform:uppercase;padding:0 8px 9px;border-bottom:1px solid #dfe5ed}
.work-line{padding:11px 8px;border-bottom:1px solid #e5e9ef;position:relative}
.work-line:last-child{border-bottom:0}
.work-line:has(input[type=checkbox]:checked){background:#eaf2ff;border-radius:9px}
.work-line input,.work-line textarea,.work-line select{margin:0;padding:9px 10px;font-size:13px;min-width:0}
.work-line .work-select{display:flex;align-items:center;gap:10px;margin:0;padding-top:9px;font-size:14px;color:#273449;font-weight:700;cursor:pointer}
.work-select input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;accent-color:#2459d3}
.work-other-name{grid-column:1/-1;max-width:440px}
.work-preview{border-top:1px solid #e7ecf4;margin-top:9px;padding-top:8px;color:#475467;font-size:12px}
.work-readonly td{vertical-align:top;white-space:pre-wrap}
.work-readonly td:nth-child(2){white-space:nowrap;font-weight:700}
@media(max-width:800px){.work-head{display:none}.work-line{grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) 80px}.work-line textarea{grid-column:1/-1}.work-line .work-select{grid-column:1/-1}.work-other-name{grid-column:1/-1}}
@media(max-width:500px){.work-line{grid-template-columns:1fr 88px}.work-line .work-select,.work-line textarea,.work-other-name{grid-column:1/-1}}

/* v1.8 secure numeric CAPTCHA */
.captcha-box{border:1px solid #d5dfed;background:#f6f9ff;border-radius:12px;padding:12px;margin:12px 0 16px}.captcha-box>label:first-child{margin:0 0 7px;font-weight:700}.captcha-image{display:flex;align-items:center;padding:5px 0 8px}.captcha-image img{width:185px;height:58px;display:block;border:1px solid #cdd9e8;border-radius:8px}.captcha-box label:last-child{margin:0}.captcha-box input{font-size:19px;letter-spacing:4px;font-variant-numeric:tabular-nums;max-width:230px}
