/* A shared soft visual system, scoped to the requested dashboard panels. */
.ui-line-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;display:block;flex:none}
.province-explorer-card,.data-analysis-pro,.demographic-panel.demographic-soft{background:#fff!important;border:1px solid #e5ebf3!important;border-radius:22px!important;padding:24px!important;box-shadow:0 6px 28px #23496d06!important}
.province-explorer-card .map-panel-head{display:flex!important;flex-wrap:wrap;gap:18px!important;align-items:center!important;padding-bottom:20px!important;margin-bottom:18px!important;border-bottom:1px solid #edf1f6!important}
.province-explorer-card .map-panel-head h2{font-size:19px!important;line-height:1.8!important}.province-explorer-card .map-panel-head p{font-size:11px!important;margin-top:4px;color:#8a9bb0!important}.province-explorer-card .location-svg{background:#eef4ff;color:#6489b6;border-radius:13px}
.province-explorer-card .map-toolbar{display:grid!important;grid-template-columns:minmax(180px,1fr) 155px 90px 42px!important;gap:9px!important;max-width:100%;width:auto;flex:1 1 560px;min-width:0}
.explorer-search{position:relative;display:flex!important;align-items:center;margin:0!important;min-width:0}.explorer-search>.ui-line-icon{position:absolute;left:12px;z-index:1;width:17px;height:17px;color:#8a9eb6;pointer-events:none}
.province-explorer-card .map-toolbar input,.province-explorer-card .map-toolbar select,.province-explorer-card .map-toolbar button{height:42px!important;box-sizing:border-box!important;border:1px solid #e0e8f2!important;border-radius:11px!important;background:#f9fbfe!important;font-family:inherit!important;font-size:12px!important;color:#4c6989!important;width:100%!important;margin:0!important;min-width:0!important;box-shadow:none!important}
.province-explorer-card .map-toolbar input{padding:0 12px 0 37px!important}.province-explorer-card .map-toolbar button{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px!important}.province-explorer-card .map-toolbar button .ui-line-icon{width:17px;height:17px}.province-explorer-card .map-toolbar input:focus,.province-explorer-card .map-toolbar select:focus{outline:2px solid #c9dbf2;outline-offset:1px}
.province-explorer-card .province-filter-chips{gap:8px!important;flex-wrap:wrap!important;overflow:visible!important;padding:0!important;margin-bottom:18px!important}.province-explorer-card .province-filter-chips button{display:inline-flex;align-items:center;gap:7px;border:1px solid #e5ebf3!important;border-radius:10px!important;background:#fafbfd!important;color:#6c8199!important;padding:8px 11px!important;font-size:11px!important;font-weight:500;box-shadow:none!important}.province-explorer-card .province-filter-chips button b{display:grid;place-items:center;min-width:21px;height:21px;border-radius:6px;background:#edf2f8;color:#4d6987;font-size:10px;margin:0}.province-explorer-card .province-filter-chips button.active{background:#eef4fd!important;border-color:#bfd1e9!important;color:#315a8a!important}.province-explorer-card .province-filter-chips button.active b{background:#6084b2;color:white}.chip-dot{width:6px;height:6px;border-radius:50%;background:#a3b1c0}.chip-dot.targeted{background:#8e88b6}.chip-dot.done{background:#6baa91}.chip-dot.doing{background:#c9a268}.chip-dot.wait{background:#c18d95}
.data-analysis-pro .analysis-panel-head{padding-bottom:20px!important;margin-bottom:20px!important;gap:16px;flex-wrap:wrap}.data-analysis-pro .analysis-heading h2{font-size:20px!important;line-height:1.7!important}.data-analysis-pro .analysis-heading p{font-size:11px!important;color:#8a9bb0!important}.data-analysis-pro .analysis-heading-icon{width:40px;height:40px;border-radius:13px;background:#eef4ff;color:#688bb9}.data-analysis-pro .analysis-live-pill{background:#eef8f2;color:#62957e;font-size:10px}.data-analysis-pro .analysis-badge{background:#f1f5fc!important;border:1px solid #e1eaf6!important;color:#6080a6!important;font-weight:600!important}
.data-analysis-pro .analysis-primary-grid{grid-template-columns:minmax(250px,.75fr) minmax(0,1.55fr)!important;gap:18px!important;align-items:stretch}.data-analysis-pro .analysis-card{padding:20px!important;border:1px solid #e6edf5!important;border-radius:18px!important;box-shadow:0 4px 18px #244b7605!important}.data-analysis-pro .analysis-card-title h3{font-size:14px!important;line-height:1.8!important;color:#365676!important}.data-analysis-pro .analysis-card-title h3 small{font-size:10px!important;font-weight:400;color:#8fa0b4!important}.data-analysis-pro .analysis-card-icon{width:36px;height:36px;border-radius:12px;background:#edf4ff;color:#688ab5}.data-analysis-pro .analysis-card-icon.target{background:#f1edfb;color:#a08bc3}
.data-analysis-pro .access-donut-wrap{grid-template-columns:1fr!important;gap:18px!important;justify-items:center;padding-top:24px!important}.data-analysis-pro .access-donut{width:142px!important;height:142px!important;background:conic-gradient(#76ac98 0 calc(var(--active)*1%),#d2a0a8 calc(var(--active)*1%) 100%);box-shadow:none!important}.data-analysis-pro .access-donut[style*="--total:0"]{background:#e8eef5}.data-analysis-pro .access-donut:before{width:116px!important;height:116px!important;box-shadow:none}.data-analysis-pro .access-donut b{font-size:30px!important;color:#365676}.data-analysis-pro .access-donut span{font-size:10px!important;color:#8b9eb2}.data-analysis-pro .chart-legend{width:100%;max-width:340px}.data-analysis-pro .chart-legend>span{font-size:11px!important;padding:9px 0!important}.data-analysis-pro .chart-legend>span>span{flex-direction:row;justify-content:space-between;gap:10px}.data-analysis-pro .chart-legend small{font-size:10px;margin:0;color:#91a0b2}.data-analysis-pro .chart-legend i{width:7px;height:7px}.lg-active i{background:#76ac98}.lg-expiring i{background:#cbb080}.lg-expired i{background:#d2a0a8}.access-chart-note{color:#9aabba;font-size:9px;text-align:center;margin:15px 0 0}
.data-analysis-pro .target-chart-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;margin-bottom:12px}.data-analysis-pro .target-chart-tabs{display:flex!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap!important}.data-analysis-pro .target-chart-tabs button{border:1px solid #e6ecf4!important;background:#fafbfd!important;border-radius:9px!important;font-size:10px!important;font-weight:500!important;color:#6e839d!important;padding:7px 9px!important;box-shadow:none!important}.data-analysis-pro .target-chart-tabs button.active{background:#eef3fc!important;color:#426d9e!important;border-color:#c9d9ed!important}.data-analysis-pro .target-chart-tabs button b{background:#edf1f7!important;color:#6a829e!important;border-radius:5px!important}.data-analysis-pro .target-chart-tabs button.active b{background:#6e90ba!important;color:white!important}
.data-analysis-pro .target-bars-compact{max-height:338px!important}.data-analysis-pro .target-bars-compact .target-bar-row{grid-template-columns:24px minmax(82px,1fr) minmax(70px,1.2fr) 43px 43px!important;gap:9px!important;padding:13px 2px!important;min-height:54px!important}.data-analysis-pro .target-bars-compact .province-status-badge{grid-column:2/-1;justify-self:start!important;font-style:normal!important;font-size:9px!important;min-width:0!important;padding:3px 8px!important;font-weight:500!important}.data-analysis-pro .target-bars-compact .province-status-badge:before{content:''!important;width:5px;height:5px;background:currentColor;border-radius:50%}.data-analysis-pro .target-row-name{font-weight:600!important;font-size:11px}.data-analysis-pro .target-row-index{background:#f2f5fa;color:#8398b0;border-radius:7px}.data-analysis-pro .target-bar-track{height:8px!important;background:#edf2f8!important}.data-analysis-pro .target-bar-track i{min-width:0!important}.data-analysis-pro .target-bar-track i.done{background:#7eb29e}.data-analysis-pro .target-bar-track i.doing{background:#cdb181}.data-analysis-pro .target-bar-track i.wait{background:#cea3ab}.data-analysis-pro .province-status-badge.done{background:#eff8f3;color:#67967f}.data-analysis-pro .province-status-badge.doing{background:#fbf5e9;color:#ad9367}.data-analysis-pro .province-status-badge.wait{background:#faf0f2;color:#b0838d}
.demographic-soft .panel-head{margin-bottom:22px!important;padding-bottom:18px;border-bottom:1px solid #edf1f6}.demographic-soft .panel-head h2{font-size:20px!important;line-height:1.8!important}.demographic-soft .panel-head p{font-size:11px!important;color:#91a0b2}.demographic-soft .demographic-cards{gap:20px}.demographic-soft .demographic-category{padding:24px;background:#fbfcff;border:1px solid #e7edf7;border-radius:18px;box-shadow:0 4px 18px #234b7905}.demographic-soft .demographic-category:nth-child(2){background:#fdfcff;border-color:#ece8f6}.demographic-soft .demographic-category h3{font-size:15px;line-height:1.9;font-weight:600;color:#3c5576;align-items:flex-start;gap:13px;margin-bottom:24px}.demographic-soft .demographic-icon{flex:0 0 38px;height:38px;border-radius:12px;background:#ecf2fd;color:#7696c2}.demographic-soft .demographic-category:nth-child(2) .demographic-icon{background:#f0ebfa;color:#a28fc6}.demographic-soft .demographic-icon svg{width:20px;height:20px}.demographic-soft .demographic-metric{margin-top:24px}.demographic-soft .demographic-metric>div:first-child{font-size:12px;line-height:1.9;gap:20px;align-items:center;margin-bottom:10px;color:#6c7e97}.demographic-soft .demographic-metric strong{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 5px;flex:none;font-size:17px;color:#456082}.demographic-soft .demographic-metric strong b{font-size:20px;font-weight:600}.demographic-soft .demographic-unit{font-size:10px;font-weight:400;color:#8a9bb1}.demographic-soft .demographic-metric small{grid-column:1/-1;font-size:10px;font-weight:500;color:#9aacc0;margin-top:2px}.demographic-soft .demographic-track{height:8px;background:#edf2fa;box-shadow:none}.demographic-soft .demographic-track i{background:#85a4d0}.demographic-soft .demographic-category:nth-child(2) .demographic-track{background:#f0edf7}.demographic-soft .demographic-category:nth-child(2) .demographic-track i{background:#b09ad2}
@media(min-width:1500px){.data-analysis-pro .target-bars-compact .target-bar-row{grid-template-columns:26px minmax(110px,1fr) minmax(100px,1.5fr) 50px 50px 100px!important;min-height:57px!important}.data-analysis-pro .target-bars-compact .province-status-badge{grid-column:auto}}
@media(max-width:1000px){.data-analysis-pro .analysis-primary-grid{grid-template-columns:1fr!important}.data-analysis-pro .access-donut-wrap{grid-template-columns:142px minmax(0,1fr)!important;justify-items:stretch;gap:24px!important}.data-analysis-pro .access-chart-note{text-align:left}.demographic-soft .demographic-cards{grid-template-columns:1fr}.province-explorer-card .map-toolbar{flex-basis:100%}}
@media(max-width:600px){.province-explorer-card,.data-analysis-pro,.demographic-panel.demographic-soft{padding:16px!important;border-radius:17px!important}.province-explorer-card .map-toolbar{grid-template-columns:minmax(0,1fr) 85px 42px!important}.province-explorer-card .explorer-search{grid-column:1/-1}.province-explorer-card .map-panel-head h2{font-size:16px!important}.province-explorer-card .province-filter-chips{gap:6px!important}.province-explorer-card .province-filter-chips button{font-size:10px!important;padding:6px 8px!important}.data-analysis-pro .analysis-card{padding:16px!important}.data-analysis-pro .access-donut-wrap{grid-template-columns:110px minmax(0,1fr)!important;gap:14px!important}.data-analysis-pro .access-donut{width:106px!important;height:106px!important}.data-analysis-pro .access-donut:before{width:86px!important;height:86px!important}.data-analysis-pro .chart-legend>span>span{flex-direction:column;gap:3px}.data-analysis-pro .target-bars-compact .target-bar-row{grid-template-columns:22px minmax(65px,1fr) minmax(35px,.6fr) 38px 38px!important;gap:5px!important}.data-analysis-pro .target-row-rate{display:block!important;font-size:9px!important}.demographic-soft .demographic-category{padding:18px}.demographic-soft .demographic-category h3{font-size:14px}.demographic-soft .demographic-metric>div:first-child{font-size:12px;gap:12px}}


/* V3.42.22 — compact Completed Responses cards with row-level icons */
.demographic-panel.demographic-soft{padding:18px 20px!important}.demographic-soft .panel-head{margin-bottom:12px!important;padding-bottom:10px!important}.demographic-soft .panel-head h2{font-size:21px!important;line-height:1.55!important}.demographic-soft .panel-head p{font-size:12px!important}.demographic-soft .demographic-cards{gap:14px!important;align-items:stretch!important}.demographic-soft .demographic-category{padding:14px 16px!important;border-radius:17px!important;box-shadow:0 3px 14px #234b7905!important}.demographic-soft .demographic-category h3{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:center!important;gap:11px!important;margin:0 0 6px!important;font-size:15px!important;line-height:1.65!important;min-height:44px!important}.demographic-soft .demographic-icon{width:40px!important;height:40px!important;flex-basis:40px!important;border-radius:12px!important}.demographic-soft .demographic-icon svg{width:21px!important;height:21px!important}.demographic-soft .demographic-metric{margin:0!important;padding:9px 0!important;border-top:1px solid #edf2f7}.demographic-soft .demographic-metric:first-of-type{border-top:0}.demographic-soft .demographic-metric-head{display:grid!important;grid-template-columns:32px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;margin:0 0 5px!important}.demographic-soft .demographic-row-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#edf4ff;color:#4b82d0}.demographic-soft .demographic-row-icon svg{width:17px;height:17px}.demographic-soft .demographic-category:nth-child(2) .demographic-row-icon{background:#f2ecfb;color:#8769c7}.demographic-soft .demographic-label{font-size:13px!important;font-weight:600!important;line-height:1.55!important;color:#526c89!important;min-width:0}.demographic-soft .demographic-metric strong{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:7px!important;white-space:nowrap!important;color:#315478!important}.demographic-soft .demographic-count{display:inline-flex;align-items:baseline;gap:4px}.demographic-soft .demographic-count b{font-size:23px!important;line-height:1!important}.demographic-soft .demographic-denom{font-size:12px!important;font-weight:600!important;color:#91a1b5!important}.demographic-soft .demographic-metric strong small{display:inline!important;font-size:11px!important;font-weight:600!important;color:#8ea1b8!important;margin:0!important}.demographic-soft .demographic-track{height:7px!important;margin:0 0 0 41px!important;background:#eaf0f8!important}.demographic-soft .demographic-category:nth-child(2) .demographic-track{background:#efebf7!important}
@media(max-width:1000px){.demographic-soft .demographic-cards{grid-template-columns:1fr!important}.demographic-soft .demographic-track{margin-left:41px!important}}
@media(max-width:600px){.demographic-panel.demographic-soft{padding:14px!important}.demographic-soft .demographic-category{padding:12px!important}.demographic-soft .demographic-metric-head{grid-template-columns:30px minmax(0,1fr) auto!important;gap:7px!important}.demographic-soft .demographic-label{font-size:12px!important}.demographic-soft .demographic-count b{font-size:20px!important}.demographic-soft .demographic-denom{font-size:10px!important}.demographic-soft .demographic-track{margin-left:37px!important}}

/* V3.42.22 — approved Access Code Status Option A */
.access-code-status-panel.access-code-option-a{padding:18px 20px!important;background:#fff!important;border:1px solid #e2eaf4!important;border-radius:20px!important;box-shadow:0 6px 24px rgba(31,63,99,.055)!important;margin:16px 0!important}
.access-option-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.access-option-title{display:flex;align-items:center;gap:12px;min-width:0}.access-option-smile{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#eaf3ff;overflow:hidden}.access-option-smile img{width:36px;height:36px;object-fit:contain;display:block}.access-option-title h2{margin:0;color:#173e6d;font-size:19px;line-height:1.5}.access-option-title p{margin:2px 0 0;color:#8496ac;font-size:11px}.access-option-details{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#eef5ff;color:#266dcc;text-decoration:none;font-size:11px;font-weight:700;white-space:nowrap}.access-option-details:hover{background:#e3efff}.access-option-body{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:center}.access-option-donut{position:relative;width:168px;height:168px;margin:auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#e9a51e 0 calc(var(--expiring)*1%),#61ad91 calc(var(--expiring)*1%) calc(var(--active)*1%),#d98b96 calc(var(--active)*1%) calc((var(--active) + var(--expired))*1%),#e7edf4 0)}.access-option-donut::after{content:"";position:absolute;width:126px;height:126px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #edf2f7}.access-option-donut>div{position:relative;z-index:1;display:grid;text-align:center;gap:1px;color:#315779}.access-option-donut b{font-size:36px;line-height:1}.access-option-donut span{font-size:11px;font-weight:700}.access-option-donut small{font-size:9px;color:#93a2b4}.access-option-rows{display:grid;gap:8px}.access-option-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto 38px 14px;align-items:center;gap:10px;min-height:48px;padding:7px 12px;border-radius:12px;border:1px solid transparent}.access-option-row.active{background:#eff9f4;border-color:#e1f1e8}.access-option-row.expiring{background:#fff8e9;border-color:#f5e8c7}.access-option-row.expired{background:#fff2f4;border-color:#f2dde1}.access-option-dot{width:8px;height:8px;border-radius:50%}.access-option-row.active .access-option-dot{background:#4da983}.access-option-row.expiring .access-option-dot{background:#e4a229}.access-option-row.expired .access-option-dot{background:#d67d8a}.access-option-row strong{font-size:13px;color:#385777;font-weight:650}.access-option-row small{font-size:11px;color:#8294aa}.access-option-row b{font-size:22px;line-height:1;text-align:right}.access-option-row.active b{color:#268e64}.access-option-row.expiring b{color:#c98714}.access-option-row.expired b{color:#b94d5f}.access-option-chevron{color:#8194aa;font-size:22px;line-height:1}.access-option-note{margin:9px 0 0;text-align:right;color:#95a4b5;font-size:9px}.data-analysis-pro .analysis-primary-grid.analysis-primary-single{grid-template-columns:1fr!important}.data-analysis-pro .analysis-primary-grid.analysis-primary-single .target-status-chart{min-width:0!important}
@media(max-width:700px){.access-option-head{align-items:flex-start}.access-option-body{grid-template-columns:1fr;gap:14px}.access-option-donut{width:140px;height:140px}.access-option-donut::after{width:106px;height:106px}.access-option-donut b{font-size:31px}.access-option-row{grid-template-columns:9px minmax(0,1fr) auto 34px 12px;gap:7px}.access-option-details{font-size:10px;padding:7px 10px}}

/* Respondent information: user-supplied heading icon. */
.demographic-panel .respondent-information-title{display:flex;align-items:center;gap:10px}
.respondent-information-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#edf5ff}
.respondent-information-icon img{display:block;width:30px;height:30px;object-fit:contain}

.demographic-icon .demographic-supplied-icon{display:block;width:30px;height:30px;object-fit:contain}

.demographic-row-icon .demographic-location-icon{display:block;width:23px;height:23px;object-fit:contain}

.analysis-heading-icon .analysis-supplied-heading-icon{display:block;width:30px;height:30px;object-fit:contain}

.analysis-card-icon .analysis-supplied-card-icon{display:block;width:28px;height:28px;object-fit:contain}

.target-setting-icon .target-settings-supplied-icon{display:block;width:30px;height:30px;object-fit:contain}
