:root{color:#1c1c1e;background:#f5f5f7;font-family:system-ui,sans-serif}body{margin:0}main{max-width:720px;margin:0 auto;padding:1rem}main.center{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:80vh;display:flex}.topbar{justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:.75rem;display:flex}.brand h1{letter-spacing:-.02em;margin:0;font-family:Manrope,system-ui,sans-serif;font-weight:800}.brand-logo{border-radius:50%;width:40px;height:40px}.brand-large{flex-direction:column;gap:1rem}.brand-logo-large{border-radius:50%;width:100px;height:100px}.card{background:#fff;border-radius:12px;margin:1rem 0;padding:1rem 1.25rem;box-shadow:0 1px 3px #00000014}.card h2{margin-top:0}.row{flex-wrap:wrap;gap:1rem;margin:.5rem 0;display:flex}.add-employee-row{flex-wrap:nowrap}.add-employee-row label{flex:1;min-width:0}.add-employee-row input{box-sizing:border-box;width:100%}.role-picker{flex-wrap:wrap;gap:.75rem 1.25rem;margin:.5rem 0 .75rem;display:flex}.role-choice{flex-direction:row;align-items:center;gap:.4rem}.role-rate{align-items:center;gap:.2rem;display:inline-flex}.role-rate input{width:4.5rem}label{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}input,select,button{padding:.4rem .6rem;font-size:1rem}button{cursor:pointer}button.link{color:#2563eb;background:0 0;border:none;padding:0 .25rem;font-size:.85rem}.entries{padding:0;list-style:none}.entries li{border-bottom:1px solid #eee;padding:.4rem 0}.entries li.voided{color:#999;text-decoration:line-through}.entries .date{color:#666;font-variant-numeric:tabular-nums}.void-note{font-style:italic;text-decoration:none;display:inline-block}.error{color:#b91c1c;background:#fee2e2;border-radius:8px;padding:.5rem .75rem}.warning{color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:.5rem .75rem}.site-footer{flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;padding:2rem 1rem;font-size:.85rem;display:flex}.site-footer a{color:#2563eb;text-decoration:none}label.consent{flex-direction:row;align-items:flex-start;gap:.6rem;margin:.75rem 0;font-size:.9rem}label.consent input[type=checkbox]{flex-shrink:0;margin-top:.2rem}.drawer-backdrop{z-index:10;background:#00000040;position:fixed;inset:0}.drawer{z-index:11;background:#f5f5f7;flex-direction:column;width:min(460px,100vw);height:100vh;padding:1rem 1.25rem;display:flex;position:fixed;top:0;right:0;box-shadow:-2px 0 12px #00000026}.drawer-head{justify-content:space-between;align-items:baseline;display:flex}.drawer-head h2{margin:0 0 .5rem}.drawer-body{flex:1;margin-top:.5rem;overflow-y:auto}.hint{color:#666;font-size:.85rem}table.staff{border-collapse:collapse;width:100%;font-size:.9rem}table.staff th,table.staff td{text-align:left;border-bottom:1px solid #eee;padding:.4rem .5rem}table.staff tr.inactive td{color:#999}.period-banner{text-align:center;background:#eef4fb;border:1px solid #c9dcef;border-radius:6px;margin:10px 0 1rem;padding:.6rem .9rem}.period-banner-ended{background:#fdf3e3;border-color:#edd9ac}button.primary{color:#fff;background:#2563eb;border:none;border-radius:6px;margin-top:4px;padding:.5rem 1.1rem;font-weight:600;box-shadow:0 2px 5px #2563eb59}button.primary:hover:not(:disabled){background:#1d4ed8;box-shadow:0 3px 8px #2563eb73}button.primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px #2563eb59}button.primary:disabled{opacity:.6;cursor:default}.time-select{width:7.5rem;position:relative}.time-select input{box-sizing:border-box;width:100%}.time-options{z-index:20;background:#fff;border:1px solid #ddd;border-radius:6px;max-height:180px;margin:2px 0 0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001f}.time-option{text-align:left;background:0 0;border:none;width:100%;padding:.3rem .6rem;font-size:.9rem;display:block}.time-option:hover{background:#eef4fb}.time-option.selected{color:#2563eb;font-weight:700}.shift-hours-wrap{align-items:flex-end;display:flex}.shift-hours{white-space:nowrap;align-items:center;height:2.4rem;font-size:1rem;font-weight:700;display:flex}.shift-row label{width:9rem}.shift-row .time-select{width:100%}.shift-row input,.shift-row select{box-sizing:border-box;height:2.4rem}.total-so-far{text-align:right;margin:.5rem 0 0}.card-head{justify-content:space-between;align-items:baseline;display:flex}.card-head h2{margin-top:0}.optin-title{white-space:nowrap}.h2-sub{color:#666;font-size:.85rem;font-weight:400}@media (width<=600px){.topbar{flex-direction:column;align-items:flex-start;gap:2px}.topbar .brand h1{white-space:nowrap}.period-banner{white-space:nowrap;padding:.6rem .25rem;font-size:.9rem}.card>button.primary{margin-left:auto;display:block}.card h2{white-space:nowrap;font-size:1rem}.topbar>div:not(.brand){align-self:flex-end}}.add-entry .row input,.add-entry .row select{box-sizing:border-box;height:2.4rem}.addon-field{flex-direction:column;gap:.25rem;width:100%;font-size:.85rem;display:flex}.addon-chips{flex-wrap:wrap;gap:.15rem 1rem;display:flex}.addon-chip{cursor:pointer;flex-direction:row;align-items:center;gap:.3rem;font-size:.9rem}.add-entry .addon-chip input{height:auto;margin:0}.grid-row label{width:9rem}.product-row{align-items:center;gap:1rem;margin:.25rem 0;display:flex}.product-row input{width:9rem}.product-add{align-self:flex-start;margin-top:.25rem}
