:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#182635;background:#f1f4f7;font-size:16px;line-height:1.5;--accent:#006bb6}*{box-sizing:border-box}body{margin:0}header{background:white;border-bottom:1px solid #d4dde5;padding:18px max(20px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.salazar{width:270px;max-width:100%;height:auto;display:block}.account{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:.9rem}.account form{margin:0}main{max-width:1180px;margin:auto;padding:24px 20px 60px}h1{font-size:clamp(1.6rem,4vw,2.2rem);line-height:1.15;margin:8px 0 20px;letter-spacing:-.035em}h2{font-size:1.2rem;margin:0 0 16px}h3{font-size:1.1rem;margin:0 0 12px}p{margin:8px 0 16px}a{color:#005a99;text-underline-offset:4px}nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:18px}nav a{padding:10px 16px;white-space:nowrap;text-decoration:none;color:#36485a;border-radius:8px;background:#e6ecf1}nav .current{background:#142f47;color:white}.page-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:20px 0}.eyebrow{font-size:.8rem;font-weight:750;letter-spacing:.13em;color:#536b80;margin:0}.datebar,.inline{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.datebar label{margin:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:14px}.card{background:#fff;border:1px solid #d9e1e8;border-radius:12px;padding:22px;margin-bottom:18px;box-shadow:0 4px 14px #142f4705}.grid .card{margin-bottom:0}.shift{margin:26px 0}.shift h2{border-left:4px solid var(--accent);padding-left:12px}.shift h2 span{font-size:.9rem;color:#617282;font-weight:400;display:inline-block}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:14px}.person{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.badge{display:inline-block;background:#edf2f6;border-radius:6px;padding:3px 8px;font-size:.875rem}.hint,.empty{color:#586d7f;font-size:.95rem}.empty{padding:12px 0}.amount{font-size:1.7rem;font-weight:750}.warning{color:#8c3c00}label{display:block;font-weight:600;font-size:.9rem;margin:12px 0}input,select,textarea{display:block;width:100%;font:inherit;font-size:1rem;color:inherit;border:1px solid #a9b8c5;border-radius:7px;background:#fff;padding:11px 12px;margin-top:6px;min-height:46px;max-width:100%}textarea{min-height:82px;resize:vertical}button{font:inherit;font-size:.95rem;font-weight:600;min-height:46px;border:1px solid #afbeca;border-radius:7px;padding:10px 15px;background:#f7f9fb;color:#18334b;cursor:pointer}button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:#006bb6;border-color:#006bb6;color:white}.quiet{background:transparent;border-color:transparent;font-size:.85rem}.marks{display:flex;flex-wrap:wrap;gap:8px}.marks form{margin:0}.selected.present{background:#155a44;color:#fff;border-color:#155a44}.selected.absent{background:#9f2631;color:#fff;border-color:#9f2631}.selected.permission{background:#254a83;color:#fff;border-color:#254a83}.notice{padding:14px 18px;border-radius:8px;background:#e3edf5;border:1px solid #c0d3e4}.notice.error{background:#fff0f0;border-color:#e9b5b5;color:#8d2020}.notice.success{border-color:#aacbbb;background:#ebf7f0;color:#195839}details{margin-top:14px}summary{cursor:pointer;font-weight:650;padding:8px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem}form+form{margin-top:12px}.login{max-width:440px;margin:8vh auto}.login h1{margin-bottom:24px}.login .primary{width:100%;margin-top:16px}.download{display:inline-block;margin:18px 0}footer{text-align:center;padding:20px;color:#607384;font-size:.9rem}:focus-visible{outline:3px solid #00a3de;outline-offset:3px}@media(max-width:640px){header{padding:16px;align-items:flex-start;flex-direction:column;gap:12px}.salazar{width:230px}.account{justify-content:space-between;width:100%;gap:8px}main{padding:16px 14px 40px}.page-top{display:block}.datebar{margin:18px 0}.card{padding:17px}.inline>*{flex:1 1 140px}.marks button{padding:10px 11px}nav a{padding:9px 13px}.login{margin:5vh auto}}
