*{box-sizing:border-box}:root,:root[data-theme=light]{--page-bg: #eef3ef;--bg: #ffffff;--surface: #f7faf8;--card: #ffffff;--card-muted: #edf3ef;--border: #d8e2db;--border-strong: #aebdb3;--text: #111913;--muted: #536158;--subtle: #758078;--overlay: rgba(7, 11, 17, .86);--on-accent: #ffffff;--on-overlay: #ffffff}:root[data-theme=dark]{--page-bg: #05080e;--bg: #070b11;--surface: #0b1118;--card: #111922;--card-muted: #16212b;--border: #2b3740;--border-strong: #46545e;--text: #ffffff;--muted: #a8b0b7;--subtle: #727d87;--overlay: rgba(7, 11, 17, .86);--on-accent: #ffffff;--on-overlay: #ffffff}html,body,#root{width:100%;max-width:100%;height:100%;margin:0;overflow-x:hidden}body{background:var(--page-bg);color:var(--text);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior-x:none;transition:background-color .18s ease,color .18s ease}.app-shell{width:100%;height:100vh;min-height:0;max-width:480px;max-height:900px;margin:0 auto}.job-list-scroll,.klus-form-scroll{min-height:0;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.easter-egg-logo{display:block;flex-shrink:0;padding:0;border:0;border-radius:4px;background:transparent;cursor:pointer;touch-action:manipulation}.easter-egg-logo:focus-visible{outline:2px solid #2d8659;outline-offset:3px}.easter-egg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;overflow:hidden;pointer-events:none}.easter-egg-flyer{position:absolute;top:35%;left:0;width:min(270px,75vw);display:flex;flex-direction:column;align-items:center;gap:10px;animation:eco-easter-egg-flight 3.8s ease-in-out both}.easter-egg-flyer img{display:block;width:min(180px,48vw);height:auto;max-height:40vh;object-fit:contain;filter:drop-shadow(0 8px 12px #0005)}.easter-egg-flyer span{padding:10px 16px;border:2px solid #68b843;border-radius:14px;background:#0b1118;color:#fff;font-family:Inter,sans-serif;font-size:clamp(14px,4vw,19px);font-weight:700;text-align:center;box-shadow:0 6px 20px #0003}@keyframes eco-easter-egg-flight{0%{transform:translate(-120%) translateY(35px) rotate(-15deg);opacity:0}15%{opacity:1}40%{transform:translate(calc(50vw - 50%)) translateY(-25px) rotate(7deg)}60%{transform:translate(calc(50vw - 50%)) translateY(0) rotate(-5deg);opacity:1}to{transform:translate(110vw) translateY(-80px) rotate(18deg);opacity:0}}@media (prefers-reduced-motion: reduce){.easter-egg-flyer{left:50%;transform:translate(-50%);animation:eco-easter-egg-fade 3.8s ease both}@keyframes eco-easter-egg-fade{0%,to{opacity:0}15%,85%{opacity:1}}}.week-section{margin-bottom:20px}.week-heading{width:calc(100% - 4px);display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 8px;padding:4px 2px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left}.week-heading:hover{background:color-mix(in srgb,var(--surface-2) 68%,transparent)}.week-heading:focus-visible{outline:2px solid #2d8659;outline-offset:2px}.week-heading-title{display:inline-flex;align-items:center;gap:5px;min-width:0}.week-heading strong{color:var(--text);font-family:Barlow Condensed,sans-serif;font-size:18px;white-space:nowrap}.week-heading-meta{color:var(--subtle);font-family:IBM Plex Mono,monospace;font-size:10.5px;text-align:right}.week-chevron{flex:0 0 auto;color:var(--subtle);transform:rotate(-90deg);transition:transform .16s ease}.week-chevron.is-open{transform:rotate(0)}.archive-load-more{display:flex;justify-content:center;padding:4px 0 16px}.archive-inline-error{margin:8px 0;color:#e0645c;font-size:11.5px;line-height:1.5;text-align:center;word-break:break-word}.week-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.desktop-datetime-picker{display:block}.mobile-datetime-picker{display:none}.desktop-datetime-summary{display:block}.customer-client-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,1fr);gap:10px}.client-badge{flex-shrink:0;max-width:110px;overflow:hidden;padding:2px 6px;border:1px solid #2d865966;border-radius:999px;background:#2d86591a;color:#2d8659;font-size:9px;font-weight:800;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.workspace-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-width:430px;margin:8px auto 0;padding:4px;border:1px solid var(--border);border-radius:11px;background:var(--card-muted)}.workspace-switch button,.job-filters button,.customer-filters button,.offer-status-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:700 12px Inter,sans-serif;cursor:pointer}.workspace-switch button.is-active,.job-filters button.is-active,.customer-filters button.is-active,.offer-status-buttons button.is-active{background:#2d8659;color:#fff;box-shadow:0 2px 8px #2d865933}.job-filters,.customer-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px 16px 6px}.job-filters button,.customer-filters button{border:1px solid var(--border);border-radius:999px}.job-filters button:focus-visible,.customer-filters button:focus-visible{outline:2px solid #2d8659;outline-offset:2px}.customer-list,.customer-detail{flex:1;min-height:0;overflow-y:auto;padding:8px 16px 100px}.customer-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.customer-card{width:100%;min-width:0;padding:14px;border:1px solid var(--border);border-left:4px solid #2d8659;border-radius:12px;background:var(--card);color:var(--text);font-family:Inter,sans-serif;text-align:left;cursor:pointer}.customer-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.customer-card-top strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.customer-card>span{display:flex;align-items:center;gap:6px;overflow:hidden;margin-top:5px;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.customer-card small{display:block;margin-top:9px;color:var(--subtle);font:10px IBM Plex Mono,monospace}.customer-card-badges{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.customer-reply-badge{padding:3px 7px;border:1px solid #2d865966;border-radius:999px;background:#2d86591a;color:#2d8659;font-size:9.5px;font-weight:800}.offer-status{flex-shrink:0;padding:3px 7px;border:1px solid #d7a93b66;border-radius:999px;background:#d7a93b1a;color:#b6881f;font-size:9.5px;font-weight:800}.offer-status.is-done{border-color:#2d865966;background:#2d86591a;color:#2d8659}.customer-detail{padding-top:16px;padding-bottom:24px}.customer-detail-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:18px}@media (min-width: 640px){.customer-detail-actions{flex-direction:row;align-items:center;justify-content:space-between}}.make-job-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 13px;border:0;border-radius:8px;background:#2d8659;color:#fff;font:700 12px Inter,sans-serif;cursor:pointer}.offer-status-buttons{display:flex;flex-wrap:wrap;gap:4px;padding:3px;border:1px solid var(--border);border-radius:10px;background:var(--card-muted)}.offer-status-buttons button{flex:1;min-width:78px}.offer-status-buttons button:disabled{cursor:wait;opacity:.65}.customer-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.customer-detail-grid>div:nth-child(7){grid-column:1 / -1}.offer-links{display:flex;flex-wrap:wrap;gap:8px}.offer-links a{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;color:#2d8659;font-size:11.5px;font-weight:700;text-decoration:none}.customer-error{margin:8px 0 12px;color:#e0645c;font-size:11.5px;line-height:1.5;overflow-wrap:anywhere}.customer-sync-notice{margin:8px 0 12px;color:var(--green);font-size:11.5px;line-height:1.5;overflow-wrap:anywhere}.customer-add-button{position:absolute;right:18px;bottom:calc(64px + env(safe-area-inset-bottom,0px));width:56px;height:56px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#2d8659;color:#fff;box-shadow:0 6px 18px #2d865955;cursor:pointer}.manual-customer-form{flex:1;min-width:0;overflow-y:auto;margin:0;padding:16px 16px 24px;border:0}.manual-photo-picker{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 13px;border:1px dashed var(--border-strong);border-radius:9px;background:var(--card);color:var(--muted);font-size:12px;font-weight:700;cursor:pointer}.manual-photo-picker input{display:none}.manual-photo-names{margin:7px 0 0;color:var(--subtle);font-size:10.5px;overflow-wrap:anywhere}.manual-customer-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}@media (max-width: 640px){.job-filters,.customer-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px 12px 6px}.job-filters button,.customer-filters button{padding:6px 4px;font-size:10px}}@media (max-width: 390px){.customer-client-row{grid-template-columns:minmax(0,1fr);gap:0}.customer-detail-grid{grid-template-columns:minmax(0,1fr)}.customer-detail-grid>div:nth-child(7){grid-column:auto}.manual-customer-actions>button{flex:1;justify-content:center}}.app-footer{flex-shrink:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--surface);color:var(--subtle);font-size:10.5px;line-height:1.5;text-align:center}.app-footer a{color:var(--muted);font-weight:600;text-decoration:underline;text-underline-offset:2px}.login-screen{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:calc(76px + env(safe-area-inset-top,0px)) 24px 48px}.login-content{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;text-align:center}.login-eyebrow{margin-top:24px;color:#2f9365;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700;letter-spacing:.18em}.login-title{margin:8px 0 0;color:var(--text);font-family:Barlow Condensed,sans-serif;font-size:clamp(30px,8vw,38px);line-height:1}.login-description{max-width:360px;margin:14px 0 28px;color:var(--muted);font-size:14px;line-height:1.6}.login-security{display:flex;align-items:center;justify-content:center;gap:7px;margin:14px 0 0;color:var(--subtle);font-size:11px;line-height:1.4}.login-security svg{flex:0 0 auto;color:#2f9365}.signature-help{margin:0 0 9px;color:var(--subtle);font-size:11.5px;line-height:1.5}.signature-loading{margin:8px 0;color:var(--subtle);font-size:11.5px}.signature-existing{position:relative;margin-bottom:9px;padding:10px 12px 24px;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:#fff}.signature-existing button{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer}.signature-existing img{display:block;width:100%;height:92px;object-fit:contain}.signature-existing span{position:absolute;right:9px;bottom:6px;color:#667269;font-size:9.5px}.signature-wrap{position:relative;overflow:hidden;border:1px solid var(--border-strong);border-radius:10px;background:#fff}.signature-canvas{display:block;width:100%;height:170px;cursor:crosshair;touch-action:none}.signature-placeholder{position:absolute;top:0;right:0;bottom:24px;left:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#89928c;font-size:12px;pointer-events:none}.signature-line{position:absolute;right:18px;bottom:30px;left:18px;height:1px;background:#ccd2ce;pointer-events:none}.signature-clear{position:absolute;right:8px;bottom:5px;padding:3px 7px;border:0;background:transparent;color:#536158;font:600 10.5px Inter,sans-serif;cursor:pointer}.signature-clear:disabled{cursor:default;opacity:.4}.signature-ready{display:flex;align-items:center;gap:5px;margin:7px 0 0;color:#2d8659;font-size:11.5px;font-weight:600}.signature-change,.signature-cancel{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 9px;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font:600 12px Inter,sans-serif;cursor:pointer}.signature-cancel{margin:7px 0 0;border:0;color:var(--subtle)}.completion-time{display:flex;align-items:center;gap:5px;margin:7px 0 0;color:#2d8659;font-size:11.5px;font-weight:600}.customer-away{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:9px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:9px;background:transparent;color:var(--muted);font:600 12.5px Inter,sans-serif;cursor:pointer}.customer-away.is-active{border-color:#d7a93b;background:#d7a93b1f;color:#b6881f}.customer-away-note{margin:6px 0 0;color:var(--subtle);font-size:10.5px;text-align:center}.archived-banner{display:flex;align-items:center;gap:6px;margin-bottom:16px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--card-muted);color:var(--muted);font-size:11.5px;font-weight:600}.archive-value{min-height:42px;display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-size:13.5px;line-height:1.5}.archive-text{align-items:flex-start;min-height:72px;white-space:pre-wrap}.archive-reaction{padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--card)}.archive-reaction>div{display:flex;justify-content:space-between;gap:8px;color:var(--text);font-size:12px}.archive-reaction time{color:var(--subtle);font:9.5px IBM Plex Mono,monospace;white-space:nowrap}.archive-reaction p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.5;white-space:pre-wrap}.archive-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.archive-photo-grid a,.archive-photo-grid button{display:block;overflow:hidden;aspect-ratio:1;padding:0;border:1px solid var(--border);border-radius:9px;background:none;cursor:pointer}.archive-photo-grid img{display:block;width:100%;height:100%;object-fit:cover}.job-photo-groups{display:flex;flex-direction:column;gap:14px}.job-photo-group h4{display:flex;align-items:center;gap:7px;margin:0 0 7px;color:var(--muted);font-size:11.5px;font-weight:700}.job-photo-group h4 span{min-width:19px;padding:1px 6px;border-radius:999px;background:var(--card);color:var(--subtle);font-size:9px;text-align:center}.job-photo-grid,.job-photo-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.job-photo-upload-grid{margin-top:10px}.job-photo-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--card)}.job-photo-card.is-new{border-color:#2d865988}.job-photo-preview{display:block;width:100%;aspect-ratio:1;padding:0;border:0;background:transparent;cursor:pointer}.job-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}.job-photo-delete{position:absolute;top:5px;right:5px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:8px;background:var(--overlay);color:#e0645c;cursor:pointer}.job-photo-caption{display:flex;align-items:center;gap:5px;min-width:0;padding:6px 7px}.job-photo-caption span{min-width:0;overflow:hidden;color:var(--muted);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.job-photo-caption small{flex-shrink:0;color:#2d8659;font-size:8px;font-weight:800}.workorder-help{margin:0 0 9px;color:var(--subtle);font-size:11.5px;line-height:1.45}.job-contact-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}@media (max-width: 520px){.job-contact-fields{grid-template-columns:minmax(0,1fr);gap:0}}.workorder-list{display:flex;flex-direction:column;gap:7px;margin-bottom:9px}.workorder-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--card);color:var(--muted)}.workorder-item.is-new{border-color:#2d865988}.workorder-item>span{min-width:0;overflow:hidden;color:var(--text);font-size:12.5px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.workorder-item small{color:#2d8659;font-size:8.5px;font-weight:700}.workorder-item a,.workorder-item button,.workorder-upload{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--border-strong);border-radius:7px;background:transparent;color:var(--text);font:inherit;font-size:11px;font-weight:600;text-decoration:none;cursor:pointer}.workorder-item a{padding:6px 8px}.workorder-item button{width:30px;height:30px;color:#e0645c}.workorder-upload{padding:9px 11px}.workorder-upload:disabled{cursor:wait;opacity:.6}.workorder-error{margin:7px 0 0;color:#e0645c;font-size:11.5px}@media (max-width: 520px){.workorder-item{grid-template-columns:auto minmax(0,1fr) auto}.workorder-item small{display:none}.workorder-item.is-new{grid-template-columns:auto minmax(0,1fr) auto auto}.workorder-item a{padding:7px}.workorder-item a{font-size:0}}.archive-away{display:flex;align-items:center;gap:6px;padding:10px 12px;border:1px solid #d7a93b66;border-radius:9px;background:#d7a93b1f;color:#b6881f;font-size:12px;font-weight:600}.ocr-import{display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;padding:12px;border:1px dashed var(--border-strong);border-radius:10px;background:var(--surface);color:var(--muted)}.ocr-import>img,.ocr-import>svg{width:74px;height:74px;border-radius:8px;object-fit:cover}.ocr-import>svg{padding:21px;background:var(--card-muted)}.ocr-import strong{display:block;color:var(--text);font-size:12.5px}.ocr-import p{margin:4px 0 9px;color:var(--subtle);font-size:10.5px;line-height:1.45}.ocr-import button{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:0;border-radius:7px;background:#2d8659;color:#fff;font:700 11.5px Inter,sans-serif;cursor:pointer}.ocr-import button:disabled{cursor:wait;opacity:.7}.ocr-error,.ocr-success{display:flex;align-items:flex-start;gap:5px;margin:7px 0 0;color:#e0645c;font-size:11px;line-height:1.4}.ocr-success{color:#2d8659}@media (max-width: 360px){.ocr-import{grid-template-columns:54px minmax(0,1fr)}.ocr-import>img,.ocr-import>svg{width:54px;height:54px}}@supports (height: 100dvh){.app-shell{height:100dvh}}@media (max-width: 480px){.app-shell{max-height:none}}@media (min-width: 760px){.app-shell{max-width:900px}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1200px){.app-shell{width:calc(100% - 32px);max-width:1600px;height:calc(100vh - 32px);max-height:none;margin:16px auto}.week-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.klus-form-scroll>*{width:100%;max-width:760px;margin-left:auto;margin-right:auto}}@supports (height: 100dvh){@media (min-width: 1200px){.app-shell{height:calc(100dvh - 32px)}}}.job-overview-tools{padding:8px 16px 0;flex-shrink:0}.job-search{width:100%;height:34px;display:flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--card);color:var(--muted)}.job-search input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.last-sync-time{margin-top:7px;color:var(--subtle);font-size:10.5px}.sync-details{margin:4px 0 0 16px;color:var(--subtle);font-size:10.5px}.job-contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:-6px 0 14px}.job-contact-actions a{min-height:42px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #2D865966;border-radius:9px;background:#2d86591a;color:#2d8659;font-weight:700;text-decoration:none}.profile-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--overlay)}.profile-menu-panel{width:min(100%,560px);padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 18px 50px #0008}.profile-menu-title,.profile-menu-title>div,.profile-menu-title span{display:flex;align-items:center}.profile-menu-title{justify-content:space-between;margin-bottom:8px}.profile-menu-title>div{gap:9px;min-width:0}.profile-menu-title span{align-items:flex-start;flex-direction:column;min-width:0}.profile-menu-title strong{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-title small{color:var(--muted)}.profile-menu-title>button{width:34px;height:34px;border:0;border-radius:8px;background:var(--card);color:var(--text);font-size:24px}.profile-menu-panel>button{width:100%;min-height:42px;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--border);border-radius:9px;background:var(--card);color:var(--text);font-weight:700}.profile-menu-panel>button.profile-danger-action{border-color:#e0645c66;color:#e0645c}.profile-menu-panel>button:disabled{cursor:not-allowed;opacity:.58}.profile-menu-note,.profile-menu-error{margin:7px 4px 0;font-size:11px;line-height:1.45}.profile-menu-note{color:var(--muted)}.profile-menu-error{color:#e0645c;overflow-wrap:anywhere}.admin-push-panel{max-height:calc(100dvh - 48px - env(safe-area-inset-bottom,0px));overflow-y:auto;color:var(--text)}.admin-push-panel fieldset{margin:16px 0;padding:10px;border:1px solid var(--border);border-radius:9px}.admin-push-panel legend{font-size:13px;font-weight:700}.push-recipient-list{max-height:190px;overflow-y:auto}.push-recipient{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:13px}.push-recipient input{flex-shrink:0;width:18px;height:18px;accent-color:#2D8659}.push-recipient span{min-width:0;overflow-wrap:anywhere}.push-recipient small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.push-message-field{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:13px;font-weight:600}.push-message-field input,.push-message-field textarea{width:100%;box-sizing:border-box;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:11px;font:inherit;font-size:16px}.push-message-field textarea{resize:vertical}.push-message-field small{color:var(--muted);font-weight:400;text-align:right}.push-message-notice{color:#2d8659;font-size:13px;line-height:1.5}.push-message-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.push-message-actions button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1 1 auto;padding:12px;border-radius:9px;border:1px solid var(--border);background:var(--card);color:var(--text);font-weight:700}.push-message-actions button[type=submit]{background:#2d8659;color:var(--on-accent)}.push-message-actions button:disabled{opacity:.55;cursor:not-allowed}.users-fields{min-width:0}.users-fields:disabled{opacity:.65}.push-message-field select{width:100%;padding:11px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);font-size:16px}.users-list-title{display:flex;justify-content:space-between;align-items:center;margin:18px 0 8px}.users-list-title button,.managed-user button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;padding:9px}.users-list{max-height:230px;overflow-y:auto}.managed-user{display:flex;align-items:center;gap:12px;justify-content:space-between;border-bottom:1px solid var(--border);padding:12px 0;font-size:13px}.managed-user span{min-width:0;overflow-wrap:anywhere}.managed-user small{display:block;color:var(--muted);margin-top:3px}.managed-user button{flex-shrink:0;font-size:11px}.managed-user button:disabled{opacity:.5}.managed-user{flex-wrap:wrap}.managed-private-email{flex-basis:100%}.managed-private-email summary,.admin-audit summary{cursor:pointer;padding:8px 0}.private-email-editor{margin-top:8px;display:grid;gap:8px}.private-email-editor button,.admin-audit>button{border:1px solid var(--border);border-radius:8px;padding:10px;background:var(--card);color:var(--text);cursor:pointer}.private-email-editor button:disabled{opacity:.5}.admin-audit{margin-top:18px}.audit-list{padding:0;margin:12px 0;list-style:none;max-height:260px;overflow-y:auto}.audit-list li{border-bottom:1px solid var(--border);padding:10px 0;display:grid;gap:4px;font-size:12px;overflow-wrap:anywhere}.audit-list small{color:var(--muted)}.managed-user>.push-message-actions{margin-top:0;flex:0 1 220px}@media (max-width: 600px){.managed-user{flex-direction:column;align-items:stretch;gap:8px}.managed-user>.push-message-actions{flex:0 0 auto}}.users-result{margin-top:12px;padding:12px;border:1px solid #2D865966;border-radius:9px;font-size:13px;overflow-wrap:anywhere}.temporary-password{display:block;padding:10px;background:var(--card);color:var(--text);-webkit-user-select:all;user-select:all}.job-checklist{display:grid;gap:8px}.assignee-dropdown{min-width:0;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.assignee-dropdown>summary{padding:12px;cursor:pointer;font-size:13px;overflow-wrap:anywhere}.assignee-dropdown[open]>summary{border-bottom:1px solid var(--border)}.assignee-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:5px;padding:8px;max-height:280px;overflow-y:auto}.assignee-picker>label{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 9px;min-height:44px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);cursor:pointer}.assignee-picker>label.is-selected{border-color:#2d8659;background:color-mix(in srgb,#2D8659 12%,var(--surface))}.assignee-picker input{width:18px;height:18px;flex:0 0 auto;accent-color:#2D8659}.assignee-picker span{display:flex;flex-direction:column;min-width:0}.assignee-picker strong,.assignee-picker small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignee-picker strong{font-size:12px}.assignee-picker small{margin-top:2px;color:var(--subtle);font-size:10.5px}.assignee-picker>p{margin:0;color:var(--subtle);font-size:12px}.checklist-item{min-height:44px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid var(--border);border-radius:9px;background:var(--card);color:var(--text);font-size:13px;font-weight:600}.checklist-item>input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;accent-color:#2D8659}.checklist-item>input[type=text]{min-width:0;flex:1;padding:6px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text);font:inherit}.checklist-item>input[type=text]:focus{border-color:#2d8659;outline:0;background:var(--surface)}.checklist-item>span{min-width:0;flex:1}.checklist-item>button{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:#e0645c}.job-checklist .checklist-add{min-height:40px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #2D865988;border-radius:9px;background:#2d865912;color:#2d8659;font-weight:700}@media (hover: none) and (pointer: coarse){.desktop-datetime-picker{display:none}.mobile-datetime-picker{display:block}.desktop-datetime-summary{display:none}}img,button,input,textarea{max-width:100%}input::placeholder,textarea::placeholder{color:var(--subtle)}button,input,textarea{transition:background-color .18s ease,border-color .18s ease,color .18s ease}.eco-spin{animation:eco-spin 1s linear infinite}@keyframes eco-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.eco-spin{animation:none}}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay);animation:eco-lightbox-fade .15s ease}.image-lightbox-overlay img{display:block;max-width:100%;max-height:100%;border-radius:10px;object-fit:contain;box-shadow:0 12px 40px #0006}.image-lightbox-close{position:absolute;top:calc(16px + env(safe-area-inset-top,0px));right:16px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:var(--card);color:var(--text);cursor:pointer}@keyframes eco-lightbox-fade{0%{opacity:0}to{opacity:1}}.draft-status{margin:0 0 14px;color:var(--muted);font-size:12px;line-height:1.5}.draft-status.is-error{color:#c33d35}.draft-status button{margin-left:8px;cursor:pointer}.offline-status{position:fixed;bottom:8px;left:50%;transform:translate(-50%);z-index:100;max-width:calc(100% - 32px);padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:12px}.customer-workspace{display:flex;flex:1;min-height:0}.customer-workspace-list{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.customer-workspace-detail{display:none;min-width:0;min-height:0}.customer-workspace.has-selection .customer-workspace-list{display:none}.customer-workspace.has-selection .customer-workspace-detail{display:flex;flex-direction:column;flex:1}.customer-card.is-selected{border-color:#2d8659;background:var(--card-muted)}.customer-card:focus-visible{outline:2px solid #2d8659;outline-offset:2px}.customer-dossier-title{font-size:22px;margin:12px 0}.customer-add-selected{display:none}.customer-selection-empty{margin:auto;padding:32px;text-align:center;color:var(--muted)}.customer-selection-empty h2{color:var(--text);font-size:22px}@media (min-width: 1000px){.customer-workspace{display:grid;grid-template-columns:minmax(300px,350px) minmax(0,1fr)}.customer-workspace.has-selection .customer-workspace-list{display:flex}.customer-workspace-detail{display:flex;flex-direction:column;border-left:1px solid var(--border)}.customer-workspace-list .customer-filters{display:flex;flex-wrap:wrap;padding:12px;gap:6px}.customer-workspace-list .customer-filters button{flex:0 1 auto;padding:7px 10px}.customer-workspace-list .customer-list{padding:4px 12px 80px}.customer-workspace-list .customer-card{padding:12px}.customer-workspace-list .customer-card-top{flex-direction:column;gap:6px}.customer-add-selected{display:flex}.customer-workspace-detail .customer-detail-grid{grid-template-columns:minmax(0,1fr)}}@media (min-width: 1200px){.customer-workspace-detail .customer-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
