body .ow-time-source { display:none !important; }
.ow-time-trigger { box-sizing:border-box; width:100%; min-width:0; min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid var(--l); border-radius:9px; background:var(--ow-input,var(--p)); color:var(--t); font:400 13px/20px Inter,sans-serif; text-align:left; cursor:pointer; }
.ow-time-trigger>span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }
.ow-time-trigger svg { width:17px; height:17px; flex-shrink:0; color:var(--m); }
.ow-time-trigger.is-empty { color:var(--m); }
.ow-time-trigger:hover,.ow-time-trigger[aria-expanded="true"] { border-color:var(--o); }
.ow-time-trigger:disabled { opacity:.6; cursor:default; }
.ow-time-trigger[aria-invalid="true"] { border-color:var(--r); }
.ow-time-popover { position:fixed; inset:auto; box-sizing:border-box; width:284px; margin:0; padding:17px; overflow:auto; overscroll-behavior:contain; border:1px solid var(--l); border-radius:14px; background:var(--p); color:var(--t); box-shadow:0 16px 48px #11243a24; font:13px/1.5 Inter,sans-serif; }
.ow-time-popover[hidden],.ow-time-error[hidden],.ow-job-typed[hidden] { display:none !important; }
.ow-time-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:18px; }
.ow-time-head h3 { margin:0; font-size:13px; font-weight:600; }
.ow-time-head p { margin:3px 0 0; font-size:10px; color:var(--m); }
.ow-time-selected { font-size:18px; font-weight:600; font-variant-numeric:tabular-nums; }
.ow-time-values { display:flex; gap:10px; }
.ow-time-values>label { display:block; flex:1; min-width:0; font-size:11px; color:var(--m); }
#owTimePopover .ow-select-trigger { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; min-height:42px; padding:8px 10px; margin-top:7px; background:var(--ow-input,var(--p)); color:var(--t); border:1px solid var(--l); border-radius:7px; font:500 16px/1.4 Inter,sans-serif; cursor:pointer; font-variant-numeric:tabular-nums; }
.ow-time-error { display:block; margin:8px 0; color:var(--r); font-size:11px; line-height:1.5; }
.ow-time-foot { display:flex; justify-content:space-between; padding-top:10px; margin-top:18px; border-top:1px solid var(--l); }
.ow-time-foot button { background:transparent; border:0; padding:5px 7px; border-radius:5px; font:600 11px/1.5 Inter,sans-serif; color:var(--o); cursor:pointer; }
.ow-time-apply { width:100%; margin-top:12px; min-height:40px; padding:8px 12px; border:1px solid #478b3c; border-radius:7px; background:#478b3c; color:#fff; font:600 12px/1.5 Inter,sans-serif; cursor:pointer; }
.ow-time-apply:disabled { opacity:.45; cursor:default; }
.ow-time-trigger:focus-visible,.ow-time-popover button:focus-visible { outline:2px solid var(--o); outline-offset:2px; }
#owDatePopover .ow-time-trigger { min-height:40px; }
html[data-ow-theme="dark"] .ow-time-popover { background:var(--ow-surface); box-shadow:0 16px 48px #0006; }
html[data-ow-theme="dark"] .ow-time-apply { background:#477f3d; border-color:#609a55; }
.ow-job-signature-card { min-width:0; padding:15px; border:1px solid var(--l); border-radius:12px; background:var(--p); }
.ow-job-signature-card>label { display:block; margin-bottom:5px; color:var(--t); font-weight:600; font-size:12px; }
.ow-job-signature-card canvas.mini-sig { display:block; box-sizing:border-box; width:100%; height:auto !important; min-height:0; aspect-ratio:5/2; margin:11px 0 8px; background:#fff !important; border:1px solid var(--l); border-radius:8px; touch-action:none; cursor:crosshair; }
.ow-job-signature-card canvas.is-typed { cursor:default; }
.ow-job-typed>label { display:block; margin:0 0 5px; font-size:11px; color:var(--m); }
.ow-job-typed input { box-sizing:border-box; width:100%; min-width:0; min-height:42px; padding:10px 12px; border:1px solid var(--l); border-radius:8px; background:var(--ow-input,var(--p)); color:var(--t); font:13px/1.5 Inter,sans-serif; }
.ow-job-signature-status { margin:5px 0 8px; font-size:11px; color:var(--m); min-height:17px; }
.ow-job-signature-status.is-signed { color:var(--o); }
.ow-job-signature-card>button { padding:5px 0; min-height:30px; border:0; background:transparent; color:var(--m); font-size:11px; box-shadow:none; }
html[data-ow-theme="dark"] .ow-job-signature-card { background:var(--ow-raised); }
@media(max-width:760px) { .ow-time-trigger,.ow-job-typed input { min-height:44px; font-size:16px; } }
@media print { .ow-time-popover,.ow-time-error { display:none !important; } }
