.surveyor { --sf-bg:#10181d; --sf-panel:#17232b; --sf-ink:#edf5f5; --sf-muted:#a9bdc5; --sf-line:#31434c; --sf-accent:#67dbd0; --sf-accent-ink:#052e2b; color:var(--sf-ink); background:var(--sf-bg); padding:24px; border:1px solid var(--sf-line); border-radius:24px; font-family:Avenir,system-ui,sans-serif; line-height:1.5; }
.surveyor[data-mode="light"] { --sf-bg:#f7faf9; --sf-panel:#fff; --sf-ink:#172e35; --sf-muted:#526a72; --sf-line:#ccdcd9; --sf-accent:#006c63; --sf-accent-ink:#fff; color-scheme:light; }
.surveyor * { box-sizing:border-box; }
.surveyor [hidden] { display:none!important; }
.surveyor a { color:inherit; text-decoration:none; }
.surveyor button,.surveyor input,.surveyor textarea,.surveyor select { font:inherit; }
.surveyor button,.surveyor summary,.surveyor a { -webkit-tap-highlight-color:transparent; }
.surveyor button { cursor:pointer; }
.surveyor :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid var(--sf-accent); outline-offset:3px; }
.surveyor button:disabled { opacity:.55; cursor:wait; }
.surveyor svg { width:23px; height:23px; flex:none; }
.sf-toolbar,.sf-toolbar>div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.sf-wordmark { font-size:20px; letter-spacing:.16em; font-weight:800; }.sf-wordmark small { font-size:10px; color:var(--sf-muted); letter-spacing:0; }
.sf-icon-button,.sf-language summary { width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--sf-line); border-radius:13px; background:var(--sf-panel); color:var(--sf-ink); cursor:pointer; }
.sf-language { position:relative; }.sf-language summary { list-style:none; }.sf-language summary::-webkit-details-marker { display:none; }.sf-language>div { position:absolute; right:0; top:50px; z-index:8; width:185px; padding:8px; border:1px solid var(--sf-line); border-radius:15px; background:var(--sf-panel); box-shadow:0 10px 30px #0004; }.sf-language button { color:var(--sf-ink); background:none; border:0; width:100%; min-height:44px; text-align:left; padding:8px; }
.sf-practice { margin-top:20px; padding:12px 15px; border:1px solid var(--sf-line); border-radius:12px; font-size:12px; }.sf-practice strong,.sf-practice span { display:block; }.sf-practice span { color:var(--sf-muted); margin-top:3px; }
.sf-network { padding:12px 0; font-size:12px; color:var(--sf-accent); font-weight:700; }
.sf-tabs { display:flex; gap:6px; border-bottom:1px solid var(--sf-line); padding:0 0 10px; }.sf-tabs a { padding:10px 14px; border-radius:10px; font-size:13px; font-weight:650; min-height:44px; }.sf-tabs a.selected { color:var(--sf-accent); background:var(--sf-panel); }
.sf-heading { margin:30px 0 23px; }.sf-heading h1 { font-size:clamp(27px,5vw,38px); font-weight:650; letter-spacing:-.04em; overflow-wrap:anywhere; }.sf-heading p { margin:9px 0; color:var(--sf-muted); font-size:14px; }.sf-heading>p:first-child { font-size:12px; letter-spacing:.04em; }
.sf-heading a { text-decoration:underline; }.sf-actions { display:flex; flex-wrap:wrap; gap:10px; }.sf-primary,.sf-secondary { border:1px solid var(--sf-line); padding:13px 18px; min-height:50px; border-radius:13px; display:inline-flex; align-items:center; justify-content:center; gap:10px; font-weight:700; font-size:14px; text-align:center; }.surveyor .sf-primary { color:var(--sf-accent-ink); background:var(--sf-accent); border-color:var(--sf-accent); }.sf-secondary { background:var(--sf-panel); color:var(--sf-ink); }.sf-main-actions>* { flex:1; }
.sf-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:24px 0; }.sf-stats>div { border:1px solid var(--sf-line); background:var(--sf-panel); padding:17px; border-radius:14px; }.sf-stats strong { display:block; font-size:27px; font-weight:600; }.sf-stats span { display:block; font-size:11px; color:var(--sf-muted); }
.sf-empty { text-align:center; padding:40px 20px; border:1px dashed var(--sf-line); border-radius:16px; }.sf-empty>svg { color:var(--sf-accent); width:38px; height:38px; }.surveyor h2 { font-size:17px; letter-spacing:-.02em; }.sf-empty p,.sf-section>p,.sf-assignment p { color:var(--sf-muted); font-size:14px; }
.sf-section { margin-top:28px; padding-top:22px; border-top:1px solid var(--sf-line); }.sf-section h2 { margin:0 0 16px; }.sf-section h2 small { font-size:12px; font-weight:400; color:var(--sf-muted); }
.sf-record { display:grid; grid-template-columns:44px 1fr 20px; gap:13px; align-items:center; padding:15px 0; border-bottom:1px solid var(--sf-line); }.sf-record>span:nth-child(2) { min-width:0; }.sf-record strong { display:block; font-size:15px; overflow-wrap:anywhere; }.sf-record small { display:block; font-size:12px; color:var(--sf-muted); }.sf-record>svg { width:18px; }.sf-entity-icon { display:grid; place-items:center; width:44px; height:44px; background:var(--sf-panel); color:var(--sf-accent); border-radius:13px; }
.sf-assignment { padding:17px; margin-top:28px; background:var(--sf-panel); border-radius:12px; font-size:13px; }.sf-assignment p { margin-bottom:0; }.sf-resume { display:flex; justify-content:space-between; margin:12px 0; padding:16px; border:1px solid var(--sf-accent); border-radius:13px; }
.sf-field { display:grid; gap:8px; margin:18px 0; font-size:14px; }.sf-field>span { font-weight:650; }.sf-field small { font-size:12px; color:var(--sf-muted); }.sf-field :is(input,textarea,select),.sf-search { width:100%; min-height:50px; padding:12px 14px; border:1px solid var(--sf-line); border-radius:11px; background:var(--sf-panel); color:var(--sf-ink); }.sf-field textarea { min-height:95px; resize:vertical; }
.sf-types { border:0; padding:0; display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }.sf-types legend { padding:0 0 12px; font-size:14px; font-weight:650; }.sf-types label { position:relative; cursor:pointer; }.sf-types input { position:absolute; opacity:0; width:1px; height:1px; }.sf-types label>span { display:flex; gap:8px; align-items:center; padding:11px 13px; border:1px solid var(--sf-line); background:var(--sf-panel); border-radius:12px; font-size:13px; min-height:46px; }.sf-types input:checked+span { border-color:var(--sf-accent); color:var(--sf-accent); }.sf-types input:focus-visible+span { outline:3px solid var(--sf-accent); outline-offset:2px; }.sf-types svg { width:18px; }
.sf-gps { display:grid; gap:10px; }.sf-gps>div { font-size:12px; color:var(--sf-muted); }.sf-check { display:flex; align-items:flex-start; gap:12px; padding:15px; margin:10px 0; border:1px solid var(--sf-line); border-radius:12px; background:var(--sf-panel); font-size:14px; cursor:pointer; }.sf-check input { flex:none; width:22px; height:22px; accent-color:var(--sf-accent); margin:0; }.sf-form-actions { display:grid; gap:10px; margin-top:28px; }.sf-form-actions>span { color:var(--sf-muted); font-size:12px; min-height:18px; }
.sf-photo-input { position:relative; display:flex; align-items:center; gap:12px; padding:20px; border:1px dashed var(--sf-line); border-radius:12px; cursor:pointer; }.sf-photo-input input { position:absolute; inset:0; opacity:0; width:100%; cursor:pointer; }.sf-photo-input:focus-within { outline:3px solid var(--sf-accent); }.sf-photo { display:block; max-width:100%; max-height:300px; margin:15px auto; border-radius:12px; object-fit:contain; }.sf-text { min-height:44px; padding:8px; border:0; background:transparent; color:var(--sf-accent); }
.sf-error,.sf-warning { margin:16px 0; padding:16px; border:1px solid #bf892e; border-radius:12px; color:var(--sf-ink); background:var(--sf-panel); font-size:14px; }.sf-error { border-color:#e18378; }
.sf-event { display:grid; grid-template-columns:12px 1fr; gap:14px; margin:18px 0; }.sf-event-dot { width:9px; height:9px; background:var(--sf-accent); border-radius:50%; margin-top:8px; }.sf-event p { margin:6px 0; font-size:13px; overflow-wrap:anywhere; }.sf-event small { color:var(--sf-muted); font-size:11px; }.sf-event a { text-decoration:underline; }.sf-badge { color:var(--sf-accent); font-size:12px; }.sf-queue-row { padding:12px 0; border-bottom:1px solid var(--sf-line); }.sf-queue-row small { display:block; color:var(--sf-muted); }
.sf-scanner { width:min(90vw,480px); background:var(--sf-bg); color:var(--sf-ink); border:1px solid var(--sf-line); border-radius:20px; padding:22px; }.sf-scanner::backdrop { background:#000b; }.sf-scanner video { display:block; width:100%; aspect-ratio:1; background:#000; object-fit:cover; border-radius:12px; }.sf-scanner button { margin-top:12px; min-height:44px; width:100%; border:1px solid var(--sf-line); border-radius:10px; color:var(--sf-ink); background:var(--sf-panel); }.sf-scanner p { font-size:13px; color:var(--sf-muted); }.sf-scan-launch { width:100%; }.sf-guide-link { display:flex; justify-content:space-between; padding:16px; color:var(--sf-accent)!important; font-size:13px; }
@media(min-width:1000px) { main:has(.surveyor) { width:min(100%,1060px); }.surveyor { padding:30px 40px; }#sf-content { max-width:820px; margin:auto; }.sf-main-actions>* { flex:initial; min-width:210px; } }
@media(max-width:500px) { main:has(.surveyor) { padding-left:max(8px,var(--safe-left)); padding-right:max(8px,var(--safe-right)); }.surveyor { padding:16px; border-radius:18px; }.sf-main-actions { flex-direction:column; }.sf-stats>div { padding:12px; }.sf-tabs a { padding:10px; }.sf-types label { flex:1 0 42%; }.sf-types label>span { height:100%; }.sf-heading h1 { font-size:29px; } }
.surveyor-entry { display:block; padding:14px; margin-bottom:16px; border:1px solid #67dbd0; border-radius:12px; color:#67dbd0; font:600 14px Avenir,system-ui,sans-serif; text-decoration:none; }
.sf-deployment-context { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:15px 0; border-bottom:1px solid var(--sf-line); font-size:12px; color:var(--sf-muted); }.sf-deployment-context strong { color:var(--sf-ink); }.sf-deployment-context a { color:var(--sf-accent); text-decoration:underline; min-height:44px; display:flex; align-items:center; }
.sf-map { height:300px; border-radius:12px; background:#d7e0de; margin:12px 0; color:#172e35; z-index:0; }.sf-map-full { height:440px; }.sf-map-picker { border:1px solid var(--sf-line); padding:12px; border-radius:12px; margin:16px 0; }.sf-map-picker summary { cursor:pointer; min-height:44px; display:flex; align-items:center; }.sf-map-picker p { color:var(--sf-muted); font-size:12px; }.sf-coordinate-fields { display:flex; gap:12px; margin-bottom:12px; }.sf-coordinate-fields label { min-width:0; font-size:13px; }.sf-coordinate-fields input { width:100%; background:var(--sf-panel); border:1px solid var(--sf-line); color:var(--sf-ink); padding:12px; border-radius:10px; }
.sf-readiness { display:flex; gap:14px; padding:17px 0; border-bottom:1px solid var(--sf-line); font-size:14px; }.sf-readiness>span { width:30px; flex:none; color:var(--sf-muted); }.sf-readiness>span.ready { color:var(--sf-accent); }.sf-readiness p { margin:5px 0 0; color:var(--sf-muted); font-size:12px; }.sf-tabs { overflow-x:auto; }.sf-tabs a { white-space:nowrap; }

.survey-mode #bottomNav { display:none; }
.survey-mode .app-shell { padding-bottom: max(24px,var(--safe-bottom)); }
.sf-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; overflow:visible; }.sf-tabs a { white-space:normal; text-align:center; display:flex; align-items:center; justify-content:center; padding:10px 5px; }.sf-section>.sf-secondary { margin:10px 8px 0 0; }.sf-event details { font-size:12px; }.sf-event summary { min-height:44px; display:flex; align-items:center; color:var(--sf-accent); cursor:pointer; }.sf-event ul { margin:0; padding-left:18px; }

.surveyor { --sf-bg:#111416; --sf-panel:#1b2023; --sf-line:#343d42; --sf-accent:#35b4e5; --sf-accent-ink:#071f29; --sf-muted:#b6c1c7; }
.surveyor[data-mode="light"] { --sf-accent:#08779f; }
.sf-toolbar { flex-wrap:wrap; }.sf-wordmark { font-size:15px; letter-spacing:.1em; }
body.management-mode main { width:min(100%,1280px); }
.sf-management-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.sf-management-tools,.sf-management-columns { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.sf-table-scroll { overflow:auto; border:1px solid var(--sf-line); border-radius:14px; }
.sf-table { border-collapse:collapse; width:100%; text-align:left; font-size:13px; }
.sf-table th { color:var(--sf-muted); font-size:11px; font-weight:650; background:var(--sf-panel); }
.sf-table th,.sf-table td { padding:15px; border-bottom:1px solid var(--sf-line); overflow-wrap:anywhere; }
.sf-table td a { color:var(--sf-accent); text-decoration:underline; text-underline-offset:3px; display:inline-block; padding:7px 0; }
.sf-table tr:last-child td { border-bottom:0; }
@media(max-width:700px) { .sf-management-heading { display:block; } .sf-management-tools,.sf-management-columns { grid-template-columns:1fr; gap:0; } .sf-table th,.sf-table td { padding:10px; } }
.sf-catalog-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:20px; margin-top:24px; }
.sf-catalog-card { border:1px solid var(--sf-line); background:var(--sf-panel); border-radius:18px; padding:20px; }
.sf-catalog-card>img,.sf-catalog-placeholder { width:100%; height:180px; object-fit:contain; background:var(--sf-bg); border-radius:12px; }
.sf-catalog-placeholder { display:grid; place-items:center; color:var(--sf-accent); }.sf-catalog-placeholder svg { width:48px; height:48px; }
.sf-catalog-card>p { color:var(--sf-muted); font-size:13px; }.sf-specifications { white-space:pre-wrap; overflow-wrap:anywhere; }
.sf-equipment-marker { object-fit:contain; background:white; border:2px solid #08779f; border-radius:10px; box-shadow:0 2px 8px #0005; }
.sf-map-asset { display:grid; grid-template-columns:auto 1fr; gap:8px; padding-top:12px; margin-top:12px; border-top:1px solid #ccc; }.sf-map-asset img { object-fit:contain; grid-row:span 2; }.sf-map-asset small { grid-column:2; }
.sf-entity-icon>img { width:36px; height:36px; object-fit:contain; border-radius:8px; }
body.management-mode #sf-content { max-width:none; }
.sf-management-launchers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:22px 0 28px; }
.sf-management-launchers>a { padding:22px; border:1px solid var(--tile-color); border-top:5px solid var(--tile-color); border-radius:17px; background:color-mix(in srgb,var(--tile-color),var(--sf-panel) 91%); }
.sf-management-launchers strong,.sf-management-launchers span { display:block; }.sf-management-launchers strong { font-size:18px; margin-bottom:10px; }.sf-management-launchers span { font-size:13px; color:var(--sf-muted); line-height:1.5; }
.sf-launch-trip { --tile-color:#35b4e5; }.sf-launch-catalog { --tile-color:#e566b3; }.sf-launch-map { --tile-color:#22a969; }
.sf-stats>div:nth-child(1) { border-top:3px solid #35b4e5; }.sf-stats>div:nth-child(2) { border-top:3px solid #e566b3; }.sf-stats>div:nth-child(3) { border-top:3px solid #22a969; }
.sf-history-disclosure>summary { cursor:pointer; font-size:17px; font-weight:700; min-height:44px; }.sf-history-disclosure[open]>summary { margin-bottom:16px; }
.sf-icon-picker { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; border:0; padding:0; }.sf-icon-picker legend { font-weight:700; margin-bottom:16px; }.sf-icon-picker label { position:relative; }.sf-icon-picker input { position:absolute; opacity:0; }.sf-icon-picker label>span { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; padding:12px; border:2px solid var(--sf-line); background:var(--sf-panel); border-radius:13px; height:100%; font-size:12px; text-align:center; cursor:pointer; }.sf-icon-picker img { width:52px; height:52px; background:#fff; border-radius:10px; padding:3px; }.sf-icon-picker input:checked+span { border-color:var(--sf-accent); background:color-mix(in srgb,var(--sf-accent),var(--sf-panel) 90%); }.sf-icon-picker input:focus-visible+span { outline:3px solid var(--sf-accent); outline-offset:3px; }.sf-custom-icon { margin-top:22px; }.sf-custom-icon>summary { min-height:44px; cursor:pointer; }
@media(max-width:700px) { .sf-management-launchers { grid-template-columns:1fr; gap:12px; }.sf-management-launchers>a { padding:16px; }.sf-management-launchers strong { margin-bottom:5px; } }
.sf-capture-bar { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:10px; }.sf-capture-bar a { min-width:44px; min-height:44px; display:flex; align-items:center; font-weight:700; }.sf-capture-bar a:last-child { justify-content:center; font-size:22px; }
.sf-focused .sf-toolbar,.sf-focused .sf-tabs,.sf-focused #sf-deployment-context { display:none; }.sf-focused .sf-practice { margin:0; padding:7px 10px; font-size:11px; }.sf-focused .sf-practice span { display:none; }.sf-focused .sf-network { padding:8px 0; }.sf-focused .sf-heading { margin:12px 0 16px; }.sf-focused .sf-heading h1 { font-size:28px; }.capture-mode .topbar { display:none; }.capture-mode main { padding-top:max(8px,var(--safe-top)); }.sf-focused { border-radius:18px; }
.sf-live-camera { position:relative; background:#111a20; border-radius:18px; min-height:290px; height:42dvh; max-height:420px; overflow:hidden; }.sf-live-camera video { width:100%; height:100%; object-fit:cover; }.sf-scan-frame { position:absolute; width:65%; aspect-ratio:1; max-height:75%; top:45%; left:50%; transform:translate(-50%,-50%); border:3px solid #35b4e5; border-radius:18px; pointer-events:none; }.sf-live-camera>p { position:absolute; bottom:0; left:0; right:0; padding:14px; margin:0; color:#fff; background:#101820e6; font-size:13px; }.sf-manual-code { margin:16px 0; }.sf-manual-code>summary { min-height:44px; cursor:pointer; padding:10px 0; }
.sf-identify { border:1px solid var(--sf-line); border-radius:16px; background:var(--sf-panel); padding:18px; }.sf-identify dl { display:grid; grid-template-columns:1fr 1fr; gap:12px; font-size:14px; }.sf-identify dt { color:var(--sf-muted); }.sf-identify dd { margin:0; overflow-wrap:anywhere; }.sf-identify-photo { width:80px; height:80px; object-fit:contain; border-radius:12px; }.sf-survey-draft { font-size:12px; color:var(--sf-muted); }
.sf-optional-details>summary { min-height:44px; cursor:pointer; padding:12px 0; }.sf-icon-picker { max-height:330px; overflow:auto; padding:4px; grid-template-columns:repeat(4,minmax(0,1fr)); }.sf-icon-picker label>span { font-size:11px; padding:8px; }.sf-icon-picker img { width:42px; height:42px; }
.sf-catalog-card { position:relative; display:grid; grid-template-columns:64px 1fr 44px; gap:6px 14px; padding:16px; align-items:center; }.sf-catalog-card>img,.sf-catalog-card>.sf-catalog-placeholder { width:64px; height:64px; grid-column:1; grid-row:1/4; }.sf-catalog-placeholder svg { width:32px; height:32px; }.sf-catalog-card>p,.sf-catalog-card>h2 { grid-column:2; margin:0; }.sf-catalog-card>.sf-specifications { display:none; }.sf-catalog-card .sf-edit-icon { grid-column:3; grid-row:1/4; width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--sf-line); border-radius:12px; }.sf-catalog-grid { grid-template-columns:1fr; }
.sf-survey-choices { display:grid; gap:14px; }.sf-survey-choices>a { min-height:74px; justify-content:flex-start; font-size:18px; border-left-width:5px; }
.sf-camera-button { margin:10px auto; width:56px; height:48px; color:var(--sf-accent); }.sf-survey-progress { display:flex; list-style:none; padding:0; margin:0 0 22px; gap:6px; }.sf-survey-progress li { flex:1; font-size:11px; color:var(--sf-muted); padding:9px 5px; border-bottom:3px solid var(--sf-line); }.sf-survey-progress li span { display:block; }.sf-survey-progress li[aria-current] { border-color:var(--sf-accent); color:var(--sf-accent); font-weight:700; }

/* Readable compact survey cards share each workflow's field color. */
.surveyor .sf-event{border-radius:20px;padding:16px;border:1px solid var(--sf-line);border-left:4px solid #729dcb;margin-block:12px;overflow-wrap:anywhere}



.surveyor .sf-answer-list{display:block;margin:12px 0}
.surveyor .sf-answer-list dt{font-weight:650;margin-top:12px}
.surveyor .sf-answer-list dd{margin:4px 0 10px;overflow-wrap:anywhere}
.surveyor .sf-answer-list .sf-answer-list{padding-left:12px;border-left:2px solid #719eaa55}
.surveyor .sf-survey-progress{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:520px){.surveyor .sf-survey-progress li span{display:none}.surveyor .sf-survey-progress li[aria-current] span{display:block;font-size:10px}}
.sf-capture-language{margin-left:auto;margin-right:8px}
.sf-capture-language>div{z-index:25}
.surveyor input::placeholder,.surveyor textarea::placeholder{color:var(--sf-muted);opacity:1}
.surveyor input:disabled,.surveyor select:disabled{color:var(--sf-muted);background:var(--sf-bg);opacity:1}
.surveyor button:disabled{opacity:.65;cursor:wait}
.surveyor .sf-language button[aria-pressed="true"]{background:color-mix(in srgb,var(--sf-accent),var(--sf-panel) 90%);font-weight:700;border-radius:8px}
/* One toolbar rhythm, plus an unmistakable workflow identity throughout capture. */
.sf-capture-header{max-width:820px;margin:0 auto 12px}
.sf-focused .sf-capture-header{position:sticky;top:0;z-index:12;background:var(--sf-bg);padding-block:4px 12px}
.sf-capture-bar{margin-bottom:0;gap:12px;min-height:44px}
.sf-capture-controls{display:flex;align-items:center;gap:12px;flex:none}
.sf-capture-language{margin:0}
.sf-capture-bar .sf-exit-button,.sf-capture-controls .sf-language summary{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid var(--sf-line);border-radius:13px;background:var(--sf-panel);color:var(--sf-ink);padding:0}
.sf-exit-button svg,.sf-capture-controls summary svg{width:20px;height:20px}
.sf-surveys-back{padding:0 4px;white-space:nowrap}
.sf-capture-bar .sf-exit-button:focus-visible,.sf-capture-controls summary:focus-visible{outline:3px solid var(--sf-accent);outline-offset:3px}
.sf-language .field-language-options{color:var(--sf-ink);background:var(--sf-panel);border-color:var(--sf-line);width:220px;padding:8px}
.sf-language .field-language-options button{display:flex;justify-content:space-between;color:var(--sf-ink);min-height:48px;padding:12px}
.sf-language .field-language-options button[aria-pressed="true"]{background:color-mix(in srgb,var(--sf-accent),var(--sf-panel) 90%)}




.sf-survey-identity{margin-top:12px;padding:12px 16px;border-radius:14px;border:1px solid var(--sf-flow-mark);border-left:5px solid var(--sf-flow-mark);background:var(--sf-flow);color:#fff}
.sf-survey-identity strong,.sf-survey-identity span{display:block}
.sf-survey-identity strong{font-size:22px;line-height:1.2;font-weight:800}
.sf-survey-identity span{font-size:13px;margin-top:5px;line-height:1.4}
.surveyor[data-survey]:not([data-survey=""]) .sf-scan-frame{border-color:var(--sf-flow-mark)}
.sf-focused .sf-practice,.sf-focused .sf-network{max-width:820px;margin-inline:auto}
.sf-focused .sf-heading h1{font-size:24px}
.sf-camera-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:13px}
@media(max-width:500px){.sf-survey-identity strong{font-size:20px}.sf-capture-controls{gap:10px}.sf-focused .sf-capture-header{top:0}.sf-survey-identity{padding:10px 12px}}
.surveyor:not(.sf-focused) .sf-capture-header{display:none}
.sf-focused .sf-capture-header{top:var(--safe-top,0px)}
/* Shared workflow identity: color supports the label and symbol, never replaces them. */
.sf-survey-identity{display:flex;align-items:center;gap:12px}
.sf-survey-identity .sf-workflow-emblem{margin:0;flex:none}
.sf-workflow-emblem{display:grid!important;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--sf-flow);color:#fff;flex:none}
.sf-workflow-emblem .workflow-icon,.sf-record-emblem .workflow-icon{filter:brightness(0) invert(1)}
.sf-survey-identity .sf-workflow-emblem{background:#ffffff20}
.surveyor .sf-workflow-choice{display:flex;align-items:center;gap:14px;min-height:96px;padding:16px;border:1px solid var(--sf-line);border-left:5px solid var(--sf-flow-mark);border-radius:18px;background:var(--sf-panel);color:var(--sf-ink)}
.sf-workflow-choice>span:nth-child(2){flex:1}.sf-workflow-choice strong{display:block;font-size:18px}.sf-workflow-choice small{display:block;font-size:13px;font-weight:400;color:var(--sf-muted);margin-top:5px;line-height:1.4}
.surveyor[data-survey]:not([data-survey=""]) .sf-primary{background:var(--sf-flow);border-color:var(--sf-flow);color:#fff}
.surveyor .sf-event{grid-template-columns:32px minmax(0,1fr);border-left-color:var(--sf-flow-mark,var(--sf-line))}
.sf-record-emblem{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--sf-flow,var(--sf-panel))}
.sf-record-emblem .workflow-icon{width:20px;height:20px}
.sf-workflow-label{display:inline-flex;align-items:center;gap:8px}.sf-workflow-label .workflow-icon{width:26px;height:26px;padding:4px;background:#fff;border:2px solid var(--sf-flow);border-radius:7px}
.surveyor[data-survey]:not([data-survey=""]) .sf-survey-progress li[aria-current]{border-color:var(--sf-flow-mark);color:var(--sf-ink)}
.surveyor[data-survey]:not([data-survey=""]) .sf-camera-button{color:var(--sf-flow-mark)}
.surveyor[data-mode="light"][data-survey]:not([data-survey=""]) .sf-camera-button{color:var(--sf-flow)}
.sf-capture-controls{gap:12px}
/* Management: one context panel, task shortcuts, then actual records. */
.management-mode #sf-deployment-context{display:none}
.sf-management-overview{padding:24px;background:var(--sf-panel);border:1px solid var(--sf-line);border-radius:22px;margin:24px 0}
.sf-management-overview .sf-management-heading{margin:0 0 22px;align-items:flex-start}
.sf-management-heading h1{font-size:clamp(26px,3vw,36px);line-height:1.15}
.sf-management-heading .sf-primary{flex:none;text-decoration:none;max-width:none;white-space:nowrap}
.sf-management-overview .sf-management-tools{gap:20px}.sf-management-overview .sf-field{margin-bottom:0}
.sf-management-launchers>a{display:flex;align-items:center;gap:14px;padding:20px;background:var(--sf-panel);border:1px solid var(--sf-line);border-radius:18px}
.sf-management-launchers>a>div{flex:1;min-width:0}.sf-management-launchers strong{font-size:16px;margin-bottom:5px}.sf-management-launchers span{font-size:13px}.sf-management-launchers b{color:var(--sf-muted)}
.sf-management-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:color-mix(in srgb,var(--tile-color),var(--sf-panel) 82%);color:var(--tile-color)}
.sf-management-icon svg{width:24px;height:24px}.sf-launch-catalog{--tile-color:#e8ba69}.sf-launch-map{--tile-color:#79bfaf}
.surveyor[data-mode="light"] .sf-launch-catalog{--tile-color:#855610}.surveyor[data-mode="light"] .sf-launch-map{--tile-color:#236858}.surveyor[data-mode="light"] .sf-launch-trip{--tile-color:#086a9e}
.management-mode .sf-stats>div{border:1px solid var(--sf-line);border-radius:18px;background:var(--sf-panel);padding:20px}.management-mode .sf-stats strong{font-size:30px}.management-mode .sf-stats span{font-size:13px}
.sf-recent-visits{margin:28px 0;padding:24px;border:1px solid var(--sf-line);border-radius:22px}
.sf-recent-visits>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.sf-recent-visits h2{margin:4px 0;font-size:21px}.sf-recent-visits header p{margin:0;color:var(--sf-muted);font-size:11px;letter-spacing:.08em}
.sf-recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sf-recent-card{display:flex;gap:12px;padding:16px;border:1px solid var(--sf-line);border-left:4px solid var(--sf-flow-mark);border-radius:16px;background:var(--sf-panel)}
.sf-recent-card>div{min-width:0}.sf-recent-card strong,.sf-recent-card small,.sf-recent-card div>span{display:block;overflow-wrap:anywhere}.sf-recent-card strong{margin:6px 0;font-size:15px}.sf-recent-card small,.sf-recent-card div>span{font-size:12px;color:var(--sf-muted)}
.sf-management-empty{grid-column:1/-1;padding:20px;border:1px dashed var(--sf-line);border-radius:16px}.sf-management-empty p{max-width:580px;color:var(--sf-muted);font-size:14px}
.management-mode .sf-management-columns>.sf-section{min-width:0}.management-mode .sf-section{padding-top:24px}.management-mode .sf-assignment{margin-top:24px}
@media(max-width:1100px){.sf-management-launchers{grid-template-columns:1fr}.sf-recent-grid{grid-template-columns:1fr}}
@media(max-width:700px){.sf-management-overview,.sf-recent-visits{padding:16px}.sf-management-heading .sf-primary{margin-top:14px;white-space:normal}.sf-recent-visits>header{align-items:flex-start;flex-direction:column}.sf-management-overview .sf-management-tools{gap:16px}.management-mode .sf-stats>div{padding:12px}.management-mode .sf-stats span{font-size:11px}}
.management-mode .sf-toolbar{display:none}
.management-mode .sf-practice{margin-top:0;padding:8px 12px}.management-mode .sf-practice span{display:none}
.sf-management-tools .sf-field{margin:0;gap:8px}
.sf-workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 20px;margin-bottom:16px;border-bottom:1px solid var(--sf-line)}
.sf-workspace-heading>a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--sf-line);border-radius:13px;background:var(--sf-panel);font-weight:700;white-space:nowrap}
.sf-workspace-heading strong,.sf-workspace-heading span{display:block}.sf-workspace-heading strong{font-size:14px;letter-spacing:.06em}.sf-workspace-heading span{font-size:12px;color:var(--sf-muted);margin-top:4px}
.sf-community-section{margin:28px 0;padding:24px;border:1px solid var(--sf-line);border-radius:22px}.sf-community-section header>p:first-child{font-size:11px;letter-spacing:.08em;color:var(--sf-muted)}.sf-community-section h2{font-size:24px;margin:8px 0}.sf-community-section p{font-size:14px;color:var(--sf-muted);line-height:1.6}
.sf-entity-guide,.sf-community-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.sf-entity-guide>div,.sf-community-grid article{padding:18px;border:1px solid var(--sf-line);background:var(--sf-panel);border-radius:16px;min-width:0}.sf-entity-guide strong,.sf-entity-guide span{display:block}.sf-entity-guide small{color:var(--sf-accent)}.sf-entity-guide strong{margin:6px 0}.sf-entity-guide span{font-size:12px;color:var(--sf-muted)}
.sf-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-community-grid h3{margin:8px 0}.sf-community-grid small{font-size:11px;color:var(--sf-muted);overflow-wrap:anywhere}.sf-reference-counts{display:flex;gap:24px;margin:16px 0}.sf-reference-counts span{font-size:12px;color:var(--sf-muted)}.sf-reference-counts strong{display:block;font-size:24px;color:var(--sf-ink)}
@media(max-width:700px){.sf-workspace-heading{align-items:flex-start;flex-direction:column;gap:12px}.sf-community-section{padding:16px}.sf-entity-guide,.sf-community-grid{grid-template-columns:1fr}}

.sf-management-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-workspace-heading>div{margin-left:auto}.sf-workspace-heading{flex-wrap:wrap}.sf-workspace-heading~.sf-toolbar{display:none}
@media(max-width:600px){.sf-management-hub{grid-template-columns:1fr}.sf-workspace-heading{flex-direction:row}.sf-workspace-heading>div{width:100%;margin-left:0}}

/* Keep global exit separate from navigation inside each workspace section. */
.sf-workspace-heading{padding-bottom:16px;margin-bottom:16px}
.sf-section-navigation{display:flex;align-items:center;gap:14px;margin:0 0 20px}.sf-section-navigation>span{font-size:12px;color:var(--sf-muted)}
#sf-content{padding-top:24px;min-width:0;width:100%}
.sf-record-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
#sf-results{margin:16px 0}.sf-community-section{margin-top:0;min-width:0}.sf-community-grid>*{min-width:0;overflow-wrap:anywhere}
.sf-workspace-heading>a{min-height:44px}.sf-workspace-heading strong{overflow-wrap:anywhere}
@media(max-width:600px){.sf-workspace-heading{align-items:center;gap:12px}.sf-workspace-heading>div{width:auto;flex:1;min-width:120px}.sf-workspace-heading span{display:none}.sf-community-section{padding:16px}.sf-section-navigation{margin-bottom:16px}}

.sf-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.sf-manager-nav{display:flex;flex-wrap:wrap;gap:6px;padding:12px 0 18px;border-bottom:1px solid var(--sf-line)}.sf-manager-nav a{padding:12px 14px;border-radius:12px;text-decoration:none;color:var(--sf-muted);font-size:13px;font-weight:650}.sf-manager-nav a[aria-current="page"]{background:var(--sf-panel);color:var(--sf-accent)}
.sf-launch-community .sf-management-icon{color:#bf91e9;background:#9b59c522}.sf-launch-site .sf-management-icon{color:#55bca4;background:#159f7d22}.sf-launch-asset .sf-management-icon{color:#68baf0;background:#279adb22}.sf-launch-records .sf-management-icon{color:#ed93b5;background:#d85b8a22}
.surveyor[data-mode="light"] .sf-launch-community .sf-management-icon{color:#7736a3}.surveyor[data-mode="light"] .sf-launch-site .sf-management-icon{color:#087558}.surveyor[data-mode="light"] .sf-launch-asset .sf-management-icon{color:#086ba3}.surveyor[data-mode="light"] .sf-launch-records .sf-management-icon{color:#a02f5c}
.sf-manager-map{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--sf-line);border-radius:13px;color:var(--sf-ink)}.sf-manager-map svg{width:22px;height:22px}
@media(max-width:600px){.sf-manager-nav{flex-wrap:nowrap;overflow-x:auto}.sf-manager-nav a{flex:none}}

.sf-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.sf-surveyor-welcome{margin:0 0 24px}.sf-start-survey{display:flex;align-items:center;gap:18px;padding:24px;border-radius:22px;background:var(--sf-accent);color:var(--sf-accent-ink)!important;text-decoration:none}.sf-start-survey>span svg{width:36px;height:36px}.sf-start-survey strong{display:block;font-size:23px}.sf-start-survey small{display:block;margin-top:8px;font-size:13px}.sf-start-survey>b{margin-left:auto;font-size:26px}
.sf-home-tools{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.sf-home-tools a{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px;border:1px solid var(--sf-line);border-radius:20px;background:var(--sf-panel);text-decoration:none;color:var(--sf-ink)}.sf-home-tools svg{width:24px;height:24px;color:var(--sf-accent)}.sf-home-tools span{font-size:13px;color:var(--sf-muted)}
.survey-mode:not(.management-mode) #sf-deployment-context{display:none}
@media(max-width:480px){.sf-home-tools{grid-template-columns:1fr}.sf-start-survey{padding:20px}.sf-start-survey strong{font-size:21px}}

/* Field Kit owns the single shared header, including while capturing surveys. */
.capture-mode .topbar{display:flex}.capture-mode main{padding-top:24px}
.sf-survey-tools{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.survey-mode:not(.management-mode) .sf-practice{margin-top:0;padding:8px 12px}.survey-mode:not(.management-mode) .sf-practice span{display:none}
.survey-mode:not(.management-mode) .sf-section-navigation{margin-bottom:16px}

.sf-scan-entry{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:18px;background:var(--sf-accent);color:var(--sf-accent-ink)!important;text-decoration:none;min-height:88px}.sf-scan-entry-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;background:#ffffff30}.sf-scan-entry-icon svg{width:26px;height:26px}.sf-scan-entry strong,.sf-scan-entry small{display:block}.sf-scan-entry strong{font-size:18px}.sf-scan-entry small{font-size:12px;margin-top:6px;line-height:1.5}.sf-scan-entry>b{margin-left:auto;font-size:24px}.sf-choice-label{margin:24px 0 12px;color:var(--sf-muted);font-size:12px;font-weight:650}.sf-survey-tools{padding-top:20px;border-top:1px solid var(--sf-line)}

.sf-surveyor-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--sf-line)}.sf-surveyor-footer .sf-survey-tools{margin:0;padding:0;border:0;justify-content:flex-end}.sf-survey-tools a[href$="/history"]{background:#795313;color:#fff;border-color:#b88a34}.sf-survey-tools a[href$="/kit"]{background:#24575b;color:#fff;border-color:#5a969a}.sf-surveyor-footer>button{flex:none}@media(max-width:480px){.sf-surveyor-footer{align-items:flex-end;gap:10px}.sf-surveyor-footer .sf-survey-tools{gap:8px}.sf-surveyor-footer .sf-secondary{font-size:12px;padding:10px}}

.sf-draft-actions{margin-top:14px!important}.sf-offline-dashboard{border:1px solid var(--sf-line);border-top:3px solid #5a969a;border-radius:20px;padding:22px;background:var(--sf-panel);margin-bottom:24px}.sf-offline-dashboard .sf-choice-label{margin:0 0 10px}.sf-offline-dashboard h2{margin:0 0 20px}.sf-ready-row{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--sf-line)}.sf-ready-row strong,.sf-ready-row small{display:block}.sf-ready-row small{color:var(--sf-muted);margin-top:5px;line-height:1.5}.sf-ready-dot{width:10px;height:10px;border-radius:50%;background:#c58c3c;flex:none;margin-top:6px}.sf-ready-dot.is-ready{background:#35b776}.sf-offline-dashboard>p:last-child{font-size:13px;color:var(--sf-muted);line-height:1.6;margin-bottom:0}.sf-offline-download{background:#24575b!important;color:#fff!important}

.sf-offline-choice{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:20px;border:1px solid var(--sf-line);border-radius:18px;margin-bottom:18px}.sf-offline-choice h2{margin:0}.sf-offline-choice p{color:var(--sf-muted);font-size:13px}.sf-offline-choice [aria-checked="true"]{background:#24575b;color:#fff}

.sf-submission-group{--status-color:#69959e;border:1px solid var(--sf-line);border-left:4px solid var(--status-color);border-radius:18px;padding:20px;margin:22px 0;background:var(--sf-panel)}.sf-submission-drafts{--status-color:#d5a44b;border-style:dashed}.sf-submission-waiting{--status-color:#53b6df}.sf-submission-uploaded{--status-color:#48b980}.sf-submission-review{--status-color:#db8f72}.sf-submission-group>header{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}.sf-status-symbol{color:var(--status-color);padding:10px;border-radius:12px;background:var(--sf-bg);display:flex}.sf-submission-group h2{font-size:20px;margin:0}.sf-submission-group h2>span{font-size:13px;border:1px solid var(--sf-line);border-radius:20px;padding:3px 9px;margin-left:6px}.sf-submission-group header p,.sf-status-empty{font-size:13px;color:var(--sf-muted);margin:7px 0;line-height:1.6}.sf-submission-record{display:grid;gap:7px;padding:16px;border:1px solid var(--sf-line);border-radius:12px;background:var(--sf-bg)}.sf-submission-record span{font-size:13px;color:var(--sf-muted)}.sf-submission-record small{font-size:12px}.sf-submission-drafts .sf-resume{border-color:#ad8439;background:var(--sf-bg)}
