/* SunSaguaro Route Manager v0.1.2 - namespaced styles */
.ssops-app,.ssops-app *,.ssops-login-shell,.ssops-login-shell *{box-sizing:border-box}
.ssops-app{
  --bg:#f4f6f8;--panel:#ffffff;--line:#d7dde5;--line2:#edf1f6;--text:#1f2937;--muted:#667085;
  --green:#27ae60;--blue:#2d9cdb;--red:#d64545;--yellow:#d39b17;--shadow:0 10px 30px rgba(17,24,39,.08);
  --accent:#2f80ed;--accent-soft:#e9f2ff;
  max-width:1320px;margin:0 auto;padding:26px;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg)
}
.ssops-day-1{--accent:#2f80ed;--accent-soft:#eaf3ff}.ssops-day-2{--accent:#0ea5a4;--accent-soft:#e8fbfb}.ssops-day-3{--accent:#4caf50;--accent-soft:#eef9ee}.ssops-day-4{--accent:#f59e0b;--accent-soft:#fff6e7}.ssops-day-5{--accent:#ef4444;--accent-soft:#ffecec}.ssops-day-6{--accent:#8b5cf6;--accent-soft:#f2edff}.ssops-day-7{--accent:#ec4899;--accent-soft:#ffeaf5}
.ssops-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:6px 0 24px;border-bottom:1px solid var(--line)}
.ssops-brand-kicker{font-size:11px;font-weight:800;letter-spacing:3px;color:var(--accent);text-transform:uppercase}
.ssops-topbar h1{margin:8px 0 0;font-size:clamp(40px,6vw,76px);line-height:.92;color:#17212f}
.ssops-subtitle{margin:10px 0 0;color:var(--muted);font-size:14px}
.ssops-top-actions{display:flex;gap:10px;flex-wrap:wrap}
.ssops-link-btn,.ssops-action,.ssops-add-task-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text)!important;text-decoration:none!important;font-size:11px;font-weight:800;letter-spacing:.8px;cursor:pointer;box-shadow:none}
.ssops-link-btn:hover,.ssops-action:hover,.ssops-add-task-btn:hover{border-color:var(--accent)}
.ssops-datebar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 2px;color:var(--text)}
.ssops-datebar a{color:var(--accent);text-decoration:none;font-size:12px;font-weight:800}.ssops-datebar strong{font-size:18px}
.ssops-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:6px 0 10px}
.ssops-summary-card{min-height:112px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--text);text-align:left;box-shadow:var(--shadow)}
.ssops-summary-card span,.ssops-summary-card small{display:block;color:var(--muted);font-size:11px;letter-spacing:.5px}.ssops-summary-card strong{display:block;margin:12px 0 7px;font-size:32px;line-height:1}.ssops-closeout-toggle{cursor:pointer}
.ssops-progress{height:8px;background:#e6ebf2;border-radius:999px;margin:18px 0 24px;overflow:hidden}.ssops-progress span{display:block;height:100%;background:var(--accent)}
.ssops-route-list{display:grid;gap:14px}.ssops-route-tiles{grid-template-columns:repeat(auto-fit,minmax(285px,1fr))}
.ssops-stop{border:1px solid var(--line);border-top:6px solid var(--accent);border-radius:18px;background:var(--panel);box-shadow:var(--shadow);transition:.2s;min-height:100%}
.ssops-stop-main{padding:16px 16px 14px}
.ssops-stop-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ssops-stop-topline{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.ssops-stop-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:900}
.ssops-stop-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f1f5f9;color:#475467;font-size:10px;font-weight:900;letter-spacing:1px}
.ssops-stop-head h2,.ssops-stop h2{margin:12px 0 6px;font-size:22px;line-height:1.08;color:#17212f}
.ssops-address{font-size:12px;color:var(--muted);line-height:1.4;min-height:34px}
.ssops-timebox{text-align:right;white-space:nowrap;padding:6px 10px;border-radius:12px;background:var(--accent-soft)}.ssops-timebox strong{display:block;font-size:18px;color:#17212f}.ssops-timebox small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.7px}
.ssops-tile-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;background:var(--accent-soft);border-radius:12px;color:#364152;font-size:12px}
.ssops-tile-meta strong{color:#17212f}
.ssops-tasks{margin-top:12px;display:grid;gap:8px}.ssops-task{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}.ssops-task strong{font-size:14px}.ssops-task small{display:block;margin-top:3px;color:var(--muted);font-size:10px}
.ssops-task-check{width:26px;height:26px;border-radius:50%;border:1px solid #c8ced8;background:#fff;color:#8a94a5;cursor:pointer}
.ssops-task.is-done{background:#eaf8ef;border-color:#c9e9d3}.ssops-task.is-done strong{text-decoration:line-through}.ssops-task.is-done .ssops-task-check{background:var(--green);border-color:var(--green);color:#fff}.ssops-task.is-skipped{background:#fff7e7;border-color:#f0db9f}
.ssops-auto-tag{padding:4px 6px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:9px;font-weight:800;background:#fff}
.ssops-open-note,.ssops-account-note,.ssops-equipment-line{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe;font-size:12px;color:#4b5563}.ssops-open-note{background:#fff8df;border-color:#f3df93;color:#876400}
.ssops-stop-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.ssops-start{border-color:#a6d4f2;color:#116fa2!important;background:#eff8ff}.ssops-complete{border-color:#b6e2c3;color:#1e824c!important;background:#eefaf1}.ssops-skip{border-color:#f0dda1;color:#926b11!important;background:#fff8e6}.ssops-map,.ssops-call{background:#fff}
.ssops-more-panel{margin-top:12px;border-top:1px dashed var(--line);padding-top:10px}.ssops-more-panel summary{cursor:pointer;font-weight:800;color:var(--accent);font-size:12px;list-style:none}.ssops-more-panel summary::-webkit-details-marker{display:none}
.ssops-add-task-row{display:grid;grid-template-columns:1fr 1.1fr auto;gap:8px;margin-top:12px}.ssops-add-task-row select,.ssops-add-task-row input{min-height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);padding:0 10px}
.ssops-status-in_progress .ssops-stop-status{background:#e8f4fd;color:#1d6fa5}.ssops-status-completed{background:#f7fcf8}.ssops-status-completed .ssops-stop-status{background:#eaf8ef;color:#1f8c4b}.ssops-status-skipped .ssops-stop-status{background:#fff8df;color:#9b7414}
.ssops-closeout-panel{margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.ssops-closeout-panel h2{margin-top:0;color:#17212f}.ssops-warning{padding:14px;border:1px solid #f0b4b4;border-radius:14px;background:#fff1f1;color:#9c2c2c}.ssops-all-clear{padding:14px;border:1px solid #b9e2c1;border-radius:14px;background:#effbf2;color:#1f7a42}
.ssops-app.ssops-closeout-mode .ssops-stop:not(.ssops-status-completed):not(.ssops-status-skipped){border-color:#efb0b0;border-top-color:var(--red);background:#fff7f7}.ssops-app.ssops-closeout-mode .ssops-stop:not(.ssops-status-completed):not(.ssops-status-skipped) .ssops-stop-status{background:#ffe4e4;color:#a12525}
.ssops-empty{padding:40px;border:2px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted);background:#fff}
.ssops-login-shell{min-height:70vh;display:grid;place-items:center;padding:30px;background:#f4f6f8;font-family:Arial,Helvetica,sans-serif}.ssops-login-card{width:min(420px,100%);padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff;color:#1f2937;box-shadow:var(--shadow)}.ssops-login-card h2{margin:8px 0 22px}.ssops-login-card label{color:#4b5563}.ssops-login-card input[type=text],.ssops-login-card input[type=password]{width:100%;padding:10px;border:1px solid #d8dee6;border-radius:10px;background:#fff;color:#1f2937}.ssops-login-card input[type=submit]{background:#f3a51a;border:0;border-radius:10px;padding:11px 18px;font-weight:800}
.ssops-admin-wrap{--gold:#f3a51a}.ssops-admin-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:14px 0 20px}.ssops-admin-toolbar form{display:flex;gap:8px;align-items:center}.ssops-admin-grid{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(500px,1.2fr);gap:20px}.ssops-admin-panel{background:#fff;border:1px solid #dcdcde;padding:20px}.ssops-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ssops-form-grid label,.ssops-admin-panel>form>label{display:grid;gap:6px;font-weight:600}.ssops-form-grid input,.ssops-form-grid select,.ssops-form-grid textarea,.ssops-admin-panel input{width:100%}.ssops-form-grid textarea{min-height:70px}.ssops-full{grid-column:1/-1}.ssops-admin-status{display:inline-block;padding:4px 7px;border-radius:3px;background:#eee}.ssops-admin-status.ssops-status-completed{background:#dff3dd}.ssops-admin-status.ssops-status-in_progress{background:#ddecf8}.ssops-admin-status.ssops-status-skipped{background:#fbefc8}
@media(max-width:980px){.ssops-summary-grid{grid-template-columns:1fr 1fr}.ssops-admin-grid{grid-template-columns:1fr}.ssops-add-task-row{grid-template-columns:1fr}.ssops-route-tiles{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
@media(max-width:700px){.ssops-app{padding:14px}.ssops-topbar{align-items:flex-start;flex-direction:column}.ssops-datebar strong{font-size:15px}.ssops-summary-grid{grid-template-columns:1fr 1fr}.ssops-summary-card{min-height:96px;padding:15px}.ssops-summary-card strong{font-size:24px}.ssops-stop-head{display:block}.ssops-timebox{text-align:left;display:inline-block;margin-top:10px}.ssops-route-tiles{grid-template-columns:1fr}.ssops-topbar h1{font-size:50px}.ssops-add-task-row{grid-template-columns:1fr}.ssops-form-grid{grid-template-columns:1fr}.ssops-full{grid-column:auto}}


/* v0.1.3 route builder + task toolbox */
.ssops-workspace{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}
.ssops-task-palette{position:sticky;top:24px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow);max-height:calc(100vh - 48px);overflow:auto}
.ssops-task-palette-head{padding:4px 2px 12px;border-bottom:1px solid var(--line)}.ssops-task-palette-head span{display:block;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:1.4px}.ssops-task-palette-head strong{display:block;margin-top:5px;font-size:14px;color:#17212f}
.ssops-task-palette-list{display:grid;gap:8px;margin-top:12px}.ssops-palette-task{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe;cursor:grab;user-select:none}.ssops-palette-task:active{cursor:grabbing}.ssops-palette-task:hover{border-color:var(--accent);background:var(--accent-soft)}.ssops-palette-grip{color:#98a2b3;font-weight:900}.ssops-palette-task strong{display:block;font-size:12px}.ssops-palette-task small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.ssops-task-palette-note{margin-top:12px;padding:10px;border-radius:12px;background:var(--accent-soft);color:#475467;font-size:10px;line-height:1.45}
.ssops-stop{position:relative}.ssops-tile-drag-handle{position:absolute;right:10px;top:10px;z-index:3;width:34px;height:28px;border:0;border-radius:10px;background:rgba(255,255,255,.82);color:#98a2b3;font-weight:900;cursor:grab}.ssops-tile-drag-handle:active{cursor:grabbing}.ssops-stop.ssops-dragging{opacity:.45;transform:scale(.985)}.ssops-stop.ssops-drop-target{outline:3px dashed var(--accent);outline-offset:3px}.ssops-stop.ssops-task-drop-target{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent),var(--shadow);transform:translateY(-2px)}
.ssops-task{display:block}.ssops-task-mainrow{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px}.ssops-task-title small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.ssops-task-tags{display:flex;align-items:center;gap:6px}.ssops-task-detail-toggle{border:0;background:transparent;color:var(--accent);font-size:10px;font-weight:800;cursor:pointer;padding:4px}.ssops-task-detail-panel{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);display:grid;grid-template-columns:1fr 120px;gap:8px}.ssops-task-detail-panel[hidden]{display:none}.ssops-task-detail-panel label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:800}.ssops-task-detail-panel input,.ssops-task-detail-panel textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);padding:8px}.ssops-task-notes-label{grid-column:1/-1}.ssops-task-detail-panel textarea{min-height:64px;resize:vertical}.ssops-save-task-details{grid-column:1/-1;justify-self:start;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:#fff;padding:8px 12px;font-size:10px;font-weight:900;cursor:pointer}
.ssops-route-tiles.ssops-is-sorting .ssops-stop{cursor:grabbing}
@media(max-width:980px){.ssops-workspace{grid-template-columns:1fr}.ssops-task-palette{position:relative;top:auto;max-height:none}.ssops-task-palette-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media(max-width:700px){.ssops-task-palette-list{display:flex;overflow-x:auto;padding-bottom:6px}.ssops-palette-task{min-width:180px}.ssops-task-detail-panel{grid-template-columns:1fr}.ssops-task-notes-label,.ssops-save-task-details{grid-column:auto}.ssops-tile-drag-handle{display:none}}

.ssops-mobile-order-controls{display:none;gap:4px}.ssops-move-stop{width:28px;height:28px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--accent);font-weight:900;cursor:pointer}
@media(max-width:700px){.ssops-mobile-order-controls{display:inline-flex}}

/* v0.1.5: one-touch chemicals + removable extra tasks */
.ssops-chemicals{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
.ssops-chemical{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;background:#f4f7fb;border:1px solid #dde5ed;border-radius:12px;min-width:0}
.ssops-chemical-label{color:#273348;font-size:11px;font-weight:800;line-height:1.3}
.ssops-chemical-label small{display:block;color:#64748b;font-size:9px;font-weight:500;margin-top:2px;white-space:nowrap}
.ssops-chemical-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}
.ssops-chem-step{height:32px;width:32px;display:flex;align-items:center;justify-content:center;background:#fff;color:#24334a;border:1px solid #cbd5e1;border-radius:9px;font-size:19px;font-weight:800;cursor:pointer;padding:0}
.ssops-chem-step:active{background:var(--accent-soft);transform:scale(.95)}
.ssops-chem-value{min-width:29px;text-align:center;font-size:16px;font-weight:900;color:#17212f;font-variant-numeric:tabular-nums}
.ssops-task-delete{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid #f3b5b5;background:#fff5f5;color:#b42318;border-radius:7px;font-size:20px;font-weight:500;cursor:pointer;line-height:1}
.ssops-task-delete:hover{background:#fee2e2}
.ssops-feedback{position:fixed;bottom:24px;right:24px;z-index:9999;max-width:min(380px,calc(100vw - 40px));padding:11px 16px;border-radius:12px;background:#213547;color:white;box-shadow:0 8px 28px #10182822;font-size:12px;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .2s,transform .2s}
.ssops-feedback.is-visible{opacity:1;transform:translateY(0)}.ssops-feedback.is-error{background:#a82727}
.ssops-skip-choices{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px;padding:9px;border:1px solid #eed5a2;background:#fffbeb;border-radius:12px}
.ssops-skip-choices[hidden]{display:none}
.ssops-skip-choices span{font-size:11px;color:#825c10;font-weight:800;width:100%}
.ssops-skip-choices button{padding:6px 9px;border:1px solid #e5cf97;background:#fff;border-radius:9px;color:#77500a;font-size:11px;font-weight:800;cursor:pointer}
.ssops-skip-choices .ssops-cancel-skip{margin-left:auto;border-color:#cdd5df;color:#64748b}
.ssops-stop.ssops-saving{opacity:.86}
.ssops-palette-task.ssops-palette-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}
@media(max-width:1440px){.ssops-chemicals{grid-template-columns:1fr}}
@media(max-width:700px){.ssops-chemicals{grid-template-columns:1fr 1fr}.ssops-chemical{flex-wrap:wrap}.ssops-chemical-controls{width:100%;justify-content:space-between}.ssops-chem-step{height:38px;width:38px}.ssops-feedback{right:10px;bottom:10px}}

.ssops-chemicals{grid-template-columns:1fr}.ssops-chem-step:disabled{opacity:.35;cursor:not-allowed}

/* v0.1.6: streamlined visit notes + private camera/photo record */
.ssops-visit-record-container{display:flex;align-items:flex-start;gap:7px;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}
.ssops-visit-record{flex:1;min-width:0;margin:0!important;padding:0!important;border:0!important}
.ssops-visit-record summary{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 5px!important;margin:0!important;border:0!important;background:transparent!important;color:#b42318!important;font-size:12px!important;font-weight:800!important;letter-spacing:0!important;cursor:pointer;list-style:none!important}
.ssops-visit-record summary::-webkit-details-marker{display:none}
.ssops-visit-record summary::before{content:'▸';font-size:13px;color:var(--accent)}
.ssops-visit-record[open] summary::before{content:'▾'}
.ssops-photo-count{font-size:10px;color:#475467;font-weight:600;margin-left:auto}
.ssops-quick-camera{display:flex;align-items:center;justify-content:center;flex:0 0 38px;height:36px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font-size:16px}
.ssops-quick-camera:hover{border-color:var(--accent);background:var(--accent-soft)}
.ssops-visit-notes-block,.ssops-visit-photo-block{margin-top:11px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f9fbfd}
.ssops-visit-notes-block label{display:block;font-size:11px;font-weight:800;color:#273348}
.ssops-visit-notes{display:block;resize:vertical;width:100%;min-height:85px;max-height:300px;margin-top:7px;padding:10px;border:1px solid #cdd6e1;border-radius:10px;background:#fff!important;color:#1f2937!important;font-size:13px;line-height:1.45;letter-spacing:0}
.ssops-visit-notes:focus{outline:2px solid var(--accent);outline-offset:1px}
.ssops-notes-save-status{display:block;min-height:17px;margin-top:5px;color:#64748b;font-size:10px}
.ssops-visit-photo-head{display:flex;align-items:baseline;justify-content:space-between;gap:5px;flex-wrap:wrap;margin-bottom:8px}
.ssops-visit-photo-head strong{font-size:12px;color:#273348}.ssops-visit-photo-head span{font-size:9px;color:#64748b}
.ssops-visit-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.ssops-photo-item{position:relative;aspect-ratio:1.16;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#e8edf3}
.ssops-photo-item a{display:block;width:100%;height:100%}.ssops-photo-item img{display:block;width:100%;height:100%;object-fit:cover;border:0}
.ssops-remove-photo{position:absolute;right:3px;top:3px;display:grid;place-items:center;width:24px;height:24px;border:1px solid #f2b1b1;border-radius:7px;background:#fff6f6;color:#b42318;font-size:20px;font-weight:700;line-height:1;cursor:pointer;padding:0}
.ssops-remove-photo:hover{background:#fee2e2}
.ssops-take-photo{width:100%;min-height:38px;margin-top:10px;padding:7px 10px;border:1px solid var(--accent);border-radius:10px;background:var(--accent-soft);color:#1e3c58;font-size:12px;font-weight:800;cursor:pointer}
.ssops-take-photo:hover{filter:brightness(.96)}
.ssops-photo-status{display:block;margin-top:8px;color:#64748b;font-size:10px;line-height:1.4}
@media(max-width:700px){.ssops-visit-record summary{min-height:42px!important}.ssops-quick-camera{height:42px;flex-basis:42px}.ssops-photo-item{aspect-ratio:1}}

/* v0.1.7: explicit SVG camera icon instead of a missing emoji glyph. */
.ssops-app button.ssops-quick-camera{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;height:42px!important;min-width:44px!important;padding:0!important;background:#eef5ff!important;border:1px solid #b8cdea!important;border-radius:11px!important;color:#275b90!important;box-shadow:none!important;line-height:1!important}
.ssops-app button.ssops-quick-camera:hover{background:#dcecff!important;border-color:#7ca8d9!important}
.ssops-app button.ssops-quick-camera svg{display:block!important;width:22px!important;height:22px!important;flex:none!important;stroke:currentColor!important;stroke-width:2!important;fill:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
.ssops-app button.ssops-take-photo{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;letter-spacing:.3px!important;line-height:1.3!important;white-space:normal!important}
.ssops-app button.ssops-take-photo svg{width:18px!important;height:18px!important;flex:none!important;stroke:currentColor!important;fill:none!important}

/* Admin reporting UI, scoped to the plugin only. */
.ssops-reports{max-width:1500px}
.ssops-report-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;background:#fff;padding:15px 18px;border:1px solid #dbe3eb;border-radius:12px;margin-top:18px}
.ssops-report-filters label{display:grid;gap:5px;font-weight:600;color:#334155}
.ssops-report-filters input,.ssops-report-filters select{min-height:35px}
.ssops-report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 28px}
.ssops-report-card{min-height:130px;background:#fff;border:1px solid #d8e1e9;border-top:4px solid #2f80ed;border-radius:14px;box-shadow:0 6px 18px rgba(10,30,50,.04);padding:18px 20px;display:flex;flex-direction:column;justify-content:space-between}
.ssops-report-card>span{color:#667085;font-size:12px;font-weight:700}
.ssops-report-card strong{font-size:30px;letter-spacing:-1px;color:#142236;line-height:1.25}
.ssops-report-card strong small{font-size:13px;font-weight:500;letter-spacing:0;color:#667085}
.ssops-report-card em{font-size:11px;color:#64748b;font-style:normal}
.ssops-okr-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.ssops-okr-card{background:#fff;border:1px solid #d8e1e9;border-radius:14px;padding:17px;min-height:170px}
.ssops-okr-card>strong{font-size:15px;color:#17212f}.ssops-okr-card p{font-size:12px;color:#667085;min-height:42px}
.ssops-okr-card>div:not(.ssops-okr-status){display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}
.ssops-okr-card b{font-size:26px;color:#17212f}.ssops-okr-card span{font-size:12px;color:#64748b}
.ssops-okr-status{display:inline-block;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700;background:#fff0d9;color:#935d0a}
.ssops-okr-status.good{background:#e6f7e8;color:#1f7c3a}
.ssops-target-editor{padding:12px 16px;background:#fff;border:1px solid #d8e1e9;border-radius:12px;margin-bottom:26px}
.ssops-target-editor summary{cursor:pointer;font-weight:700;color:#2d6b9f}
.ssops-target-editor form{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding-top:12px}
.ssops-target-editor label{display:grid;gap:5px;font-weight:600;font-size:12px}
.ssops-target-editor input{width:120px}
.ssops-report-table-wrap{overflow-x:auto;margin:10px 0 25px;border:1px solid #dbe3eb;border-radius:12px;background:#fff}
.ssops-report-table{min-width:800px;border:0!important}
.ssops-report-table th,.ssops-report-table td{padding:12px 10px!important;font-size:12px;vertical-align:middle}
.ssops-reports>h2{margin-top:30px;font-size:21px}
@media(max-width:1100px){.ssops-report-grid,.ssops-okr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.ssops-report-grid,.ssops-okr-grid{grid-template-columns:1fr}}

/* 0.1.9 : schedule controls, version label and reporting redesign */
.ssops-version,.ssops-admin-version{display:inline-flex;align-items:center;margin-top:9px;padding:5px 10px;border:1px solid #cbd8ea;border-radius:999px;background:#fff;color:#416078;font-weight:800;font-size:11px;letter-spacing:.4px}
.ssops-admin-version{vertical-align:middle;margin:0 0 0 6px;font-size:12px}
.ssops-plan-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-3px 0 20px}.ssops-plan-toggle,.ssops-schedule-submit,.ssops-confirm-move{border:0;border-radius:12px;background:var(--accent);color:#fff;padding:11px 15px;font-size:12px;font-weight:800;cursor:pointer}.ssops-jump-form{display:flex;gap:7px;align-items:center}.ssops-jump-form label{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800}.ssops-jump-form input,.ssops-schedule-panel input,.ssops-schedule-panel select,.ssops-move-panel input{width:100%;min-height:40px;border:1px solid #cbd5e1;background:#fff;color:#233249;border-radius:10px;padding:8px}.ssops-jump-form button{min-height:40px;border:1px solid #cbd5e1;background:#fff;border-radius:10px;color:#223247;padding:0 14px;font-weight:800;cursor:pointer}.ssops-schedule-panel{margin:0 0 24px;padding:22px;border:1px solid #cbd8e7;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.ssops-schedule-panel[hidden],.ssops-move-panel[hidden]{display:none}.ssops-schedule-panel h2{margin:0;font-size:21px}.ssops-schedule-panel p{color:#667085;font-size:12px;line-height:1.6}.ssops-schedule-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ssops-schedule-form label,.ssops-move-panel label{display:grid;gap:6px;color:#344054;font-weight:800;font-size:11px}.ssops-schedule-submit{align-self:end;min-height:40px}.ssops-schedule-result{margin-bottom:0!important}.ssops-work-label{margin:6px 0;color:#334155;font-weight:700;font-size:12px}.ssops-special-label{display:inline-block;padding:4px 8px;border-radius:100px;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:9px}.ssops-move-panel{margin-top:10px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;padding:12px;border-radius:12px;background:#f1f5f9}.ssops-move-panel small{grid-column:1/-1;color:#667085}.ssops-action.ssops-move-toggle{background:var(--accent-soft);color:var(--accent)!important}
@media(max-width:850px){.ssops-schedule-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.ssops-plan-controls{flex-direction:column;align-items:stretch}.ssops-schedule-form{grid-template-columns:1fr}.ssops-move-panel{grid-template-columns:1fr}}
.ssops-reports{max-width:1500px;background:#f4f7fb;padding:12px 20px 36px;margin-top:15px!important;border-radius:20px}
.ssops-report-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:34px 32px;border-radius:22px;background:linear-gradient(120deg,#0f223a,#1e3f5d);color:#fff}.ssops-report-hero h1{color:#fff!important;font-size:clamp(28px,4vw,46px);font-weight:800;letter-spacing:-1.4px;line-height:1.08;margin:12px 0}.ssops-report-hero p{font-size:13px;color:#d6e3f3;margin:0;max-width:620px}.ssops-report-eyebrow{font-size:10px;color:#f7bc62;font-weight:900;letter-spacing:2.6px}.ssops-report-hero-aside{display:grid;gap:8px;text-align:right}.ssops-report-hero-aside strong{font-size:17px}.ssops-report-hero-aside span{font-size:11px;color:#c7d8e8}.ssops-report-hero-aside a{color:#f9c979;font-weight:800;text-decoration:none}.ssops-report-caveat{margin:15px 4px;color:#667085;font-size:12px}.ssops-report-presets{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.ssops-report-presets a{display:inline-flex;padding:8px 14px;border:1px solid #ccd8e7;background:#fff;color:#233a52;font-weight:800;font-size:12px;border-radius:999px;text-decoration:none}.ssops-report-presets a:hover{border-color:#2f80ed;color:#2f80ed}.ssops-report-filters{margin-top:0;padding:20px;border-radius:16px;box-shadow:0 5px 18px rgba(22,46,80,.04)}.ssops-report-filters input,.ssops-report-filters select{min-height:40px;border-radius:8px}.ssops-reports .ssops-export-cta{padding:7px 14px;border-radius:10px;background:#eef5ff;border-color:#bed5f0;color:#1d5e99;font-weight:800}.ssops-report-grid{gap:15px}.ssops-report-card{min-height:143px;border:1px solid #dee7f0;border-radius:18px;border-top:0;box-shadow:0 8px 24px rgba(10,30,50,.05)}.ssops-report-card:nth-child(4n+1){border-left:5px solid #2f80ed}.ssops-report-card:nth-child(4n+2){border-left:5px solid #13b89a}.ssops-report-card:nth-child(4n+3){border-left:5px solid #f5ad3d}.ssops-report-card:nth-child(4n){border-left:5px solid #a28def}.ssops-report-card strong{font-size:clamp(23px,2.8vw,35px)}.ssops-report-insights{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.ssops-report-visual{background:#fff;border:1px solid #dce6f1;border-radius:18px;padding:22px;min-width:0}.ssops-report-section-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:22px}.ssops-report-section-head span,.ssops-table-heading span{font-size:10px;color:#4b79a4;font-weight:900;letter-spacing:1.7px}.ssops-report-section-head h2,.ssops-table-heading h2{font-size:21px;margin:4px 0 0;color:#142236}.ssops-report-section-head p{font-size:11px;color:#8a95a7;text-align:right}.ssops-trend-row,.ssops-consumption-row{display:grid;grid-template-columns:86px 1fr 48px;align-items:center;gap:10px;margin:12px 0}.ssops-consumption-row{grid-template-columns:135px 1fr 54px}.ssops-trend-label,.ssops-consumption-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#526071}.ssops-trend-row strong,.ssops-consumption-row strong{font-size:12px;color:#25354a;text-align:right}.ssops-trend-track,.ssops-consumption-track{height:11px;border-radius:100px;background:#edf1f7;overflow:hidden}.ssops-trend-track>span,.ssops-consumption-track>span{height:100%;border-radius:100px;display:block;background:linear-gradient(90deg,#4b8af3,#63d1ac)}.ssops-consumption-track>span{background:linear-gradient(90deg,#f8bf53,#f18461)}.ssops-report-empty{color:#718096;font-size:12px}.ssops-table-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-top:34px}.ssops-table-heading label{display:grid;gap:5px;font-size:11px;color:#667085;font-weight:800}.ssops-report-customer-search{padding:9px 12px;border:1px solid #cbd8e7;border-radius:10px;min-width:225px}.ssops-reports .ssops-report-table-wrap{border-radius:16px;box-shadow:0 4px 16px rgba(10,30,50,.03)}.ssops-reports .ssops-report-table thead th{background:#edf3fa;color:#45607a;font-size:11px;letter-spacing:.4px}.ssops-reports .ssops-okr-card{border-radius:16px}
@media(max-width:1100px){.ssops-report-insights{grid-template-columns:1fr}}@media(max-width:700px){.ssops-report-hero{display:block;padding:23px}.ssops-report-hero-aside{text-align:left;margin-top:18px}.ssops-reports{padding:10px}.ssops-table-heading{display:block}.ssops-report-customer-search{width:100%;min-width:0}.ssops-report-section-head{display:block}.ssops-report-section-head p{text-align:left}.ssops-report-insights{gap:12px}}
.ssops-login-version{color:#718198;font-size:11px;font-weight:800;margin:0 0 15px}

/* v0.1.10: touch-first mobile scheduling + instant task dropdown */
.ssops-mobile-task-chooser{display:none}
.ssops-mobile-date-parts{display:none}
@media(max-width:1024px){
  .ssops-app .ssops-date-native{display:none!important}
  .ssops-app .ssops-mobile-date-parts{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr) minmax(0,.95fr);gap:6px;min-width:0;width:100%;margin-top:6px}
  .ssops-app .ssops-mobile-date-parts select{display:block!important;min-width:0;width:100%!important;min-height:46px!important;padding:9px 5px!important;border:1px solid #cbd5e1!important;border-radius:10px!important;background:#fff!important;color:#17212f!important;font-size:16px!important;line-height:1.3!important;-webkit-appearance:menulist!important;appearance:auto!important}
  .ssops-app .ssops-jump-form label{display:block;min-width:0}
  .ssops-app .ssops-plan-controls{flex-wrap:wrap;align-items:stretch}
  .ssops-app .ssops-jump-form{width:100%;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
  .ssops-app .ssops-jump-form>button{min-height:46px}
  .ssops-app .ssops-schedule-form label,.ssops-app .ssops-move-panel label{min-width:0}
  .ssops-app .ssops-mobile-task-chooser{display:grid;gap:7px;margin:11px 0;padding:10px;border-radius:12px;background:var(--accent-soft);border:1px solid var(--line)}
  .ssops-app .ssops-mobile-task-label{font-size:12px;font-weight:800;color:#283548}
  .ssops-app .ssops-mobile-task-select{display:block;width:100%;min-height:48px;border:1px solid #bbc8d8;border-radius:10px;background:#fff;color:#17212f;font-size:16px;padding:9px 12px}
  .ssops-app .ssops-mobile-task-feedback{font-size:11px;color:#51647a;min-height:1em}
  .ssops-app .ssops-mobile-custom-task{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}
  .ssops-app .ssops-mobile-custom-task[hidden]{display:none}
  .ssops-app .ssops-mobile-custom-task input{min-height:44px;min-width:0;width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:8px;font-size:16px;background:#fff;color:#17212f}
  .ssops-app .ssops-mobile-custom-add{min-height:44px;padding:8px 14px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:800}
  .ssops-app .ssops-task-palette{display:none!important}
}
@media(max-width:600px){
  .ssops-app .ssops-schedule-panel{padding:16px}
  .ssops-app .ssops-schedule-form{grid-template-columns:1fr}
  .ssops-app .ssops-move-panel{grid-template-columns:1fr}
  .ssops-app .ssops-move-panel .ssops-confirm-move{min-height:46px}
}

@media(max-width:1024px){.ssops-app .ssops-workspace{grid-template-columns:minmax(0,1fr)}.ssops-app .ssops-mobile-order-controls{display:inline-flex}.ssops-app .ssops-tile-drag-handle{display:none}}


/* v0.1.11: read-only employee reporting on the portal, no wp-admin access */
.ssops-employee-report-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 0 20px}
.ssops-employee-report-toolbar strong,.ssops-employee-report-toolbar small{display:block}
.ssops-employee-report-toolbar strong{font-size:17px}
.ssops-employee-report-toolbar small{color:#667085;margin-top:5px}
.ssops-employee-periods{display:flex;gap:7px;flex-wrap:wrap}
.ssops-employee-periods a{padding:9px 12px;border:1px solid #d7dde5;border-radius:11px;background:#fff;color:#344054;text-decoration:none;font-weight:700;font-size:12px}
.ssops-employee-periods a.is-active{background:#172b48;color:#fff;border-color:#172b48}
.ssops-employee-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ssops-employee-kpi{display:flex;flex-direction:column;justify-content:center;min-height:124px;padding:17px 18px;background:#fff;border:1px solid #d7dde5;border-radius:16px;box-shadow:0 4px 18px rgba(17,24,39,.05)}
.ssops-employee-kpi span{font-size:12px;color:#667085;font-weight:700}
.ssops-employee-kpi strong{margin:10px 0;font-size:clamp(22px,3vw,32px);line-height:1.1;color:#172b48}
.ssops-employee-kpi small{font-size:11px;color:#667085}
.ssops-employee-report-section{margin-top:22px;border:1px solid #d7dde5;border-radius:16px;background:#fff;overflow:hidden}
.ssops-employee-report-section-head{padding:18px 20px 14px}
.ssops-employee-report-section-head h2{margin:0;font-size:21px;color:#172b48}
.ssops-employee-report-section-head p{margin:6px 0 0;font-size:12px;color:#667085}
.ssops-employee-table-scroll{overflow-x:auto}
.ssops-employee-table{width:100%;border-collapse:collapse;font-size:12px;min-width:570px;color:#344054}
.ssops-employee-table th{padding:12px 15px;border-bottom:1px solid #d7dde5;background:#f7f9fc;font-size:11px;color:#667085;text-align:left}
.ssops-employee-table td{padding:12px 15px;border-bottom:1px solid #edf0f5}
.ssops-employee-table tbody tr:last-child td{border-bottom:0}
.ssops-employee-report-footnote{margin:18px 0;color:#667085;font-size:11px;line-height:1.55}
.ssops-myreport-warning{padding:12px 14px;border:1px solid #d39b17;border-radius:10px;background:#fff5dd;color:#78520c}
@media(max-width:750px){.ssops-employee-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssops-employee-kpi{min-height:110px;padding:14px}.ssops-employee-report-toolbar{align-items:stretch}.ssops-employee-report-toolbar strong{font-size:15px}}

/* v0.1.12: native service report sharing, deliberately scoped to route tiles */
.ssops-app .ssops-visit-record-container{flex-wrap:wrap}
.ssops-app .ssops-quick-share{align-self:flex-start;border:1px solid #bdd3ee;border-radius:10px;background:#eef5ff;color:#275b90;min-height:42px;padding:0 10px;font-size:11px;font-weight:850;cursor:pointer}
.ssops-app .ssops-quick-share:hover{background:#dbeafd}
.ssops-app .ssops-share-panel[hidden],.ssops-app .ssops-share-after[hidden]{display:none!important}
.ssops-app .ssops-share-panel{display:grid;gap:10px;margin-top:14px;padding:14px;border:1px solid #c6d8ed;background:#f3f8fe;border-radius:14px;color:#162a42;min-width:0}
.ssops-app .ssops-share-panel-title{font-size:15px;font-weight:900;letter-spacing:-.2px}
.ssops-app .ssops-share-panel-desc{font-size:11px;line-height:1.5;color:#4a607c}
.ssops-app .ssops-share-customer-phone{font-size:11px;color:#425774;display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.ssops-app .ssops-share-customer-phone button{border:1px solid #c6d8ed;border-radius:7px;background:#fff;padding:4px 8px;color:#2c5d8b;font-weight:800;cursor:pointer}
.ssops-app .ssops-share-notes-choice{display:flex!important;align-items:flex-start;gap:8px!important;font-size:11px;color:#55687f;font-weight:550}
.ssops-app .ssops-share-notes-choice input{margin-top:3px;flex:0 0 auto;width:15px;height:15px}
.ssops-app .ssops-share-report-btn{border:0;border-radius:12px;background:#1d67a3;color:white;padding:12px 14px;font-size:13px;font-weight:900;cursor:pointer;min-height:44px}
.ssops-app .ssops-share-after{display:grid;gap:8px;border-top:1px solid #d6e1ec;padding-top:11px}
.ssops-app .ssops-share-after p{margin:0;color:#41536d;font-size:11px}
.ssops-app .ssops-share-recipient{border:1px solid #c6d8ed;border-radius:9px;background:#fff;padding:10px 12px;font-size:14px;color:#172b42;width:100%}
.ssops-app .ssops-share-status-actions{display:flex;flex-wrap:wrap;gap:7px}
.ssops-app .ssops-share-mark-sent,.ssops-app .ssops-share-mark-unsent{border:1px solid #b5cadd;border-radius:9px;background:#fff;padding:10px 13px;color:#233e5c;font-size:12px;font-weight:800;cursor:pointer}
.ssops-app .ssops-share-mark-sent{background:#e7f7ed;color:#236e40;border-color:#9fcab0}
.ssops-app .ssops-share-feedback{display:block;min-height:1em;line-height:1.4;color:#34618f;font-size:11px}
.ssops-app .ssops-share-fallback{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.ssops-app .ssops-share-fallback a,.ssops-app .ssops-share-fallback button{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #b9cde1;border-radius:8px;padding:8px 10px;color:#265e90;text-decoration:none;font-weight:700;font-size:11px;cursor:pointer}
.ssops-app .ssops-share-fallback textarea{width:100%;font-size:11px;border:1px solid #bdcee0;background:#fff;color:#172b42;border-radius:8px;padding:9px;resize:vertical}
@media(max-width:700px){.ssops-app .ssops-visit-record-container{gap:7px}.ssops-app .ssops-quick-share{min-height:42px;padding:0 9px;font-size:10px}.ssops-app .ssops-share-panel{padding:12px}}

/* v0.1.12.1: visible signed-in identity, quick service-day navigation, mobile diagnostics */
.ssops-session-note{margin-top:8px;font-size:11px;color:#5b6576}
.ssops-session-note strong{color:#173453}
.ssops-weekday-shortcuts{display:flex;align-items:stretch;flex-wrap:wrap;gap:7px;margin:2px 0 8px}
.ssops-weekday-heading{display:flex;align-items:center;color:#65758b;font-size:11px;font-weight:800;margin-right:5px}
.ssops-weekday-link{min-width:67px;display:flex;flex:1 1 64px;max-width:110px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid #cbd5e1;border-radius:11px;padding:9px 6px;color:#19334c!important;text-decoration:none!important;background:#fff}
.ssops-weekday-link strong{font-size:12px;font-weight:850}.ssops-weekday-link small{font-size:10px;color:#74839b}
.ssops-weekday-link.is-selected{border-color:var(--accent);background:var(--accent-soft)}
.ssops-weekday-refresh{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:11px;background:#f4f8fc;color:#153c61!important;font-size:11px;font-weight:800;text-decoration:none!important}
.ssops-route-scope{font-size:11px;color:#4d647e;margin:0 0 18px}
@media(max-width:700px){.ssops-weekday-heading{flex:1 1 100%}.ssops-weekday-link{min-width:calc((100% - 24px)/4);max-width:none;flex:1 1 18%}.ssops-weekday-refresh{flex:1 1 100%}}

.ssops-available-accounts{margin-top:16px;padding:14px;border:1px solid #d5e1ed;border-radius:14px;text-align:left;background:#fff}
.ssops-available-accounts summary{font-size:14px;font-weight:850;color:#1a354f;cursor:pointer}
.ssops-available-accounts>p{font-size:11px;color:#5b6b7f;margin:8px 0}
.ssops-available-account-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;max-height:320px;overflow:auto}
.ssops-available-account-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #dee7f1;border-radius:10px;background:#f9fbff;padding:10px 12px;font-size:12px;text-decoration:none!important;color:#234363!important}
.ssops-available-account-list a span{white-space:nowrap;color:#11699f;font-weight:850}
@media(max-width:600px){.ssops-available-account-list{grid-template-columns:1fr;max-height:350px}}

/* v0.1.12.2 - mobile route reliability and persistent customer directory */
.ssops-next-route-banner{padding:12px 16px;background:#ecf7ff;border:1px solid #a9d2ed;border-radius:12px;color:#214b6a;margin:4px 0 14px;font-size:13px;line-height:1.5}
.ssops-next-route-banner a{color:#075f9f;font-weight:800;margin-left:8px}
.ssops-assignment-alert{margin:12px 0;padding:16px;border-radius:13px;border:1px solid #ecbc78;background:#fff6e8;color:#764c11;line-height:1.55;font-size:13px}
.ssops-customer-directory{margin:12px 0 18px;border:1px solid #c8d9ea;background:#fff;border-radius:15px;box-shadow:0 3px 12px rgba(17,24,39,.03);overflow:hidden}
.ssops-customer-directory>summary{list-style:none;cursor:pointer;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 17px;color:#173651;font-weight:850;font-size:14px}
.ssops-customer-directory>summary::-webkit-details-marker{display:none}
.ssops-customer-directory>summary::before{content:'▸';font-size:17px;color:#e65c38;margin-right:8px}
.ssops-customer-directory[open]>summary::before{content:'▾'}
.ssops-customer-directory>summary span{flex:1}
.ssops-customer-directory>summary strong{font-size:11px;background:#eaf4fb;color:#265f89;border-radius:99px;padding:6px 9px}
.ssops-directory-body{padding:0 16px 16px}
.ssops-directory-body label{font-size:11px;color:#53667d;font-weight:750;display:block;margin:4px 0 7px}
.ssops-directory-body input{width:100%;min-height:45px;border:1px solid #b8cfe0;border-radius:10px;padding:10px 13px;background:#fff;color:#132f4d;font-size:16px}
.ssops-directory-list{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:340px;overflow:auto}
.ssops-directory-list a{border:1px solid #dde8f3;border-radius:10px;padding:11px 12px;text-decoration:none!important;background:#f9fbff;color:#17354d!important;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.ssops-directory-list a[hidden]{display:none!important}
.ssops-directory-list a em{font-style:normal;color:#bf4c25;font-weight:850;white-space:nowrap}
@media(max-width:700px){.ssops-directory-list{grid-template-columns:1fr}.ssops-customer-directory>summary{font-size:13px}}

/* v0.1.12.3 - Private customer report archive */
.ssops-app .ssops-share-notes-info{font-size:11px;color:#53657d;line-height:1.5;margin:0;padding:10px 12px;background:#edf3fa;border-radius:10px}
.ssops-app .ssops-saved-report-visit{display:grid;gap:7px;margin:12px 0;padding:11px 12px;background:#f7fafc;border:1px solid #d6e2ee;border-radius:12px}
.ssops-app .ssops-saved-report-visit>strong{font-size:12px;color:#172b42}
.ssops-app .ssops-saved-report-visit-list{display:flex;flex-wrap:wrap;gap:7px}
.ssops-app .ssops-saved-report-visit-list a,.ssops-app .ssops-saved-report-account-link{color:#176293;font-size:11px;font-weight:800;text-decoration:none}
.ssops-app .ssops-saved-report-visit-list a{background:#e9f3fb;border-radius:8px;padding:7px 10px}
.ssops-app .ssops-saved-report-visit-list a:hover,.ssops-app .ssops-saved-report-account-link:hover{text-decoration:underline}
.ssops-app .ssops-directory-reports-link{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;background:#eef6fc;border:1px solid #cce3f3;border-radius:10px;color:#175987;font-size:11px;font-weight:800;text-decoration:none}
.ssops-app .ssops-saved-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.ssops-app .ssops-saved-report-card{display:grid;gap:6px;background:white;border:1px solid #d9e4ed;border-radius:14px;padding:18px;color:#172b42;text-decoration:none;box-shadow:0 2px 9px rgba(23,43,66,.04)}
.ssops-app .ssops-saved-report-card:hover{border-color:#83b9dc;box-shadow:0 5px 18px rgba(23,43,66,.09)}
.ssops-app .ssops-saved-report-card>strong{font-size:17px}
.ssops-app .ssops-saved-report-card>small{font-size:11px;color:#627589}
.ssops-app .ssops-saved-report-icon{font-size:24px;color:#eb6b37}

.ssops-app .ssops-directory-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:6px}
.ssops-app .ssops-directory-entry[hidden]{display:none!important}
.ssops-app .ssops-directory-entry>.ssops-schedule-for-account{min-width:0}
.ssops-app .ssops-directory-entry>.ssops-directory-reports-link{display:inline-flex;justify-content:center;min-width:74px}

/* v0.1.13: interactive reporting & safe read-only drill-down */
.ssops-report-card-link,.ssops-employee-kpi.ssops-report-card-link{color:inherit!important;text-decoration:none!important;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.ssops-report-card-link:hover,.ssops-report-card-link:focus-visible{transform:translateY(-2px);border-color:#70a1d6!important;box-shadow:0 12px 26px rgba(23,62,104,.14);outline-offset:3px}
.ssops-drill-hint{font-size:11px!important;color:#2563a7!important;font-weight:800!important;font-style:normal!important}
.ssops-drill-text-link{font-weight:800;color:#24669a!important;text-decoration:none!important}
.ssops-drill-text-link:hover{text-decoration:underline!important}
.ssops-consumption-row>a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.ssops-drill-shell{max-width:1300px;margin:20px auto 30px;color:#1d2f45}
.ssops-drill-shell.ssops-app{max-width:1300px;padding:16px}
.ssops-drill-crumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:14px;font-size:12px;color:#6a7f99}
.ssops-drill-crumbs a{color:#286daa!important;text-decoration:none;font-weight:800}
.ssops-drill-hero{border-radius:19px;background:linear-gradient(120deg,#132b45,#244d71);color:white;padding:26px 28px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:18px}
.ssops-drill-hero h2{font-size:clamp(21px,3.8vw,30px);color:#fff!important;margin:7px 0}
.ssops-drill-hero p{margin:0;color:#d7e2ef;font-size:12px}
.ssops-drill-eyebrow{font-weight:900;letter-spacing:1.8px;font-size:10px;color:#f8c06f}
.ssops-drill-back{color:#1e639d;text-decoration:none;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:4px}
.ssops-drill-hero .ssops-drill-back{background:white;padding:11px 14px;border-radius:10px;white-space:nowrap}
.ssops-drill-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}
.ssops-drill-stat-grid>div{border:1px solid #dce5f0;border-radius:14px;padding:16px;background:white;min-width:0}
.ssops-drill-stat-grid small{display:block;color:#63748b;font-size:11px;margin-bottom:8px}
.ssops-drill-stat-grid strong{font-size:clamp(17px,2.5vw,24px);color:#19334c;word-break:break-word}
.ssops-drill-panel{padding:20px;margin:18px 0;background:#fff;border:1px solid #dbe5ed;border-radius:17px;box-shadow:0 4px 15px rgba(20,40,65,.04)}
.ssops-drill-panel h3{font-size:18px;color:#1b344e;margin:0 0 12px}
.ssops-drill-panel h4{font-size:13px;margin:16px 0 8px}
.ssops-drill-panel>p{font-size:12px;color:#64748b;line-height:1.6}
.ssops-drill-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px}
.ssops-drill-facts p{margin:5px 0;font-size:12px}.ssops-drill-facts b{display:inline-block;min-width:80px;color:#61748b}
.ssops-drill-notes{padding:12px;border-radius:10px;background:#f4f7fb;font-size:13px;line-height:1.6;color:#25374b}
.ssops-drill-task-list{display:grid;gap:8px}.ssops-drill-task{display:flex;gap:12px;align-items:flex-start;border:1px solid #edf0f4;border-radius:11px;padding:10px}
.ssops-drill-task b{display:block;font-size:12px}.ssops-drill-task small{display:block;color:#76849a;font-size:10px;margin:4px 0}
.ssops-drill-task p{font-size:12px;white-space:pre-wrap}.ssops-drill-task-dot{width:27px;height:27px;flex:0 0 27px;display:grid;place-items:center;border-radius:50%;background:#f1f5f9;color:#667}
.ssops-drill-task-dot.is-complete{background:#dcfce7;color:#16803c}
.ssops-drill-snapshots{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.ssops-drill-snapshots a{display:grid;gap:5px;padding:14px;border-radius:12px;border:1px solid #d9e6f3;background:#f8fbff;text-decoration:none;color:#266394}
.ssops-drill-snapshots a:hover{border-color:#5694c3;background:#eef7ff}.ssops-drill-snapshots a strong{font-size:12px}.ssops-drill-snapshots a small{font-size:10px;color:#7c8a9a}
.ssops-drill-snapshot-icon{font-size:25px;color:#f09a31}
.ssops-drill-table-wrap{overflow-x:auto}.ssops-drill-table{width:100%;border-collapse:collapse;min-width:650px}.ssops-drill-table th,.ssops-drill-table td{padding:11px 9px;border-bottom:1px solid #edf1f5;text-align:left;font-size:12px}.ssops-drill-table th{color:#61748b;background:#f2f6fb;font-size:10px;text-transform:uppercase;letter-spacing:.4px}.ssops-drill-table a{color:#216ba6;font-weight:800;text-decoration:none}
.ssops-drill-muted{color:#abb7c4}.ssops-drill-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:10px}.ssops-drill-photos img{width:100%;height:120px;object-fit:cover;border-radius:10px;border:1px solid #dbe3ee}
@media(max-width:700px){.ssops-drill-hero{padding:18px;align-items:flex-start;flex-direction:column}.ssops-drill-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssops-drill-facts{grid-template-columns:1fr}.ssops-drill-panel{padding:14px}.ssops-drill-hero .ssops-drill-back{width:100%;justify-content:center}}

.ssops-drill-chart-link{cursor:pointer;text-decoration:none;color:inherit!important;padding:5px;border-radius:9px}.ssops-drill-chart-link:hover{background:#f1f7fd}.ssops-drill-chart-link:focus-visible{outline:2px solid #438bd2;outline-offset:2px}

/* v0.1.14: cancel a one-time extra stop without deleting history. */
.ssops-cancel-extra{border:1px solid #d4a5a0!important;color:#a22b20!important;background:#fff8f7!important}
.ssops-cancel-extra:hover{background:#ffe9e7!important}

/* v0.1.15 dispatcher-editable service catalog */
.ssops-catalog-admin .ssops-catalog-grid{display:grid;grid-template-columns:minmax(280px,330px) minmax(0,1fr);gap:20px;align-items:start;max-width:1280px}
.ssops-catalog-admin .ssops-catalog-panel{background:#fff;border:1px solid #dde3ec;box-shadow:0 6px 24px rgba(18,29,51,.06);border-radius:14px;padding:22px}
.ssops-catalog-admin .ssops-catalog-panel h2{margin:0 0 16px}
.ssops-catalog-admin .ssops-catalog-form{display:flex;flex-direction:column;gap:14px}
.ssops-catalog-admin .ssops-catalog-form label,.ssops-catalog-admin .ssops-catalog-row label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#344054}
.ssops-catalog-admin input[type=text],.ssops-catalog-admin input[type=number]{width:100%;min-width:0;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:7px 9px;color:#172033}
.ssops-catalog-admin .ssops-catalog-row{display:grid;grid-template-columns:minmax(180px,1fr) 105px 70px 68px;gap:10px;align-items:end;border-top:1px solid #e5eaf2;padding:13px 0}
.ssops-catalog-admin .ssops-catalog-row.is-archived{opacity:.63;background:#f8fafc}
.ssops-catalog-admin .ssops-catalog-row .ssops-catalog-active{align-items:center;justify-content:center}
.ssops-catalog-admin .ssops-catalog-row input[type=checkbox]{margin:3px 0}
.ssops-catalog-admin .ssops-catalog-key{grid-column:1/-1;color:#64748b;font-size:11px;margin-top:-7px}
.ssops-catalog-admin .ssops-catalog-count{font-size:12px;background:#edf2fa;color:#344054;border-radius:15px;padding:4px 8px}
@media(max-width:950px){.ssops-catalog-admin .ssops-catalog-grid{grid-template-columns:1fr}}
@media(max-width:520px){.ssops-catalog-admin .ssops-catalog-row{grid-template-columns:minmax(0,1fr) 88px}.ssops-catalog-admin .ssops-catalog-row .ssops-catalog-active{align-items:flex-start}.ssops-catalog-admin .ssops-catalog-key{margin-top:0}}

/* v0.1.16: dispatcher bulk assignments */
.ssops-bulk-assign-panel{background:#fff;border:1px solid #dce4eb;border-radius:14px;padding:18px 20px;margin:20px 0;box-shadow:0 2px 10px rgba(18,46,68,.05)}
.ssops-bulk-assign-panel h2{margin:0 0 8px;font-size:21px;color:#172638}
.ssops-bulk-assign-panel h2 small{font-size:11px;font-weight:600;color:#65788d}
.ssops-bulk-assign-panel p{color:#59697a}
.ssops-bulk-assign-stats{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 16px}
.ssops-bulk-assign-stats span{padding:7px 10px;border-radius:8px;background:#f3f7fa;color:#314658;font-size:13px}
.ssops-bulk-assign-fields{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.ssops-bulk-assign-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650;color:#354a60}
.ssops-bulk-assign-fields select{min-width:210px;max-width:100%;height:38px}
.ssops-bulk-impact{font-weight:650;color:#1e5f85!important;margin:14px 0 6px}
@media(max-width:700px){.ssops-bulk-assign-fields{display:grid;grid-template-columns:1fr}.ssops-bulk-assign-fields select{width:100%;max-width:100%}}

/* 0.1.17: distinguish single-day moves from recurring weekday changes */
.ssops-move-panel select{width:100%;min-height:40px;border:1px solid #cbd5e1;background:#fff;color:#233249;border-radius:10px;padding:8px}
.ssops-move-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.ssops-move-panel label{min-width:0}
@media(max-width:800px){.ssops-move-panel{grid-template-columns:1fr}}

/* v0.1.18 · Chlorine testing / acid treatment, compact on desktop and mobile. */
.ssops-chemistry-panel{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:10px;background:#fff;border:1px solid #dde5ed;border-radius:12px}
.ssops-chemistry-check{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:9px;background:#f4f7fb;color:#273348;font-size:11px;font-weight:750;cursor:pointer;white-space:nowrap}
.ssops-chemistry-check input[type=checkbox]{width:17px;height:17px;min-width:17px;accent-color:#2c7fbc;cursor:pointer;margin:0}
.ssops-acid-reading{display:flex;align-items:center;gap:5px;border:0;padding:0;margin:0;min-width:0}
.ssops-acid-reading legend{float:left;margin:0 8px 0 0;padding:7px 0;font-size:11px;color:#273348;font-weight:800}
.ssops-acid-quantity{display:flex;align-items:center;gap:6px;color:#273348;font-size:11px;font-weight:800;margin-left:auto}
.ssops-acid-quantity small{color:#64748b;font-weight:550;font-size:10px}
.ssops-acid-added{max-width:76px;min-width:64px;min-height:36px;padding:6px 8px!important;border:1px solid #cad5e1!important;border-radius:9px!important;background:#fff!important;color:#17212f!important;text-align:center!important;font-size:15px!important;font-weight:800!important;font-variant-numeric:tabular-nums}
.ssops-chemistry-feedback{flex-basis:100%;font-size:10px;font-weight:650;color:#376e64;min-height:0}
.ssops-chemistry-feedback:empty{display:none}
@media(max-width:700px){.ssops-chemistry-panel{gap:7px;align-items:center}.ssops-acid-reading{flex-wrap:wrap}.ssops-acid-quantity{margin-left:0}.ssops-chemistry-check{padding:8px 9px}}

/* v0.1.19: pool testing and chemical counters share the same tile treatment. */
.ssops-chemical[data-chemical="acid_added_oz"] .ssops-chem-value,
.ssops-chemical[data-chemical="chlorine_ppm"] .ssops-chem-value {min-width:52px}
.ssops-chemical[data-chemical="chlorine_ppm"] .ssops-chemical-label small{white-space:normal}
.ssops-chemical[data-chemical="chlorine_ppm"] .ssops-chem-value{letter-spacing:-.02em}

/* 0.1.20: Frontend-only Dispatch workspace, no WordPress chrome */
.ssops-dispatch-app{max-width:1480px;margin:auto;padding:24px 22px 50px}
.ssops-dispatch-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.ssops-dispatch-heading h1{margin:0 0 5px;font-size:clamp(30px,4vw,42px);line-height:1.15}
.ssops-dispatch-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px;border-bottom:1px solid #d9e2ec;padding-bottom:18px}
.ssops-dispatch-tabs .is-active{background:#e8f8f6;border-color:#0ea5a4;color:#0d766e}
.ssops-dispatch-panel{overflow-x:auto;min-width:0}
.ssops-dispatch-panel .ssops-admin-wrap{margin:0;font-size:14px;color:#283547}
.ssops-dispatch-panel .ssops-admin-grid{grid-template-columns:minmax(300px,1fr) minmax(440px,1.45fr)}
.ssops-dispatch-panel .ssops-admin-panel{border-radius:14px;background:#fff}
.ssops-dispatch-panel .ssops-admin-wrap h1{font-size:clamp(23px,3vw,32px);line-height:1.2;margin:0 0 16px}
.ssops-dispatch-panel .ssops-admin-wrap input,.ssops-dispatch-panel .ssops-admin-wrap select,.ssops-dispatch-panel .ssops-admin-wrap textarea{padding:9px;border:1px solid #cbd5e1;border-radius:7px;max-width:100%;box-sizing:border-box;color:#27344a;background:white}
.ssops-dispatch-panel .ssops-admin-wrap input[type=checkbox]{width:auto;padding:0}
.ssops-dispatch-panel .ssops-admin-wrap .button{display:inline-block;padding:8px 11px;border-radius:8px;border:1px solid #cad7e2;background:#fff;color:#15517a;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer;white-space:normal}
.ssops-dispatch-panel .ssops-admin-wrap .button-primary{background:#0f9797;border-color:#0f9797;color:white}
.ssops-dispatch-panel .ssops-admin-wrap .widefat{border-collapse:collapse;width:100%;background:white;min-width:570px;font-size:12px}
.ssops-dispatch-panel .ssops-admin-wrap .widefat th,.ssops-dispatch-panel .ssops-admin-wrap .widefat td{padding:10px;border-bottom:1px solid #e3e9ef;text-align:left}
.ssops-dispatch-panel .ssops-admin-wrap .widefat th{background:#eef3f8}
.ssops-dispatch-panel .notice{padding:10px 15px;background:#eef7f4;border-left:4px solid #10a58b;margin-bottom:15px}
@media(max-width:1000px){.ssops-dispatch-panel .ssops-admin-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ssops-dispatch-app{padding:12px 8px 35px}.ssops-dispatch-panel .ssops-admin-panel{padding:12px}.ssops-dispatch-tabs{gap:6px}.ssops-dispatch-tabs a{font-size:11px;padding:9px}.ssops-dispatch-panel .ssops-form-grid{grid-template-columns:1fr}.ssops-dispatch-panel .ssops-full{grid-column:auto}}

/* v0.1.21: visible pH state; no selection = Neutral. */
.ssops-ph-state{display:inline-flex;align-items:center;padding:7px 10px;border-radius:9px;background:#eaf5f1;color:#246b59;font-size:11px;font-weight:800;white-space:nowrap}

/* v0.1.24 — review the complete customer report before native sharing */
.ssops-app .ssops-report-proof[hidden],.ssops-report-review[hidden]{display:none!important}
.ssops-app .ssops-report-proof{flex:1 1 100%;min-width:0;max-width:100%;margin-top:6px}
.ssops-app .ssops-report-proof-open{display:flex;align-items:center;gap:12px;width:100%;max-width:100%;min-height:100px;padding:9px 12px;border:1px solid #8fbac0;border-radius:13px;background:linear-gradient(105deg,#eefaf9,#f2f7fb);color:#15364b;cursor:pointer;text-align:left}
.ssops-app .ssops-report-proof-open:focus-visible{outline:3px solid #12a5a1;outline-offset:3px}
.ssops-app .ssops-report-proof-image{flex:0 0 60px;width:60px;height:86px;object-fit:contain;background:#142936;border-radius:7px;box-shadow:0 2px 7px #182b3d38}
.ssops-app .ssops-report-proof-copy{min-width:0;flex:1;display:grid;gap:5px}
.ssops-app .ssops-report-proof-copy strong{font-size:13px;font-weight:850;line-height:1.25;color:#123c48}
.ssops-app .ssops-report-proof-copy small{font-size:11px;color:#586d76;line-height:1.4}
.ssops-report-review{position:fixed!important;inset:0!important;z-index:2147482000!important;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:#1b3143}
.ssops-report-review-scrim{position:absolute;inset:0;background:rgba(7,20,31,.86);backdrop-filter:blur(6px)}
.ssops-report-review-shell{position:relative;width:min(1050px,100%);max-height:100%;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:#f5f8fb;box-shadow:0 18px 75px rgba(0,0,0,.45)}
.ssops-report-review-head{background:#132c3c;color:white;padding:17px 20px;display:flex;gap:15px;align-items:flex-start;justify-content:space-between}
.ssops-report-review-head h2{font-family:inherit;font-size:23px;line-height:1.15;color:white!important;margin:4px 0 5px!important;font-weight:850}
.ssops-report-review-head p{margin:0;font-size:12px;line-height:1.4;color:#c0d7e0}
.ssops-report-review-eyebrow{color:#69d0ca;font-size:10px;letter-spacing:1.3px;font-weight:900}
.ssops-report-review-close{flex:0 0 38px;border:1px solid #6e8792;border-radius:50%;background:#244354;color:#fff;font-size:28px;width:38px;height:38px;display:grid;place-items:center;cursor:pointer;line-height:1}
.ssops-report-review-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;padding:18px}
.ssops-report-review-photo{border-radius:13px;background:#c6d7e0;min-width:0;display:flex;align-items:flex-start;justify-content:center;padding:10px}
.ssops-report-review-image{display:block;width:auto;max-width:100%;height:auto;max-height:none;object-fit:contain;border-radius:5px;box-shadow:0 3px 20px #162a3d33}
.ssops-report-review-facts{min-width:0;align-self:start;padding:16px;border:1px solid #d3e1e9;border-radius:13px;background:white}
.ssops-report-review-facts h3{font-family:inherit;margin:0 0 12px;color:#14394b;font-size:17px}
.ssops-report-review-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ssops-report-review-fact{display:grid;gap:4px;padding:10px;border-radius:10px;background:#edf5f7;min-width:0}
.ssops-report-review-fact span{font-size:10px;color:#55707b;font-weight:750}
.ssops-report-review-fact strong{font-size:14px;color:#172f3e;overflow-wrap:anywhere}
.ssops-report-review-work,.ssops-report-review-notes{margin-top:16px;padding-top:14px;border-top:1px solid #e2ebee}
.ssops-report-review-work h4,.ssops-report-review-notes h4{font-size:13px;margin:0 0 8px;color:#203e4f}
.ssops-report-review-work ul{padding-left:19px;margin:0}.ssops-report-review-work li{font-size:13px;margin:4px 0}
.ssops-report-review-notes p{font-size:13px;line-height:1.5;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ssops-report-review-footer{background:#fff;border-top:1px solid #cbdce5;padding:13px 16px;display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.ssops-report-review-footer button{border:1px solid #b9cbd6;border-radius:10px;padding:12px 14px;font-size:13px;font-weight:800;cursor:pointer;background:#fff;color:#224355;min-height:44px}
.ssops-report-review-footer .ssops-report-review-send{background:#0b8f88;border-color:#0b8f88;color:#fff}
.ssops-report-review-footer button:focus-visible{outline:3px solid #eab35c;outline-offset:2px}
.ssops-report-review-footer button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){
.ssops-report-review{padding:max(4px,env(safe-area-inset-top)) 4px max(4px,env(safe-area-inset-bottom))}
.ssops-report-review-shell{border-radius:13px;height:100%}
.ssops-report-review-head{padding:13px 15px}.ssops-report-review-head h2{font-size:18px}.ssops-report-review-head p{font-size:11px}
.ssops-report-review-scroll{display:block;padding:9px}.ssops-report-review-photo{padding:6px}.ssops-report-review-image{width:100%;max-width:430px;margin:auto}
.ssops-report-review-facts{margin-top:10px;padding:12px}
.ssops-report-review-footer{padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ssops-report-review-footer .ssops-report-review-send{grid-column:1/-1;grid-row:1}
.ssops-report-review-footer button{font-size:12px;padding:10px 7px}
}

/* v0.1.25 independent operational stops */
.ssops-ops-toggle{width:100%;border:1px solid #cfa35c;border-radius:14px;padding:14px 16px;background:#fff8e9;color:#75531a;font-weight:800;cursor:pointer;margin-top:10px}
.ssops-ops-create-panel{border:1px solid #e7d4af;border-radius:16px;padding:18px;background:#fffdf9;margin:10px 0 20px}
.ssops-ops-create-panel[hidden]{display:none}
.ssops-ops-create-panel h2{font-size:20px;margin:0 0 12px;color:#1e293b}
.ssops-ops-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ssops-ops-form label,.ssops-ops-detail label{display:flex;flex-direction:column;gap:4px;color:#344054;font-size:12px;font-weight:700}
.ssops-ops-form input,.ssops-ops-form select,.ssops-ops-form textarea,.ssops-ops-detail input,.ssops-ops-detail select,.ssops-ops-detail textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;background:#fff;border-radius:10px;padding:10px;color:#17212f;font:inherit;font-size:14px}
.ssops-ops-form .ssops-ops-wide{grid-column:1/-1}
.ssops-ops-submit,.ssops-ops-save,.ssops-ops-add-item,.ssops-ops-action,.ssops-ops-take-photo{padding:10px 13px;border:1px solid #cf9a43;border-radius:10px;background:#fff7e6;color:#624516;font-weight:800;cursor:pointer}
.ssops-ops-submit{background:#94651f;color:#fff}
.ssops-ops-stop{border-top:6px solid #dba33e!important;display:block;background:#fffdf9}
.ssops-ops-kind{font-size:10px;letter-spacing:.6px;font-weight:900;color:#996b25}
.ssops-ops-stop .ssops-stop-head{padding:15px 16px 6px}
.ssops-ops-stop h3{font-size:21px;margin:12px 0 4px;color:#18263a}
.ssops-ops-meta,.ssops-ops-description,.ssops-ops-location{font-size:12px;color:#5a6679;margin:7px 0}
.ssops-ops-location a{color:#0b77ab}
.ssops-ops-body{padding:12px 16px 16px}
.ssops-ops-checklist-head{display:flex;justify-content:space-between;align-items:center;gap:7px;margin-bottom:10px;font-size:12px}
.ssops-ops-checklist-head small{color:#64748b}
.ssops-ops-checklist{display:grid;gap:8px}
.ssops-ops-check-row{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:9px 10px;border:1px solid #e1e7ed;border-radius:10px;background:#fff}
.ssops-ops-item{display:flex;gap:9px;align-items:center;min-width:0;font-size:12px;font-weight:600;color:#263649;flex:1}
.ssops-ops-item input{width:19px;height:19px;flex:0 0 auto;accent-color:#15986c}
.ssops-ops-item input:checked+span{text-decoration:line-through;color:#7b8997}
.ssops-ops-remove-item{border:none;background:transparent;color:#b64747;font-size:20px;cursor:pointer}
.ssops-ops-add-row{display:flex;gap:6px;margin:10px 0}
.ssops-ops-add-row input{min-width:0;flex:1;border:1px solid #cbd5e1;border-radius:9px;padding:10px;background:white;font-size:13px}
.ssops-ops-detail{border-top:1px dashed #d5dbe5;margin:10px 0;padding-top:11px}
.ssops-ops-detail summary{color:#965f1f;font-size:12px;font-weight:800;cursor:pointer;padding:5px 0}
.ssops-ops-detail label{margin:10px 0}
.ssops-ops-photo-area{display:grid;gap:9px;margin:14px 0;padding:12px;border:1px solid #e1e7ed;border-radius:12px;background:white;font-size:12px}
.ssops-ops-photos{display:flex;gap:6px;flex-wrap:wrap}
.ssops-ops-photos img{width:76px;height:76px;object-fit:cover;border-radius:8px}
.ssops-ops-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.ssops-ops-cancel{background:#fff1f1;border-color:#f3b1b1;color:#b33d3d}
.ssops-ops-completed{font-size:13px;font-weight:900;color:#087752}
.ssops-ops-feedback{display:block;min-height:16px;color:#64748b;margin-top:8px}
@media(max-width:650px){.ssops-ops-form{grid-template-columns:1fr}.ssops-ops-stop h3{font-size:18px}}

.ssops-ops-report{margin:20px 0;border:1px solid #e8d6b7;border-radius:18px;padding:20px;background:#fffcf6}
.ssops-ops-report-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.ssops-ops-report-totals>div{background:white;border:1px solid #e7e1d6;border-radius:12px;padding:13px;display:grid;gap:6px}
.ssops-ops-report-totals small{color:#667085;font-size:11px}.ssops-ops-report-totals strong{font-size:20px;color:#273447}
@media(max-width:650px){.ssops-ops-report-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.1.26: sticky 15-minute customer service timer. Operations stops are excluded. */
.ssops-service-timer{position:sticky;top:0;z-index:100;padding:12px 14px;margin:0 0 20px;border:1px solid #86cfad;border-radius:0 0 16px 16px;background:rgba(238,252,244,.97);box-shadow:0 6px 20px rgba(13,82,56,.13);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.ssops-service-timer[hidden]{display:none!important}
.ssops-timer-heading,.ssops-timer-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ssops-timer-customer{font-size:13px;line-height:1.3;color:#155b3b;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ssops-timer-clock{font-size:17px;line-height:1.15;font-variant-numeric:tabular-nums;color:#115b35;white-space:nowrap}
.ssops-timer-track{width:100%;height:15px;overflow:hidden;border-radius:999px;background:#cee6d9;margin:10px 0 7px;box-shadow:inset 0 1px 3px #799f8b40}
.ssops-timer-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#0aa965,#23d06d);transition:width .35s linear}
.ssops-timer-footer{font-size:11px;font-weight:700;color:#347458}
.ssops-timer-ready{border-color:#15934f;background:rgba(223,255,234,.97)}
.ssops-timer-ready .ssops-timer-track{background:#b8e9c8}
.ssops-timer-ready .ssops-timer-status,.ssops-timer-ready .ssops-timer-remaining{color:#09642e;font-weight:900}
.ssops-stop[data-status="in_progress"] .ssops-complete:disabled{opacity:.6;cursor:not-allowed}
.ssops-view-timer{background:#f2fcf5!important;border-color:#a4dcb6!important;color:#14693c!important}
.ssops-view-timer[aria-pressed="true"]{box-shadow:inset 0 0 0 1px #15934f}
@media(max-width:700px){.ssops-service-timer{padding:10px 12px;margin:0 0 16px;border-radius:0 0 13px 13px}.ssops-timer-customer{font-size:12px}.ssops-timer-clock{font-size:15px}.ssops-timer-track{height:17px}}

/* v0.1.27: accessible recovery action if a long-idle iPhone session expires. */
.ssops-timer-reconnect{display:inline-flex;align-items:center;white-space:nowrap;background:#fff;border-radius:9px;border:1px solid #97d6b2;color:#12663b;padding:7px 10px;font-weight:800;font-size:12px;text-decoration:none}
.ssops-timer-reconnect[hidden]{display:none}
.ssops-action.ssops-awaiting-minimum{opacity:.82}
