/* GBMaps' compact green, gold and blue palette. Everything is scoped. */
#additionalData .ad-panel-copy { margin: 7px 0; font: 12px/1.4 Arial,sans-serif; color:#45503a; }
.ad-library-banner button { display:flex; align-items:center; justify-content:center; gap:7px; width:100%; padding:8px; border:1px solid #4c8526; border-bottom-width:3px; border-radius:4px; color:#fff; background:#619d30; font:bold 14px Arial,sans-serif; cursor:pointer; }
#mapSidebar #additionalData .ad-panel-button { box-sizing:border-box; display:flex; align-items:center; justify-content:flex-start; gap:9px; width:100%; min-height:44px; margin:8px 0; padding:6px 9px; border:1px solid #a3b295; border-left:3px solid #6d9b3b; border-bottom-width:2px; border-radius:4px; background:linear-gradient(#fff,#f1f4ec); color:#2f3b29; font:600 14px/20px Arial,sans-serif; text-align:left; cursor:pointer; box-shadow:0 1px 1px #0000000d; }
#mapSidebar #additionalData .ad-panel-button:hover { background:#eaf2dd; border-color:#71934e; }
#mapSidebar #additionalData .ad-panel-button:active { background:#dfeace; box-shadow:inset 0 1px 2px #0002; }
#mapSidebar #additionalData .ad-panel-button:focus-visible { outline:2px solid #426ab0; outline-offset:2px; }
#mapSidebar #additionalData .ad-panel-button img { display:block; width:30px; height:30px; flex:0 0 30px; margin:0; padding:0; pointer-events:none; }
#mapSidebar #additionalData .ad-panel-arrow { margin-left:auto; color:#67834e; font:24px/1 Arial,sans-serif; }
#additionalData .ad-attached { border-top:1px solid #d1d7c6; margin-top:9px; padding-top:5px; font:12px/1.4 Arial,sans-serif; }
#mapSidebar #additionalData .ad-attached label { display:flex; align-items:flex-start; gap:6px; padding:5px 0; text-align:left; float:none; cursor:pointer; font:13px/18px Arial,sans-serif; }
#mapSidebar #additionalData .ad-attached input { flex:0 0 16px; width:16px; height:16px; margin:1px 0 0; padding:0; accent-color:#4787c6; cursor:pointer; }
#additionalData .ad-attached input:focus-visible { outline:2px solid #426ab0; outline-offset:2px; }
#additionalData .ad-attached small { display:block; color:#68725b; }
#additionalData .ad-panel-status { font:12px/1.4 Arial,sans-serif; color:#635022; margin:7px 0; }
#mapSidebar #additionalData .ad-panel-actions { display:grid; grid-template-columns:minmax(0,1fr); grid-auto-rows:1fr; gap:8px; margin:8px 0; }
#mapSidebar #additionalData .ad-panel-actions .ad-panel-button { height:100%; min-height:44px; margin:0; }
#mapSidebar #additionalData .ad-panel-button > span:not(.ad-panel-arrow) { min-width:0; overflow-wrap:break-word; }
#mapSidebar #additionalData #activateAdditionalData { background-image:linear-gradient(#fff,#f1f4ec); background-size:auto; background-position:0 0; font-weight:400; font-size:12px; }
.ad-library-banner { display:flex; align-items:center; gap:14px; background:#f9f8ed; border:1px solid #b5c997; border-left:7px solid #79a441; padding:12px 15px; margin:12px 0; color:#30402b; font:14px/1.4 Arial,sans-serif; }
.ad-library-banner img { width:42px; height:42px; }
.ad-library-banner div { flex:1; }
.ad-library-banner strong { display:block; font-size:18px; }
.ad-library-banner button { width:auto; }
#adDialog { position:fixed; inset:0; margin:auto; box-sizing:border-box; width:min(800px, calc(100vw - 24px)); max-height:calc(100dvh - 28px); padding:0; border:2px solid #526a3e; border-radius:8px; background:#fffef8; color:#2c342a; box-shadow:0 12px 50px #0006; font:14px/1.45 Arial,sans-serif; text-align:left; }
#adDialog::backdrop { background:#162431a8; }
#adDialog *, #adDialog *::before, #adDialog *::after { box-sizing:border-box; }
#adDialog [hidden] { display:none !important; }
#adDialog header { display:flex; align-items:center; gap:12px; padding:11px 16px; background:#dcb039; border-bottom:4px solid #80a83e; }
#adDialog header img { width:38px; height:38px; }
#adDialog h2 { margin:0; padding:0; background:none; font:bold 24px/1.15 Arial,sans-serif; color:#293225; }
#adDialog header p { margin:3px 0 0; font-size:13px; }
#adDialog header > div { flex:1; }
#adDialog button { position:static; float:none; display:inline-flex; align-items:center; justify-content:center; gap:6px; width:auto; height:auto; min-height:33px; margin:0; padding:6px 11px; border:1px solid #aab69a; border-bottom-width:2px; border-radius:4px; background:#f7f8ef; color:#35452c; font:600 13px/1.3 Arial,sans-serif; cursor:pointer; box-shadow:none; }
#adDialog button:hover { background:#ecf3dd; }
#adDialog button:disabled { opacity:.55; cursor:wait; }
#adDialog button.ad-primary { background:#689b35; border-color:#4f7c27; color:white; }
#adDialog button.ad-primary:hover { background:#58882b; }
#adDialog button.ad-close { border-radius:50%; width:33px; height:33px; padding:0; background:#b93e2e; border-color:#91372e; color:#fff; font-size:26px; }
#adDialog nav { display:flex; gap:6px; padding:9px 15px; background:#e9eedf; border-bottom:1px solid #bbc9a8; }
#adDialog nav button[aria-pressed=true] { background:#527daf; border-color:#365d8b; color:#fff; }
#adDialog .ad-body { padding:13px 17px; overflow:auto; max-height:calc(100dvh - 225px); min-height:240px; }
#adDialog p { margin:0 0 10px; }
#adDialog h3 { margin:0 0 7px; font:bold 18px Arial,sans-serif; }
#adDialog a { color:#366a9c; text-decoration:underline; }
#adDialog label { display:block; width:auto; float:none; margin:0 0 5px; color:#34422b; text-align:left; font:600 13px/1.4 Arial,sans-serif; }
#adDialog input:not([type=checkbox]), #adDialog select, #adDialog textarea { display:block; float:none; width:100%; max-width:100%; height:auto; padding:7px; margin:4px 0 9px; border:1px solid #aeb9a0; border-radius:3px; background:#fff; color:#263123; font:14px/1.35 Arial,sans-serif; }
#adDialog input[type=checkbox] { width:17px; height:17px; margin:0; flex:0 0 auto; accent-color:#619d30; }
#adDialog textarea { min-height:100px; font:12px/1.45 Consolas,monospace; resize:vertical; }
#adDialog input[type=file] { background:#f5f7ec; padding:10px; }
#adDialog .ad-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#adDialog .ad-note { color:#5b6652; font-size:12px; }
#adDialog .ad-card { margin:0 0 11px; border:1px solid #bccbac; border-left:6px solid #77a143; background:#fff; padding:12px; }
#adDialog .ad-card:nth-child(3n+2) { border-left-color:#527daf; }
#adDialog .ad-card:nth-child(3n) { border-left-color:#d5a833; }
#adDialog .ad-card-top { display:flex; gap:12px; align-items:start; justify-content:space-between; }
#adDialog .ad-card-top select { width:auto; max-width:240px; margin:0; }
#adDialog .ad-fields { display:flex; flex-wrap:wrap; gap:8px 15px; padding:8px 0; }
#adDialog .ad-fields label, #adDialog .ad-check { display:flex; align-items:center; gap:7px; font-weight:normal; }
#adDialog .ad-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-top:7px; }
#adDialog .ad-actions a { font-size:12px; }
#adDialog .ad-table-wrap { overflow:auto; margin:7px 0 12px; max-height:290px; }
#adDialog table { width:100%; border-collapse:collapse; font-size:13px; }
#adDialog th { background:#edf2e3; text-align:left; padding:7px; border:1px solid #cbd4bd; }
#adDialog td { padding:6px 7px; border:1px solid #d9dfd1; vertical-align:top; }
#adDialog td input, #adDialog td select { margin:0 !important; min-width:120px; }
#adDialog td input[type=checkbox] { min-width:17px; }
#adDialog .ad-summary { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 12px; }
#adDialog .ad-summary > span { background:#eaf2dc; border-bottom:3px solid #82a74c; padding:8px 12px; font-size:13px; }
#adDialog .ad-summary b { display:block; font-size:22px; color:#436727; }
#adDialog .ad-summary .ad-warn { background:#fff0d4; border-color:#dbaa37; }
#adDialog footer { display:flex; gap:12px; align-items:center; padding:9px 15px; background:#edf0e4; border-top:1px solid #c4cfb6; }
#adDialog #adStatus { flex:1; margin:0; font-size:13px; }
#adDialog #adStatus[data-error=true] { color:#a73525; font-weight:bold; }
#adDialog :focus-visible { outline:3px solid #3976af; outline-offset:2px; }
@media(max-width:650px) { #adDialog .ad-grid { grid-template-columns:1fr; gap:0; } #adDialog .ad-body { padding:10px; } #adDialog h2 { font-size:20px; } #adDialog .ad-card-top { display:block; } #adDialog .ad-card-top select { margin-top:7px; } .ad-library-banner { flex-wrap:wrap; } }

/* Simple CSV import: one file, two columns, one name. */
#adDialog .ad-drop { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; position:relative; cursor:pointer; border:2px dashed #7aa547; border-radius:7px; background:#f0f6e5; padding:22px 14px; margin:12px 0 16px; text-align:center; font-size:17px; }
#adDialog .ad-drop:hover, #adDialog .ad-drop.ad-dragover { background:#e3f0cc; border-color:#427722; }
#adDialog .ad-drop:focus-within { outline:3px solid #3976af; outline-offset:2px; }
#adDialog .ad-drop-symbol { display:block; font:bold 34px Arial,sans-serif; color:#568531; line-height:1; }
#adDialog .ad-file-link { color:#356998; text-decoration:underline; font-size:14px; }
#adDialog .ad-drop input[type=file] { position:absolute; width:1px; height:1px; padding:0; margin:0; opacity:0; overflow:hidden; }
#adDialog .ad-more { margin:9px 0; }
#adDialog .ad-more > summary { cursor:pointer; color:#376795; font-size:13px; padding:3px 0; }
#adDialog .ad-more[open] > summary { margin-bottom:7px; }
#adDialog .ad-card .ad-more { margin-bottom:0; }
#adDialog .ad-card-top { align-items:center; }
#adDialog .ad-card-top > div { min-width:0; flex:1; }
#adDialog .ad-card-top h3 { overflow-wrap:anywhere; }
#adDialog .ad-card-top > button { flex-shrink:0; }
#adDialog .ad-file-ready { display:flex; align-items:center; gap:10px; padding:9px 11px; margin-bottom:15px; background:#eaf2de; border-left:4px solid #679c33; }
#adDialog .ad-file-ready > div { min-width:0; flex:1; overflow-wrap:anywhere; }
#adDialog .ad-file-ready .ad-note { display:block; }
#adDialog .ad-ready-tick { font-size:25px; color:#4c7b29; }
#adDialog .ad-grid > label:first-child { color:#356b9f; }
#adDialog .ad-grid > label:nth-child(2) { color:#527c2d; }
#adDialog .ad-sample { max-height:190px; border:1px solid #c6d1ba; }
#adDialog .ad-sample th, #adDialog .ad-sample td { min-width:100px; max-width:260px; overflow-wrap:anywhere; }
#adDialog .ad-sample [data-kind=postcode] { background:#eef5fc; }
#adDialog .ad-sample [data-kind=value] { background:#f0f6e4; }
#adDialog .ad-sample th[data-kind=postcode] { background:#527eaa; color:#fff; }
#adDialog .ad-sample th[data-kind=value] { background:#6d963d; color:#fff; }
#adDialog .ad-save-note { margin-top:9px; }
#adDialog .ad-attention { margin:12px 0; padding:10px 12px; background:#fff5d8; border-left:4px solid #d5a833; font-size:13px; }
#adDialog .ad-attention > strong { display:block; margin-bottom:4px; }
#adDialog .ad-attention ul { margin:5px 0 8px; padding-left:19px; }
#adDialog .ad-attention .ad-check { margin-top:10px; }
#adDialog #adDatasetName { max-width:440px; margin-bottom:3px; }
#adDialog button:disabled { cursor:default; }
@media(max-width:650px) {
 #adDialog .ad-card-top > button { margin-top:9px; }
 #adDialog .ad-file-ready { gap:7px; }
 #adDialog .ad-file-ready button { font-size:12px; padding:5px; }
 #adDialog .ad-sample { max-height:154px; }
}

/* A single order for uploaded figures and included statistics. */
#mapSidebar #additionalData .ad-order-hint { margin:9px 0 4px; font:12px/1.4 Arial,sans-serif; color:#56624d; }
#mapSidebar #additionalData .ad-attached { margin-top:7px; padding-top:3px; }
#mapSidebar #additionalData .ad-stat-row { display:flex; align-items:center; gap:5px; width:100%; margin:0; padding:4px 0; border:0; background:none; box-sizing:border-box; }
#mapSidebar #additionalData .ad-stat-row label { display:flex; align-items:flex-start; flex:1; min-width:0; gap:6px; margin:0; padding:0; font:13px/18px Arial,sans-serif; }
#mapSidebar #additionalData .ad-stat-row label > span { min-width:0; overflow-wrap:anywhere; }
#mapSidebar #additionalData .ad-order-buttons { display:flex; flex:0 0 auto; gap:3px; }
#mapSidebar #additionalData .ad-order-buttons button { display:flex; align-items:center; justify-content:center; width:23px; min-width:23px; height:24px; min-height:24px; margin:0; padding:0; border:1px solid #b8c5aa; border-radius:3px; background:#f4f7ee; color:#3f6841; font:bold 16px/1 Arial,sans-serif; cursor:pointer; }
#mapSidebar #additionalData .ad-order-buttons button:hover:not(:disabled) { background:#dfeccf; border-color:#799959; }
#mapSidebar #additionalData .ad-order-buttons button:disabled { opacity:.32; cursor:default; }
#mapSidebar #additionalData .ad-order-buttons button:focus-visible { outline:2px solid #426ab0; outline-offset:1px; }
#additionalData .ad-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
#additionalData [hidden] { display:none!important; }
