.claim-company-picker{position:relative;min-width:180px}.claim-company-picker .claim-company-search{width:100%;min-width:155px;padding:8px 9px;border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--ink);font-size:13px}.claim-company-results{position:absolute;z-index:120;top:calc(100% - 1px);left:0;right:0;max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:0 0 8px 8px;background:var(--white);box-shadow:var(--shadow)}.claim-company-results[hidden]{display:none}.claim-company-results button{display:block;width:100%;padding:9px 10px;border:0;border-bottom:1px solid var(--line);background:var(--white);color:var(--ink);text-align:left;font:inherit;font-size:13px;white-space:normal}.claim-company-results button:hover,.claim-company-results button:focus-visible{background:var(--light)}.claim-company-results p{margin:0;padding:10px;color:var(--muted);font-size:13px}
.claim-proof-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.claim-proof-previews[hidden]{display:none}.claim-proof-preview{min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--white)}.claim-proof-preview strong{display:block;margin-bottom:8px;overflow-wrap:anywhere;font-size:13px}.claim-proof-preview img,.claim-proof-preview object{display:block;width:100%;height:260px;max-height:45vh;object-fit:contain;background:var(--bg);border:1px solid var(--line);border-radius:6px}.claim-proof-preview a{display:inline-block;padding:8px 0}

