@font-face{font-family:Dailyactuals;src:local('Inter'),local('SF Pro Text');font-display:swap}
:root{font-family:Dailyactuals,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;--navy:#232933;--charcoal:#403c3a;--stone:#554333;--gold:#b2814f;--reference-white:#b4afac;--paper:#f6f5f3;--surface:#fff;--ink:var(--navy);--on-accent:#171c24;--accent-ink:#76512f;--line:#d7d1ca;--control-line:#8a7e71;--muted:#625c57;--muted-on-dark:var(--reference-white);--success:#2f6650;--danger:#8b302a;--focus:#76512f;--focus-on-dark:#c99b68}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:38px;letter-spacing:-1.4px;line-height:1.15;font-weight:650}h2{font-size:23px;letter-spacing:-.5px}h3{font-size:17px}small,.small{font-size:12px}.app-header{height:100px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1260px)/2));gap:24px}.brand{display:flex;align-items:center;gap:18px;text-decoration:none}.company-logo{width:175px;height:70px;object-fit:contain}.dailyactuals-word{border-left:1px solid var(--control-line);padding-left:20px;font-size:15px;font-weight:650;letter-spacing:3px}.brand-mark{display:none}.brand strong{letter-spacing:2px}.brand small{display:block;letter-spacing:3px;font-size:10px;margin-top:4px}.header-actions{display:flex;align-items:center;gap:10px}.local-pill{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted-on-dark);margin-right:10px;white-space:nowrap}.local-pill span{width:6px;height:6px;background:var(--gold);border-radius:50%}.button{min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:6px;padding:10px 17px;font-size:13px;font-weight:600;white-space:nowrap;text-decoration:none;transition:background .15s}.primary{background:var(--gold);color:var(--on-accent)}.primary:hover{background:#c99b68;color:var(--on-accent)}.secondary{background:white;border-color:var(--control-line);color:var(--charcoal)}.secondary:hover{background:#f0ebe5}.app-header .secondary{background:var(--charcoal);border-color:var(--control-line);color:var(--paper)}.app-header .secondary:hover{background:#554d46}#saved-count{font-size:11px;color:var(--muted-on-dark)}.demo-strip{background:#f0e7db;border-bottom:1px solid #d7c2a8;padding:10px 32px;text-align:center;font-size:10px;font-weight:700;letter-spacing:1.2px;color:var(--stone)}.demo-strip span{font-weight:400;letter-spacing:0;margin-left:12px;font-size:12px}main{max-width:1260px;margin:0 auto;padding:40px 32px 50px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;color:var(--muted);margin-bottom:10px}.subtitle{font-size:14px;color:var(--muted);margin-top:9px}.heading-status{display:flex;align-items:flex-end;flex-direction:column;gap:9px}.status-pill{font-size:11px;font-weight:650;background:#ece7e0;color:var(--stone);padding:6px 12px;border-radius:30px}.status-pill.signed{color:var(--success);background:#dfede4}.heading-status small{color:var(--muted)}.steps{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:24px}.steps button{border:0;border-bottom:3px solid transparent;margin-bottom:-1px;background:none;padding:0 10px 17px 0;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:550;color:var(--muted)}.steps button span{display:grid;place-items:center;border:1px solid var(--control-line);border-radius:50%;width:25px;height:25px;font-size:11px}.steps button.active{color:var(--accent-ink);border-bottom-color:var(--accent-ink)}.steps button.active span{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:24px;align-items:start}.editor{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden;box-shadow:0 4px 20px #23293305}#step-content{padding:28px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.section-head p{margin-top:6px}.muted{color:var(--muted);font-size:13px;line-height:1.6}.assignment-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.assignment-card{text-align:left;border:1px solid var(--line);border-radius:7px;background:white;padding:21px;color:inherit}.assignment-card.selected{border:2px solid var(--accent-ink);padding:20px;background:#faf5ee}.assignment-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.equipment-badge{font-size:10px;font-weight:600;padding:5px 8px;background:#ece7e0;border-radius:4px;color:var(--stone)}.radio-dot{width:17px;height:17px;border:1px solid var(--control-line);border-radius:50%;display:grid;place-items:center}.selected .radio-dot{border:5px solid var(--accent-ink)}.assignment-card strong{display:block;font-size:24px;letter-spacing:-.4px;margin-bottom:5px}.assignment-card .incident-name{font-size:14px}.assignment-card small{display:block;color:var(--muted);margin-top:9px}.carry-note{display:flex;align-items:flex-start;gap:12px;background:#f4ece2;border:1px solid #dcc8af;border-radius:6px;padding:15px;margin:20px 0;font-size:13px;color:var(--stone);line-height:1.5}.check-circle{font-weight:bold;font-size:16px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:550}.field input,.field select,.field textarea{border:1px solid var(--control-line);background:#fff;border-radius:5px;padding:10px 11px;min-height:42px;min-width:0;width:100%;font-size:14px;font-weight:400;color:var(--charcoal)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent-ink);outline:2px solid var(--focus)}.field textarea{resize:vertical;min-height:76px;line-height:1.5}.field small{font-weight:400;color:var(--muted)}details{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}summary{font-size:13px;font-weight:600;cursor:pointer}details .field-grid{margin-top:18px}.wide{grid-column:1/-1}.crew-roster{margin-top:20px;display:flex;gap:10px;flex-wrap:wrap}.crew-chip{font-size:12px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;color:var(--charcoal)}.crew-chip span{color:var(--muted);margin-left:5px}.step-footer{padding:18px 28px;border-top:1px solid var(--line);background:#fbfaf8;display:flex;align-items:center;justify-content:space-between;gap:12px}.step-footer>span{font-size:11px;color:var(--muted)}.summary-card{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;margin-bottom:16px}.summary-top{padding:22px;background:var(--navy);color:#fff}.summary-top .eyebrow{color:var(--focus-on-dark);margin-bottom:15px}.summary-top strong{font-size:22px;font-weight:550;display:block}.summary-top p{font-size:12px;color:var(--line);margin-top:7px}.summary-body{padding:20px}.summary-row{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin-bottom:14px}.summary-row span:first-child{color:var(--muted)}.summary-row strong{font-weight:550;text-align:right}.summary-body hr{border:0;border-top:1px solid var(--line);margin:20px 0}.hours-total{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-top:12px;color:var(--muted)}.hours-total strong{font-size:22px;letter-spacing:-.8px;color:var(--navy);font-weight:550}.summary-note{font-size:11px;line-height:1.6;color:var(--muted);padding:0 6px}.summary-note strong{color:var(--stone);font-weight:600}.entry-card{border:1px solid var(--line);border-radius:7px;padding:18px;margin-bottom:16px}.entry-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.entry-heading strong{font-size:14px}.entry-heading small{color:var(--muted);margin-left:8px}.entry-total{font-size:13px;color:var(--success);font-weight:600}.time-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.work-periods{display:grid;grid-template-columns:1fr 1fr;gap:18px}.period-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.entry-notes{margin-top:14px}.text-button{border:0;background:none;color:var(--accent-ink);font-size:12px;font-weight:600;padding:4px 0}.entry-controls{display:flex;align-items:center;justify-content:space-between;margin:10px 0 24px}.remove-button{border:0;background:none;color:var(--muted);font-size:12px;padding:4px}.remove-button:hover{color:var(--accent-ink)}.rule-note{border-left:3px solid var(--gold);padding:9px 13px;margin:22px 0;font-size:12px;line-height:1.6;background:#f4ece2;color:var(--stone)}.issues{margin:0 28px 20px;padding:15px 18px;border:1px solid #dbb6b1;background:#fff6f3;border-radius:6px;color:var(--danger);font-size:12px;line-height:1.6}.issues ul{margin:7px 0 0;padding-left:20px}.app-footer{max-width:1260px;margin:0 auto;padding:0 32px 28px;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);letter-spacing:.6px}.app-footer a{text-decoration:none;letter-spacing:0}.separator{margin:0 12px;color:#a89e93}.review-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.review-total{padding:15px 18px;background:#f0ebe5;border-radius:6px}.review-total span{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.review-total strong{font-size:25px;font-weight:550}.pdf-preview{width:100%;height:465px;border:1px solid var(--line);border-radius:5px;background:#f0ebe5;margin:14px 0 22px}.pdf-placeholder{height:180px;display:grid;place-items:center;color:var(--muted);font-size:13px;background:#f0ebe5;border-radius:5px}.signers{display:grid;grid-template-columns:1fr 1fr;gap:14px}.signer-card{border:1px solid var(--line);border-radius:7px;padding:17px}.signer-card .field{font-size:11px}.signature-image{width:100%;height:66px;object-fit:contain;margin:12px 0}.unsigned-space{height:66px;display:flex;align-items:center;color:var(--muted);font-size:12px}.signed-label{font-size:10px;color:var(--success);margin-bottom:10px}.export-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}.saved-notice{margin-top:16px;border-radius:5px;padding:12px;background:#e8f1e7;color:var(--success);font-size:12px;line-height:1.5}dialog{border:1px solid var(--line);border-radius:10px;max-width:620px;width:calc(100% - 32px);padding:27px;box-shadow:0 25px 80px #23293330}dialog::backdrop{background:#171c2466;backdrop-filter:blur(2px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.icon-button{font-size:25px;line-height:25px;border:0;background:none;color:var(--muted);width:32px;height:32px}#signature-canvas{width:100%;height:160px;border:1px solid var(--control-line);border-radius:6px;background:#fbfaf8;touch-action:none;margin:18px 0;cursor:crosshair}.consent{font-size:12px;display:flex;align-items:flex-start;gap:10px;line-height:1.6;margin-bottom:12px}.consent input{accent-color:var(--accent-ink);width:17px;height:17px;flex-shrink:0}.signature-actions{display:flex;justify-content:space-between;margin-top:22px}.error{font-size:12px;color:var(--danger);margin-top:10px}.saved-row{border:1px solid var(--line);border-radius:6px;padding:16px;margin-bottom:12px}.saved-row strong{font-size:14px}.saved-row p{margin:6px 0 12px;font-size:12px;color:var(--muted)}.saved-row .button{font-size:11px;min-height:35px;padding:7px 11px}.saved-row-actions{display:flex;gap:8px}.archived-label{color:var(--muted);font-size:10px;margin-left:8px}.button:focus-visible,.steps button:focus-visible,.assignment-card:focus-visible{outline:3px solid var(--focus)}.edit-signature-note{font-size:12px;color:var(--stone);background:#f4ece2;border-radius:5px;padding:11px;margin-bottom:14px}[hidden]{display:none!important}
@media(min-width:1100px){aside{position:sticky;top:24px}}
@media(max-width:1000px){.local-pill{display:none}.workspace{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.app-header{padding:0 24px}.dailyactuals-word{font-size:12px;padding-left:14px}.company-logo{width:145px}main{padding:32px 24px}.work-periods{grid-template-columns:1fr}.step-footer>span{display:none}}
@media(max-width:760px){.app-header{height:82px;padding:0 18px}.company-logo{width:128px;height:53px}.dailyactuals-word{font-size:11px;letter-spacing:1.7px;padding-left:10px}.brand{gap:8px}.header-actions .button{font-size:11px;padding:8px 10px;min-height:36px}.header-actions{gap:6px}#new-button{display:none}.demo-strip{padding:9px 18px;text-align:left;font-size:9px}.demo-strip span{display:block;margin:3px 0 0;line-height:1.5;font-size:11px}main{padding:26px 16px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:24px}h1{font-size:31px}.subtitle{font-size:12px}.heading-status small{font-size:10px;max-width:95px;text-align:right}.steps{gap:8px}.steps button{font-size:11px;gap:6px;padding-right:6px}.steps button span{width:21px;height:21px;font-size:10px}.workspace{display:flex;flex-direction:column}.editor,aside{width:100%}aside{order:2}.summary-card{display:none}.summary-note{padding:0 6px}#step-content{padding:22px 18px}.section-head{align-items:flex-start}h2{font-size:21px}.assignment-card{padding:16px}.assignment-card.selected{padding:15px}.assignment-top{margin-bottom:16px}.assignment-card strong{font-size:21px}.assignment-card .incident-name{font-size:12px}.assignment-card small{font-size:10px}.equipment-badge{font-size:9px}.assignment-options{gap:10px}.field-grid{grid-template-columns:1fr}.work-periods{grid-template-columns:1fr}.entry-card{padding:14px}.entry-heading{flex-wrap:wrap;gap:8px}.signers{grid-template-columns:1fr}.step-footer{padding:15px 18px}.app-footer{padding:0 18px 24px;flex-wrap:wrap;line-height:1.5}.pdf-preview{height:390px}.review-total strong{font-size:21px}.export-actions .button{flex:1}.section-head .text-button{max-width:90px;text-align:right}.field input[type=time]{padding:9px 8px}.carry-note{font-size:12px}dialog{padding:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.handoff-fields{margin-top:22px}.handoff-note{margin:18px 0}.signer-heading{font-size:11px;font-weight:650;color:var(--muted);margin-bottom:12px}.revision-note{margin-bottom:16px;font-size:12px;color:var(--muted)}.preview-tools{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.preview-tools .button{font-size:11px;min-height:32px;padding:6px 10px}
.form-preview{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:5px;background:white;margin:14px 0 22px}
.demo-role-label{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted-on-dark)}.demo-role-label select{background:var(--charcoal);color:white;border:1px solid var(--control-line);border-radius:5px;padding:11px;font-size:12px}.decision-card{background:#f4ece2;border:1px solid #dcc8af;border-radius:6px;padding:16px;margin-top:20px;font-size:13px}.decision-card p{font-size:12px;margin-top:7px;color:var(--muted)}.button:disabled{cursor:not-allowed}.steps{gap:18px}
@media(max-width:760px){
  .app-header{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 18px}
  .brand{grid-column:1;grid-row:1}
  .dailyactuals-word{display:none}
  .company-logo{width:110px}
  .header-actions{display:contents}
  #saved-button{grid-column:2;grid-row:1;justify-self:end}
  #new-button{display:inline-flex;grid-column:2;grid-row:2;justify-self:end}
  .demo-role-label{grid-column:1;grid-row:2;font-size:10px;gap:6px;flex-wrap:wrap}
  .demo-role-label select{font-size:11px;padding:8px;max-width:120px}
  .steps{gap:5px}
  .steps button{font-size:10px;padding-right:3px;gap:4px;min-width:0}
  .steps button span{width:18px;height:18px;font-size:9px;flex-shrink:0}
}

/* Sprint 003: one daily entry, with form details close at hand. */
.day-date{align-items:start;margin-bottom:22px}.daily-identity{padding:5px 0;display:flex;flex-direction:column;gap:7px}.daily-identity>span{font-size:12px;color:var(--muted)}.daily-identity strong{font-size:17px}.daily-identity small{font-size:11px;color:var(--muted)}.daily-hours{margin-bottom:22px}.time-help{margin-bottom:15px;line-height:1.6}.field-hint{font-size:11px;font-weight:400;line-height:1.5;color:var(--muted);margin-top:2px}.remarks-field textarea{min-height:90px}.no-remarks{margin-top:8px;margin-bottom:8px}.entry-disclosure{margin-top:12px;border:1px solid var(--line);border-radius:7px;background:#fbfaf8}.entry-disclosure>summary{display:flex;align-items:center;gap:13px;padding:16px;cursor:pointer;font-size:13px;font-weight:600;list-style:none}.entry-disclosure>summary::before{content:'+';font-size:20px;color:var(--muted);font-weight:400}.entry-disclosure[open]>summary::before{content:'−'}.entry-disclosure>summary small{display:block;margin-top:6px;font-size:11px;font-weight:400;color:var(--muted)}.disclosure-body{padding:4px 16px 18px}.entry-disclosure[open]>summary{border-bottom:1px solid var(--line);margin-bottom:14px}.optional-details>summary{font-size:12px;font-weight:600;cursor:pointer;line-height:1.6}.optional-details>summary small{margin-left:8px;color:var(--muted);font-weight:400}.meal-details{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.meal-summary{font-size:11px;color:var(--success);line-height:1.5;margin-top:12px}.demo-helper{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f4ece2;border:1px dashed #b59977;border-radius:7px;padding:15px 17px;margin:20px 0}.demo-helper strong{font-size:12px;color:var(--stone)}.demo-helper p{font-size:11px;line-height:1.6;color:var(--muted);margin-top:5px;max-width:350px}.demo-helper .button{flex-shrink:0;font-size:12px;min-height:40px}.field .field-error{color:var(--danger);font-size:12px;font-weight:500;line-height:1.5;margin-top:3px}.has-error input,.has-error textarea,.has-error select{border:2px solid var(--danger);background:#fff8f5}.field [aria-invalid=true]:focus{outline:3px solid var(--danger)}.field{scroll-margin:30px}.issue-link{background:none;border:0;text-align:left;font:inherit;color:var(--danger);cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:3px 0}.issues{margin:20px 28px 0}.issues p{margin-top:6px}.entry-disclosure summary:focus-visible,.optional-details summary:focus-visible,.issue-link:focus-visible,.text-button:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:4px}
@media(max-width:760px){.demo-helper{align-items:flex-start;flex-direction:column;gap:12px}.demo-helper .button{width:100%;justify-content:center}.day-date{gap:16px}.daily-identity{padding:0}.steps{justify-content:space-between;gap:8px}.steps button{font-size:11px;line-height:1.4}.issues{margin:18px 18px 0}.optional-details>summary small{display:block;margin-left:15px}.time-fields{gap:10px}.entry-disclosure>summary{padding:14px}.disclosure-body{padding:4px 14px 16px}.field input,.field select,.field textarea{font-size:16px}}

.office-review,.finance-ready{margin-top:28px}.finance-ready{padding:24px;background:#f4ece2;border:1px solid #dcc8af;border-radius:12px}.finance-ready h3,.office-review h3{margin:0 0 10px}.finance-recipient{display:flex;flex-direction:column;gap:6px;color:var(--muted);margin:20px 0}.finance-recipient strong{color:var(--ink);overflow-wrap:anywhere}.finance-status{line-height:1.6;margin:20px 0 0;min-height:2.5em}#finance-description{min-height:120px}#finance-dialog{max-width:600px}#finance-summary{line-height:1.5}

/* Reference palette: navy, charcoal, warm stone, gold, and white. Semantic states stay distinct. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.app-header a:focus-visible,.app-header button:focus-visible,.public-header a:focus-visible,.public-header button:focus-visible{outline-color:var(--focus-on-dark)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
