:root{font-family:Arial,Helvetica,sans-serif;color:#172024;background:#f4f4f2;font-synthesis:none;--ink:#141b1e;--orange:#ed5b2c;--muted:#526066;--line:#d9dfde}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{cursor:default;opacity:.55}
.skip-link{position:absolute;top:-70px;left:16px;z-index:20;padding:12px 16px;background:#fff;color:#141b1e}.skip-link:focus{top:12px}
.masthead{background:var(--ink);color:#fff;border-top:5px solid var(--orange)}.masthead-inner{max-width:1440px;margin:auto;min-height:81px;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand img{width:62px;height:56px;object-fit:contain}.brand small{display:block;color:#ff9770;font-size:11px;letter-spacing:.1em;font-weight:700}.brand strong{display:block;font-size:19px;line-height:1.2;margin-top:3px}.top-actions{display:flex;align-items:center;gap:17px;font-size:13px;color:#d3dddd}.top-actions>span{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions>button{background:transparent;border:0;color:#fff;text-decoration:underline;text-underline-offset:4px;min-height:44px}.language{display:flex;gap:2px;padding:3px;background:#293438;border-radius:7px}.language button{background:transparent;border:0;border-radius:5px;color:#d4dddd;min-width:42px;min-height:40px;font-size:12px;font-weight:700}.language button[aria-pressed=true]{background:#fff;color:var(--ink)}
#notice{position:fixed;bottom:22px;right:22px;max-width:min(450px,calc(100vw - 32px));z-index:40;padding:15px 18px;background:#153126;color:#fff;border-radius:8px;font-size:14px;box-shadow:0 8px 30px #0002}#notice.error{background:#812c20}
main{max-width:1440px;margin:auto;padding:39px 28px 30px}.brandline{color:#a94220;font-size:12px;font-weight:800;letter-spacing:.12em;margin:0 0 12px}.page-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;min-height:160px;margin-bottom:31px}.page-intro h1{font-size:clamp(34px,4vw,59px);letter-spacing:-.05em;line-height:1.05;margin:0 0 11px}.page-intro p:last-child{font-size:15px;color:var(--muted);line-height:1.5;margin:0}.intro-mark{font-weight:900;font-size:69px;letter-spacing:-.08em;color:#d8dcda;line-height:.85;text-align:right}.intro-mark span{display:block;color:#e3b09d;font-size:27px;letter-spacing:.15em;margin-top:5px}
.tabs{display:flex;gap:5px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:32px}.tabs button{background:transparent;border:0;padding:15px 17px;color:#556267;font-weight:700;font-size:14px;white-space:nowrap;border-bottom:3px solid transparent}.tabs button.active{color:var(--ink);border-color:var(--orange)}.tabs button:hover{color:var(--ink)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px}.section-heading h2{font-size:27px;letter-spacing:-.035em;margin:0 0 7px}.section-heading p{color:var(--muted);font-size:14px;line-height:1.5;margin:0}.heading-actions{display:flex;gap:8px}.week-controls{display:flex;align-items:end;gap:7px}.week-controls label{font-size:12px;color:var(--muted);font-weight:700}.week-controls label span{display:block;margin-bottom:6px}.icon-button{width:44px;height:44px;background:#fff;border:0;border-radius:6px;font-size:28px;line-height:1}.icon-button:hover{background:#eee8e4}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border:0;border-radius:6px;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.button.primary{background:var(--orange);color:#171b1c}.button.primary:hover{background:#dc4f21}.button.secondary{background:#e8ebeb;color:#263236}.button.secondary:hover{background:#dce1e0}.button.small{min-height:37px;padding:8px 11px;font-size:12px}.status-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 18px;background:#e8ecea;border-radius:8px;margin-bottom:13px}.status-bar>div{display:flex;align-items:center;gap:13px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.status-pill{display:inline-flex;align-items:center;border-radius:4px;background:#fff;padding:7px 9px;font-size:12px;font-weight:700;color:#213136}.status-pill.published{background:#dcefe5;color:#1c5a3d}.status-pill.changes{background:#fff0e3;color:#8c451b}
.table-scroll{overflow:auto;background:#fff;border-radius:8px;overscroll-behavior:contain}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #edf0ef;vertical-align:middle}th{font-size:12px;font-weight:700;color:#526166;background:#f9faf9;white-space:nowrap}tbody tr:last-child td{border-bottom:0}.schedule-table{min-width:1080px}.schedule-table th:first-child,.schedule-table td:first-child{position:sticky;left:0;background:#fff;min-width:205px;z-index:1}.schedule-table th:first-child{background:#f9faf9;z-index:2}.schedule-table td:first-child strong{display:block;font-size:14px}.schedule-table td:first-child small{display:block;color:#657278;margin-top:3px}.schedule-table td{min-width:125px}.schedule-table select{min-width:121px;max-width:155px;font-size:12px;padding:9px 7px;border:1px solid #cdd6d5;background:#fff;border-radius:5px}.schedule-table select.assigned{background:#fff2eb;border-color:#eeae93}.table-note{font-size:12px;line-height:1.5;color:#657278;margin:10px 0 0}
.summary-panel{margin-top:28px;background:#fff;border-radius:8px;padding:21px}.summary-panel h3{font-size:18px;margin:0 0 13px}.summary-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,2fr) auto;gap:15px;align-items:center;padding:13px 0;border-top:1px solid #edf0ef}.summary-row strong{font-size:14px}.summary-row small{display:block;margin-top:4px;color:#647279;font-size:12px}.summary-row p{font-size:13px;line-height:1.5;color:#4d5c61;margin:0}.summary-row b{font-size:13px}.empty{padding:45px 20px;background:#fff;border-radius:9px;text-align:center}.empty h3{margin:0 0 8px;font-size:19px}.empty p{color:var(--muted);margin:0}
.filter-line{display:flex;gap:16px;align-items:end;margin:0 0 14px}.filter-line label:not(.inline-check){display:block;min-width:min(350px,100%);font-size:12px;font-weight:700;color:#566368}.filter-line label span{display:block;margin-bottom:6px}.filter-line input[type=search]{width:100%}.inline-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#4c5b60}.inline-check input{width:17px;height:17px;accent-color:var(--orange)}
input,select{min-height:44px;border:1px solid #cbd4d4;border-radius:6px;background:#fff;color:var(--ink);padding:9px 11px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #a74220;outline-offset:2px}.directory-list{background:#fff;border-radius:8px;overflow:hidden}.directory-row{display:grid;grid-template-columns:minmax(190px,1.5fr) minmax(150px,1fr) minmax(180px,1.3fr) auto;align-items:center;gap:15px;padding:18px 20px;border-bottom:1px solid #eef0ef}.directory-row:last-child{border-bottom:0}.directory-row strong{font-size:16px;display:block}.directory-row small{color:#627075;font-size:12px;display:block;margin-top:4px;overflow-wrap:anywhere}.directory-row p{font-size:13px;color:#4f5e62;line-height:1.45;margin:0}.directory-row .button{justify-self:end}.inactive{opacity:.6}.pill{display:inline-block;background:#eaf0ed;color:#335448;padding:4px 7px;border-radius:4px;font-size:11px;font-weight:700;margin-right:5px;margin-top:5px}
.history-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:14px;align-items:start}.panel{background:#fff;padding:21px;border-radius:8px}.panel h3{font-size:18px;margin:0 0 14px}.publication{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid #eef0ef}.publication strong{font-size:14px}.publication small{display:block;color:#647278;margin-top:5px;font-size:12px}.publication .delivery{font-size:12px;font-weight:700;white-space:nowrap;color:#345645}.report-filters{display:grid;grid-template-columns:1fr 1fr;gap:11px}.report-filters label:first-child{grid-column:1/-1}.report-filters label span{display:block;color:#56656a;font-size:12px;font-weight:700;margin-bottom:5px}.report-filters input,.report-filters select{width:100%}.report-filters button{grid-column:1/-1;justify-self:start;margin-top:4px}.report-result{background:#fff;margin-top:20px;border-radius:8px;padding:24px}.report-brand{display:flex;gap:10px;align-items:center}.report-brand img{width:60px;height:50px;object-fit:contain}.report-brand strong{display:block;font-size:11px;letter-spacing:.08em}.report-brand span{font-size:12px;color:#667377}.report-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin:19px 0}.report-heading h3{font-size:25px;margin:0 0 5px}.report-heading p{font-size:13px;color:#58676b;margin:0}.report-totals{display:flex;gap:18px;margin-bottom:15px}.report-totals span{background:#eff2f0;padding:11px 14px;border-radius:5px;font-size:13px}.report-totals strong{font-size:18px;margin-right:5px}.report-result select{font-size:12px;min-height:35px}
footer{padding:43px 0 25px;color:#667478;font-size:12px;display:flex;justify-content:space-between;gap:15px}.login{min-height:calc(100vh - 81px);display:grid;place-items:center;padding:25px;background:#141b1e;color:#fff}.login-inner{max-width:650px;margin:auto}.login .brandline{color:#ff9a73}.login h1{font-size:clamp(41px,6vw,69px);letter-spacing:-.05em;line-height:1.02;margin:0 0 17px}.login p:not(.brandline){color:#c6d0d2;line-height:1.6;font-size:16px;max-width:480px}.login .button{margin-top:18px}.login #loginMessage{color:#ffb18f;font-size:13px}
dialog{width:min(650px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:11px;padding:24px;color:var(--ink);box-shadow:0 20px 70px #0005}dialog::backdrop{background:#10191c9c}.dialog-top{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:21px}.dialog-top h2{font-size:25px;margin:0;letter-spacing:-.03em}.dialog-top .brandline{margin-bottom:6px}.close{width:44px;height:44px;flex:none;border:0;border-radius:50%;background:#e9ecec;font-size:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{font-size:12px;font-weight:700;color:#4f5c62}.form-grid label span{display:block;margin-bottom:6px}.form-grid input{width:100%;font-size:14px;font-weight:400}.form-grid .full{grid-column:1/-1}.form-grid .inline-check span{display:inline;margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.skill-editor-row{display:grid;grid-template-columns:1fr 110px 130px;gap:9px;align-items:center;margin-top:9px}.skill-editor-row span{font-size:13px}.skill-editor-row select,.skill-editor-row input{width:100%;font-size:12px}.skill-editor-row select{min-height:40px}#employeeSkillEditor{margin-top:22px}#employeeSkillEditor h3{font-size:17px;margin:0}#publishDialog{width:min(720px,calc(100vw - 24px))}#publishDialog>p{color:#526066;line-height:1.5;font-size:14px}.preview-project{padding:13px 0;border-top:1px solid #e6ebea}.preview-project strong{font-size:15px}.preview-project small{display:block;color:#58676b;margin-top:4px}.preview-project p{font-size:13px;margin:7px 0 0;line-height:1.5}
@media(max-width:900px){.page-intro{min-height:0}.intro-mark{display:none}.history-grid{grid-template-columns:1fr}.directory-row{grid-template-columns:1.4fr 1fr auto}.directory-row p{grid-column:1/-1;grid-row:2}}
@media(max-width:650px){.masthead-inner{padding:10px 16px;min-height:73px}.brand img{width:51px;height:47px}.brand small{display:none}.brand strong{font-size:16px}.top-actions{gap:6px}.top-actions>span{display:none}.top-actions>button{font-size:12px}.language button{min-width:38px}main{padding:26px 16px 20px}.page-intro{margin-bottom:20px}.page-intro h1{font-size:36px}.page-intro p:last-child{font-size:14px}.tabs{margin-bottom:24px}.tabs button{padding:12px 13px;font-size:13px}.section-heading{display:block}.section-heading h2{font-size:23px}.week-controls{margin-top:17px}.heading-actions{margin-top:17px}.status-bar{display:block}.status-bar .button{margin-top:13px;width:100%}.summary-row{grid-template-columns:1fr auto}.summary-row p{grid-column:1/-1;grid-row:2}.directory-row{grid-template-columns:1fr auto;gap:10px}.directory-row p{grid-column:1/-1}.directory-row .button{grid-column:2;grid-row:1}.filter-line{display:block}.filter-line .inline-check{margin-top:12px}.report-filters{grid-template-columns:1fr}.report-filters label:first-child{grid-column:auto}.report-filters button{grid-column:auto}.report-heading{display:block}.report-heading button{margin-top:12px}.report-totals{display:block}.report-totals span{display:block;margin-bottom:8px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.skill-editor-row{grid-template-columns:1fr 85px}.skill-editor-row input{grid-column:1/-1}footer{display:block}footer span:last-child{display:block;margin-top:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:#fff}.masthead,.tabs,.page-intro,.section-heading,.status-bar,.summary-panel,.history-grid,.report-heading button,footer,#notice,.table-note{display:none!important}main{padding:0}main>.view{display:none!important}#historyView,#reportResult{display:block!important}#reportResult{padding:0;margin:0}.report-brand{border-top:5px solid #ed5b2c;padding-top:12px}.report-result table{font-size:10px}th,td{padding:8px}.report-result select{appearance:none;border:0;background:none;padding:0;font-size:10px}@page{size:letter;margin:14mm}}