/* Daily actions use distinct, soft colours in both appearance modes. */
body .daily-add [data-action="daily-client"]{--daily-action-bg:#d7efeb;--daily-action-text:#125950;--daily-action-border:#91c9bf}
body .daily-add [data-action="daily-internal"]{--daily-action-bg:#e1eafa;--daily-action-text:#254f8d;--daily-action-border:#a2bde5}
body .daily-add [data-action="daily-unassigned"]{--daily-action-bg:#fff0ce;--daily-action-text:#765013;--daily-action-border:#dfc17f}
body .daily-add [data-action="daily-leave"]{--daily-action-bg:#eee3f7;--daily-action-text:#684086;--daily-action-border:#c6a9dd}
body[data-theme="dark"] .daily-add [data-action="daily-client"]{--daily-action-bg:#244b46;--daily-action-text:#c8eee5;--daily-action-border:#537e74}
body[data-theme="dark"] .daily-add [data-action="daily-internal"]{--daily-action-bg:#293e5e;--daily-action-text:#d1e2fd;--daily-action-border:#57759b}
body[data-theme="dark"] .daily-add [data-action="daily-unassigned"]{--daily-action-bg:#51452c;--daily-action-text:#f6e2ad;--daily-action-border:#8c784e}
body[data-theme="dark"] .daily-add [data-action="daily-leave"]{--daily-action-bg:#493654;--daily-action-text:#ead6f7;--daily-action-border:#896b9c}
body.settings-preview[data-palette] #main .daily-add .button[data-action],body #main .daily-add .button[data-action]{background:var(--daily-action-bg)!important;color:var(--daily-action-text)!important;border:1px solid var(--daily-action-border)!important;box-shadow:none}
body .daily-add .button[data-action]:hover{filter:brightness(.95)}
body .daily-add .button[data-action]:focus-visible{outline:2px solid var(--daily-action-text);outline-offset:3px}

.claim-attachments{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.claim-attachment-print{margin:16px 0;break-before:page;break-inside:avoid}.claim-attachment-print img{display:block;max-width:100%;max-height:245mm;object-fit:contain;margin:auto}.claim-attachment-print object{width:100%;height:75vh;border:1px solid var(--line)}@media print{.claim-attachment-print img{max-height:240mm}.claim-attachment-print object{height:245mm}}

.claim-entry-table td:has(select[name="timesheetMode"]){min-width:190px}.claim-entry-table select[name="timesheetMode"]{min-width:165px}

.ot-entry-sections{display:grid;gap:20px;margin:20px 0}.ot-entry-section{border:1px solid var(--line);border-radius:12px;overflow:hidden}.ot-entry-section>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--light);border-left:4px solid var(--teal)}.ot-entry-section.rest>header{border-left-color:#b18b47}.ot-entry-section.holiday>header{border-left-color:#8974bd}.ot-entry-section h3{margin:0;font-size:16px}.ot-entry-section>header>span{font-weight:750;white-space:nowrap}.ot-entry-section .claim-entry-scroll{margin:0}.ot-empty{padding:4px 18px 16px;margin:0;color:var(--muted);font-size:13px}.ot-section-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.ot-total{padding:16px;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:10px;display:flex;flex-direction:column;gap:9px;background:var(--white)}.ot-total.rest{border-top-color:#b18b47}.ot-total.holiday{border-top-color:#8974bd}.ot-total span{font-size:13px;color:var(--muted)}.ot-total strong{font-size:21px;font-variant-numeric:tabular-nums}.ot-total.grand{background:var(--light)}.ot-report-section{margin:22px 0}.ot-report-section>h3{padding:12px 14px;border-left:4px solid #111;background:#f3f3f3!important;color:#000!important}.ot-report-section>p{padding:0 14px}.ot-report .claim-document-total{border-top:2px solid #111;padding-top:12px}
/* Printed claim documents stay high-contrast in every appearance theme. */
body[data-theme] .claim-document.claim-document :is(.claim-letterhead,.claim-letterhead strong,.claim-letterhead span,.claim-letterhead h3,h1,h2,h3,thead,th){color:#000!important;font-weight:750}body[data-theme] .claim-document.claim-document th{background:#eee!important;border-color:#555!important}body[data-theme] .claim-document.claim-document .claim-letterhead{border-color:#000!important}body[data-theme] .claim-document.claim-document :is(td,p,.claim-signatures,.claim-document-total){color:#111!important}body[data-theme] .claim-document.claim-document{background:#fff!important;color:#111!important}
@media(max-width:650px){.ot-section-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.ot-entry-section>header{padding:14px 12px}.ot-total{padding:12px}.ot-total strong{font-size:19px}}@media print{.ot-report-section>h3{break-after:avoid}.ot-report .claim-document-total{break-inside:avoid}body[data-theme] .claim-document.claim-document :is(h1,h2,h3,th,.claim-letterhead){color:#000!important;text-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

body[data-theme] .claim-document.claim-document .table-wrap{background:#fff!important;color:#111!important}

/* Claim typography: 16px controls, 14px labels, 18px sections and an 8px spacing rhythm. */
body .claim-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}body .claim-modal .modal-body{padding:24px}body .claim-modal .modal-head{padding:20px 24px}body .claim-modal .modal-head h2{font-size:22px;line-height:1.3;font-weight:750;letter-spacing:-.3px}body .claim-modal .modal-footer{padding:16px 24px;gap:12px}body .claim-modal .button{font-size:calc(16px * var(--preview-text-scale,1));line-height:1.35;min-height:44px;padding:10px 16px}body .claim-modal .form-grid{gap:20px 24px}body .claim-modal .field>label,body .claim-modal .field>strong{font-size:14px;line-height:1.45;font-weight:650;margin-bottom:8px}body .claim-modal :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:calc(16px * var(--preview-text-scale,1));line-height:1.4;min-height:44px;padding:10px 12px}body .claim-modal :is(.hint,.meta,.note-strip,.claim-next-day){font-size:13px;line-height:1.6}body .claim-modal .note-strip{margin:16px 0;padding:12px 16px}body .claim-modal .claim-letterhead{padding:8px 0 24px;margin-bottom:8px}body .claim-modal .claim-letterhead strong{font-size:18px;line-height:1.4;letter-spacing:.02em}body .claim-modal .claim-letterhead span{font-size:13px;line-height:1.6}body .claim-modal .claim-letterhead h3{font-size:20px;line-height:1.35;margin:16px 0 0;letter-spacing:.02em}body .claim-modal .ot-entry-section>header{padding:16px 20px}body .claim-modal .ot-entry-section h3{font-size:18px;line-height:1.4;font-weight:700}body .claim-modal .claim-entry-table th{padding:12px;font-size:12px;line-height:1.5;font-weight:700;letter-spacing:.04em}body .claim-modal .claim-entry-table td{padding:12px;line-height:1.5;font-size:14px;vertical-align:top}body .claim-modal .claim-entry-table output{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}body .claim-modal .claim-company-search{font-size:16px}body .claim-modal .claim-company-results button{font-size:14px;line-height:1.5;min-height:44px}body .claim-modal .claim-total-row{margin:20px 0 12px;gap:16px}body .claim-modal .claim-total-row strong{font-size:18px}body .claim-modal .ot-section-totals{gap:16px;margin:16px 0 24px}body .claim-modal .ot-total{padding:16px}body .claim-modal .ot-total span{font-size:14px;line-height:1.45}body .claim-modal .ot-total strong{font-size:24px;line-height:1.25}
body[data-theme] .claim-document.claim-document{font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.55;padding:28px}body[data-theme] .claim-document.claim-document p{margin:8px 0 12px;line-height:1.55}body[data-theme] .claim-document.claim-document .claim-letterhead strong{font-size:20px;line-height:1.4}body[data-theme] .claim-document.claim-document .claim-letterhead span{font-size:13px;line-height:1.6}body[data-theme] .claim-document.claim-document .claim-letterhead h3{font-size:20px;line-height:1.35;margin-top:16px}body[data-theme] .claim-document.claim-document :is(h2,h3){font-size:17px;line-height:1.4;margin-top:20px;margin-bottom:12px}body[data-theme] .claim-document.claim-document :is(th,td){font-size:14px;line-height:1.5;padding:12px 14px;vertical-align:top;letter-spacing:0}body[data-theme] .claim-document.claim-document th{font-size:12px;letter-spacing:.03em}body[data-theme] .claim-document.claim-document .claim-signatures{gap:24px;padding-top:20px;margin-top:24px;border-top:1px solid #555}body[data-theme] .claim-document.claim-document .claim-document-total{padding:16px 0;margin:20px 0;font-size:15px}body[data-theme] .claim-document.claim-document .claim-document-total>strong{font-size:18px}
@media(max-width:650px){body .claim-modal .modal-body{padding:16px}body .claim-modal .modal-head,body .claim-modal .modal-footer{padding:16px}body .claim-modal .modal-head h2{font-size:20px}body .claim-modal .form-grid{gap:16px}body .claim-modal .ot-entry-section>header{padding:14px 12px}body .claim-modal .ot-entry-section h3{font-size:16px}body .claim-modal .ot-section-totals{gap:12px}body[data-theme] .claim-document.claim-document{padding:16px}}
@media print{body[data-theme] .claim-document.claim-document{padding:0;font-size:10pt;line-height:1.45}body[data-theme] .claim-document.claim-document :is(th,td){font-size:9pt;padding:7pt 8pt;line-height:1.4}body[data-theme] .claim-document.claim-document .claim-letterhead strong{font-size:14pt}body[data-theme] .claim-document.claim-document .claim-letterhead h3{font-size:13pt}body[data-theme] .claim-document.claim-document .claim-letterhead span{font-size:9pt}body[data-theme] .claim-document.claim-document :is(h2,h3){font-size:12pt}}

body .claim-modal .claim-form-section-title{font-size:18px;line-height:1.4;margin:24px 0 16px;font-weight:750}body .claim-modal .ot-entry-sections>.claim-form-section-title{margin:4px 0 0}body .claim-modal #claimTotal{font-variant-numeric:tabular-nums}

body .claim-modal .modal-footer .button{font-size:calc(16px * var(--preview-text-scale,1));line-height:1.35;min-height:44px;padding:10px 16px}

/* Compact, left-aligned OT summary with a single prominent total. */
body[data-theme] .claim-document.claim-document .ot-report-summary{display:block;width:100%;max-width:600px;margin:24px 0;padding:0!important;text-align:left!important;background:transparent!important;border:0!important;border-radius:0;box-shadow:none}
body[data-theme] .claim-document.claim-document .ot-report-summary h3{margin:0 0 12px;padding:0;text-align:left}
body[data-theme] .claim-document.claim-document .ot-summary-table{min-width:0!important;width:100%!important;table-layout:fixed;border-collapse:collapse;margin:0}
body[data-theme] .claim-document.claim-document .ot-summary-table :is(th,td){padding:10px 14px;border:1px solid #777;background:#fff!important;text-align:left!important;font-variant-numeric:tabular-nums}
body[data-theme] .claim-document.claim-document .ot-summary-table :is(th,td):last-child{width:145px;text-align:right!important;white-space:nowrap}
body[data-theme] .claim-document.claim-document .ot-summary-table th{background:#eee!important}
body[data-theme] .claim-document.claim-document .ot-summary-total td{font-weight:750;border-top:2px solid #111;background:#f1f1f1!important;font-size:16px}
@media(max-width:650px){body[data-theme] .claim-document.claim-document .ot-summary-table :is(th,td){padding:10px;font-size:13px}body[data-theme] .claim-document.claim-document .ot-summary-table :is(th,td):last-child{width:110px}}
@media print{body[data-theme] .claim-document.claim-document .ot-report-summary{max-width:none;break-inside:avoid}body[data-theme] .claim-document.claim-document .ot-summary-table :is(th,td){font-size:10pt;padding:7pt 9pt}body[data-theme] .claim-document.claim-document .ot-summary-total td{font-size:11pt}}

/* Monthly claims register and template export. */
.claim-monthly-export{display:flex;align-items:end;flex-wrap:wrap;gap:16px;padding:20px;margin:20px 0;border:1px solid var(--line);border-radius:12px;background:var(--white)}
.claim-monthly-export>div{flex:1 1 300px}.claim-monthly-export h2{font-size:18px;margin:0 0 6px}.claim-monthly-export p{font-size:14px;color:var(--muted);margin:0;line-height:1.5}.claim-monthly-export label{display:grid;gap:6px;font-size:14px}.claim-monthly-export input{font-size:16px;min-height:44px}.claim-monthly-export button{min-height:44px}.claim-monthly-export #claimExportError{flex-basis:100%;color:#b42318}.claim-monthly-export #claimExportError:empty{display:none}
.claim-year{margin:0 0 12px}.claim-year>summary,.claim-month>summary{cursor:pointer;min-height:48px;padding:14px 16px;font-weight:700;border-bottom:1px solid var(--line)}.claim-year summary span{font-size:13px;font-weight:400;color:var(--muted);margin-left:12px}.claim-month{margin:0 12px 12px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.claim-month>summary{font-size:15px}.claim-year>summary{font-size:18px}.claim-month .table-wrap{margin:0}@media(max-width:600px){.claim-monthly-export{padding:16px}.claim-monthly-export label,.claim-monthly-export button{width:100%}.claim-month{margin:0 4px 10px}}

/* Browse all clients without accepting the first company by accident. */
.claim-company-picker{position:relative}.claim-company-picker input.claim-company-search{padding-right:48px!important}.claim-company-picker .claim-company-browse{position:absolute;top:0;right:0;width:44px;min-height:44px;height:44px;padding:10px!important;border:0!important;border-left:1px solid var(--line)!important;border-radius:0 7px 7px 0;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center}.claim-company-browse svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}.claim-company-picker .claim-company-results{position:static;max-height:230px;overflow:auto;margin-bottom:8px}.claim-company-results [aria-selected=true]{background:var(--light);outline:2px solid var(--teal);outline-offset:-2px}

/* Keep report grids visible in the preview and printed document. */
body[data-theme] .claim-document.claim-document table{border-collapse:collapse!important;border:1px solid #59646b!important;table-layout:fixed;width:100%}
body[data-theme] .claim-document.claim-document :is(th,td){border:1px solid #59646b!important;overflow-wrap:anywhere;vertical-align:top}
