/* R4.6.0 late CSS bundle; preserves original cascade order. */

/* ===== BEGIN r449_point_archive_region_flow.css ===== */
.r449-archive-summary{display:grid;grid-template-columns:2fr 1fr 1.3fr .8fr;gap:14px;align-items:stretch;background:linear-gradient(135deg,rgba(236,253,245,.96),rgba(239,246,255,.96));border-color:rgba(14,165,233,.18)}
.r449-archive-summary>div{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.78);box-shadow:inset 0 0 0 1px rgba(14,116,144,.08)}
.r449-archive-summary b{display:block;color:#0f3557;font-size:1.05rem}.r449-archive-summary span,.r449-archive-summary small{display:block;color:#547089;margin-top:4px}.r449-district-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;background:#e0f2fe;color:#075985;font-weight:800;font-size:.78rem}.r449-scope-field select{border-color:#7dd3fc;background:#f8fdff}.r449-table-link{white-space:nowrap}.r449-admin-hint{padding:10px 12px;border-radius:14px;background:rgba(14,165,233,.08);color:#075985;font-weight:700}
@media(max-width:760px){.r449-archive-summary{grid-template-columns:1fr}.r449-archive-heading .heading-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.r449-archive-heading .heading-actions .button.primary{grid-column:1/-1}}
@media(orientation:landscape) and (max-height:620px){.app-header,.system-topbar{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:8px}.bottom-nav{height:58px}.content{padding-bottom:72px}.card{border-radius:18px}.map-shell,.daily-map-shell,.research-map-shell{min-height:calc(100vh - 170px)}}

/* ===== END r449_point_archive_region_flow.css ===== */

/* ===== BEGIN r45941_mobile_form_compact.css ===== */
/* R4.5.9.41 · compact, touch-friendly field forms
   Loaded last so mobile patrol/sampling forms no longer use oversized cards,
   controls or upload panels. Desktop layout is intentionally unchanged. */

form select[name="weather"] {
  width: 100%;
  min-width: 0;
  background-color: #fff;
}

@media (max-width: 820px) {
  .page-content {
    padding: 12px 10px calc(88px + env(safe-area-inset-bottom));
  }

  .page-heading {
    margin-bottom: 12px;
    gap: 8px;
  }

  .page-heading h1 {
    margin: 3px 0 4px;
    font-size: clamp(22px, 6.2vw, 28px);
    line-height: 1.18;
  }

  .page-heading p,
  .section-head p,
  .form-section-title p {
    font-size: 12px;
    line-height: 1.5;
  }

  .r392-form,
  .r390-form,
  .sampling-layout,
  form[data-r392-form] {
    gap: 10px !important;
  }

  .r392-form > .card,
  .r390-form > .card,
  .sampling-layout > .card,
  .sample-main,
  .photo-upload-panel,
  .ocr-upload,
  .location-box,
  .site-callout,
  .r392-point-summary,
  .r390-point-summary {
    border-radius: 14px !important;
  }

  .r392-form > .card,
  .r390-form > .card,
  .sampling-layout > .card,
  .sample-main {
    padding: 13px !important;
  }

  .section-head,
  .form-section-title {
    gap: 9px !important;
    margin-bottom: 10px !important;
  }

  .section-index,
  .form-section-title > span {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    font-size: 12px !important;
  }

  .section-head h2,
  .form-section-title h2,
  .sample-main h2 {
    font-size: 17px !important;
    line-height: 1.25;
  }

  .form-grid,
  .parameter-grid,
  .readings-grid,
  .location-fields,
  .location-manual,
  .quick-test-grid,
  .photo-upload-grid {
    gap: 9px !important;
  }

  .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .form-grid > label,
  .parameter-field,
  .r392-form > label,
  .r390-form > label {
    min-width: 0;
    font-size: 13px !important;
    line-height: 1.35;
  }

  .form-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  .form-grid select,
  .r392-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  .r392-form select,
  .r390-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  .r390-form select,
  .parameter-field input,
  .location-manual input {
    min-height: 42px !important;
    height: 42px;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
  }

  .r392-form textarea,
  .r390-form textarea,
  .sampling-layout textarea,
  .form-grid textarea {
    min-height: 76px !important;
    padding: 9px 10px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 1.5;
    resize: vertical;
  }

  .r392-point-summary,
  .r390-point-summary,
  .site-callout {
    padding: 10px !important;
    gap: 9px !important;
    align-items: flex-start !important;
  }

  .r392-point-summary > span:first-child,
  .r390-point-summary > span:first-child,
  .site-callout > span:first-child {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    font-size: 16px !important;
  }

  .r392-point-summary b,
  .r390-point-summary b,
  .site-callout b {
    font-size: 14px !important;
  }

  .r392-point-summary small,
  .r390-point-summary small,
  .site-callout small {
    font-size: 11px !important;
    line-height: 1.45;
  }

  .r392-point-summary .tag,
  .r390-point-summary .tag {
    max-width: 36%;
    padding: 4px 7px !important;
    font-size: 10px !important;
    white-space: normal;
    text-align: center;
  }

  .location-box {
    padding: 10px !important;
    gap: 8px !important;
    align-items: flex-start !important;
  }

  .location-box b {
    font-size: 13px !important;
  }

  .location-box small {
    font-size: 11px !important;
    line-height: 1.45;
  }

  .location-actions,
  .upload-actions,
  .photo-upload-actions,
  .form-actions,
  .heading-actions {
    gap: 7px !important;
  }

  .button,
  button.button,
  .upload-button,
  .photo-choice {
    min-height: 40px !important;
    padding: 8px 11px !important;
    border-radius: 10px !important;
    font-size: 13px !important;
  }

  .button.small,
  button.small {
    min-height: 34px !important;
    padding: 6px 9px !important;
    font-size: 12px !important;
  }

  .ocr-workbench,
  .ocr-upload,
  .photo-upload-panel,
  .quick-test-card {
    padding: 10px !important;
  }

  .ocr-upload-header,
  .photo-upload-panel > b,
  .quick-test-card > b {
    font-size: 13px !important;
  }

  .photo-preview-grid,
  .quick-test-card .photo-preview-grid {
    gap: 6px !important;
  }

  .photo-preview-grid img,
  .standard-meter-preview img {
    max-height: 150px;
    object-fit: cover;
  }

  .parameter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .parameter-field {
    padding: 9px !important;
    border-radius: 12px !important;
  }

  .parameter-field > span,
  .parameter-label,
  .parameter-unit {
    font-size: 11px !important;
  }

  .form-actions {
    position: sticky;
    bottom: calc(64px + env(safe-area-inset-bottom));
    z-index: 8;
    margin: 4px -2px 0;
    padding: 8px;
    border: 1px solid rgba(17, 111, 205, .14);
    border-radius: 14px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 10px 28px rgba(12, 67, 124, .12);
    backdrop-filter: blur(10px);
  }

  .form-actions > * {
    flex: 1 1 0;
    text-align: center;
    justify-content: center;
  }
}

@media (max-width: 520px) {
  .form-grid,
  .location-fields,
  .photo-upload-grid,
  .quick-test-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .form-grid > .full,
  .form-grid > .wide,
  .form-grid > .span-2 {
    grid-column: 1 !important;
  }

  .location-box {
    flex-direction: column;
  }

  .location-actions,
  .upload-actions,
  .photo-upload-actions {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .location-actions > *,
  .upload-actions > *,
  .photo-upload-actions > * {
    width: 100%;
    min-width: 0;
    justify-content: center;
    text-align: center;
  }

  .r392-point-summary,
  .r390-point-summary {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .r392-point-summary .tag,
  .r390-point-summary .tag {
    grid-column: 2;
    max-width: 100%;
    justify-self: start;
  }
}

/* ===== END r45941_mobile_form_compact.css ===== */

/* ===== BEGIN r460_performance_polish.css ===== */
/* R4.6.0 maximum-response performance and visual polish. */
:root{
  --r460-ease:cubic-bezier(.22,.61,.36,1);
  --r460-shadow:0 12px 34px rgba(14,62,118,.10);
}
html{scroll-behavior:smooth;text-rendering:optimizeLegibility}
body.app-shell{background-image:linear-gradient(180deg,rgba(238,247,255,.68),rgba(247,250,255,.35) 36%,transparent 72%)}
.page-content{animation:r460-page-in .18s var(--r460-ease) both}
@keyframes r460-page-in{from{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}
.card,.panel,.table-card,.filter-card,.dashboard-card,.metric-card{transition:box-shadow .18s var(--r460-ease),border-color .18s var(--r460-ease),transform .18s var(--r460-ease)}
@media (hover:hover) and (pointer:fine){
  .card:hover,.panel:hover,.table-card:hover,.dashboard-card:hover,.metric-card:hover{border-color:rgba(23,113,208,.22);box-shadow:var(--r460-shadow)}
  .nav-item,.button,a.card-link{transition:background-color .14s ease,color .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}
}
button,input,select,textarea,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(37,131,235,.24);outline-offset:2px}
.r460-route-progress{position:fixed;z-index:2147483646;left:0;top:0;width:100%;height:3px;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;background:linear-gradient(90deg,#2f80ed,#38bdf8,#245eea);background-size:220% 100%}
html.r460-navigating .r460-route-progress,html.r4597-navigating .r460-route-progress{opacity:1;transform:none;animation:r460-progress 1s linear infinite}
@keyframes r460-progress{0%{background-position:100% 0;clip-path:inset(0 88% 0 0)}45%{clip-path:inset(0 28% 0 0)}100%{background-position:0 0;clip-path:inset(0 0 0 0)}}
html.r460-navigating .main-content,html.r4597-navigating .main-content{cursor:progress}
.nav-item.is-pending,.mobile-nav a.is-pending,.mobile-tools-panel-r390 a.is-pending{background:rgba(37,126,226,.12)!important;color:#0759b6!important}
.sidebar,.mobile-header-r390,.topbar{backdrop-filter:saturate(1.08)}
.data-table-wrap,.table-responsive{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
img{content-visibility:auto}
@media (min-width:900px){
  .page-content>.table-card,.page-content>.panel,.page-content>.card-grid,.page-content>.records-grid{content-visibility:auto;contain-intrinsic-size:1px 520px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page-content{animation:none}.card,.panel,.table-card,.nav-item,.button{transition:none!important}.r460-route-progress{animation:none!important}}

/* ===== END r460_performance_polish.css ===== */

/* ===== BEGIN r462_nearest_filter_record_archive.css ===== */
/* R4.6.2 nearest filter and append-only archive guidance. */
.r462-nearest-filter{margin:0 0 16px;padding:15px 16px;border:1px solid rgba(18,119,238,.2);border-radius:16px;background:linear-gradient(135deg,rgba(236,248,255,.96),rgba(247,252,255,.98));box-shadow:0 10px 28px rgba(16,91,170,.07)}
.r462-filter-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.r462-filter-head>div{display:grid;gap:3px}.r462-filter-head b{color:#074da8;font-size:15px}.r462-filter-head small{color:#52708f;line-height:1.55}.r462-filter-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.r462-filter-grid label{display:grid;gap:6px;color:#244a70;font-size:13px;font-weight:700}.r462-filter-grid select{width:100%;min-height:42px;background:#fff;border-color:#b9dcff}.r462-filter-status{margin-top:10px;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.82);color:#476989;font-size:12px;line-height:1.55}.r462-filter-status[data-state="success"]{color:#08765d;background:#ecfbf5}.r462-filter-status[data-state="error"]{color:#a44a21;background:#fff5eb}.r462-filter-status[data-state="loading"]{color:#075ab5;background:#edf7ff}.r462-filter-status[data-state="empty"]{color:#7a5c12;background:#fff9df}.r462-filter-head button[data-loading="1"]{opacity:.7;cursor:wait}.r462-filter-head button[data-loading="1"]::first-letter{animation:r462spin .8s linear infinite}@keyframes r462spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.r462-nearest-filter{padding:13px;margin-bottom:12px;border-radius:14px}.r462-filter-head{align-items:flex-start;flex-direction:column;gap:10px}.r462-filter-head .button{width:100%;min-height:42px}.r462-filter-grid{grid-template-columns:1fr;gap:9px}.r462-filter-status{font-size:11px}}
/* ===== END r462_nearest_filter_record_archive.css ===== */

/* ===== BEGIN r463_mobile_patrol_weather_upload_record_fix.css ===== */
/* R4.6.3 mobile-first patrol form, weather, upload and record archive polish. */
form select[name="weather"],form select[name="weather"] option{color:#173d63!important;background:#fff!important;-webkit-text-fill-color:#173d63!important}
.r463-mobile-upload-status{margin:10px 0;padding:10px 12px;border:1px solid #c9e3ff;border-radius:12px;background:#f3f9ff;color:#25597e;font-size:12px;line-height:1.5;font-weight:700}
.r463-mobile-upload-status[data-state="loading"]{background:#eef7ff;color:#075ab5}.r463-mobile-upload-status[data-state="success"]{background:#edf9f4;color:#08765d}.r463-mobile-upload-status[data-state="error"]{background:#fff2ee;color:#a63e2a}
button.is-submitting,input.is-submitting{opacity:.68;cursor:wait!important}
.r463-record-summary{display:flex;align-items:baseline;gap:7px;margin:10px 0 12px;padding:10px 13px;border:1px solid #d8ebff;border-radius:12px;background:linear-gradient(135deg,#f5faff,#fbfdff);color:#406584}.r463-record-summary b{font-size:22px;color:#075ec8}.r463-record-summary span{font-weight:800}.r463-record-summary small{margin-left:auto;color:#67809a}
.r463-record-filter [data-r463-record-task] option[hidden]{display:none}
.r463-record-table td small{display:block;margin-top:4px;line-height:1.45}
@media(max-width:820px){
  .r463-record-filter{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;padding:10px!important;border-radius:14px!important}
  .r463-record-filter>input,.r463-record-filter>select{width:100%!important;min-width:0!important;height:42px!important}
  .r463-record-filter>input:first-child{grid-column:1/-1}.r463-record-filter>.button{min-height:40px!important}
  .r463-record-summary{align-items:center;flex-wrap:wrap;margin-top:8px}.r463-record-summary small{width:100%;margin-left:0}
  .r463-record-table{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .r463-record-table .table-wrap{overflow:visible!important}.r463-record-table table,.r463-record-table tbody{display:block!important;width:100%!important}.r463-record-table thead{display:none!important}
  .r463-record-table tr{display:grid!important;grid-template-columns:1fr auto;gap:8px 12px;margin:0 0 10px;padding:13px;border:1px solid #d8eaff;border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(15,82,145,.07)}
  .r463-record-table td{display:block!important;width:auto!important;min-width:0!important;padding:0!important;border:0!important;text-align:left!important;white-space:normal!important}
  .r463-record-table td::before{content:attr(data-label);display:block;margin-bottom:3px;color:#6d88a3;font-size:10px;font-weight:800;letter-spacing:.02em}
  .r463-record-table td:first-child{grid-column:2;grid-row:1}.r463-record-table td:nth-child(2){grid-column:1;grid-row:1/span 2}.r463-record-table td:last-child{grid-column:1/-1;padding-top:7px!important;border-top:1px dashed #dbe9f6!important}
  .r463-record-table td[data-label="巡查情况"],.r463-record-table td[data-label="采样结果"]{grid-column:1/-1}
  .r463-record-table .table-empty{grid-column:1/-1!important;text-align:center!important;padding:24px 10px!important}
  .bulk-toolbar{border-radius:14px!important}.bulk-toolbar>div{width:100%;display:flex!important;gap:7px!important;flex-wrap:wrap}.bulk-toolbar select,.bulk-toolbar input{min-width:0!important;flex:1 1 150px}
  .r438-inline-export-links{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.r438-inline-export-links .button{width:100%;justify-content:center}
}
@media(max-width:430px){.r463-record-filter{grid-template-columns:1fr}.r463-record-filter>input:first-child{grid-column:auto}.r438-inline-export-links{grid-template-columns:1fr}.r463-record-table tr{grid-template-columns:1fr auto}}
/* ===== END r463_mobile_patrol_weather_upload_record_fix.css ===== */

/* ===== BEGIN r4632_mobile_record_scroll_stability.css ===== */
/* R4.6.3.2 mobile record archive scroll-stability layer. */
@media(max-width:820px){
  html.r4632-record-scroll-stable{scroll-behavior:auto!important;overflow-anchor:none!important;scroll-snap-type:none!important}
  body.r4632-record-scroll-stable{overflow-x:hidden!important;overscroll-behavior-y:auto!important;scroll-snap-type:none!important}
  .r4632-mobile-record-scroll-stable{animation:none!important;transform:none!important;overflow-anchor:none!important;contain:none!important;content-visibility:visible!important;touch-action:pan-y}
  .r4632-mobile-record-scroll-stable .page-heading,
  .r4632-mobile-record-scroll-stable .r463-record-filter,
  .r4632-mobile-record-scroll-stable .r463-record-summary,
  .r4632-mobile-record-scroll-stable .r438-inline-export-links,
  .r4632-mobile-record-scroll-stable .bulk-toolbar,
  .r4632-mobile-record-scroll-stable .r463-record-table,
  .r4632-mobile-record-scroll-stable .r463-record-table .table-wrap,
  .r4632-mobile-record-scroll-stable .r463-record-table table,
  .r4632-mobile-record-scroll-stable .r463-record-table tbody,
  .r4632-mobile-record-scroll-stable .r463-record-table tr{
    overflow-anchor:none!important;contain:none!important;content-visibility:visible!important;scroll-snap-align:none!important;transform:none!important
  }
  .r4632-mobile-record-scroll-stable .r463-record-table .table-wrap{overflow:visible!important;-webkit-overflow-scrolling:auto!important;overscroll-behavior:auto!important;touch-action:pan-y!important}
  .r4632-mobile-record-scroll-stable input,
  .r4632-mobile-record-scroll-stable select,
  .r4632-mobile-record-scroll-stable button,
  .r4632-mobile-record-scroll-stable a{touch-action:manipulation}
  .r4632-mobile-record-scroll-stable .r463-record-table tr{animation:none!important;transition:box-shadow .15s ease,border-color .15s ease!important}
}

/* ===== END r4632_mobile_record_scroll_stability.css ===== */



/* ===== BEGIN r464_android_mobile_reliability.css ===== */
/* R4.6.4 Android/mobile record archive and reliable-submit UI. */
@media (max-width:900px), (pointer:coarse){
  html.r464-record-scroll-lock,
  body.r464-record-scroll-lock{
    position:fixed!important;inset:0!important;width:100%!important;height:100%!important;
    overflow:hidden!important;overscroll-behavior:none!important;scroll-behavior:auto!important;
    overflow-anchor:none!important;touch-action:none!important
  }
  body.r464-record-scroll-lock .main-content.r390-main{
    position:fixed!important;left:0!important;right:0!important;top:58px!important;
    bottom:calc(56px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
    overflow:hidden!important;transform:none!important
  }
  body.r464-record-scroll-lock .main-content.r390-main>.r390-topbar{display:none!important}
  body.r464-record-scroll-lock .main-content.r390-main>.page-content{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;
    margin:0!important;padding:12px 10px 34px!important;overflow-x:hidden!important;overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;scroll-behavior:auto!important;
    scroll-snap-type:none!important;overflow-anchor:none!important;touch-action:pan-y!important;contain:layout paint
  }
  body.r464-record-scroll-lock .r463-mobile-record-page,
  body.r464-record-scroll-lock .r463-mobile-record-page *{scroll-snap-align:none!important;overflow-anchor:none!important}
  body.r464-record-scroll-lock .r463-mobile-record-page{min-height:100%;touch-action:pan-y!important}
  body.r464-record-scroll-lock .r463-record-filter input,
  body.r464-record-scroll-lock .r463-record-filter select,
  body.r464-record-scroll-lock .r463-record-filter button,
  body.r464-record-scroll-lock .bulk-toolbar input,
  body.r464-record-scroll-lock .bulk-toolbar select,
  body.r464-record-scroll-lock .bulk-toolbar button,
  body.r464-record-scroll-lock .r463-record-table a,
  body.r464-record-scroll-lock .r463-record-table input{touch-action:manipulation!important;pointer-events:auto!important}
}
.r464-mobile-submit-status{margin:12px 0;padding:12px 14px;border-radius:14px;font-weight:700;line-height:1.55;border:1px solid #c7ddf5;background:#f3f9ff;color:#174e82}
.r464-mobile-submit-status[data-state="loading"]{border-color:#9ecbff;background:#edf7ff;color:#075eae}
.r464-mobile-submit-status[data-state="success"]{border-color:#9bd9be;background:#effbf5;color:#08734b}
.r464-mobile-submit-status[data-state="error"]{border-color:#f1b8b8;background:#fff3f3;color:#a51d2d}
@media(max-width:900px){
  form[data-r464-managed-submit="1"] .form-actions{position:sticky!important;bottom:calc(64px + env(safe-area-inset-bottom,0px))!important;z-index:80!important;background:rgba(247,251,255,.96)!important;padding:10px!important;border-radius:18px!important;box-shadow:0 12px 30px rgba(8,73,132,.14)!important;backdrop-filter:blur(10px)}
  form[data-r464-managed-submit="1"] button.is-submitting{opacity:.72;cursor:wait}
}

/* ===== END r464_android_mobile_reliability.css ===== */


/* ===== BEGIN r465_mobile_record_sort_multiselect.css ===== */
/* R4.6.5 mobile record ordering and multi-select. */
.r465-mobile-multi-toggle{display:none}
.r465-record-time b,.r465-record-time small{display:block}.r465-record-time small{margin-top:4px;color:#6a7f93}
@media(max-width:900px){
  html.r464-record-scroll-lock,body.r464-record-scroll-lock{height:auto!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;scroll-behavior:auto!important}
  body.r464-record-scroll-lock .main-content.r390-main{height:auto!important;min-height:100dvh!important;overflow:visible!important}
  body.r464-record-scroll-lock .main-content.r390-main>.page-content{height:auto!important;min-height:0!important;overflow:visible!important;overscroll-behavior-y:auto!important;scroll-behavior:auto!important;-webkit-overflow-scrolling:touch!important}
  body.r464-record-scroll-lock [data-r465-record-page],body.r464-record-scroll-lock [data-r465-record-page] *{scroll-snap-type:none!important;scroll-snap-align:none!important;overflow-anchor:auto!important}
  .r465-record-sort-fields{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  .r465-record-sort-fields label{min-width:0!important;margin:0!important}.r465-record-sort-fields select{width:100%!important}
  .r465-record-actions{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important;margin:8px 0 12px}
  .r465-mobile-multi-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 16px;border:1px solid #69b6ed;border-radius:14px;background:#eef8ff;color:#075b9c;font-weight:800}
  [data-r465-record-page] .r4598-bulk-toolbar{display:none!important}
  [data-r465-record-page] .r463-record-table th:first-child,[data-r465-record-page] .r463-record-table td:first-child{display:none!important}
  [data-r465-record-page].is-multi-select .r4598-bulk-toolbar{display:flex!important;position:sticky!important;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:120;margin:10px 0;padding:10px;border-radius:16px;background:rgba(244,250,255,.98);box-shadow:0 10px 28px rgba(4,66,122,.18);backdrop-filter:blur(10px)}
  [data-r465-record-page].is-multi-select .r463-record-table th:first-child,[data-r465-record-page].is-multi-select .r463-record-table td:first-child{display:flex!important;align-items:center!important;justify-content:flex-start!important}
  [data-r465-record-page] input[type=checkbox][data-select-item],[data-r465-record-page] input[data-select-all]{width:26px!important;height:26px!important;min-width:26px!important;accent-color:#0d8bd8;touch-action:manipulation}
  [data-r465-record-page].is-multi-select .r463-record-table tr{padding-left:12px!important;border-color:#84c8f3!important}
  [data-r465-record-page].is-multi-select .r463-record-table td[data-label="选择"]{position:absolute;right:12px;top:12px;width:auto!important;padding:0!important;border:0!important}
  [data-r465-record-page].is-multi-select .r463-record-table tbody tr{position:relative;padding-right:52px!important}
  [data-r465-record-page] .r4598-bulk-toolbar>div{width:100%;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
  [data-r465-record-page] .r4598-bulk-toolbar select,[data-r465-record-page] .r4598-bulk-toolbar input{min-width:0;flex:1 1 150px}
}
/* ===== END r465_mobile_record_sort_multiselect.css ===== */

/* ===== BEGIN r466_mobile_scroll_catalog.css ===== */
/* R4.6.6 Android/WebView native record scroll + compact region/type catalog. */
@media (max-width:900px), (pointer:coarse){
  html.r466-record-native-scroll,
  body.r466-record-native-scroll{
    position:static!important;inset:auto!important;width:100%!important;height:auto!important;
    min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;
    overscroll-behavior-y:auto!important;scroll-behavior:auto!important;touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important
  }
  body.r466-record-native-scroll .main-content.r390-main{
    position:relative!important;inset:auto!important;left:auto!important;right:auto!important;
    top:auto!important;bottom:auto!important;width:100%!important;height:auto!important;
    min-height:100dvh!important;margin:0!important;padding-top:62px!important;
    padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
    overflow:visible!important;transform:none!important;contain:none!important;touch-action:pan-y!important
  }
  body.r466-record-native-scroll .main-content.r390-main>.page-content{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
    min-height:calc(100dvh - 144px)!important;max-width:none!important;margin:0!important;
    padding:12px 10px calc(112px + env(safe-area-inset-bottom,0px))!important;
    overflow:visible!important;overscroll-behavior-y:auto!important;scroll-behavior:auto!important;
    overflow-anchor:none!important;contain:none!important;content-visibility:visible!important;
    -webkit-overflow-scrolling:touch!important;touch-action:pan-y!important
  }
  body.r466-record-native-scroll [data-r465-record-page],
  body.r466-record-native-scroll [data-r465-record-page] .r463-record-table,
  body.r466-record-native-scroll [data-r465-record-page] .table-wrap,
  body.r466-record-native-scroll [data-r465-record-page] table,
  body.r466-record-native-scroll [data-r465-record-page] tbody,
  body.r466-record-native-scroll [data-r465-record-page] tr{
    position:relative!important;height:auto!important;max-height:none!important;overflow:visible!important;
    contain:none!important;content-visibility:visible!important;transform:none!important;
    scroll-snap-align:none!important;overflow-anchor:none!important;touch-action:pan-y!important
  }
  body.r466-record-native-scroll [data-r465-record-page] .table-wrap{
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:auto!important
  }
  body.r466-record-native-scroll [data-r465-record-page] input,
  body.r466-record-native-scroll [data-r465-record-page] select,
  body.r466-record-native-scroll [data-r465-record-page] button,
  body.r466-record-native-scroll [data-r465-record-page] a{
    pointer-events:auto!important;touch-action:manipulation!important
  }

  /* Region classification and field-option library: denser typography and
     single-column content that remains readable on narrow Android screens. */
  .r45925-wrap{width:100%!important;max-width:none!important;padding:0!important}
  .r45925-hero{padding:16px 14px!important;border-radius:18px!important;margin-bottom:12px!important}
  .r45925-hero h1{font-size:23px!important;line-height:1.22!important;margin:5px 0 7px!important}
  .r45925-hero p,.r45925-note,.r45925-muted{font-size:12px!important;line-height:1.55!important}
  .r45925-note{padding:9px 10px!important;border-radius:12px!important}
  .r45925-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:10px 0!important}
  .r45925-kpi{padding:10px!important;border-radius:13px!important;min-width:0!important}
  .r45925-kpi span{font-size:10px!important;line-height:1.25!important;white-space:normal!important}
  .r45925-kpi b{font-size:20px!important;line-height:1.15!important}
  .r45925-card{padding:13px!important;margin:12px 0!important;border-radius:17px!important}
  .r45925-card h2{font-size:18px!important;line-height:1.3!important}
  .r45925-form{grid-template-columns:1fr!important;gap:9px!important;padding:10px!important;margin:10px 0 12px!important;border-radius:14px!important}
  .r45925-form .span3{grid-column:auto!important}
  .r45925-form label,.r45925-table label,.r466-catalog-field{font-size:11px!important;line-height:1.35!important}
  .r45925-form input,.r45925-form select,.r45925-table input,.r45925-table select{
    min-height:40px!important;padding:7px 10px!important;border-radius:10px!important;
    font-size:14px!important;font-weight:650!important
  }
  .r45925-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;padding:10px!important;margin:10px 0!important;border-radius:14px!important;font-size:12px!important}
  .r45925-toolbar form,.r45925-toolbar>div{display:flex!important;gap:7px!important;flex-wrap:wrap!important;align-items:center!important;width:100%!important}
  .r45925-btn{min-height:38px!important;padding:6px 11px!important;border-radius:10px!important;font-size:12px!important;flex:1 1 auto!important}
  .r45925-group{margin:10px 0!important;border-radius:14px!important}
  .r45925-group summary{padding:10px 11px!important;font-size:12px!important;line-height:1.35!important;gap:8px!important}
  .r45925-badge{font-size:10px!important;padding:3px 7px!important;white-space:nowrap!important}
  .r45925-table{border-radius:12px!important;overflow:visible!important}
  .r45925-table table,.r45925-table tbody,.r45925-table tr,.r45925-table td{display:block!important;width:100%!important;min-width:0!important}
  .r45925-table tr{padding:10px!important;border-top:1px solid #e3f2fc!important}
  .r45925-table td{padding:3px 0!important;border:0!important}
  .r45925-check{width:auto!important;text-align:left!important}
  .r45925-check input[type=checkbox]{width:22px!important;height:22px!important;min-height:22px!important}
  .r45925-inline,.r45925-option{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;align-items:end!important}
  .r45925-inline>input[name=label],.r45925-inline>input[name=description],
  .r45925-option>input[name=label],.r45925-option>input[name=description],
  .r466-catalog-field.is-wide{grid-column:1/-1!important}
  .r45925-textbtn{min-height:38px!important;border:1px solid #b8ddff!important;border-radius:10px!important;background:#f4faff!important;font-size:12px!important}
  .r45925-danger{background:#fff4f6!important;border-color:#fecdd3!important}
  .r466-catalog-caption{display:block!important;margin:0 0 4px!important;color:#55718a!important;font-size:10px!important;font-weight:800!important}
}

/* R4.6.6 hard override: r464 adds the lock class before this layer runs.
   Target that original class directly so Android can scroll even when an old
   WebView delays or skips the helper JS class. */
@media (max-width:900px), (pointer:coarse){
  html.r464-record-scroll-lock{
    position:static!important;inset:auto!important;width:100%!important;height:auto!important;
    min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;
    overscroll-behavior-y:auto!important;scroll-behavior:auto!important;
    touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important
  }
  body.r464-record-scroll-lock,
  body.r464-record-page-body{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
    min-height:100vh!important;overflow-x:hidden!important;overflow-y:visible!important;
    overscroll-behavior-y:auto!important;scroll-behavior:auto!important;
    touch-action:pan-y!important
  }
  body.r464-record-scroll-lock .main-content.r390-main,
  body.r464-record-page-body .main-content.r390-main{
    position:relative!important;inset:auto!important;left:auto!important;right:auto!important;
    top:auto!important;bottom:auto!important;width:100%!important;height:auto!important;
    min-height:100dvh!important;overflow:visible!important;contain:none!important;
    transform:none!important;touch-action:pan-y!important
  }
  body.r464-record-scroll-lock .main-content.r390-main>.page-content,
  body.r464-record-page-body .main-content.r390-main>.page-content{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
    min-height:calc(100dvh - 140px)!important;max-height:none!important;overflow:visible!important;
    contain:none!important;content-visibility:visible!important;touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important
  }
  body.r464-record-page-body .r463-mobile-record-page,
  body.r464-record-page-body .r463-record-table,
  body.r464-record-page-body .r463-record-table .table-wrap{
    height:auto!important;max-height:none!important;overflow:visible!important;
    contain:none!important;content-visibility:visible!important;touch-action:pan-y!important
  }
}
/* ===== END r466_mobile_scroll_catalog.css ===== */

/* ===== BEGIN r467_quick_text_record_select_speed.css ===== */
/* R4.6.7 quick-test text, always-visible record selection and mobile polish. */
.r467-selection-hint{display:inline-flex;align-items:center;gap:6px;color:#42677f;font-size:12px;font-weight:800}
.quick-test-card>input[type=text],.quick-test-card>input:not([type]){font-variant-numeric:tabular-nums}
@media(max-width:900px),(pointer:coarse){
  [data-r465-record-page] .r463-record-table th:first-child,[data-r465-record-page] .r463-record-table td:first-child{display:flex!important}
  [data-r465-record-page] .r463-record-table tbody tr{position:relative!important;padding-left:58px!important}
  [data-r465-record-page] .r463-record-table td.r467-select-cell{position:absolute!important;left:12px!important;right:auto!important;top:14px!important;width:34px!important;min-width:34px!important;padding:0!important;border:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
  [data-r465-record-page] .r463-record-table td.r467-select-cell:before{display:none!important}
  [data-r465-record-page] .r463-record-table input[data-select-item]{width:28px!important;height:28px!important;min-width:28px!important;border-radius:8px!important}
  [data-r465-record-page] .r463-record-table thead{display:none!important}
  [data-r465-record-page] .r4598-bulk-toolbar{display:none!important}
  [data-r465-record-page].has-r467-selection .r4598-bulk-toolbar,[data-r465-record-page].is-multi-select .r4598-bulk-toolbar{display:flex!important;position:sticky!important;bottom:calc(78px + env(safe-area-inset-bottom,0px));z-index:125}
  .r465-mobile-multi-toggle{display:inline-flex!important}
  .r467-selection-hint{font-size:11px;flex:1 1 180px}
  .quick-test-grid{gap:10px!important}
  .quick-test-card{border-radius:16px!important;padding:12px!important;background:linear-gradient(145deg,#fff,#f5fbff)!important;box-shadow:0 8px 22px rgba(18,94,151,.07)!important}
  .quick-test-card>b{font-size:14px!important;display:flex!important;align-items:center!important;gap:6px!important}
  .quick-test-card>b:before{content:'✎';display:inline-grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#e8f5ff;color:#0879c9;font-size:12px}
  .quick-test-card>input{min-height:46px!important;font-size:14px!important;padding:9px 11px!important;border-radius:12px!important}
  .r463-record-summary,.r465-record-actions,.r438-inline-export-links{border-radius:14px!important}
  .r463-record-table tbody tr{border:1px solid #d9ebf8!important;border-radius:17px!important;box-shadow:0 7px 20px rgba(17,83,133,.06)!important}
}
/* ===== END r467_quick_text_record_select_speed.css ===== */

/* ===== BEGIN r468_tablet_mobile_record_layout.css ===== */
/* R4.6.8 tablet/mobile record layout, checkbox visibility and touch performance. */
:root{--r468-mobile-header:62px;--r468-mobile-nav:72px}

/* Touch tablets should use the mobile shell even when their CSS viewport is
   wider than 1000px. This prevents the fixed sidebar from consuming the
   record table width in portrait and landscape. */
@media (pointer:coarse) and (max-width:1600px){
  body.app-shell .sidebar.r390-sidebar,body.app-shell .r390-sidebar,body.app-shell .r390-topbar{display:none!important}
  body.app-shell .mobile-header-r390{display:flex!important;position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:700!important;min-height:var(--r468-mobile-header)!important;height:auto!important}
  body.app-shell .mobile-header-r390 .brand,body.app-shell .mobile-header-r390 .brand b,body.app-shell .mobile-header-r390 .brand small{color:#fff!important}
  body.app-shell .mobile-header-r390 .brand-mark{color:#fff!important;background:linear-gradient(145deg,#1688ee,#12b9bb)!important;border:1px solid rgba(255,255,255,.55)!important}
  body.app-shell .mobile-header-r390{align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:8px max(12px,env(safe-area-inset-left,0px))!important;background:linear-gradient(110deg,#075fc6,#0a8fd5 62%,#10b9a5)!important;color:#fff!important;box-shadow:0 5px 18px rgba(2,62,130,.2)!important}
  body.app-shell .mobile-header-r390 .brand{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;max-width:calc(100% - 150px)!important;padding:0!important;margin:0!important}
  body.app-shell .mobile-header-r390 .brand>span:last-child{min-width:0!important}
  body.app-shell .mobile-header-r390 .brand b{display:block!important;font-size:16px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body.app-shell .mobile-header-r390 .brand small{display:block!important;font-size:9px!important;line-height:1.15!important;opacity:.78!important}
  body.app-shell .mobile-tools-r390{position:relative!important;margin-left:auto!important;z-index:1200!important}
  body.app-shell .mobile-tools-r390 summary,body.app-shell .mobile-logout-r390{display:flex!important;align-items:center!important;justify-content:center!important;height:38px!important;min-height:38px!important;padding:0 14px!important;border:1px solid rgba(255,255,255,.38)!important;border-radius:14px!important;background:rgba(255,255,255,.18)!important;color:#fff!important;font-size:13px!important;line-height:1!important}
  body.app-shell .mobile-header-r390>form{display:block!important;margin:0!important;padding:0!important;height:auto!important}
  body.app-shell .mobile-tools-panel-r390{position:absolute!important;right:0!important;top:44px!important;width:min(240px,calc(100vw - 24px))!important;max-height:calc(100dvh - 130px)!important;overflow:auto!important;padding:8px!important;border-radius:14px!important;background:#fff!important;box-shadow:0 16px 38px rgba(2,42,88,.28)!important}
  body.app-shell .r390-bottom-nav{align-items:stretch!important;justify-content:space-around!important;padding:0 max(6px,env(safe-area-inset-left,0px)) env(safe-area-inset-bottom,0px) max(6px,env(safe-area-inset-right,0px))!important;background:rgba(255,255,255,.98)!important;border-top:1px solid #d8e9f6!important;box-shadow:0 -7px 24px rgba(9,72,126,.1)!important}
  body.app-shell .r390-bottom-nav>a,body.app-shell .r390-bottom-nav>.mobile-switch-form{display:flex!important;flex:1 1 0!important;min-width:0!important;height:58px!important;min-height:58px!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:2px!important;color:#52708e!important}
  body.app-shell .r390-bottom-nav>a>span,body.app-shell .r390-bottom-nav>.mobile-switch-form span{font-size:20px!important;line-height:1!important}
  body.app-shell .r390-bottom-nav>a>small,body.app-shell .r390-bottom-nav>.mobile-switch-form small{font-size:10px!important;line-height:1.15!important}
  body.app-shell .r390-bottom-nav .mobile-add{align-self:center!important;flex:0 0 58px!important;width:58px!important;height:58px!important;min-height:58px!important;border-radius:18px!important;background:linear-gradient(135deg,#0878dc,#11b4bd)!important;color:#fff!important;box-shadow:0 7px 20px rgba(5,112,190,.28)!important}
  .r390-bottom-nav{display:flex!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:700!important;min-height:var(--r468-mobile-nav)!important}
  .main-content.r390-main{margin-left:0!important;width:100%!important;max-width:100%!important;padding-top:calc(var(--r468-mobile-header) + env(safe-area-inset-top,0px))!important;padding-bottom:calc(var(--r468-mobile-nav) + env(safe-area-inset-bottom,0px))!important;overflow:visible!important}
  .main-content.r390-main>.page-content{width:100%!important;max-width:none!important;margin:0!important;padding:16px clamp(12px,2.2vw,28px) calc(104px + env(safe-area-inset-bottom,0px))!important;overflow:visible!important}
  .page-content,.card,.table-card,.filter-bar{animation:none!important}
  .sidebar,.mobile-header-r390,.topbar,.r390-bottom-nav,.bulk-toolbar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .card,.panel,.table-card,.filter-card,.dashboard-card,.metric-card,.button,.nav-item{transition:none!important}
}

/* Record pages: one document scroller, no minimum table width, no clipped
   horizontal content. Applies to both daily inspections and research samples. */
@media (max-width:1180px), (pointer:coarse) and (max-width:1600px){
  html,body.r464-record-page-body{overflow-x:hidden!important;overflow-y:auto!important;max-width:100%!important;touch-action:pan-y!important}
  body.r464-record-page-body .main-content.r390-main,
  body.r464-record-page-body .main-content.r390-main>.page-content,
  body.r464-record-page-body [data-r468-record-page],
  body.r464-record-page-body .r463-record-table,
  body.r464-record-page-body .r463-record-table .table-wrap{
    position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;min-width:0!important;overflow:visible!important;contain:none!important;transform:none!important;touch-action:pan-y!important
  }
  [data-r468-record-page]{display:block!important;min-width:0!important}
  [data-r468-record-page] .page-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;margin:0 0 14px!important;padding:16px!important;border:1px solid #d5eafa!important;border-radius:18px!important;background:linear-gradient(145deg,#fff,#f3f9ff)!important;box-shadow:0 8px 24px rgba(18,83,139,.06)!important}
  [data-r468-record-page] .page-heading h1{font-size:clamp(22px,3vw,29px)!important;line-height:1.2!important}
  [data-r468-record-page] .page-heading p{font-size:12px!important;line-height:1.55!important;margin-top:5px!important}
  [data-r468-record-page] .page-heading>.button{min-height:42px!important;white-space:nowrap!important}

  [data-r468-record-page] .r463-record-filter{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:end!important;gap:9px!important;margin:0 0 12px!important;padding:12px!important;border-radius:16px!important;box-shadow:0 7px 20px rgba(19,83,139,.05)!important}
  [data-r468-record-page] .r463-record-filter>input,
  [data-r468-record-page] .r463-record-filter>select,
  [data-r468-record-page] .r463-record-filter>.button,
  [data-r468-record-page] .r465-record-sort-fields{width:100%!important;min-width:0!important;max-width:100%!important}
  [data-r468-record-page] .r463-record-filter>input:first-child{grid-column:span 2!important}
  [data-r468-record-page] .r465-record-sort-fields{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
  [data-r468-record-page] .r465-record-sort-fields label{display:grid!important;gap:5px!important;color:#496b89!important;font-size:11px!important;font-weight:800!important}

  [data-r468-record-page] .r463-record-summary{display:grid!important;grid-template-columns:auto auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;padding:11px 13px!important;margin:8px 0!important}
  [data-r468-record-page] .r463-record-summary small{width:auto!important;min-width:0!important;margin:0 0 0 auto!important;text-align:right!important;line-height:1.45!important}
  [data-r468-record-page] .r465-record-actions{display:flex!important;align-items:center!important;gap:10px!important;margin:8px 0!important;padding:10px 12px!important;border:1px solid #d8ebfa!important;background:#f7fbff!important}
  [data-r468-record-page] .r467-selection-hint{min-width:0!important;flex:1 1 auto!important;line-height:1.4!important}
  [data-r468-record-page] .r438-inline-export-links{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:8px 0 12px!important}
  [data-r468-record-page] .r438-inline-export-links .button{width:100%!important;min-height:42px!important}

  [data-r468-record-page] .r463-record-table{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  [data-r468-record-page] .r463-record-table .table-wrap{overflow:visible!important}
  [data-r468-record-page] .r463-record-table table,
  [data-r468-record-page] .r463-record-table tbody{display:block!important;width:100%!important;min-width:0!important}
  [data-r468-record-page] .r463-record-table thead{display:none!important}
  [data-r468-record-page] .r463-record-table tbody tr{
    display:grid!important;
    grid-template-columns:42px minmax(210px,1.7fr) minmax(148px,.72fr) minmax(78px,.42fr) minmax(96px,.48fr) minmax(118px,.52fr)!important;
    grid-template-areas:"select primary time person status action" ". result result result result result"!important;
    gap:8px 14px!important;align-items:center!important;width:100%!important;min-width:0!important;
    margin:0 0 11px!important;padding:14px 15px!important;border:1px solid #d7e9f7!important;border-radius:18px!important;
    background:linear-gradient(145deg,#fff,#f8fbfe)!important;box-shadow:0 7px 22px rgba(17,82,137,.055)!important
  }
  [data-r468-record-page] .r463-record-table td{display:block!important;width:auto!important;min-width:0!important;max-width:100%!important;padding:0!important;border:0!important;white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  [data-r468-record-page] .r463-record-table td::before{display:block!important;margin:0 0 3px!important;color:#6685a1!important;font-size:10px!important;line-height:1.25!important;font-weight:850!important}
  [data-r468-record-page] .r468-col-select{grid-area:select!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;min-width:0!important;align-self:start!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:2px 0 0!important;border:0!important}
  [data-r468-record-page] .r468-col-select::before{display:none!important}
  [data-r468-record-page] .r468-col-primary{grid-area:primary!important}
  [data-r468-record-page] .r468-col-time{grid-area:time!important}
  [data-r468-record-page] .r468-col-person{grid-area:person!important}
  [data-r468-record-page] .r468-col-result{grid-area:result!important;padding-top:9px!important;border-top:1px dashed #d7e7f4!important}
  [data-r468-record-page] .r468-col-status{grid-area:status!important}
  [data-r468-record-page] .r468-col-action{grid-area:action!important;text-align:right!important}
  [data-r468-record-page] .r468-col-action::before{display:none!important}
  [data-r468-record-page] .r468-col-action .text-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:7px 11px!important;border:1px solid #b9dcf6!important;border-radius:11px!important;background:#f4faff!important;white-space:nowrap!important}
  [data-r468-record-page] .r468-col-primary>b{font-size:15px!important;line-height:1.35!important}
  [data-r468-record-page] .r468-col-time>b{font-size:14px!important;line-height:1.35!important;white-space:normal!important}
  [data-r468-record-page] .r468-col-result small{font-size:12px!important;line-height:1.55!important}
  [data-r468-record-page] input[data-select-item]{display:block!important;width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;margin:0!important;accent-color:#087bd6!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;touch-action:manipulation!important}

  [data-r468-record-page] .bulk-toolbar,
  [data-r468-record-page] .r4598-bulk-toolbar{display:none!important;width:100%!important;max-width:100%!important;gap:9px!important}
  [data-r468-record-page].has-r468-selection .bulk-toolbar,
  [data-r468-record-page].has-r468-selection .r4598-bulk-toolbar,
  [data-r468-record-page].has-r467-selection .bulk-toolbar,
  [data-r468-record-page].has-r467-selection .r4598-bulk-toolbar,
  [data-r468-record-page].is-multi-select .bulk-toolbar,
  [data-r468-record-page].is-multi-select .r4598-bulk-toolbar{
    display:flex!important;position:sticky!important;bottom:calc(var(--r468-mobile-nav) + env(safe-area-inset-bottom,0px) + 6px)!important;z-index:125!important;
    margin:8px 0 12px!important;padding:10px 12px!important;border-radius:16px!important;background:#f7fbff!important;box-shadow:0 10px 28px rgba(6,67,119,.17)!important
  }
  [data-r468-record-page] .bulk-toolbar>div,[data-r468-record-page] .r4598-bulk-toolbar>div{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;width:100%!important}
  [data-r468-record-page] .bulk-toolbar select,[data-r468-record-page] .bulk-toolbar input,[data-r468-record-page] .r4598-bulk-toolbar select,[data-r468-record-page] .r4598-bulk-toolbar input{min-width:0!important;flex:1 1 170px!important;max-width:100%!important}
}

/* Portrait tablets and phones use a vertical card without losing any field. */
@media (max-width:900px), (pointer:coarse) and (max-width:900px){
  [data-r468-record-page] .page-heading{grid-template-columns:1fr!important;padding:14px!important}
  [data-r468-record-page] .page-heading>.button{width:100%!important}
  [data-r468-record-page] .r463-record-filter{grid-template-columns:1fr 1fr!important}
  [data-r468-record-page] .r463-record-filter>input:first-child{grid-column:1/-1!important}
  [data-r468-record-page] .r463-record-summary{grid-template-columns:auto auto!important}
  [data-r468-record-page] .r463-record-summary small{grid-column:1/-1!important;margin:0!important;text-align:left!important}
  [data-r468-record-page] .r463-record-table tbody tr{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    grid-template-areas:"select primary status" "select time time" "select person person" "result result result" "action action action"!important;
    gap:8px 10px!important;padding:14px!important
  }
  [data-r468-record-page] .r468-col-action{text-align:left!important}
  [data-r468-record-page] .r468-col-action .text-link{width:100%!important}
}

@media (max-width:560px){
  :root{--r468-mobile-header:58px;--r468-mobile-nav:72px}
  .main-content.r390-main>.page-content{padding-left:10px!important;padding-right:10px!important}
  [data-r468-record-page] .r463-record-filter{grid-template-columns:1fr!important;padding:10px!important}
  [data-r468-record-page] .r463-record-filter>*{grid-column:auto!important}
  [data-r468-record-page] .r465-record-sort-fields{grid-template-columns:1fr!important}
  [data-r468-record-page] .r438-inline-export-links{grid-template-columns:1fr!important}
  [data-r468-record-page] .r465-record-actions{align-items:stretch!important;flex-direction:column!important}
  [data-r468-record-page] .r465-mobile-multi-toggle{width:100%!important}
  [data-r468-record-page] .r463-record-table tbody tr{
    grid-template-columns:38px minmax(0,1fr)!important;
    grid-template-areas:"select primary" "select status" "select time" "select person" "result result" "action action"!important;
    padding:13px 12px!important;border-radius:16px!important
  }
  [data-r468-record-page] .r468-col-select{justify-content:flex-start!important}
  [data-r468-record-page] .r468-col-status{justify-self:start!important}
}

/* Landscape phones have little vertical space: keep controls compact and the
   list fully scrollable above the fixed bottom navigation. */
@media (pointer:coarse) and (orientation:landscape) and (max-height:760px){
  :root{--r468-mobile-header:54px;--r468-mobile-nav:60px}
  .mobile-header-r390{min-height:54px!important;padding-top:4px!important;padding-bottom:4px!important}
  .r390-bottom-nav{height:60px!important;min-height:60px!important}
  .r390-bottom-nav>a,.r390-bottom-nav>.mobile-switch-form{height:52px!important;min-height:52px!important}
  .main-content.r390-main>.page-content{padding-top:10px!important;padding-bottom:82px!important}
  [data-r468-record-page] .page-heading{padding:12px!important;margin-bottom:10px!important}
  [data-r468-record-page] .page-heading p{display:none!important}
  [data-r468-record-page] .r463-record-filter{padding:9px!important;gap:7px!important}
  [data-r468-record-page] .r463-record-summary{padding:8px 11px!important}
}
/* ===== END r468_tablet_mobile_record_layout.css ===== */


/* R4.6.9 point history, map preview, archive storage and responsive polish */
.r469-archive-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px;border:1px solid rgba(47,120,212,.18);border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(235,247,255,.92));box-shadow:0 18px 42px rgba(38,91,145,.09);margin-bottom:18px}.r469-archive-title{min-width:0}.r469-archive-title h1{margin:.25rem 0 .45rem;font-size:clamp(1.55rem,2.4vw,2.35rem);letter-spacing:-.03em}.r469-archive-title p{margin:0;color:#52708b;max-width:850px}.r469-archive-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.r469-meta-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.r469-meta-chips span{padding:7px 11px;border-radius:999px;background:#fff;border:1px solid #d9eaf6;color:#315b7a;font-size:.84rem}.r469-stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.r469-stat-strip>div{padding:16px 18px;border-radius:18px;background:#fff;border:1px solid #deedf7;box-shadow:0 8px 24px rgba(33,95,148,.06);min-width:0}.r469-stat-strip b{display:block;color:#0c4f81;font-size:1.05rem;white-space:normal;overflow-wrap:anywhere}.r469-stat-strip span{display:block;color:#71879a;font-size:.78rem;margin-top:5px}.r469-archive-toolbar{position:sticky;top:10px;z-index:12;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;margin-bottom:14px;border-color:#cfe5f4;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}.r469-selection-summary,.r469-archive-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.r469-selection-summary b{font-size:1.2rem;color:#0879bd}.r469-archive-controls select,.r469-archive-controls input{min-height:42px;max-width:260px}.r469-history-list{display:grid;gap:12px}.r469-history-card{position:relative;display:grid;grid-template-columns:50px 70px minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px;border-radius:22px;background:#fff;border:1px solid #dcebf5;box-shadow:0 10px 30px rgba(34,88,134,.065);transition:transform .15s ease,border-color .15s ease}.r469-history-card:hover{border-color:#9cd5ee;transform:translateY(-1px)}.r469-history-check{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#edf7fd;cursor:pointer}.r469-history-check input{width:22px;height:22px;accent-color:#0798b7}.r469-history-index{padding-top:11px;color:#1683b7;font-weight:800;font-size:.84rem}.r469-history-main{min-width:0}.r469-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.r469-history-head b{display:block;font-size:1.05rem;color:#143d5d}.r469-history-head small{display:block;margin-top:3px;color:#7b8f9f}.r469-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:14px 0 0}.r469-history-grid>div{min-width:0}.r469-history-grid .wide{grid-column:1/-1}.r469-history-grid dt,.r469-batch-detail dt{font-size:.75rem;color:#7b91a3;font-weight:700}.r469-history-grid dd,.r469-batch-detail dd{margin:3px 0 0;color:#294b63;overflow-wrap:anywhere;line-height:1.55}.r469-history-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end;padding-top:8px;white-space:nowrap}.r469-history-actions a{font-weight:750;color:#0875bd}.r469-batch-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.r469-batch-detail{padding:20px}.r469-batch-detail header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #e2eef6}.r469-batch-detail header span{padding:5px 9px;border-radius:999px;background:#e6f7f1;color:#087c5b;font-weight:800;font-size:.78rem}.r469-batch-detail header small{color:#7a8f9e}.r469-batch-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.r469-batch-detail dl .wide{grid-column:1/-1}.r469-export-scope{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:12px 14px;margin:10px 0 14px;border:1px solid #d9eaf5;border-radius:17px;background:linear-gradient(120deg,#fff,#f2fbff)}.r469-export-scope label{display:grid;gap:5px;min-width:min(320px,100%)}.r469-export-scope label span{font-size:.75rem;color:#617e93;font-weight:750}.r469-export-scope select{min-height:42px}.r469-map-history{margin:12px 0;padding:12px;border-radius:14px;background:#f5fbff;border:1px solid #d7ebf6}.r469-map-history.empty{display:grid;gap:4px}.r469-map-history-title{display:flex;justify-content:space-between;gap:10px;align-items:center}.r469-map-history-title span{font-size:.73rem;color:#6f8798}.r469-map-history ul{list-style:none;padding:0;margin:9px 0;display:grid;gap:7px}.r469-map-history li{padding:8px;border-radius:10px;background:#fff;border:1px solid #e2edf4}.r469-map-history li span{display:flex;justify-content:space-between;gap:8px}.r469-map-history time{font-size:.7rem;color:#718899}.r469-map-history p{font-size:.76rem;line-height:1.45;margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.r469-map-history>a{display:block;font-weight:800;font-size:.79rem;color:#0578b8;margin-top:6px}.r469-maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.r469-maintenance-grid .card{padding:22px}.r469-maintenance-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#087fed,#0ab9ac);color:#fff;font-weight:900;margin-bottom:12px}.r469-structure-path{font:500 .82rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;background:#f5faff;border:1px solid #dcebf5;border-radius:14px;padding:12px;margin:12px 0;color:#315873;overflow:auto}.r469-image-admin-hero{margin-bottom:0}
/* Shared responsive refinements for desktop, tablet, Android WebView and mobile browsers */
@media (max-width:1100px){.r469-archive-hero{flex-direction:column}.r469-archive-actions{justify-content:flex-start}.r469-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.r469-history-card{grid-template-columns:48px 58px minmax(0,1fr)}.r469-history-actions{grid-column:3;flex-direction:row;align-items:center}.r469-batch-detail-grid{grid-template-columns:1fr}}
@media (max-width:760px){.r469-archive-hero{padding:18px;border-radius:20px}.r469-archive-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.r469-archive-actions .button:last-child{grid-column:1/-1}.r469-stat-strip{grid-template-columns:1fr 1fr;gap:8px}.r469-stat-strip>div{padding:12px}.r469-stat-strip b{font-size:.9rem}.r469-archive-toolbar{position:relative;top:auto;align-items:stretch;flex-direction:column;padding:12px}.r469-archive-controls{display:grid;grid-template-columns:1fr;width:100%}.r469-archive-controls select,.r469-archive-controls input,.r469-archive-controls button{max-width:none;width:100%}.r469-history-card{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:14px}.r469-history-index{grid-column:2;padding:0;font-size:.76rem}.r469-history-main{grid-column:2}.r469-history-actions{grid-column:2;justify-content:flex-start;align-items:center;flex-wrap:wrap}.r469-history-grid{grid-template-columns:1fr}.r469-history-grid .wide{grid-column:auto}.r469-history-head{flex-direction:column}.r469-history-check{grid-row:1/span 3}.r469-batch-detail dl{grid-template-columns:1fr}.r469-batch-detail dl .wide{grid-column:auto}.r469-export-scope{display:grid;grid-template-columns:1fr 1fr}.r469-export-scope label{grid-column:1/-1;min-width:0}.r469-export-scope button{width:100%}.r469-maintenance-grid{grid-template-columns:1fr}.r469-meta-chips{gap:6px}.r469-meta-chips span{font-size:.74rem}.r469-map-history{padding:10px}.leaflet-popup-content .r469-map-history{max-height:220px;overflow:auto}}
@media (max-width:430px){.r469-stat-strip{grid-template-columns:1fr}.r469-archive-actions{grid-template-columns:1fr}.r469-archive-actions .button:last-child{grid-column:auto}.r469-export-scope{grid-template-columns:1fr}.r469-export-scope label{grid-column:auto}.r469-history-card{grid-template-columns:38px minmax(0,1fr);padding:12px}.r469-history-check{width:38px;height:38px}.r469-history-check input{width:20px;height:20px}}
@media (prefers-reduced-motion:reduce){.r469-history-card{transition:none}}

.r469-map-history-item{display:block;color:inherit;text-decoration:none;margin:-8px;padding:8px;border-radius:9px}.r469-map-history-item:active,.r469-map-history-item:hover{color:inherit;background:#f4fbff}

/* R4.6.11 mobile work queues + multi-responsible task UI */
.r4611-work-queue{overflow:hidden;border-color:#bcdff8;background:linear-gradient(145deg,#fff,#f4fbff)}
.r4611-queue-head{align-items:flex-start;gap:16px}.r4611-queue-head p{margin:6px 0 0;color:#58728a;line-height:1.65}
.r4611-queue-counts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.r4611-queue-counts span{display:inline-flex;align-items:center;gap:5px;padding:8px 11px;border:1px solid #cde7f8;border-radius:999px;background:#f7fcff;color:#46657d;font-size:12px;font-weight:800}.r4611-queue-counts b{color:#0877d9;font-size:15px}
.r4611-point-list{display:grid;gap:10px}.r4611-point-item{border:1px solid #d4e9f7;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(23,94,145,.055);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.r4611-point-item[open]{border-color:#8ecdf1;box-shadow:0 14px 32px rgba(15,105,170,.11)}.r4611-point-item.is-completed{background:linear-gradient(145deg,#fff,#f3fff8);border-color:#c6ead5}.r4611-point-item>summary{list-style:none;display:grid;grid-template-columns:42px minmax(0,1fr) auto 24px;align-items:center;gap:12px;min-height:72px;padding:12px 15px;cursor:pointer;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.r4611-point-item>summary::-webkit-details-marker{display:none}.r4611-point-symbol{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#e6f5ff,#dff9f2);color:#0872c7;font-weight:950;box-shadow:inset 0 0 0 1px #c6e5f7}.r4611-point-item.is-completed .r4611-point-symbol{background:#e5faed;color:#14884d;box-shadow:inset 0 0 0 1px #bfe8cf}.r4611-point-main{min-width:0}.r4611-point-main b{display:block;color:#123e63;font-size:15px;overflow-wrap:anywhere}.r4611-point-main small{display:block;margin-top:4px;color:#688197;line-height:1.45;overflow-wrap:anywhere}.r4611-point-status{text-align:right;min-width:94px}.r4611-point-status i{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff4d9;color:#976200;font-style:normal;font-size:11px;font-weight:900}.r4611-point-item.is-completed .r4611-point-status i{background:#dcf8e7;color:#137a45}.r4611-point-status small{display:block;margin-top:4px;color:#71879a;font-size:10px;max-width:190px}.r4611-chevron{color:#5f7b91;font-size:20px;transition:transform .16s ease}.r4611-point-item[open] .r4611-chevron{transform:rotate(180deg)}.r4611-point-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:12px 15px 15px;border-top:1px dashed #d4e8f5;background:#f8fcff}.r4611-point-actions .button{min-width:0;white-space:normal;text-align:center}.r4611-point-actions .is-disabled{opacity:.55;pointer-events:none}.r4611-assignee-field{border:1px solid #cbe6f7;border-radius:18px;padding:13px;background:#f8fcff}.r4611-assignee-help{display:block;margin:5px 0 9px;color:#617b90;font-size:11px;line-height:1.55}.r4611-assignee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;max-height:210px;overflow:auto;padding:4px}.r4611-assignee-grid>label{display:flex;align-items:center;gap:8px;min-height:42px;margin:0!important;padding:8px 10px;border:1px solid #d8eaf6;border-radius:12px;background:#fff;color:#264f70;cursor:pointer}.r4611-assignee-grid input{width:17px;height:17px;flex:none}.r4611-assignee-grid span{min-width:0;font-weight:750}.r4611-assignee-grid small{display:block;color:#7a90a2;font-weight:500;font-size:10px}.r4611-task-members{display:block;margin-top:6px;color:#35709b;font-weight:800}
@media (max-width:900px){.r4611-work-queue{border-radius:20px}.r4611-queue-head{display:block}.r4611-queue-counts{justify-content:flex-start;margin-top:10px}.r4611-point-item>summary{grid-template-columns:38px minmax(0,1fr) 20px;gap:9px;padding:11px 12px}.r4611-point-symbol{width:36px;height:36px}.r4611-point-status{grid-column:2/3;text-align:left;display:flex;align-items:center;gap:7px;min-width:0}.r4611-point-status small{margin:0;max-width:none}.r4611-chevron{grid-column:3;grid-row:1/3}.r4611-point-actions{grid-template-columns:1fr}.r4611-point-actions .button{min-height:44px}.r4611-assignee-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.r4611-point-main b{font-size:14px}.r4611-point-main small{font-size:11px}.r4611-assignee-grid{grid-template-columns:1fr}.r4611-queue-counts span{font-size:11px}.r4611-point-actions{padding:10px 12px 13px}}

/* R4.6.12 responsible queues, grouped sampling tasks and responsive polish */
.r4612-dashboard-queue{overflow:hidden;border-color:#cfe6f5;background:linear-gradient(150deg,#fff 0%,#f7fcff 58%,#f2fbf8 100%)}
.r4612-queue-head{padding-bottom:14px;border-bottom:1px solid #deedf6}
.r4612-queue-head h2{letter-spacing:-.025em}
.r4612-queue-head p{max-width:760px;color:#5f7890;line-height:1.65}
.r4612-point-list{gap:9px}
.r4612-point-item{background:rgba(255,255,255,.94);box-shadow:0 7px 20px rgba(24,84,130,.055)}
.r4612-point-item>summary{transition:background-color .12s ease}
.r4612-point-item>summary:hover{background:#f7fcff}
.r4612-point-actions{background:linear-gradient(110deg,#f8fcff,#f3faf8)}
.r4612-point-actions .button{display:flex;align-items:center;justify-content:center;gap:5px}
.r4612-map-focus-link{border-color:#b9dfef!important;color:#066ca4!important;background:#f4fbff!important}
.r4612-map-focus-link:active{transform:scale(.985)}
.r4612-grouped-task-list{display:grid;gap:14px}
.r4612-task-group{content-visibility:auto;contain-intrinsic-size:340px;padding:0;border:1px solid #d9eaf5;border-radius:20px;background:rgba(255,255,255,.82);overflow:hidden;box-shadow:0 9px 26px rgba(35,90,135,.055)}
.r4612-task-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;background:linear-gradient(120deg,#edf8ff,#f2fbf7);border-bottom:1px solid #dcecf5}
.r4612-task-group-head>div:first-child{min-width:0}
.r4612-task-group-head b{display:block;margin-top:4px;color:#153f5f;font-size:15px;overflow-wrap:anywhere}
.r4612-task-group-head small{display:block;margin-top:4px;color:#6a8295;font-size:11px;line-height:1.45}
.r4612-task-code{display:inline-flex;padding:4px 8px;border-radius:999px;background:#fff;color:#087ab5;border:1px solid #cce7f5;font-size:10px;font-weight:900;letter-spacing:.04em}
.r4612-task-stats{display:flex;gap:7px;flex:none}
.r4612-task-stats span{display:grid;min-width:68px;padding:7px 9px;border:1px solid #d4e8f3;border-radius:12px;background:#fff;color:#6a8194;text-align:center;font-size:10px}
.r4612-task-stats b{margin:0;color:#0a739f;font-size:15px;line-height:1.1}
.r4612-task-group>.r4612-point-list{padding:10px}
.r4612-research-grouped{min-width:0}
@media (min-width:1100px){.r4612-research-grouped{grid-column:span 1}.r4612-research-grouped .r4611-point-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .r4612-dashboard-queue{border-radius:18px}
  .r4612-queue-head{padding-bottom:11px}
  .r4612-task-group{contain-intrinsic-size:420px;border-radius:16px}
  .r4612-task-group-head{align-items:flex-start;padding:12px;gap:10px}
  .r4612-task-stats span{min-width:58px;padding:6px 7px}
  .r4612-task-group>.r4612-point-list{padding:7px}
  .r4612-point-actions{grid-template-columns:1fr!important}
}
@media (max-width:560px){
  .r4612-task-group-head{display:block}
  .r4612-task-stats{margin-top:9px;justify-content:flex-start}
  .r4612-task-stats span{display:flex;align-items:center;gap:4px;min-width:0}
  .r4612-task-stats b{font-size:13px}
  .r4612-task-group-head b{font-size:14px}
  .r4612-point-item>summary{min-height:68px}
}

/* R4.6.13 task/group assignment separation, undertaken queues and exact map focus */
.r4613-undertaken-sites{min-width:0;background:linear-gradient(145deg,#ffffff 0%,#f4fbff 55%,#f1fbf7 100%);border-color:#bfe2f3}
.r4613-flat-point-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:11px}
.r4613-flat-point-list .r4611-point-item{content-visibility:auto;contain-intrinsic-size:128px}
.r4613-flat-point-list .r4611-point-item[open]{content-visibility:visible}
.r4613-single-owner{display:grid;gap:7px;border-color:#b9dff1;background:linear-gradient(145deg,#f9fdff,#f2fbf8)}
.r4613-single-owner select{width:100%;min-height:46px;border-radius:12px;background:#fff}
.r4613-task-owner{padding:6px 9px;border:1px solid #d8ebf5;border-radius:10px;background:#f8fcff;color:#3d6c86!important;font-size:11px}
.r4613-member-note{margin:.25rem 0 0;color:#5f7e93;font-size:12px;line-height:1.5}
.r4612-map-focus-link.is-loading{position:relative;pointer-events:none;opacity:.72}
.r4612-map-focus-link.is-loading:after{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:r4613-spin .65s linear infinite}
@keyframes r4613-spin{to{transform:rotate(360deg)}}
.leaflet-marker-icon.r4613-focus-marker{filter:drop-shadow(0 0 8px rgba(8,126,210,.55))}
@media (min-width:1180px){.r4613-undertaken-sites{grid-column:span 1}.r4613-flat-point-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.r4613-flat-point-list{grid-template-columns:1fr}.r4613-undertaken-sites{border-radius:18px}.r4613-single-owner{padding:11px}.r4613-single-owner select{min-height:48px}}
@media (max-width:560px){.r4613-undertaken-sites .r4611-queue-head p{font-size:12px;line-height:1.55}.r4613-task-owner{font-size:10px}.r4613-flat-point-list{gap:8px}.r4613-flat-point-list .r4611-point-item>summary{padding:10px}}
@media (prefers-reduced-motion:reduce){.r4612-map-focus-link.is-loading:after{animation-duration:1.2s}}

/* R4.6.14 task restart, sampling-copy and cross-device task controls */
.r4614-task-actions,.r4614-sampling-actions{gap:10px!important}
.r4614-restart-button{color:#b45309!important;font-weight:800!important}
.r4614-warning-modal{max-width:640px}
.r4614-warning-panel{display:flex;gap:16px;align-items:flex-start;margin:4px 0 18px;padding:16px;border:1px solid #fed7aa;border-radius:18px;background:linear-gradient(135deg,#fff7ed,#fff)}
.r4614-warning-panel>span{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:14px;background:#ffedd5;color:#c2410c;font-size:25px;font-weight:900}
.r4614-warning-panel b{display:block;color:#9a3412;font-size:16px;margin-bottom:5px}
.r4614-warning-panel p{margin:0;color:#7c4a2d;line-height:1.65}
.r4614-confirm-check{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:14px!important;border:1px solid #d7e8f4!important;border-radius:16px!important;background:#f8fcff!important;cursor:pointer}
.r4614-confirm-check input{width:21px!important;height:21px!important;min-width:21px!important;margin-top:2px}
.r4614-confirm-check span{display:block}.r4614-confirm-check b{display:block;color:#0b3c68}.r4614-confirm-check small{display:block;color:#58758c;margin-top:4px;line-height:1.5}
.r4614-copy-modal{max-width:760px}
.r4614-copy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px}
.r4614-copy-summary>div{padding:14px;border:1px solid #cde9fb;border-radius:16px;background:linear-gradient(145deg,#fff,#f2fbff);text-align:center}
.r4614-copy-summary b{display:block;color:#0877dd;font-size:21px}.r4614-copy-summary span{display:block;color:#5a788f;font-size:12px;margin-top:3px}
.r4614-copy-warning{padding:13px 15px;border-radius:15px;border:1px solid #bde8dc;background:#effcf8;color:#1e6253}
.r4614-copy-warning b{display:block;margin-bottom:4px}.r4614-copy-warning p{margin:0;line-height:1.65}
.r4614-map-visibility{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:14px!important;border:1px solid #cfe6f6!important;border-radius:16px!important;background:#f7fcff!important}
.r4614-map-visibility>input{width:21px!important;height:21px!important;min-width:21px!important;margin-top:2px}
.r4614-map-visibility span{display:block}.r4614-map-visibility b{display:block;color:#0a4f82}.r4614-map-visibility small{display:block;color:#5c7890;margin-top:4px;line-height:1.45}
.r4614-closed-group-note{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:12px;font-weight:800}
.r4614-map-hidden{white-space:normal!important;text-align:center!important;color:#64748b!important;background:#f3f6f8!important;border-color:#d8e1e8!important}
.r4614-task-meta>div:nth-child(3){background:linear-gradient(145deg,#f4fbff,#fff)}
@media(max-width:900px),(pointer:coarse){
  .r4614-task-actions,.r4614-sampling-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch!important}
  .r4614-task-actions>a,.r4614-task-actions>button,.r4614-sampling-actions>a,.r4614-sampling-actions>button,.r4614-sampling-actions>span{min-height:42px;display:flex!important;align-items:center;justify-content:center;text-align:center;padding:9px 10px!important;border:1px solid #d5e6f1;border-radius:12px;background:#f8fcff}
  .r4614-task-actions form,.r4614-sampling-actions form{display:block!important}.r4614-task-actions form button,.r4614-sampling-actions form button{width:100%;min-height:42px;border:1px solid #f3c7c7;border-radius:12px;background:#fff7f7;color:#b91c1c}
  .r4614-copy-summary{grid-template-columns:1fr}.r4614-warning-panel{padding:13px}.r4614-warning-modal,.r4614-copy-modal{width:min(94vw,760px)!important;max-height:90vh;overflow:auto}
}
@media(max-width:520px){
  .r4614-task-actions,.r4614-sampling-actions{grid-template-columns:1fr}
  .r4614-warning-panel{display:block}.r4614-warning-panel>span{margin-bottom:10px}
}
.r4614-closed-toggle{display:flex!important;align-items:center!important;gap:8px!important;min-height:44px;padding:9px 12px!important;border:1px solid #d7e7f1!important;border-radius:12px!important;background:#f8fcff!important;color:#55748a;font-size:12px;font-weight:750}
.r4614-closed-toggle input{width:18px!important;height:18px!important;min-width:18px!important;margin:0!important}
@media(max-width:900px){.r4614-closed-toggle{width:100%}}

/* R4.6.15 explicit point/site cycle state, responsive reset controls */
.r4615-inline-reset{display:inline-flex;margin:0;padding:0;border:0;background:transparent}
.r4615-reset-link{color:#b45309!important;font-weight:850!important;white-space:nowrap}
.r4615-reset-link:hover{color:#92400e!important}
.r4615-row-actions{gap:8px!important;align-items:center}
.r4615-history-preserved{display:block;margin-top:5px;color:#7c5a18!important;font-size:11px;font-weight:750}
.r4615-sampling-warning{border-color:#bfdbfe;background:linear-gradient(135deg,#eff6ff,#fff)}
.r4615-sampling-warning>span{background:#dbeafe;color:#1d4ed8}
.r4615-sampling-warning b{color:#1e40af}.r4615-sampling-warning p{color:#3e5f82}
.r4615-sampling-actions{align-items:stretch!important}
.r4615-confirm-form .button.danger{background:linear-gradient(135deg,#f59e0b,#ea580c);border-color:transparent;color:#fff}
.r4615-confirm-form .button.danger:hover{filter:brightness(.96)}
@media(max-width:1100px),(pointer:coarse){
  .r4615-row-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .r4615-row-actions>a,.r4615-row-actions>button,.r4615-row-actions>.r4615-inline-reset{min-height:40px;display:flex!important;align-items:center;justify-content:center;padding:8px 10px!important;border:1px solid #d7e8f3;border-radius:11px;background:#f8fcff;text-align:center}
  .r4615-inline-reset button{width:100%;min-height:38px;border:0;background:transparent}
  .r4615-sampling-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .r4615-row-actions,.r4615-sampling-actions{grid-template-columns:1fr!important}
  .r4615-history-preserved{font-size:10px}
  .r4615-confirm-form .form-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .r4615-confirm-form .form-actions .button{width:100%;min-height:46px}
}

/* R4.6.16 map legend, floating layers, queue distance and administration polish */
.r4616-multi-legend{display:flex;flex-wrap:wrap;gap:7px;align-items:center;max-width:calc(100% - 18px);overflow:auto;scrollbar-width:thin}
.r4616-multi-legend .r406-legend-button{opacity:.48;filter:grayscale(.65);transition:opacity .14s ease,filter .14s ease,transform .14s ease,box-shadow .14s ease;white-space:nowrap}
.r4616-multi-legend .r406-legend-button:hover{opacity:.82;filter:grayscale(.2)}
.r4616-multi-legend .r406-legend-button.is-active{opacity:1;filter:none;transform:translateY(-1px);box-shadow:0 5px 14px rgba(16,104,208,.2);font-weight:750}
.r4616-multi-legend .r406-legend-button.is-priority{order:-1}
.r4616-legend-pending{background:linear-gradient(135deg,#ff8a00,#ffb800)!important;color:#fff!important}
.r392-map-pin{position:relative}.r4616-pin-state{position:absolute;right:-6px;top:-6px;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0c8c4c;border:2px solid #0c8c4c;font-size:9px;font-weight:900;box-shadow:0 2px 5px rgba(0,0,0,.22)}.r4616-pin-state.is-alert{color:#c92b2b;border-color:#c92b2b}
.r4616-layer-toggle{z-index:760!important}.r4616-layer-floating{position:fixed!important;right:22px;top:118px;width:min(390px,calc(100vw - 30px));max-height:calc(100vh - 150px);overflow:auto;z-index:1800!important;transform:translateX(calc(100% + 36px));opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease;box-shadow:0 24px 65px rgba(6,46,108,.32)!important}
.r4616-layer-floating.is-r4616-open,.r4616-layer-floating.is-mobile-open{transform:none;opacity:1;pointer-events:auto}
.r4616-layer-backdrop{position:fixed;inset:0;border:0;background:rgba(6,28,66,.22);backdrop-filter:blur(2px);z-index:1750;opacity:0;pointer-events:none;transition:opacity .18s ease}.r4616-layer-backdrop.is-visible{opacity:1;pointer-events:auto}
.r392-map-shell:has(.r4616-layer-floating){grid-template-columns:minmax(0,1fr)!important}.r392-map-shell:has(.r4616-layer-floating)>.map-side{display:contents}
.r4616-distance{display:inline-flex;align-items:center;gap:4px;color:#1176c9!important;font-weight:700!important}.r4616-distance:before{content:'⌖';font-size:1.05em}
.r4611-point-item summary{align-items:center}.r4611-point-item .r4611-point-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.r4616-distance-ready [data-r4616-distance-item]{content-visibility:auto;contain-intrinsic-size:72px}
.r4616-map-settings{border:1px solid rgba(31,139,223,.22);background:linear-gradient(135deg,rgba(236,249,255,.85),rgba(244,255,250,.84));border-radius:22px;padding:20px;margin-top:18px}.r4616-map-settings .form-grid{align-items:end}
.r4616-audit-clear{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:14px 16px;border:1px solid rgba(210,55,55,.22);border-radius:18px;background:rgba(255,245,245,.85)}
#spatial-layer-panel .r423-layer-header{position:sticky;top:0;z-index:2;background:inherit;padding-top:4px}
@media(max-width:900px){.r4616-layer-floating{right:8px;top:78px;width:calc(100vw - 16px);max-height:calc(100dvh - 160px);border-radius:22px}.r4616-multi-legend{max-height:112px;gap:5px;padding:7px}.r4616-multi-legend .r406-legend-button{font-size:12px;padding:5px 8px}.r4611-point-item .r4611-point-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.r4611-point-item .r4611-point-actions a{min-height:42px}.r4616-map-settings{padding:15px;border-radius:18px}}
@media(max-width:520px){.r4611-point-item .r4611-point-actions{grid-template-columns:1fr!important}.r4616-multi-legend{left:8px!important;right:8px!important;bottom:8px!important;max-width:none!important}.r4616-layer-toggle{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.r4616-layer-floating,.r4616-layer-backdrop,.r4616-multi-legend .r406-legend-button{transition:none}}
.r4616-layer-toggle.r423-mobile-layer-toggle{display:inline-flex!important;top:58px!important;right:14px!important;bottom:auto!important;background:rgba(7,95,181,.94)!important}
@media(max-width:900px){.r4616-layer-toggle.r423-mobile-layer-toggle{top:56px!important;right:10px!important}}


/* ===== BEGIN r4617_map_layer_panel_fix.css ===== */
/* R4.6.17 — compact, operable cross-device map layer sheet and non-overlapping Leaflet controls. */
#r427-layer-fab,.r427-layer-fab,.r423-mobile-layer-toggle{display:none!important}
.r4617-basemap-control,.r4617-layer-control{clear:both!important;margin-top:6px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.r4617-basemap-box{display:flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid rgba(15,76,142,.28);border-radius:10px;background:rgba(255,255,255,.97);box-shadow:0 7px 18px rgba(15,45,80,.17);color:#0b4f92;font-weight:850}
.r4617-basemap-box>span{font-size:11px;white-space:nowrap}
.r4617-basemap-select{width:138px;min-height:31px;padding:4px 24px 4px 7px;border:1px solid #b8d7f3;border-radius:8px;background:#f8fcff;color:#0b4f92;font-size:12px;font-weight:800;outline:none;cursor:pointer}
.r4617-basemap-select:focus{border-color:#1686e8;box-shadow:0 0 0 3px rgba(22,134,232,.14)}
.r4617-layer-control-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:88px;min-height:34px;padding:0 11px;border:1px solid rgba(255,255,255,.88);border-radius:10px;background:linear-gradient(135deg,#0868cf,#08a2d7);box-shadow:0 8px 20px rgba(2,65,135,.28);color:#fff;font-size:12px;font-weight:900;line-height:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.r4617-layer-control-button:hover,.r4617-layer-control-button:focus-visible{filter:brightness(1.04);outline:3px solid rgba(26,153,231,.24)}
.r4617-layer-control-button[aria-expanded="true"]{background:linear-gradient(135deg,#064c9c,#087eb0)}
.r4617-layer-control-button i{font-style:normal;font-size:15px}
.r4617-tianditu-note{display:block;margin-top:4px;padding:4px 7px;border-radius:7px;background:rgba(255,247,224,.96);color:#916100;font-size:10px;font-weight:750;line-height:1.35;max-width:190px}

body>.r4617-layer-backdrop{position:fixed;inset:0;z-index:10050;border:0;background:rgba(4,26,58,.38);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility .16s ease}
body>.r4617-layer-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
body.r4617-layer-sheet-open{overflow:hidden!important}
#spatial-layer-panel.r4617-layer-sheet{position:fixed!important;z-index:10060!important;top:84px!important;right:20px!important;left:auto!important;bottom:auto!important;width:min(356px,calc(100vw - 32px))!important;min-height:0!important;max-height:min(72vh,640px)!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;gap:0!important;overflow:hidden!important;border:1px solid rgba(48,143,218,.42)!important;border-radius:18px!important;background:#fff!important;color:#17324e!important;box-shadow:0 26px 70px rgba(1,41,91,.34)!important;transform:translateY(-8px) scale(.985)!important;transform-origin:top right!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important}
#spatial-layer-panel.r4617-layer-sheet.is-r4617-open{transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-header{position:relative!important;top:auto!important;z-index:2!important;display:flex!important;align-items:center!important;min-height:58px!important;padding:11px 13px!important;background:linear-gradient(135deg,#075cc0 0%,#0b8fd8 100%)!important;color:#fff!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-header .eyebrow{font-size:9px!important;letter-spacing:.14em!important;color:#bdeaff!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-header h2{margin:2px 0 0!important;font-size:17px!important;line-height:1.1!important;color:#fff!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-close{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:10px!important;background:rgba(255,255,255,.15)!important;color:#fff!important;font-size:22px!important;cursor:pointer!important;touch-action:manipulation}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-close:hover{background:rgba(255,255,255,.24)!important}
.r4617-layer-meta{margin:8px 10px 0;border:1px solid #d7e9f8;border-radius:11px;background:#f5faff;overflow:hidden;flex:0 0 auto}
.r4617-layer-meta>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;padding:0 10px;list-style:none;cursor:pointer;color:#2e628d;font-size:11px;font-weight:850;touch-action:manipulation}
.r4617-layer-meta>summary::-webkit-details-marker,.r4617-layer-meta>summary::marker{display:none}
.r4617-layer-meta>summary i{font-style:normal;transition:transform .15s ease}.r4617-layer-meta[open]>summary i{transform:rotate(180deg)}
.r4617-layer-meta-body{padding:0 9px 8px}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-tip{margin:0!important;padding:4px 0 7px!important;color:#526f89!important;font-size:10px!important;line-height:1.45!important}
#spatial-layer-panel.r4617-layer-sheet .r426-layer-sharing{margin:0 0 5px!important;padding:6px 8px!important;border:1px solid #cae4f7!important;border-radius:8px!important;background:#eaf6ff!important;color:#176da9!important;font-size:10px!important}
#spatial-layer-panel.r4617-layer-sheet .r426-layer-personal-state{margin:0!important;padding:0 2px!important;color:#4d718e!important;font-size:10px!important;line-height:1.4!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-body{display:flex!important;min-height:0!important;flex:1 1 auto!important;flex-direction:column!important;margin:8px 10px 10px!important;padding:7px!important;border:1px solid #d8e9f7!important;border-radius:12px!important;background:#f7fbff!important;backdrop-filter:none!important;overflow:hidden!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-tree{min-height:80px!important;max-height:none!important;flex:1 1 auto!important;overflow:auto!important;padding:0 2px 0 0!important;color:#17324e!important;scrollbar-color:#8fc9ef #edf7fd!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important}
#spatial-layer-panel.r4617-layer-sheet .r423-folder-row{margin:4px 0!important;border:1px solid #cfe3f3!important;border-radius:10px!important;background:#eef7fe!important;color:#17324e!important;overflow:hidden!important}
#spatial-layer-panel.r4617-layer-sheet .r423-folder-row>summary{min-height:38px!important;padding:0 8px!important;color:#154f7c!important;background:#edf7fe!important;touch-action:manipulation!important}
#spatial-layer-panel.r4617-layer-sheet .r423-folder-caret,#spatial-layer-panel.r4617-layer-sheet .r423-drag{color:#4580ac!important}
#spatial-layer-panel.r4617-layer-sheet .r423-folder-children{padding:3px 5px 5px 10px!important;border-color:#d8e9f6!important;background:#f8fcff!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-row{min-height:40px!important;margin:4px 0!important;padding:3px 7px!important;border:1px solid #d6e8f5!important;border-radius:9px!important;background:#fff!important;color:#17324e!important}
#spatial-layer-panel.r4617-layer-sheet .r423-visibility{min-height:32px!important;color:#17324e!important;font-size:12px!important;line-height:1.25!important;cursor:pointer!important}
#spatial-layer-panel.r4617-layer-sheet .r423-visibility input{width:18px!important;height:18px!important;accent-color:#087fe1!important;cursor:pointer!important;flex:0 0 auto!important}
#spatial-layer-panel.r4617-layer-sheet .r423-visibility em{background:#e4f2fc!important;color:#17659a!important;font-size:9px!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-row>small{color:#647f94!important;font-size:9px!important}
#spatial-layer-panel.r4617-layer-sheet .r423-empty{color:#607d96!important;font-size:11px!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-height:38px!important;padding:7px 2px 0!important;border-top:1px solid #dcebf6!important}
#spatial-layer-panel.r4617-layer-sheet .r423-layer-footer small{color:#607d96!important;font-size:9px!important;line-height:1.3!important}
#spatial-layer-panel.r4617-layer-sheet .r423-reset{min-height:32px!important;padding:5px 9px!important;border:1px solid #b9d9ef!important;border-radius:8px!important;background:#eef8ff!important;color:#17659a!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;cursor:pointer!important}

@media(max-width:900px){
  .r4617-basemap-box{padding:4px 6px}.r4617-basemap-box>span{display:none}.r4617-basemap-select{width:124px;min-height:32px;font-size:11px}.r4617-layer-control-button{min-width:78px;min-height:34px;font-size:11px}
  #spatial-layer-panel.r4617-layer-sheet{top:auto!important;right:8px!important;left:8px!important;bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;width:auto!important;max-height:min(62dvh,520px)!important;border-radius:18px!important;transform:translateY(12px) scale(.99)!important;transform-origin:bottom center!important}
  #spatial-layer-panel.r4617-layer-sheet.is-r4617-open{transform:none!important}
  #spatial-layer-panel.r4617-layer-sheet .r423-layer-header{min-height:54px!important;padding:9px 11px!important}
  #spatial-layer-panel.r4617-layer-sheet .r423-layer-header h2{font-size:16px!important}
  #spatial-layer-panel.r4617-layer-sheet .r423-layer-body{margin:7px 8px 8px!important}
}
@media(max-width:520px){
  .r4617-basemap-select{width:112px;padding-right:20px}.r4617-layer-control-button{min-width:72px;padding:0 8px}
  #spatial-layer-panel.r4617-layer-sheet{right:6px!important;left:6px!important;bottom:calc(70px + env(safe-area-inset-bottom,0px))!important;max-height:58dvh!important;border-radius:16px!important}
  .r4617-layer-meta{margin:6px 8px 0}.r4617-layer-meta>summary{min-height:34px;font-size:10px}
  #spatial-layer-panel.r4617-layer-sheet .r423-layer-row{min-height:38px!important}
  #spatial-layer-panel.r4617-layer-sheet .r423-visibility{font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){#spatial-layer-panel.r4617-layer-sheet,body>.r4617-layer-backdrop{transition:none!important}}

/* ===== END r4617_map_layer_panel_fix.css ===== */

/* ===== BEGIN r4618_map_shell_mobile_form_polish.css ===== */
/* R4.6.18 — remove the abandoned map-side rail, provide a compact collapsible
   basemap chooser, and normalize mobile/Android form scale across the platform. */

/* ---------- Map shell: the spatial layer panel is portaled to <body>.  The old
   dark side rail must not keep occupying a grid column after that move. ---------- */
.r392-map-shell{
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
}
.r392-map-shell>.map-side,
.r392-map-shell>.r423-map-side{
  min-width:0!important;
  max-width:none!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  overflow:visible!important;
  max-height:none!important;
}
.r392-map-shell>.r423-map-side.r4618-empty-map-side{display:none!important}
.r392-map-shell>.r423-map-side>.map-add-card:not([hidden]){
  width:100%!important;
  margin:0!important;
  color:#17324e!important;
}

/* ---------- Leaflet top-right control stack ---------- */
.leaflet-top.leaflet-right{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:6px!important;
  margin:8px 8px 0 0!important;
  pointer-events:none!important;
}
.leaflet-top.leaflet-right>.leaflet-control{
  margin:0!important;
  pointer-events:auto!important;
}
.r4618-basemap-control{position:relative!important;z-index:1200!important;background:transparent!important;border:0!important;box-shadow:none!important}
.r4618-basemap-trigger{
  min-width:112px!important;
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:6px 10px!important;
  border:1px solid rgba(147,202,240,.95)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.96)!important;
  color:#07569f!important;
  box-shadow:0 8px 22px rgba(4,58,113,.16)!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}
.r4618-basemap-trigger:hover,.r4618-basemap-trigger[aria-expanded="true"]{background:#edf8ff!important;border-color:#5ab6ef!important;color:#034c91!important}
.r4618-basemap-trigger>span{min-width:0;max-width:138px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r4618-basemap-trigger>i{font-style:normal;font-size:14px;transition:transform .14s ease}
.r4618-basemap-trigger[aria-expanded="true"]>i{transform:rotate(180deg)}
.r4618-basemap-menu{
  position:absolute!important;
  top:calc(100% + 6px)!important;
  right:0!important;
  width:min(250px,calc(100vw - 32px))!important;
  max-height:min(56vh,390px)!important;
  display:none!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  padding:6px!important;
  border:1px solid #c7e2f5!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 18px 45px rgba(2,48,101,.25)!important;
  z-index:1300!important;
}
.r4618-basemap-menu.is-open{display:grid!important;gap:4px!important}
.r4618-basemap-option{
  width:100%!important;
  min-height:38px!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto 8px!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px 8px!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#244760!important;
  text-align:left!important;
  font-size:12px!important;
  font-weight:760!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
.r4618-basemap-option:hover{background:#f0f9ff!important;border-color:#c4e5f8!important}
.r4618-basemap-option.is-active{background:linear-gradient(135deg,#e9f7ff,#edfff9)!important;border-color:#82cef3!important;color:#075aa8!important}
.r4618-basemap-option.is-unavailable{color:#7b8e9d!important;background:#f6f8fa!important}
.r4618-basemap-option .r4618-map-thumb{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#eaf6ff;color:#0876ca;font-size:14px}
.r4618-basemap-option.is-active .r4618-map-thumb{background:#0b86df;color:#fff}
.r4618-basemap-option small{font-size:9px!important;color:#8598a6!important;font-weight:700!important;white-space:nowrap}
.r4618-basemap-option .r4618-active-dot{width:7px;height:7px;border-radius:999px;background:#13b981;box-shadow:0 0 0 3px rgba(19,185,129,.13)}
/* Hide the former always-open select after the new folded control upgrades it. */
.r4617-basemap-control.r4618-upgraded>.r4617-basemap-box,
.r4617-basemap-control.r4618-upgraded>.r4617-tianditu-note{display:none!important}

/* ---------- Shared compact touch UI ---------- */
@media (max-width:900px),(pointer:coarse){
  :root{--r4618-mobile-control-height:40px;--r4618-mobile-font:14px}
  body{font-size:13px!important;-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
  .page-content{padding:14px 12px calc(86px + env(safe-area-inset-bottom,0px))!important}
  .page-heading{margin-bottom:12px!important;gap:10px!important}
  .page-heading h1{font-size:22px!important;line-height:1.2!important;letter-spacing:-.2px!important}
  .page-heading p{font-size:12.5px!important;line-height:1.55!important;margin-top:5px!important}
  .eyebrow{font-size:9px!important;letter-spacing:.11em!important;margin-bottom:4px!important}
  .card,.sample-main{border-radius:16px!important;padding:14px!important}
  .card h2,.sample-main h2,.form-section-title h2,.section-head h2{font-size:17px!important;line-height:1.25!important}
  .card p,.sample-main p,.form-section-title p,.section-head p{font-size:12px!important;line-height:1.55!important}

  /* Mobile header / Android WebView safe-area and compact controls. */
  .mobile-header-r390{
    min-height:calc(60px + env(safe-area-inset-top,0px))!important;
    height:auto!important;
    padding:calc(6px + env(safe-area-inset-top,0px)) 10px 7px!important;
    gap:7px!important;
    align-items:center!important;
  }
  .mobile-header-r390 .brand{min-width:0!important;flex:1 1 auto!important;padding:0!important;gap:7px!important;overflow:hidden!important}
  .mobile-header-r390 .brand-mark{width:34px!important;height:34px!important;min-width:34px!important;border-radius:10px!important;font-size:17px!important}
  .mobile-header-r390 .brand>span:last-child{min-width:0!important;overflow:hidden!important}
  .mobile-header-r390 .brand b{font-size:16px!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .mobile-header-r390 .brand small{font-size:9px!important;margin-top:3px!important}
  .mobile-tools-r390>summary,.mobile-logout-r390{
    min-width:68px!important;min-height:38px!important;height:38px!important;
    padding:0 10px!important;border-radius:12px!important;font-size:13px!important;line-height:1!important
  }

  /* Form labels and visible controls. File inputs remain visually hidden inside upload labels. */
  .page-content label{font-size:12.5px!important;line-height:1.35!important}
  .page-content input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),
  .page-content select,
  .page-content textarea{
    width:100%!important;
    min-height:var(--r4618-mobile-control-height)!important;
    padding:8px 10px!important;
    border-radius:11px!important;
    font-size:var(--r4618-mobile-font)!important;
    line-height:1.35!important;
  }
  .page-content textarea{min-height:82px!important;height:auto!important;resize:vertical!important}
  .page-content input[type="checkbox"],
  .page-content input[type="radio"],
  .modal input[type="checkbox"],
  .modal input[type="radio"]{
    width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
    max-width:18px!important;max-height:18px!important;padding:0!important;margin:0!important;
    flex:0 0 18px!important;vertical-align:middle!important;accent-color:#087edc!important
  }
  .page-content label>input[type="checkbox"],.page-content label>input[type="radio"]{display:inline-block!important;margin-right:6px!important}
  .inline-check,.toggle-row,.r4614-map-visibility,.r390-result-toggle label{
    align-items:center!important;gap:7px!important;font-size:12.5px!important;line-height:1.35!important
  }
  .button,.page-content button,.page-content a.button{
    min-height:38px!important;padding:7px 11px!important;border-radius:11px!important;font-size:12.5px!important;line-height:1.1!important
  }
  .button.small{min-height:34px!important;padding:6px 9px!important;font-size:11.5px!important}

  /* Field inspection and sampling form structure. */
  .sampling-layout{display:grid!important;gap:10px!important}
  .sampling-layout>.card,.sampling-layout .sample-main{margin:0!important}
  .section-head,.form-section-title{display:flex!important;align-items:flex-start!important;gap:9px!important;margin-bottom:10px!important}
  .section-head>.section-index,.form-section-title>span{
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
    display:grid!important;place-items:center!important;border-radius:11px!important;font-size:14px!important;line-height:1!important
  }
  .section-head>div,.form-section-title>div{min-width:0!important}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .form-grid label{min-width:0!important;margin:0!important}
  .form-grid .full,.form-grid .span-2{grid-column:1/-1!important}
  .r392-point-summary{gap:9px!important;padding:10px!important;border-radius:13px!important;align-items:center!important}
  .r392-point-summary>span:first-child{width:34px!important;height:34px!important;min-width:34px!important;font-size:15px!important}
  .r392-point-summary b{font-size:14px!important}.r392-point-summary small{font-size:10.5px!important;line-height:1.4!important}
  .location-box{padding:10px!important;gap:8px!important;border-radius:13px!important}
  .location-box b{font-size:13px!important}.location-box small{font-size:10.5px!important;line-height:1.45!important}
  .location-actions{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
  .location-actions .button{flex:1 1 100px!important;min-width:0!important}
  .location-manual{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:10px!important}
  .location-manual>button{grid-column:1/-1!important}
  .r462-nearest-filter{padding:10px!important;border-radius:13px!important}
  .r462-filter-head{gap:8px!important}.r462-filter-head b{font-size:13px!important}.r462-filter-head small,.r462-filter-status{font-size:10.5px!important;line-height:1.45!important}
  .r462-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}

  /* Parameter/OCR and upload areas. */
  .ocr-workbench,.ocr-upload{padding:10px!important;border-radius:14px!important}
  .ocr-upload-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
  .ocr-upload-header>b{font-size:13px!important}
  .upload-actions,.photo-upload-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .upload-button,.photo-choice{
    min-height:36px!important;padding:7px 8px!important;border-radius:10px!important;font-size:11.5px!important;line-height:1.15!important
  }
  .r392-ocr-message,.standard-meter-preview figcaption{font-size:10.5px!important;line-height:1.45!important}
  .standard-meter-preview{margin:8px 0 0!important;border-radius:12px!important;overflow:hidden!important}
  .parameter-grid,.quadrant-parameter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .parameter-field{min-width:0!important;padding:10px!important;border-radius:13px!important}
  .parameter-field>span{font-size:11.5px!important;line-height:1.3!important}
  .parameter-field input{min-height:40px!important;padding:7px 8px!important;font-size:17px!important;font-weight:800!important}
  .quick-test-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .quick-test-card{min-width:0!important;padding:10px!important;border-radius:13px!important}
  .quick-test-card>b{font-size:13px!important}.quick-test-card input{margin-top:6px!important}
  .photo-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .photo-upload-panel{min-width:0!important;padding:10px!important;border-radius:13px!important}
  .photo-upload-panel>b{font-size:13px!important;margin-bottom:7px!important}
  .photo-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin-top:7px!important}
  .photo-preview-grid>*{min-width:0!important;border-radius:9px!important;overflow:hidden!important}
  .r390-result-toggle{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .r390-result-toggle label{min-height:38px!important;padding:7px 9px!important;border-radius:11px!important}
  .r390-unavailable-block{padding:11px!important;border-radius:13px!important}.r390-unavailable-block h2{font-size:15px!important}
  .form-actions,.submit-bar,.mobile-submit-bar{gap:7px!important;padding:9px!important}
  .form-actions .button,.submit-bar .button,.mobile-submit-bar .button{flex:1 1 130px!important}

  /* Compact record cards, admin forms and modal controls across all pages. */
  .filter-bar,.record-filter,.r465-sort-filter{gap:7px!important;padding:9px!important}
  .metric-card{padding:13px!important;border-radius:14px!important}.metric-card b{font-size:22px!important}.metric-card span{font-size:11px!important}
  .modal-box{width:min(94vw,620px)!important;padding:15px!important;border-radius:16px!important}
  .modal-head{margin-bottom:10px!important}.modal-head h2{font-size:17px!important}
  .table-wrap{border-radius:12px!important}
  th{font-size:10px!important;padding:10px 11px!important}td{font-size:12px!important;padding:11px!important}

  /* Map controls and legend remain touchable without consuming the viewport. */
  .r4618-basemap-trigger{min-width:92px!important;min-height:34px!important;padding:5px 8px!important;font-size:11px!important}
  .r4618-basemap-trigger>span{max-width:112px!important}
  .r4618-basemap-menu{width:min(224px,calc(100vw - 24px))!important;max-height:min(48dvh,330px)!important}
  .r4618-basemap-option{min-height:36px!important;font-size:11.5px!important}
  .r4617-layer-control-button{min-width:72px!important;min-height:34px!important;padding:0 8px!important;font-size:11px!important}
}

@media (max-width:560px){
  .page-content{padding-left:10px!important;padding-right:10px!important}
  .form-grid,.r462-filter-grid,.location-manual{grid-template-columns:1fr!important}
  .location-manual>button{grid-column:auto!important}
  .quick-test-grid,.photo-upload-grid{grid-template-columns:1fr!important}
  .photo-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .ocr-upload-header{grid-template-columns:1fr!important}
  .section-head>.section-index,.form-section-title>span{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important}
  .mobile-header-r390 .brand b{font-size:15px!important}
  .mobile-tools-r390>summary,.mobile-logout-r390{min-width:62px!important;padding:0 8px!important;font-size:12.5px!important}
}

@media (max-width:380px){
  .parameter-grid,.quadrant-parameter-grid{grid-template-columns:1fr 1fr!important;gap:6px!important}
  .parameter-field{padding:8px!important}.parameter-field input{font-size:16px!important}
  .upload-actions,.photo-upload-actions{grid-template-columns:1fr 1fr!important}
  .mobile-header-r390 .brand b{font-size:14px!important}
}

@media (min-width:901px) and (max-width:1366px) and (pointer:coarse){
  .page-content{padding:20px 22px 82px!important}
  .sampling-layout{gap:12px!important}.sample-main{padding:18px!important}
  .form-grid{gap:11px!important}
  .page-content input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),.page-content select{min-height:42px!important;font-size:14px!important}
  .page-content textarea{font-size:14px!important}
}

@media(prefers-reduced-motion:reduce){.r4618-basemap-trigger>i{transition:none!important}}
/* ===== END r4618_map_shell_mobile_form_polish.css ===== */
