[data-analytics-open][hidden]{display:none!important}
.analytics-dialog{box-sizing:border-box;width:min(980px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:clamp(18px,4vw,36px);border:1px solid #b8a16c;border-radius:20px;background:#142b25;color:#f5f0df;box-shadow:0 24px 90px #0009;overflow:auto;overscroll-behavior:contain;font-family:inherit}
.analytics-dialog::backdrop{background:#051511c9;backdrop-filter:blur(5px)}
.analytics-dialog *{box-sizing:border-box}.analytics-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.analytics-header h2{margin:0;font-size:clamp(22px,4vw,32px);font-family:Georgia,serif;font-weight:400;color:#e5cd94}.analytics-dialog button,.analytics-dialog select,.analytics-dialog input{min-height:44px;border:1px solid #998658;border-radius:8px;padding:9px 12px;background:#203d33;color:#fff9e9;font:inherit}.analytics-dialog button{cursor:pointer}.analytics-dialog button:hover{background:#365546}.analytics-dialog :focus-visible{outline:3px solid #efd89c;outline-offset:3px}.analytics-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.analytics-filters label{display:grid;gap:6px;font-size:14px}.analytics-dates{display:flex;gap:12px;flex-wrap:wrap}.analytics-dates[hidden]{display:none}.analytics-status{min-height:1.4em;color:#e5cd94}.analytics-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.analytics-metric{padding:18px;border:1px solid #526c58;border-radius:12px;background:#1b352c;display:grid;gap:8px}.analytics-metric span{font-size:14px;color:#d3d8cd}.analytics-metric strong{font-size:clamp(25px,5vw,40px);font-weight:400;color:#eddaaa}.analytics-content section{margin-top:30px}.analytics-content h3{font-family:Georgia,serif;font-size:23px;font-weight:400;color:#e5cd94;margin-bottom:12px}.analytics-muted{font-size:14px;line-height:1.6;color:#c5cdbf}.analytics-notice{padding:12px;border:1px solid #b8a16c;border-radius:8px}.analytics-table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.analytics-dialog table{width:100%;border-collapse:collapse;font-size:14px}.analytics-dialog th,.analytics-dialog td{padding:12px 10px;text-align:left;border-bottom:1px solid #40594b;vertical-align:top}.analytics-dialog th{color:#dfc993;font-weight:500;white-space:nowrap}.analytics-dialog td:first-child{overflow-wrap:anywhere}.analytics-chart{height:180px;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:4px;padding-top:10px;border-bottom:1px solid #8b996e;margin-bottom:16px}.analytics-column{height:100%;position:relative;display:flex;align-items:end;padding-bottom:25px}.analytics-bar{width:100%;background:linear-gradient(#e5cc8e,#7e9d70);border-radius:3px 3px 0 0;max-height:100%}.analytics-column span{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);font-size:10px;color:#c5cdbf}.analytics-dialog summary{cursor:pointer;padding:12px 0;min-height:44px;color:#dfc993}.analytics-dialog input{color-scheme:dark}@media(max-width:520px){.analytics-dialog{padding:18px 14px;border-radius:14px}.analytics-header{align-items:start}.analytics-header h2{font-size:24px}.analytics-metric{padding:12px 8px}.analytics-metric span{font-size:12px}.analytics-filters>label,.analytics-filters select{width:100%}.analytics-dates{width:100%}.analytics-dates label{flex:1;min-width:120px}.analytics-dates input{width:100%;min-width:0}.analytics-chart{gap:2px;height:155px}.analytics-column span{font-size:8px}.analytics-dialog th,.analytics-dialog td{padding:10px 7px}}
.analytics-map{margin:18px 0}.analytics-map label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}.analytics-map svg{display:block;width:100%;height:auto;margin-top:12px;border:1px solid #40594b;border-radius:12px;background:#10231f}.analytics-map path[role=button]{cursor:pointer}.analytics-map path:focus,.analytics-map path:hover{stroke:#fff4bc;stroke-width:2;outline:none;filter:brightness(1.2)}

.analytics-map-viewport { overflow: hidden; border-radius: 12px; background: #12271f; }
.analytics-map-viewport svg { display: block; width: 100%; height: auto; min-height: 240px; max-height: 65vh; touch-action: none; user-select: none; cursor: grab; }
.analytics-map-viewport svg:active { cursor: grabbing; }
.analytics-map-controls { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; margin-bottom: .5rem; }
.analytics-map-controls button { min-width: 44px; min-height: 44px; }
.analytics-map-scale { margin-left: auto; font-variant-numeric: tabular-nums; }
