:root{--teal:#226b80;--dark-teal:#1a566a;--light-teal:#2e8aa8;--yellow:#faffb8;--ink:#10242b;--slate:#2d4650;--paper:#f4f7f5;--line:#10242b29;--white:#fff;--content:min(1240px, calc(100vw - 2rem))}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:linear-gradient(180deg, #091d24 0%, #12323e 15rem, #e5eeeb 15rem, var(--paper) 100%);margin:0;font-family:Avenir Next,Helvetica Neue,Helvetica,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.login-shell{place-items:center;min-height:100vh;padding:1rem;display:grid}.login-panel{width:min(480px,100%);color:var(--white);background:#07131ac7;border:1px solid #ffffff24;border-radius:18px;padding:1.4rem;box-shadow:0 18px 50px #07131a47}.login-panel img{width:220px;margin-bottom:1.3rem}.login-panel h1{letter-spacing:-.04em;margin:0 0 1rem;font-size:2.2rem}.app-shell{width:var(--content);margin:0 auto;padding:1rem 0 3rem}.topbar{justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.brandmark img{width:clamp(210px,26vw,315px)}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.topbar nav button,.button{border:0;border-radius:999px;min-height:2.65rem;padding:.65rem .9rem;font-weight:800}.topbar nav button{color:#ffffffe6;text-transform:uppercase;letter-spacing:.08em;background:#ffffff0f;border:1px solid #ffffff29;font-size:.76rem}.topbar nav button.active,.topbar nav button:hover{background:#faffb824;border-color:#faffb885}.status-strip,.workspace-grid{gap:1rem;display:grid}.status-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin:.4rem 0 1rem}.workspace-grid{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);align-items:start}.stack{gap:1rem;display:grid}.panel,.metric,.record{border:1px solid var(--line);background:#fffffff5;box-shadow:0 12px 28px #07131a17}.panel{border-radius:18px;padding:1.2rem}.active-shift-card{border:1px solid var(--line);background:#226b800f;border-radius:14px;gap:.35rem;margin-bottom:1rem;padding:1rem;display:grid}.active-shift-card.is-active{background:linear-gradient(#faffb88a,#226b8014);border-color:#226b8057}.active-shift-card h3,.active-shift-card p{margin-bottom:0}.metric{border-radius:16px;padding:1rem}.metric span,.eyebrow,.field span{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:900;display:block}.eyebrow{color:var(--yellow);margin:0 0 .45rem}.eyebrow.dark{color:var(--teal)}.metric strong{margin-top:.2rem;font-size:1.8rem;display:block}h2,h3,p{margin-top:0}h2{letter-spacing:-.035em;margin-bottom:1rem;font-size:1.55rem}h3{margin-bottom:.25rem}p{color:var(--slate);line-height:1.5}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.form-grid.single{grid-template-columns:1fr}.field.full{grid-column:1/-1}.field{gap:.35rem;display:grid}.field input,.field select,.field textarea,.search-field input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--white);border-radius:12px;padding:.72rem}.field textarea{resize:vertical;min-height:5.5rem}.form-actions{flex-wrap:wrap;grid-column:1/-1;gap:.6rem;display:flex}.button.primary{color:var(--white);background:linear-gradient(135deg, var(--light-teal), var(--teal))}.button.secondary{color:var(--teal);background:#226b801a}.button.warn{color:var(--ink);background:var(--yellow)}.button.danger{color:#8f1d1d;background:#8f1d1d14}.button.ghost{color:var(--white);background:#ffffff1a}.button.small{min-height:2.2rem;padding:.4rem .7rem}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-bottom:1rem;display:grid}.record-list{gap:.75rem;display:grid}.panel-title-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.panel-title-row h2{margin-bottom:0}.search-field{gap:.35rem;width:min(100%,18rem);display:grid}.record-tools{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:.6rem;display:flex}.search-field span{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:900}.record{border-radius:14px;justify-content:space-between;gap:1rem;padding:1rem;display:flex}.record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:.45rem;min-width:8.5rem;display:flex}.tag-row{flex-wrap:wrap;gap:.4rem;display:flex}.tag-row span{color:var(--teal);background:#226b801a;border-radius:999px;padding:.28rem .6rem;font-size:.78rem;font-weight:800}.inline-check{color:var(--teal);background:#226b801a;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .6rem;font-size:.78rem;font-weight:800;display:inline-flex}.inline-check input{width:.95rem;height:.95rem;accent-color:var(--teal)}.inline-check.is-disabled{opacity:.62}.line-item{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.65rem 0;display:flex}.calendar-shell{border:1px solid var(--line);background:#fffffff5;border-radius:18px;overflow:hidden;box-shadow:0 12px 28px #07131a17}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:1rem;display:flex}.calendar-actions{flex-wrap:wrap;gap:.5rem;display:flex}.calendar-title{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,3vw,2.2rem)}.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day-name,.calendar-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-day-name{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;background:#226b8014;padding:.65rem;font-size:.68rem;font-weight:900}.calendar-cell{background:#ffffff94;min-height:122px;padding:.55rem}.calendar-cell.outside{background:#dce7e56b}.day-number{width:1.75rem;height:1.75rem;color:var(--slate);border-radius:50%;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.calendar-cell.today .day-number{color:var(--white);background:var(--teal)}.event-pill{color:var(--ink);text-overflow:ellipsis;background:#226b801a;border-radius:7px;margin-top:.35rem;padding:.32rem .42rem;font-size:.72rem;font-weight:800;line-height:1.25;display:block;overflow:hidden}.event-pill.travel{background:#faffb8c2}.event-pill.show{color:var(--white);background:var(--teal)}.event-pill.hold{background:#226b8014}.event-pill.starts{border-top-right-radius:0;border-bottom-right-radius:0}.event-pill.continues{border-radius:0}.event-pill.ends{border-top-left-radius:0;border-bottom-left-radius:0}.tag-link,.tag-button{color:var(--teal);background:#226b801a;border:0;border-radius:999px;align-items:center;padding:.28rem .6rem;font-size:.78rem;font-weight:800;text-decoration:none;display:inline-flex}#invoice-print-root{display:none}.print-invoice{color:var(--ink);background:var(--white);font-family:Avenir Next,Helvetica Neue,Helvetica,Arial,sans-serif}.print-invoice-header{border-bottom:5px solid var(--teal);justify-content:space-between;gap:2rem;padding-bottom:1.2rem;display:flex}.print-invoice-header h1{color:var(--teal);letter-spacing:.08em;margin:0 0 .4rem;font-size:2.6rem}.print-invoice-header p,.print-invoice-meta p,.print-invoice-footer,.print-invoice-notes{color:var(--ink);margin-bottom:.25rem}.print-invoice-meta{grid-template-columns:1fr 1.4fr;gap:1rem;margin:1.4rem 0;display:grid}.print-invoice-meta>div{border:1px solid var(--line);padding:1rem}.print-invoice-meta span{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem;font-size:.72rem;font-weight:900;display:block}.print-invoice-table{border-collapse:collapse;width:100%}.print-invoice-table th,.print-invoice-table td{border-bottom:1px solid var(--line);text-align:left;padding:.75rem}.print-invoice-table th{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-size:.74rem}.print-invoice-total{border-top:3px solid var(--teal);justify-items:end;gap:.2rem;margin-top:1.2rem;padding-top:1rem;display:grid}.print-invoice-total span{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-weight:900}.print-invoice-total strong{font-size:2rem}.print-invoice-notes{border-left:4px solid var(--teal);background:#226b800f;margin-top:1.3rem;padding:.8rem}.print-invoice-footer{border-top:1px solid var(--line);margin-top:2rem;padding-top:.8rem;font-size:.9rem}.notice,.empty{color:var(--ink);background:#faffb899;border-radius:12px;padding:.8rem}.setup-row{color:#ffffffd1;align-items:center;gap:.8rem;margin-top:1rem;display:flex}@media print{body{background:var(--white)}.app-shell>:not(#invoice-print-root){display:none!important}#invoice-print-root{display:block}.print-invoice{padding:.25in}@page{margin:.45in}}@media (max-width:900px){.topbar,.panel-title-row,.record{display:grid}.topbar nav{justify-content:flex-start}.search-field{width:100%}.record-tools{justify-content:stretch}.status-strip,.workspace-grid,.form-grid,.quick-actions,.calendar-grid{grid-template-columns:1fr}.calendar-day-name{display:none}.calendar-cell{min-height:auto}}
