/* Inventory UI foundation. Pages reuse these tokens and components; print views keep their own layout. */
:root{
 --sa-font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
 --sa-text-xs:11px;--sa-text-sm:12px;--sa-text-base:13px;--sa-text-lg:16px;
 --sa-text-xl:20px;--sa-text-title:22px;--sa-text-display:28px;--sa-text-hero:32px;
 --sa-leading-body:1.5;--sa-leading-heading:1.3;
 --sa-weight-normal:400;--sa-weight-medium:600;--sa-weight-strong:700;--sa-weight-title:750;
 --sa-space-1:4px;--sa-space-2:8px;--sa-space-3:12px;--sa-space-4:16px;
 --sa-space-6:24px;--sa-space-8:32px;--sa-space-10:40px;--sa-space-12:48px;--sa-space-16:64px;
}
body{font-family:var(--sa-font-family);font-size:var(--sa-text-base);line-height:var(--sa-leading-body)}
button,input,select,textarea{font-family:inherit;line-height:var(--sa-leading-body)}
.sa-page-layout :is(h2,h3){font-size:var(--sa-text-lg);font-weight:var(--sa-weight-strong);line-height:var(--sa-leading-heading);color:var(--sa-ink)}
.sa-page-layout :is(label,.sa-field>span){line-height:var(--sa-leading-body)}
.sa-page-layout :is(.usr-muted,.sa-page-subtitle){font-size:var(--sa-text-sm);color:var(--sa-muted);line-height:var(--sa-leading-body)}
/* Shared page gutters and scroll surfaces. Keep page spacing in the shell. */
:root{--sa-page-gutter:18px;--sa-page-gap:16px;--sa-scroll-track:#f1f5f9;--sa-scroll-thumb:#cbd5e1}
@media(max-width:1024px){:root{--sa-page-gutter:16px}}
@media(max-width:760px){:root{--sa-page-gutter:14px}}
body.sa-has-shell .sa-content{
    padding:var(--sa-page-gutter)!important;
    padding-bottom:calc(var(--sa-page-gutter) + env(safe-area-inset-bottom))!important;
    height:100%!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;
    background:var(--sa-canvas,#f6f7fb)!important;
}
body.sa-has-shell .sa-content>.sa-page-layout{
    display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
    height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
    background:transparent!important;
}
body.sa-has-shell .sa-content>.py-6>.max-w-7xl{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.sa-has-shell .sa-content>.sa-list-workspace>:is(.sa-list-head,.sa-index-filterbar,.sa-list-card){margin-right:0!important;margin-left:0!important}
body.sa-has-shell .sa-content .sa-dashboard-filter{margin:var(--sa-page-gap) 0!important}
body.sa-has-shell .sa-content .page-heading{margin-bottom:var(--sa-page-gap)}
@media(max-width:760px){body.sa-has-shell .sa-shell:not(.sa-project-shell) .sa-content{padding-bottom:calc(86px + env(safe-area-inset-bottom))!important}}
/* Native WebKit sizing is used in Chrome; Firefox uses the standard properties. */
body.sa-has-shell *{scrollbar-width:auto;scrollbar-color:var(--sa-scroll-thumb) var(--sa-scroll-track)}
body.sa-has-shell *::-webkit-scrollbar{width:10px;height:10px}
body.sa-has-shell *::-webkit-scrollbar-track{background:var(--sa-scroll-track);border:0}
body.sa-has-shell *::-webkit-scrollbar-thumb{min-height:44px;border:2px solid var(--sa-scroll-track);border-radius:8px;background:var(--sa-scroll-thumb)}
body.sa-has-shell *::-webkit-scrollbar-thumb:hover{background:#94a3b8}
body.sa-has-shell *::-webkit-scrollbar-corner{background:var(--sa-scroll-track)}
@supports selector(::-webkit-scrollbar){body.sa-has-shell *{scrollbar-width:auto;scrollbar-color:auto}}


/* Explicit main page scrollbar, independent of nested table scrollbars.
   Do not reserve a mirrored left scrollbar gutter; the canonical page gutter already owns page spacing. */
body.sa-has-shell .sa-content{scrollbar-gutter:auto!important}
body.sa-has-shell .sa-content::-webkit-scrollbar{width:10px!important;height:10px!important}
body.sa-has-shell .sa-content::-webkit-scrollbar-track{background:#f1f5f9!important;border:0!important}
body.sa-has-shell .sa-content::-webkit-scrollbar-thumb{min-height:48px;border:2px solid #f1f5f9!important;border-radius:8px;background:#cbd5e1!important;background-clip:padding-box}
body.sa-has-shell .sa-content::-webkit-scrollbar-thumb:hover{background:#94a3b8!important}
body.sa-has-shell .sa-content::-webkit-scrollbar-corner{background:#f1f5f9!important}
@supports selector(::-webkit-scrollbar){body.sa-has-shell .sa-content{scrollbar-width:auto!important;scrollbar-color:auto!important}}

/* Canonical page header; layouts provide gutters, headers provide hierarchy. */
body.sa-has-shell .sa-content .sa-page-header{
display:flex!important;align-items:center!important;justify-content:space-between!important;
flex-wrap:wrap;gap:var(--sa-space-4)!important;min-height:0!important;
margin:0 0 var(--sa-page-gap)!important;padding:0 0 var(--sa-page-gap)!important;
border-bottom:1px solid var(--sa-line)!important;
}
body.sa-has-shell .sa-content .sa-page-header+*{margin-top:0!important}
/* Header margin owns divider spacing; filter bars must not add top padding. */
body.sa-has-shell .sa-content .audit-filterbar{margin:0 0 var(--sa-page-gap);padding:0}
body.sa-has-shell .sa-content .sa-batch-review>:not(.sa-page-header){margin-bottom:var(--sa-page-gap)}
body.sa-has-shell .sa-content .sa-batch-review>:last-child{margin-bottom:0}
body.sa-has-shell .sa-content .sa-page-header>div:first-child{min-width:0}
body.sa-has-shell .sa-content .sa-page-header h1{
margin:0!important;color:var(--sa-ink)!important;font-size:var(--sa-text-title)!important;
font-weight:var(--sa-weight-title)!important;line-height:1.3!important;letter-spacing:-.02em;
}
body.sa-has-shell .sa-content .sa-page-header :is(h1+p,h1+span,h1+.uv-sub){
display:block;margin:var(--sa-space-1) 0 0!important;color:var(--sa-muted)!important;
font-size:var(--sa-text-sm)!important;line-height:1.5!important;
}
body.sa-has-shell .sa-content .sa-page-header :is(.sa-page-kicker,p:has(+h1)){
margin:0 0 var(--sa-space-1)!important;color:var(--sa-primary)!important;font-size:var(--sa-text-xs)!important;
font-weight:var(--sa-weight-strong)!important;line-height:1.4!important;letter-spacing:.08em;text-transform:uppercase;
}
body.sa-has-shell .sa-content .sa-page-header :is(.sa-dashboard-actions,.sa-list-actions,.sa-detail-actions,.up-head-actions,.project-detail-actions){display:flex;flex-wrap:wrap;gap:var(--sa-space-2)!important}

@media(max-width:760px){
body.sa-has-shell .sa-content .sa-page-header{align-items:flex-start!important;flex-direction:column!important;gap:var(--sa-space-3)!important}
body.sa-has-shell .sa-content .sa-page-header h1{font-size:var(--sa-text-xl)!important}
body.sa-has-shell .sa-content .sa-page-header>div:last-child:not(:first-child){max-width:100%;flex-wrap:wrap}
}


/* Legacy routes share the same header and section rhythm. */
body.sa-has-shell .sa-content .sa-legacy-page-header>div:last-child{display:flex;flex-wrap:wrap;gap:var(--sa-space-2)}
body.sa-has-shell .sa-content .sa-legacy-page-header :is(a,button){margin:0;}
body.sa-has-shell .sa-content .sa-report-navigation{margin:0 0 var(--sa-page-gap)!important}
body.sa-has-shell .sa-content .sa-report-navigation nav{display:flex;flex-wrap:wrap;gap:var(--sa-space-2)}
body.sa-has-shell .sa-content .sa-report-navigation a{margin:0!important}
body.sa-has-shell .sa-content .sa-report-page>div:not(.sa-page-header):not(.sa-report-navigation){margin-bottom:var(--sa-page-gap)!important}
body.sa-has-shell .sa-content .sa-report-page>.bg-white{padding:var(--sa-space-4)!important;min-width:0;border:1px solid var(--sa-line);border-radius:14px}
body.sa-has-shell .sa-content .sa-report-page .grid{gap:var(--sa-space-4)}
@media(max-width:760px){body.sa-has-shell .sa-content .sa-report-navigation nav{flex-direction:column}}

/* Canonical list components. Explicit classes isolate tables from legacy utility rules. */
body.sa-has-shell .sa-content :is(.sa-material-empty,.sa-supplier-empty)[hidden]{display:none!important}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table tfoot td{
    position:sticky;bottom:0;z-index:1;
    padding:var(--sa-space-3) var(--sa-space-4);border-top:1px solid var(--sa-line);background:var(--sa-soft);
    color:var(--sa-ink);font-size:var(--sa-text-base);
}
body.sa-has-shell .sa-content .sa-data-card{
    width:100%;min-width:0;margin:0!important;padding:0!important;
    overflow:hidden!important;border:1px solid var(--sa-line)!important;
    border-radius:12px!important;background:var(--sa-surface)!important;
    box-shadow:0 4px 16px rgba(28,39,90,.05)!important;
}
body.sa-has-shell .sa-content .sa-data-toolbar{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    flex-wrap:wrap;gap:var(--sa-space-3);min-height:54px;padding:var(--sa-space-3) var(--sa-space-4)!important;
    margin:0!important;border-bottom:1px solid var(--sa-line);background:var(--sa-surface);
}
body.sa-has-shell .sa-content .sa-data-toolbar .sa-bulk-verify-controls{display:flex;align-items:center;flex-wrap:wrap;min-width:0;margin-left:auto;gap:var(--sa-space-2)}
body.sa-has-shell .sa-content .sa-data-scroll{
    display:block!important;width:100%;min-width:0;min-height:0!important;height:auto!important;
    max-height:none!important;overflow:auto!important;
    border:0!important;border-radius:0!important;background:var(--sa-surface);
}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table{
    width:100%!important;margin:0!important;border:0!important;
    border-collapse:separate!important;border-spacing:0!important;
}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table thead th{
    position:sticky!important;top:0!important;z-index:2;
    padding:var(--sa-space-3) var(--sa-space-4)!important;border:0!important;border-bottom:1px solid var(--sa-line)!important;
    background:var(--sa-soft)!important;color:var(--sa-muted)!important;
    font-size:var(--sa-text-xs)!important;line-height:1.4;font-weight:var(--sa-weight-strong);letter-spacing:.04em;
    text-transform:uppercase;white-space:nowrap;
}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table tbody td{
    padding:var(--sa-space-3) var(--sa-space-4)!important;border:0!important;border-bottom:1px solid #edf0f6!important;
    color:var(--sa-ink);font-size:var(--sa-text-base);line-height:1.4;vertical-align:middle;
}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table tbody tr:last-child td{border-bottom:0!important}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table tbody tr:hover td{background:#fbfbff}
body.sa-has-shell .sa-content .sa-data-footer{
    display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;
    gap:var(--sa-space-2);padding:var(--sa-space-3) var(--sa-space-4)!important;margin:0!important;
    border-top:1px solid var(--sa-line);background:var(--sa-surface);
    color:var(--sa-muted);font-size:var(--sa-text-sm);line-height:1.5;
}
body.sa-has-shell .sa-content .sa-data-footer>div{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sa-space-2)}
body.sa-has-shell .sa-content .sa-data-card .dataTables_wrapper{padding:0!important}
body.sa-has-shell .sa-content .sa-data-toolbar .dataTables_filter{float:none!important;margin:0!important;text-align:left!important;min-width:0}
body.sa-has-shell .sa-content .sa-data-toolbar .dt-buttons{float:none;display:flex;flex-wrap:wrap;gap:var(--sa-space-1)}
body.sa-has-shell .sa-content .sa-data-footer :is(.dataTables_info,.dataTables_paginate){float:none!important;padding:0!important;margin:0!important}
body.sa-has-shell .sa-content .sa-data-toolbar .dataTables_filter label{width:min(360px,100%);max-width:100%}
body.sa-has-shell .sa-content .sa-data-toolbar .dataTables_filter input{border:1px solid var(--sa-line);padding:var(--sa-space-2) var(--sa-space-2)}
body.sa-has-shell .sa-content .sa-data-searchbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sa-space-3);margin:0 0 var(--sa-page-gap)!important}
body.sa-has-shell .sa-content .sa-data-searchbar label{width:min(390px,100%)}
body.sa-has-shell .sa-content .sa-list-workspace{background:transparent!important}
body.sa-has-shell .sa-content .sa-list-workspace .sa-index-filterbar{margin-bottom:var(--sa-page-gap)!important}
@media(max-width:1100px){body.sa-has-shell .sa-content .sa-list-workspace .sa-index-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){
    body.sa-has-shell .sa-content .sa-data-toolbar{align-items:flex-start!important}
    body.sa-has-shell .sa-content .sa-data-toolbar .sa-bulk-verify-controls{margin-left:0;width:100%;align-items:stretch}
    body.sa-has-shell .sa-content .sa-data-searchbar label{width:100%}
    body.sa-has-shell .sa-content .sa-list-workspace .sa-index-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* Lists fill the shell's remaining row. The table owns vertical scroll on roomy screens. */
@media(min-width:901px) and (min-height:601px){
 body.sa-has-shell .sa-content:has(>.sa-page-list){overflow-y:hidden!important}
 body.sa-has-shell .sa-content>.sa-page-list,
 body.sa-has-shell .sa-content .sa-page-list>.sa-list-body{
  display:flex!important;flex-direction:column;min-height:0!important;height:100%!important;gap:0;
 }
 body.sa-has-shell .sa-content .sa-page-list .sa-data-card{
  display:flex!important;flex-direction:column;flex:1 1 0;min-height:0;
 }
 body.sa-has-shell .sa-content .sa-page-list .sa-data-card .dataTables_wrapper{
  display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%;
 }
 body.sa-has-shell .sa-content .sa-page-list .sa-data-scroll{flex:1 1 0;min-height:0!important}
 body.sa-has-shell .sa-content .sa-page-list :is(.sa-page-header,.sa-data-toolbar,.sa-data-footer,.sa-data-searchbar,.sa-index-filterbar,.audit-filterbar){flex:0 0 auto}
}
/* Small/short screens use page flow, without a second vertical table scroller. */
@media(max-width:900px),(max-height:600px){
 body.sa-has-shell .sa-content>.sa-page-list{height:auto!important}
 body.sa-has-shell .sa-content .sa-page-list .sa-data-card,
 body.sa-has-shell .sa-content .sa-page-list .dataTables_wrapper{display:block!important}
 body.sa-has-shell .sa-content .sa-page-list .sa-data-scroll{height:auto!important;max-height:none!important}
}
body.sa-has-shell .sa-content .sa-page-list .sa-hidden-form{display:none}
body.sa-has-shell .sa-content .sa-page-layout :is(.sa-data-toolbar,.sa-data-footer){flex-shrink:0}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table{table-layout:auto!important}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table :is(th,td){overflow-wrap:normal;word-break:normal}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table td:last-child{white-space:normal}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table :is(.sa-row-actions,.usr-actions,.sa-material-actions,.sa-supplier-actions){flex-wrap:nowrap;min-width:max-content}
body.sa-has-shell .sa-content .sa-data-scroll .sa-data-table :is(.sa-align-right,.text-right){text-align:right!important}
body.sa-has-shell .sa-content .sa-page-layout :is(.sa-modal-body,.up-body,.usr-form,.ec-body){padding:var(--sa-space-4)}
.sa-modal-dialog,.up-dialog,.usr-dialog,.ec-card,.sa-capture-card,.sa-detail-card{min-width:0}
@media(max-width:760px){
 .sa-page-layout :is(.up-contact,.uv-details,.sa-detail-meta){grid-template-columns:1fr!important}
 .sa-page-layout :is(.up-dashboard,.uv-grid,.ec-grid){grid-template-columns:1fr!important}
 .sa-page-layout :is(.sa-detail-actions,.usr-actions){max-width:100%;flex-wrap:wrap}
}
/* Semantic hierarchy shared by forms, drawers, and page sections. */
body.sa-has-shell :is(.sa-content,.sa-entry-drawer) :is(h2,h3){font-size:var(--sa-text-lg);font-weight:var(--sa-weight-strong);line-height:var(--sa-leading-heading)}


:root{--sa-control-height:40px;--sa-control-compact:32px}


body.sa-has-shell :is(.sa-content,.sa-entry-drawer,.sa-modal) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){min-height:var(--sa-control-height)}

/* Long forms keep their actions visible; only the dialog body scrolls. */
:is(.usr-dialog,.up-dialog,.project-modal-dialog,.project-detail-dialog){display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - var(--sa-space-8))}
:is(.usr-dialog,.up-dialog,.project-modal-dialog,.project-detail-dialog)>form{display:flex;flex-direction:column;min-height:0;max-height:inherit}
:is(.usr-form,.up-body,.project-modal-body,.project-detail-modal-body){flex:1 1 auto;min-height:0;overflow:auto}
:is(.usr-modal-head,.usr-modal-foot,.up-head,.up-foot,.project-modal-head,.project-modal-foot,.project-detail-modal-head,.project-detail-modal-foot){flex:0 0 auto}
body.sa-has-shell .sa-content .sa-page-layout{overflow-wrap:anywhere}
body.sa-has-shell .sa-content .sa-page-layout :is(.up-contact,.uv-details,.ec-grid,.sa-detail-meta)>*{min-width:0}

/* Dense identity tables preserve readable columns and scroll horizontally. */
body.sa-has-shell .sa-content .sa-data-scroll .usr-table{min-width:1320px;table-layout:fixed!important}
body.sa-has-shell .sa-content .usr-avatar{flex:0 0 36px}
body.sa-has-shell .sa-content :is(.usr-chip,.usr-email-status,.usr-session-status){white-space:nowrap;overflow-wrap:normal}
body.sa-has-shell .sa-content .usr-table td:nth-child(3){overflow-wrap:anywhere}
body.sa-has-shell .sa-content .sa-material-table td:nth-child(5){white-space:nowrap}
body.sa-has-shell .sa-content .sa-data-table :is(a,button){text-decoration:none}

/* Legacy report markup shares the same cards, controls and responsive rhythm. */
.sa-report-page svg{width:20px;height:20px;flex:0 0 20px}
.sa-report-page .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sa-space-4)}
.sa-report-page>.grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:var(--sa-page-gap)}
.sa-report-page .bg-white{background:var(--sa-surface,#fff);border:1px solid var(--sa-line);border-radius:14px;box-shadow:0 4px 16px rgba(28,39,90,.04)}
.sa-report-page>.grid>.bg-white{padding:var(--sa-space-4)}
.sa-report-page>.grid h3{font-size:var(--sa-text-sm)!important;color:var(--sa-muted);margin:0 0 var(--sa-space-2)}
.sa-report-page>.grid p{font-size:var(--sa-text-xl);font-weight:var(--sa-weight-strong);margin:0}
.sa-report-page form label{display:block;font-size:var(--sa-text-sm);font-weight:var(--sa-weight-medium);margin-bottom:var(--sa-space-2)}
.sa-report-page form :is(input:not([type=hidden]):not([type=checkbox]),select){width:100%;height:var(--sa-control-height);border:1px solid var(--sa-line);border-radius:8px;padding:var(--sa-space-2) var(--sa-space-3);background:#fff}
.sa-report-page .select2-container{width:100%!important}
.sa-report-page .grid>div:has(>button){display:flex;align-items:flex-end}
.sa-report-page :is(.sa-page-header>div,.sa-report-navigation nav){flex-wrap:wrap;}


.sa-report-page>.bg-white>.flex{display:flex;justify-content:space-between;align-items:center;gap:var(--sa-space-4);flex-wrap:wrap;margin-bottom:var(--sa-space-4)}
.sa-report-page>.bg-white>.flex h2{margin:0}
@media(max-width:1024px){.sa-report-page .grid,.sa-report-page>.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sa-report-page .grid,.sa-report-page>.grid{grid-template-columns:minmax(0,1fr)}.sa-report-page .sa-page-header>div{width:100%}}

/* Reusable record details, including legacy definition-list views. */
.sa-record-page .max-w-7xl>.bg-white{background:#fff;border:1px solid var(--sa-line);border-radius:14px;box-shadow:0 4px 16px rgba(28,39,90,.04);margin-bottom:var(--sa-page-gap);overflow:hidden}
.sa-record-page .max-w-7xl>.bg-white>div:first-child{padding:var(--sa-space-4);border-bottom:1px solid var(--sa-line)}
.sa-record-page h3{margin:0}
.sa-record-page dl{margin:0}
.sa-record-page dl>div{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3fr);gap:var(--sa-space-4);padding:var(--sa-space-3) var(--sa-space-4);border-bottom:1px solid var(--sa-line)}
.sa-record-page dl>div:last-child{border-bottom:0}
.sa-record-page dt{font-weight:var(--sa-weight-medium);color:var(--sa-muted)}
.sa-record-page dd{margin:0;overflow-wrap:anywhere}
.sa-record-page .sa-page-header>div:last-child{display:flex;gap:var(--sa-space-2);flex-wrap:wrap}

@media(max-width:760px){.sa-record-page dl>div{grid-template-columns:minmax(0,1fr);gap:var(--sa-space-2)}}

/* Material columns follow the available width, independent of CSV text length. */
body.sa-has-shell .sa-content .sa-material-page .sa-data-scroll .sa-material-table{width:100%;min-width:640px;table-layout:fixed!important}
.sa-material-table .sa-material-col-name{width:22%}
.sa-material-table .sa-material-col-unit{width:18%}
.sa-material-table .sa-material-col-hsn{width:10%}
.sa-material-table .sa-material-col-gst{width:6%}
.sa-material-table .sa-material-col-actions{width:144px}
body.sa-has-shell .sa-content .sa-material-page .sa-data-scroll .sa-material-table td:nth-child(-n+4){white-space:normal;overflow-wrap:anywhere;word-break:normal}
@media(max-width:760px){.sa-material-table .sa-material-col-actions{width:112px}}

/* Prevent the unpaginated master table from flashing before DataTables builds its shell.
   Without JavaScript, the original table remains available. */
html.sa-js .sa-data-card[data-table-initializing]{position:relative;min-height:120px}
html.sa-js .sa-data-card[data-table-initializing] > .datatable{display:none}
html.sa-js .sa-data-card[data-table-initializing]::before{
 content:"Loading records…";display:flex;align-items:center;justify-content:center;
 flex:1;min-height:120px;color:var(--sa-muted,#75809d);font-size:var(--sa-text-base,13px);
}

.sa-master-preview{position:fixed;inset:0;z-index:1900;display:flex;justify-content:flex-end;background:rgba(15,23,42,.42)}
.sa-master-preview__dialog{display:flex;flex-direction:column;width:min(680px,calc(100vw - 44px));height:100dvh;background:#fff;box-shadow:-18px 0 40px rgba(15,23,42,.18)}
.sa-master-preview__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sa-space-4);padding:var(--sa-space-4) var(--sa-space-6);border-bottom:1px solid #e3e6ed}
.sa-master-preview__head p{margin:0 0 var(--sa-space-1);color:#4f46e5;font-size:var(--sa-text-xs);font-weight:var(--sa-weight-strong);text-transform:uppercase;letter-spacing:.08em}
.sa-master-preview__head h2{margin:0;color:#15254a;font-size:var(--sa-text-xl);overflow-wrap:anywhere}
.sa-master-preview__body{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:var(--sa-space-4);padding:var(--sa-space-6);background:#f7f8fc}
.sa-master-preview__card{border:1px solid #e3e6ed;border-radius:10px;background:#fff}
.sa-master-preview__card h3{margin:0;padding:var(--sa-space-3) var(--sa-space-4);border-bottom:1px solid #e3e6ed;font-size:var(--sa-text-base);color:#273153}
.sa-master-preview__card dl{margin:0}.sa-master-preview__card dl>div{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:var(--sa-space-3);padding:var(--sa-space-3) var(--sa-space-4);border-bottom:1px solid #edf0f5}
.sa-master-preview__card dl>div:last-child{border-bottom:0}.sa-master-preview__card dt{color:#75809d;font-size:var(--sa-text-sm)}.sa-master-preview__card dd{margin:0;color:#273153;font-size:var(--sa-text-base);overflow-wrap:anywhere}
.sa-master-preview__foot{display:flex;justify-content:flex-end;padding:var(--sa-space-3) var(--sa-space-6) calc(var(--sa-space-3) + env(safe-area-inset-bottom));border-top:1px solid #e3e6ed}
@media(max-width:720px){.sa-master-preview{align-items:flex-end}.sa-master-preview__dialog{width:100%;height:min(94dvh,100%);border-radius:18px 18px 0 0;overflow:hidden}.sa-master-preview__head{padding:var(--sa-space-4)}.sa-master-preview__body{padding:var(--sa-space-3)}.sa-master-preview__foot{padding-left:var(--sa-space-4);padding-right:var(--sa-space-4)}.sa-master-preview__card dl>div{grid-template-columns:1fr;gap:var(--sa-space-1)}}

/* Direct master-category choices reuse the common action-button theme. */
.sa-master-hub-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sa-space-3,12px)}
.sa-master-hub-option{display:flex;flex-direction:column;gap:var(--sa-space-2,8px);min-width:0;padding:var(--sa-space-3,12px);border:1px solid #e3e6ed;border-radius:var(--sa-radius-md,10px);background:#fff}
.sa-master-hub-note{margin:0 0 var(--sa-space-3,12px);color:var(--sa-muted,#75809d);font-size:var(--sa-text-sm)}
.sa-master-hub-option h3{display:flex;align-items:center;gap:var(--sa-space-2,8px);margin:0;color:var(--sa-text,#273153);font-size:var(--sa-text-base)}
.sa-master-hub-option h3 i{color:var(--sa-primary,#4f46e5)}
.sa-master-hub-option p{margin:0 0 var(--sa-space-1,4px);color:var(--sa-muted,#75809d);font-size:var(--sa-text-sm);line-height:1.5;flex:1}
.sa-master-hub-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sa-space-2,8px)}
.sa-master-hub-actions>.sa-btn{width:100%;min-width:0;white-space:nowrap;box-sizing:border-box}
.sa-master-hub-actions>.sa-btn i{flex-shrink:0}
@media(max-width:480px){.sa-master-hub-options{grid-template-columns:1fr}}

/* Official Saamarth logo: preserve its proportions within existing brand slots. */
.sa-brand-logo{display:block;width:40px;height:40px;flex:0 0 40px;object-fit:contain;border-radius:8px}


/* Canonical raw capture workspace. Button visuals come from action-buttons.css. */

.sa-raw-only-head{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid #e3e6ed;background:#fff;flex-shrink:0}
.sa-raw-only-head .sa-brand-logo{width:32px;height:32px;flex-basis:32px}
.sa-raw-only-head>strong{font-size:var(--sa-text-base)}.sa-raw-only-head>span{margin-left:auto;color:#75809d;font-size:var(--sa-text-sm)}

.sa-raw-notice{margin:0;padding:12px 20px;background:#eef2ff;color:#3730a3}

.sa-raw-upload-page>.sa-page-header{flex:0 0 auto;min-height:0;height:auto;padding:0 0 16px;margin:0;border:0}
.sa-raw-upload-page>.sa-page-header h1{margin:0;font-size:var(--sa-text-title,24px);line-height:1.3}
.sa-raw-card{padding:16px;background:#fff;border:1px solid #e3e6ed;border-radius:12px;min-width:0}
.sa-raw-card h2{margin:0;font-size:var(--sa-text-base,14px)}
.sa-raw-history-card{display:flex;flex-direction:column;flex:1;min-height:0;padding:0;overflow:hidden}
.sa-raw-history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e3e6ed;flex-shrink:0}
.sa-raw-count{display:inline-block;margin-left:6px;padding:3px 7px;background:#eef2ff;color:#4f46e5;border-radius:6px;font-size:var(--sa-text-xs)}
.sa-raw-list{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:16px}
.sa-raw-upload-page .sa-raw-item{display:flex;flex-direction:column;gap:12px;flex-shrink:0;padding:14px;border:1px solid #e3e6ed;border-radius:10px;background:#fff}
.sa-raw-card-photos{display:flex;gap:8px;flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.sa-raw-card-photos>a{scroll-snap-align:start}.sa-raw-card-photos>a{display:block;flex:0 0 72px}.sa-raw-card-photos img{display:block;width:72px;height:80px;object-fit:cover;border-radius:8px;border:1px solid #e3e6ed}
.sa-raw-record-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sa-raw-record-meta strong{font-size:var(--sa-text-base)}.sa-raw-record-meta small{color:#75809d;font-size:var(--sa-text-sm)}.sa-raw-record-meta p{margin:0;flex-basis:100%;overflow-wrap:anywhere}
.sa-raw-status{padding:4px 8px;border-radius:6px;font-size:var(--sa-text-xs);background:#fff7e6;color:#9c6500}.sa-raw-status.is-assigned{background:#eaf8ef;color:#237447}.sa-raw-status.is-discarded{background:#fff1f3;color:#b4233d}
.sa-raw-index-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;border-top:1px solid #edf0f5;padding-top:8px}
.sa-raw-index-actions form{display:flex;margin:0;min-width:0}.sa-raw-index-actions .sa-btn{display:flex;align-items:center;justify-content:center;width:auto;min-width:0;height:36px;min-height:36px;padding:0 10px;box-sizing:border-box;white-space:nowrap}
.sa-raw-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;padding:24px;text-align:center}.sa-raw-history-empty p{margin:0;max-width:260px;color:#75809d;font-size:var(--sa-text-sm);line-height:1.5}
.sa-raw-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid #e3e6ed;flex-shrink:0;font-size:var(--sa-text-sm);color:#75809d}.sa-raw-pagination>span{margin-right:auto}
.sa-raw-page-footer{flex-shrink:0;padding:16px 0 0}.sa-raw-page-footer>.sa-btn{width:100%;min-height:48px}
.sa-raw-refresh{
  position:relative;z-index:4;flex-shrink:0;
  min-height:34px;margin:0 10px 8px;padding:7px 12px;
  border:1px solid #d9ddff;border-radius:999px;
  text-align:center;color:#4f46e5;background:rgba(238,242,255,.96);
  font-size:var(--sa-text-xs);font-weight:700;line-height:1.2;
  opacity:calc(.35 + (var(--pull-progress,0) * .65));
  transform:translate3d(0,var(--pull-y,-12px),0) scale(calc(.94 + (var(--pull-progress,0) * .06)));
  transform-origin:center top;
  transition:opacity .12s ease,background .12s ease,border-color .12s ease,transform .08s linear;
  box-shadow:0 4px 14px rgba(79,70,229,.08);
  will-change:transform,opacity;
}
.sa-raw-refresh-head{position:static;z-index:auto;display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;min-width:24px;min-height:24px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;transform:none!important;opacity:1!important;color:#64748b;overflow:visible}
.sa-raw-refresh-head[hidden]{display:none!important}
.sa-raw-refresh-head .sa-raw-refresh-spinner{display:block;width:12px;height:12px;border:1.8px solid currentColor;border-right-color:transparent;border-radius:50%;transform:rotate(calc(var(--pull-progress,0) * 320deg));transition:transform .08s linear,opacity .12s ease;opacity:calc(.45 + (var(--pull-progress,0) * .55));will-change:transform,opacity}
.sa-raw-refresh-head[data-state="ready"]{color:#4f46e5;background:rgba(79,70,229,.08)}
.sa-raw-refresh-head[data-state="refreshing"]{color:#4f46e5;background:rgba(79,70,229,.08)}
.sa-raw-refresh-head[data-state="refreshing"] .sa-raw-refresh-spinner{animation:sa-raw-refresh-spin .65s linear infinite;opacity:1}
.sa-raw-head-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;margin-left:auto}.sa-raw-head-right>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-raw-refresh[data-state="ready"]{color:#3730a3;background:#e7eaff;border-color:#bfc5ff}
.sa-raw-refresh[data-state="refreshing"]{color:#3730a3;background:#e7eaff;border-color:#bfc5ff;opacity:1}
.sa-raw-refresh[data-state="refreshing"]::after{content:"";display:inline-block;width:10px;height:10px;margin-left:7px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-1px;animation:sa-raw-refresh-spin .7s linear infinite}
.sa-raw-refresh-head[data-state="refreshing"]::after{content:none!important;display:none!important}
.sa-raw-refresh.is-settling{--pull-y:-12px!important;--pull-progress:0!important;transition:transform .18s cubic-bezier(.22,.8,.35,1),opacity .16s ease}
@keyframes sa-raw-refresh-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.sa-raw-refresh{transition:none}.sa-raw-refresh[data-state="refreshing"]::after{animation:none}}
/* Admin mobile shell pull-to-refresh. Kept separate from the capture-only refresher. */
.sa-admin-pull-refresh{
  position:fixed;z-index:1900;top:calc(58px + env(safe-area-inset-top));left:50%;
  min-width:148px;max-width:calc(100vw - 32px);
  padding:7px 13px;border:1px solid #d9ddff;border-radius:999px;
  background:rgba(238,242,255,.97);color:#4f46e5;
  font-size:var(--sa-text-xs);font-weight:700;line-height:1.2;text-align:center;
  box-shadow:0 6px 18px rgba(79,70,229,.12);
  opacity:calc(.35 + (var(--pull-progress,0) * .65));
  transform:translate3d(-50%,var(--pull-y,-18px),0) scale(calc(.94 + (var(--pull-progress,0) * .06)));
  transform-origin:center top;
  transition:opacity .12s ease,background .12s ease,border-color .12s ease,transform .08s linear;
  pointer-events:none;will-change:transform,opacity;
}
.sa-admin-pull-refresh[data-state="ready"]{color:#3730a3;background:#e7eaff;border-color:#bfc5ff}
.sa-admin-pull-refresh[data-state="refreshing"]{color:#3730a3;background:#e7eaff;border-color:#bfc5ff;opacity:1}
.sa-admin-pull-refresh[data-state="refreshing"]::after{content:"";display:inline-block;width:10px;height:10px;margin-left:7px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-1px;animation:sa-raw-refresh-spin .7s linear infinite}
.sa-admin-pull-refresh.is-settling{--pull-y:-18px!important;--pull-progress:0!important;transition:transform .18s cubic-bezier(.22,.8,.35,1),opacity .16s ease}
@media(min-width:761px){.sa-admin-pull-refresh{display:none!important}}
@media(prefers-reduced-motion:reduce){.sa-admin-pull-refresh{transition:none}.sa-admin-pull-refresh[data-state="refreshing"]::after{animation:none}}
.sa-raw-map-dialog,.sa-raw-saved-view,:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog{height:min(88dvh,800px);max-height:100dvh}
.sa-raw-upload-dialog,.sa-raw-map-dialog,.sa-raw-saved-view{width:min(720px,calc(100vw - 40px));padding:0;border:1px solid #e3e6ed;border-radius:16px;overflow:hidden;background:#fff;color:#273153;box-sizing:border-box}
.sa-raw-upload-dialog[open],.sa-raw-map-dialog[open],.sa-raw-saved-view[open]{display:flex;flex-direction:column}
.sa-raw-upload-dialog::backdrop,.sa-raw-map-dialog::backdrop,.sa-raw-saved-view::backdrop{background:rgba(15,23,42,.55)}
.sa-raw-modal-head,.sa-raw-saved-view>header,:where(body:not(.sa-raw-only)) .sa-raw-full-preview>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #e3e6ed;flex-shrink:0}
.sa-raw-modal-head h2{margin:0;font-size:var(--sa-text-lg,18px)}
.sa-raw-upload-form{display:flex;flex-direction:column;flex:1;min-height:0;padding:0;border:0;border-radius:0;overflow:hidden}
.sa-raw-location{display:flex;align-items:center;gap:10px;margin:16px 20px 0;padding:10px 12px;border:1px solid #e3e6ed;border-radius:8px;flex-shrink:0;font-size:var(--sa-text-sm);line-height:1.5;color:#75809d}
.sa-raw-location>#rawLocationStatus{flex:1;min-width:0}.sa-raw-location-check{display:none;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#168047;color:#fff;place-items:center;font-weight:700}.sa-raw-location.is-verified{background:#effaf3;border-color:#b4dfc2;color:#237447}.sa-raw-location.is-verified .sa-raw-location-check{display:grid}
.sa-raw-upload-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:20px;gap:16px}
.sa-raw-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex:1;min-height:160px;border:1px dashed #cfd4e6;border-radius:12px;background:#f7f8fc;text-align:center;padding:20px}
.sa-raw-photo-placeholder svg{width:44px;height:44px;color:#4f46e5}.sa-raw-photo-placeholder span{color:#75809d;font-size:var(--sa-text-sm)}
.sa-raw-photo-batch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sa-raw-photo-batch:empty{display:none}.sa-raw-photo-batch>div{display:flex;flex-direction:column;gap:10px;min-width:0;padding:10px;border:1px solid #e3e6ed;border-radius:10px}
.sa-raw-photo-view{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.sa-raw-photo-view img{display:block;width:100%;height:150px;object-fit:contain;background:#f7f8fc;border-radius:7px}
.sa-raw-photo-caption{display:flex;flex-direction:column;gap:8px;text-align:center}.sa-raw-photo-caption strong{font-size:var(--sa-text-sm);color:#75809d}.sa-raw-photo-caption>.sa-btn{width:100%;min-height:36px}
.sa-raw-submit-bar{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex-shrink:0;padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid #e3e6ed;background:#fff}
#rawUploadStatus{grid-column:1/-1;color:#75809d;font-size:var(--sa-text-sm)}.sa-raw-submit-bar>.sa-btn{width:100%;min-height:48px}.sa-raw-upload-form:not(.has-photos) .sa-raw-submit-bar{display:none}.sa-raw-upload-form:not(.has-photos) #rawUploadStatus{display:none}
#rawUploadProgress{width:100%;flex-shrink:0;accent-color:#4f46e5}.sa-raw-upload-error{margin:0;padding:12px;background:#fff1f3;color:#b4233d;border-radius:8px;font-size:var(--sa-text-sm);line-height:1.5}
:where(body:not(.sa-raw-only)) .sa-raw-camera,:where(body:not(.sa-raw-only)) .sa-raw-full-preview{position:absolute;inset:0;z-index:3;border-radius:14px;display:flex;flex-direction:column;gap:16px;padding:16px;background:#111827;color:#fff;box-sizing:border-box;overflow:hidden}
:where(body:not(.sa-raw-only)) .sa-raw-camera-title{font-weight:700}:where(body:not(.sa-raw-only)) .sa-raw-camera-viewport{position:relative;flex:1 1 0;min-height:0;min-width:0;width:100%;overflow:hidden}:where(body:not(.sa-raw-only)) .sa-raw-camera .sa-raw-camera-viewport video{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:100%;object-fit:contain}:where(body:not(.sa-raw-only)) .sa-raw-full-preview>img{flex:1;min-height:0;width:100%;height:0;object-fit:contain}
:where(body:not(.sa-raw-only)) .sa-raw-camera .sa-raw-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:env(safe-area-inset-bottom);flex-shrink:0}:where(body:not(.sa-raw-only)) .sa-raw-camera .sa-btn{min-height:48px}:where(body:not(.sa-raw-only)) .sa-raw-camera .sa-raw-torch{min-width:92px}:where(body:not(.sa-raw-only)) .sa-raw-camera .sa-raw-torch.is-on{border-color:#fde68a;background:#fef3c7;color:#92400e}:where(body:not(.sa-raw-only)) .sa-raw-full-preview>header{padding:0 0 12px;border-color:#374151}
.sa-raw-saved-view{background:#111827;color:#fff}.sa-raw-saved-view>header,.sa-raw-saved-view>footer{background:#fff;color:#273153}
.sa-raw-saved-image{display:flex;align-items:center;justify-content:center;flex:1;min-height:0}.sa-raw-saved-image img{width:100%;height:100%;object-fit:contain}.sa-raw-saved-image>span{padding:20px;text-align:center}
.sa-raw-saved-view>footer,.sa-raw-map-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e3e6ed;flex-shrink:0}
.sa-raw-map-dialog>footer,:where(body:not(.sa-raw-only)) .sa-raw-saved-view>footer{padding:12px 20px calc(12px + env(safe-area-inset-bottom))}
/* Compact photo dialog bars; centered dialogs need no second safe-area spacer. */
body.sa-raw-only .sa-raw-saved-view>header,body.sa-raw-only .sa-raw-saved-view>footer,body.sa-raw-only .sa-raw-map-dialog>header,body.sa-raw-only .sa-raw-map-dialog>footer{padding:8px 16px}
.sa-raw-map-dialog iframe{width:100%;flex:1;min-height:0;border:0}.sa-raw-map-dialog>footer{justify-content:flex-end}
.sa-raw-upload-page [hidden],.sa-raw-upload-dialog [hidden],.sa-raw-saved-view [hidden],.sa-raw-refresh[hidden]{display:none}
.sa-raw-inbox-card{padding:0;overflow:hidden}
.sa-raw-inbox-card>.sa-raw-filter-toolbar{padding:var(--sa-space-4);margin:0;background:#fafbfe}
.sa-raw-inbox-list{display:flex;flex-direction:column;gap:var(--sa-space-3);padding:var(--sa-space-4)}
.sa-raw-inbox-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px) auto;gap:var(--sa-space-4);align-items:start;padding:var(--sa-space-4);border:1px solid #e3e6ed;border-radius:10px;background:#fff}
.sa-raw-inbox-item .sa-raw-item{display:flex;gap:var(--sa-space-3);min-width:0}
.sa-raw-inbox-item .sa-raw-item>a{flex:0 0 88px;align-self:flex-start;border-radius:8px;overflow:hidden;background:#f6f7fb}
.sa-raw-inbox-item .sa-raw-item img{display:block;width:88px;height:104px;object-fit:cover}
.sa-raw-inbox-item .sa-raw-item>div{min-width:0;display:flex;flex-direction:column;gap:var(--sa-space-2);overflow-wrap:anywhere}
.sa-raw-inbox-record-heading{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:wrap}
.sa-raw-inbox-record-heading .sa-raw-status{flex-basis:auto}
.sa-raw-inbox-item .sa-raw-item small{color:#75809d;font-size:var(--sa-text-sm)}
.sa-raw-inbox-item p{margin:0;overflow-wrap:anywhere}
.sa-raw-inbox-item .sa-raw-assign{min-width:0;padding-left:var(--sa-space-4);border-left:1px solid #edf0f5}
.sa-raw-inbox-item .sa-raw-assign .sa-raw-actions{display:grid;grid-template-columns:auto minmax(0,1fr)}
.sa-raw-inbox-item .sa-raw-assign .sa-btn{justify-content:center;white-space:normal;text-align:center}
.sa-raw-inbox-item .sa-raw-discard,.sa-raw-inbox-item .sa-raw-permanent-delete{margin:0;align-self:end}
.sa-raw-inbox-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sa-space-2);padding:var(--sa-space-8);text-align:center}
.sa-raw-inbox-empty strong{font-size:var(--sa-text-lg)}
.sa-raw-inbox-empty p{margin:0;color:#75809d}
@media(min-width:801px) and (max-width:1200px){
.sa-raw-inbox-item{grid-template-columns:minmax(0,1fr) minmax(240px,1fr)}
.sa-raw-inbox-item .sa-raw-discard,.sa-raw-inbox-item .sa-raw-permanent-delete{grid-column:2;justify-self:end}
}
.sa-raw-actions{display:flex;gap:8px;flex-wrap:wrap}.sa-raw-card .sa-field{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.sa-raw-card select{width:100%;padding:10px;border:1px solid #cfd4e6;border-radius:8px;font:inherit}
.sa-raw-filter-toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #e3e6ed}.sa-raw-filter-toolbar .sa-field{margin:0;flex:1;min-width:180px;max-width:320px}
@media(max-width:800px){
.sa-raw-only-head{padding:10px 12px;gap:8px;flex-wrap:nowrap}.sa-raw-only-head>strong{flex:1;min-width:0;white-space:nowrap}.sa-raw-only-head>span{order:0;width:auto;max-width:42%;min-width:0;margin-left:auto;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-raw-only-content{padding:12px}.sa-raw-upload-page>.sa-page-header{padding-bottom:12px}
.sa-raw-page-footer{padding-top:12px;padding-bottom:env(safe-area-inset-bottom)}
.sa-raw-map-dialog,.sa-raw-saved-view{position:fixed;inset:0;width:calc(100vw - 24px);height:min(82dvh,720px);max-height:calc(100dvh - 32px);margin:auto;border:1px solid #e3e6ed;border-radius:16px}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog{height:min(82dvh,720px);max-height:calc(100dvh - 32px)}
.sa-raw-upload-dialog{position:fixed;inset:0;width:calc(100vw - 24px);margin:auto;border:1px solid #e3e6ed;border-radius:16px}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera,:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-full-preview{position:absolute;inset:0;border-radius:14px}
.sa-raw-modal-head,.sa-raw-saved-view>header{padding:14px 16px}
.sa-raw-upload-body{padding:16px}.sa-raw-location{margin:12px 16px 0}.sa-raw-submit-bar{padding-left:16px;padding-right:16px}
.sa-raw-photo-batch{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-raw-photo-view img{height:150px}
.sa-raw-list{padding:12px}.sa-raw-pagination{padding:10px 12px}.sa-raw-pagination>span{flex-basis:100%}
.sa-raw-card-photos>a{flex-basis:60px}.sa-raw-card-photos img{width:60px;height:68px}
.sa-raw-inbox-item{grid-template-columns:1fr;gap:var(--sa-space-3)}
.sa-raw-inbox-item .sa-raw-assign{padding:var(--sa-space-3) 0 0;border-left:0;border-top:1px solid #edf0f5}
.sa-raw-inbox-item .sa-raw-discard,.sa-raw-inbox-item .sa-raw-permanent-delete{justify-self:end}
.sa-raw-inbox-card>.sa-raw-filter-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--sa-space-3)}
.sa-raw-inbox-card>.sa-raw-filter-toolbar .sa-field{min-width:0;max-width:none}
.sa-raw-inbox-card>.sa-raw-filter-toolbar>.sa-btn{justify-content:center}
.sa-raw-inbox-list{padding:var(--sa-space-3)}
.sa-raw-inbox-item .sa-raw-item>a{flex-basis:72px}
.sa-raw-inbox-item .sa-raw-item img{width:72px;height:88px}
}

.sa-raw-location-name{display:block;flex-basis:100%;font-size:var(--sa-text-sm);line-height:1.5;color:#237447;overflow-wrap:anywhere}

.sa-raw-delete-dialog{position:fixed;inset:0;margin:auto;z-index:15050;width:min(420px,calc(100vw - 32px));padding:0;border:1px solid #e3e6ed;border-radius:14px;background:#fff;color:#273153}
.sa-raw-delete-dialog::backdrop{background:rgba(15,23,42,.55)}
/* Animate only the capture delete confirmation; keep its final geometry stable. */
#rawDeleteDialog[open]{animation:sa-capture-delete-enter 200ms cubic-bezier(.2,.7,.2,1)}
#rawDeleteDialog[open]::backdrop{animation:sa-capture-delete-backdrop 200ms ease-out}
@keyframes sa-capture-delete-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes sa-capture-delete-backdrop{from{background:rgba(15,23,42,0)}to{background:rgba(15,23,42,.55)}}
@media(prefers-reduced-motion:reduce){#rawDeleteDialog[open],#rawDeleteDialog[open]::backdrop{animation:none}}

.sa-raw-delete-body{padding:20px}.sa-raw-delete-body p{margin:0;line-height:1.6;color:#75809d}
.sa-raw-delete-dialog footer{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px;border-top:1px solid #e3e6ed}.sa-raw-delete-dialog footer>.sa-btn{min-height:44px}

.sa-raw-photo-placeholder>#rawFirstPhoto{min-height:44px;min-width:160px;margin-top:4px}

.sa-raw-history-records{flex:1;min-height:0;overscroll-behavior-y:contain}
:where(body:not(.sa-raw-only)) .sa-raw-history-records{overflow-y:auto}.sa-raw-history-records>.sa-raw-list{overflow:visible;flex:none}.sa-raw-history-records>.sa-raw-history-empty{min-height:160px}

.sa-raw-user-filter{display:flex;align-items:center;min-width:0;max-width:60%;margin:0}.sa-raw-user-filter label{flex-shrink:0;margin:0;font-size:var(--sa-text-sm);color:#75809d}.sa-raw-user-filter select{flex:1;min-width:0;height:36px;padding:0 8px;border:1px solid #e3e6ed;border-radius:6px;background:#fff;color:inherit;font:inherit}.sa-raw-user-filter .sa-btn{flex-shrink:0}
@media(max-width:600px){.sa-raw-user-filter{max-width:58%}}

@media(min-width:1025px){.sa-capture-mobile-entry{display:none!important}}

.sa-raw-health{flex:0 0 28px;width:28px;height:28px;padding:0;border:1px solid #d1d9e5;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sa-raw-health::before{content:'';width:10px;height:10px;border-radius:50%;background:#f59e0b}.sa-raw-health[data-state=online]::before{background:#16a34a;box-shadow:0 0 0 3px #dcfce7}.sa-raw-health[data-state=error]::before{background:#dc2626;box-shadow:0 0 0 3px #fee2e2}.sa-raw-delete-body p[role=status]{white-space:pre-line}

.sa-raw-notes{margin-top:12px;padding:12px;border:1px solid #e3e6ed;border-radius:10px;background:#fff}.sa-raw-notes summary{cursor:pointer;font-weight:600}.sa-raw-notes label{display:block;margin:12px 0 6px}.sa-raw-notes textarea{display:block;width:100%;box-sizing:border-box;min-height:80px;padding:10px;border:1px solid #d1d9e5;border-radius:8px;font:inherit;resize:vertical}.sa-raw-note-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.sa-raw-notes p{margin:8px 0 0;color:#75809d;font-size:var(--sa-text-sm);line-height:1.5}

.sa-raw-item audio,.sa-raw-inbox-item audio,.sa-raw-notes audio{display:block;width:100%;max-width:360px;min-width:0;margin-top:8px}.sa-raw-notes audio[hidden]{display:none}

.sa-raw-voice-card{margin-top:10px;padding:12px;border:1px solid #dce1eb;border-radius:12px;background:#f8fafc}
.sa-raw-voice-row{display:flex;align-items:center;gap:10px}
.sa-raw-voice-main{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:126px;height:40px;padding:0 14px;border:0;border-radius:999px;background:#16a34a;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.sa-raw-voice-main:disabled{opacity:.55;cursor:not-allowed}
.sa-raw-voice-card[data-state="recording"] .sa-raw-voice-main{background:#dc2626}
.sa-raw-voice-card[data-state="requesting"] .sa-raw-voice-main,.sa-raw-voice-card[data-state="processing"] .sa-raw-voice-main{background:#94a3b8}
.sa-raw-voice-row>p{margin:0!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:var(--sa-text-sm);font-weight:700;font-variant-numeric:tabular-nums}
.sa-raw-voice-card audio{display:block;width:100%;max-width:none;margin:10px 0 0}
.sa-raw-voice-card audio[hidden]{display:none}
.sa-raw-voice-ready-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.sa-raw-voice-ready-actions[hidden]{display:none}
.sa-raw-voice-ready-actions .sa-btn{min-height:38px}
.sa-raw-voice-card>small{display:block;margin-top:7px;color:#94a3b8;font-size:var(--sa-text-xs)}
.sa-raw-note-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sa-raw-note-options>.sa-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;white-space:normal}.sa-raw-note-options svg{width:20px;height:20px;flex-shrink:0}.sa-raw-notes #rawTextNotes[hidden],.sa-raw-notes #rawAudioPanel[hidden]{display:none}

/* Assigned inbox actions share consistent vertical spacing. */
.sa-raw-inbox-item .sa-raw-assignment-panel{display:flex;flex-direction:column;gap:var(--sa-space-2)}
.sa-raw-inbox-item .sa-raw-assignment-panel>.sa-field{margin-bottom:0}
.sa-raw-inbox-item .sa-raw-assignment-panel .sa-raw-project-change{display:flex;flex-direction:column;gap:var(--sa-space-2);margin-top:var(--sa-space-2);padding:var(--sa-space-3);border:1px solid var(--sa-border,#e3e6ed);border-radius:8px}

/* Raw inbox uses the shared table system with compact evidence and actions. */
.sa-raw-inbox-table-wrap{overflow-x:auto}
.sa-raw-inbox-table{width:100%;min-width:980px}
.sa-raw-table-meta{display:flex;flex-direction:column;gap:var(--sa-space-2);overflow-wrap:anywhere}
.sa-raw-table-photo{display:block;width:58px;margin-bottom:var(--sa-space-2)}
.sa-raw-table-photo img{display:block;width:58px;height:68px;object-fit:cover;border-radius:8px}
.sa-raw-inbox-table td{vertical-align:top}
.sa-raw-inbox-table small{display:block;color:var(--sa-muted,#75809d)}
.sa-raw-inbox-table .sa-raw-status{display:inline-flex;white-space:nowrap}
.sa-raw-table-actions{min-width:280px}
.sa-raw-table-actions .sa-raw-assignment-panel,.sa-raw-table-actions .sa-raw-assign{display:flex;flex-direction:column;gap:var(--sa-space-2)}
.sa-raw-table-actions .sa-raw-discard{margin-top:var(--sa-space-2)}
.sa-raw-table-actions .sa-raw-project-change{margin-top:var(--sa-space-2);padding:var(--sa-space-2);border:1px solid #e3e6ed;border-radius:8px}
.sa-raw-table-actions .sa-field{margin-bottom:0}
.sa-raw-inbox-table audio{width:220px;max-width:100%;margin:0}

/* Keep inbox actions compact rather than stretching the assignment form. */
body.sa-has-shell .sa-content .sa-raw-inbox-table :is(th,td):last-child{width:320px;min-width:280px}
.sa-raw-table-actions>.sa-raw-assign,.sa-raw-table-actions>.sa-raw-assignment-panel{width:100%;max-width:320px}
.sa-raw-table-actions .sa-raw-actions{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:wrap}
.sa-raw-table-actions form{margin-bottom:0}
.sa-raw-table-actions .sa-btn{min-height:32px;padding:var(--sa-space-2) var(--sa-space-3);font-size:var(--sa-text-sm);white-space:nowrap}
.sa-raw-table-actions .sa-field{gap:var(--sa-space-2)}
.sa-raw-table-actions select{max-width:320px}
.sa-raw-table-actions .sa-raw-discard{margin-top:var(--sa-space-2)}
.sa-raw-table-actions details>summary{width:max-content;cursor:pointer;list-style:none}
.sa-raw-table-actions details>summary::-webkit-details-marker{display:none}

.sa-sidebar .sa-nav-link .sa-nav-count{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 var(--sa-space-2);border-radius:999px;background:var(--sa-primary,#4f46e5);color:#fff;font-size:var(--sa-text-xs);font-weight:var(--sa-weight-strong);line-height:1}

/* Single-line inbox actions; project selection lives in the Project column. */
body.sa-has-shell .sa-content .sa-raw-inbox-table .sa-raw-table-actions{width:1%;min-width:max-content;white-space:nowrap}
.sa-raw-inline-actions,.sa-raw-inline-actions .sa-raw-assignment-panel,.sa-raw-inline-actions>.sa-raw-assign,.sa-raw-inline-actions .sa-raw-actions{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:var(--sa-space-2);width:max-content;max-width:none}
.sa-raw-inline-actions .sa-raw-discard{margin:0}
.sa-raw-inline-actions>form,.sa-raw-inline-actions .sa-raw-actions>form{flex:0 0 auto}
.sa-raw-inline-actions .sa-btn{flex:0 0 auto;white-space:nowrap}
.sa-raw-inbox-table .sa-raw-table-meta select{min-width:180px;max-width:230px}
.sa-raw-inbox-table .sa-raw-table-meta>.sa-field{margin:0;gap:0}
body.sa-has-shell .sa-content .sa-raw-inbox-table select[name="project_id"]{box-sizing:border-box;height:var(--sa-control-compact);min-height:var(--sa-control-compact);padding:0 var(--sa-space-3);line-height:normal}
.sa-raw-inline-actions details[open] .sa-raw-project-change{min-width:220px}

.sa-raw-unified-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sa-space-3);flex-wrap:wrap}
.sa-raw-toolbar-right,.sa-raw-toolbar-user-filter{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:nowrap}
.sa-raw-toolbar-user-filter{margin:0}
.sa-raw-toolbar-user-filter .sa-field{margin:0;min-width:160px;width:200px}
.sa-raw-toolbar-user-filter select{height:36px;min-height:36px;padding:var(--sa-space-2)}
.sa-raw-toolbar-user-filter .sa-btn{min-height:36px;white-space:nowrap}
.sa-raw-toolbar-user-filter .sa-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.sa-raw-toolbar-right{width:100%;flex-wrap:wrap}.sa-raw-toolbar-user-filter{flex:1}.sa-raw-toolbar-user-filter .sa-field{width:auto;min-width:120px;flex:1}}

/* One control height throughout the raw inbox toolbar. */
body.sa-has-shell .sa-content .sa-raw-unified-toolbar :is(select,.sa-btn){box-sizing:border-box;height:32px!important;min-height:32px!important;max-height:32px!important;padding-top:0!important;padding-bottom:0!important;line-height:normal}
body.sa-has-shell .sa-content .sa-raw-unified-toolbar .sa-btn{display:inline-flex;align-items:center;justify-content:center}
.sa-raw-unified-toolbar .sa-raw-toolbar-user-filter .sa-field{margin:0;gap:0;align-self:center}

.sa-raw-inbox-table :is(.sa-raw-delivery-note,.sa-raw-delivery-voice){max-width:280px}
.sa-raw-inbox-table :is(.sa-raw-delivery-note,.sa-raw-delivery-voice)>summary{display:inline-flex;align-items:center;gap:var(--sa-space-2);width:max-content;min-height:32px;padding:var(--sa-space-2) var(--sa-space-3);cursor:pointer;list-style:none}
.sa-raw-inbox-table :is(.sa-raw-delivery-note,.sa-raw-delivery-voice)>summary::-webkit-details-marker{display:none}
.sa-raw-delivery-note p,.sa-raw-voice-playback{margin:var(--sa-space-2) 0 0;padding:var(--sa-space-3);border:1px solid #e3e6ed;border-radius:8px;background:#f8fafc}
.sa-raw-delivery-note p{white-space:pre-wrap;overflow-wrap:anywhere}
.sa-raw-inbox-table .sa-raw-voice-playback audio{display:block;width:250px;max-width:100%;height:36px;margin:0}
.sa-raw-voice-playback small{margin-top:var(--sa-space-2)}

.sa-raw-inbox-table .sa-raw-location-action{display:inline-flex;align-items:center;gap:var(--sa-space-2);align-self:flex-start;width:max-content;white-space:nowrap}

#rawAssignDialog form{margin:0}#rawAssignDialog form>footer{display:flex;justify-content:flex-end;gap:var(--sa-space-2);padding:var(--sa-space-4);border-top:1px solid #e3e6ed}#rawAssignDialog .sa-raw-modal-project-field{display:block;margin:var(--sa-space-4) 0 var(--sa-space-2);font-weight:var(--sa-weight-strong)}#rawAssignProject{box-sizing:border-box;width:100%;height:var(--sa-control-height);padding:0 var(--sa-space-3);border:1px solid #cfd4e6;border-radius:8px;background:#fff;font:inherit;color:inherit}

/* Keep the change-project trigger visible while its anchored popover is open. */
.sa-raw-table-actions details[open]:has(.sa-raw-project-change)>summary{display:inline-grid}

/* Office uploads share the theme toolbar; capture-only keeps its mobile footer. */
.sa-raw-history-tools{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:wrap}
.sa-raw-office-upload .sa-raw-history-heading{gap:var(--sa-space-3);flex-wrap:wrap}
.sa-raw-office-upload .sa-raw-history-empty{padding:var(--sa-space-6);min-height:160px}
.sa-raw-upload-help{margin:0;padding:var(--sa-space-3) var(--sa-space-4);color:var(--sa-muted);font-size:var(--sa-text-sm);border-bottom:1px solid var(--sa-border)}
@media(max-width:600px){.sa-raw-history-tools{width:100%;justify-content:space-between}}

/* Office uploads share the application toolbar and table rhythm. */
body.sa-has-shell .sa-content .sa-raw-office-upload>.sa-page-header{justify-content:space-between}
.sa-raw-office-upload .sa-raw-history-heading h2{display:flex;align-items:center;gap:var(--sa-space-2);margin:0;font-size:var(--sa-text-base)}
.sa-raw-office-upload .sa-raw-count{margin:0}
.sa-raw-office-upload .sa-raw-history-tools{margin-left:auto}
.sa-raw-office-upload .sa-raw-user-filter{max-width:none}
.sa-raw-office-upload .sa-raw-user-filter select{box-sizing:border-box;height:var(--sa-control-compact,32px);min-height:var(--sa-control-compact,32px);padding:0 var(--sa-space-3);min-width:160px;border-radius:8px}
.sa-raw-office-upload .sa-raw-history-records{overflow:visible}
.sa-office-upload-scroll{overflow-x:auto}
.sa-office-upload-table{width:100%;min-width:820px}
.sa-office-upload-table td{vertical-align:top}
.sa-office-upload-table .sa-raw-table-meta{display:flex;flex-direction:column;gap:var(--sa-space-2)}
.sa-office-upload-table small{color:var(--sa-muted)}
.sa-office-upload-table audio{width:220px;max-width:100%;height:36px}
.sa-office-photo-cell{display:flex;align-items:center;gap:var(--sa-space-3)}
.sa-office-photo{display:block;flex:0 0 56px;border-radius:8px;overflow:hidden;background:var(--sa-canvas)}
.sa-office-photo img{display:block;width:56px;height:64px;object-fit:cover}
.sa-office-row-actions{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:nowrap;white-space:nowrap}
.sa-office-note{max-width:280px}
.sa-office-note summary{cursor:pointer;color:var(--sa-ink);font-weight:var(--sa-weight-medium)}
.sa-office-note p{margin:var(--sa-space-2) 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:760px){
.sa-raw-office-upload .sa-raw-user-filter select{height:var(--sa-control-compact,32px);min-height:var(--sa-control-height,40px)}
.sa-raw-office-upload .sa-raw-history-tools{margin-left:0;width:100%;justify-content:space-between}
}

.sa-raw-office-upload>.sa-page-header>a{margin-left:auto}
@media(max-width:760px){.sa-raw-office-upload>.sa-page-header>a{margin-left:0}}


/* Capture-user mobile workspace — single scoped authority.
   Capture-only visual rules live here so office/admin upload pages are unaffected. */
@media (max-width:800px){
  body.sa-raw-only{
    background:#f4f6f9!important;
    color:#16243b!important;
  }



  body.sa-raw-only .sa-capture-page-head{
    display:none!important;
  }

body.sa-raw-only .sa-capture-tabs button{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    min-height:42px!important;
    padding:0 8px!important;
    border:0!important;
    background:transparent!important;
    color:#758096!important;
    font:inherit!important;
    font-size:12px!important;
    font-weight:650!important;
    cursor:pointer!important;
  }
body.sa-raw-only .sa-capture-tabs button.is-active{
    color:#10203a!important;
  }
body.sa-raw-only .sa-raw-history-heading>h2{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    margin:0!important;
    color:#1a2942!important;
    font-size:13px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
  body.sa-raw-only .sa-raw-count{
    display:inline-grid!important;
    place-items:center!important;
    min-width:20px!important;
    height:20px!important;
    margin:0!important;
    padding:0 6px!important;
    border-radius:999px!important;
    background:#eceeff!important;
    color:#5146d8!important;
    font-size:10px!important;
  }
  body.sa-raw-only .sa-raw-history-tools{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    margin-left:auto!important;
  }
  body.sa-raw-only .sa-raw-user-filter{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
  }

  body.sa-raw-only .sa-raw-history-records{
    min-height:0!important;
    overflow:visible!important;
    padding:0!important;
    background:transparent!important;
  }
  body.sa-raw-only .sa-raw-list{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding:0 0 10px!important;
    overflow:visible!important;
  }
  body.sa-raw-only .sa-raw-pending-queue[hidden],
  body.sa-raw-only .sa-raw-pending-queue:empty{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body.sa-raw-only .sa-capture-history-card :is(.sa-raw-card-photos>a,.sa-raw-index-actions .sa-btn,.sa-capture-more-photos),
  body.sa-raw-only .sa-capture-tabs button,
  body.sa-raw-only .sa-raw-page-footer>.sa-btn{
    -webkit-tap-highlight-color:transparent!important;

  }
  body.sa-raw-only .sa-capture-history-card :is(.sa-raw-card-photos>a,.sa-raw-index-actions .sa-btn,.sa-capture-more-photos):active,
  body.sa-raw-only .sa-capture-tabs button:active,
  body.sa-raw-only .sa-raw-page-footer>.sa-btn:active{
    transform:scale(.985)!important;
    opacity:.88!important;
  }
  /* Keep the footer visible behind modal backdrops; block background actions. */
  body.sa-raw-only:has(dialog[open]) .sa-raw-page-footer{
    pointer-events:none!important;
  }

  body.sa-raw-only .sa-raw-history-empty,
  body.sa-raw-only .sa-capture-filter-empty{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-height:180px!important;
    padding:24px 16px!important;
    color:#718096!important;
    text-align:center!important;
  }
  body.sa-raw-only .sa-capture-filter-empty[hidden]{
    display:none!important;
  }
  body.sa-raw-only .sa-capture-empty-icon,
  body.sa-raw-only .sa-capture-filter-empty>span{
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    height:44px!important;
    margin-bottom:2px!important;
    border-radius:13px!important;
    background:#eeefff!important;
    color:#5146d8!important;
    font-size:17px!important;
  }
  body.sa-raw-only .sa-raw-history-empty strong,
  body.sa-raw-only .sa-capture-filter-empty strong{
    color:#1a2942!important;
    font-size:13px!important;
  }
  body.sa-raw-only .sa-raw-history-empty p,
  body.sa-raw-only .sa-capture-filter-empty small{
    max-width:240px!important;
    margin:0!important;
    color:#7b8799!important;
    font-size:10px!important;
    line-height:1.45!important;
  }

  body.sa-raw-only .sa-raw-pagination{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:6px!important;
    flex:0 0 auto!important;
    min-height:36px!important;
    padding:7px 2px 0!important;
    border:0!important;
    background:transparent!important;
    color:#8791a3!important;
    font-size:9px!important;
  }
  body.sa-raw-only .sa-raw-pagination>span{
    flex-basis:auto!important;
    margin-right:auto!important;
  }

  body.sa-raw-only .sa-raw-page-footer{
    position:relative!important;
    flex:0 0 auto;
    z-index:1200!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
    border-top:1px solid #e0e5ec!important;
    background:rgba(255,255,255,.97)!important;
    backdrop-filter:blur(10px)!important;
  }
  body.sa-raw-only .sa-raw-page-footer>.sa-btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:min(496px,100%)!important;
    min-height:48px!important;
    margin:0 auto!important;
    border-radius:10px!important;
    font-size:13px!important;
    font-weight:750!important;
  }
  body.sa-raw-only .sa-raw-page-footer>.sa-btn i{
    font-size:13px!important;
  }

  /* Keep pull-to-refresh compact in the title bar; no duplicate content indicator. */
  body.sa-raw-only .sa-raw-refresh-head[data-state="pulling"] .sa-raw-refresh-spinner{
    transform:rotate(calc(var(--pull-progress,0) * 420deg))!important;
  }
  body.sa-raw-only .sa-raw-refresh-head[data-state="ready"]{
    transform:scale(1.08)!important;
  }
  body.sa-raw-only .sa-raw-refresh-head{
    flex:0 0 24px!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
    margin:0!important;
    padding:0!important;
  }
}

/* Static location map fallback avoids iframe/embed blocking in admin browsers. */
.sa-raw-static-map-wrap{flex:1;min-height:0;background:#eef2f7;display:flex;align-items:stretch;justify-content:stretch;overflow:hidden}
.sa-raw-static-map{display:block;width:100%;height:100%;min-height:320px;object-fit:cover;background:#eef2f7}
@media(max-width:800px){.sa-raw-static-map{min-height:260px}}


/* Interactive capture location map for desktop and mobile. */
.sa-raw-map-canvas-wrap{position:relative;display:flex;flex:1;min-height:320px;background:#eef2f7;overflow:hidden}
.sa-raw-map-canvas{width:100%;height:100%;min-height:320px;background:#eef2f7}
.sa-raw-map-canvas[hidden]{display:none}
.sa-raw-map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;background:#f8fafc;color:var(--sa-ink,#273153)}
.sa-raw-map-fallback[hidden]{display:none}
.sa-raw-map-fallback>i{font-size:28px;color:#4f46e5}
.sa-raw-map-fallback>span{font-size:var(--sa-text-sm);color:var(--sa-muted,#75809d)}
.sa-raw-map-dialog .leaflet-container{font-family:var(--sa-font-family)}
@media(max-width:800px){
  .sa-raw-map-canvas-wrap,.sa-raw-map-canvas{min-height:260px}
}


/* Location modal: address is a compact header row; map owns the remaining height. */
.sa-raw-map-dialog>#rawMapAddress{
  flex:0 0 auto;
  flex-basis:auto;
  min-height:0;
  padding:10px 16px!important;
}
.sa-raw-map-dialog>.sa-raw-map-canvas-wrap{
  flex:1 1 auto;
  min-height:0;
}
.sa-raw-map-dialog .sa-raw-map-canvas{
  width:100%;
  height:100%;
  min-height:0;
}
@media(max-width:800px){
  .sa-raw-map-dialog>.sa-raw-map-canvas-wrap,
  .sa-raw-map-dialog .sa-raw-map-canvas{
    min-height:0;
  }
}

/* Purchase entry delivery evidence: compact themed thumbnails and audit timeline.
   Kept in the shared stylesheet because Chalan detail can be injected into a drawer. */
.sa-evidence-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:var(--sa-space-3)!important;padding:var(--sa-space-4)!important}
.sa-evidence-photos{display:flex;align-items:center;gap:var(--sa-space-2);flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}
.sa-evidence-thumb{position:relative;display:block!important;flex:0 0 56px!important;width:56px!important;height:52px!important;max-width:56px!important;max-height:52px!important;padding:0!important;overflow:hidden;border:1px solid var(--sa-line,#dce1ee);border-radius:8px;background:var(--sa-soft,#f8fafc);box-shadow:0 1px 2px rgba(15,23,42,.05);text-decoration:none}
.sa-evidence-thumb:hover{border-color:#b8c4d6;box-shadow:0 3px 8px rgba(15,23,42,.08)}
.sa-evidence-thumb>img{display:block!important;width:56px!important;height:52px!important;max-width:56px!important;max-height:52px!important;object-fit:cover!important;margin:0!important;padding:0!important;border:0!important}
.sa-evidence-thumb>span{position:absolute;left:4px;right:4px;bottom:4px;overflow:hidden;padding:2px 4px;border-radius:4px;background:rgba(15,23,42,.78);color:#fff;font-size:9px;font-weight:700;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.sa-evidence-overview{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:var(--sa-space-3);padding:var(--sa-space-3) var(--sa-space-4);border-top:1px solid var(--sa-line,#e7eaf0)}
.sa-evidence-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sa-evidence-meta>div{display:grid;gap:3px;min-width:0}.sa-evidence-meta span{color:var(--sa-muted,#75809d);font-size:var(--sa-text-xs);font-weight:600}.sa-evidence-meta strong{display:flex;align-items:center;gap:6px;color:var(--sa-ink,#273153);font-size:var(--sa-text-sm);min-width:0}
.sa-evidence-location{position:relative;display:block;height:92px;overflow:hidden;border:1px solid var(--sa-line,#dce1ee);border-radius:10px;background:var(--sa-soft,#eef2f7);color:var(--sa-ink,#172033);text-decoration:none}
.sa-evidence-location iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}
.sa-evidence-location>span{position:absolute;left:6px;right:6px;bottom:6px;display:grid;grid-template-columns:auto 1fr;gap:0 6px;align-items:center;padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(15,23,42,.12)}
.sa-evidence-location>span i{grid-row:1/3;color:#16a34a}.sa-evidence-location>span strong,.sa-evidence-location>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-evidence-location>span strong{font-size:10px}.sa-evidence-location>span small{color:var(--sa-muted,#75809d);font-size:9px}
.sa-evidence-timeline{border-top:1px solid var(--sa-line,#e7eaf0);padding:var(--sa-space-3) var(--sa-space-4) var(--sa-space-4)}.sa-evidence-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.sa-evidence-timeline-head span{color:var(--sa-muted,#75809d);font-size:var(--sa-text-xs)}
.sa-evidence-events{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding-left:2px}
.sa-evidence-event{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:54px;padding:8px 10px 8px 0;border:0;border-radius:0;background:transparent}
.sa-evidence-event:not(:last-child)::after{content:"";position:absolute;left:15px;top:38px;bottom:-8px;width:1px;background:#dbe2ea}
.sa-evidence-event>i{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border:1px solid #d9ddff;border-radius:50%;background:#eef2ff;color:var(--sa-primary,#4f46e5);font-size:11px;box-shadow:0 0 0 4px #fff}
.sa-evidence-event>div{display:grid;gap:2px;min-width:0;padding:7px 10px;border:1px solid var(--sa-line,#e7eaf0);border-radius:8px;background:var(--sa-soft,#fafbfc)}
.sa-evidence-event strong{font-size:var(--sa-text-sm);line-height:1.25}.sa-evidence-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sa-muted,#75809d);font-size:var(--sa-text-xs)}
.sa-evidence-event time{justify-self:end;color:#475569;font-size:var(--sa-text-xs);white-space:nowrap;font-variant-numeric:tabular-nums}
.sa-evidence-event.is-verified>i{border-color:#b9e8ce;background:#dcfce7;color:#168057}.sa-evidence-event.is-verified>div{border-color:#c8ead7;background:#f0fbf5}
@media(max-width:760px){.sa-evidence-head{align-items:flex-start!important;flex-direction:column}.sa-evidence-photos{justify-content:flex-start}.sa-evidence-overview{grid-template-columns:1fr}.sa-evidence-meta{grid-template-columns:1fr}.sa-evidence-location{height:120px}.sa-evidence-event{grid-template-columns:32px minmax(0,1fr);align-items:start}.sa-evidence-event time{grid-column:2;justify-self:start;margin-top:-5px;color:var(--sa-muted,#75809d)}}

/* Purchase-entry evidence modal; scoped so capture/mobile UI remains untouched. */
body.sa-evidence-modal-open{overflow:hidden!important}
/* Shared native dialog centering — same viewport behavior across themed dialogs. */
dialog.sa-dialog-centered{
  position:fixed!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
}
dialog.sa-dialog-centered[open]{
  margin:0!important;
}

.sa-evidence-modal{position:fixed;inset:0;z-index:15000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(15,23,42,.58);backdrop-filter:blur(2px)}
.sa-evidence-modal__dialog{display:flex;flex-direction:column;width:min(880px,calc(100vw - 48px));height:min(86vh,780px);min-height:360px;overflow:hidden;border:1px solid var(--sa-line,#dce1ee);border-radius:14px;background:var(--sa-surface,#fff);box-shadow:0 24px 70px rgba(15,23,42,.28)}
.sa-evidence-modal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;padding:14px 16px;border-bottom:1px solid var(--sa-line,#e3e6ed);background:#fff}
.sa-evidence-modal__head>div{min-width:0}.sa-evidence-modal__kicker{display:block;margin-bottom:2px;color:var(--sa-primary,#4f46e5);font-size:10px;font-weight:700;letter-spacing:.08em}.sa-evidence-modal__head h2{margin:0;color:var(--sa-ink,#273153);font-size:16px;font-weight:700;line-height:1.3}
.sa-evidence-modal__close{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--sa-line,#dce1ee);border-radius:8px;background:#fff;color:#475569;cursor:pointer}.sa-evidence-modal__close:hover{background:#f8fafc;color:#111827}
.sa-evidence-modal__body{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;padding:14px;background:#111827}
.sa-evidence-modal__body img{display:block;max-width:100%;max-height:100%;width:auto!important;height:auto!important;object-fit:contain;border-radius:8px;background:#0f172a}
.sa-evidence-modal__body.is-map{padding:0;background:#e2e8f0}
.sa-evidence-modal__body.is-map iframe{display:block;width:100%;height:100%;min-height:420px;border:0;background:#e2e8f0}
.sa-evidence-modal__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding:12px 16px;border-top:1px solid var(--sa-line,#e3e6ed);background:#fff;color:var(--sa-muted,#75809d);font-size:var(--sa-text-xs)}
.sa-evidence-modal__foot>span{display:inline-flex;align-items:center;gap:6px}.sa-evidence-modal__foot>span i{color:#16a34a}
@media(max-width:760px){.sa-evidence-modal{padding:10px}.sa-evidence-modal__dialog{width:calc(100vw - 20px);height:min(90dvh,760px);border-radius:12px}.sa-evidence-modal__body{padding:8px}.sa-evidence-modal__foot{align-items:stretch;flex-direction:column}.sa-evidence-modal__foot .sa-btn{width:100%;justify-content:center}}


/* Chalan capture purchase form — centralized page styles.
   Selectors are page/component scoped; capture-only mobile UI is intentionally untouched. */
.sa-chalan-workspace__layout.has-capture-evidence{display:block!important}.has-capture-evidence>.sa-chalan-workspace__main{width:100%!important;max-width:none!important;padding:var(--sa-space-3) var(--sa-space-4)!important}
.sa-capture-evidence-compact{display:flex;align-items:center;gap:10px;margin:0 var(--sa-space-4) 8px;padding:8px 10px;border:1px solid #dbe2ea;border-radius:10px;background:#f8fafc}
.sa-capture-compact-copy{display:grid;flex:0 0 205px;min-width:0;gap:1px;line-height:1.2}.sa-capture-compact-copy strong{color:#172033;font-size:var(--sa-text-sm)}.sa-capture-compact-copy small{color:#64748b;font-size:var(--sa-text-xs);white-space:nowrap}.sa-capture-compact-copy span{color:#64748b;font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-capture-role-list{display:flex;align-items:center;flex:1;min-width:0;gap:8px;flex-wrap:nowrap}
.sa-capture-role-card{display:flex;align-items:center;gap:7px;min-width:0;padding:4px 6px;border:1px solid #dbe2ea;border-radius:8px;background:#fff}
.sa-capture-thumb{position:relative;flex:0 0 44px;width:44px;height:44px;padding:0;overflow:hidden;border:1px solid #cbd5e1;border-radius:7px;background:#fff;cursor:zoom-in}.sa-capture-thumb img{display:block;width:100%;height:100%;object-fit:cover}.sa-capture-thumb span{position:absolute;right:2px;bottom:2px;display:grid;width:17px;height:17px;place-items:center;border-radius:5px;background:rgba(15,23,42,.76);color:#fff;font-size:9px}
.sa-capture-role-options{display:inline-flex;align-items:center;gap:3px;flex-wrap:nowrap}.sa-capture-role-options label{display:inline-flex;align-items:center;gap:4px;margin:0;padding:5px 7px;border:1px solid #dbe2ea;border-radius:6px;background:#fff;color:#334155;font-size:10px;font-weight:700;line-height:1;cursor:pointer;white-space:nowrap}.sa-capture-role-options label:has(input:checked){border-color:#a5b4fc;background:#eef2ff;color:#4338ca}.sa-capture-role-options input{width:13px;height:13px;margin:0;accent-color:#4f46e5}
.sa-capture-role-title{display:none}
.sa-capture-vehicle-link{flex:0 0 auto;height:34px;border:1px solid #dbe2ea;border-radius:7px;background:#fff;padding:0 9px;color:#334155;font-size:var(--sa-text-xs);font-weight:700;cursor:pointer}
.sa-support-head{gap:12px;align-items:center}.sa-support-head-media{display:flex;align-items:center;gap:8px;margin-left:auto}.sa-support-head-thumb{display:flex;align-items:center;gap:7px;min-width:116px;height:42px;padding:4px 8px 4px 4px;border:1px solid #dbe2ea;border-radius:9px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04);cursor:zoom-in;color:#334155;text-align:left}.sa-support-head-thumb:hover{border-color:#b8c4d6;background:#f8fafc}.sa-support-head-thumb[hidden]{display:none!important}.sa-support-head-thumb img{display:block;width:34px;height:32px;flex:0 0 34px;border-radius:6px;object-fit:cover;background:#eef2f7}.sa-support-head-thumb__copy{display:flex;min-width:0;flex-direction:column;line-height:1.15}.sa-support-head-thumb__copy strong{font-size:10px;color:#172033;white-space:nowrap}.sa-support-head-thumb__copy small{margin-top:2px;color:#64748b;font-size:9px;white-space:nowrap}.sa-capture-preview-tag{position:absolute;left:12px;top:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:rgba(15,23,42,.82);color:#fff;font-size:11px;font-weight:700;box-shadow:0 3px 10px rgba(15,23,42,.22)}.sa-chalan-support-grid.has-material-photo{grid-template-columns:repeat(4,minmax(0,1fr))!important}@media(max-width:1100px){.sa-chalan-support-grid.has-material-photo{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:700px){.sa-support-head{align-items:flex-start;flex-direction:column}.sa-support-head-media{width:100%;margin-left:0}.sa-support-head-thumb{flex:1;min-width:0}.sa-chalan-support-grid.has-material-photo{grid-template-columns:1fr!important}}.has-capture-evidence .sa-chalan-reference-grid,.has-capture-evidence .sa-chalan-support-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.has-capture-evidence .sa-chalan-item-card__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:10px 12px;align-items:end}
.has-capture-evidence .sa-chalan-item-card__grid>.sa-field{min-width:0;margin:0}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--material{grid-column:span 6}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--sub-item{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--unit{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--qty{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--rate{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--line-total{grid-column:span 6}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--description{grid-column:span 6}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--hsn{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--gst{grid-column:span 3}
.has-capture-evidence .sa-chalan-item-card__grid .sa-field--line-total .line-total-display{display:flex;align-items:center;justify-content:flex-end;min-height:40px;padding:0 12px;border-radius:8px}
@media(max-width:1100px){.has-capture-evidence .sa-chalan-item-card__grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}.has-capture-evidence .sa-chalan-item-card__grid .sa-field--material{grid-column:span 6}.has-capture-evidence .sa-chalan-item-card__grid :is(.sa-field--sub-item,.sa-field--unit,.sa-field--qty,.sa-field--rate,.sa-field--hsn,.sa-field--gst){grid-column:span 3}.has-capture-evidence .sa-chalan-item-card__grid :is(.sa-field--line-total,.sa-field--description){grid-column:span 6}}
.sa-capture-preview-modal[hidden]{display:none!important}.sa-capture-preview-modal{position:fixed;top:0;left:0;bottom:0;width:max(0px,calc(100vw - min(960px,calc(100vw - 44px))));z-index:1890;display:flex;align-items:center;justify-content:center;padding:var(--sa-space-4);background:#eef1f6;pointer-events:none}.sa-capture-preview-dialog{position:relative;display:flex;width:100%;height:100%;max-width:760px;max-height:calc(100vh - 36px);align-items:center;justify-content:center;overflow:hidden;border:1px solid #dbe2ea;border-radius:12px;background:#111827;box-shadow:0 12px 32px rgba(15,23,42,.16);pointer-events:auto}.sa-capture-preview-dialog img{display:block;width:100%;height:100%;padding:var(--sa-space-2);object-fit:contain}.sa-capture-preview-close{position:absolute;top:10px;right:10px;z-index:2;display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:9px;background:rgba(255,255,255,.9);color:#111827;cursor:pointer}@media(max-width:1100px){.sa-capture-evidence-compact{align-items:flex-start;flex-wrap:wrap}.sa-capture-compact-copy{flex:1 1 190px}.sa-capture-role-list{flex:1 1 100%;flex-wrap:wrap}.sa-capture-role-card{flex:1 1 210px}}
@media(max-width:900px){.sa-capture-preview-modal{inset:0;width:100vw;z-index:13990;padding:var(--sa-space-2);background:rgba(15,23,42,.72);pointer-events:auto}.sa-capture-preview-dialog{width:100%;height:100%;max-width:none;max-height:none}.sa-capture-evidence-compact{margin:0 var(--sa-space-2) var(--sa-space-2)}.sa-capture-vehicle-link{font-size:0}.sa-capture-vehicle-link i{font-size:var(--sa-text-base)}.has-capture-evidence .sa-chalan-reference-grid,.has-capture-evidence .sa-chalan-support-grid,.has-capture-evidence .sa-chalan-item-card__grid{grid-template-columns:1fr!important}.sa-capture-preview-modal{padding:var(--sa-space-2)}.sa-capture-preview-dialog{width:100%;height:82vh}}

/* Raw Chalan Inbox — centralized page styles. */
/* Raw inbox: compact desktop table/action density without changing shared controls elsewhere. */
@media (min-width: 901px) {
  .sa-raw-inbox-table th,
  .sa-raw-inbox-table td {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .sa-raw-inbox-table .sa-raw-table-meta {
    gap: 4px;
  }

  .sa-raw-inbox-table .sa-raw-table-photo {
    width: 48px;
    margin-bottom: 4px;
  }

  .sa-raw-inbox-table .sa-raw-table-photo img {
    width: 48px;
    height: 56px;
    border-radius: 6px;
  }

  .sa-raw-inbox-table .sa-raw-table-actions {
    min-width: 250px !important;
  }

  body.sa-has-shell .sa-content .sa-raw-inbox-table :is(th,td):last-child {
    width: 280px;
    min-width: 250px;
  }

  .sa-raw-inbox-table .sa-raw-inline-actions,
  .sa-raw-inbox-table .sa-raw-inline-actions .sa-raw-actions {
    gap: 6px;
  }

  .sa-raw-inbox-table .sa-raw-location-action,
  .sa-raw-inbox-table :is(.sa-raw-delivery-note,.sa-raw-delivery-voice) > summary {
    min-height: 28px !important;
    height: 28px;
    padding: 0 9px !important;
    border-radius: 6px;
    font-size: var(--sa-text-xs);
    line-height: 1;
  }

  .sa-raw-inbox-table .sa-raw-row-actions{
    justify-content:flex-end;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details{
    position:relative;
  }

  /* Keep project reassignment as a compact anchored popover instead of
     expanding inside the action-cell flow. */
  .sa-raw-inbox-table .sa-raw-row-actions details[open]{
    z-index:40;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change{
    position:absolute;
    top:34px;
    right:0;
    z-index:50;
    display:grid !important;
    width:250px !important;
    min-width:250px !important;
    max-width:250px !important;
    gap:10px !important;
    margin:0 !important;
    padding:12px !important;
    border:1px solid #dfe4ec !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:0 12px 30px rgba(15,23,42,.16);
    white-space:normal;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change .sa-field{
    display:grid;
    gap:6px;
    margin:0;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change .sa-field > span{
    font-size:var(--sa-text-xs);
    font-weight:700;
    color:#5f6983;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change select{
    width:100%;
    min-width:0;
    height:36px;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change .sa-raw-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    width:100% !important;
    gap:8px !important;
  }
  .sa-raw-inbox-table .sa-raw-row-actions details[open] > .sa-raw-project-change .sa-btn{
    width:100%;
    min-width:0;
    justify-content:center;
  }

  .sa-raw-inbox-table .sa-raw-status {
    padding: 4px 8px;
    font-size: var(--sa-text-xs);
    line-height: 1.15;
  }
  
  .sa-raw-inbox-table .sa-raw-geo-cell{min-width:130px}
}
.sa-raw-select-col{width:42px!important;min-width:42px!important;text-align:center!important}.sa-raw-select-col input{width:16px;height:16px;accent-color:#4f46e5}.sa-raw-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sa-raw-delete-dialog .sa-raw-delete-body .sa-field{display:grid;gap:5px;margin-top:12px}.sa-raw-delete-dialog .sa-raw-delete-body .sa-field span{font-size:var(--sa-text-xs);font-weight:700;color:#5f6983}.sa-raw-delete-dialog .sa-raw-delete-body .sa-field input{height:40px;border:1px solid #d9deec;border-radius:8px;padding:0 10px}
.sa-geo-badge{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:3px 7px;border:1px solid #dfe4ec;border-radius:7px;background:#f8fafc;color:#667085;font-size:var(--sa-text-xs);font-weight:700;line-height:1.15;white-space:nowrap}
.sa-geo-badge.is-inside{border-color:#b9e8ce;background:#eefbf4;color:#168057}
.sa-geo-badge.is-outside{border-color:#ffcbd3;background:#fff3f5;color:#b4233d}
.sa-geo-badge.is-unavailable{border-color:#f1d8a9;background:#fff9eb;color:#946200}
.sa-geo-badge.is-pending,.sa-geo-badge.is-muted{color:#7d879d;background:#f8fafc}

  /* Capture / delivery evidence is a compact action cluster, not a button stack. */
  .sa-raw-delivery-meta{min-width:185px;gap:7px!important}
  .sa-raw-capture-title{display:flex;flex-direction:column;gap:3px;min-width:0}
  .sa-raw-capture-title>strong{line-height:1.25}
  .sa-raw-capture-title>span{display:flex;align-items:center;gap:5px;min-width:0;color:var(--sa-muted,#75809d);font-size:var(--sa-text-xs);line-height:1.25}
  .sa-raw-capture-title>span i{flex:0 0 auto;color:#16a34a;font-size:10px}
  .sa-raw-capture-title>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sa-raw-evidence-actions{position:relative;display:flex;align-items:center;gap:5px;flex-wrap:wrap}
  .sa-raw-evidence-btn,.sa-raw-evidence-missing{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:26px;min-height:26px;padding:0 8px;border:1px solid #dbe1ea;border-radius:999px;background:#fff;color:var(--sa-ink,#273153);font-size:var(--sa-text-xs);font-weight:600;line-height:1;text-decoration:none;white-space:nowrap}
  .sa-raw-evidence-btn{cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
  .sa-raw-evidence-btn:hover{border-color:#b9c2d0;background:#f8fafc;box-shadow:0 1px 2px rgba(15,23,42,.05)}
  .sa-raw-evidence-btn i{font-size:10px;color:#5b6477}
  .sa-raw-evidence-missing{border-style:dashed;background:#f8fafc;color:#9aa3b2;font-weight:500}
  .sa-raw-evidence-actions details{position:relative;max-width:none!important}
  .sa-raw-evidence-actions details>summary{list-style:none}
  .sa-raw-evidence-actions details>summary::-webkit-details-marker{display:none}
  .sa-raw-evidence-actions details[open]>summary{border-color:#a5b4fc;background:#eef2ff;color:#3730a3}
  .sa-raw-evidence-actions details[open]>summary i{color:#4f46e5}
  .sa-raw-evidence-actions .sa-raw-delivery-note>p,
  .sa-raw-evidence-actions .sa-raw-voice-playback{position:absolute;z-index:30;left:0;top:31px;width:260px;max-width:min(260px,70vw);margin:0;padding:10px;border:1px solid #dbe1ea;border-radius:9px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.14)}
  .sa-raw-evidence-actions .sa-raw-delivery-note>p{font-size:var(--sa-text-sm);line-height:1.45}
  .sa-raw-evidence-actions .sa-raw-voice-playback audio{width:240px;max-width:100%;height:34px}
  .sa-raw-evidence-actions .sa-raw-voice-playback small{margin-top:5px;font-size:var(--sa-text-xs)}

/* Geo Fence Control — centralized page styles. */
.geo-control-page{height:auto!important;min-height:0}.geo-control-card{flex:0 0 auto!important;min-height:0!important}
.geo-control-toolbar{display:flex;justify-content:space-between;gap:var(--sa-space-3);align-items:end}.geo-control-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.geo-project-filter{min-width:260px}.geo-project-filter .sa-field,.geo-fence-search{display:grid;gap:5px}.geo-project-filter .sa-field span,.geo-fence-search>span{font-size:var(--sa-text-xs);font-weight:700;color:#65708a}.geo-project-filter select,.geo-fence-search input{height:36px!important;min-height:36px!important;border:1px solid #d9deec;border-radius:8px;padding:0 10px;background:#fff}.geo-fence-search{width:230px}
.geo-control-summary{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#6b758d;font-size:var(--sa-text-xs)}.geo-control-summary>span{display:inline-flex;gap:4px;align-items:center;padding:5px 8px;border:1px solid #e1e5ed;border-radius:999px;background:#fff}.geo-control-summary .is-good{color:#168057;background:#f0fbf5;border-color:#c8ead7}.geo-control-summary .is-alert{color:#b4233d;background:#fff3f5;border-color:#ffcbd3}.geo-control-summary .is-warn{color:#946200;background:#fff9eb;border-color:#f1d8a9}
.geo-project-name{display:flex;align-items:center;gap:6px}.geo-project-name small{display:inline-flex;padding:2px 5px;border-radius:5px;background:#f2f4f8;color:#6b758d;font-size:var(--sa-text-xs);font-weight:700}
.geo-zone-copy{display:grid;gap:4px}.geo-zone-name{display:inline-flex;align-items:center;gap:7px;font-weight:700}.geo-overlap-warning{display:inline-flex;align-items:center;gap:5px;color:#b54708;font-size:var(--sa-text-xs);font-weight:700}
.geo-status-toggle{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:3px 0;border:0;border-radius:0;background:transparent;color:#667085;font:inherit;font-size:var(--sa-text-xs);font-weight:700;cursor:pointer}.geo-status-toggle>span{position:relative;flex:0 0 30px;width:30px;height:18px;border-radius:999px;background:#98a2b3;transition:background-color .16s ease}
.geo-status-toggle>span::after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.18);transition:transform .16s ease}
.geo-status-toggle.is-active>span::after{transform:translateX(12px)}
.geo-status-toggle:focus-visible{outline:3px solid rgba(79,70,229,.25);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.geo-status-toggle>span,.geo-status-toggle>span::after{transition:none}}.geo-status-toggle.is-active{background:transparent;color:#168057}.geo-status-toggle.is-active>span{background:#16a34a}.geo-status-toggle:disabled{opacity:.6;cursor:wait}.geo-status-detail,.geo-user-meta{display:grid;gap:3px}.geo-status-detail small,.geo-user-meta small{color:#7d879d;font-size:var(--sa-text-xs);white-space:nowrap}.geo-user-meta strong{font-size:var(--sa-text-sm);font-weight:700}
.geo-reporting{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.geo-reporting span{display:inline-flex;gap:4px;padding:3px 6px;border-radius:6px;background:#f8fafc;color:#667085;font-size:var(--sa-text-xs)}.geo-reporting .is-inside{background:#eefbf4;color:#168057}.geo-reporting .is-outside{background:#fff3f5;color:#b4233d}
.geo-modal{position:fixed;z-index:1180;inset:0;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.52)}.geo-modal.is-open{display:flex}.geo-dialog{width:min(1040px,100%);height:min(760px,calc(100dvh - 30px));display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 24px 64px rgba(15,23,42,.28)}.geo-dialog form{display:flex;flex-direction:column;height:100%}.geo-modal-head,.geo-modal-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid #e4e8f1}.geo-modal-head h2{margin:0;font-size:var(--sa-text-lg)}.geo-modal-head p{margin:4px 0 0;color:#71809c;font-size:var(--sa-text-sm)}.geo-modal-body{display:grid;grid-template-columns:250px 1fr;flex:1;min-height:0}.geo-sidebar{display:flex;flex-direction:column;gap:12px;padding:16px;border-right:1px solid #e4e8f1;background:#fafbfe}.geo-sidebar .sa-field{display:grid;gap:6px}.geo-sidebar input[type=text]{height:38px;border:1px solid #d9deec;border-radius:8px;padding:0 10px}.geo-toggle{display:flex;gap:10px;padding:12px;border:1px solid #dfe4ef;border-radius:10px;background:#fff}.geo-toggle span{display:grid}.geo-toggle small{color:#75809a}.geo-tools{display:grid;gap:8px}.geo-tools .sa-btn{justify-content:flex-start}.geo-count{display:flex;align-items:baseline;gap:6px;margin-top:auto}.geo-count strong{font-size:26px;color:#4f46e5}.geo-error{padding:8px 10px;border:1px solid #ffcbd3;border-radius:8px;background:#fff3f5;color:#b4233d;font-size:var(--sa-text-sm)}.geo-error[data-kind="loading"]{border-color:#d9ddff;background:#eef2ff;color:#4f46e5}.geo-map-wrap{position:relative;min-width:0;min-height:0}.geo-map{width:100%;height:100%;min-height:480px}.geo-draw-layer{position:absolute;z-index:450;inset:0;border:0;background:transparent;cursor:crosshair}.geo-draw-layer[hidden]{display:none}.geo-draw-layer span{position:absolute;top:12px;left:50%;transform:translateX(-50%);padding:7px 10px;border:1px solid #d9deec;border-radius:8px;background:rgba(255,255,255,.94);color:#4f46e5;font-size:var(--sa-text-xs);font-weight:700;pointer-events:none}.geo-modal-foot{align-items:center;justify-content:flex-end;border-top:1px solid #e4e8f1;border-bottom:0}
@media(max-width:900px){.geo-control-toolbar{align-items:stretch;flex-direction:column}.geo-control-filters{align-items:stretch}.geo-project-filter,.geo-fence-search{width:100%;min-width:0}.geo-control-summary{justify-content:flex-start}}
@media(max-width:760px){.geo-modal{align-items:flex-end;padding:0}.geo-dialog{width:100%;height:96dvh;border-radius:18px 18px 0 0}.geo-modal-body{grid-template-columns:1fr;grid-template-rows:auto minmax(380px,1fr);overflow:auto}.geo-sidebar{border-right:0;border-bottom:1px solid #e4e8f1}.geo-map{min-height:380px}}


/* Canonical application shell v2 — single final authority for sidebar/header. */
:root{--sa-shell-sidebar:228px;--sa-shell-sidebar-collapsed:72px;--sa-shell-header:60px}

body.sa-has-shell{height:100dvh!important;overflow:hidden!important}
body.sa-has-shell>.sa-shell:not(.sa-project-shell){position:fixed!important;inset:0!important;display:grid!important;grid-template-columns:var(--sa-shell-sidebar) minmax(0,1fr)!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;background:#f6f7fb!important}
body.sa-shell-collapsed>.sa-shell:not(.sa-project-shell){grid-template-columns:var(--sa-shell-sidebar-collapsed) minmax(0,1fr)!important}

body.sa-has-shell .sa-shell:not(.sa-project-shell)>.sa-sidebar{position:relative!important;z-index:120!important;display:flex!important;flex-direction:column!important;width:auto!important;min-width:0!important;height:100dvh!important;overflow:hidden!important;transform:none!important;background:#f9f9f9!important;color:#202123!important;border-right:1px solid #ececec!important;box-shadow:none!important}
body.sa-has-shell .sa-sidebar-brand-row{position:relative!important;display:flex!important;align-items:center!important;flex:0 0 var(--sa-shell-header)!important;height:var(--sa-shell-header)!important;padding:0 12px!important;border-bottom:1px solid #ececec!important}
body.sa-has-shell .sa-brand{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;color:#202123!important;text-decoration:none!important}
body.sa-has-shell .sa-sidebar-brand-logo{display:block!important;flex:0 0 40px!important;width:40px!important;height:40px!important;object-fit:contain!important;border-radius:8px!important}
body.sa-has-shell .sa-brand-mark{display:grid!important;place-items:center!important;flex:0 0 28px!important;width:28px!important;height:28px!important;border-radius:8px!important;background:#202123!important;color:#fff!important;box-shadow:none!important;font-size:12px!important}
body.sa-has-shell .sa-brand-copy{min-width:0!important}
body.sa-has-shell .sa-brand-copy strong{display:block!important;color:#20264a!important;font-size:var(--sa-text-lg)!important;font-weight:700!important;line-height:1.2!important;white-space:nowrap!important}
body.sa-has-shell .sa-brand-copy small{display:block!important;margin-top:2px!important;color:#77809b!important;font-size:var(--sa-text-xs)!important;line-height:1.2!important;letter-spacing:.08em!important;white-space:nowrap!important}
body.sa-has-shell .sa-sidebar-toggle{display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;margin-left:auto!important;padding:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#5f6368!important;box-shadow:none!important;cursor:pointer!important}
body.sa-has-shell .sa-desktop-only{display:grid!important}
body.sa-has-shell .sa-mobile-only{display:none!important}
body.sa-has-shell .sa-sidebar-toggle:hover,
body.sa-has-shell .sa-sidebar-toggle:focus-visible{background:#ececec!important;color:#202123!important}

body.sa-has-shell .sa-nav-group{display:block!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px 7px!important}
body.sa-has-shell .sa-nav-section+.sa-nav-section{margin-top:13px!important}
body.sa-has-shell .sa-nav-label{display:block!important;margin:0 0 5px!important;padding:0 7px!important;color:#777!important;font-size:10px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.sa-has-shell .sa-nav-link{position:relative!important;display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:36px!important;margin:1px 0!important;padding:0 8px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#202123!important;font-size:12px!important;font-weight:500!important;text-decoration:none!important;box-shadow:none!important}
body.sa-has-shell .sa-nav-link>i{display:grid!important;place-items:center!important;flex:0 0 16px!important;width:16px!important;color:#686868!important;font-size:13px!important}
body.sa-has-shell .sa-nav-link>span:not(.sa-nav-count){min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
body.sa-has-shell .sa-nav-link:hover{background:#eeeeee!important;color:#111!important}
body.sa-has-shell .sa-nav-link.is-active{background:#e7e7e7!important;color:#111!important;font-weight:700!important}
body.sa-has-shell .sa-nav-link.is-active>i{color:#333!important}
body.sa-has-shell .sa-nav-link.is-active::after{content:none!important;display:none!important}
body.sa-has-shell .sa-nav-count{display:inline-grid!important;place-items:center!important;flex:0 0 auto!important;min-width:20px!important;height:20px!important;margin-left:auto!important;padding:0 5px!important;border-radius:999px!important;background:#5146d8!important;color:#fff!important;font-size:10px!important;font-weight:700!important}

body.sa-has-shell .sa-sidebar-bottom{display:grid!important;gap:4px!important;flex:0 0 auto!important;padding:8px 7px calc(8px + env(safe-area-inset-bottom))!important;border-top:1px solid #ececec!important;background:#f9f9f9!important}
body.sa-has-shell .sa-master-action{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;width:100%!important;min-height:36px!important;margin:0!important;padding:0 8px!important;border:1px solid #dedede!important;border-radius:8px!important;background:#fff!important;color:#202123!important;font-size:12px!important;font-weight:600!important;text-decoration:none!important;cursor:pointer!important}
body.sa-has-shell .sa-master-action:hover{background:#ededed!important}
body.sa-has-shell .sa-master-action>i{flex:0 0 16px!important;width:16px!important;text-align:center!important;color:#555!important}

body.sa-has-shell .sa-workspace{display:grid!important;grid-template-rows:var(--sa-shell-header) minmax(0,1fr)!important;min-width:0!important;height:100dvh!important;overflow:hidden!important}
body.sa-has-shell .sa-header{position:relative!important;z-index:110!important;display:flex!important;align-items:center!important;gap:14px!important;width:100%!important;min-width:0!important;height:var(--sa-shell-header)!important;min-height:var(--sa-shell-header)!important;padding:0 18px!important;background:#f9f9f9!important;color:#202123!important;border-bottom:1px solid #ececec!important;backdrop-filter:none!important;box-sizing:border-box!important}
body.sa-has-shell .sa-header-menu{display:none!important}
body.sa-has-shell .sa-header-project{display:flex!important;align-items:center!important;gap:8px!important;flex:1 1 auto!important;min-width:0!important;max-width:520px!important}
body.sa-has-shell .sa-header-kicker{flex:0 0 auto!important;color:#303030!important;font-size:10px!important;font-weight:700!important;letter-spacing:.04em!important;text-transform:uppercase!important;white-space:nowrap!important}
body.sa-has-shell .sa-project-switcher{width:min(300px,100%)!important;min-width:0!important;height:36px!important;border:1px solid #dedede!important;border-radius:8px!important;background:#fff!important;color:#202123!important;font-size:12px!important;font-weight:500!important;outline:0!important}
body.sa-has-shell .sa-header .select2-container{width:min(300px,100%)!important;max-width:100%!important}
body.sa-has-shell .sa-header .select2-container--default .select2-selection--single{height:36px!important;border:1px solid #dedede!important;border-radius:8px!important;background:#fff!important}
body.sa-has-shell .sa-header .select2-container--default .select2-selection__rendered{line-height:34px!important;padding-left:10px!important;padding-right:28px!important;color:#202123!important;font-size:12px!important}
body.sa-has-shell .sa-header .select2-container--default .select2-selection__arrow{height:34px!important}
body.sa-has-shell .sa-header-actions{display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;margin-left:auto!important}
body.sa-has-shell .sa-install-btn{min-height:34px!important;border:1px solid #dedede!important;border-radius:8px!important;background:#fff!important;color:#303030!important}
body.sa-has-shell .sa-profile-menu{position:relative!important}
body.sa-has-shell .sa-header-profile{display:flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;padding:3px 6px!important;border:1px solid transparent!important;border-radius:9px!important;background:transparent!important;color:#202123!important;cursor:pointer!important}
body.sa-has-shell .sa-header-profile:hover,
body.sa-has-shell .sa-header-profile:focus-visible{border-color:#dedede!important;background:#fff!important}
body.sa-has-shell .sa-avatar{display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;border-radius:50%!important;background:#eeedff!important;color:#4b42c5!important;font-size:11px!important;font-weight:700!important}
body.sa-has-shell .sa-header-profile-copy{display:block!important;min-width:0!important}
body.sa-has-shell .sa-header-profile-copy strong,
body.sa-has-shell .sa-header-profile-copy small{display:block!important;max-width:125px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
body.sa-has-shell .sa-header-profile-copy strong{color:#202123!important;font-size:11px!important}
body.sa-has-shell .sa-header-profile-copy small{margin-top:1px!important;color:#767676!important;font-size:10px!important}
body.sa-has-shell .sa-header-profile>i{color:#777!important;font-size:10px!important}
body.sa-has-shell .sa-profile-menu-popover{position:absolute!important;z-index:2500!important;top:calc(100% + 7px)!important;right:0!important;display:grid!important;min-width:176px!important;padding:4px!important;border:1px solid #dedede!important;border-radius:10px!important;background:#fff!important;box-shadow:0 12px 28px rgba(0,0,0,.14)!important}
body.sa-has-shell .sa-profile-menu-popover[hidden]{display:none!important}
body.sa-has-shell .sa-profile-menu-popover a,
body.sa-has-shell .sa-profile-menu-popover button{display:flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;padding:0 8px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#303030!important;font-size:12px!important;font-weight:600!important;text-decoration:none!important;text-align:left!important;cursor:pointer!important}
body.sa-has-shell .sa-profile-menu-popover a:hover{background:#f1f1f1!important}
body.sa-has-shell .sa-profile-menu-popover button{color:#b4233d!important}
body.sa-has-shell .sa-profile-menu-popover button:hover{background:#fff1f3!important}

body.sa-has-shell .sa-content{min-width:0!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain!important;background:#f6f7fb!important}
body.sa-has-shell .sa-mobile-overlay{display:none!important}

/* One tooltip system only: JS renders .sa-navigation-tooltip outside the clipped sidebar. */
body.sa-has-shell.sa-shell-collapsed .sa-nav-link[data-tooltip]::before,
body.sa-has-shell.sa-shell-collapsed .sa-nav-link[data-tooltip]::after,
body.sa-has-shell.sa-shell-collapsed .sa-master-action[data-tooltip]::before,
body.sa-has-shell.sa-shell-collapsed .sa-master-action[data-tooltip]::after{content:none!important;display:none!important}
.sa-navigation-tooltip{position:fixed!important;z-index:12600!important;max-width:240px!important;padding:6px 8px!important;border-radius:7px!important;background:#202123!important;color:#fff!important;box-shadow:0 6px 18px rgba(0,0,0,.18)!important;font-size:11px!important;font-weight:600!important;line-height:1.2!important;pointer-events:none!important;transform:translateY(-50%)!important;white-space:nowrap!important}

/* Desktop collapsed sidebar is an icon dock with the same 60px header height. */
@media(min-width:901px){
 body.sa-has-shell.sa-shell-collapsed .sa-shell:not(.sa-project-shell)>.sa-sidebar{overflow:visible!important}
 body.sa-has-shell.sa-shell-collapsed .sa-sidebar-brand-row{justify-content:center!important;padding:0!important}
 body.sa-has-shell.sa-shell-collapsed .sa-brand{display:grid!important;width:32px!important;height:32px!important;place-items:center!important}
 body.sa-has-shell.sa-shell-collapsed .sa-sidebar-brand-logo{width:32px!important;height:32px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-brand-mark{width:28px!important;height:28px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-brand-copy{display:none!important}
 body.sa-has-shell.sa-shell-collapsed [data-sidebar-toggle]{position:absolute!important;top:15px!important;right:-15px!important;z-index:140!important;width:30px!important;height:30px!important;margin:0!important;border:1px solid #dedede!important;background:#fff!important;box-shadow:0 3px 10px rgba(0,0,0,.08)!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-group{padding:10px 8px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-section{display:contents!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-label{display:none!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-link{display:grid!important;place-items:center!important;width:42px!important;min-height:42px!important;margin:3px auto!important;padding:0!important;border-radius:10px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-link>span:not(.sa-nav-count){display:none!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-link>i{width:auto!important;font-size:14px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-nav-count{position:absolute!important;top:-3px!important;right:-5px!important;min-width:17px!important;height:17px!important;padding:0 4px!important;font-size:9px!important}
 body.sa-has-shell.sa-shell-collapsed .sa-sidebar-bottom{display:grid!important;grid-template-columns:42px!important;justify-content:center!important;justify-items:center!important;align-items:center!important;gap:6px!important;padding:8px 0 calc(8px + env(safe-area-inset-bottom))!important}
 body.sa-has-shell.sa-shell-collapsed .sa-master-action{display:grid!important;grid-template-columns:1fr!important;place-items:center!important;width:42px!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#686868!important;box-shadow:none!important}
 body.sa-has-shell.sa-shell-collapsed .sa-master-action:hover{background:#eeeeee!important;color:#202123!important}
 body.sa-has-shell.sa-shell-collapsed .sa-master-action.is-active{background:#e7e7e7!important;color:#202123!important}
 body.sa-has-shell.sa-shell-collapsed .sa-master-action>i{display:grid!important;place-items:center!important;width:18px!important;height:18px!important;margin:0!important;color:currentColor!important;font-size:14px!important;line-height:1!important;text-align:center!important}
 body.sa-has-shell.sa-shell-collapsed .sa-master-action>span{display:none!important}
}

/* Mobile drawer: no collapsed state, one overlay, one 60px header. */
@media(max-width:900px){
 body.sa-has-shell>.sa-shell:not(.sa-project-shell){display:block!important}
 body.sa-has-shell .sa-workspace{grid-template-rows:calc(var(--sa-shell-header) + env(safe-area-inset-top)) minmax(0,1fr)!important}
 body.sa-has-shell .sa-header{height:calc(var(--sa-shell-header) + env(safe-area-inset-top))!important;min-height:calc(var(--sa-shell-header) + env(safe-area-inset-top))!important;padding:env(safe-area-inset-top) 10px 0!important;gap:8px!important}
 body.sa-has-shell .sa-header-menu{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border:1px solid #dedede!important;border-radius:8px!important;background:#fff!important;color:#333!important}
 body.sa-has-shell .sa-shell:not(.sa-project-shell)>.sa-sidebar{position:fixed!important;z-index:2200!important;inset:0 auto 0 0!important;width:min(280px,86vw)!important;height:100dvh!important;transform:translateX(-102%)!important;transition:transform .2s ease!important}
 body.sa-has-shell.mobile-drawer-open .sa-shell:not(.sa-project-shell)>.sa-sidebar{transform:translateX(0)!important}
 body.sa-has-shell .sa-mobile-overlay{position:fixed!important;z-index:2190!important;inset:0!important;display:block!important;visibility:hidden!important;opacity:0!important;background:rgba(15,23,42,.42)!important;transition:opacity .2s ease,visibility .2s ease!important}
 body.sa-has-shell.mobile-drawer-open .sa-mobile-overlay{visibility:visible!important;opacity:1!important}
 body.sa-has-shell.mobile-drawer-open .sa-content{overflow:hidden!important}
 body.sa-has-shell .sa-sidebar-brand-row{height:var(--sa-shell-header)!important;flex-basis:var(--sa-shell-header)!important}
 body.sa-has-shell .sa-desktop-only{display:none!important}
 body.sa-has-shell .sa-mobile-only{display:grid!important}
 body.sa-has-shell .sa-header-project{flex:1 1 auto!important;max-width:none!important}
 body.sa-has-shell .sa-header-kicker{display:none!important}
 body.sa-has-shell .sa-project-switcher,
 body.sa-has-shell .sa-header .select2-container{width:100%!important}
 body.sa-has-shell .sa-header-profile{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;min-height:38px!important;padding:0!important}
 body.sa-has-shell .sa-header-profile-copy,
 body.sa-has-shell .sa-header-profile>i{display:none!important}
 body.sa-has-shell .sa-header-actions{gap:5px!important}
 body.sa-has-shell .sa-install-btn span{display:none!important}
}


/* Raw Inbox workflow progress — single source of row state. */
.sa-raw-progress-cell{min-width:210px}
.sa-raw-progress{display:grid;grid-template-columns:9px minmax(0,1fr);gap:8px;align-items:start}
.sa-raw-progress-dot{width:8px;height:8px;margin-top:4px;border-radius:50%;background:#d49a22;box-shadow:0 0 0 3px #fff7e6}
.sa-raw-progress>div{display:grid;gap:2px;min-width:0}
.sa-raw-progress strong{color:#475569;font-size:var(--sa-text-xs);font-weight:var(--sa-weight-strong);line-height:1.3}
.sa-raw-progress small{display:block;color:#8791a4;font-size:10px;line-height:1.35}
.sa-raw-progress.is-active .sa-raw-progress-dot{background:#4f46e5;box-shadow:0 0 0 3px #eeedff}
.sa-raw-progress.is-active strong{color:#4338ca}
.sa-raw-progress.is-review .sa-raw-progress-dot{background:#d49a22;box-shadow:0 0 0 3px #fff7e6}
.sa-raw-progress.is-review strong{color:#9a6400}
.sa-raw-progress.is-complete .sa-raw-progress-dot{background:#168057;box-shadow:0 0 0 3px #eaf8ef}
.sa-raw-progress.is-complete strong{color:#168057}
.sa-raw-progress.is-discarded .sa-raw-progress-dot,
.sa-raw-progress.is-danger .sa-raw-progress-dot{background:#b4233d;box-shadow:0 0 0 3px #fff1f3}
.sa-raw-progress.is-discarded strong,
.sa-raw-progress.is-danger strong{color:#b4233d}


/* Project Chalan Upload mobile workspace — compact, single-layer hierarchy. */
@media(max-width:760px){
  .sa-raw-office-upload{
    min-width:0!important;
    overflow-x:hidden!important;
    gap:0!important;
  }

  .sa-raw-office-upload>.sa-page-header{
    display:grid!important;
    grid-template-columns:32px minmax(0,1fr)!important;
    grid-template-areas:"back title"!important;
    align-items:center!important;
    gap:8px!important;
    min-height:46px!important;
    margin-bottom:10px!important;
    padding-bottom:10px!important;
  }
  .sa-raw-office-upload>.sa-page-header>div:first-child{
    grid-area:title!important;
    min-width:0!important;
  }
  .sa-raw-office-upload>.sa-page-header h1{
    margin:0!important;
    font-size:18px!important;
    line-height:1.15!important;
    letter-spacing:-.015em!important;
  }
  .sa-raw-office-upload .sa-office-project-name{
    display:block!important;
    max-width:100%!important;
    margin-top:2px!important;
    overflow:hidden!important;
    color:#7a8599!important;
    font-size:10px!important;
    font-weight:500!important;
    line-height:1.25!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .sa-raw-office-upload>.sa-page-header>.sa-office-back{
    grid-area:back!important;
    width:32px!important;
    min-width:32px!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    border-radius:8px!important;
    font-size:0!important;
  }
  .sa-raw-office-upload>.sa-page-header>.sa-office-back i{
    margin:0!important;
    font-size:11px!important;
  }

  /* The generic pull indicator is hidden here; this office workspace is not a capture-app surface. */
  body.sa-has-shell #rawPullRefresh{
    display:none!important;
  }

  .sa-raw-office-upload .sa-raw-history-card{
    border:1px solid #e3e7ef!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 6px 20px rgba(15,23,42,.045)!important;
  }
  .sa-raw-office-upload .sa-raw-history-heading{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(118px,42%)!important;
    grid-template-rows:auto auto!important;
    gap:9px 8px!important;
    align-items:center!important;
    padding:12px!important;
    border-bottom:1px solid #e8ebf1!important;
    background:#fff!important;
  }
  .sa-raw-office-upload .sa-raw-history-heading>h2{
    grid-column:1!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    margin:0!important;
    color:#202943!important;
    font-size:14px!important;
    line-height:1.2!important;
  }
  .sa-raw-office-upload .sa-raw-count{
    display:inline-grid!important;
    place-items:center!important;
    min-width:20px!important;
    height:20px!important;
    margin:0!important;
    padding:0 6px!important;
    border-radius:999px!important;
    background:#eeedff!important;
    color:#5146d8!important;
    font-size:10px!important;
  }
  .sa-raw-office-upload .sa-raw-history-tools{
    display:contents!important;
  }
  .sa-raw-office-upload .sa-raw-user-filter{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .sa-raw-office-upload .sa-raw-user-filter select{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:var(--sa-control-compact,32px)!important;
    min-height:var(--sa-control-compact,32px)!important;
    padding:0 28px 0 10px!important;
    border-radius:9px!important;
    background:#fff!important;
    font-size:11px!important;
  }
  .sa-raw-office-upload .sa-raw-history-tools>#rawUploadOpen{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    min-height:40px!important;
    justify-content:center!important;
    border-radius:9px!important;
    white-space:nowrap!important;
  }

  .sa-raw-office-upload .sa-raw-history-records{
    min-height:0!important;
    overflow:visible!important;
    background:#fff!important;
  }
  .sa-raw-office-upload .sa-office-upload-scroll{
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table,
  .sa-raw-office-upload .sa-office-upload-table tbody,
  .sa-raw-office-upload .sa-office-upload-table tr,
  .sa-raw-office-upload .sa-office-upload-table td{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  .sa-raw-office-upload .sa-office-upload-table{
    min-width:0!important;
    margin:0!important;
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table thead{display:none!important}
  .sa-raw-office-upload .sa-office-upload-table tbody{
    display:grid!important;
    gap:9px!important;
    padding:10px!important;
  }
  .sa-raw-office-upload .sa-office-upload-table tr{
    position:relative!important;
    padding:11px!important;
    overflow:hidden!important;
    border:1px solid #e5e8ef!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td{
    padding:7px 0!important;
    border:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td+td{
    border-top:1px solid #f0f2f6!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td::before{
    display:block!important;
    margin-bottom:4px!important;
    color:#8a94a7!important;
    font-size:9px!important;
    font-weight:700!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(1)::before{content:"Photo"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(2)::before{content:"Uploaded by / date"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(3)::before{content:"Source"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(4)::before{content:"Progress"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(5)::before{content:"Notes"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(6)::before{content:"Actions"}

  .sa-raw-office-upload .sa-office-photo-cell{align-items:center!important;gap:10px!important}
  .sa-raw-office-upload .sa-office-photo{
    flex:0 0 58px!important;
    border:1px solid #e1e5ed!important;
    border-radius:9px!important;
  }
  .sa-raw-office-upload .sa-office-photo img{
    width:58px!important;
    height:66px!important;
    border-radius:9px!important;
  }
  .sa-raw-office-upload .sa-office-note{max-width:none!important}
  .sa-raw-office-upload .sa-office-row-actions{
    display:flex;align-items:center;flex-wrap:nowrap;gap:var(--sa-space-1,4px);white-space:nowrap;
  }
  .sa-raw-office-upload .sa-office-row-actions form{display:contents!important}
  .sa-raw-office-upload .sa-office-row-actions .sa-btn{
    width:100%!important;
    min-height:38px!important;
    justify-content:center!important;
    border-radius:9px!important;
  }

  /* Empty state is part of the workspace surface, not another nested card. */
  .sa-raw-office-upload .sa-office-empty-row{
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-empty-cell{
    padding:0!important;
    border:0!important;
  }
  .sa-raw-office-upload .sa-office-empty-cell::before{display:none!important;content:none!important}
  .sa-raw-office-upload .sa-office-empty-state{
    min-height:150px!important;
    gap:6px!important;
    padding:22px 18px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .sa-raw-office-upload .sa-office-empty-icon{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    margin-bottom:2px!important;
    border-radius:12px!important;
    background:#f1f0ff!important;
    color:#5146d8!important;
    font-size:16px!important;
  }
  .sa-raw-office-upload .sa-office-empty-state strong{
    color:#202943!important;
    font-size:14px!important;
  }
  .sa-raw-office-upload .sa-office-empty-state p{
    max-width:230px!important;
    margin:0!important;
    color:#7a8599!important;
    font-size:11px!important;
    line-height:1.45!important;
  }

  .sa-raw-office-upload .sa-data-footer,
  .sa-raw-office-upload .sa-raw-pagination{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-direction:row!important;
    gap:6px!important;
    min-height:38px!important;
    padding:8px 12px!important;
    border-top:1px solid #e8ebf1!important;
    background:#fff!important;
    color:#8a94a7!important;
    font-size:10px!important;
  }
  .sa-raw-office-upload .sa-raw-pagination>span{margin:0!important}
}


/* Office upload toolbar structural alignment. */
.sa-office-history-toolbar{display:flex!important;align-items:center!important;gap:10px!important}
.sa-office-history-row{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto}
.sa-office-history-row h2{margin:0;min-width:0}
.sa-office-history-row .sa-raw-user-filter{margin-left:auto;max-width:none}
.sa-office-upload-primary{flex:0 0 auto}

@media(max-width:760px){
  .sa-raw-office-upload>.sa-page-header .sa-raw-health{display:none!important}

  .sa-raw-office-upload .sa-office-history-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
  }
  .sa-raw-office-upload .sa-office-history-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(112px,42%)!important;
    gap:8px!important;
    width:100%!important;
    align-items:center!important;
  }
  .sa-raw-office-upload .sa-office-history-row h2{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    margin:0!important;
    font-size:14px!important;
    line-height:1.2!important;
  }
  .sa-raw-office-upload .sa-office-history-row .sa-raw-user-filter{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .sa-raw-office-upload .sa-office-history-row .sa-raw-user-filter select{
    width:100%!important;
    min-width:0!important;
    height:var(--sa-control-compact,32px)!important;
    min-height:var(--sa-control-compact,32px)!important;
    padding:0 28px 0 10px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  .sa-raw-office-upload .sa-office-upload-primary{
    width:100%!important;
    min-height:42px!important;
    justify-content:center!important;
    border-radius:9px!important;
  }

  /* Neutralize older mobile toolbar rules now superseded by the explicit structure above. */
  .sa-raw-office-upload .sa-raw-history-tools{display:none!important}
}

/* Project Chalan Upload themed modal. */
body.sa-has-shell .sa-office-upload-dialog{
  width:min(700px,calc(100vw - 40px))!important;
  height:min(82dvh,720px)!important;
  max-height:calc(100dvh - 32px)!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--sa-line,#e3e6ed)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--sa-ink,#273153)!important;
  box-shadow:0 28px 80px rgba(15,23,42,.28)!important;
}
body.sa-has-shell .sa-office-upload-dialog::backdrop{
  background:rgba(15,23,42,.54)!important;
  backdrop-filter:blur(2px);
}
body.sa-has-shell .sa-office-upload-dialog[open]{
  display:flex!important;
  flex-direction:column!important;
}
body.sa-has-shell .sa-office-upload-dialog>.sa-raw-modal-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:64px!important;
  padding:12px 16px!important;
  border-bottom:1px solid var(--sa-line,#e7eaf0)!important;
  background:#fff!important;
}
body.sa-has-shell .sa-office-upload-dialog>.sa-raw-modal-head>div{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-modal-kicker{
  color:var(--sa-primary,#4f46e5)!important;
  font-size:9px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
}
body.sa-has-shell .sa-office-upload-dialog>.sa-raw-modal-head h2{
  margin:0!important;
  color:var(--sa-ink,#172033)!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
body.sa-has-shell .sa-office-modal-close{
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  border:1px solid var(--sa-line,#dce1eb)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#64748b!important;
}
body.sa-has-shell .sa-office-modal-close:hover{
  background:#f7f8fb!important;
  color:#172033!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:11px 16px!important;
  border-bottom:1px solid var(--sa-line,#edf0f5)!important;
  background:#fafbfe!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help>i{
  display:grid!important;
  place-items:center!important;
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  border-radius:8px!important;
  background:#eeedff!important;
  color:var(--sa-primary,#4f46e5)!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help>div{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help strong{
  color:var(--sa-ink,#273153)!important;
  font-size:11px!important;
  line-height:1.3!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help span{
  color:var(--sa-muted,#75809d)!important;
  font-size:10px!important;
  line-height:1.45!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-upload-form{
  background:#fff!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-upload-body{
  gap:12px!important;
  padding:16px!important;
  background:#fff!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder{
  min-height:300px!important;
  border:1px dashed #cfd6e4!important;
  border-radius:11px!important;
  background:#fafbfe!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder svg{
  width:38px!important;
  height:38px!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder strong{
  color:var(--sa-ink,#273153)!important;
  font-size:13px!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder span{
  max-width:360px!important;
  color:var(--sa-muted,#75809d)!important;
  font-size:11px!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder .sa-btn{
  min-width:150px!important;
  min-height:40px!important;
  border-radius:8px!important;
}
body.sa-has-shell .sa-office-upload-dialog .sa-raw-submit-bar{
  padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
  border-top:1px solid var(--sa-line,#e7eaf0)!important;
  background:#fff!important;
}

@media(max-width:760px){
  body.sa-has-shell .sa-office-upload-dialog{
    width:calc(100vw - 20px)!important;
    height:min(88dvh,760px)!important;
    max-height:calc(100dvh - 20px)!important;
    border-radius:13px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog>.sa-raw-modal-head{
    min-height:58px!important;
    padding:10px 12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help{
    padding:10px 12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-raw-upload-body{
    padding:12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder{
    min-height:240px!important;
    padding:20px 14px!important;
  }
}


/* Upload Chalan reference-inspired commercial mobile layout. */
.sa-office-photo-secondary{display:none}

@media(max-width:760px){
  body.sa-has-shell .sa-content{background:#f4f6f9!important}

  .sa-raw-office-upload{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .sa-raw-office-upload>.sa-office-upload-page-head{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    grid-template-areas:"back copy"!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 0 12px!important;
    padding:0 0 12px!important;
  }
  .sa-raw-office-upload>.sa-office-upload-page-head>div:first-child{
    grid-area:copy!important;
    min-width:0!important;
  }
  .sa-raw-office-upload .sa-office-page-kicker{
    display:block!important;
    margin:0 0 2px!important;
    color:var(--sa-primary,#4f46e5)!important;
    font-size:9px!important;
    font-weight:700!important;
    letter-spacing:.08em!important;
  }
  .sa-raw-office-upload>.sa-office-upload-page-head h1{
    margin:0!important;
    color:#10203a!important;
    font-size:19px!important;
    line-height:1.15!important;
    letter-spacing:-.02em!important;
  }
  .sa-raw-office-upload .sa-office-project-name{
    display:block!important;
    margin-top:3px!important;
    overflow:hidden!important;
    color:#748096!important;
    font-size:10px!important;
    line-height:1.3!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .sa-raw-office-upload>.sa-office-upload-page-head>.sa-office-back{
    grid-area:back!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:0!important;
    border-radius:9px!important;
    font-size:0!important;
  }
  .sa-raw-office-upload>.sa-office-upload-page-head>.sa-office-back i{
    margin:0!important;
    font-size:12px!important;
  }
  .sa-raw-office-upload>.sa-office-upload-page-head .sa-raw-health{display:none!important}

  .sa-raw-office-upload .sa-raw-history-card{
    overflow:hidden!important;
    border:1px solid #dfe5ed!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 3px 14px rgba(15,23,42,.045)!important;
  }

  .sa-raw-office-upload .sa-office-history-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
    border-bottom:1px solid #e8edf3!important;
    background:#fff!important;
  }
  .sa-raw-office-upload .sa-office-history-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(116px,40%)!important;
    gap:8px!important;
    align-items:center!important;
  }
  .sa-raw-office-upload .sa-office-history-row h2{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    margin:0!important;
    color:#10203a!important;
    font-size:14px!important;
    font-weight:700!important;
  }
  .sa-raw-office-upload .sa-raw-count{
    display:inline-grid!important;
    place-items:center!important;
    min-width:20px!important;
    height:20px!important;
    margin:0!important;
    padding:0 6px!important;
    border-radius:999px!important;
    background:#eef0ff!important;
    color:#5146d8!important;
    font-size:10px!important;
  }
  .sa-raw-office-upload .sa-office-history-row .sa-raw-user-filter{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .sa-raw-office-upload .sa-office-history-row .sa-raw-user-filter select{
    width:100%!important;
    min-width:0!important;
    height:var(--sa-control-compact,32px)!important;
    min-height:var(--sa-control-compact,32px)!important;
    padding:0 28px 0 10px!important;
    border:1px solid #d9dfe8!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#26334b!important;
    font-size:11px!important;
  }
  .sa-raw-office-upload .sa-office-upload-primary{
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
    border-radius:9px!important;
    font-size:12px!important;
    font-weight:700!important;
  }

  .sa-raw-office-upload .sa-raw-history-records{
    overflow:visible!important;
    background:#f8fafc!important;
  }
  .sa-raw-office-upload .sa-office-upload-scroll{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table,
  .sa-raw-office-upload .sa-office-upload-table tbody,
  .sa-raw-office-upload .sa-office-upload-table tr,
  .sa-raw-office-upload .sa-office-upload-table td{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  .sa-raw-office-upload .sa-office-upload-table{
    min-width:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table thead{display:none!important}
  .sa-raw-office-upload .sa-office-upload-table tbody{
    display:grid!important;
    gap:10px!important;
    padding:10px!important;
  }
  .sa-raw-office-upload .sa-office-upload-table tr{
    padding:12px!important;
    overflow:hidden!important;
    border:1px solid #e1e6ee!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td{
    padding:8px 0!important;
    border:0!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td+td{
    border-top:1px solid #eef1f5!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td::before{
    display:block!important;
    margin-bottom:4px!important;
    color:#8a94a7!important;
    font-size:9px!important;
    font-weight:700!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(1)::before{content:"Delivery photos"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(2)::before{content:"Uploaded by / date"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(3)::before{content:"Source"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(4)::before{content:"Progress"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(5)::before{content:"Notes"}
  .sa-raw-office-upload .sa-office-upload-table td:nth-child(6)::before{content:"Actions"}

  .sa-raw-office-upload .sa-office-photo-cell{
    display:grid!important;
    grid-template-columns:72px 72px minmax(0,1fr)!important;
    gap:7px!important;
    align-items:center!important;
  }
  .sa-raw-office-upload .sa-office-photo{
    display:block!important;
    width:72px!important;
    height:82px!important;
    border:0!important;
    border-radius:9px!important;
    overflow:hidden!important;
    background:#eef2f7!important;
  }
  .sa-raw-office-upload .sa-office-photo img{
    display:block!important;
    width:72px!important;
    height:82px!important;
    border-radius:9px!important;
    object-fit:cover!important;
  }
  .sa-raw-office-upload .sa-office-photo-secondary{display:block!important}
  .sa-raw-office-upload .sa-office-photo-cell>.sa-raw-table-meta{
    align-self:center!important;
  }
  .sa-raw-office-upload .sa-raw-table-meta{
    gap:3px!important;
  }
  .sa-raw-office-upload .sa-raw-table-meta strong{
    color:#18243a!important;
    font-size:12px!important;
  }
  .sa-raw-office-upload .sa-raw-table-meta small,
  .sa-raw-office-upload .sa-raw-table-meta span{
    font-size:10px!important;
    line-height:1.4!important;
  }

  .sa-raw-office-upload .sa-office-note{max-width:none!important}
  .sa-raw-office-upload .sa-office-row-actions{
    display:flex;align-items:center;flex-wrap:nowrap;gap:var(--sa-space-1,4px);white-space:nowrap;
  }
  .sa-raw-office-upload .sa-office-row-actions form{display:contents!important}
  .sa-raw-office-upload .sa-office-row-actions .sa-btn{
    width:100%!important;
    min-height:42px!important;
    justify-content:center!important;
    border-radius:9px!important;
    font-size:11px!important;
  }

  .sa-raw-office-upload .sa-office-empty-row{
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  .sa-raw-office-upload .sa-office-empty-cell{
    padding:0!important;
    border:0!important;
  }
  .sa-raw-office-upload .sa-office-empty-cell::before{display:none!important;content:none!important}
  .sa-raw-office-upload .sa-office-empty-state{
    min-height:180px!important;
    gap:7px!important;
    padding:28px 18px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .sa-raw-office-upload .sa-office-empty-icon{
    display:grid!important;
    place-items:center!important;
    width:46px!important;
    height:46px!important;
    border-radius:13px!important;
    background:#f0efff!important;
    color:#5146d8!important;
    font-size:17px!important;
  }
  .sa-raw-office-upload .sa-office-empty-state strong{
    color:#18243a!important;
    font-size:14px!important;
  }
  .sa-raw-office-upload .sa-office-empty-state p{
    max-width:240px!important;
    margin:0!important;
    color:#788397!important;
    font-size:11px!important;
    line-height:1.45!important;
  }

  .sa-raw-office-upload .sa-data-footer,
  .sa-raw-office-upload .sa-raw-pagination{
    min-height:38px!important;
    padding:8px 12px!important;
    border-top:1px solid #e7ebf1!important;
    background:#fff!important;
    color:#8a94a7!important;
    font-size:10px!important;
  }

  /* Office upload modal uses the same app language, but remains a modal rather than capture full-screen flow. */
  body.sa-has-shell .sa-office-upload-dialog{
    width:calc(100vw - 20px)!important;
    height:min(88dvh,760px)!important;
    max-height:calc(100dvh - 20px)!important;
    border-radius:14px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog>.sa-raw-modal-head{
    min-height:58px!important;
    padding:10px 12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-office-upload-help{
    padding:10px 12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-raw-upload-body{
    padding:12px!important;
  }
  body.sa-has-shell .sa-office-upload-dialog .sa-raw-photo-placeholder{
    min-height:230px!important;
    padding:20px 14px!important;
  }
}


/* Multi-photo draft controls; keep camera, review and save within the upload dialog. */
.sa-raw-preview-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding-bottom:env(safe-area-inset-bottom)}
.sa-raw-preview-nav .sa-btn{min-height:44px}
@media(max-width:800px){
 .sa-raw-upload-dialog .sa-raw-photo-batch{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .sa-raw-upload-dialog .sa-raw-photo-batch>div{padding:6px;gap:6px}
 .sa-raw-upload-dialog .sa-raw-photo-view img{height:100px}
 .sa-raw-upload-dialog .sa-raw-photo-caption{gap:4px}
 .sa-raw-upload-dialog .sa-raw-photo-caption>.sa-btn{min-height:44px;padding:0 4px}
}

/* Camera/review owns the dialog while open; draft actions cannot cover its controls. */
.sa-raw-upload-dialog .sa-raw-upload-form{isolation:isolate}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera,:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-full-preview{z-index:100!important}
.sa-raw-upload-dialog .is-camera-active>.sa-raw-submit-bar,
.sa-raw-upload-dialog .is-preview-active>.sa-raw-submit-bar{display:none!important}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera .sa-raw-actions{position:relative;z-index:1;min-width:0}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera .sa-raw-actions>.sa-btn{min-width:0;white-space:normal}

/* Captured photos stay visible above the camera shutter, without moving the page. */
:where(body:not(.sa-raw-only)) .sa-raw-camera-roll{flex:0 0 auto;min-width:0;display:grid;gap:6px}
:where(body:not(.sa-raw-only)) .sa-raw-camera-roll>span{color:#fff;font-size:var(--sa-text-sm);font-weight:700}
:where(body:not(.sa-raw-only)) .sa-raw-camera-thumbnails{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 0;min-width:0}
:where(body:not(.sa-raw-only)) .sa-raw-camera-thumb{flex:0 0 56px;width:56px;height:56px;padding:0;border:2px solid #64748b;border-radius:8px;overflow:hidden;background:#1e293b;cursor:pointer}
:where(body:not(.sa-raw-only)) .sa-raw-camera-thumb img{display:block;width:100%;height:100%;object-fit:cover}
:where(body:not(.sa-raw-only)) .sa-raw-camera-thumb.is-latest{border-color:#a5b4fc}
:where(body:not(.sa-raw-only)) .sa-raw-camera-thumb:focus-visible{outline:2px solid #fff;outline-offset:1px}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-full-preview{z-index:101!important}

/* Keep the camera roll readable and reserve its height below the live view. */
body.sa-raw-only .sa-raw-history-records{overflow-anchor:none}


/* Capture display area: two persistent panels, one horizontal track. */
body.sa-raw-only .sa-raw-history-card{--sa-capture-navigation-height:92px;position:relative;display:flex!important;flex-direction:column;gap:0;flex:1;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;overflow-anchor:none;border:0;border-radius:0;background:transparent;box-shadow:none}
body.sa-raw-only .sa-capture-tabs{position:absolute;top:0;left:0;right:0;z-index:1250;display:grid;grid-template-columns:1fr 1fr;height:44px;min-height:0;flex:none;width:100%;max-width:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow:hidden}
body.sa-raw-only .sa-capture-tabs button::after{display:none}
body.sa-raw-only .sa-raw-history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;flex-wrap:nowrap;padding:10px 14px 8px!important;position:absolute;top:44px;left:0;right:0;z-index:1300;height:48px;min-height:48px!important;box-sizing:border-box;background:transparent!important;isolation:isolate;border:0!important;box-shadow:none!important}
body.sa-raw-only .sa-raw-history-card[aria-busy="true"] .sa-raw-history-records{opacity:1}
@media(max-width:800px){body.sa-raw-only .sa-raw-history-heading{gap:8px}}



.sa-capture-indicator{position:absolute;left:11%;bottom:0;width:28%;height:3px;border-radius:3px 3px 0 0;background:var(--sa-primary);pointer-events:none}
.sa-capture-indicator::before,.sa-capture-indicator::after{content:'';position:absolute;top:0;width:100%;height:100%;border-radius:inherit;background:inherit;pointer-events:none}
.sa-capture-indicator::before{left:calc(-1 * var(--sa-capture-nav-cycle,0px))}
.sa-capture-indicator::after{left:var(--sa-capture-nav-cycle,0px)}





body.sa-raw-only .sa-raw-pagination[hidden]{display:none!important}

/* Canonical camera layout: structure exists before JavaScript starts. */
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera{gap:10px}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:center}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera-controls>.sa-btn{min-width:0;padding:8px;min-height:48px;white-space:normal}
body:not(.sa-raw-only) .sa-raw-upload-dialog #rawCameraTake{grid-column:1/-1;grid-row:1;min-height:54px}
body:not(.sa-raw-only) .sa-raw-upload-dialog #rawCameraTorch{grid-column:1/-1;min-height:44px}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera-roll{min-height:82px;flex:0 0 auto}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera-thumbnails{min-height:62px}
body:not(.sa-raw-only) .sa-raw-upload-dialog .sa-raw-camera-roll[hidden]{display:grid!important;visibility:hidden}
/* Site camera controls have dedicated classes, independent of shared action buttons. */

.sa-raw-only .sa-raw-upload-dialog .sa-raw-upload-form{position:relative}
.sa-raw-only .sa-raw-upload-dialog>.sa-raw-modal-head{padding:8px 12px}
.sa-raw-saved-image{position:relative}
#rawSavedPhotoStatus{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;background:rgba(17,24,39,.32);color:#fff;padding:16px}
#rawSavedPhotoStatus[hidden]{display:none!important}
.sa-raw-saved-view>header .sa-btn,.sa-raw-saved-view>footer .sa-btn{min-height:44px}
body.sa-raw-only .sa-raw-saved-view>header .sa-btn,body.sa-raw-only .sa-raw-saved-view>footer .sa-btn,body.sa-raw-only .sa-raw-map-dialog>header .sa-btn,body.sa-raw-only .sa-raw-map-dialog>footer .sa-btn{height:36px;min-height:36px;padding:0 12px;font-size:13px;line-height:20px;box-sizing:border-box}

/* Pull refresh belongs below the fixed Capture tabs. */
body.sa-raw-only .sa-capture-content-refresh{position:absolute!important;top:var(--sa-capture-navigation-height,92px)!important;left:0!important;right:0!important;width:100%!important;height:clamp(0px,var(--pull-y,0px),56px)!important;overflow:hidden;transition:height 420ms cubic-bezier(.22,.72,.24,1);z-index:2!important;display:flex;align-items:center;justify-content:center;transform:none!important;pointer-events:none;background:transparent!important;margin:0!important;padding:0!important}
body.sa-raw-only .sa-capture-content-refresh[hidden]{display:none!important}
body.sa-raw-only .sa-capture-viewport{transform:translate3d(0,var(--sa-capture-pull-y,0px),0);transition:transform 420ms cubic-bezier(.22,.72,.24,1)}
body.sa-raw-only .sa-raw-history-card[data-pull-active="true"] .sa-capture-viewport{transition:none}

/* Minimal spoke spinner; remove inherited refresh-pill styling. */
body.sa-raw-only .sa-capture-content-refresh,
body.sa-raw-only .sa-capture-content-refresh[data-state]{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;min-width:0!important;min-height:0!important;color:#8b929d!important;opacity:1!important}
body.sa-raw-only .sa-capture-content-refresh::after{display:none!important;content:none!important}
body.sa-raw-only .sa-capture-content-refresh .sa-raw-refresh-spinner{position:relative;display:block;width:20px;height:20px;border:0!important;border-radius:0;background:none;transform:rotate(var(--pull-angle,0deg));opacity:clamp(.2,var(--pull-progress,0),1)}
body.sa-raw-only .sa-capture-content-refresh .sa-raw-refresh-spinner>span{position:absolute;top:0;left:9px;width:2px;height:5px;border-radius:1px;background:currentColor;transform-origin:1px 10px}
body.sa-raw-only .sa-capture-content-refresh[data-state="refreshing"] .sa-raw-refresh-spinner{animation:sa-capture-pull-spin .85s linear infinite;opacity:1}

/* Reserve camera controls while media starts; do not expose review buttons underneath. */
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera[data-camera-state="opening"] #rawCameraActions{visibility:hidden;pointer-events:none}
:where(body:not(.sa-raw-only)) .sa-raw-upload-dialog .sa-raw-camera[data-camera-state="opening"] video{visibility:hidden}

/* Compact queue cards: isolated from history .sa-raw-item and yellow status-chip styles. */
.sa-raw-upload-page #rawPendingUploads{display:flex!important;flex-direction:column;flex:none;gap:0!important;margin:0;padding:0!important;border:0;overflow:visible}
.sa-raw-upload-page #rawPendingUploads[hidden]{display:none!important}
.sa-capture-pending-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:6px 12px;flex:0 0 auto;min-height:0;box-sizing:border-box;margin:0 0 10px;padding:10px 12px;overflow:hidden;border:1px solid #e1e6ed;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.03)}
.sa-capture-pending-thumb{position:relative;display:block;width:64px;height:64px;padding:0;border:0;border-radius:9px;overflow:hidden;background:#eef2f7;cursor:pointer}
.sa-capture-pending-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.sa-capture-pending-count{position:absolute;right:3px;bottom:3px;padding:2px 5px;border-radius:5px;background:rgba(15,23,42,.8);color:#fff;font-size:var(--sa-text-xs);font-weight:700}
.sa-capture-pending-copy{min-width:0;display:grid;gap:4px}
.sa-capture-pending-status{display:flex;align-items:center;gap:7px;min-width:0;color:#334155}
.sa-capture-pending-status strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--sa-text-base);font-weight:600;line-height:1.3}
.sa-capture-pending-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 14px;width:14px;height:14px;box-sizing:border-box;color:#64748b;font-size:var(--sa-text-sm);font-weight:700}
.sa-capture-pending-meta,.sa-capture-pending-hint{display:block;color:#788397;font-size:var(--sa-text-xs);line-height:1.35}
.sa-capture-pending-retry{appearance:none;min-width:52px;min-height:44px;padding:8px;border:0;border-radius:8px;background:#f1f3ff;color:var(--sa-primary);font:inherit;font-size:var(--sa-text-sm);font-weight:600;cursor:pointer}
.sa-capture-pending-retry:disabled{opacity:.45;cursor:default}
.sa-capture-pending-thumb:focus-visible,.sa-capture-pending-retry:focus-visible{outline:2px solid var(--sa-primary);outline-offset:2px}
.sa-capture-pending-card [hidden]{display:none!important}
.sa-capture-pending-progress{grid-column:1/-1;height:2px;border-radius:2px;overflow:hidden;background:#eeedfb}
.sa-capture-pending-progress>span{display:block;width:35%;height:100%;border-radius:inherit;background:var(--sa-primary);animation:sa-capture-upload-sweep 1.3s ease-in-out infinite}
.sa-capture-pending-card[data-state="uploading"] .sa-capture-pending-icon{border:2px solid #e2e5f5;border-top-color:var(--sa-primary);border-radius:50%;animation:sa-capture-upload-spin .9s linear infinite}
.sa-capture-pending-card[data-state="saved"] .sa-capture-pending-status,.sa-capture-pending-card[data-state="saved"] .sa-capture-pending-icon{color:#23804b}
.sa-capture-pending-card[data-state="retry"] .sa-capture-pending-icon{color:#b45309}
.sa-capture-pending-note,.sa-capture-pending-error{grid-column:2/-1;margin:0;font-size:var(--sa-text-xs);line-height:1.4;overflow-wrap:anywhere}
.sa-capture-pending-note{color:#64748b}
.sa-capture-pending-error{color:#a16207}
.sa-capture-pending-audio{grid-column:1/-1;width:100%;height:34px}
@keyframes sa-capture-upload-spin{to{transform:rotate(360deg)}}
@keyframes sa-capture-upload-sweep{from{transform:translateX(-120%)}to{transform:translateX(390%)}}
@media(prefers-reduced-motion:reduce){.sa-capture-pending-icon,.sa-capture-pending-progress>span{animation:none!important}}


/* Desktop details and evidence share a narrow left column; timeline starts at the top. */
@media(min-width:901px){
.sa-chalan-detail-top:has(>.sa-evidence-timeline){display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--sa-space-4);align-items:start}
.sa-chalan-detail-top>.sa-detail-card{grid-column:1;margin:0;min-width:0}
.sa-chalan-detail-top>.sa-evidence-card{grid-column:1;display:block}
.sa-chalan-detail-top>.sa-evidence-timeline{grid-column:2;grid-row:1/3;align-self:stretch;min-width:0;border:1px solid var(--sa-border);border-radius:12px;background:#fff;padding:var(--sa-space-3) var(--sa-space-4)}
.sa-chalan-detail-top .sa-detail-meta>dl{grid-template-columns:1fr!important}
.sa-chalan-detail-top .sa-card-head{flex-wrap:wrap}
.sa-chalan-detail-top .sa-evidence-head{padding:var(--sa-space-3) var(--sa-space-4)!important}
.sa-chalan-detail-top .sa-evidence-overview{grid-template-columns:1fr;gap:var(--sa-space-3)}
.sa-chalan-detail-top .sa-evidence-meta{gap:var(--sa-space-3)}
.sa-chalan-detail-top .sa-evidence-meta strong{overflow-wrap:anywhere;line-height:1.4}
.sa-chalan-detail-top .sa-evidence-location{height:110px}
.sa-chalan-detail-top .sa-evidence-event{grid-template-columns:30px minmax(0,1fr);gap:3px var(--sa-space-2);align-items:start;padding:var(--sa-space-2) 0;min-height:0}
.sa-chalan-detail-top .sa-evidence-event>i{grid-column:1;grid-row:1/3}
.sa-chalan-detail-top .sa-evidence-event>div{grid-column:2;padding:var(--sa-space-2);min-width:0}
.sa-chalan-detail-top .sa-evidence-event span{white-space:normal;overflow-wrap:anywhere}
.sa-chalan-detail-top .sa-evidence-event time{grid-column:2;justify-self:start;white-space:normal;line-height:1.4;padding-left:var(--sa-space-2)}
.sa-chalan-detail-top .sa-evidence-event:not(:last-child)::after{left:14px;top:38px;bottom:-8px}
}
@media(max-width:900px){
.sa-chalan-detail-top>.sa-evidence-timeline{margin-bottom:var(--sa-space-4);border:1px solid var(--sa-border);border-radius:12px;background:#fff}
}









/* One compact uploader checkbox beside the capture count. */
body.sa-raw-only .sa-raw-history-heading>h2{order:1;flex:0 0 auto!important;min-width:0;margin-right:auto}
body.sa-raw-only .sa-raw-history-tools{order:0;display:flex;flex:0 0 auto!important;width:auto!important;margin:0!important}
body.sa-raw-only .sa-capture-all-uploads{display:inline-flex;align-items:center;gap:5px;margin:0;padding:0;border:0;background:transparent;min-height:28px;color:var(--sa-muted);font-size:var(--sa-text-xs);font-weight:var(--sa-weight-medium);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
body.sa-raw-only .sa-capture-all-uploads input{appearance:auto;width:14px;height:14px;margin:0;accent-color:var(--sa-primary);flex-shrink:0}
body.sa-raw-only .sa-capture-all-uploads input:checked+span{color:var(--sa-primary);font-weight:var(--sa-weight-strong)}
body.sa-raw-only .sa-capture-all-uploads input:disabled+span{opacity:.6}
body.sa-raw-only button:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
body.sa-raw-only button,body.sa-raw-only .sa-capture-all-uploads{-webkit-tap-highlight-color:transparent}

/* Shared searchable multi-select theme. Only opt-in controls use these rules. */
select.sa-multi-select{width:100%;min-height:40px;font:inherit}
select.sa-multi-select+.select2-container{width:100%!important;max-width:100%}
select.sa-multi-select+.select2-container .select2-selection--multiple{min-height:40px;border:1px solid #d9deec;border-radius:8px;background:#fff;padding:3px 6px;font-size:var(--sa-text-xs)}
select.sa-multi-select+.select2-container .select2-selection__choice{background:#eef0ff;border:1px solid #dce0f5;border-radius:5px;color:#344168;margin:3px 4px 3px 0}
select.sa-multi-select+.select2-container .select2-search__field{font:inherit!important;min-height:22px!important;height:22px!important;width:auto!important;padding:0!important;margin:4px 0!important;border:0!important;box-shadow:none!important}
.sa-multi-select-dropdown{border:1px solid #d9deec;border-radius:8px;font-size:var(--sa-text-xs);color:#344168}
.sa-multi-select-dropdown .select2-results__option{padding:8px 10px}

/* Shared compact universal toolbar search. */
.sa-universal-search{display:flex;align-items:center;gap:var(--sa-space-2);min-width:0;width:min(360px,100%);margin:0 0 0 auto}
.sa-universal-search>.sa-input{flex:1;min-width:0;width:100%;box-sizing:border-box;height:var(--sa-control-compact,32px)!important;min-height:var(--sa-control-compact,32px)!important;max-height:var(--sa-control-compact,32px)!important;padding:0 var(--sa-space-3)!important;line-height:normal}

/* Project office uploads allow gallery or direct camera capture; location/voice remain capture-app only. */
.sa-office-upload-dialog :is(#rawLocationBadge,.sa-raw-note-options,#rawNoteType,#rawAudioRecord,#rawAudioRerecord){display:none!important}
.sa-office-upload-dialog .sa-raw-note-options + #rawTextNotes{margin-top:0}
.sa-office-upload-dialog #rawTextNotes textarea{box-sizing:border-box;width:100%;min-height:76px;padding:var(--sa-space-2) var(--sa-space-3);border:1px solid var(--sa-line,#d9deec);border-radius:8px;font:inherit}

/* Office modal starts with one file-picker action. */
.sa-office-upload-dialog #rawPhotoEmpty > :is(svg,strong,span){display:none}
.sa-office-upload-dialog #rawPhotoEmpty{min-height:0;padding:var(--sa-space-4);border:0;background:transparent}
.sa-office-upload-dialog #rawNotesSection{display:none!important}

/* Scoped geo-fence administration history; no capture-page selectors. */
.geo-control-history{display:grid;gap:var(--sa-space-3);min-width:0}
.geo-control-history>p{margin:0;line-height:1.5}
.geo-control-history .geo-history-entry{border:1px solid var(--sa-line,#d9deec);border-radius:var(--sa-radius-md,8px);overflow:hidden;background:var(--sa-surface,#fff)}
.geo-control-history .geo-history-entry>summary{padding:var(--sa-space-3);cursor:pointer;list-style-position:inside}
.geo-control-history .geo-history-entry>summary:focus-visible{outline:2px solid var(--sa-primary,#4f46e5);outline-offset:-3px}
.geo-control-history .geo-history-heading{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--sa-space-2);width:calc(100% - 24px);vertical-align:middle}
.geo-control-history .geo-history-heading strong{overflow-wrap:anywhere}
.geo-control-history .geo-history-action{flex-shrink:0;background:var(--sa-soft,#eef0ff);color:var(--sa-primary,#4338ca);padding:3px 8px;border-radius:999px;font-size:var(--sa-text-xs)}
.geo-control-history .geo-history-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:8px;color:var(--sa-muted,#64748b);font-size:var(--sa-text-xs)}
.geo-control-history .geo-history-projects{display:block;margin-top:4px;color:var(--sa-muted,#64748b);font-size:var(--sa-text-xs);overflow-wrap:anywhere}
.geo-control-history .geo-history-body{padding:var(--sa-space-3);border-top:1px solid var(--sa-line,#d9deec)}
.geo-control-history .geo-history-table-wrap{overflow-x:auto}
.geo-control-history .geo-history-comparison{width:100%;border-collapse:collapse;font-size:var(--sa-text-xs)}
.geo-control-history .geo-history-comparison :is(th,td){text-align:left;padding:8px;vertical-align:top;border-bottom:1px solid var(--sa-line,#d9deec);overflow-wrap:anywhere}
.geo-control-history .geo-history-comparison thead{background:var(--sa-soft,#f8fafc)}
.geo-control-history .geo-history-changed td:last-child{background:var(--sa-soft,#eef0ff);font-weight:600}
.geo-control-history .geo-history-coordinates{margin-top:12px;color:var(--sa-muted,#64748b);font-size:var(--sa-text-xs)}
.geo-control-history .geo-history-coordinates summary{cursor:pointer}
.geo-control-history .geo-history-coordinates strong{display:block;margin-top:8px}
.geo-control-history .geo-history-coordinates pre{max-height:180px;overflow:auto;padding:8px;background:var(--sa-soft,#f8fafc);border-radius:6px}
.geo-control-history .geo-history-empty{padding:24px;text-align:center;background:var(--sa-soft,#f8fafc);border-radius:8px}

/* Geo-fence shared-modal layout, formerly inline in the view. */

/* Scoped to this admin modal; the shared modal supplies header, footer and focus handling. */
.sa-modal-dialog.geo-control-dialog{width:min(1040px,calc(100vw - 32px));max-width:1040px;max-height:calc(100dvh - 32px)}
.geo-control-dialog .sa-modal-body{padding:0;overflow:auto}.geo-control-content{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:480px}.geo-control-content .geo-sidebar{overflow:auto}.geo-control-content .geo-map-wrap{min-height:480px}.geo-control-content .geo-map{height:100%;min-height:480px}.geo-control-content .geo-map-message{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:var(--sa-soft,#f8fafc);padding:16px;z-index:460}.geo-control-content .geo-map-message[hidden]{display:none}.geo-control-content .geo-error[hidden]{display:none}
@media(max-width:760px){.geo-control-content{grid-template-columns:1fr}.geo-control-content .geo-map-wrap,.geo-control-content .geo-map{min-height:360px}.geo-control-dialog .geo-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.geo-control-dialog .geo-sidebar{border-right:0;border-bottom:1px solid var(--sa-line,#e4e8f1)}}







body.sa-raw-only .sa-raw-history-card[data-pull-active="true"] .sa-capture-content-refresh{transition:none}
@keyframes sa-capture-pull-spin{from{transform:rotate(var(--pull-angle,0deg))}to{transform:rotate(calc(var(--pull-angle,0deg) + 360deg))}}



/* The mobile uploader row is a transparent part of the workspace. */
body.sa-raw-only .sa-raw-history-tools,body.sa-raw-only .sa-raw-user-filter,body.sa-raw-only .sa-capture-all-uploads{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}

/* Capture filter glass overlays the scrolling cards; one visual owner. */



/* Soft glass fades into the list, with sharp controls above the material. */

/* App health uses its own surface, independent of destructive confirmations. */
.sa-capture-health-dialog{position:fixed;inset:0;margin:auto;width:min(380px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;padding:0;border:1px solid #e3e6ed;border-radius:16px;background:#fff;color:#273153;box-sizing:border-box}
.sa-capture-health-dialog::backdrop{background:rgba(15,23,42,.28)}
.sa-capture-health-dialog .sa-raw-modal-head{padding:16px;border-bottom:1px solid #edf0f5}
.sa-capture-health-dialog .sa-raw-modal-head h2{margin:0;font-size:18px}
.sa-capture-health-dialog .sa-raw-delete-body{padding:16px;font-size:14px;line-height:1.6;white-space:pre-line}
.sa-capture-health-dialog .sa-raw-delete-body p{margin:0}
.sa-capture-health-dialog>footer{display:flex;gap:10px;padding:0 16px 16px}
.sa-capture-health-dialog>footer>button{flex:1;min-width:0;min-height:44px}


/* One material behind both rows; labels appear only after its cover returns. */
body.sa-raw-only .sa-raw-history-card::before{content:'';position:absolute;top:0;left:0;right:0;height:var(--sa-capture-navigation-height,92px);z-index:1240;pointer-events:none;opacity:var(--sa-filter-surface,1);background:rgba(244,246,249,.94);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-mask-image:linear-gradient(#000 0%,#000 80%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 80%,transparent 100%)}

/* Preserve the office upload layout separately from the standalone Capture shell. */
:where(body:not(.sa-raw-only)) .sa-raw-upload-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;gap:0}

/* Project Upload chalan only: headers and values share the same column edge. */
body.sa-has-shell .sa-content .sa-raw-office-upload .sa-office-upload-table :is(th,td){text-align:left!important}
body.sa-has-shell .sa-content .sa-raw-office-upload .sa-office-row-actions{justify-content:flex-start!important}
.sa-raw-office-upload .sa-office-upload-table .sa-raw-status{align-self:flex-start;display:inline-flex;max-width:100%}
.sa-raw-office-upload .sa-office-source{overflow-wrap:anywhere}
@media(min-width:761px){
 body.sa-has-shell .sa-content .sa-raw-office-upload .sa-office-upload-table{table-layout:fixed!important;min-width:1120px}
 .sa-raw-office-upload .sa-office-col-photos{width:21%}
 .sa-raw-office-upload .sa-office-col-uploader{width:21%}
 .sa-raw-office-upload .sa-office-col-source{width:16%}
 .sa-raw-office-upload .sa-office-col-status{width:15%}
 .sa-raw-office-upload .sa-office-col-notes{width:12%}
 .sa-raw-office-upload .sa-office-col-actions{width:15%}
}
