.atlas{height:100dvh;font-family:var(--type-sans);flex-direction:column;display:flex;overflow:hidden}.atlas-app{flex-direction:column;flex:1;min-height:0;display:flex}.atlas-bar{border-bottom:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1.25rem;display:flex}.atlas-bar h1{font-family:var(--type-display);letter-spacing:-.01em;color:var(--ink);white-space:nowrap;margin:0;font-size:1.15rem;font-weight:400}.stats{align-items:center;gap:1.25rem;display:flex}.stat{text-align:center}.stat-number{font-family:var(--type-mono);font-size:1.35rem;line-height:1}.stat-label{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-subtle);margin-top:3px;font-size:.62rem}.visited-count{color:var(--accent)}.total-count{color:var(--ink-muted)}.pct-count{color:var(--ink)}.legend{flex-shrink:0;align-items:center;gap:.9rem;display:flex}.legend-item{color:var(--ink-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.legend-hint{color:var(--ink-subtle);font-size:.78rem}.swatch{border-radius:var(--radius-sm);flex-shrink:0;width:13px;height:13px}.swatch.visited{background:var(--accent)}.swatch.unvisited{background:color-mix(in oklab, var(--ink) 16%, transparent);border:1px solid var(--hairline)}#map-container{flex:1;min-height:0;position:relative;overflow:hidden}#map-container svg{cursor:grab;width:100%;height:100%}#map-container svg:active{cursor:grabbing}.country{stroke:color-mix(in oklab, var(--sky-top) 55%, transparent);stroke-width:.4px;cursor:pointer;transition:filter .1s var(--ease-out-soft)}.country.unvisited{fill:color-mix(in oklab, var(--ink) 17%, transparent)}.country.visited{fill:var(--accent)}.country:hover{filter:brightness(1.3)}.graticule{fill:none;stroke:var(--ink-subtle);stroke-width:.3px}.sphere{fill:color-mix(in oklab, var(--sky-bottom) 72%, black)}#tooltip{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);pointer-events:none;opacity:0;transition:opacity .15s var(--ease-out-soft);white-space:nowrap;box-shadow:var(--shadow-pop);z-index:10;padding:8px 12px;font-size:.82rem;position:absolute}#tooltip .tip-name{font-weight:400;font-family:var(--type-display);color:var(--ink)}#tooltip .tip-status{margin-top:2px;font-size:.75rem}#tooltip .tip-status.v{color:var(--accent)}#tooltip .tip-status.u{color:var(--ink-muted)}.map-controls{flex-direction:column;gap:5px;display:flex;position:absolute;bottom:14px;right:14px}.ctrl-btn{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:color-mix(in oklab, var(--surface) 70%, transparent);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;transition:color .15s var(--ease-out-soft), border-color .15s var(--ease-out-soft);justify-content:center;align-items:center;font-size:1rem;display:flex}.ctrl-btn:hover{color:var(--ink);border-color:var(--accent)}.clear-btn{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:color-mix(in oklab, var(--surface) 70%, transparent);color:var(--ink-muted);cursor:pointer;transition:color .15s var(--ease-out-soft), border-color .15s var(--ease-out-soft);padding:6px 13px;font-size:.76rem;position:absolute;bottom:14px;left:14px}.clear-btn:hover{color:var(--ink);border-color:var(--accent)}.share-btn{border-radius:var(--radius-sm);border:1px solid var(--hairline);color:var(--ink-muted);font-family:var(--type-sans);cursor:pointer;transition:color .15s var(--ease-out-soft), border-color .15s var(--ease-out-soft);white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;display:inline-flex}.share-btn:hover{color:var(--ink);border-color:var(--accent)}.share-btn.copied{color:var(--accent);border-color:var(--accent)}.share-btn svg{stroke:currentColor;flex-shrink:0;width:14px;height:14px}#drag-handle{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);cursor:ns-resize;touch-action:none;background:0 0;flex-shrink:0;justify-content:center;align-items:center;height:7px;display:flex}#drag-handle:after{content:"";background:var(--ink-subtle);border-radius:1px;width:32px;height:2px}#drag-handle:hover:after{background:var(--ink-muted)}#grid-panel{flex-direction:column;flex-shrink:0;height:220px;min-height:0;display:flex}#grid-header{border-bottom:1px solid var(--hairline);flex-shrink:0;align-items:center;gap:10px;padding:7px 1.25rem;display:flex}#grid-header>span{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-size:.72rem;font-weight:400}#grid-search{border:1px solid var(--hairline);border-radius:var(--radius-sm);min-width:0;max-width:240px;color:var(--ink);font:inherit;background:0 0;outline:none;flex:1;padding:4px 10px;font-size:.8rem}#grid-search::placeholder{color:var(--ink-subtle)}#grid-search:focus{border-color:var(--accent)}#toggle-grid{border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--ink-muted);font:inherit;cursor:pointer;transition:color .15s var(--ease-out-soft), border-color .15s var(--ease-out-soft);background:0 0;margin-left:auto;padding:3px 10px;font-size:.72rem}#toggle-grid:hover{color:var(--ink);border-color:var(--accent)}#country-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-content:start;gap:2px;padding:8px 1.25rem;display:grid;overflow-y:auto}#country-grid::-webkit-scrollbar{width:6px}#country-grid::-webkit-scrollbar-track{background:0 0}#country-grid::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:3px}.cb-item{border-radius:var(--radius-sm);cursor:pointer;min-width:0;transition:background .1s var(--ease-out-soft);align-items:center;gap:7px;padding:4px 7px;display:flex}.cb-item:hover{background:color-mix(in oklab, var(--ink) 8%, transparent)}.cb-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer;flex-shrink:0;width:13px;height:13px}.cb-item .cb-label{color:var(--ink-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;transition:color .1s var(--ease-out-soft);-webkit-user-select:none;user-select:none;font-size:.8rem;overflow:hidden}.cb-item.checked .cb-label{color:var(--accent)}.cb-hidden{display:none!important}@media (width<=640px){.atlas-bar{gap:.6rem;padding:.55rem 1rem}.atlas-bar h1{display:none}.stats{gap:.8rem}.stat-number{font-size:1.1rem}.legend{display:none}.share-btn{padding:6px 8px}.share-btn .share-label{display:none}}
