.waste-module-tabs { display:flex; gap:10px; padding:8px; margin-bottom:22px; border:1px solid var(--line,#dce8e1); background:white; border-radius:16px; }
.waste-module-tabs button { flex:1; min-width:0; padding:14px 20px; border:1px solid transparent; border-radius:11px; color:#315b4d; background:transparent; font:inherit; font-weight:700; cursor:pointer; }
.waste-module-tabs button.active { background:#dff1eb; border-color:#8ac9b9; color:#176b5b; }
.waste-module-tabs button:focus-visible { outline:3px solid #176b5b; outline-offset:2px; }
.waste-summary { padding:24px; margin-bottom:22px; min-width:0; }
.waste-summary h3 { margin:0 0 20px; }
.waste-summary-scroll { overflow:auto; max-width:100%; border:1px solid #dce8e1; border-radius:12px; }
.waste-summary table { border-collapse:collapse; width:100%; background:white; }
.waste-summary th,.waste-summary td { padding:14px 18px; border:1px solid #dce8e1; text-align:left; white-space:nowrap; }
.waste-summary th { background:#edf7f3; color:#315b4d; }
.waste-empty { padding:24px 0; color:#60786e; }
.waste-record-actions { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.waste-config-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0; }
.waste-config-fields label { display:grid; gap:10px; align-content:start; }
.waste-config-fields textarea { width:100%; box-sizing:border-box; min-height:200px; resize:vertical; padding:12px; border:1px solid #bfd9ce; border-radius:9px; font:inherit; color:#203f35; background:#f8fbf9; }
.waste-config-fields small { color:#60786e; line-height:1.7; }
.waste-config-status { min-height:24px; color:#60786e; }
.waste-config-status.error { color:#a34231; }
.survey-page-content [hidden] { display:none!important; }
.survey-page-content [role=tabpanel],.survey-page-content #surveyData { min-width:0; }
.survey-config fieldset { border:0; padding:0; margin:0; min-width:0; }
@media(max-width:800px) { .waste-module-tabs button {padding:12px 6px;} .waste-config-fields {grid-template-columns:1fr;} .waste-summary {padding:18px;} }
.waste-module-tabs .section-count { margin-left:6px; padding:0 7px; border-radius:9px; background:#e8f2ee; color:#176b5b; font-size:.85em; font-weight:800; }
.waste-module-tabs .section-count[hidden], .waste-module-tabs .module-config-link[hidden] { display:none; }
.waste-module-tabs .module-config-link { flex:0 0 auto; display:flex; align-items:center; padding:0 14px; border-radius:11px; color:#176b5b; font-weight:800; text-decoration:none; white-space:nowrap; }
.waste-module-tabs .module-config-link:hover { background:#e8f2ee; }
.summary-drill { padding:0; border:0; background:none; color:#176b5b; font:inherit; font-weight:700; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.summary-drill:focus-visible { outline:2px solid #176b5b; outline-offset:2px; }
/* Standalone waste pages keep the shared date filter in the fixed topbar; content starts below its measured height. */
.waste-filter-page .workspace { padding-top: var(--data-header-height, 100px); }
/* Extra fields of 垃圾调查与捡拾, 潮汐垃圾收集 and 垃圾共收共管 (extra-fields-ui.js). */
.extra-fields-config { margin:26px 0 18px; }
.extra-fields-config h3 { margin:0 0 6px; }
.extra-fields-scroll { overflow:auto; max-width:100%; border:1px solid #dce8e1; border-radius:12px; margin-bottom:12px; }
.extra-fields-table { border-collapse:collapse; width:100%; min-width:600px; background:white; }
.extra-fields-table th,.extra-fields-table td { padding:10px 12px; border-bottom:1px solid #dce8e1; text-align:left; vertical-align:top; }
.extra-fields-table th { background:#edf7f3; color:#315b4d; font-size:13px; white-space:nowrap; }
.extra-fields-table input:not([type=checkbox]),.extra-fields-table select,.extra-fields-table textarea { box-sizing:border-box; width:100%; min-height:40px; border:1px solid #bfd9ce; border-radius:8px; padding:8px 10px; font:inherit; background:#f8fbf9; color:#203f35; }
.extra-fields-table textarea { min-height:64px; resize:vertical; }
.extra-fields-table td:nth-child(1) { min-width:140px; }
.extra-fields-table td:nth-child(2) { min-width:110px; }
.extra-field-type { display:flex; flex-direction:column; gap:8px; }
.extra-fields-table .extra-field-type textarea { position:static; width:100%; min-width:0; min-height:64px; margin:0; }
.extra-fields-table td:nth-child(3) { min-width:130px; }
.extra-field-choice { width:72px; text-align:center !important; }
.extra-field-choice input { width:18px; height:18px; }
.extra-field-na,.extra-fields-empty { color:#7b8f86; }
.extra-fields-entry { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:18px 0; }
.extra-field-input { display:flex; flex-direction:column; gap:8px; min-width:0; color:#315b4d; font-weight:600; font-size:14px; }
.extra-field-input input:not([type=checkbox]),.extra-field-input select,.extra-field-input textarea { box-sizing:border-box; width:100%; min-height:42px; border:1px solid #bfd9ce; border-radius:9px; padding:10px 12px; font:inherit; font-weight:400; background:#f8fbf9; color:#203f35; }
.extra-field-wide { grid-column:1/-1; }
.extra-field-multi { display:flex; flex-wrap:wrap; gap:6px 14px; font-weight:400; }
.extra-field-multi label { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
@media (max-width:760px) { .extra-fields-entry { grid-template-columns:1fr; } }
.extra-fields-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:14px; }
.extra-fields-head p { margin:0; color:#60786e; font-size:14px; }
.extra-fields-head button { flex-shrink:0; }
.extra-fields-table tr.is-builtin select:disabled { color:#315b4d; background:#eef4f1; }
