:root{font-family:Inter,Arial,Helvetica,sans-serif;color:#20323e;background:#edf2f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #ccd8df;border-radius:9px;background:#fff;color:#264454;padding:9px 14px;font-weight:650}button:hover{filter:brightness(.96)}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:#117b83;color:white;border-color:#117b83}.ghost{background:#fff}header{background:#233e50;color:#fff;padding:18px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;gap:14px;align-items:center}.mark{font-weight:900;font-size:34px;letter-spacing:-5px;background:#117b83;border-radius:12px;padding:2px 14px 5px 8px;color:#fff}.mark span{font-size:14px;color:#a7e7dd;letter-spacing:0}h1{font-size:23px;line-height:1.2;margin:2px 0}.eyebrow{font-size:10px;letter-spacing:2.4px;color:#b6d3dc;font-weight:750}.header-actions,.actions,.week-controls,.toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.sync{font-size:12px;color:#c1d9e0}.toolbar{padding:16px 28px;justify-content:space-between;background:#f9fbfc;border-bottom:1px solid #d9e3e8}.week-controls>button:first-child,.week-controls>button:nth-child(3){font-size:24px;padding:3px 15px}.week-label{font-weight:800;margin-left:10px;font-size:18px}main{padding:22px 28px 28px;max-width:1900px;margin:auto}.board-top{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:17px;flex-wrap:wrap}h2{margin:0;font-size:20px}.board-top p,.admin-panel p{color:#61737d;margin:5px 0 0;font-size:13px}.legend{display:flex;gap:18px;font-size:12px;font-weight:700}.legend span{display:flex;align-items:center;gap:6px}.dot{display:inline-block;width:11px;height:11px;border-radius:3px}.dot.shop{background:#d8e2e7}.dot.away{background:#e9ad54}.dot.pto{background:#9a82c8}.board{background:#fff;border:1px solid #cbd8df;border-radius:13px;overflow:auto;box-shadow:0 6px 22px #18313c0d}.schedule-grid{display:grid;grid-template-columns:minmax(155px,1.2fr) repeat(5,minmax(125px,1fr));min-width:800px}.cell{padding:9px 10px;min-height:41px;border-bottom:1px solid #e1e8eb;border-right:1px solid #e1e8eb;display:flex;align-items:center;justify-content:center;font-size:13px;text-align:center;overflow-wrap:anywhere}.cell.name{justify-content:flex-start;text-align:left;font-weight:750;color:#253e4d}.cell.header-cell{background:#294b5d;color:#fff;min-height:65px;flex-direction:column;gap:3px;font-weight:800;border-color:#426274}.header-cell small{font-size:12px;font-weight:500;color:#c6dbe4}.cell.group{grid-column:1/-1;background:#d9e8ed;color:#25495b;min-height:31px;justify-content:flex-start;text-align:left;font-size:12px;letter-spacing:1.1px;font-weight:900;text-transform:uppercase;padding:6px 13px}.cell:nth-child(odd){} .cell.shop-status{color:#82949d;font-weight:650}.status{display:block;width:100%;border-radius:6px;padding:7px 5px;font-size:12px;font-weight:800;line-height:1.25}.status.away{background:#fff0d8;color:#7a4807;border:1px solid #f1d4a3}.status.pto{background:#eee8fa;color:#604b88;border:1px solid #d9cbf1}.edit-cell{cursor:pointer}.edit-cell:hover{background:#e9f7f6}.row-alt{background:#f7fafb}.admin-panel{margin-top:22px;padding:20px;background:#fff;border:1px solid #d8e2e8;border-radius:12px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.employee-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #e2e9ed;padding:9px 0}.employee-row .emp-name{flex:1;font-weight:700}.employee-row .dept{color:#72838b;font-size:12px}.employee-row button{padding:5px 10px}.hidden{display:none!important}.error{background:#ffe5e4;color:#8c2621;padding:10px;border-radius:7px;margin:10px 0}footer{padding:12px 28px;font-size:11px;color:#647781;display:flex;justify-content:space-between}dialog{border:1px solid #d2dee3;border-radius:16px;padding:24px;width:min(460px,95vw);box-shadow:0 20px 60px #172d3b44}dialog::backdrop{background:#142d3a99}dialog form{display:flex;flex-direction:column;gap:14px}dialog p{font-size:13px;color:#687d87;margin:0}dialog label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}dialog input,dialog select{width:100%;border:1px solid #b9cbd4;border-radius:8px;padding:11px;background:white;color:#233d4b}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.hint{font-size:12px}.display-mode .toolbar,.display-mode .header-actions,.display-mode .admin-panel,.display-mode footer{display:none!important}.display-mode main{max-width:none;padding:18px}.display-mode .cell{min-height:clamp(38px,4.3vh,75px);font-size:clamp(13px,1.15vw,23px)}.display-mode .status{font-size:clamp(12px,1vw,20px)}.display-mode .cell.group{min-height:31px}.display-mode header{padding:13px 25px}.display-mode .board-top{margin-bottom:12px}@media(max-width:850px){header{padding:14px}main{padding:12px}.toolbar{padding:12px}.week-label{font-size:14px}.legend{gap:8px}}@page{size:landscape;margin:8mm}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{background:white}header{padding:6px 0;background:white!important;color:#233e50!important}header .mark{background:#117b83!important;color:white!important}header .eyebrow{color:#406678!important}.header-actions,.toolbar,.admin-panel,footer{display:none!important}main{padding:8px 0;max-width:none}.board{box-shadow:none;border-radius:0;overflow:visible}.schedule-grid{min-width:0;grid-template-columns:minmax(120px,1.15fr) repeat(5,minmax(100px,1fr))}.cell{padding:5px;min-height:29px;font-size:10px}.status{font-size:9px;padding:4px 3px}.cell.header-cell{min-height:40px}.cell.group{min-height:22px}.board-top{margin:5px 0 9px}.board-top p{display:none}.board-top h2{font-size:14px}.legend{font-size:9px}.display-mode .cell{min-height:29px;font-size:10px}.display-mode .status{font-size:9px}}

/* AMPS green, yellow and white redesign */
:root{color:#173d2a;background:#f2f6ef}
header{background:linear-gradient(110deg,#073d27,#116039 72%,#245f32);border-bottom:4px solid #e8d33b}
.brand-logo{display:block;width:clamp(105px,12vw,185px);height:58px;object-fit:contain;object-position:left center;background:white;border-radius:9px;padding:6px 9px}
.eyebrow{color:#e8d33b}.sync{color:#e4f0dc}
button{border-color:#c8d8c4;color:#1b4d30}.primary{background:#186c3c;border-color:#186c3c}.primary:hover{background:#10562e}
.toolbar{background:#fff;border-bottom:1px solid #d5e3d0}.week-label{color:#184b2e}
.board{border-color:#c7d9c1;box-shadow:0 8px 30px #17462b0c}
.cell{border-color:#dfebda}.cell.name{color:#18462b}.cell.header-cell{background:#165f37;border-color:#428558}.header-cell small{color:#e7efca}
.cell.group{background:#e8efcc;color:#235e33;border-bottom:2px solid #d5df88}
.cell.shop-status{color:#45614d;font-weight:700}.row-alt{background:#f6f9f2}
.status.away{background:#fff4c4;color:#63500a;border-color:#ead26b}.status.pto{background:#eee7f8;color:#62458d;border-color:#d8c7ed}
.edit-cell:hover{background:#eef6df}.dot.away{background:#ead25c}.dot.shop{background:#b7cfac}
.admin-panel{border-color:#cbdcc5}.board-top p,.admin-panel p{color:#607565}
.exit-display{display:none;position:fixed;z-index:30;top:12px;right:12px;background:#f4f8ec;color:#184c2b;border:1px solid #b9d1a9;box-shadow:0 3px 12px #0002;padding:8px 12px;font-size:12px;opacity:.86}
.exit-display:hover,.exit-display:focus{opacity:1}
.display-mode .exit-display{display:block}
/* TV view: distribute the entire board within the available screen height. */
.display-mode{height:100dvh;overflow:hidden;display:flex;flex-direction:column}
.display-mode #app{height:100dvh;display:flex;flex-direction:column;min-height:0}
.display-mode header{flex:0 0 auto;padding:7px 20px;min-height:66px}
.display-mode .brand-logo{height:42px;width:120px;padding:3px 7px}
.display-mode h1{font-size:clamp(15px,1.8vw,25px)}
.display-mode .eyebrow{font-size:9px}
.display-mode main{flex:1;min-height:0;display:flex;flex-direction:column;padding:7px 14px 10px;width:100%;max-width:none}
.display-mode .board-top{flex:0 0 auto;margin:0 0 6px;gap:5px}
.display-mode .board-top h2{font-size:clamp(14px,1.6vw,22px)}
.display-mode .board-top p{display:none}
.display-mode .legend{font-size:clamp(9px,.9vw,13px)}
.display-mode .board{flex:1;min-height:0;overflow:hidden;border-radius:9px}
.display-mode .schedule-grid{height:100%;min-width:0;grid-template-rows:minmax(34px,1.7fr) repeat(3,minmax(18px,.65fr)) repeat(17,minmax(0,1fr));grid-template-columns:minmax(95px,1.15fr) repeat(5,minmax(0,1fr))}
.display-mode .cell{min-height:0;padding:2px 5px;font-size:clamp(9px,1.04vw,17px);line-height:1.12}
.display-mode .cell.header-cell{min-height:0;gap:1px;font-size:clamp(10px,1.12vw,17px)}
.display-mode .header-cell small{font-size:clamp(9px,.9vw,14px)}
.display-mode .cell.group{min-height:0;padding:1px 8px;font-size:clamp(9px,.95vw,13px)}
.display-mode .status{font-size:inherit;padding:2px 3px;line-height:1.05;border-radius:4px}
@media(max-height:700px){.display-mode header{min-height:48px;padding:3px 14px}.display-mode .brand-logo{height:32px;width:94px}.display-mode .board-top{margin-bottom:3px}.display-mode .board-top h2{font-size:13px}.display-mode .legend{font-size:9px}.display-mode .cell{font-size:clamp(8px,.85vw,12px)}.display-mode .status{padding:1px 2px}}
@media print{.exit-display{display:none!important}header{background:white!important;color:#17472b!important;border-bottom:2px solid #e1cc3c}.brand-logo{width:130px;height:48px}.cell.header-cell{background:#165f37!important;color:white!important}.cell.group{background:#e8efcc!important}.display-mode{height:auto;overflow:visible}.display-mode #app{height:auto}.display-mode main{display:block}.display-mode .board{overflow:visible}.display-mode .schedule-grid{height:auto;grid-template-rows:none}.display-mode .cell{min-height:28px;font-size:10px}}
/* Logo/header refinement: full-width clean white header, no logo tile. */
header, .display-mode header {background:#ffffff!important;color:#17472b!important;border-bottom:4px solid #e8d33b;}
.brand{display:flex;align-items:center;gap:18px;min-width:0}
.brand-logo{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;object-fit:contain!important;object-position:center center!important;width:clamp(145px,16vw,215px)!important;height:72px!important;flex-shrink:0}
header .eyebrow{color:#477a54!important}
header h1{color:#17472b!important}
header .sync{color:#51745c!important}
.display-mode .brand-logo{width:clamp(115px,12vw,170px)!important;height:52px!important}
.display-mode header{min-height:66px!important;padding:7px 20px!important}
@media(max-height:700px){.display-mode .brand-logo{height:38px!important;width:120px!important}.display-mode header{min-height:50px!important;padding:4px 14px!important}}
@media print{header,.display-mode header{background:white!important}.brand-logo{width:145px!important;height:52px!important}}
/* Final logo treatment: no surrounding tile, preserve original transparent logo. */
header, .display-mode header {background:#0b4930!important;color:#fff!important;border-bottom:4px solid #e8d33b!important;}
.brand-logo, .display-mode .brand-logo {background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:0!important;object-fit:contain!important;object-position:center center!important;}
header .eyebrow {color:#f3df57!important;}
header h1 {color:#fff!important;}
header .sync {color:#d8e8de!important;}
@media print {header, .display-mode header {background:#fff!important;color:#17472b!important;} header h1 {color:#17472b!important;} header .eyebrow {color:#477a54!important;}}
