:root{--omena-navy:#1b304c;--omena-blue:#35ade4;--omena-sky:#8cd1f3;--omena-green:#50b68d;--omena-mint:#90cac1;--omena-white:#fff;--omena-text-muted:#1b304cd9;--omena-border:#1b304c7a;--omena-surface:#90cac159;color:var(--omena-navy);font-synthesis:none;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#fff;font-family:Raleway,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#fff;width:100%;min-height:100%;margin:0}body,#root{width:100%;min-height:100%;margin:0}body{background:#fff;min-width:320px;min-height:100dvh;overflow-x:hidden}button,input,textarea{font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.app-shell{width:100%;max-width:560px;min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));margin:0 auto}.app-shell--centered{padding-top:calc(34px + env(safe-area-inset-top));justify-content:center;align-items:flex-start;display:flex}.app-shell--client-selection{flex-direction:column;height:100dvh;min-height:0;max-height:100dvh;display:flex;overflow:hidden}.app-shell--client-selection .top-bar{flex:none}.app-shell--client-selection .clock-card{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.app-shell--client-selection .clock-meta-row{flex:none}.app-shell--client-selection .client-picker{flex-direction:column;flex:1 1 0;min-height:0;margin-bottom:0;display:flex;overflow:hidden}.app-shell--client-selection .client-picker-heading,.app-shell--client-selection .client-search-input,.app-shell--client-selection .client-directory-warning{flex:none}.app-shell--client-selection .client-suggestions{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1 1 0;min-height:0;max-height:none;overflow:hidden auto}.top-bar{width:100%;margin-top:38px;margin-bottom:12px}.top-bar-main{justify-content:space-between;align-items:center;gap:12px;display:flex}.employee-status-row{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.eyebrow{letter-spacing:.12em;color:#1b304cd9;margin:0 0 2px;font-size:.72rem;font-weight:800}.employee-name{margin:0;font-size:1.05rem;font-weight:800}.text-button{color:#1b304ceb;cursor:pointer;background:0 0;border:0;padding:10px 0;font-size:1rem}.text-button:disabled{opacity:.45;cursor:default}.login-card,.clock-card,.history-card{border:1px solid var(--omena-border);background:#fff;width:100%;box-shadow:0 14px 40px #1b304c0f}.login-card{width:100%;max-width:460px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:18px 20px 22px}.login-heading{align-items:center;gap:14px;margin-bottom:10px;display:flex}.login-heading .brand-mark{flex:none;margin:0}.brand-mark{color:#fff;background:#50b68d;border-radius:50%;place-items:center;width:50px;height:50px;margin:0;font-size:0;font-weight:900;display:grid}.login-heading .eyebrow{margin-bottom:1px}h1{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,7vw,2.7rem);line-height:1}.subtitle{color:#1b304cd9;margin:8px 0 22px;line-height:1.4}.form-stack{gap:14px;display:grid}.form-stack label{gap:6px;font-size:.92rem;font-weight:750;display:grid}.form-stack input{color:#1b304c;background:#fff;border:1px solid #90cac1ad;border-radius:14px;outline:none;width:100%;min-height:54px;padding:0 14px;font-size:18px;line-height:1.2}.form-stack input:focus{border-color:#1b304c;box-shadow:0 0 0 3px #1b304c14}.primary-button,.clock-button{color:#fff;cursor:pointer;background:#1b304c;border:0;font-weight:850}.primary-button{border-radius:15px;min-height:56px;margin-top:2px;font-size:.98rem}.primary-button:disabled,.clock-button:disabled{opacity:.55;cursor:default}.privacy-note{text-align:center;color:#1b304cc2;margin:18px 0 0;font-size:.78rem}.clock-card{box-shadow:none;text-align:center;background:0 0;border:0;border-radius:0;padding:2px 14px 18px}.clock-meta-row{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:10px;min-width:0;margin:0;display:flex}.live-clock{font-size:15px}.date-label,.live-clock--inline,.status-pill--inline{color:#1b304cd9;margin:0;font-size:.84rem;line-height:1.2}.date-label{font-variant-numeric:tabular-nums}.live-clock--inline{letter-spacing:0;font-variant-numeric:tabular-nums;font-weight:600}.status-pill{color:#1b304ceb;letter-spacing:.06em;background:#8cd1f329;border-radius:999px;align-items:center;gap:6px;width:fit-content;margin:0 auto;padding:6px 10px;font-size:.72rem;font-weight:850;display:inline-flex}.status-pill--inline{letter-spacing:0;background:0 0;border-radius:0;flex:none;gap:5px;margin:0;padding:0;font-weight:700}.status-pill--inline.status-pill--in{color:#1b304c;background:0 0}.status-pill--inline.status-pill--out{color:#1b304cd9;background:0 0}.status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.last-event{color:#1b304cd9;min-height:20px;margin:10px 0 14px;font-size:.9rem}.clock-button{background:#1b304c;border-radius:22px;align-content:center;place-items:center;gap:6px;width:100%;min-height:118px;display:grid;box-shadow:0 12px 28px #50b68d3d}.clock-button--out{background:#1b304c;box-shadow:0 12px 28px #1b304c2e}.clock-button span{letter-spacing:.03em;font-size:1.6rem}.clock-button small{opacity:1;font-size:.82rem;font-weight:650}.history-card{border-radius:24px;margin-top:14px;padding:20px}.section-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-heading h2{margin:0;font-size:1.15rem}.session-list{margin-top:12px;display:grid}.session-row{border-top:1px solid var(--omena-border);font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;padding:15px 0;font-size:.98rem;display:flex}.session-row--open{color:#1b304c}.empty-state{color:#1b304cc2;margin:16px 0 2px}.message{border-radius:14px;padding:10px 12px;font-size:.9rem;line-height:1.4}.message--error{color:#1b304c;background:#8cd1f329}.message--warning{color:#1b304c;background:#8cd1f329;margin:0 0 18px}.loader{border:4px solid #90cac16b;border-top-color:#1b304c;border-radius:50%;width:34px;height:34px;margin:20px auto;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-footer{text-align:center;color:#1b304cc2;padding:18px 8px 0;font-size:.75rem}@media (display-mode:standalone){body{background:#fff}}@media (width<=900px){:root{font-size:18px}html,body,#root{width:100%;min-height:100%}body{background:#fff}.app-shell{width:100%;max-width:none;min-height:100dvh;padding-top:calc(4px + env(safe-area-inset-top));padding-right:max(9px, env(safe-area-inset-right));padding-bottom:calc(18px + env(safe-area-inset-bottom));padding-left:max(9px, env(safe-area-inset-left));margin:0}.app-shell--centered{padding-top:calc(12px + env(safe-area-inset-top));justify-content:center;align-items:flex-start;display:flex}.login-card{width:100%;max-width:460px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:18px 14px 22px}.login-heading{gap:12px;margin-bottom:8px}.brand-mark{border-radius:50%;width:52px;height:52px;margin:0;font-size:0}h1{font-size:clamp(2.1rem,9vw,2.65rem)}.eyebrow{font-size:.74rem}.subtitle{margin:6px 0 20px;font-size:.94rem;line-height:1.4}.form-stack{gap:14px}.form-stack label{gap:6px;font-size:.94rem}.form-stack input{border-radius:15px;min-height:56px;padding:0 14px;font-size:18px;line-height:1.2}.primary-button{border-radius:16px;min-height:58px;font-size:1rem}.privacy-note{margin-top:22px;font-size:.82rem}.top-bar{margin-top:36px;margin-bottom:12px;padding:0 4px}.employee-name{font-size:1.12rem}.text-button{padding:6px 0;font-size:.9rem}.clock-card{border-radius:0;padding:0 8px 16px}.clock-meta-row{gap:6px}.date-label,.live-clock--inline,.status-pill--inline{font-size:.8rem}.status-pill--inline{padding:0}.employee-status-row .status-pill--inline{font-size:.8rem}.status-dot{width:7px;height:7px}.last-event{margin:12px 0 16px;font-size:.92rem}.clock-button{border-radius:22px;gap:6px;min-height:138px}.clock-button span{font-size:1.8rem}.clock-button small{font-size:.9rem}.history-card{border-radius:22px;margin-top:13px;padding:22px 18px}.section-heading h2{font-size:1.25rem}.session-row{padding:17px 0;font-size:1.05rem}.empty-state{font-size:1rem}.app-footer{font-size:.82rem}}@media (width<=380px){:root{font-size:17px}.app-shell{padding-right:max(8px, env(safe-area-inset-right));padding-left:max(8px, env(safe-area-inset-left))}.clock-meta-row{gap:5px}.date-label,.live-clock--inline{font-size:.74rem}.clock-button{min-height:128px}.top-bar-main{align-items:flex-start}.top-bar-main .text-button{font-size:.8rem}}.client-picker{border:1px solid var(--omena-border);text-align:left;background:#90cac114;border-radius:20px;width:100%;margin:18px 0 16px;padding:16px}.client-picker-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.client-picker-heading>span,.client-picker-heading>div>span{color:#1b304c;font-size:.95rem;font-weight:850;display:block}.client-picker-heading>div>small{color:var(--omena-navy);margin-top:4px;font-size:.84rem;font-weight:550;line-height:1.4;display:block}.client-sync-label{color:#1b304cd9;flex:none;font-size:.72rem;font-weight:700}.client-search-input{color:#1b304c;background:#fff;border:1px solid #90cac1ad;border-radius:14px;outline:none;width:100%;min-height:52px;padding:0 14px;font-size:16px}.client-search-input:focus{border-color:#1b304c;box-shadow:0 0 0 3px #1b304c14}.client-suggestions{overscroll-behavior:contain;grid-auto-rows:max-content;align-content:start;gap:8px;max-height:260px;margin-top:10px;display:grid;overflow-y:auto}.client-suggestion{border:1px solid var(--omena-border);color:#1b304c;text-align:left;cursor:pointer;background:#fff;border-radius:14px;grid-template-rows:auto auto;align-content:start;gap:3px;width:100%;height:auto;min-height:0;padding:12px 13px;display:grid;overflow:hidden}.client-suggestion:hover,.client-suggestion:focus-visible{background:#90cac114;border-color:#1b304cc2}.client-suggestion strong{overflow-wrap:anywhere;min-width:0;font-size:.94rem;line-height:1.25}.client-suggestion span{min-width:0;color:var(--omena-navy);white-space:normal;overflow-wrap:anywhere;word-break:normal;font-size:.84rem;font-weight:550;line-height:1.4;display:block}.client-suggestion small{color:#1b304ceb;letter-spacing:.06em;width:fit-content;margin-top:2px;font-size:.67rem;font-weight:800}.client-directory-warning{color:#1b304c;background:#8cd1f329;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;padding:9px 10px;font-size:.76rem;line-height:1.35;display:flex}.client-directory-warning .text-button{color:#1b304c;flex:none;padding:4px 0;font-size:.76rem;font-weight:800}.client-empty{color:#1b304cc2;margin:12px 4px 2px;font-size:.82rem}.selected-client{gap:4px;display:grid}.selected-client strong{font-size:1rem}.selected-client span{color:#1b304ceb;font-size:.82rem;line-height:1.35}.client-change-button{color:#1b304c;background:#8cd1f329;border:1px solid #8cd1f3;border-radius:999px;min-height:36px;padding:7px 12px;font-size:.82rem;font-weight:850;line-height:1}.client-change-button:hover,.client-change-button:focus-visible{color:#1b304c;background:#8cd1f347;border-color:#35ade4}.current-client{text-align:left;background:#90cac124;border:1px solid #50b68d70;border-radius:18px;gap:4px;width:100%;margin:18px 0 16px;padding:15px 16px;display:grid}.current-client>span{color:#1b304c;letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:850}.current-client strong{color:#1b304c;font-size:1.02rem}.current-client small{color:#1b304cc2;font-size:.8rem;line-height:1.35}.session-main{gap:4px;min-width:0;display:grid}.session-main small{color:#1b304cd9;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.session-row--open .session-main small{color:#1b304c}@media (width<=900px){.client-picker{border-radius:18px;margin:8px 0 12px;padding:14px}.client-picker-heading{margin-bottom:9px}.client-picker-heading>span,.client-picker-heading>div>span{font-size:.96rem}.client-picker-heading>div>small,.client-sync-label{font-size:.84rem}.client-search-input{border-radius:14px;min-height:54px;padding:0 14px;font-size:18px}.client-suggestions{gap:7px;max-height:260px;margin-top:8px}.app-shell--client-selection{height:100dvh;max-height:100dvh;overflow:hidden}.app-shell--client-selection .client-picker{min-height:0;margin-bottom:0;overflow:hidden}.app-shell--client-selection .client-suggestions{min-height:0;max-height:none;overflow-y:auto}.client-suggestion{border-radius:14px;height:auto;min-height:56px;padding:10px 12px}.client-suggestion strong{font-size:.95rem}.client-suggestion span{font-size:.84rem}.client-change-button{min-height:40px;padding:8px 13px;font-size:.82rem}.current-client{border-radius:17px;margin:14px 0;padding:14px}.current-client strong{font-size:1.02rem}.current-client small{font-size:.82rem}.session-main small{font-size:.84rem}}.presence-reminder-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b304c7a;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.presence-reminder{border:1px solid var(--omena-border);text-align:left;background:#fff;border-radius:24px;gap:14px;width:min(100%,460px);padding:24px;display:grid;box-shadow:0 24px 70px #1b304c38}.presence-reminder-kicker{color:#1b304cd9;letter-spacing:.08em;margin:0;font-size:.76rem;font-weight:850}.presence-reminder h2{margin:0;font-size:1.55rem;line-height:1.15}.presence-reminder>p:not(.presence-reminder-kicker){color:#1b304cd9;margin:0 0 4px;line-height:1.45}.presence-reminder button{cursor:pointer;border-radius:16px;width:100%;min-height:58px;padding:12px 16px;font-weight:800}.presence-reminder-confirm{color:#fff;background:#50b68d;border:0}.presence-reminder-finish{color:#1b304c;background:#fff;border:1px solid #8cd1f375}.presence-reminder button:disabled{opacity:.55;cursor:default}.presence-reminder small{color:#1b304c;line-height:1.35}@media (width<=900px){.presence-reminder-backdrop{padding:12px max(10px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));align-items:end}.presence-reminder{border-radius:24px;width:100%;padding:24px 18px}.presence-reminder h2{font-size:1.7rem}.presence-reminder button{min-height:66px;font-size:1.02rem}}.mandatory-break-backdrop{z-index:1100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1b304c94;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.mandatory-break-dialog{text-align:left;background:#fff;border:1px solid #35ade46b;border-radius:24px;gap:14px;width:min(100%,460px);padding:24px;display:grid;box-shadow:0 24px 70px #1b304c3d}.mandatory-break-kicker{color:#1b304c;letter-spacing:.08em;margin:0;font-size:.76rem;font-weight:900}.mandatory-break-dialog h2{margin:0;font-size:1.55rem;line-height:1.15}.mandatory-break-dialog>p:not(.mandatory-break-kicker){color:#1b304cd9;margin:0 0 4px;line-height:1.45}.mandatory-break-countdown{text-align:center;background:#8cd1f324;border-radius:16px;gap:4px;padding:16px;display:grid}.mandatory-break-countdown span{color:#1b304c;font-size:.82rem;font-weight:750}.mandatory-break-countdown strong{color:#1b304c;font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:2.2rem}.mandatory-break-dialog button{cursor:pointer;border-radius:16px;width:100%;min-height:58px;padding:12px 16px;font-weight:850}.mandatory-break-start{color:#fff;background:#35ade4;border:0}.mandatory-break-finish{color:#1b304c;background:#fff;border:1px solid #8cd1f375}.mandatory-break-dialog button:disabled{opacity:.55;cursor:default}.mandatory-break-dialog small{color:#1b304c;line-height:1.35}@media (width<=900px){.mandatory-break-backdrop{padding:12px max(10px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));align-items:end}.mandatory-break-dialog{border-radius:24px;width:100%;padding:24px 18px}.mandatory-break-dialog h2{font-size:1.7rem}.mandatory-break-dialog button{min-height:66px;font-size:1.02rem}.mandatory-break-countdown strong{font-size:2.5rem}}.work-comment-field{text-align:left;gap:6px;width:100%;margin:0 0 16px;display:grid}.work-comment-field>span{color:#1b304c;font-size:.95rem;font-weight:850}.work-comment-field>small{color:#1b304cd9;font-size:.78rem;line-height:1.35}.work-comment-field textarea{resize:vertical;color:#1b304c;background:#fff;border:1px solid #90cac1ad;border-radius:14px;outline:none;width:100%;min-height:96px;padding:12px 14px;font-size:16px;line-height:1.4}.work-comment-field textarea:focus{border-color:#1b304c;box-shadow:0 0 0 3px #1b304c14}.work-comment-count{font-variant-numeric:tabular-nums;justify-self:end;margin-top:-2px}.current-intervention-comment{color:#1b304c;white-space:pre-wrap;border-top:1px solid #50b68d70;margin:7px 0 0;padding-top:8px;font-size:.86rem;line-height:1.4}.session-comment{line-height:1.35;color:#1b304ceb!important;text-overflow:clip!important;white-space:normal!important;overflow:visible!important}@media (width<=900px){.work-comment-field{margin-bottom:14px}.work-comment-field>span{font-size:1.04rem}.work-comment-field>small{font-size:.82rem}.work-comment-field textarea{border-radius:15px;min-height:96px;padding:12px 14px;font-size:18px}.current-intervention-comment{font-size:.94rem}}.departure-photo-backdrop{z-index:1200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1b304c9e;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.departure-photo-dialog{border:1px solid var(--omena-border);text-align:left;overscroll-behavior:contain;background:#fff;border-radius:26px;gap:14px;width:min(100%,500px);max-height:min(88vh,820px);padding:24px;display:grid;overflow-y:auto;box-shadow:0 26px 80px #1b304c47}.departure-photo-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.departure-photo-kicker{color:#1b304cd9;letter-spacing:.08em;margin:0 0 4px;font-size:.76rem;font-weight:900}.departure-photo-dialog h2{margin:0;font-size:1.5rem;line-height:1.15}.departure-photo-close{border:1px solid var(--omena-border);color:#1b304ceb;cursor:pointer;background:#fff;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:1.6rem;line-height:1;display:grid}.departure-photo-context{color:#1b304cd9;margin:0;line-height:1.45}.departure-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.departure-photo-preview{border:1px solid var(--omena-border);background:#90cac114;border-radius:16px;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:8px;display:grid;overflow:hidden}.departure-photo-preview img{object-fit:cover;background:#90cac16b;border-radius:12px;width:72px;height:72px}.departure-photo-preview>div{gap:2px;min-width:0;display:grid}.departure-photo-preview span{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:800;overflow:hidden}.departure-photo-preview small{color:#1b304cd9;font-size:.72rem}.departure-photo-preview button{color:#1b304c;text-align:left;cursor:pointer;background:0 0;border:0;grid-column:1/-1;padding:5px 2px;font-size:.72rem;font-weight:750}.camera-icon{background-color:currentColor;flex:none;width:24px;height:24px;display:block;-webkit-mask:url(/SVG/flowbite--camera-photo-outline.svg) 50%/contain no-repeat;mask:url(/SVG/flowbite--camera-photo-outline.svg) 50%/contain no-repeat}.departure-photo-add{color:#1b304c;text-align:center;cursor:pointer;background:#90cac114;border:1px dashed #1b304c7a;border-radius:17px;align-content:center;place-items:center;gap:3px;width:100%;min-height:68px;padding:12px;display:grid}.departure-photo-add input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.departure-photo-add span{font-weight:850}.departure-photo-add small{color:#1b304cd9}.departure-photo-send,.departure-photo-skip{cursor:pointer;border-radius:16px;width:100%;min-height:58px;padding:12px 16px;font-weight:850}.departure-photo-send{color:#fff;background:#1b304c;border:0}.departure-photo-skip{color:#1b304ceb;background:#fff;border:1px solid #90cac1ad}.departure-photo-send:disabled,.departure-photo-skip:disabled,.departure-photo-close:disabled{opacity:.5;cursor:default}.departure-photo-recorded{color:#1b304c;background:#8cd1f329;border-radius:13px;margin:0;padding:11px 12px;font-size:.86rem;line-height:1.4}.departure-photo-error{margin:0}.departure-photo-note{color:#1b304cd9;text-align:center;font-size:.76rem;line-height:1.35}@media (width<=900px){.departure-photo-backdrop{padding:10px max(8px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));align-items:end}.departure-photo-dialog{border-radius:26px;width:100%;max-height:min(92dvh,900px);padding:22px 16px}.departure-photo-dialog h2{font-size:1.65rem}.departure-photo-grid{grid-template-columns:1fr}.departure-photo-preview{grid-template-columns:84px minmax(0,1fr) auto;padding:9px}.departure-photo-preview img{width:84px;height:84px}.departure-photo-preview button{text-align:center;grid-column:auto;padding:8px}.departure-photo-add,.departure-photo-send,.departure-photo-skip{min-height:66px;font-size:1rem}}.departure-photo-comment{gap:6px;width:100%;display:grid}.departure-photo-comment>span{color:#1b304c;font-size:.92rem;font-weight:850}.departure-photo-comment>small{color:#1b304cd9;font-size:.76rem;line-height:1.35}.departure-photo-comment textarea{resize:vertical;color:#1b304c;background:#fff;border:1px solid #90cac1ad;border-radius:14px;outline:none;width:100%;min-height:92px;padding:12px 14px;font-size:16px;line-height:1.4}.departure-photo-comment textarea:focus{border-color:#1b304c;box-shadow:0 0 0 3px #1b304c14}.departure-photo-comment-count{font-variant-numeric:tabular-nums;justify-self:end;margin-top:-2px}.site-report-button{color:#1b304c;cursor:pointer;background:#8cd1f324;border:1px solid #8cd1f3;border-radius:18px;grid-template-columns:32px minmax(0,1fr);align-content:center;align-items:center;gap:4px 10px;width:100%;min-height:76px;margin:0 0 14px;padding:12px 16px;display:grid}.site-report-button>.camera-icon{grid-row:1/3;width:30px;height:30px}.site-report-button span:not(.camera-icon){letter-spacing:.035em;font-weight:900}.site-report-button small{grid-column:2;font-size:.78rem;font-weight:650}.site-report-button:disabled{opacity:.5;cursor:default}.site-report-success{color:#1b304c;background:#90cac124;border-radius:13px;margin:-3px 0 14px;padding:10px 12px;font-size:.84rem;line-height:1.35}.site-report-send{color:#fff;cursor:pointer;background:#35ade4;border:0;border-radius:16px;width:100%;min-height:58px;padding:12px 16px;font-weight:850}.site-report-send:disabled{opacity:.5;cursor:default}.site-report-dialog .departure-photo-kicker{color:#1b304c}@media (width<=900px){.departure-photo-comment textarea{border-radius:17px;min-height:108px;padding:14px 16px;font-size:20px}.departure-photo-comment>span{font-size:1rem}.departure-photo-comment>small{font-size:.82rem}.site-report-button{border-radius:20px;min-height:86px}.site-report-button span:not(.camera-icon){font-size:1.02rem}.site-report-button small{font-size:.86rem}.site-report-send{min-height:66px;font-size:1rem}}::selection{color:var(--omena-navy);background:#8cd1f36b}h1,h2,h3,.employee-name,.client-picker-heading>span,.client-picker-heading>div>span,.client-suggestion strong,.selected-client strong,.current-client strong,.work-comment-field>span,.section-heading h2,.presence-reminder h2,.mandatory-break-dialog h2,.departure-photo-dialog h2{letter-spacing:-.02em;color:var(--omena-navy);font-family:Comfortaa,Arial Rounded MT Bold,ui-sans-serif,sans-serif;font-weight:700}.eyebrow,.presence-reminder-kicker,.mandatory-break-kicker,.departure-photo-kicker{color:#246b50}.text-button{color:var(--omena-navy)}.form-stack input,.client-search-input,.work-comment-field textarea,.departure-photo-comment textarea{color:var(--omena-navy);border-color:#1b304c7a}.form-stack input:focus,.client-search-input:focus,.work-comment-field textarea:focus,.departure-photo-comment textarea:focus{border-color:var(--omena-blue);box-shadow:0 0 0 3px #35ade424}.primary-button{background:var(--omena-navy);box-shadow:0 10px 24px #1b304c29}.primary-button:hover:not(:disabled),.primary-button:focus-visible:not(:disabled){background:#243f63}.clock-button{background:var(--omena-navy);color:#fff;box-shadow:0 12px 28px #50b68d3d}.clock-button--out{background:var(--omena-navy);color:#fff;box-shadow:0 12px 28px #1b304c2e}.clock-button span,.primary-button,.presence-reminder button,.mandatory-break-dialog button,.departure-photo-send,.site-report-send{font-family:Comfortaa,Arial Rounded MT Bold,ui-sans-serif,sans-serif;font-weight:700}.status-pill--inline.status-pill--in,.status-pill--inline.status-pill--out{color:var(--omena-navy)}.status-pill--in .status-dot{background:var(--omena-green)}.status-pill--out .status-dot{background:var(--omena-sky)}.client-picker{border-color:var(--omena-border);background:var(--omena-surface)}.client-picker--selected{background:#90cac140;border-color:#287653}.client-suggestion{color:var(--omena-navy);border-color:#1b304c85;box-shadow:0 1px 2px #1b304c14}.client-suggestion:hover,.client-suggestion:focus-visible{border-color:var(--omena-navy);background:#fff;box-shadow:0 2px 8px #1b304c26}.client-suggestion:active{background:#fff}.client-change-button{border-color:var(--omena-sky);color:var(--omena-navy);background:#8cd1f32e}.client-change-button:hover,.client-change-button:focus-visible{border-color:var(--omena-blue);color:var(--omena-navy);background:#8cd1f34d}.current-client{background:#90cac124;border-color:#50b68d7a}.current-client>span{color:#246b50}.current-client strong,.current-client small{color:var(--omena-navy)}.message--error,.message--warning,.client-directory-warning,.site-report-success,.departure-photo-recorded{color:var(--omena-navy);background:#8cd1f326;border:1px solid #8cd1f38a}.loader{border-color:#90cac159;border-top-color:var(--omena-blue)}.presence-reminder,.mandatory-break-dialog,.departure-photo-dialog{border-color:#90cac17a;box-shadow:0 24px 70px #1b304c38}.presence-reminder-confirm,.mandatory-break-start,.departure-photo-send,.site-report-send{background:var(--omena-green);color:var(--omena-navy);border:0}.presence-reminder-finish,.mandatory-break-finish,.departure-photo-skip,.departure-photo-close{color:var(--omena-navy);background:#fff;border-color:#1b304c38}.site-report-button{border-color:var(--omena-sky);color:var(--omena-navy);background:#8cd1f329}.departure-photo-add{background:#8cd1f31f;border-color:#35ade470}@media (width>=901px){body{background-color:#fff;background-image:radial-gradient(circle,#0000 56%,#90cac11a 57% 65%,#0000 66%);background-size:46px 46px}.app-shell{background:#fffffff7;box-shadow:0 0 0 1px #90cac133,0 22px 70px #1b304c14}}@media (width<=900px){body{background:#fff}}.client-search-input::placeholder{color:#435a70;opacity:1}.client-search-input:focus-visible,.client-suggestion:focus-visible{outline:2px solid var(--omena-navy);outline-offset:2px}.employee-status-row .status-pill--inline{color:var(--omena-navy);background:#e9eff3;border:1px solid #1b304c7a;border-radius:999px;padding:5px 9px}.employee-status-row .status-pill--inline.status-pill--in{background:#50b68d42;border-color:#287653}.switch-intervention-button{width:100%;min-height:48px;color:var(--omena-navy);cursor:pointer;background:#fff;border:1px solid #1b304c52;border-radius:14px;margin-top:12px;font-weight:850}.switch-intervention-button:disabled{opacity:.5;cursor:default}.switch-intervention-panel{text-align:left;background:#8cd1f314;border:1px solid #35ade459;border-radius:16px;margin-top:12px;padding:14px}.switch-confirm-button{width:100%;padding:0 14px}.personal-history{border-radius:16px;margin-top:16px;overflow:hidden}.personal-history-heading{width:100%;min-height:66px;color:var(--omena-navy);text-align:left;cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.personal-history-heading>span:first-child{gap:4px;display:grid}.personal-history-heading small,.personal-history-row small,.personal-history-row span{color:#1b304cad;font-size:.75rem}.personal-history-heading>span:last-child{font-size:1.5rem;font-weight:700}.personal-history-list{border-top:1px solid #1b304c1f}.personal-history-row{background:#fff;border-bottom:1px solid #1b304c17;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;display:grid}.personal-history-row>div{gap:3px;min-width:0;display:grid}.personal-history-row>div:last-child{text-align:right}.personal-history-row>div:first-child strong,.personal-history-row>div:first-child small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.personal-history-empty{color:#1b304cb3;margin:0;padding:16px;font-size:.85rem}.global-build-version{z-index:15;left:50%;bottom:calc(3px + env(safe-area-inset-bottom));text-align:center;pointer-events:none;background:#fffffff0;border-radius:9px;max-width:calc(100vw - 24px);padding:2px 9px;position:fixed;transform:translate(-50%)}.global-build-version .app-version{white-space:nowrap;color:#1b304ca6;font-variant-numeric:tabular-nums;font-size:10px;line-height:1.4}.brand-mark{color:#0000;background:url(/omena-icon.svg) 50%/contain no-repeat;border-radius:50%;font-size:0}.pwa-update-banner{z-index:1500;right:max(14px, env(safe-area-inset-right));bottom:calc(14px + env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));color:#1b304c;background:#fff;border:1px solid #8cd1f3b3;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;width:min(620px,100% - 28px);margin:0 auto;padding:14px 16px;display:flex;position:fixed;box-shadow:0 16px 44px #1b304c38}.pwa-update-copy{gap:3px;min-width:0;display:grid}.pwa-update-copy strong{font-family:Comfortaa,Arial Rounded MT Bold,ui-sans-serif,sans-serif;font-size:.94rem}.pwa-update-copy span{color:#1b304cd9;font-size:.8rem;line-height:1.35}.pwa-update-button{color:#fff;cursor:pointer;background:#1b304c;border:0;border-radius:13px;flex:none;min-height:44px;padding:9px 14px;font-family:Comfortaa,Arial Rounded MT Bold,ui-sans-serif,sans-serif;font-weight:700}.pwa-update-button:disabled{opacity:.6;cursor:default}@media (width<=560px){.pwa-update-banner{flex-direction:column;align-items:stretch;gap:10px}.pwa-update-button{width:100%;min-height:50px}}
