:root{color-scheme:light;--ink:#1f2f3d;--muted:#53616a;--bg:#f7f1e6;--paper:#fffaf2;--line:#eadcc2;--blue:#003a5d;--sand:#eadcc2;--accent:#bb761d;--rust:#97452e;font-family:Tahoma,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);padding:10px 14px}button:hover{filter:brightness(.95)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.layout{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100dvh}aside{background:var(--blue);color:var(--bg);padding:32px 19px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;flex-direction:column;align-items:center;direction:ltr;margin-inline:auto}.brand img{display:block;width:132px;height:132px}.brand small{font-size:9px;letter-spacing:2px;color:var(--sand)}.nav-caption{font-size:12px;color:var(--sand);margin:21px 11px 0}nav{display:grid;gap:6px}nav button{background:transparent;border:0;text-align:start;color:var(--bg);white-space:nowrap}nav button[aria-current=true]{background:#215777;color:#fff}nav span{display:inline-block;width:27px;color:var(--sand)}.foot{margin-top:auto;color:var(--sand);font-size:12px;padding:14px 8px}.foot i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e5ad62;margin-left:6px}main{width:100%;max-width:1470px;padding:32px clamp(16px,4vw,60px);margin:auto;margin-top:0}header,.section-head,.dialog-head,.actions,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}header{margin-bottom:18px}.eyebrow{color:var(--blue);font-size:13px}h1{font-size:clamp(26px,4vw,42px);margin:8px 0 0}h2{font-size:19px;margin:0}p{line-height:1.65}.hero{background:var(--blue);color:var(--bg);padding:25px clamp(16px,3vw,32px);border-radius:19px;display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.hero p{margin:9px 0 0;color:var(--bg)}.hero small{color:var(--sand)}.metrics,.split{display:grid;gap:13px;margin:16px 0;grid-template-columns:repeat(4,minmax(0,1fr))}.split{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.panel{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:16px;min-width:0}.card span,.hint,#status{color:var(--muted);font-size:13px}.card strong{display:block;font-size:clamp(17px,2.3vw,26px);margin-top:10px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.panel{margin-block:14px}.split .panel{margin:0}.section-head{margin-bottom:14px}.toolbar{justify-content:flex-start}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(124px,1fr));gap:10px;margin:12px 0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:grid;gap:6px;font-size:13px;font-weight:600}input,select,textarea{width:100%;min-width:0;background:white;border:1px solid #cdbfa7;border-radius:8px;padding:9px;color:var(--ink)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:start;font-size:13px}th,td{padding:11px 9px;text-align:start;border-bottom:1px solid var(--line);white-space:nowrap}td.note{white-space:normal;min-width:110px;overflow-wrap:anywhere}th{background:var(--bg);color:var(--blue)}td button{padding:5px 10px}.empty{padding:18px;text-align:center;color:var(--muted);margin:0}.badge{display:inline-block;padding:5px 9px;background:var(--sand);color:#74381f;border-radius:16px;font-size:12px}.danger,#error{color:var(--rust)}#status:empty,#error:empty{display:none}#status:not(:empty){margin-bottom:12px}dialog{width:min(590px,calc(100% - 24px));max-height:calc(100dvh - 26px);border:1px solid var(--line);border-radius:17px;padding:22px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#1f2f3daa}.dialog-head{margin-bottom:20px}.actions{justify-content:flex-start;margin-top:20px}.wide{grid-column:1/-1}bdi{direction:ltr;unicode-bidi:isolate}@media screen and (max-width:800px){.layout{display:block}aside{padding:12px;gap:10px}.brand{margin:0;flex-direction:row;justify-content:flex-end;gap:4px}.brand img{width:74px;height:74px}.nav-caption,.foot{display:none}nav{display:flex;overflow:auto;gap:4px}nav button{padding:8px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding-top:19px}}@media screen and (max-width:480px){.split{grid-template-columns:1fr}.fields{gap:10px}header .primary{padding:8px;font-size:13px}.card,.panel{padding:12px}}
#account-form{display:grid;gap:13px}.account-row input{font-size:16px}.account-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.account-row input{max-width:185px}

#assistant-command{font-size:16px}#assistant-form .actions{margin-top:10px}#assistant-quick{margin-block:14px}#assistant-quick button{font-size:13px;padding:6px 10px}#assistant-answer{white-space:pre-line;overflow-wrap:anywhere;background:var(--bg);padding:12px;border-radius:10px}
.home-actions{margin-top:16px}.shift-math{background:var(--bg);border-radius:10px;padding:12px;margin:0;font-weight:700}.shift-expenses{padding-inline-start:20px;line-height:1.8}details>summary{cursor:pointer;font-weight:700}details>.fields{margin-top:12px}#editor input[type=number]{font-size:16px}
@media screen and (max-width:640px){.mobile-records table,.mobile-records tbody{display:block}.mobile-records thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.mobile-records tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid var(--line);border-radius:10px;padding:8px;margin-bottom:8px}.mobile-records td{display:block;white-space:normal;border:0;padding:4px;overflow-wrap:anywhere}.mobile-records td::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.mobile-records td.note{min-width:0}}
.tip-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0}.tip-person{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--bg);cursor:pointer}.tip-person input{width:18px;height:18px;flex:none;accent-color:var(--blue)}.tip-person small{display:block;color:var(--muted)}

.report-print-heading{display:none}
@media print{
  @page{size:landscape;margin:12mm}
  body:has(#report-output){background:#fff;color:#202a33}
  .layout:has(#report-output),.layout:has(#report-output) main{display:block;width:auto;max-width:none;margin:0;padding:0}
  .layout:has(#report-output) aside,.layout:has(#report-output) header,
  .layout:has(#report-output) #status,.report-controls{display:none}
  #report-output .report-print-heading{display:block;margin-bottom:5mm}
  #report-output h1{font-size:17pt;margin:0}
  #report-output h2{font-size:11pt}
  #report-output .metrics{gap:6px;margin:8px 0;break-inside:avoid}
  #report-output .card{padding:8px;border-radius:4px;background:#fff}
  #report-output .card span{font-size:8pt}
  #report-output .card strong{font-size:12pt;margin-top:3px}
  #report-output .panel{border:0;border-radius:0;background:#fff;margin:12px 0;padding:0}
  #report-output .section-head{margin-bottom:4px;break-after:avoid}
  #report-output .table-wrap{overflow:visible}
  #report-output table{font-size:8pt}
  #report-output thead{display:table-header-group;break-inside:avoid}
  #report-output tr{break-inside:avoid}
  #report-output th,#report-output td{padding:5px;border:1px solid #bfc6cb;white-space:normal;overflow-wrap:anywhere}
  #report-output td.note{min-width:0}
  #report-output td bdi{white-space:nowrap}
  #report-output .empty{padding:5px;text-align:start;font-size:8pt}
}
