:root{--purple:#9333ea;--purple-deep:#6b21a8;--purple-glow:#a855f7;--purple-mist:#9333ea14;--purple-ember:#a855f726;--bg:#06060b;--bg-raised:#0c0c14;--bg-card:#0e0e16b3;--bg-glass:#12121e8c;--bg-input:#141423cc;--text:#e4e2ec;--text-bright:#f5f3ff;--text-dim:#7c78a0;--text-muted:#4a4670;--border:#9333ea1a;--border-subtle:#ffffff0a;--green:#22c55e;--green-dim:#22c55e26;--amber:#f59e0b;--amber-dim:#f59e0b26;--red:#ef4444;--red-dim:#ef444426;--radius:12px;--radius-lg:18px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Outfit,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.015'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:var(--purple-glow);text-decoration:none;transition:color .2s}a:hover{color:var(--text-bright)}::selection{background:var(--purple);color:#fff}.header{backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:100;background:#06060bcc;justify-content:space-between;align-items:center;height:64px;padding:0 2rem;display:flex;position:relative}.header:after{content:"";background:linear-gradient(90deg, transparent, var(--purple) 50%, transparent);opacity:.4;height:1px;position:absolute;bottom:-1px;left:0;right:0}.header-brand{align-items:center;gap:.6rem;display:flex}.header-brand .logo-mark{background:linear-gradient(135deg, var(--purple), var(--purple-glow));color:#fff;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:800;display:flex;box-shadow:0 0 20px #9333ea4d}.header h1{color:var(--text-bright);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.header h1 span{color:var(--purple-glow)}.header nav{gap:.25rem;display:flex}.header nav a{color:var(--text-dim);letter-spacing:.01em;border-radius:8px;padding:.4rem .85rem;font-size:.85rem;font-weight:500;transition:all .2s}.header nav a:hover{color:var(--text-bright);background:var(--purple-mist)}.header nav a.active{color:var(--purple-glow);background:var(--purple-ember)}#globe-container{background:radial-gradient(ellipse at 50% 60%, #6b21a814 0%, var(--bg) 60%);width:100%;height:520px;position:relative;overflow:hidden}#globe-container:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle at 50% 100%,#9333ea0f 0%,#0000 50%);position:absolute;inset:0}#globe-container:after{content:"";background:linear-gradient(to top, var(--bg), transparent);pointer-events:none;z-index:2;height:100px;position:absolute;bottom:0;left:0;right:0}#globe-container canvas{cursor:grab}.globe-caption{z-index:3;text-align:center;animation:1s .5s both fadeUp;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.globe-caption p{color:var(--text-muted);letter-spacing:.15em;text-transform:uppercase;font-size:.8rem;font-weight:500}.globe-caption .count{color:var(--purple-glow);margin-top:.15rem;font-family:JetBrains Mono,monospace;font-size:.85rem}#map-wrapper{background:var(--bg);width:100%;height:520px;position:relative;overflow:hidden}#globe-container,#osm-container{transition:opacity .8s,transform .8s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}#osm-container.osm-hidden{opacity:0;pointer-events:none}#osm-container.osm-visible{opacity:1;pointer-events:auto;transform:scale(1)}#globe-container.globe-hidden{pointer-events:none}#globe-container.globe-zooming-back{transition:opacity .8s,transform .8s cubic-bezier(.4,0,.2,1)}#osm-container.osm-zooming-out{opacity:0;pointer-events:none;transition:opacity .8s;transform:scale(1)}#osm-map{z-index:1;width:100%;height:100%}#osm-map .leaflet-control-zoom{border:none!important;box-shadow:0 4px 20px #0006!important}#osm-map .leaflet-control-zoom a{background:var(--bg-raised)!important;color:var(--text)!important;border:1px solid var(--border-subtle)!important;width:32px!important;height:32px!important;font-size:16px!important;line-height:32px!important}#osm-map .leaflet-control-zoom a:hover{background:var(--bg-card)!important;color:var(--purple-glow)!important}#osm-map .leaflet-control-attribution{backdrop-filter:blur(6px);color:var(--text-muted)!important;background:#06060bb3!important;font-size:.65rem!important}#osm-map .leaflet-control-attribution a{color:var(--text-dim)!important}.osm-back-btn{z-index:1000;background:var(--bg-raised);color:var(--text);border:1px solid var(--border);cursor:pointer;backdrop-filter:blur(12px);border-radius:10px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-family:Outfit,sans-serif;font-size:.82rem;font-weight:500;transition:all .25s;display:flex;position:absolute;top:1rem;right:1rem;box-shadow:0 4px 20px #0006}.osm-back-btn:hover{background:var(--purple-ember);border-color:var(--purple);color:var(--purple-glow)}.leaflet-popup-content-wrapper{background:var(--bg-raised)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:12px!important;padding:0!important;box-shadow:0 8px 30px #00000080,0 0 30px #9333ea1a!important}.leaflet-popup-content{margin:0!important;font-family:Outfit,sans-serif!important}.leaflet-popup-tip{background:var(--bg-raised)!important;border:1px solid var(--border)!important;box-shadow:none!important}.leaflet-popup-close-button{justify-content:center;align-items:center;color:var(--text-dim)!important;width:28px!important;height:28px!important;padding:0!important;font-size:18px!important;display:flex!important}.leaflet-popup-close-button:hover{color:var(--purple-glow)!important}.map-popup{min-width:200px;padding:1rem 1.2rem}.map-popup h3{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.3rem;font-size:1rem;font-weight:600;overflow:hidden}.map-popup .map-popup-cat{text-transform:uppercase;letter-spacing:.06em;color:var(--purple-glow);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.7rem}.map-popup .map-popup-addr{color:var(--text-dim);margin-bottom:.6rem;font-size:.82rem;line-height:1.4}.map-popup .map-popup-link{color:var(--purple-glow);cursor:pointer;align-items:center;gap:.3rem;font-size:.8rem;font-weight:500;display:inline-flex}.map-popup .map-popup-link:hover{color:var(--text-bright)}.pivx-marker{background:var(--purple-glow);cursor:pointer;border:2px solid #ffffff40;border-radius:50%;transition:transform .2s,box-shadow .2s;position:relative;overflow:visible;box-shadow:0 0 16px #a855f799,0 0 40px #a855f733;width:18px!important;height:18px!important}.pivx-marker:hover{transform:scale(1.3);box-shadow:0 0 20px #a855f7cc,0 0 50px #a855f74d}.pivx-marker-active{border-color:#fff;transform:scale(1.4);box-shadow:0 0 24px #a855f7,0 0 60px #a855f766}.pivx-marker-ring{border:1.5px solid var(--purple-glow);pointer-events:none;border-radius:50%;animation:2.5s ease-out infinite marker-pulse;position:absolute;inset:-9px}@keyframes marker-pulse{0%{opacity:.6;transform:scale(.5)}to{opacity:0;transform:scale(2)}}.section-divider{align-items:center;gap:1rem;max-width:1260px;margin:0 auto;padding:2rem 2rem .75rem;display:flex}.section-divider h2{letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;font-size:.75rem;font-weight:600}.section-divider:after{content:"";background:linear-gradient(90deg, var(--border), transparent);flex:1;height:1px}.controls{flex-wrap:wrap;align-items:center;gap:.5rem;max-width:1260px;margin:0 auto;padding:.5rem 2rem 1.25rem;display:flex}.controls input,.controls select{background:var(--bg-input);color:var(--text);border:1px solid var(--border-subtle);border-radius:var(--radius);backdrop-filter:blur(10px);outline:none;padding:.55rem .85rem;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:400;transition:all .25s}.controls input:focus,.controls select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9333ea1a}.controls input::placeholder{color:var(--text-muted)}.controls select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237c78a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .7rem center;background-repeat:no-repeat;padding-right:2rem}.controls input[type=search]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%234a4670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");background-position:.85rem;background-repeat:no-repeat;flex:1;min-width:220px;padding-left:2.4rem}.directory{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:.75rem;max-width:1260px;margin:0 auto 4rem;padding:0 2rem;display:grid}.card{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;padding:1.35rem;transition:all .3s cubic-bezier(.4,0,.2,1);animation:.5s both cardIn;position:relative;overflow:hidden}.card:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#ffffff0f,#0000);height:1px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.card:hover{border-color:#9333ea40;transform:translateY(-3px);box-shadow:0 8px 30px #0000004d,0 0 40px #9333ea0f}.card:hover:before{opacity:1}.card h3{color:var(--text-bright);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.4rem;font-size:1.05rem;font-weight:600;overflow:hidden}.card .meta{flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem;display:flex}.badge{text-transform:uppercase;letter-spacing:.06em;border-radius:6px;align-items:center;padding:.2rem .55rem;font-family:JetBrains Mono,monospace;font-size:.65rem;font-weight:600;display:inline-flex}.badge-category{background:var(--purple-ember);color:var(--purple-glow)}.badge-type{color:var(--text-dim);border:1px solid var(--border-subtle);background:#ffffff0a}.badge-custodian-non-custodial{background:var(--green-dim);color:var(--green)}.badge-custodian-partial{background:var(--amber-dim);color:var(--amber)}.badge-custodian-full{background:var(--red-dim);color:#f87171}.star-rating{color:var(--amber);align-items:center;gap:.3rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:500;display:inline-flex}.stars{line-height:1;display:inline-flex;position:relative}.stars-empty,.stars-filled{gap:1px;display:inline-flex}.stars-empty{color:var(--text-muted);opacity:.3}.stars-filled{color:var(--amber);white-space:nowrap;position:absolute;top:0;left:0;overflow:hidden}.star-icon{flex-shrink:0;width:14px;height:14px}.star-rating .score-text{color:var(--text-dim);margin-left:.15rem;font-size:.7rem}.card .star-rating{margin-left:auto}.modal-body .star-rating{margin-bottom:1.25rem}.pending-item .star-rating{margin-top:.35rem}.card .desc{color:var(--text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.6rem;font-size:.88rem;line-height:1.55;display:-webkit-box;overflow:hidden}.card .card-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.55rem;display:flex}.card .card-location{color:var(--text-muted);align-items:center;gap:.3rem;font-size:.78rem;display:flex}.card .card-location svg{opacity:.5;width:12px;height:12px}.card .card-arrow{background:var(--purple-mist);border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.card:hover .card-arrow{background:var(--purple)}.card .card-arrow svg{width:12px;height:12px;color:var(--purple-glow);transition:color .2s}.card:hover .card-arrow svg{color:#fff}.empty-state{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:4rem 1rem}.empty-state p{font-size:.95rem}.card:first-child{animation-delay:0s}.card:nth-child(2){animation-delay:50ms}.card:nth-child(3){animation-delay:.1s}.card:nth-child(4){animation-delay:.15s}.card:nth-child(5){animation-delay:.2s}.card:nth-child(6){animation-delay:.25s}.card:nth-child(n+7){animation-delay:.3s}.modal-overlay{backdrop-filter:blur(10px);z-index:1000;background:#0303068c;justify-content:center;align-items:center;padding:2rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-overlay.closing{animation:.25s forwards fadeOut}.modal{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:580px;max-height:85vh;animation:.35s cubic-bezier(.16,1,.3,1) modalIn;position:relative;overflow-y:auto}.modal-overlay.closing .modal{animation:.25s cubic-bezier(.4,0,1,1) forwards modalOut}.modal-glow{border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none;background:linear-gradient(#9333ea14,#0000);height:120px;position:absolute;top:0;left:0;right:0}.modal-close{border:1px solid var(--border-subtle);background:var(--bg-glass);width:32px;height:32px;color:var(--text-dim);cursor:pointer;z-index:2;backdrop-filter:blur(8px);border-radius:8px;justify-content:center;align-items:center;font-size:1.1rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.modal-close:hover{border-color:var(--purple);color:var(--text-bright);background:var(--purple-mist)}.modal-body{z-index:1;padding:2rem;position:relative}.modal-body h2{color:var(--text-bright);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.6rem;padding-right:2.5rem;font-size:1.5rem;font-weight:700;overflow:hidden}.modal-body .meta{flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;display:flex}.modal-body .description{color:var(--text);margin-bottom:1.5rem;font-size:.95rem;line-height:1.7}.detail-grid{gap:0;display:grid}.detail-row{border-top:1px solid var(--border-subtle);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.detail-row .detail-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);flex-shrink:0;width:110px;padding-top:.1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.detail-row .detail-value{color:var(--text);word-break:break-word;flex:1;font-size:.9rem}.detail-row .detail-value a{color:var(--purple-glow)}.detail-row .detail-value a:hover{text-decoration:underline}.modal-map{border-radius:var(--radius);border:1px solid var(--border-subtle);background:var(--bg-glass);justify-content:center;align-items:center;height:200px;margin-top:1.25rem;display:flex;overflow:hidden}.modal-map iframe{filter:grayscale(.5)invert(.92)hue-rotate(180deg)brightness(.7)contrast(1.1);border:none;width:100%;height:100%}.form-page{max-width:600px;margin:0 auto;padding:3rem 2rem 4rem;animation:.5s fadeUp}.form-header{margin-bottom:2rem}.form-header h2{color:var(--text-bright);letter-spacing:-.02em;margin-bottom:.4rem;font-size:1.6rem;font-weight:700}.form-header p{color:var(--text-dim);font-size:.9rem}.form-group{margin-bottom:1.1rem}.form-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg-input);width:100%;color:var(--text);border:1px solid var(--border-subtle);border-radius:var(--radius);outline:none;padding:.7rem .9rem;font-family:Outfit,sans-serif;font-size:.9rem;transition:all .25s}.form-group textarea{resize:vertical;min-height:90px;line-height:1.6}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9333ea1a}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237c78a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .8rem center;background-repeat:no-repeat;padding-right:2.2rem}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.address-search-row{gap:.5rem;display:flex;position:relative}.address-search-row input{flex:1}.address-results{z-index:50;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);max-height:220px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 30px #00000080,0 0 20px #9333ea14}.address-result-item{color:var(--text);cursor:pointer;border-bottom:1px solid var(--border-subtle);padding:.65rem .9rem;font-size:.82rem;line-height:1.4;transition:background .15s}.address-result-item:last-child{border-bottom:none}.address-result-item:hover{background:var(--purple-mist);color:var(--text-bright)}.coords-display{align-items:center;gap:.6rem;margin-bottom:.5rem;padding:.55rem 0;display:flex}.coords-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:600}.coords-value{color:var(--text-dim);font-family:JetBrains Mono,monospace;font-size:.82rem}.location-hint{color:var(--text-muted);margin-bottom:.5rem;font-size:.78rem;font-style:italic}#location-map{border-radius:var(--radius);border:1px solid var(--border-subtle);background:var(--bg-card);width:100%;height:280px;overflow:hidden}#location-map .leaflet-control-zoom{border:none!important;box-shadow:0 4px 20px #0006!important}#location-map .leaflet-control-zoom a{background:var(--bg-raised)!important;color:var(--text)!important;border:1px solid var(--border-subtle)!important;width:32px!important;height:32px!important;font-size:16px!important;line-height:32px!important}#location-map .leaflet-control-zoom a:hover{background:var(--bg-card)!important;color:var(--purple-glow)!important}#location-map .leaflet-control-attribution{backdrop-filter:blur(6px);color:var(--text-muted)!important;background:#06060bb3!important;font-size:.65rem!important}#location-map .leaflet-control-attribution a{color:var(--text-dim)!important}.preview-section{margin:1.5rem 0 1.25rem}.preview-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:600;display:block}.preview-wrapper{max-width:380px}.preview-card{animation:none}.socials-row{flex-wrap:wrap;gap:.35rem;display:flex}.social-pill{background:var(--purple-mist);border:1px solid var(--border-subtle);color:var(--text);white-space:nowrap;border-radius:20px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.social-pill:hover{background:var(--purple-ember);color:var(--text-bright);border-color:#9333ea4d;text-decoration:none}.social-pill svg{opacity:.8;flex-shrink:0}.social-pill:hover svg{opacity:1}.socials-inputs{flex-direction:column;gap:.4rem;display:flex}.social-input-row{align-items:center;gap:.4rem;display:flex}.social-input-row input{background:var(--bg-input);color:var(--text);border:1px solid var(--border-subtle);border-radius:var(--radius);outline:none;flex:1;padding:.55rem .8rem;font-family:Outfit,sans-serif;font-size:.85rem;transition:all .25s}.social-input-row input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9333ea1a}.social-input-row input::placeholder{color:var(--text-muted)}.social-remove-btn{justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;font-size:1.1rem;line-height:1;display:flex;padding:0!important}.toast{background:var(--bg-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);z-index:9000;opacity:0;pointer-events:none;max-width:480px;padding:.7rem 1.2rem;font-size:.82rem;line-height:1.4;transition:opacity .3s,transform .3s;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 8px 30px #00000080,0 0 20px #9333ea1a}.toast-visible{opacity:1;transform:translate(-50%)translateY(0)}.btn{border-radius:var(--radius);cursor:pointer;letter-spacing:.01em;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.6rem;font-family:Outfit,sans-serif;font-size:.88rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--purple), var(--purple-glow));color:#fff;box-shadow:0 2px 12px #9333ea40}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #9333ea66}.btn-green{background:var(--green);color:#fff}.btn-green:hover{transform:translateY(-1px);box-shadow:0 4px 15px #22c55e4d}.btn-red{background:var(--red);color:#fff}.btn-red:hover{transform:translateY(-1px);box-shadow:0 4px 15px #ef44444d}.btn-sm{border-radius:8px;padding:.4rem .85rem;font-size:.78rem}.btn-ghost{background:var(--purple-mist);color:var(--purple-glow);border:1px solid var(--border)}.btn-ghost:hover{background:var(--purple-ember);border-color:#9333ea4d}.alert{border-radius:var(--radius);align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.85rem 1.1rem;font-size:.88rem;display:flex}.alert-success{background:var(--green-dim);color:var(--green);border:1px solid #22c55e33}.alert-error{background:var(--red-dim);color:#f87171;border:1px solid #ef444433}.admin-page{max-width:900px;margin:0 auto;padding:2.5rem 2rem 4rem;animation:.5s fadeUp}.admin-page h2{color:var(--text-bright);letter-spacing:-.02em;margin-bottom:.25rem;font-size:1.5rem;font-weight:700}.admin-page .admin-sub{color:var(--text-dim);margin-bottom:1.5rem;font-size:.88rem}.admin-page h3{text-transform:uppercase;letter-spacing:.15em;color:var(--text-dim);border-bottom:1px solid var(--border-subtle);margin:2rem 0 .85rem;padding-bottom:.5rem;font-size:.75rem;font-weight:600}.admin-login{text-align:center;max-width:380px;margin:6rem auto;animation:.5s fadeUp}.admin-login h2{color:var(--text-bright);margin-bottom:.3rem;font-size:1.3rem;font-weight:700}.admin-login p{color:var(--text-dim);margin-bottom:1.25rem;font-size:.85rem}.admin-login input{background:var(--bg-input);width:100%;color:var(--text);border:1px solid var(--border-subtle);border-radius:var(--radius);text-align:center;letter-spacing:.1em;outline:none;margin-bottom:1rem;padding:.7rem .9rem;font-family:JetBrains Mono,monospace;font-size:.88rem;transition:all .25s}.admin-login input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9333ea1a}.pending-item{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.6rem;padding:1.1rem 1.25rem;transition:border-color .2s;display:flex}.pending-item:hover{border-color:var(--border)}.pending-item .info{flex:1}.pending-item .info h4{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem;font-size:.95rem;font-weight:600;overflow:hidden}.pending-item .info p{color:var(--text-dim);font-size:.82rem;line-height:1.5}.pending-item .actions{flex-shrink:0;gap:.4rem;display:flex}.cat-list{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.cat-tag{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text);border-radius:8px;align-items:center;gap:.5rem;padding:.35rem .7rem;font-size:.78rem;font-weight:500;display:flex}.cat-tag button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;line-height:1;transition:color .2s}.cat-tag button:hover{color:var(--red)}.admin-add-row{gap:.5rem;margin-top:.5rem;display:flex}.admin-add-row input{background:var(--bg-input);color:var(--text);border:1px solid var(--border-subtle);border-radius:8px;outline:none;padding:.45rem .7rem;font-family:Outfit,sans-serif;font-size:.82rem;transition:all .25s}.admin-add-row input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #9333ea1a}.globe-tooltip{background:var(--bg-raised);color:var(--text);pointer-events:none;border:1px solid #9333ea4d;border-radius:10px;max-width:220px;padding:.7rem .85rem;font-family:Outfit,sans-serif;font-size:.82rem;box-shadow:0 8px 30px #00000080}.globe-tooltip strong{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.15rem;font-weight:600;display:block;overflow:hidden}.globe-tooltip span{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-family:JetBrains Mono,monospace;font-size:.75rem}.footer{border-top:1px solid var(--border-subtle);max-width:1260px;color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 auto;padding:2rem;font-size:.78rem;display:flex}.footer a{color:var(--text-dim)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalOut{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.95)translateY(10px)}}@keyframes pulse-ring{0%{opacity:.4;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}@media (width<=640px){.header{flex-direction:column;gap:.6rem;height:auto;padding:.85rem 1rem}.header nav{justify-content:center;width:100%}#map-wrapper,#globe-container{height:360px}.controls{flex-direction:column;padding:.5rem 1rem 1rem}.controls input[type=search]{width:100%;min-width:0}.controls select{width:100%}.directory{grid-template-columns:1fr;padding:0 1rem}.form-page{padding:2rem 1rem 3rem}.form-row{grid-template-columns:1fr}.section-divider{padding:1.5rem 1rem .5rem}.modal{max-height:90vh;margin:1rem}.modal-body{padding:1.5rem}.footer{text-align:center;flex-direction:column;gap:.5rem}.star-icon{width:12px;height:12px}}.suggest-edit-link{border-top:1px solid var(--border-subtle);color:var(--text-muted);text-align:center;margin-top:1.25rem;padding-top:.75rem;font-size:.82rem;transition:color .2s;display:block}.suggest-edit-link:hover{color:var(--purple-glow)}.suggestion-diff{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius);margin-bottom:.6rem;padding:1.1rem 1.25rem;transition:border-color .2s}.suggestion-diff:hover{border-color:var(--border)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#9333ea33;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9333ea59}