*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}.lang-switch{display:inline-flex;position:relative}.lang-switch .lang-flag{font-size:16px;line-height:1}.lang-menu{z-index:1200;color:#16181d;background:#fff;border:1px solid #e2e6ee;border-radius:12px;min-width:175px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #00000038}.lang-opt{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.lang-opt:hover{background:#00000012}.lang-opt.active{font-weight:700}@media (prefers-color-scheme:dark){.lang-menu{color:#eef0f4;background:#181b21;border-color:#2a2f38}.lang-opt:hover{background:#ffffff17}}[data-theme=dark] .lang-menu{color:#eef0f4;background:#181b21;border-color:#2a2f38}[data-theme=dark] .lang-opt:hover{background:#ffffff17}[data-theme=light] .lang-menu{color:#16181d;background:#fff;border-color:#e2e6ee}[data-theme=light] .lang-opt:hover{background:#00000012}.gdpr-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.gdpr-lang{border:1px solid var(--border,#e2e6ee);color:var(--text,#111);font:inherit;cursor:pointer;background:0 0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.gdpr-lang:hover{background:var(--bg-hover,#0000000f)}.i18n-root{display:contents}.landing-lang{align-items:center;margin-left:auto;display:flex}.landing-lang .theme-toggle{cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:inline-flex}@media (width<=640px){.landing-lang{order:2;margin-left:0}}.nice-select-cat{align-items:center;gap:8px;display:inline-flex}.lang-tile-grid .pref-tile{gap:6px}.nice-select-dim{opacity:.6}.map-locate-fab.locating{opacity:.65}.map-locate-fab.locating svg{animation:1s ease-in-out infinite locate-pulse}@keyframes locate-pulse{0%,to{opacity:1}50%{opacity:.35}}img.img-failed{visibility:hidden}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out, opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out, -o-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{text-align:center;border-radius:15px;width:30px;height:30px;margin-top:5px;margin-left:5px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}html{font-size:16px}@media (width>=1500px){html{font-size:17.5px}}@media (width>=1800px){html{font-size:19px}}@media (width>=2200px){html{font-size:21px}}@media (width>=2800px){html{font-size:23px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#000;--bg-surface:#000;--detail-bg:#191a1b;--detail-card:#28282a;--detail-bar:#232325;--bg-elevated:#1c1c1e;--bg-hover:#2c2c2e;--border:#2e2e31;--border-soft:#1c1c1e;--text-1:#e6edf3;--text-2:#8b949e;--text-3:#484f58;--accent:#e5484d;--accent-dim:#e5484d26;--accent-glow:#e5484d59;--blue:#5b7cf5;--green:#16a34a;--star:#f5a623;--light:#e0913a;--radius:10px;--shadow:0 8px 32px #0000008c;--shadow-sm:0 2px 8px #00000059;--material:#2c2c2ed1;--transition:.18s ease;--detail-w:420px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fa;--bg-surface:#fff;--bg-elevated:#f0f2f5;--bg-hover:#eaeef2;--border:#d0d7de;--border-soft:#eaeef2;--text-1:#1f2328;--text-2:#636c76;--text-3:#adb5bd;--accent:#cf2338;--accent-dim:#cf23381a;--accent-glow:#cf233840;--blue:#0969da;--green:#1a7f37;--star:#c77d2e;--light:#b3701f;--shadow:0 8px 32px #0000001f;--shadow-sm:0 2px 8px #00000014;--material:#f9f9f9d6;--detail-bg:#fff;--detail-card:#f2f2f7;--detail-bar:#f7f7f8}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg);height:100%;color:var(--text-1);font-family:Inter,Segoe UI,system-ui,sans-serif;overflow:hidden}@media (prefers-color-scheme:dark){html.landing-mode,html.landing-mode body,html.landing-mode #root{background:#0a0406}}@media (prefers-color-scheme:light){html.landing-mode,html.landing-mode body,html.landing-mode #root{background:#f6f8fa}}@keyframes rainbow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.app{flex-direction:column;height:100dvh;display:flex}.app-header{background:var(--bg-surface);border-bottom:1px solid var(--border);height:54px;box-shadow:var(--shadow-sm);z-index:510;flex-shrink:0;align-items:center;gap:14px;padding:0 20px;display:flex;position:relative}.app-header h1{color:var(--accent);white-space:nowrap;letter-spacing:-.3px;font-size:1.05rem;font-weight:700}.place-count{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);white-space:nowrap;border-radius:20px;padding:2px 10px;font-size:.78rem;font-weight:600}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-spacer{flex:1}.settings-toggle{color:#fff;cursor:pointer;transition:all var(--transition);white-space:nowrap;background:#1c1c1e;border:0;border-radius:999px;align-items:center;gap:8px;padding:8px 24px;font-size:.9rem;font-weight:600;display:flex}.settings-toggle-icon{color:inherit;justify-content:center;align-items:center;display:inline-flex}.settings-toggle:hover,.settings-toggle.active{color:#fff;background:#000}[data-theme=light] .settings-toggle{color:#000;background:#e9e9ec}[data-theme=light] .settings-toggle:hover,[data-theme=light] .settings-toggle.active{color:#000;background:#fff}.theme-toggle{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;width:34px;height:34px;transition:all var(--transition);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.theme-toggle:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.app-body{flex:1;display:flex;overflow:hidden}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border);width:300px;transition:background var(--transition);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar h2{color:var(--text-3);text-transform:uppercase;letter-spacing:1.2px;border-bottom:1px solid var(--border-soft);flex-shrink:0;padding:14px 16px 10px;font-size:.72rem;font-weight:600}.sidebar-empty{color:var(--text-3);text-align:center;padding:32px 20px;font-size:.88rem;line-height:1.7}.sidebar-search{border-bottom:1px solid var(--border-soft);background:var(--bg-surface);flex-shrink:0;padding:10px 12px;position:relative}@media (width>=769px){.sidebar-search{display:none}}.sidebar-search-input{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);transition:border-color var(--transition);border-radius:8px;outline:none;padding:7px 28px 7px 10px;font-size:.83rem}.sidebar-search-input::placeholder{color:var(--text-3)}.sidebar-search-input:focus{border-color:var(--accent)}.sidebar-search-clear{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.05rem;line-height:1;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.sidebar-search-clear:hover{color:var(--accent)}.sidebar-date-range{border-bottom:1px solid var(--border-soft);flex-direction:column;gap:5px;padding:8px 12px;display:flex}.sidebar-date-row{align-items:center;gap:6px;display:flex}.sidebar-date-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.8px;flex-shrink:0;width:20px;font-size:.72rem;font-weight:600}.sidebar-date-input{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);transition:border-color var(--transition);color-scheme:inherit;border-radius:7px;outline:none;flex:1;padding:5px 8px;font-size:.8rem}.sidebar-date-input:focus{border-color:var(--accent)}.sidebar-date-clear{color:var(--accent);cursor:pointer;letter-spacing:.2px;background:0 0;border:none;align-self:flex-end;padding:2px 0;font-size:.75rem;font-weight:600}.sidebar-date-clear:hover{opacity:.75}.place-list{flex:1;list-style:none;overflow-y:auto}.place-list::-webkit-scrollbar{width:4px}.place-list::-webkit-scrollbar-track{background:0 0}.place-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.place-item{cursor:pointer;border-bottom:1px solid var(--border-soft);transition:background var(--transition);align-items:center;gap:10px;padding:11px 16px 11px 20px;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.place-item:hover{background:var(--bg-hover)}}.place-item.active{background:var(--accent-dim);border-left:3px solid var(--accent);padding-left:17px}.place-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:2px}.place-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.place-info strong{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;overflow:hidden}.place-info span{color:var(--blue);font-size:.75rem;font-weight:500}.place-info small{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.73rem;overflow:hidden}.place-note{font-style:italic;color:var(--text-2)!important}.place-has-photo{color:var(--blue)!important}.place-date{color:var(--text-3)!important}.place-actions{opacity:0;transition:opacity var(--transition);flex-direction:column;flex-shrink:0;gap:3px;display:flex}@media (hover:hover) and (pointer:fine){.place-item:hover .place-actions{opacity:1}}@media (hover:none),(pointer:coarse){.place-actions{opacity:1!important}}.btn-edit{cursor:pointer;transition:background var(--transition);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.85rem}.btn-edit:hover{background:var(--bg-elevated)}.btn-delete{color:var(--text-3);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:1.1rem;line-height:1}.btn-delete:hover{color:var(--accent);background:var(--accent-dim)}.map-area{flex:1;min-width:0;position:relative;overflow:hidden}.map-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.leaflet-map{width:100%;height:100%}.map-dark .leaflet-tile-pane,.map-light .leaflet-tile-pane{filter:none}.map-dark[data-tile=carto] .leaflet-tile-pane{filter:brightness(1.95)contrast(1.15)}.map-bottom-controls{z-index:1000;flex-direction:column;align-items:stretch;gap:6px;display:flex;position:absolute;bottom:32px;left:12px}.map-locate-fab{background:var(--bg-surface);border:1px solid var(--border);width:54px;height:54px;color:var(--accent);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1001;transition:right .22s ease, background var(--transition), color var(--transition), border-color var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:32px;right:16px;box-shadow:0 4px 16px #00000059}.map-locate-fab svg{width:26px;height:26px;display:block}.map-locate-fab:active{transform:scale(.92)}.map-locate-fab{color:var(--accent);background:var(--material);border-color:color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:0 4px 18px #00000059}@media (hover:hover) and (pointer:fine){.map-locate-fab:hover{background:var(--accent);color:#fff;border-color:var(--accent)}}.map-area:has(.place-detail) .map-locate-fab{right:calc(var(--detail-w) + 16px)}.map-layer-btn{background:var(--material);color:var(--text-1);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);transition:all var(--transition);white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:.82rem;font-weight:500;display:flex}.map-layer-btn:hover,.map-layer-btn.open{border-color:var(--accent);color:var(--accent)}.map-layer-menu{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;min-width:150px;animation:.12s fadeIn;overflow:hidden}.map-layer-option{cursor:pointer;width:100%;color:var(--text-1);text-align:left;transition:background var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:9px 14px;font-size:.85rem;display:flex}.map-layer-option:hover{background:var(--bg-elevated)}.map-layer-option.active{background:var(--accent-dim);color:var(--accent)}.map-layer-check{color:var(--accent);margin-left:auto;font-size:.8rem;font-weight:700}.map-dark .leaflet-marker-pane,.map-dark .leaflet-popup-pane,.map-dark .leaflet-shadow-pane,.map-dark .leaflet-overlay-pane,.map-dark-generic .leaflet-marker-pane,.map-dark-generic .leaflet-popup-pane,.map-dark-generic .leaflet-shadow-pane,.map-dark-generic .leaflet-overlay-pane{filter:none}.map-top-controls{z-index:1000;align-items:center;gap:8px;width:75%;max-width:720px;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1),max-width .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.map-search-btn{z-index:1000;background:var(--bg-surface);border:1px solid var(--border);color:var(--text-1);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition);box-shadow:var(--shadow-sm);white-space:nowrap;border-radius:24px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 24px;font-size:.9rem;font-weight:600;display:flex;position:static}.map-search-btn:hover,.map-search-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 20px var(--accent-glow)}.map-search-field{background:var(--bg-surface);border:1.5px solid var(--accent);min-width:0;min-height:40px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:text;border-radius:24px;flex:1;align-items:center;gap:0;padding:7px 10px 7px 18px;transition:border-color .22s,box-shadow .22s,padding .24s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.map-search-field:not(.is-open){cursor:pointer}.map-search-field:not(.is-open):hover{border-color:var(--accent);box-shadow:0 4px 20px var(--accent-glow)}.map-search-field.is-open{border-color:var(--accent);box-shadow:0 4px 24px var(--accent-glow)}.map-search-field-icon{color:var(--text-2);flex-shrink:0;margin-right:8px;transition:color .22s}.map-search-field:not(.is-open) .map-search-field-icon{color:var(--text-1)}.map-search-field-input{min-width:0;color:var(--text-1);background:0 0;border:0;outline:none;flex:auto;font-size:16px;font-weight:500}.map-search-field-input::placeholder{color:var(--text-3);font-weight:400}.map-search-field:not(.is-open) .map-search-field-input{pointer-events:none}.map-search-field:not(.is-open) .map-search-field-input::placeholder{color:var(--text-2)}.map-search-field-input:focus,.map-search-field-input:focus-visible{outline:none!important}.map-search-field-clear{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:8px;padding:5px;transition:opacity .18s,transform .18s;display:inline-flex}.map-search-field-clear:hover{color:var(--text-1);background:color-mix(in srgb, var(--text-1) 10%, transparent)}.map-search-field:not(.is-open) .map-search-field-clear{opacity:0;pointer-events:none;width:0;margin:0;padding:0;transform:scale(.6)}.map-add-btn{background:var(--bg-surface);border:1.5px solid var(--accent);width:40px;height:40px;color:var(--text-1);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);transition:all var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.35rem;line-height:1;display:flex}.map-add-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 20px var(--accent-glow)}@media (width<=768px){.map-add-btn.is-collapsed{opacity:0;pointer-events:none;border-width:0;width:0;margin-left:-8px;padding:0;overflow:hidden;transform:scale(.6)}}.map-add-overlay{z-index:2500;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;justify-content:center;align-items:flex-start;padding:15vh 16px 16px;display:flex;position:fixed;inset:0}.map-add-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:460px;padding:20px;position:relative;box-shadow:0 20px 60px #00000080}.map-add-title{color:var(--text-1);margin:0 0 14px;font-size:1.05rem;font-weight:700}.map-add-close{background:var(--bg-elevated);border:1px solid var(--border);width:30px;height:30px;color:var(--text-2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;top:12px;right:12px}.map-add-close:hover{color:var(--text-1);border-color:var(--accent)}.map-add-manual-link{cursor:pointer;width:100%;color:var(--accent);font:inherit;text-align:center;background:0 0;border:none;margin:8px 0 0;padding:3px;font-size:.78rem;font-weight:500;display:block}.map-add-manual-link:hover{text-decoration:underline}.map-add-hint{color:var(--text-3);text-align:center;margin:12px 0 0;font-size:.78rem}.map-confirm-overlay{z-index:2600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.map-confirm-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:380px;padding:18px;box-shadow:0 20px 60px #00000080}.map-confirm-title{color:var(--text-1);margin:0 0 12px;font-size:1.05rem;font-weight:700}.map-confirm-map{border:1px solid var(--border);border-radius:12px;width:100%;height:200px;overflow:hidden}.map-confirm-map .leaflet-container{background:var(--bg-elevated);width:100%;height:100%}.map-confirm-hint{color:var(--text-3);text-align:center;margin:8px 0 0;font-size:.74rem}.map-confirm-addr{color:var(--text-2);min-height:1.2em;margin:6px 2px 14px;font-size:.82rem;line-height:1.4}.map-confirm-actions{gap:10px;display:flex}.map-confirm-actions button{flex:1}@keyframes mapSearchFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.map-search-field{position:relative}.map-search-panel{z-index:1001;animation:.22s mapSearchFadeIn;position:absolute;top:calc(100% + 8px);left:0;right:0}.search-bar{width:100%;position:relative}.search-bar-icon{color:var(--text-3);pointer-events:none;z-index:1;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--text-1);box-shadow:var(--shadow);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:11px 16px 11px 40px;font-size:.92rem}.search-input::placeholder{color:var(--text-3)}.search-input:focus{border-color:var(--accent);box-shadow:0 4px 24px var(--accent-glow)}.search-loading{background:var(--bg-surface);color:var(--text-3);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);border-top:none;padding:8px 16px;font-size:.83rem}.search-results{background:var(--bg-surface);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);max-height:240px;box-shadow:var(--shadow);border-top:none;list-style:none;overflow-y:auto}.search-results li{cursor:pointer;color:var(--text-2);border-bottom:1px solid var(--border-soft);transition:background var(--transition);padding:10px 16px;font-size:.83rem}.search-results li:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.search-results li:hover{background:var(--bg-hover);color:var(--text-1)}}.place-search{flex:1;max-width:400px;position:relative}.place-search-input-wrap{background:var(--bg-elevated);border:1px solid var(--border);transition:border-color var(--transition);border-radius:8px;align-items:center;gap:6px;padding:0 10px;display:flex}.place-search-input-wrap:focus-within{border-color:var(--accent)}.place-search-icon{opacity:.5;font-size:.8rem}.place-search-input{color:var(--text-1);background:0 0;border:none;outline:none;flex:1;padding:8px 0;font-size:.83rem}.place-search-input::placeholder{color:var(--text-3)}.place-search-clear{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.05rem;line-height:1}.place-search-clear:hover{color:var(--accent)}.place-search-results{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);z-index:9999;box-shadow:var(--shadow);list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.place-search-results li{cursor:pointer;border-bottom:1px solid var(--border-soft);transition:background var(--transition);flex-direction:column;gap:2px;padding:10px 14px;display:flex}.place-search-results li:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.place-search-results li:hover{background:var(--bg-hover)}}.place-search-results li strong{color:var(--text-1);font-size:.88rem;font-weight:600}.place-search-results li span{color:var(--blue);font-size:.75rem}.place-search-results li small{color:var(--text-3);font-size:.73rem}.place-search-empty{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2);z-index:9999;box-shadow:var(--shadow);padding:14px 16px;font-size:.85rem;position:absolute;top:calc(100% + 6px);left:0;right:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{--bg-elevated:#2c2c2e;--bg-surface:#1c1c1e;--border:#3a3a3c;border:1px solid var(--border);width:420px;max-width:95vw;max-height:90dvh;box-shadow:var(--shadow);transition:background var(--transition);background:#1c1c1e;border-radius:14px;padding:28px;position:relative;overflow:hidden auto}[data-theme=light] .modal{--bg-elevated:#fff;--bg-surface:#f2f2f7;--border:#e4e4ea;background:#f2f2f7}.modal-close-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;width:32px;height:32px;transition:all var(--transition);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;top:14px;right:14px}.modal-close-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.modal h2{color:var(--accent);margin-bottom:4px;font-size:1.15rem;font-weight:700}.modal-coords{color:var(--text-3);margin-bottom:20px;font-family:monospace;font-size:.75rem}.modal-place-name{color:var(--text-1);margin-bottom:2px;font-size:1rem;font-weight:700}.modal form{flex-direction:column;gap:10px;display:flex}.modal label{color:var(--text-3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:-6px;font-size:.72rem;font-weight:600}.modal input,.modal select,.modal textarea{background:var(--bg-elevated);border:1px solid var(--border);width:100%;min-width:0;color:var(--text-1);transition:border-color var(--transition);resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;padding:9px 12px;font-family:inherit;font-size:.9rem}.modal input[type=date]{appearance:none;box-sizing:border-box;min-width:0;max-width:100%}.modal input::placeholder,.modal textarea::placeholder{color:var(--text-3)}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--accent)}.modal select option{background:var(--bg-elevated)}.modal-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.modal-actions .btn-save,.modal-actions .btn-cancel,.modal-actions .btn-delete-place{min-width:0;padding-left:14px;padding-right:14px;font-size:.84rem}.modal-actions-right{flex-shrink:1;gap:8px;min-width:0;margin-left:auto;display:flex}.btn-delete-place{border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;border-radius:8px;padding:8px 14px;font-size:.85rem}.btn-delete-place:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.delete-confirm-overlay{z-index:9999;background:#000000a6;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.delete-confirm-dialog{--bg-elevated:#2c2c2e;--border:#3a3a3c;border:1px solid var(--border);width:90%;max-width:360px;box-shadow:var(--shadow);text-align:center;background:#1c1c1e;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:32px 28px 24px;animation:.18s slideUp;display:flex}[data-theme=light] .delete-confirm-dialog{--bg-elevated:#fff;--border:#e4e4ea;background:#f2f2f7}.delete-confirm-icon{margin-bottom:4px;font-size:2.4rem;line-height:1}.delete-confirm-title{color:var(--text-1);font-size:1.15rem;font-weight:700}.delete-confirm-text{color:var(--text-2);font-size:.9rem;line-height:1.5}.delete-confirm-text strong{color:var(--text-1)}.duplicate-confirm-subline{color:var(--text-3,var(--text-2));opacity:.8;margin:2px 0 10px;font-size:.8rem}.delete-confirm-actions{gap:10px;width:100%;margin-top:8px;display:flex}.delete-confirm-actions .btn-cancel,.delete-confirm-actions .btn-delete-confirm{flex:1}.dup-confirm-actions{flex-direction:column-reverse;align-items:stretch;gap:8px}.dup-confirm-actions .btn-cancel,.dup-confirm-actions .btn-save{box-sizing:border-box;flex:none;width:100%}.btn-delete-confirm{background:var(--accent);border:1px solid var(--accent);color:#fff;cursor:pointer;transition:all var(--transition);border-radius:8px;padding:10px 18px;font-size:.9rem;font-weight:700}.btn-delete-confirm:hover{opacity:.85}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.btn-cancel{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);white-space:nowrap;border-radius:8px;padding:8px 18px;font-size:.88rem;font-weight:500}.btn-cancel:hover{border-color:var(--text-2);color:var(--text-1)}.btn-save{background:var(--accent);color:#fff;cursor:pointer;transition:all var(--transition);box-shadow:0 2px 8px var(--accent-glow);white-space:nowrap;border:none;border-radius:8px;padding:8px 22px;font-size:.88rem;font-weight:600}.btn-save:hover{filter:brightness(1.1);box-shadow:0 4px 16px var(--accent-glow)}.photo-upload{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;color:var(--text-3);transition:all var(--transition);justify-content:center;align-items:center;min-height:80px;padding:16px;font-size:.88rem;display:flex}.photo-upload:hover{border-color:var(--accent);color:var(--text-2);background:var(--accent-dim)}.photo-preview{object-fit:cover;border-radius:8px;max-width:100%;max-height:200px}.btn-remove-photo{border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);background:0 0;border-radius:6px;padding:4px 12px;font-size:.78rem}.btn-remove-photo:hover{border-color:var(--accent);color:var(--accent)}.leaflet-popup-content-wrapper{background:var(--bg-surface)!important;color:var(--text-1)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow)!important;border-radius:12px!important}.leaflet-popup-tip{background:var(--bg-surface)!important}.leaflet-popup-content{color:var(--text-1)!important;margin:12px 16px!important;font-family:inherit!important;font-size:.88rem!important;line-height:1.6!important}.leaflet-popup-content strong{color:var(--accent);font-size:.95rem}.leaflet-popup-close-button{color:var(--text-3)!important}.leaflet-popup-close-button:hover{color:var(--accent)!important}.leaflet-control-zoom a{transition:all var(--transition);background:var(--bg-surface)!important;color:var(--text-1)!important;border-color:var(--border)!important}.leaflet-control-zoom a:hover{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.leaflet-control-attribution{opacity:.8;background:var(--bg-surface)!important;color:var(--text-3)!important;font-size:.7rem!important}.leaflet-control-attribution a{color:var(--text-3)!important}.place-detail,.list-detail-modal{--bg-elevated:var(--detail-card);--bg-hover:color-mix(in srgb, var(--detail-card) 70%, var(--text-1) 8%);--bg-surface:var(--detail-bg)}.place-detail{width:var(--detail-w);background:var(--detail-bg);border-left:1px solid var(--border);z-index:1000;flex-direction:column;animation:.22s slideInRight;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-6px 0 32px #00000073}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.place-detail-close{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;width:36px;height:36px;transition:all var(--transition);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute;top:12px;right:12px}.place-detail-close:hover{background:var(--accent);border-color:var(--accent);color:#fff}.place-detail-hall-back{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;width:36px;height:36px;transition:background-color var(--transition), border-color var(--transition), color var(--transition);z-index:2;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;left:12px}.place-detail-hall-back:hover{background:var(--accent);border-color:var(--accent);color:#fff}.hall-back-row .hall-back-btn{display:none}.place-detail-share{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;width:36px;height:36px;transition:all var(--transition);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute;top:12px;right:56px}.place-detail-share:hover{background:var(--accent);border-color:var(--accent);color:#fff}.share-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.share-modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:340px;padding:24px 20px 20px;display:flex;position:relative;box-shadow:0 20px 60px #0009}.share-close{border:1px solid var(--border);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;top:12px;right:12px}.share-close:hover{background:var(--bg-hover)}.share-header{align-items:center;gap:12px;padding-right:32px;display:flex}.share-icon{flex-shrink:0;font-size:1.6rem}.share-title{text-transform:uppercase;letter-spacing:.7px;color:var(--text-3);font-size:.72rem;font-weight:600}.share-place-name{color:var(--text-1);margin-top:2px;font-size:1rem;font-weight:700}.share-qr-wrap{justify-content:center;display:flex}.share-qr{border:1px solid var(--border);border-radius:10px}.share-url-row{gap:8px;display:flex}.share-url-input{border:1px solid var(--border);background:var(--bg-surface);min-width:0;color:var(--text-2);cursor:text;border-radius:8px;outline:none;flex:1;padding:7px 10px;font-family:monospace;font-size:.78rem}.share-copy-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;flex-shrink:0;padding:7px 12px;font-size:.8rem;font-weight:600;transition:all .15s}.share-copy-btn:hover{background:var(--accent);color:#fff}.share-copy-btn.copied{color:#fff;background:#22c55e;border-color:#22c55e}.share-hint{color:var(--text-3);text-align:center;margin:0;font-size:.72rem}.place-detail-photo-wrap{background:var(--bg-elevated);flex-shrink:0;width:100%;height:240px;position:relative;overflow:hidden}.place-detail-photo{object-fit:cover;width:100%;height:100%;display:block}.place-detail-no-photo{width:100%;height:100%;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:.85rem;display:flex}.place-detail-no-photo-icon{opacity:.35;filter:grayscale();font-size:3rem}.place-detail-body{flex-direction:column;flex:1;gap:8px;min-height:0;padding:14px 18px 10px;display:flex;overflow-y:auto}.place-detail-category-badge{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);border-radius:20px;align-items:center;gap:5px;width:fit-content;padding:3px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.cat-badge{background:color-mix(in srgb, var(--cat,var(--accent)) 20%, transparent);color:color-mix(in srgb, var(--cat,var(--accent)) 72%, #fff);border-color:#0000}[data-theme=light] .cat-badge{--cat-dark:color-mix(in srgb, var(--cat,var(--accent)) 55%, #181818);color:var(--cat-dark);background:color-mix(in srgb, var(--cat-dark) 14%, #fff);border-color:#0000}.elec-detail-dist{margin-left:4px}.elec-dist-ic{color:var(--accent);vertical-align:middle;position:relative;top:-1px}[data-theme=dark] .elec-dist-ic{color:#fff}.cat-svg-icon{vertical-align:middle;flex:none;align-self:center;display:inline-block}.place-detail-name{color:var(--text-1);font-size:1.4rem;font-weight:700;line-height:1.25}.hall-pills{flex-wrap:wrap;gap:6px;margin:9px 0 2px;display:flex}.hall-pill{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);white-space:nowrap;border-radius:980px;padding:5px 13px;font-size:.8rem;font-weight:600}.hall-pill.active{background:var(--blue);border-color:var(--blue);color:#fff}.hall-pill-add{color:var(--blue);border-style:dashed}@media (hover:hover) and (pointer:fine){.hall-pill:hover{border-color:var(--blue);color:var(--blue)}.hall-pill.active:hover{color:#fff}}.hall-list-section{margin-top:14px}.hall-list-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-3,#6b7589);margin-bottom:8px;font-size:.7rem;font-weight:700}.hall-list{flex-direction:column;gap:8px;display:flex}.hall-list-card{background:var(--bg-elevated,#0d1117);border:1px solid var(--border,#21262d);cursor:pointer;text-align:left;transition:all var(--transition,.15s);border-radius:10px;align-items:center;gap:12px;width:100%;padding:0;display:flex;overflow:hidden}@media (hover:hover) and (pointer:fine){.hall-list-card:hover{border-color:var(--blue,#2997ff);background:#58a6ff0f}}.hall-list-card-photo{background:var(--bg-surface,#0d1117);flex-shrink:0;justify-content:center;align-items:center;width:80px;height:60px;display:flex;overflow:hidden}.hall-list-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.hall-list-card-noimg{font-size:1.4rem}.hall-list-card-info{flex-direction:column;flex:1;gap:3px;min-width:0;padding:10px 4px;display:flex}.hall-list-card-name{color:var(--text-1,#e6edf3);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.hall-list-card-tech{color:var(--text-3,#6b7589);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.hall-list-card-arrow{color:var(--text-3,#6b7589);flex-shrink:0;padding-right:12px;font-size:1.2rem}.hall-back-row{align-items:center;gap:8px;min-width:0;display:flex}.hall-back-btn{color:var(--blue,#2997ff);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;align-items:center;gap:4px;padding:4px 0;font-size:.8rem;font-weight:600;display:flex}.hall-place-subtitle{color:var(--text-3,#6b7589);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.78rem;overflow:hidden}.place-kebab-wrap{z-index:10;position:absolute;top:12px;right:100px}.place-detail-kebab{background:var(--bg-elevated);border:1px solid var(--border);width:36px;height:36px;color:var(--text-2);cursor:pointer;letter-spacing:2px;transition:all var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}@media (hover:hover) and (pointer:fine){.place-detail-kebab:hover{background:var(--blue);border-color:var(--blue);color:#fff}}.place-kebab-menu{background:var(--bg-surface,#0d1117);border:1px solid var(--border,#21262d);border-radius:10px;min-width:160px;position:absolute;top:38px;right:0;overflow:hidden;box-shadow:0 4px 20px #0006}.place-kebab-menu button{text-align:left;width:100%;color:var(--text-1,#e6edf3);cursor:pointer;background:0 0;border:none;padding:11px 16px;font-size:.875rem;display:block}.place-kebab-menu button+button{border-top:1px solid var(--border-soft,#161b22)}@media (hover:hover) and (pointer:fine){.place-kebab-menu button:hover{background:var(--bg-elevated,#0d1117)}}.place-kebab-menu-danger{color:var(--accent,#ff4d4d)!important}.hall-names-list{flex-direction:column;gap:8px;margin-bottom:4px;display:flex}.hall-name-row{align-items:center;gap:6px;display:flex}.hall-name-input{flex:1;min-width:0}.hall-order-btn{border:1px solid var(--border,#21262d);background:var(--bg-elevated,#0d1117);width:32px;height:32px;color:var(--text-2,#8b949e);cursor:pointer;border-radius:6px;flex-shrink:0;font-size:.9rem}.hall-order-btn:disabled{opacity:.35;cursor:not-allowed}.btn-detail-delete-hall{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border-radius:8px;flex:1;padding:9px 14px;font-size:.85rem;font-weight:500}.btn-detail-delete-hall:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.place-detail-address,.place-detail-date{color:var(--text-2);align-items:flex-start;gap:6px;font-size:.94rem;line-height:1.45;display:flex}.place-detail-address-link{text-align:left;width:100%;color:var(--blue);cursor:pointer;font:inherit;background:0 0;border:0;margin:0;padding:0;font-size:.94rem}.place-detail-address-link:hover{text-decoration:underline}.place-detail-web{color:var(--blue);word-break:break-all;font-size:.94rem;text-decoration:none}.place-detail-web:hover{text-decoration:underline}.detail-icon{width:20px;min-height:18px;color:var(--blue);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:.85rem;display:inline-flex}.place-detail-note{background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:var(--radius);margin-top:4px;padding:12px 14px}.place-detail-note-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-3);align-items:center;gap:6px;margin-bottom:6px;font-size:.68rem;font-weight:600;display:flex}.place-detail-note p{color:var(--text-1);white-space:pre-wrap;font-size:.88rem;line-height:1.6}.place-detail-no-note{color:var(--text-3);font-size:.82rem;font-style:italic}.place-visits-chip{color:var(--text-2);background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:20px;align-items:center;gap:4px;padding:2px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.place-version-banner{color:var(--text-2);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;display:flex}.place-version-banner-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.place-version-banner button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;font-weight:600;text-decoration:underline}.place-version-banner button.pv-delete-btn{color:#ff453a}.place-notes-list{flex-direction:column;gap:6px;margin-top:4px;display:flex}.place-note-card{background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:var(--radius);padding:10px 12px}.place-note-card p{color:var(--text-1);white-space:pre-wrap;font-size:.86rem;line-height:1.55}.place-note-meta{color:var(--text-2);margin-top:6px;font-size:.7rem}.place-versions-trigger{border:1.5px solid var(--accent);background:var(--accent-dim);width:100%;color:var(--text-1);cursor:pointer;text-align:left;transition:var(--transition,all .15s ease);border-radius:10px;align-items:center;gap:7px;margin:8px 0 6px;padding:7px 12px;font-size:13px;display:flex}.place-versions-trigger:hover{filter:brightness(1.06)}.pvt-ico{flex:none;font-size:15px}.pvt-label{color:var(--accent);flex:none;font-size:12px;font-weight:600}.pvt-value{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.pvt-of{color:var(--text-2);flex:none;font-size:12px}.pvt-caret{color:var(--accent);flex:none;margin-left:auto;font-size:14px}.place-detail-rating-overlay{z-index:2;color:#fff;-webkit-backdrop-filter:blur(4px);background:#0009;border-radius:999px;align-items:center;gap:3px;padding:4px 9px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;top:10px;right:10px}.place-detail-rating-overlay .rating-star{color:#ffc83d}.pv-popup-overlay{z-index:3000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pv-popup{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius,14px);flex-direction:column;width:100%;max-width:380px;max-height:70dvh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0006}.pv-popup-header{border-bottom:1px solid var(--border);color:var(--text-1);justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;display:flex}.pv-popup-close{color:var(--text-2);cursor:pointer;background:0 0;border:none;font-size:16px;line-height:1}.pv-popup-list{flex-direction:column;gap:6px;padding:8px;display:flex;overflow-y:auto}.pv-popup-item{text-align:left;border:1px solid var(--border);color:var(--text-1);cursor:pointer;transition:var(--transition,all .15s ease);background:0 0;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.pv-popup-item:hover{background:var(--bg-hover)}.pv-popup-item.active{border-color:var(--accent);background:var(--accent-dim)}.pv-popup-item-main{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.pv-popup-item-avg{color:var(--accent);font-size:12px;font-weight:500}.pv-popup-item-sub{color:var(--text-2);font-size:12px}.place-versions{flex-direction:column;gap:6px;margin-top:4px;display:flex}.place-version-item{text-align:left;background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:var(--radius);cursor:pointer;width:100%;transition:all var(--transition);flex-direction:column;gap:2px;padding:9px 12px;display:flex}.place-version-item:hover{border-color:var(--border);background:var(--bg-hover)}.place-version-item.active{border-color:var(--accent-glow);background:var(--accent-dim)}.place-version-main{color:var(--text-1);align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.place-version-avg{color:var(--text-2);font-size:.75rem;font-weight:600}.place-version-sub{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.place-version-note{color:var(--text-3);font-style:italic}.btn-add-version{background:color-mix(in srgb, var(--green) 15%, transparent);border:1px solid color-mix(in srgb, var(--green) 40%, transparent);width:100%;color:var(--green);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border-radius:12px;padding:13px 14px;font-size:.9rem;font-weight:600}.btn-add-version:hover{background:color-mix(in srgb, var(--green) 26%, transparent)}.place-detail-actions{border-top:1px solid var(--border);background:var(--detail-bar);flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px 16px;display:flex}.place-detail-nav-row{position:relative}.place-detail-edit-delete-row{gap:8px;display:flex}.btn-detail-nav{background:color-mix(in srgb, var(--blue) 10%, transparent);border:1.5px solid var(--blue);width:100%;color:var(--blue);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border-radius:12px;flex:1;padding:13px 14px;font-size:.9rem;font-weight:500}.btn-detail-nav:hover{background:color-mix(in srgb, var(--blue) 18%, transparent)}.btn-detail-edit{background:var(--bg-elevated);border:1px solid var(--border);color:var(--accent);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border-radius:12px;flex:1;padding:13px 14px;font-size:.9rem;font-weight:500}.btn-detail-edit:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--bg-elevated))}.btn-detail-delete{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);border-radius:8px;flex:1;padding:9px 14px;font-size:.85rem;font-weight:500}.btn-detail-delete:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.btn-detail-delete.confirm{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 10px var(--accent-glow);font-weight:600}.add-place-panel{--bg-elevated:#2c2c2e;--bg-hover:#3a3a3c;--bg-surface:#1c1c1e;--border:#3a3a3c;width:var(--detail-w);border-left:1px solid var(--border);z-index:1000;background:#1c1c1e;flex-direction:column;animation:.22s slideInRight;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-6px 0 32px #00000073}[data-theme=light] .add-place-panel{--bg-elevated:#fff;--bg-hover:#f2f2f7;--bg-surface:#f2f2f7;--border:#e4e4ea;background:#f2f2f7}.add-place-panel-header{border-bottom:1px solid var(--border-soft);flex-shrink:0;padding:44px 20px 16px}.add-place-panel-header h2{color:var(--text-1);margin-bottom:4px;font-size:1.25rem;font-weight:700}.add-place-coords{color:var(--text-2);white-space:nowrap;flex-shrink:0;margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.add-place-section-label{color:var(--text-2);margin:2px 0 6px;font-size:.95rem;font-weight:600;display:block}.add-place-hint{color:var(--blue);opacity:.85;font-size:.76rem}.add-place-map-toggle{background:var(--bg-elevated);color:var(--blue);cursor:pointer;transition:background-color var(--transition);text-align:left;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;width:100%;padding:13px 16px;font-size:.95rem;font-weight:600;display:flex}.add-place-map-toggle-label{min-width:0}.add-place-map-toggle:hover,.add-place-map-toggle.open{background:var(--bg-hover)}.add-place-map-toggle-arrow{color:var(--text-2);flex-shrink:0;transition:transform .2s}.add-place-map-toggle-arrow.open{transform:rotate(180deg)}.add-place-minimap{border:1px solid var(--border);border-radius:10px;margin-top:8px;animation:.15s slideDown;overflow:hidden}.add-place-minimap.map-dark[data-tile=carto] .leaflet-tile-pane{filter:brightness(3.1)contrast(2.8)saturate(1.2)hue-rotate(200deg)}.add-place-minimap-hint{color:var(--text-3);background:var(--bg-elevated);text-align:center;padding:5px 8px;font-size:.72rem}.add-place-form{flex-direction:column;flex:1;gap:10px;padding:16px 20px 20px;display:flex}.add-place-form label{color:var(--text-2);text-transform:none;letter-spacing:0;margin-bottom:-2px;font-size:.95rem;font-weight:600}.add-place-form input,.add-place-form select,.add-place-form textarea{background:var(--bg-elevated);color:var(--text-1);transition:border-color var(--transition);resize:vertical;border:1px solid #0000;border-radius:14px;outline:none;width:100%;padding:13px 16px;font-family:inherit;font-size:.95rem}.add-place-form input[type=date]{appearance:none;box-sizing:border-box;min-width:0;max-width:100%}.add-place-form input::placeholder,.add-place-form textarea::placeholder{color:var(--text-3)}.add-place-form input:focus,.add-place-form select:focus,.add-place-form textarea:focus{border-color:var(--accent)}.add-place-form select option{background:var(--bg-elevated)}.add-place-form select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 24 24' fill='none' stroke='%239a9aa0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:34px}.restaurant-panel .star-rating-row{justify-content:flex-start;gap:4px}.restaurant-panel .star-label:empty{display:none}.restaurant-panel .star{font-size:1.5rem}.add-place-actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.star-ratings-block{background:var(--bg-elevated);border:0;border-radius:14px;flex-direction:column;gap:0;padding:2px 14px;display:flex}.modal-ratings{margin-bottom:2px}.star-rating-row{justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.star-ratings-block .star-rating-row+.star-rating-row{box-shadow:inset 0 1px 0 var(--border)}.star-label{color:var(--text-1);flex-shrink:0;min-width:100px;font-size:.95rem}.star-group{align-items:center;gap:2px;display:flex}.star{color:color-mix(in srgb, var(--text-1) 22%, transparent);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:1.45rem;line-height:1;transition:color .12s,transform .1s}.star:hover{transform:scale(1.15)}.star.star-on{color:#f5c518}.star-readonly .star{cursor:default}.star-readonly .star:hover{transform:none}.star-clear{color:var(--text-3);cursor:pointer;transition:color var(--transition);border-radius:4px;margin-left:4px;padding:1px 4px;font-size:.7rem}.star-clear:hover{color:var(--accent)}.star-empty-label{color:var(--text-3);margin-left:2px;font-size:.82rem}.place-detail-ratings{background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:var(--radius);flex-direction:column;gap:6px;margin-top:4px;padding:12px 14px;display:flex}.settings-page{--bg-elevated:#2c2c2e;--bg-surface:#2c2c2e;background:#1c1c1e;flex:1;overflow-y:auto}[data-theme=light] .settings-page{--bg-elevated:#fff;--bg-surface:#fff;background:#f2f2f7}.app--settings .app-header{background:#1c1c1e}[data-theme=light] .app--settings .app-header{background:#f2f2f7}.settings-dashboard{max-width:600px;margin:0 auto;padding:20px 18px 48px}.settings-dashboard-title{color:var(--text-1);letter-spacing:-.02em;margin:6px 2px 20px;font-size:1.9rem;font-weight:800}.settings-group{background:#2c2c2e;border-radius:14px;margin-bottom:26px;overflow:hidden}[data-theme=light] .settings-group{background:var(--bg-surface)}.settings-row{text-align:left;width:100%;color:inherit;cursor:pointer;box-sizing:border-box;background:0 0;border:0;align-items:center;gap:13px;min-height:56px;padding:11px 14px;text-decoration:none;transition:background .15s;display:flex;position:relative}.settings-row+.settings-row:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:57px;right:0}@media (hover:hover) and (pointer:fine){.settings-row:not(.settings-row--soon):hover{background:#80808024}}.settings-row:active{background:#80808024}.settings-row-icon{color:#fff;border-radius:7px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.settings-row-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.settings-row-title{color:var(--text-1);font-size:16px;font-weight:500;line-height:1.25}.settings-row-desc{color:var(--text-2);font-size:13px;line-height:1.3}.settings-row-chevron{color:var(--text-3,var(--text-2));opacity:.5;flex:none}.settings-row--soon{cursor:default}.settings-row-soon-badge{color:var(--accent);white-space:nowrap;flex:none;font-size:11.5px;font-weight:700}.settings-group-header{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3,var(--text-2));margin:2px 14px 7px;font-size:12px;font-weight:600}.settings-theme-opts{gap:10px;display:flex}.settings-theme-opt{background:var(--bg-elevated);border:2px solid var(--border);color:var(--text-2);cursor:pointer;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:18px 10px;font-size:14px;font-weight:600;transition:border-color .15s,color .15s;display:flex}.settings-theme-opt.active{border-color:var(--blue,#0a84ff);color:var(--text-1)}@media (hover:hover) and (pointer:fine){.settings-theme-opt:not(.active):hover{border-color:var(--text-3,var(--text-2))}}.settings-subhead{color:var(--text-1);letter-spacing:-.2px;margin:0 0 11px;font-size:17px;font-weight:700}.cluster-opts{gap:12px;display:flex}.cluster-opt{background:var(--bg-elevated);border:2px solid var(--border);color:var(--text-1);cursor:pointer;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:10px;padding:12px 10px 14px;font-size:15px;font-weight:700;transition:border-color .15s;display:flex}.cluster-opt.active{border-color:var(--blue,#0a84ff)}@media (hover:hover) and (pointer:fine){.cluster-opt:not(.active):hover{border-color:var(--text-3,var(--text-2))}}.cluster-illus{background:#80808024;border-radius:10px;justify-content:center;align-items:center;width:100%;height:92px;display:flex;position:relative;overflow:hidden}.cluster-illus-circle{color:#fff;background:#34c759;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;font-size:18px;font-weight:800;display:flex;box-shadow:0 0 0 6px #34c75947}.cluster-opt-label{font-size:15px;font-weight:700}.proj-list{background:var(--bg-elevated);border-radius:12px;gap:0;margin-bottom:22px;padding:0;display:block;overflow:hidden}.proj-list .cat-row{background:0 0;border:0;border-radius:0;margin:0;padding:11px 14px;position:relative}.proj-list .cat-row+.cat-row:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:56px;right:0}.proj-list .cat-drag-handle{display:none}.proj-list .proj-row-badge{background:color-mix(in srgb, var(--proj,var(--accent)) 20%, transparent);color:color-mix(in srgb, var(--proj,var(--accent)) 72%, #fff);text-align:center;box-sizing:border-box;letter-spacing:.02em;border:0;border-radius:20px;min-width:34px;padding:4px 12px;font-size:.8rem;font-weight:700}[data-theme=light] .proj-list .proj-row-badge{background:color-mix(in srgb, var(--proj,var(--accent)) 16%, #fff);color:color-mix(in srgb, var(--proj,var(--accent)) 68%, #000)}.projcolor-swatches{flex-wrap:wrap;gap:14px;display:flex}.projcolor-swatch{cursor:pointer;border:0;border-radius:50%;width:40px;height:40px;padding:0;transition:transform .1s}.projcolor-swatch.active{box-shadow:0 0 0 3px var(--bg-elevated), 0 0 0 5px #fff}.projcolor-swatch:active{transform:scale(.9)}.proj-add-color{flex-direction:column;gap:10px;margin-top:6px;display:flex}.proj-add-color>label{color:var(--text-2);font-size:13px;font-weight:600}.region-lang-row{align-items:center;gap:11px;min-height:52px;padding:7px 14px;display:flex}.region-lang-select{flex:none;width:170px;max-width:55%}.region-opt-row{text-align:left;cursor:pointer;width:100%;min-height:52px;color:var(--text-1);background:0 0;border:0;align-items:center;gap:11px;padding:12px 14px;font-size:16px;display:flex;position:relative}.region-opt-row+.region-opt-row:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:50px;right:0}@media (hover:hover) and (pointer:fine){.region-opt-row:hover{background:#8080801f}}.region-flag{text-align:center;flex:none;width:26px;font-size:20px;line-height:1}.region-lang-row .region-opt-label,.region-opt-row>.region-opt-label{flex:1;min-width:0}.region-opt-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.region-opt-sub{color:var(--text-2);font-size:12.5px}.region-count{color:var(--text-2);flex:none;font-size:15px}.region-check{color:#0a84ff;flex:none}.settings-body{max-width:680px;margin:0 auto;padding:24px 32px 48px}.settings-body.hidden{display:none}.settings-section-nav{align-items:center;gap:16px;margin-bottom:28px;display:flex}.settings-section-nav-title{color:var(--text-1);font-size:1.15rem;font-weight:700}.settings-back-btn{border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);background:0 0;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:7px 16px;font-size:.88rem;display:inline-flex}.settings-back-btn:hover{border-color:var(--blue);color:var(--blue)}.settings-section-header h2{color:var(--text-1);margin-bottom:4px;font-size:1.1rem;font-weight:700}.settings-desc{color:var(--text-2);margin-bottom:20px;font-size:.83rem}.cat-list{background:var(--bg-elevated);border-radius:14px;flex-direction:column;margin-bottom:28px;display:flex;overflow:hidden}.cat-row{transition:background-color var(--transition);background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:11px 14px;display:flex}.cat-row+.cat-row{box-shadow:inset 0 1px 0 var(--border)}.cat-row:hover,.cat-row.editing{background:var(--bg-hover)}.cat-row.drag-over{background:var(--accent-dim)}.cat-row[draggable=true]{cursor:grab;-webkit-user-select:none;user-select:none}.cat-row[draggable=true]:active{cursor:grabbing}.cat-drag-handle{color:var(--text-3);cursor:grab;-webkit-user-select:none;user-select:none;transition:color var(--transition);flex-shrink:0;padding:0 6px 0 0;font-size:1.2rem;line-height:1}.cat-row:hover .cat-drag-handle{color:var(--text-2)}.cat-row-icon{flex-shrink:0;font-size:1.3rem}.cat-row-label{color:var(--text-1);flex:1;font-size:.9rem;font-weight:500}.cat-row-value{color:var(--text-3);font-family:monospace;font-size:.72rem}.cat-row-actions{flex-shrink:0;gap:4px;margin-left:auto;display:flex}.cat-btn-edit,.cat-btn-delete{cursor:pointer;width:28px;height:28px;transition:all var(--transition);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;font-size:.8rem;display:flex}.cat-btn-edit{color:var(--blue)}.cat-btn-delete{color:var(--accent)}.cat-btn-edit:hover{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, transparent)}.cat-btn-delete:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.cat-edit-form{flex-direction:column;gap:8px;width:100%;display:flex}.cat-edit-icon-row{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.cat-edit-actions{gap:6px;display:flex}.cat-add-box{background:var(--bg-elevated);border:0;border-radius:14px;padding:18px}.cat-add-box h3{color:var(--text-1);margin-bottom:14px;font-size:.9rem;font-weight:600}.cat-add-form{flex-direction:column;gap:12px;display:flex}.cat-add-icon-row{align-items:flex-end;gap:16px;display:flex}.cat-add-icon-field,.cat-add-label-field{flex-direction:column;gap:4px;display:flex}.cat-add-label-field{flex:1}.cat-add-icon-field label,.cat-add-label-field label{color:var(--text-3);text-transform:uppercase;letter-spacing:.8px;font-size:.7rem;font-weight:600}.cat-icon-input{text-align:center;background:var(--bg-elevated);border:1px solid var(--border);width:52px;color:var(--text-1);border-radius:8px;outline:none;padding:6px;font-size:1.4rem}.cat-icon-input:focus{border-color:var(--accent)}.cat-label-input{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);width:100%;transition:border-color var(--transition);border-radius:8px;outline:none;padding:9px 12px;font-family:inherit;font-size:.88rem}.cat-label-input:focus{border-color:var(--accent)}.cat-icon-suggestions{flex-wrap:wrap;gap:4px;display:flex}.cat-icon-suggestions button{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;border-radius:6px;width:34px;height:34px;font-size:1rem;transition:all .12s}.cat-icon-suggestions button:hover,.cat-icon-suggestions button.active{border-color:var(--accent);background:var(--accent-dim)}.cat-svg-picker-row{flex-direction:column;gap:6px;display:flex}.cat-svg-picker button{justify-content:center;align-items:center;display:inline-flex}.cat-add-submit{align-self:flex-start}.cat-error{color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:6px;padding:6px 10px;font-size:.82rem}.btn-save-sm{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:5px 14px;font-size:.82rem;font-weight:600}.btn-cancel-sm{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;border-radius:7px;padding:5px 12px;font-size:.82rem}:is(.map-area:has(.add-place-panel) .map-top-controls,.map-area:has(.place-detail) .map-top-controls){left:calc(50% - var(--detail-w) / 2);width:calc((100% - var(--detail-w)) * .75);max-width:720px}.sidebar-sort{flex-wrap:wrap;gap:4px;padding:0 12px 10px;display:flex}.sort-btn{background:var(--bg-elevated);border:1px solid var(--border);min-width:0;color:var(--text-2);cursor:pointer;transition:all var(--transition);white-space:nowrap;text-align:center;border-radius:20px;flex:auto;padding:4px 8px;font-size:.75rem;font-weight:500}.sort-btn:hover{border-color:var(--blue);color:var(--blue)}.sort-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.cat-row-dot{border:1px solid #00000026;border-radius:50%;flex-shrink:0;width:12px;height:12px}.cat-color-row{align-items:center;gap:8px;margin:6px 0;display:flex}.cat-color-label{color:var(--text-2);font-size:.82rem}.cat-color-input{border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;border-radius:6px;width:38px;height:28px;padding:2px}.cat-color-preview{border:1px solid #0003;border-radius:50%;width:22px;height:22px;display:inline-block}.cat-add-color-field{flex-direction:column;gap:4px;display:flex}.cat-add-color-field label{color:var(--text-2);font-size:.78rem}.ratings-editor{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.rating-editor-row{align-items:center;gap:10px;display:flex}.rating-editor-num{color:var(--text-2);flex-shrink:0;width:18px;font-size:.88rem}.rating-editor-input{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);transition:border-color var(--transition);border-radius:8px;flex:1;padding:8px 12px;font-size:.9rem}.rating-editor-input:focus{border-color:var(--accent);outline:none}.rating-editor-key{color:var(--text-3,var(--text-2));background:var(--bg-surface);border:1px solid var(--border);opacity:.7;border-radius:4px;flex-shrink:0;padding:2px 6px;font-family:monospace;font-size:.72rem}.ratings-save-btn{margin-top:4px}.rating-editor-delete{color:var(--text-3);cursor:pointer;width:28px;height:28px;transition:all var(--transition);background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;display:flex}.rating-editor-delete:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.rating-add-box{background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:var(--radius);margin-top:20px;padding:16px}.rating-add-box h3{color:var(--text-1);margin:0 0 12px;font-size:.95rem}.rating-add-form{align-items:center;gap:8px;display:flex}.rating-add-form .rating-editor-input{flex:1}.console-cat-add-row{align-items:center;gap:8px;margin-bottom:16px;display:flex}.console-cat-add-row .cat-label-input{flex:1}.console-cat-list{flex-direction:column;gap:6px;display:flex}.console-cat-brand{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.console-cat-brand.drag-over{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.console-cat-brand-head{align-items:center;gap:8px;padding:8px 10px;display:flex}.console-cat-brand-head .cat-drag-handle{cursor:grab;padding:0}.console-cat-brand-head:hover .cat-drag-handle{color:var(--text-2)}.console-cat-brand-toggle{cursor:pointer;text-align:left;color:var(--text-1);transition:background var(--transition);background:0 0;border:none;border-radius:6px;flex:1;align-items:center;gap:10px;padding:2px 4px;display:flex}.console-cat-brand-toggle:hover{background:var(--bg-hover)}.console-cat-brand-caret{color:var(--text-2);flex-shrink:0;width:14px;font-size:.8rem}.console-cat-brand-name{flex:1;font-size:.92rem;font-weight:600}.console-cat-brand-count{color:var(--text-2);background:var(--bg-hover);border:1px solid var(--border);text-align:center;border-radius:20px;min-width:22px;padding:1px 8px;font-size:.72rem}.console-cat-models{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding:4px 12px 12px;display:flex}.console-cat-model-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.console-cat-model-chip{color:var(--text-1);background:var(--accent-dim);border:1px solid var(--border);border-radius:20px;align-items:center;gap:6px;padding:3px 6px 3px 12px;font-size:.8rem;display:inline-flex}.console-cat-model-chip-x{cursor:pointer;color:var(--text-2);width:18px;height:18px;transition:all var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;line-height:1;display:inline-flex}.console-cat-model-chip-x:hover{color:var(--accent);background:var(--accent-dim)}.proj-row-badge{letter-spacing:.03em;border:1px solid;border-radius:20px;flex-shrink:0;padding:3px 8px;font-size:.78rem;font-weight:700}.proj-add-form{flex-direction:column;gap:12px;display:flex}.proj-add-fields{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.proj-add-field{flex-direction:column;gap:4px;display:flex}.proj-add-field label{color:var(--text-2);font-size:.78rem}.proj-add-field--wide{flex:1;min-width:160px}.proj-value-input{letter-spacing:.04em;font-weight:700;width:80px!important}.proj-dropdown{flex-direction:column;gap:2px;display:flex}.proj-dropdown-btn{background:var(--bg-elevated);width:100%;color:var(--text-2);cursor:pointer;text-align:left;transition:background-color var(--transition);border:1px solid #0000;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:13px 16px;font-size:.95rem;font-weight:600;display:flex}.proj-dropdown-btn:hover,.proj-dropdown-btn.open{background:var(--bg-hover);color:var(--text-1)}.proj-dropdown-btn>span:first-child{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.proj-pill{letter-spacing:.03em;white-space:nowrap;border:1px solid;border-radius:12px;padding:1px 7px;font-size:.75rem;font-weight:700}.proj-dropdown-arrow{color:var(--text-3);flex-shrink:0;font-size:.62rem}.proj-dropdown-list{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);animation:.1s fadeIn;overflow:hidden}.proj-dropdown-item{cursor:pointer;color:var(--text-1);transition:background var(--transition);align-items:center;gap:10px;padding:9px 14px;font-size:.88rem;display:flex}.proj-dropdown-item:hover{background:var(--bg-elevated)}.proj-dropdown-item input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.proj-swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px}.proj-dropdown-item strong{letter-spacing:.04em;min-width:32px;font-size:.8rem}.proj-dropdown-item span:last-child{color:var(--text-2)}.sidebar-proj-filter{padding:0 12px 10px;position:relative}.proj-filter-btn{background:color-mix(in srgb, var(--text-1) 9%, transparent);width:100%;color:var(--text-1);cursor:pointer;text-align:left;transition:background-color var(--transition), border-color var(--transition);border:1px solid #0000;border-radius:11px;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;font-size:.85rem;display:flex}.proj-filter-btn:hover,.proj-filter-btn.open{background:color-mix(in srgb, var(--text-1) 14%, transparent)}.proj-filter-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.proj-filter-arrow{flex:none}.proj-filter-label{flex:1;align-items:center;gap:6px;display:flex;overflow:hidden}.proj-filter-all-icon{font-size:.9rem}.proj-filter-name{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.proj-filter-arrow{color:var(--text-3);opacity:.7;flex-shrink:0;font-size:.6rem}.proj-filter-dropdown{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);z-index:200;animation:.1s fadeIn;position:absolute;top:calc(100% + 4px);left:12px;right:12px;overflow:hidden;box-shadow:0 4px 16px #00000059}.proj-filter-option{cursor:pointer;width:100%;color:var(--text-1);text-align:left;transition:background var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:9px 14px;font-size:.88rem;display:flex}.proj-filter-option:hover,.proj-filter-option.active{background:var(--bg-elevated)}.proj-filter-opt-label{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.proj-filter-option.active .proj-filter-opt-label{color:var(--text-1)}.proj-filter-check{color:var(--accent);flex-shrink:0;font-size:.85rem;font-weight:700}.place-project-tags{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.place-project-badge{letter-spacing:.03em;border:1px solid;border-radius:12px;padding:1px 6px;font-size:.7rem;font-weight:700}.place-detail-projects{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.place-detail-project-badge{border:1px solid;border-radius:20px;padding:3px 10px;font-size:.8rem;font-weight:600}.place-detail-project-owner{opacity:.7;font-style:italic;font-weight:500}.gallery-editor-camera{border-color:var(--accent)!important;color:var(--accent)!important;background:color-mix(in srgb, var(--accent) 12%, transparent)!important}.gallery-editor-camera:hover{background:color-mix(in srgb, var(--accent) 20%, transparent)!important}.gallery-editor-gallery{border-color:var(--blue)!important;color:var(--blue)!important;background:color-mix(in srgb, var(--blue) 12%, transparent)!important}.gallery-editor-gallery:hover{background:color-mix(in srgb, var(--blue) 20%, transparent)!important}.general-setting-row{border-bottom:1px solid var(--border-soft);flex-direction:column;gap:8px;max-width:520px;padding-bottom:20px;display:flex}.general-setting-row:last-child{border-bottom:none}.search-provider-toggle{gap:10px;display:flex}.map-default-toggle{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.map-default-toggle .provider-btn{text-align:center;flex-direction:row;flex:none;justify-content:center;gap:8px;min-height:54px;padding:10px;line-height:1.2}.provider-btn{background:var(--bg-elevated);border:2px solid var(--border);cursor:pointer;color:var(--text-2);transition:all var(--transition);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 16px;font-size:.9rem;font-weight:600;display:flex}.provider-btn:hover:not(:disabled){border-color:var(--blue);color:var(--text-1)}.provider-btn.active{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, var(--bg-elevated));color:var(--blue)}.provider-btn:disabled{opacity:.4;cursor:not-allowed}.provider-hint{color:var(--text-3);font-size:.72rem;font-weight:400}.pref-tile-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.pref-tile{background:var(--bg-elevated);border:2px solid var(--border);cursor:pointer;min-height:86px;color:var(--text-1);transition:all var(--transition);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px;display:flex}.pref-tile:hover:not(:disabled){border-color:var(--blue)}.pref-tile.active{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, var(--bg-elevated))}.pref-tile:disabled{opacity:.4;cursor:not-allowed}.pref-tile--wide{flex-direction:row;grid-column:1/-1;gap:10px;min-height:48px}.pref-tile-label{text-align:center;color:var(--text-1);font-size:.82rem;font-weight:600;line-height:1.2}.pref-tile--wide .pref-tile-label{font-size:.92rem}.brand-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.brand-icon svg{width:100%;height:100%;display:block}.general-label{color:var(--text-1);font-size:.88rem;font-weight:600}.general-input-row{align-items:stretch;gap:10px;display:flex}.general-title-input{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);transition:border-color var(--transition);border-radius:8px;flex:1;padding:9px 14px;font-size:.95rem}.general-title-input:focus{border-color:var(--accent);outline:none}.general-save-btn{flex-shrink:0}.place-detail-top-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.avg-rating-badge{color:#f59e0b;white-space:nowrap;background:#f59e0b22;border:1px solid #f59e0b44;border-radius:20px;flex-shrink:0;margin-left:auto;padding:3px 10px;font-size:.85rem;font-weight:700}.ratings-avg-inline{color:#f59e0b;background:#f59e0b18;border-radius:10px;margin-left:auto;padding:1px 8px;font-size:.8rem;font-weight:700}.place-detail-address-row{flex-direction:column;gap:6px;display:flex}.nav-dropdown-wrap{position:relative}.nav-toggle-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);cursor:pointer;transition:all var(--transition);border-radius:20px;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:500;display:inline-flex}.nav-toggle-btn:hover,.nav-toggle-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.nav-toggle-btn--full{justify-content:center;width:100%}.nav-popup-overlay{-webkit-backdrop-filter:blur(32px)saturate(1.8)brightness(.7);z-index:9100;background:#000000b8;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.nav-popup{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:320px;animation:.18s popIn;overflow:hidden}@keyframes popIn{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}.nav-popup-header{text-transform:uppercase;letter-spacing:.7px;color:var(--text-3,#6b7589);border-bottom:1px solid var(--border-soft,#161b22);justify-content:space-between;align-items:center;padding:14px 18px 10px;font-size:.8rem;font-weight:700;display:flex}.nav-popup-item{color:var(--text-1);transition:background var(--transition);border-top:1px solid var(--border-soft,#161b22);align-items:center;gap:16px;padding:16px 20px;font-size:1rem;font-weight:500;text-decoration:none;display:flex}.nav-popup-item:first-of-type{border-top:none}@media (hover:hover) and (pointer:fine){.nav-popup-item:hover{background:var(--bg-elevated)}}.nav-popup-item:active{background:var(--bg-elevated)}.nav-popup-icon{flex-shrink:0;justify-content:center;align-items:center;width:36px;display:inline-flex}.nav-menu{background:var(--bg-surface);border:1px solid var(--border);z-index:2000;border-radius:10px;min-width:200px;animation:.12s fadeIn;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 8px 24px #00000040}.nav-menu--up{min-width:unset;inset:auto 0 calc(100% + 6px)}.nav-menu-item{color:var(--text-1);transition:background var(--transition);align-items:center;gap:10px;padding:10px 16px;font-size:.88rem;text-decoration:none;display:flex}.nav-menu-item:hover{background:var(--bg-elevated)}.nav-menu-icon{text-align:center;width:24px;font-size:1.15rem}.place-info-title-row{justify-content:space-between;align-items:baseline;gap:8px;width:100%;display:flex}.place-info-title-row strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.place-avg-rating{color:#f59e0b;white-space:nowrap;background:#f59e0b18;border-radius:10px;flex-shrink:0;margin-left:auto;padding:1px 7px;font-size:.75rem;font-weight:700}.place-detail-note-label{align-items:center;display:flex}.sidebar-sort{padding:0 12px 10px}.sort-select{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text-1);cursor:pointer;transition:border-color var(--transition);border-radius:8px;outline:none;padding:7px 10px;font-size:.85rem}.sort-select:focus,.sort-select:hover{border-color:var(--accent)}.photo-gallery-editor{background:var(--bg-elevated);border-radius:14px;flex-wrap:wrap;gap:8px;margin-top:4px;padding:10px;display:flex}.gallery-editor-thumb{border:2px solid var(--border);border-radius:8px;flex-shrink:0;width:76px;height:76px;position:relative;overflow:hidden}.gallery-editor-thumb img{object-fit:cover;width:100%;height:100%;display:block}.gallery-editor-badge{color:#fff;text-align:center;background:#0000008c;padding:2px 0;font-size:.65rem;position:absolute;bottom:0;left:0;right:0}.gallery-editor-remove{color:#fff;cursor:pointer;background:#000000a6;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:.9rem;line-height:1;transition:background .12s;display:flex;position:absolute;top:2px;right:2px}.gallery-editor-remove:hover{background:var(--accent)}.gallery-editor-main{color:#fff;cursor:pointer;opacity:.85;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:background .12s,opacity .12s;display:flex;position:absolute;bottom:2px;left:2px}.gallery-editor-main:hover{background:var(--accent);opacity:1}.gallery-editor-add{border:2px dashed var(--border);background:var(--bg-elevated);width:auto;min-width:120px;height:86px;color:var(--text-2);cursor:pointer;transition:all var(--transition);border-radius:10px;flex-direction:column;flex:1 0 120px;justify-content:center;align-items:center;gap:4px;font-size:.72rem;display:flex}.gallery-editor-add:hover{border-color:var(--accent);color:var(--accent)}.gallery-editor-add-icon{font-size:1.3rem;display:inline-flex}.gallery-editor-add{gap:7px;font-size:.82rem}.gallery-editor-loading{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;width:76px;height:76px;font-size:1.4rem;display:flex}.gallery-editor-error{width:100%;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:.75rem;line-height:1.4}.label-hint{color:var(--text-2);margin-left:4px;font-size:.72rem;font-weight:400}.place-detail-photo-wrap.clickable{cursor:zoom-in}.place-detail-photo-wrap.clickable:hover .place-detail-photo{opacity:.92}.photo-count-badge,.place-detail-sv-badge{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#0009;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;display:inline-flex;position:absolute;bottom:8px;right:8px}.detail-gallery-strip{scrollbar-width:thin;background:var(--detail-bg);border-bottom:1px solid var(--border);gap:6px;padding:8px 16px;display:flex;overflow-x:auto}.locked-blur{cursor:pointer;border-radius:12px;position:relative;overflow:hidden}.locked-blur:focus-visible{outline:2px solid var(--blue,#4f8ef7);outline-offset:2px}.locked-blur-fake{filter:blur(4px);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.locked-blur--rows .locked-blur-fake{flex-direction:column;gap:8px;display:flex}.locked-blur-row{background:var(--bg-elevated,#7f7f7f1a);border-radius:10px;align-items:center;gap:11px;padding:9px 11px;display:flex}.locked-blur-av{background:#7f7f7f66;border-radius:8px;flex:none;width:30px;height:30px}.locked-blur-txt{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.locked-blur-txt span{background:#7f7f7f59;border-radius:4px;height:8px}.locked-blur-txt span:first-child{width:45%}.locked-blur-txt span:last-child{width:72%}.locked-blur--photos{width:100%;min-height:60px}.locked-blur--photos .locked-blur-fake{gap:6px;display:flex}.locked-blur-tile{background:#7f7f7f61;border-radius:6px;flex:none;width:60px;height:60px}.locked-blur-overlay{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.locked-blur-pill{background:var(--bg-surface,#fff);border:1px solid var(--border,#7f7f7f40);color:var(--blue,#4f8ef7);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:8px 15px;font-size:13.5px;font-weight:700;display:inline-flex;box-shadow:0 4px 16px #00000029}.detail-gallery-thumb{object-fit:cover;cursor:pointer;opacity:.75;border:2px solid #0000;border-radius:8px;flex-shrink:0;width:86px;height:62px;transition:border-color .15s,opacity .15s}.detail-gallery-thumb:hover,.detail-gallery-thumb.active{border-color:var(--accent);opacity:1}.lightbox-overlay{z-index:9999;background:#000000eb;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-img{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:6px;max-width:90vw;max-height:88dvh;box-shadow:0 8px 40px #0009}.lightbox-report{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;border:none;border-radius:20px;align-items:center;gap:6px;padding:8px 13px;font-size:.85rem;transition:background .15s;display:inline-flex;position:fixed;top:18px;left:22px}.lightbox-report:hover{background:#000000b8}.lightbox-close{color:#fff;cursor:pointer;z-index:10000;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.4rem;transition:background .15s;display:flex;position:fixed;top:18px;right:22px}.lightbox-close:hover{background:#ffffff4d}.lightbox-nav{color:#fff;cursor:pointer;z-index:10000;-webkit-user-select:none;user-select:none;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:2.5rem;transition:background .15s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#ffffff4d}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-counter{color:#ffffffbf;background:#0006;border-radius:20px;padding:4px 14px;font-size:.9rem;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.sidebar-backdrop{display:none}.sidebar-toggle{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;transition:all var(--transition);border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;display:none}.settings-close-btn{color:var(--text-1)}.sidebar-toggle span{background:var(--text-2);border-radius:2px;width:16px;height:2px;transition:all .2s;display:block}.sidebar-toggle:hover{border-color:var(--accent)}.sidebar-toggle:hover span{background:var(--accent)}.sidebar-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.sidebar-toggle.open span:nth-child(2){opacity:0}.sidebar-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=768px){.app-header{gap:8px;padding:0 10px}.app-header h1{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.88rem;overflow:hidden}.sidebar-toggle{display:flex}.place-count,.settings-toggle-label{display:none}.settings-toggle{padding:6px 10px}.header-spacer{flex:auto}input,select,textarea{font-size:16px!important}.app-header{height:calc(50px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;flex-wrap:nowrap;align-items:center;gap:6px;overflow:hidden}.app-header h1{display:none}.header-spacer{flex:auto;min-width:0}.header-actions{flex-shrink:0;gap:5px;margin-left:0}.sidebar-toggle,.portal-back-btn{display:none!important}.view-tabs{background:color-mix(in srgb, var(--text-1) 10%, transparent);border:0;border-radius:999px;flex:1;gap:0;min-width:0;padding:4px}.view-tab{min-width:0;color:var(--text-2);border-radius:999px;flex:1;padding:9px 12px;font-size:1rem}.view-tab.active{color:var(--text-1);background:0 0;font-weight:700}.view-tab:hover,.view-tab.active:hover{background:0 0}.settings-toggle{border-radius:12px;flex-shrink:0;width:44px;height:44px}.view-tab-label{display:inline}.map-top-controls{top:10px;left:50%;transform:translate(-50%)}.map-search-panel{width:auto;max-width:none;top:calc(100% + 8px);left:0;right:0}.map-wrapper.sidebar-open .map-top-controls,.map-wrapper.sidebar-open .map-search-panel,.map-wrapper.sidebar-open .map-bottom-controls{display:none!important}.map-search-panel .search-input{padding:8px 12px;font-size:16px}.map-search-panel .search-results{max-height:150px}.map-search-panel .search-results li{padding:8px 12px;font-size:.8rem}.map-bottom-controls{bottom:max(12px, env(safe-area-inset-bottom));background:var(--material);-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);border:1px solid #0000;border-radius:20px;flex-flow:row;gap:0;max-width:calc(100vw - 24px);padding:5px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #00000073}.map-bottom-controls .map-layer-btn{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.map-wrapper.detail-open .map-top-controls,.map-wrapper.detail-open .map-search-panel,.map-wrapper.detail-open .map-bottom-controls,.map-wrapper.detail-open .map-locate-fab{display:none!important}.map-locate-fab{width:46px;height:46px;bottom:calc(max(12px, env(safe-area-inset-bottom)) + 58px);right:14px}.map-locate-fab svg{width:22px;height:22px}.map-area:has(.place-detail) .map-locate-fab{right:14px}.map-layer-menu{min-width:180px;max-height:60vh;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto}.map-filter-panel{width:calc(100vw - 24px);max-height:65vh;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto}.map-layer-btn{box-shadow:none;background:0 0;border:none;border-radius:14px;gap:3px;padding:6px 11px;font-size:.78rem}.map-layer-btn.open,.map-layer-btn:active{background:var(--bg-elevated);color:var(--accent);border-color:#0000}.map-layer-btn.has-filters{color:var(--accent)}.sidebar{left:0;top:calc(50px + env(safe-area-inset-top));z-index:500;width:min(85vw,320px);box-shadow:none;transition:transform .25s;position:fixed;bottom:0;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:6px 0 32px #00000080}.sidebar-backdrop{z-index:499;background:#00000073;animation:.2s fadeIn;display:block;position:fixed;inset:0}.leaflet-control-zoom{display:none}.place-detail{width:100%;height:100dvh;padding-top:env(safe-area-inset-top);box-shadow:none;z-index:1100;border:none;border-radius:0;animation:.2s fadeIn;position:fixed;inset:0;overflow-y:auto}@keyframes slideInBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.place-detail:before{display:none}.place-detail-close{top:calc(10px + env(safe-area-inset-top));z-index:1110;background:var(--bg-elevated);border:1px solid var(--border);width:44px;height:44px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;display:flex;position:fixed;right:10px}.place-detail-hall-back{top:calc(10px + env(safe-area-inset-top));z-index:1110;width:44px;height:44px;box-shadow:var(--shadow-sm);position:fixed;left:10px}.place-detail-share{top:calc(10px + env(safe-area-inset-top));z-index:1110;width:44px;height:44px;box-shadow:var(--shadow-sm);font-size:1.15rem;position:fixed;right:62px}.place-kebab-wrap{top:calc(10px + env(safe-area-inset-top));z-index:1110;position:fixed;right:114px}.place-detail-kebab{width:44px;height:44px;box-shadow:var(--shadow-sm)}.place-detail-photo-wrap{height:200px}.modal-close-btn,.share-close,.theme-toggle,.cat-btn-edit,.cat-btn-delete,.rating-editor-delete{width:44px;height:44px}.add-place-panel{z-index:600;border-top:none;border-left:none;border-radius:0;width:100%;height:100dvh;animation:.2s fadeIn;position:fixed;inset:0}.add-place-panel-header{padding:calc(50px + env(safe-area-inset-top)) 16px 12px}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:16px 16px 0 0;width:100%;max-width:100%;max-height:92dvh;animation:.25s slideInBottom;overflow-y:auto}.modal-close-btn{width:40px;height:40px;font-size:1.1rem}.map-search-panel{width:auto;max-width:none;left:0;right:0}.settings-dashboard{padding:28px 16px}.settings-dashboard-title{margin-bottom:24px;font-size:1.2rem}.settings-dashboard-grid{grid-template-columns:repeat(2,1fr);gap:12px}.settings-card{padding:24px 12px 20px}.settings-card-icon{font-size:2.2rem}.settings-card-label{font-size:.9rem}.settings-body{padding:16px 14px 40px}.btn-edit,.btn-delete{padding:6px 8px;font-size:1rem}.place-actions{opacity:1}.place-item{padding:13px 14px 13px 20px}.add-place-form input,.add-place-form select,.add-place-form textarea{padding:10px 12px;font-size:1rem}.modal form input,.modal form select,.modal form textarea{font-size:1rem}.add-place-actions,.modal-actions{gap:10px}.btn-save,.btn-cancel{padding:12px 20px;font-size:.95rem}.pgv-pagination{padding-bottom:max(16px, env(safe-area-inset-bottom))}.proj-filter-dropdown{left:12px;right:12px}}@media (width<=380px){.app-header h1{font-size:.78rem}.settings-toggle-icon{font-size:.9rem}}.pdf-gallery-editor{flex-direction:column;gap:6px;display:flex}.pdf-gallery-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;min-width:0;padding:8px 12px;display:flex}.pdf-gallery-icon{flex-shrink:0;font-size:1.1rem}.pdf-gallery-name{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition);flex:1;font-size:.82rem;text-decoration:none;overflow:hidden}.pdf-gallery-name:hover{text-decoration:underline}.pdf-gallery-remove{color:var(--text-3);cursor:pointer;transition:color var(--transition);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.1rem;line-height:1}.pdf-gallery-remove:hover{color:var(--accent)}.pdf-gallery-add{background:var(--bg-elevated);border:2px dashed var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:.82rem;display:flex}.pdf-gallery-add:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pdf-gallery-add:disabled{opacity:.6;cursor:not-allowed}.pdf-gallery-error{color:var(--accent);padding:4px 2px;font-size:.78rem}.place-detail-pdfs{flex-direction:column;gap:6px;margin-top:14px;display:flex}.pdf-download-link{background:var(--bg-elevated);border:1px solid var(--border);color:var(--blue);transition:all var(--transition);border-radius:8px;align-items:center;gap:8px;padding:9px 12px;text-decoration:none;display:flex}.pdf-download-link:hover{border-color:var(--blue);background:var(--bg-hover)}.pdf-download-icon{flex-shrink:0;font-size:1.1rem}.pdf-download-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.83rem;overflow:hidden}.pdf-download-arrow{color:var(--text-3);flex-shrink:0;font-size:.85rem}.electricity-editor{background:var(--bg-elevated);border-radius:14px;flex-direction:column;gap:0;padding:6px 14px;display:flex}.elec-pin-toggle{background:color-mix(in srgb, var(--text-1) 10%, transparent);border:0;border-radius:10px;gap:2px;width:100%;margin:8px 0;padding:3px;display:flex}.elec-pin-btn{color:var(--text-2);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:8px;flex:1;padding:7px 10px;font-size:.88rem;font-weight:600}.elec-pin-btn:hover{color:var(--text-1)}.elec-pin-btn.active{background:color-mix(in srgb, var(--text-1) 24%, transparent);color:var(--text-1)}.elec-row{transition:background var(--transition);background:0 0;border:0;border-radius:0;align-items:center;gap:10px;min-height:42px;padding:12px 0;display:flex}.elec-row+.elec-row{position:relative}.elec-row+.elec-row:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:34px;right:0}.elec-row.enabled{background:0 0}.elec-check-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;min-width:72px;display:flex}.elec-check-label input[type=checkbox]{accent-color:#f59e0b;cursor:pointer;flex-shrink:0;width:16px;height:16px}.elec-amps{color:var(--text-1);font-size:.9rem;font-weight:600}.elec-counter{background:color-mix(in srgb, var(--text-1) 12%, transparent);border-radius:10px;flex:none;align-items:center;gap:0;margin-left:auto;display:flex;overflow:hidden}.elec-counter-btn{width:46px;height:34px;color:var(--text-1);cursor:pointer;transition:all var(--transition);background:0 0;border:0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-size:1.15rem;line-height:1;display:flex}.elec-counter-btn:hover:not(:disabled){color:#f59e0b;border-color:#f59e0b}.elec-counter-input{text-align:center;border:1px solid var(--border);background:var(--bg-surface);width:48px;color:var(--text-1);border-radius:6px;padding:4px 6px;font-size:.9rem;font-weight:600}.elec-counter-input:focus{border-color:#f59e0b;outline:none}.elec-counter-input::-webkit-inner-spin-button{-webkit-appearance:none}.elec-counter-input::-webkit-outer-spin-button{-webkit-appearance:none}.elec-counter-input{-moz-appearance:textfield}.elec-preview{color:#f59e0b;white-space:nowrap;margin-left:2px;font-size:.95rem;font-weight:600}.elec-counter-btn+.elec-counter-btn{box-shadow:inset 1px 0 0 color-mix(in srgb, var(--text-1) 14%, transparent)}.elec-counter-btn:disabled{opacity:.35;cursor:default}.place-detail-electricity{color:var(--text-1);align-items:flex-start;gap:6px;padding:8px 0 2px;font-size:.88rem;display:flex}.place-detail-electricity .detail-icon{flex-shrink:0;margin-top:1px}.elec-detail-text{color:#f59e0b;min-width:0;font-weight:600}.elec-group{white-space:nowrap}.checkbox-field-label{cursor:pointer;color:var(--text-1);-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:6px 0;font-size:.88rem;display:flex}.section-collapse{opacity:1;max-height:6000px;transition:max-height .32s,opacity .22s,margin .32s;overflow:hidden}.section-collapse.collapsed{opacity:0;pointer-events:none;max-height:0;margin:0}.switch-row{cursor:pointer;border-top:1px solid var(--border-soft,#ffffff12);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px 16px;display:flex}.switch-row-label{color:var(--text-1);font-size:.85rem;font-weight:500;line-height:1.2}.switch{flex-shrink:0;width:46px;height:28px;display:inline-block;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch-slider{background:var(--bg-elevated,#1c1c1e);box-shadow:inset 0 0 0 1px var(--border,#2a2f3a);border-radius:999px;transition:background .2s,box-shadow .2s;position:absolute;inset:0}.switch-slider:before{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0006}.switch input:checked+.switch-slider{background:var(--accent,#ff4d4d);box-shadow:inset 0 0 0 1px var(--accent,#ff4d4d)}.switch input:checked+.switch-slider:before{transform:translate(18px)}.checkbox-field-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin:0}.checkbox-with-sub{flex-direction:column;gap:0;display:flex}.lights-inline-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lights-inline-row .checkbox-field-label{flex-shrink:0}.lights-resolution-input{background:var(--bg-elevated);border:1px solid var(--border);width:100%;max-width:240px;color:var(--text-2);transition:border-color var(--transition);border-radius:6px;outline:none;padding:4px 9px;font-size:.8rem}.lights-resolution-input::placeholder{color:var(--text-3)}.lights-resolution-input:focus{border-color:var(--accent);color:var(--text-1)}.place-detail-sub-row{color:var(--text-2);align-items:center;gap:6px;padding:1px 0;font-size:.83rem;display:flex}.place-detail-sub-row--check{color:var(--text-1)}.sub-check-icon{text-align:center;width:20px;color:var(--green);flex-shrink:0;font-size:.8rem;font-weight:700}.detail-sub-res{color:var(--text-3);margin-left:4px;font-size:.78rem}.lights-badge{letter-spacing:.03em;vertical-align:middle;border-radius:10px;padding:1px 7px;font-size:.72rem;font-weight:600;display:inline-block}.lights-badge--led{color:var(--green);background:#3fb95021;border:1px solid #3fb9504d}.lights-badge--res{background:var(--bg-elevated);color:var(--text-2);border:1px solid var(--border);letter-spacing:0;font-weight:400}.rigging-editor{flex-wrap:wrap;gap:6px;display:flex}.rigging-chip{background:color-mix(in srgb, var(--text-1) 12%, transparent);color:var(--text-1);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:5px 14px;font-size:.87rem}.rigging-chip:hover{background:color-mix(in srgb, var(--text-1) 18%, transparent)}.rigging-chip.active{background:var(--accent);color:#fff;border-color:#0000;font-weight:600}.place-detail-rigging{align-items:flex-start;gap:6px;padding:6px 0 2px;display:flex}.rigging-detail-chips{flex-wrap:wrap;gap:5px;display:flex}.rigging-detail-chip{background:var(--accent-dim);border:1px solid var(--accent-glow);color:var(--accent);border-radius:20px;padding:2px 10px;font-size:.78rem;font-weight:600}.fixtures-editor{flex-direction:column;gap:8px;padding:10px 14px 4px;display:flex}.fixtures-selected{flex-direction:column;gap:4px;display:flex}.fixture-row{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:5px 8px;display:flex}.fixture-row-name{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.fixture-mfr{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;overflow:hidden}.fixture-model{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:500;overflow:hidden}.fixture-count-ctrl{flex-shrink:0;align-items:center;gap:4px;display:flex}.fixture-cnt-btn{border:1px solid var(--border);background:var(--bg-3);width:26px;height:26px;color:var(--text-1);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:1rem;transition:background .15s;display:flex}.fixture-cnt-btn:hover{background:var(--accent-dim);border-color:var(--accent-glow);color:var(--accent)}.fixture-cnt{color:var(--accent);text-align:center;min-width:26px;font-size:.9rem;font-weight:700}.fixture-remove-btn{width:22px;height:22px;color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;transition:background .15s,color .15s;display:flex}.fixture-remove-btn:hover{color:#f44;background:#f442}.fixtures-search-wrap{position:relative}.fixtures-search-row{align-items:center;gap:6px;display:flex}.fixtures-search-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-1);box-sizing:border-box;border-radius:8px;outline:none;flex:1;width:100%;padding:7px 10px;font-size:.88rem}.fixtures-search-input:focus{border-color:var(--accent)}.fixtures-spinner{flex-shrink:0;font-size:.9rem}.fixtures-results{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;max-height:260px;overflow:hidden auto;box-shadow:0 6px 24px #00000080}.fixtures-result-item{cursor:pointer;text-align:left;width:100%;color:var(--text-1);background:0 0;border:none;align-items:flex-start;gap:6px;padding:8px 12px;transition:background .12s;display:flex}.fixtures-result-item:hover:not(:disabled){background:var(--bg-hover)}.fixtures-result-item.added{opacity:.5;cursor:default}.res-mfr{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;min-width:80px;font-size:.72rem;font-weight:600}.res-sep{color:var(--text-3);flex-shrink:0;font-size:.8rem}.res-name{white-space:normal;overflow-wrap:anywhere;word-break:break-word;flex:1;min-width:0;font-size:.88rem;font-weight:500;line-height:1.3}.res-mfr{padding-top:1px;line-height:1.3}.res-added-badge{color:var(--accent);flex-shrink:0;font-size:.75rem}.fixtures-no-results{color:var(--text-3);margin:0;padding:6px 2px 0;font-size:.8rem}.fixtures-manual{border-top:1px solid var(--border-soft);flex-direction:column;gap:6px;margin-top:2px;padding-top:8px;display:flex}.fixtures-manual-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-3);font-size:.7rem;font-weight:600}.fixtures-manual-row{align-items:center;gap:6px;display:flex}.fixtures-manual-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-1);box-sizing:border-box;border-radius:8px;outline:none;padding:6px 9px;font-size:.82rem}.fixtures-manual-input:focus{border-color:var(--accent)}.fixtures-manual-input::placeholder{color:var(--text-3)}.fixtures-manual-name{flex:2;min-width:0}.fixtures-manual-mfr{flex:1;min-width:0}.fixtures-manual-add{border:1px solid var(--accent);width:32px;height:32px;color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;transition:all .12s;display:flex}.fixtures-manual-add:hover:not(:disabled){background:var(--accent);color:#fff}.fixtures-manual-add:disabled{opacity:.3;cursor:default}.console-selector{border-top:1px solid var(--border-soft);flex-direction:column;gap:8px;margin-top:4px;padding:10px 14px 12px;display:flex}.console-selector-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-3);font-size:.7rem;font-weight:600}.console-chips{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.console-chip{border:1px solid var(--border);color:var(--text-2);cursor:pointer;text-align:center;background:0 0;border-radius:20px;padding:5px 8px;font-size:.8rem;font-weight:500;transition:all .12s}.console-chip:hover{border-color:var(--accent);color:var(--accent)}.console-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.console-custom-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-1);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:5px 9px;font-size:.82rem}.console-custom-input:focus{border-color:var(--accent)}.console-custom-input::placeholder{color:var(--text-3)}.place-detail-fixtures{padding:6px 0 2px}.console-detail{flex-direction:column;align-items:flex-start;gap:5px;margin-top:6px;display:flex}.console-detail-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-3);flex-shrink:0;align-items:center;gap:5px;font-size:.7rem;font-weight:600;display:inline-flex}.console-detail-chips{flex-wrap:wrap;gap:4px;display:flex}.console-detail-chip{background:color-mix(in srgb, var(--light) 16%, transparent);color:var(--light);border:1px solid color-mix(in srgb, var(--light) 38%, transparent);border-radius:20px;padding:2px 9px;font-size:.76rem;font-weight:500}.console-detail-chip--custom{background:color-mix(in srgb, var(--text-3) 12%, transparent);color:var(--text-2);border-color:var(--border)}.console-detail--sound{padding:6px 0 2px}.console-detail-chip--sound{background:color-mix(in srgb, var(--green) 15%, transparent);color:var(--green);border-color:color-mix(in srgb, var(--green) 35%, transparent)}.balcony-detail-chip{background:color-mix(in srgb, var(--text-2) 22%, transparent);color:var(--text-1);border-color:color-mix(in srgb, var(--text-2) 40%, var(--border));font-weight:600}.console-pick{flex-direction:column;gap:6px;margin-top:8px;display:flex}.console-pick-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-3);font-size:.7rem;font-weight:600}.console-pick-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.console-pick-chip{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 32%, transparent);border-radius:20px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:.8rem;font-weight:500;display:inline-flex}.console-pick-chip-x{background:color-mix(in srgb, var(--accent) 22%, transparent);width:16px;height:16px;color:var(--accent);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.7rem;line-height:1;transition:background .15s;display:inline-flex}.console-pick-chip-x:hover{background:color-mix(in srgb, var(--accent) 40%, transparent)}.fixtures-detail-list{flex-direction:column;gap:5px;margin-top:6px;display:flex}.fixture-detail-row{flex-direction:column;gap:1px;display:flex}.fixture-detail-line{align-items:baseline;gap:7px;display:flex}.fixture-detail-count{color:var(--light);text-align:right;flex-shrink:0;min-width:26px;font-size:.82rem;font-weight:700}.fixture-detail-info{flex-direction:column;gap:1px;min-width:0;display:flex}.fixture-detail-name{color:var(--text-1);flex-direction:column;font-size:.88rem;font-weight:500;line-height:1.3;display:flex}.fixture-detail-mfr{color:var(--text-3);font-size:.74rem;font-weight:600}.light-conn-field{padding:4px 14px 8px}.light-conn-tag{color:var(--light);font-weight:700}.fixture-detail-mfr{color:var(--text-3);font-size:.72rem;line-height:1.2}.sound-editor{flex-direction:column;gap:8px;display:flex}.sound-brands{flex-direction:column;gap:4px;display:flex}.sound-brand-row{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:5px 10px;font-size:.88rem;transition:background .15s,border-color .15s;display:flex}.sound-brand-row:hover{background:var(--bg-hover)}.sound-brand-row.active{background:var(--accent-dim);border-color:var(--accent-glow);color:var(--accent)}.sound-brand-row input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}.sound-brand-label{font-weight:500}.sound-custom-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-1);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:7px 10px;font-size:.88rem}.sound-custom-input:focus{border-color:var(--accent)}.place-detail-sound{flex-direction:column;align-items:flex-start;gap:5px;padding:6px 0 2px;display:flex}.sound-detail-chips{flex-wrap:wrap;gap:5px;display:flex}.sound-detail-chip{background:color-mix(in srgb, var(--green) 15%, transparent);border:1px solid color-mix(in srgb, var(--green) 35%, transparent);color:var(--green);border-radius:20px;padding:2px 9px;font-size:.76rem;font-weight:500}.sound-detail-chip--custom{background:var(--bg-elevated);border-color:var(--border);color:var(--text-2);font-weight:400}.access-section{border:1px solid var(--border);border-radius:10px;overflow:hidden}.access-section-header{cursor:pointer;background:var(--bg-elevated);-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:11px 14px;display:flex}.access-section-header input[type=checkbox]{cursor:pointer;flex-shrink:0;width:15px;height:15px;margin:0}.access-section-title-wrap{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.access-section-title{text-transform:uppercase;letter-spacing:.7px;color:var(--text-2);font-size:.82rem;font-weight:600}.access-section-summary{color:var(--text-3);text-transform:none;letter-spacing:0;flex-wrap:wrap;align-items:center;gap:4px;font-size:.72rem;font-weight:400;display:flex}.access-section-summary-tags{flex-wrap:wrap;gap:3px;display:flex}.access-section-summary-tags span{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent);border-radius:10px;padding:0 6px;font-size:.68rem;font-weight:500}.access-section-arrow{color:var(--text-3);flex-shrink:0;font-size:.65rem}.access-editor{background:var(--bg-surface);border-top:1px solid var(--border-soft);flex-direction:column;gap:11px;padding:12px 14px;display:flex}.access-row{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.access-row-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;font-size:.78rem;font-weight:600}.access-toggle-group,.access-diff-group{flex-wrap:wrap;gap:4px;width:100%;display:flex}.access-toggle-btn,.access-diff-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);border-radius:20px;padding:4px 14px;font-size:.8rem;font-weight:500}.access-diff-btn{text-align:center;min-width:32px;padding:4px 10px}.access-toggle-btn:hover,.access-diff-btn:hover{border-color:var(--accent);color:var(--accent)}.access-toggle-btn.active,.access-diff-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.access-people-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.access-people-counter{align-items:center;gap:4px;display:flex}.access-note-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:-4px;font-size:.72rem;font-weight:600;display:block}.access-note-input{box-sizing:border-box;background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);resize:vertical;transition:border-color var(--transition);border-radius:8px;outline:none;min-width:0;padding:9px 12px;font-family:inherit;font-size:.9rem}.access-note-input:focus{border-color:var(--accent)}.access-photo-upload{background:var(--bg-elevated);border:1px dashed var(--border);cursor:pointer;color:var(--text-2);transition:all var(--transition);border-radius:8px;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;padding:9px 14px;font-size:.86rem;display:inline-flex}.access-photo-upload:hover{border-color:var(--blue);color:var(--blue)}.access-photo-upload.uploading{opacity:.7;cursor:default}.access-photo-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.access-photo-item{position:relative}.access-photo-item .access-photo-remove{color:#fff;cursor:pointer;background:#000000a6;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:.8rem;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.access-photo-item .access-photo-remove:hover{background:var(--accent)}.access-photo-thumb{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:56px;height:56px}.access-photo-remove{border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--transition);background:0 0;border-radius:7px;padding:6px 10px;font-size:.82rem}.access-photo-remove:hover{border-color:var(--accent);color:var(--accent)}.access-photo-link{background:var(--bg-elevated);border:1px solid var(--border);color:var(--blue);cursor:pointer;transition:all var(--transition);border-radius:8px;align-self:flex-start;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;font-size:.85rem;font-weight:500;display:inline-flex}.access-photo-link:hover{border-color:var(--blue);background:#58a6ff14}.access-photo-strip{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.access-photo-thumb-btn{border:1px solid var(--border);cursor:pointer;background:var(--bg-elevated);width:72px;height:72px;transition:border-color var(--transition);border-radius:10px;padding:0;overflow:hidden}.access-photo-thumb-btn:hover{border-color:var(--blue)}.access-photo-thumb-btn img{object-fit:cover;width:100%;height:100%;display:block}.place-detail-access{padding:6px 0 4px}.access-detail-body{flex-direction:column;gap:6px;margin-top:6px;display:flex}.access-detail-chips{flex-wrap:wrap;gap:5px;display:flex}.access-chip{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.access-chip--diff{gap:6px}.diff-dot{background:var(--border);border-radius:50%;width:7px;height:7px;display:inline-block}.diff-dot--on{background:var(--accent)}.access-detail-note{color:var(--text-2);margin:0;font-size:.83rem;line-height:1.45}.contacts-editor{flex-direction:column;gap:10px;padding:10px 0 4px;display:flex}.contact-item{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.contact-item-header{justify-content:space-between;align-items:center;display:flex}.contact-item-num{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.contact-remove-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 7px;font-size:.88rem;line-height:1;transition:background .15s,color .15s}.contact-remove-btn:hover{color:#f44;background:#f443361f}.contact-fields{gap:8px;display:flex}.contact-firma-input,.contact-email-input{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);box-sizing:border-box;border-radius:6px;flex:1;min-width:0;padding:6px 10px;font-size:.88rem}.contact-firma-input:focus,.contact-email-input:focus{border-color:var(--accent);outline:none}.contact-card-email{color:var(--blue);font-size:.8rem;text-decoration:none}.contact-card-email:hover{text-decoration:underline}.contact-name-input,.contact-phone-input{border:1px solid var(--border);background:var(--bg-1);color:var(--text-1);border-radius:6px;flex:1;min-width:0;padding:6px 10px;font-size:.88rem}.contact-name-input:focus,.contact-phone-input:focus{border-color:var(--accent);outline:none}.contact-tags-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.contact-tag-btn{border:1.5px solid var(--border);color:var(--text-2);cursor:pointer;background:0 0;border-radius:12px;padding:3px 11px;font-size:.78rem;transition:all .15s}.contact-tag-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.contact-tag-btn:hover:not(.active){border-color:var(--accent);color:var(--accent)}.contact-tag-custom{background:var(--accent-subtle,#6366f11f);border:1.5px solid var(--accent-border,#6366f159);color:var(--accent);border-radius:12px;align-items:center;gap:3px;padding:3px 8px 3px 10px;font-size:.78rem;display:inline-flex}.contact-tag-remove{color:inherit;cursor:pointer;opacity:.65;background:0 0;border:none;padding:0 2px;font-size:1rem;line-height:1;transition:opacity .15s}.contact-tag-remove:hover{opacity:1}.contact-tag-btn--vlastni{color:var(--text-3)!important;border-style:dashed!important}.contact-tag-btn--vlastni:hover{border-style:solid!important;border-color:var(--accent)!important;color:var(--accent)!important}.contact-custom-inline-input{border:1.5px solid var(--accent);background:var(--bg-1);color:var(--text-1);border-radius:12px;outline:none;width:110px;min-width:0;padding:3px 10px;font-size:.78rem}.contacts-add-btn{border:2px dashed color-mix(in srgb, var(--blue) 65%, transparent);color:var(--blue);cursor:pointer;text-align:center;background:0 0;border-radius:12px;width:100%;padding:14px 16px;font-size:.95rem;font-weight:600;transition:all .15s}.contacts-add-btn:hover{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 10%, transparent)}.place-detail-contacts{margin-top:10px}.contact-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:2px;margin-top:4px;padding:5px 10px;display:flex}.contact-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.contact-card-name{color:var(--text-1);flex:1;min-width:0;font-size:.86rem;font-weight:600}.contact-card-noname{color:var(--text-3);font-weight:400}.contact-card-tags{flex-wrap:wrap;gap:3px;display:flex}.contact-detail-tag{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);white-space:nowrap;border-radius:10px;padding:1px 7px;font-size:.7rem;font-weight:500;display:inline-block}.contact-card-meta{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.contact-card-firma{color:var(--text-2);font-size:.78rem}.contact-card-firma--right{margin-left:auto}.contact-card-sep{color:var(--text-3);font-size:.75rem}.contact-card-phone{color:var(--accent);font-size:.8rem;text-decoration:none}.contact-card-phone:hover{text-decoration:underline}.contact-collapsed{cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:2px 0;transition:background .1s;display:flex}.contact-collapsed:hover{background:var(--bg-1)}.contact-collapsed-preview{flex:1;grid-template-columns:90px 85px 1fr;align-items:center;gap:0 8px;min-width:0;display:grid;overflow:hidden}.contact-preview-tags-col{align-items:center;gap:3px;min-width:0;display:flex;overflow:hidden}.contact-preview-tag{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);white-space:nowrap;text-overflow:ellipsis;border-radius:10px;padding:2px 8px;font-size:.74rem;font-weight:500;display:inline-block;overflow:hidden}.contact-preview-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:500;overflow:hidden}.contact-preview-phone{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.contact-preview-empty{color:var(--text-3);font-size:.82rem;font-style:italic}.contact-item-header-actions{align-items:center;gap:4px;display:flex}.contact-collapse-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 7px;font-size:.8rem;line-height:1;transition:background .15s,color .15s}.contact-collapse-btn:hover{background:var(--bg-1);color:var(--text-1)}.data-block{border-bottom:1px solid var(--border-soft);padding:20px 0}.data-block:last-child{border-bottom:none}.data-block-title{color:var(--text-1);margin-bottom:6px;font-size:1rem;font-weight:700}.data-block-desc{color:var(--text-2);margin-bottom:14px;font-size:.85rem}.data-export-btns{flex-direction:column;gap:10px;display:flex}.data-export-item{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.data-export-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:10px 18px;font-size:.9rem;text-decoration:none;display:inline-flex}.data-export-zip{border-color:var(--blue);color:var(--blue);background:0 0}.data-export-zip:hover{background:#58a6ff1a}.data-export-csv{border-color:var(--green);color:var(--green);background:0 0}.data-export-csv:hover{background:#3fb9501a}.data-export-note{color:var(--text-2);font-size:.8rem}.data-import-modes{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.data-mode-label{cursor:pointer;color:var(--text-1);align-items:flex-start;gap:10px;font-size:.9rem;line-height:1.4;display:flex}.data-mode-label input[type=radio]{accent-color:var(--accent);flex-shrink:0;margin-top:3px}.data-mode-warn{color:#f59e0b;font-weight:600}.data-import-btns{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.data-import-btn{white-space:nowrap}.data-import-json{border-color:var(--border);color:var(--text-2);background:0 0}.data-import-json:hover{border-color:var(--accent);color:var(--accent)}.data-status-ok{color:var(--green);background:#3fb9501a;border:1px solid #3fb9504d;border-radius:8px;padding:8px 12px;font-size:.9rem}.data-status-error{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;padding:8px 12px;font-size:.9rem}.map-filter-btn{position:relative}.map-filter-btn.has-filters{border-color:var(--accent);color:var(--accent)}.map-filter-badge{background:var(--accent);color:#fff;pointer-events:none;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px}.map-filter-panel{--mf-page:#1c1c1e;--mf-card:#2c2c2e;--mf-chip:#3a3a3c;--mf-divider:#3a3a3c;background:var(--mf-page);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:14px;width:min(540px,100vw - 120px);max-height:58vh;padding:14px;animation:.12s fadeIn;display:flex;overflow-y:auto}[data-theme=light] .map-filter-panel{--mf-page:#f2f2f7;--mf-card:#fff;--mf-chip:#e9e9ef;--mf-divider:#e4e4ea}.map-filter-card{background:var(--mf-card);border-radius:14px;padding:11px 12px}.map-filter-card .map-filter-cap-body{padding:2px 0 0}.map-filter-toggles-card{background:var(--mf-card);border-radius:14px;overflow:hidden}.map-filter-toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex;position:relative}.map-filter-toggle-row+.map-filter-toggle-row:before{content:"";background:var(--mf-divider);height:1px;position:absolute;top:0;left:13px;right:0}.map-filter-toggle-label{color:var(--text-1);align-items:center;gap:9px;min-width:0;font-size:.92rem;display:inline-flex}.ios-switch{appearance:none;cursor:pointer;background:#78788050;border-radius:25px;flex:none;width:42px;height:25px;margin:0;transition:background .18s;position:relative}.ios-switch:after{content:"";background:#fff;border-radius:50%;width:21px;height:21px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000059}.ios-switch:checked{background:#34c759}.ios-switch:checked:after{transform:translate(17px)}.map-filter-cap-toggle{width:100%;color:var(--text-1);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:2px 0 8px;display:flex}.map-filter-cap-sum-inline{color:var(--text-2);font-size:.82rem}.map-filter-cap-toggle.open .map-filter-cap-arrow{transform:rotate(180deg)}.map-filter-panel.has-detail{width:min(300px,100vw - 500px);max-height:50vh}.map-filter-header{color:var(--text-1);justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700;display:flex}.map-filter-clear{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:.8rem}.map-filter-clear:hover{text-decoration:underline}.map-filter-group{flex-direction:column;gap:7px;display:flex}.map-filter-group-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;padding-left:13px;font-size:.72rem;font-weight:600;display:inline-flex}.map-filter-chips{flex-wrap:wrap;gap:5px;display:flex}.map-filter-chip{background:var(--mf-chip,var(--bg-elevated));color:var(--text-1);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:1px solid #0000;border-radius:20px;align-items:center;gap:.34em;padding:5px 12px;font-size:.8rem;display:inline-flex}.map-filter-chip:hover{border-color:var(--accent)}.map-filter-chip.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:600}.map-filter-count-row{color:var(--text-2);align-items:center;gap:7px;margin-top:6px;font-size:.78rem;display:flex}.map-filter-count-label{min-width:68px}.map-filter-count-value{text-align:center;min-width:22px;color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}.map-filter-cap-head{width:100%;color:var(--text-1);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:2px 0;display:flex}.map-filter-cap-sum{color:var(--accent);margin-left:auto;font-size:.74rem;font-weight:600}.map-filter-cap-arrow{transition:transform var(--transition);color:var(--accent);flex:none;margin-left:auto}.map-filter-cap-sum~.map-filter-cap-arrow{margin-left:0}.map-filter-cap-head.open .map-filter-cap-arrow{transform:rotate(180deg)}.map-filter-cap-head--tap{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;padding:8px 10px}.map-filter-cap-head--tap.open{border-bottom-color:#0000;border-radius:10px 10px 0 0}.map-filter-cap-head:not(.map-filter-cap-head--tap){cursor:default}.map-filter-cap-body{padding:4px 2px 0}.map-filter-cap-body--boxed{border:1px solid var(--border);background:var(--bg-elevated);border-top:0;border-radius:0 0 10px 10px;padding:2px 10px 10px}.map-filter-cap-row{color:var(--text-2);justify-content:space-between;align-items:baseline;gap:10px;margin-top:6px;font-size:.8rem;display:flex}.map-filter-cap-val{font-variant-numeric:tabular-nums}.map-filter-cap-val.on{color:var(--accent);font-weight:600}.map-filter-cap-note{color:var(--text-3);margin-top:4px;font-size:.7rem;line-height:1.35}.map-filter-cap-clear{margin-top:6px}.range-slider{touch-action:none;cursor:pointer;height:26px;padding:0 11px;position:relative}.range-slider-rail{height:100%;position:relative}.range-slider-track,.range-slider-fill{border-radius:4px;height:4px;position:absolute;top:50%;transform:translateY(-50%)}.range-slider-track{background:var(--border);left:0;right:0}.range-slider-fill{background:var(--accent)}.range-slider-knob{background:var(--bg-surface);border:2px solid var(--accent);width:22px;height:22px;box-shadow:var(--shadow-sm);border-radius:50%;margin:-11px 0 0 -11px;position:absolute;top:50%}.range-slider-knob:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.map-filter-check-label{color:var(--text-1);cursor:pointer;align-items:center;gap:8px;font-size:.88rem;display:flex}.map-filter-check-label input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}.map-filter-footer{color:var(--text-2);text-align:right;border-top:1px solid var(--border-soft);padding-top:4px;font-size:.8rem}.theme-map-toggle-row{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 18px;display:flex}.theme-map-toggle-label{color:var(--text-1);font-size:.95rem;font-weight:600}.theme-map-toggle-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-1);background:0 0;border-radius:20px;align-items:center;gap:10px;padding:6px 14px 6px 8px;font-size:.9rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.theme-map-toggle-btn:hover{border-color:var(--accent);background:var(--bg-hover)}.theme-map-toggle-track{background:var(--border);border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.theme-map-toggle-btn.dark .theme-map-toggle-track{background:var(--accent)}.theme-map-toggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.theme-map-toggle-btn.dark .theme-map-toggle-thumb{transform:translate(18px)}.edit-location-section{margin-top:16px;margin-bottom:0}.edit-modal-divider{background:var(--border);height:1px;margin:10px 0}.edit-location-hint{color:var(--text-2);font-size:.75rem;font-weight:400}.edit-location-map{border:1px solid var(--border);border-radius:8px;margin:6px 0;overflow:hidden}.edit-location-address{color:var(--text-2);min-height:1.2em;font-size:.78rem}.view-tabs{background:#1c1c1e;border:0;border-radius:999px;flex-shrink:0;gap:0;padding:4px;display:flex;position:relative}.view-tabs:before{content:"";z-index:0;pointer-events:none;background:#000;border-radius:999px;width:calc(50% - 4px);transition:transform .28s cubic-bezier(.4,0,.2,1);position:absolute;top:4px;bottom:4px;left:4px}.view-tabs:has(.view-tab:nth-child(2).active):before{transform:translate(100%)}.view-tab{z-index:1;text-align:center;min-width:96px;color:var(--text-1);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;flex:1 1 0;padding:7px 24px;font-size:.9rem;font-weight:500;transition:color .22s;position:relative}.view-tab:hover{color:var(--text-1);background:0 0}.view-tab.active,.view-tab.active:hover{color:#fff;background:0 0;font-weight:700}[data-theme=light] .view-tabs{background:#e9e9ec}[data-theme=light] .view-tabs:before{background:#fff}[data-theme=light] .view-tab{color:#000}[data-theme=light] .view-tab.active,[data-theme=light] .view-tab.active:hover{color:#000;background:0 0}.list-detail-overlay{z-index:1200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000009e;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.list-detail-modal{border-radius:14px;width:100%;max-width:480px;max-height:calc(100dvh - 48px);position:relative;overflow-y:auto;box-shadow:0 24px 64px #000000b3}.list-detail-modal .place-detail{border-left:none;border-radius:14px;width:100%;max-height:none;position:static;overflow:visible}.list-detail-modal .place-detail-close{z-index:2;width:36px;height:36px;font-size:1rem;position:absolute;top:12px;right:12px}.list-detail-modal .place-detail-share{z-index:2;width:36px;height:36px;font-size:1rem;position:absolute;top:12px;right:56px}.list-detail-modal .place-detail-hall-back{z-index:2;width:36px;height:36px;position:absolute;top:12px;left:12px}.list-detail-modal .place-kebab-wrap{z-index:2;position:absolute;top:12px;right:100px}.list-detail-modal .place-detail-kebab{width:36px;height:36px}.pgv-wrap{background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.pgv-toolbar{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}@media (width<=768px){.pgv-toolbar{flex-wrap:nowrap;gap:6px;padding:8px 10px}.pgv-search{flex:auto;order:0;min-width:0;max-width:none;transition:flex .2s}:is(.pgv-toolbar:has(.pgv-search:focus-within) .pgv-search,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-search){flex:10 auto}:is(.pgv-toolbar:has(.pgv-search:focus-within) .pgv-btn-text,.pgv-toolbar:has(.pgv-search:focus-within) .pgv-proj-arrow,.pgv-toolbar:has(.pgv-search:focus-within) .pgv-count,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-btn-text,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-proj-arrow,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-count){display:none}.pgv-search input{font-size:16px}:is(.pgv-toolbar:has(.pgv-search:focus-within) .pgv-proj-btn,.pgv-toolbar:has(.pgv-search:focus-within) .pgv-add-btn,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-proj-btn,.pgv-toolbar:has(.pgv-search input:not(:placeholder-shown)) .pgv-add-btn){flex-shrink:0;min-width:36px;padding:0 10px}}.pgv-search{flex:auto;min-width:0;position:relative}.pgv-search input{background:var(--bg-surface);border:1.5px solid var(--accent);width:100%;color:var(--text-1);transition:background-color var(--transition), border-color var(--transition);border-radius:999px;outline:none;padding:11px 34px 11px 40px;font-size:.95rem}.pgv-search input::placeholder{color:var(--text-2)}.pgv-search input:focus{border-color:var(--accent)}.pgv-search-ico{color:var(--text-2);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.pgv-search-clear{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.pgv-search-clear:hover{color:var(--text-1)}.pgv-form-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:600;background:#0000009e;justify-content:center;align-items:center;padding:24px 16px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.pgv-form-modal{border-radius:16px;width:100%;max-width:520px;max-height:calc(100dvh - 48px);animation:.15s scaleIn;overflow-y:auto;box-shadow:0 24px 64px #000000b3}.pgv-form-modal .add-place-panel{width:100%;max-height:none;box-shadow:none;border-left:none;border-radius:16px;position:static;overflow:visible}.pgv-add-btn{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;height:34px;transition:opacity var(--transition), box-shadow var(--transition);box-shadow:0 2px 8px var(--accent-glow);border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;padding:0 14px;font-size:.83rem;font-weight:600;display:flex}.pgv-add-btn:hover{opacity:.88}.pgv-add-btn.active{opacity:.7}.pgv-add-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:500;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.pgv-add-modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;width:100%;max-width:480px;padding:28px 28px 24px;animation:.15s scaleIn;position:relative;box-shadow:0 24px 64px #0009}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.pgv-add-modal-title{color:var(--text-1);margin-bottom:14px;font-size:.95rem;font-weight:600}.pgv-add-modal-close{color:var(--text-3);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:1rem;line-height:1;position:absolute;top:14px;right:14px}.pgv-add-modal-close:hover{background:var(--bg-hover);color:var(--text-1)}.pgv-proj-filter{flex-shrink:0;position:relative}.pgv-proj-btn{background:var(--bg-surface);border:1.5px solid var(--accent);color:var(--text-1);cursor:pointer;white-space:nowrap;width:44px;height:44px;transition:all var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;gap:0;padding:0;font-size:.92rem;font-weight:600;display:inline-flex}.pgv-proj-btn>span:not(.pgv-proj-ico),.pgv-proj-btn .pgv-proj-arrow{display:none}.pgv-proj-arrow{color:var(--text-2);transition:transform .2s}.pgv-proj-arrow.open{transform:rotate(180deg)}.pgv-proj-btn:hover,.pgv-proj-btn.open{background:color-mix(in srgb, var(--accent) 14%, transparent)}.pgv-proj-btn.active{background:color-mix(in srgb, var(--accent) 20%, transparent);border-color:var(--accent);background:var(--accent-dim)}.pgv-proj-arrow{color:var(--text-3);font-size:.65rem}.pgv-proj-dropdown{background:var(--bg-elevated);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow);z-index:200;border-radius:10px;padding:4px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.pgv-proj-option>span,.pgv-proj-btn>span{align-items:center;gap:6px;display:inline-flex}.pgv-proj-option{width:100%;color:var(--text-1);cursor:pointer;text-align:left;transition:background var(--transition);background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:7px 10px;font-size:.83rem;display:flex}.pgv-proj-option:hover{background:var(--bg-hover)}.pgv-proj-option.active{background:var(--accent-dim)}.pgv-proj-label{color:var(--text-2);flex:1;font-size:.78rem}.pgv-proj-divider,.proj-filter-divider{background:var(--border);height:1px;margin:4px 6px}.pgv-date-range{flex-shrink:0;align-items:center;gap:6px;display:flex}.pgv-date-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.6px;font-size:.75rem;font-weight:600}.pgv-date-input{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);transition:border-color var(--transition);color-scheme:inherit;border-radius:8px;outline:none;padding:6px 10px;font-size:.8rem}.pgv-date-input:focus{border-color:var(--accent)}.pgv-date-clear{color:var(--text-3);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:0 2px;font-size:1.1rem;line-height:1}.pgv-date-clear:hover{color:var(--accent)}.pgv-count{color:var(--text-2);white-space:nowrap;font-size:.78rem}.pgv-grid{padding:16px 20px;padding-bottom:max(16px, env(safe-area-inset-bottom));flex:1;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-content:start;gap:10px;display:grid;overflow-y:auto}.pgv-item{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;transition:all var(--transition);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex;position:relative}.pgv-item:hover{border-color:var(--accent-glow);background:var(--bg-elevated)}.pgv-item.active{border-color:var(--accent);background:var(--accent-dim)}.pgv-thumb{background:var(--bg-elevated);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex;overflow:hidden}.pgv-thumb img,.pgv-thumb .pgv-thumb-sv{object-fit:cover;width:100%;height:100%}.pgv-thumb-icon{font-size:1.6rem;line-height:1}.pgv-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.pgv-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:600;overflow:hidden}.pgv-cat{border:1px solid;border-radius:20px;align-items:center;gap:.32em;width:fit-content;padding:1px 7px;font-size:.7rem;font-weight:600;display:inline-flex}.place-halls{color:var(--blue);font-weight:600}.pgv-halls{color:var(--blue);vertical-align:1px;margin-left:6px;font-size:.72rem;font-weight:600;display:inline-block}.map-preview-halls{color:var(--blue);font-weight:600}.pgv-addr{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.pgv-edit{cursor:pointer;opacity:0;transition:opacity var(--transition);background:0 0;border:none;flex-shrink:0;padding:4px;font-size:.9rem}.pgv-item:hover .pgv-edit,.pgv-item.active .pgv-edit{opacity:1}.pgv-empty{color:var(--text-3);text-align:center;grid-column:1/-1;padding:40px 0;font-size:.9rem}.pgv-pagination{padding:12px 20px;padding-bottom:max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--bg-surface);flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:3px;display:flex;position:static}.pgv-page-arrows,.pgv-page-numbers{align-items:center;gap:2px;display:flex}.pgv-page-arrows{gap:1px}.pgv-page-arrows+.pgv-page-numbers,.pgv-page-numbers+.pgv-page-arrows{margin-left:4px}.pgv-page-btn{color:var(--text-1);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:.85rem;font-weight:500;transition:background .12s,color .12s,transform .1s;display:flex}.pgv-page-btn:hover:not(:disabled):not(.active){background:var(--accent-dim);color:var(--accent)}.pgv-page-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 10px var(--accent-glow);border-radius:8px;font-weight:700}.pgv-page-btn:active:not(:disabled){transform:scale(.92)}.pgv-page-btn:disabled{color:var(--text-3);cursor:default}.pgv-page-btn.pgv-arrow{color:var(--text-2);border-radius:8px;font-size:1.05rem}.pgv-page-btn.pgv-arrow:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.pgv-page-btn.pgv-arrow:disabled{color:var(--text-3)}.pgv-arrows-sep{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 2px}.pgv-page-ellipsis{color:var(--text-3);text-align:center;-webkit-user-select:none;user-select:none;letter-spacing:1px;flex-shrink:0;width:28px;font-size:.82rem}.pgv-page-info{color:var(--text-3);white-space:nowrap;letter-spacing:.2px;margin-left:10px;font-size:.74rem}.portal-back-btn{background:var(--bg-3);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.1rem;text-decoration:none;transition:background .15s;display:flex}.portal-back-btn:hover{background:var(--bg-4)}.save-error-bar{z-index:9999;color:#fff;cursor:pointer;background:#f85149;border-radius:8px;align-items:center;gap:12px;max-width:90vw;padding:10px 20px;font-size:.9rem;font-weight:500;display:flex;position:fixed;top:52px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000059}.save-error-dismiss{opacity:.7;font-size:.85rem}.addr-book{flex-direction:column;gap:12px;display:flex}.addr-search-wrap{background:var(--bg-elevated);border:1px solid var(--border);transition:border-color var(--transition);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex;position:relative}.addr-search-wrap:focus-within{border-color:var(--accent)}.addr-search-icon{opacity:.5;flex-shrink:0;font-size:.85rem}.addr-search-input{color:var(--text-1);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-family:inherit;font-size:.9rem}.addr-search-input::placeholder{color:var(--text-3)}.addr-search-clear{color:var(--text-3);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:.95rem;line-height:1}.addr-search-clear:hover{color:var(--accent)}.addr-count{color:var(--text-3);letter-spacing:.3px;font-size:.75rem;font-weight:500}.addr-empty{color:var(--text-3);text-align:center;padding:20px 0;font-size:.88rem;font-style:italic}.addr-list{flex-direction:column;gap:6px;display:flex}.addr-card{background:var(--bg-elevated);border:1px solid var(--border);transition:border-color var(--transition);border-radius:10px;flex-direction:column;gap:4px;padding:10px 14px;display:flex}.addr-card:hover{border-color:var(--accent-glow)}.addr-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.addr-del-btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-2);cursor:pointer;transition:border-color var(--transition), background var(--transition), color var(--transition);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:8px 11px;font-size:.85rem;display:inline-flex}.addr-del-btn:hover{border-color:var(--accent);color:#ef4444;background:#ef44441a;border-color:#ef444488}.addr-card-name{color:var(--text-1);font-size:.92rem;font-weight:600}.addr-card-noname{color:var(--text-3);font-weight:400}.addr-card-tags{flex-wrap:wrap;gap:4px;display:flex}.addr-tag{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);white-space:nowrap;border-radius:10px;padding:1px 7px;font-size:.7rem;font-weight:500;display:inline-block}.addr-card-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.addr-phone{color:var(--accent);white-space:nowrap;font-size:.83rem;text-decoration:none}.addr-phone:hover{text-decoration:underline}.addr-email{color:var(--blue);white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:.83rem;text-decoration:none;overflow:hidden}.addr-email:hover{text-decoration:underline}.addr-firma{color:var(--text-2);white-space:nowrap;font-size:.8rem}.addr-place-btn{color:var(--text-3);cursor:pointer;text-align:left;transition:color var(--transition);background:0 0;border:none;margin-top:2px;padding:0;font-size:.78rem}.addr-place-btn:hover{color:var(--blue)}.place-item,.search-results li,.place-search-results li{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.landing{-webkit-overflow-scrolling:touch;z-index:1000;color:var(--text-1);position:fixed;inset:0;overflow-y:auto}@media (prefers-color-scheme:dark){.landing{--text-1:#f3f4f7;--text-2:#9ba3b0;--text-3:#5a626f;--bg-elevated:#150b0e;--bg-hover:#1e1115;--border:#2c1b20;--border-soft:#150b0e;--accent:#f0556a;--accent-dim:#f0556a26;--accent-glow:#f0556a66;background:radial-gradient(1200px 680px at 50% -160px,#f0556a33,#0000 68%),linear-gradient(#160a0d 0%,#0a0406 40%,#000 100%)}}@media (prefers-color-scheme:light){.landing{--text-1:#241016;--text-2:#6c5f63;--text-3:#a99ca0;--bg-elevated:#fff;--bg-hover:#fbf3f4;--border:#efe1e3;--border-soft:#f4ecee;--accent:#d2304f;--accent-dim:#d2304f1a;--accent-glow:#d2304f38;background:radial-gradient(1200px 680px at 50% -160px,#d2304f21,#0000 66%),linear-gradient(#fff1f2 0%,#fbf6f7 42%,#f6f8fa 100%)}}.landing-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1080px;min-height:min(82vh,620px);margin:0 auto;padding:48px 24px 16px;display:grid;position:relative}.landing-hero:before{content:"";background:radial-gradient(ellipse at center, var(--accent-glow), transparent 70%);opacity:.45;pointer-events:none;filter:blur(46px);z-index:0;width:80%;height:55%;position:absolute;top:-8%;left:50%;transform:translate(-50%)}.landing-hero-text{z-index:1;position:relative}.landing-badge{letter-spacing:.3px;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:999px;margin-bottom:18px;padding:5px 13px;font-size:12px;font-weight:700;display:inline-block}.landing-h1{letter-spacing:-1.5px;color:var(--text-1);margin:0 0 14px;font-size:clamp(42px,7vw,66px);font-weight:800;line-height:1.02}.landing-tagline{color:var(--text-1);margin:0 0 14px;font-size:clamp(17px,2.4vw,22px);font-weight:600}.landing-lead{color:var(--text-2);max-width:30em;margin:0 0 26px;font-size:15px;line-height:1.65}.landing-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.landing-btn-ghost{color:var(--text-1);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);align-items:center;gap:6px;padding:11px 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.landing-btn-ghost:hover{background:var(--bg-hover);border-color:var(--accent-glow)}}.landing .login-card{z-index:1;justify-self:end;width:100%;max-width:380px;margin:0;position:relative}.landing-showcase{max-width:1080px;margin:0 auto;padding:8px 24px 64px}.landing-showcase .landing-section-sub{margin-bottom:16px}.iphone-mock{background:#050507;border-radius:56px;width:360px;max-width:90vw;margin:26px auto 0;padding:13px;box-shadow:0 30px 80px #0000008c,inset 0 0 0 2px #23262e,0 0 0 1px #ffffff0a}.iphone-screen{background:#000;border-radius:44px;position:relative;overflow:hidden}.showcase-shot{-webkit-user-select:none;user-select:none;border-radius:44px;width:100%;height:auto;display:block}.iphone-statusbar{z-index:4;color:#fff;pointer-events:none;background:linear-gradient(#000 62%,#0000);justify-content:space-between;align-items:center;height:40px;padding:0 26px;display:flex;position:absolute;top:0;left:0;right:0}.iphone-time{letter-spacing:.2px;margin-top:2px;font-size:14px;font-weight:600}.iphone-status-icons{align-items:center;gap:5px;margin-top:2px;display:inline-flex}.iphone-island{z-index:5;background:#000;border-radius:16px;width:104px;height:30px;position:absolute;top:9px;left:50%;transform:translate(-50%)}html.is-demo,html.is-demo *{scrollbar-width:none;-ms-overflow-style:none}html.is-demo ::-webkit-scrollbar{width:0;height:0;display:none}.showcase-row{grid-template-columns:repeat(3,1fr);align-items:start;gap:32px;max-width:1000px;margin:8px auto 0;display:grid}.showcase-card{flex-direction:column;align-items:center;display:flex}.showcase-card .iphone-mock{width:100%;max-width:300px;margin:0 0 4px}.showcase-card-label{text-align:center;margin-top:22px}.showcase-card-label h3{letter-spacing:-.2px;margin:0 0 5px;font-size:18px;font-weight:700}.showcase-card-label p{color:var(--text-2);max-width:260px;margin:0 auto;font-size:.92rem;line-height:1.5}@media (width<=760px){.showcase-row{grid-template-columns:1fr;gap:44px;max-width:320px}.showcase-card .iphone-mock{max-width:260px}}.landing-appstore{max-width:1080px;margin:0 auto;padding:28px 24px 8px}.landing-appstore-card{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 6%, var(--bg-elevated)), var(--bg-elevated) 62%);border:1px solid var(--border);border-radius:24px;align-items:center;gap:34px;padding:32px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 44px #00000024}.landing-appstore-card:before{content:"";background:radial-gradient(ellipse at center, var(--accent-glow), transparent 70%);opacity:.5;filter:blur(48px);pointer-events:none;width:52%;height:220%;position:absolute;top:-60%;left:-6%}.landing-appstore-icon{z-index:1;background:var(--bg);border:1px solid var(--border);border-radius:27px;flex-shrink:0;justify-content:center;align-items:center;width:116px;height:116px;display:flex;position:relative;box-shadow:0 12px 30px #00000038}.landing-appstore-icon img,.landing-appstore-icon .appstore-mark{object-fit:contain;width:60%;height:60%}.landing-appstore-text{z-index:1;text-align:left;flex:1;min-width:0;position:relative}.landing-appstore-badge-pill{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent);letter-spacing:.5px;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:999px;align-items:center;margin-bottom:13px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.landing-appstore-title{letter-spacing:-.5px;margin:0 0 9px;font-size:clamp(22px,3vw,28px);font-weight:800;line-height:1.18}.landing-appstore-sub{color:var(--text-2);max-width:540px;margin:0;font-size:1rem;line-height:1.55}.appstore-badges{flex-direction:column;flex-shrink:0;gap:10px;display:flex}.appstore-badge{color:#111;cursor:pointer;background:#fff;border:1px solid #00000024;border-radius:12px;flex-shrink:0;align-items:center;gap:10px;padding:9px 18px;text-decoration:none;transition:transform .1s,opacity .15s;display:inline-flex;box-shadow:0 1px 3px #00000014}.appstore-badge:hover{opacity:.88}.appstore-badge:active{transform:scale(.97)}.appstore-badge-text{flex-direction:column;align-items:flex-start;line-height:1.12;display:flex}.appstore-badge-text small{opacity:.85;font-size:10.5px}.appstore-badge-text strong{letter-spacing:-.2px;font-size:18px;font-weight:600}.appstore-badge--soon{cursor:default}.appstore-badge--soon:hover{opacity:1}.appstore-badge--soon:active{transform:none}.settings-appstore-banner--soon{cursor:default}.settings-appstore-banner--soon:hover{border-color:var(--border)}.settings-appstore-banner{background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding:15px 18px;text-decoration:none;transition:border-color .15s;display:flex}.settings-appstore-banner:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.settings-appstore-info{flex-direction:column;gap:3px;min-width:0;display:flex}.settings-appstore-info strong{color:var(--text-1);font-size:15px;font-weight:700}.settings-appstore-info small{color:var(--text-2);font-size:12.5px;line-height:1.4}.settings-appstore-banner .appstore-badge{padding:8px 14px}.settings-appstore-banner .appstore-badge-text strong{font-size:15px}@media (width<=620px){.settings-appstore-banner{flex-direction:column;align-items:stretch;gap:12px}.settings-appstore-banner .appstore-badge{justify-content:center;align-self:stretch}}.report-overlay{z-index:3000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.report-modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:20px;width:100%;max-width:360px;padding:22px;animation:.18s report-in;box-shadow:0 20px 50px #0006}@keyframes report-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.report-head{flex-direction:column;align-items:center;gap:8px;margin-bottom:14px;display:flex}.report-head-icon{color:#f59e0b}.report-head h3{margin:0;font-size:1.15rem;font-weight:800}.report-sub{color:var(--text-2);margin:0 0 10px;font-size:.88rem;display:block}.report-reasons{flex-direction:column;gap:8px;display:flex}.report-reason{text-align:left;background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:11px 14px;transition:border-color .12s;display:flex}.report-reason:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.report-reason-text{flex-direction:column;gap:2px;min-width:0;display:flex}.report-reason-text strong{color:var(--text-1);font-size:.92rem;font-weight:600}.report-reason-text small{color:var(--text-3);font-size:.76rem}.report-reason-chev{color:var(--text-3);flex-shrink:0}.report-cancel{color:var(--text-2);cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:.9rem;display:block}.report-back-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.report-back-btn{color:var(--text-1);cursor:pointer;background:0 0;border:0;padding:2px;display:inline-flex}.report-back-reason{font-size:.95rem;font-weight:700}.report-textarea{resize:vertical;border:1px solid var(--border);background:var(--bg);width:100%;min-height:120px;color:var(--text-1);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px;font-size:16px}.report-hint{color:var(--text-3);margin-top:6px;font-size:.76rem;display:block}.report-error{color:var(--accent);margin-top:6px;font-size:.8rem;display:block}.report-actions{gap:10px;margin-top:14px;display:flex}.report-actions .btn-cancel,.report-actions .btn-save{flex:1}.report-done{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:14px 4px;display:flex}.report-done-icon{color:#2e9e5b}.report-done p{margin:0;font-weight:700}.report-done span{color:var(--text-2);font-size:.85rem}.report-btn{cursor:pointer;color:var(--text-3);background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:4px 6px;font-size:.8rem;transition:color .12s,background .12s;display:inline-flex}.report-btn:hover{color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}@media (width<=620px){.landing-appstore{padding:18px 16px 4px}.landing-appstore-card{flex-direction:column;align-items:flex-start;gap:16px;padding:22px 20px}.landing-appstore-icon{display:none}.landing-appstore-title{font-size:20px}.landing-appstore-sub{font-size:.92rem}.appstore-badge{justify-content:center;align-self:stretch;padding:11px 18px}}.landing-features{max-width:1080px;margin:0 auto;padding:16px 24px 88px}.landing-section-title{text-align:center;letter-spacing:-.5px;margin:0 0 8px;font-size:clamp(24px,4vw,32px);font-weight:800}.landing-section-sub{text-align:center;color:var(--text-2);margin:0 0 32px;font-size:15px}.landing-grid{grid-template-columns:repeat(auto-fill,minmax(244px,1fr));gap:16px;display:grid}.landing-feature{background:var(--bg-elevated);border:1px solid var(--border);transition:var(--transition);border-radius:20px;padding:26px 24px;box-shadow:0 1px 2px #0f172a0a,0 12px 32px #0f172a0d}@media (hover:hover) and (pointer:fine){.landing-feature:hover{border-color:var(--accent-glow);transform:translateY(-3px)}}.landing-feature-icon{align-items:center;margin-bottom:16px;line-height:1;display:inline-flex}.landing-feature h3{letter-spacing:-.012em;color:var(--text-1);margin:0 0 6px;font-size:17px;font-weight:600}.landing-feature p{color:var(--text-2);margin:0;font-size:15px;line-height:1.55}.landing-foot{border-top:1px solid var(--border);padding:60px 24px 46px}.landing-foot-inner{max-width:1080px;color:var(--text-3);text-align:center;margin:0 auto;font-size:13px}.landing-foot-links{flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-bottom:12px;display:flex}.landing-foot-links a{color:var(--text-2);font-weight:600;text-decoration:none}.landing-foot-links a:hover{color:var(--text-1)}.landing-foot-social{flex-wrap:wrap;justify-content:center;gap:8px 22px;margin:0 0 12px;display:flex}.landing-foot-social a{color:var(--text-2);transition:color var(--transition), transform var(--transition);align-items:center;gap:7px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.landing-foot-social a:hover{color:var(--accent);transform:translateY(-1px)}.landing-foot-copy{color:var(--text-3);font-size:.86rem}@keyframes landing-fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes landing-glow{0%,to{opacity:.3}50%{opacity:.6}}@keyframes landing-bob{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.landing{scroll-behavior:smooth}.landing-hero:before{animation:6.5s ease-in-out infinite landing-glow}.landing-badge{animation:.55s both landing-fade-up}.landing-h1{animation:.55s 60ms both landing-fade-up}.landing-tagline{animation:.55s .12s both landing-fade-up}.landing-lead{animation:.55s .18s both landing-fade-up}.landing-hero-actions{animation:.55s .24s both landing-fade-up}.landing .login-card{animation:.6s .12s both landing-fade-up}.landing-arrow{animation:1.8s ease-in-out infinite landing-bob;display:inline-block}.landing-features{scroll-margin-top:16px}.landing-feature{opacity:0;transition:opacity .5s ease, transform .5s ease, border-color var(--transition);transform:translateY(18px)}.landing-feature.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.landing-badge,.landing-h1,.landing-tagline,.landing-lead,.landing-hero-actions,.landing .login-card,.landing-hero:before,.landing-arrow{animation:none}.landing-feature{opacity:1;transition:border-color var(--transition);transform:none}}.landing-count-m{display:none}@media (width<=820px){.landing-hero{text-align:center;grid-template-columns:1fr;gap:16px;min-height:auto;padding:36px 20px 24px}.landing-hero-text{flex-direction:column;align-items:center;display:flex}.landing-lead{max-width:100%}.landing .login-card{justify-self:center}.landing-hero-actions{justify-content:center}.landing-hero-text .landing-count{display:none}.landing-count-m{text-align:center;opacity:.92;margin:6px 0 0;font-size:1.02rem;display:block}}.login-screen{-webkit-overflow-scrolling:touch;background:var(--bg);z-index:1000;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.login-card{background:var(--bg-elevated);border:1px solid var(--border);text-align:center;border-radius:18px;width:100%;max-width:360px;margin:auto;padding:28px 24px;box-shadow:0 16px 48px #00000080}.login-logo{font-size:48px;line-height:1}.login-logo img{width:96px;height:auto;margin:0 auto 2px;display:block}.brand-mark{vertical-align:-.18em;width:auto;height:1.15em;margin-right:3px}.badge-mark{vertical-align:-.16em;width:1.8em;height:1em;margin-right:2px}.foot-mark{vertical-align:-.18em;width:1.98em;height:1.1em;margin-right:4px}.login-title{color:var(--text-1);margin:14px 0 4px;font-size:20px}.login-subtitle{color:var(--text-2);margin:0 0 24px;font-size:14px}.login-head{justify-content:center;align-items:center;gap:14px;margin-bottom:22px;display:flex}.login-head-logo{flex-shrink:0;width:83px;height:46px}.login-head-text{text-align:left}.login-head-text .login-title{margin:0 0 2px}.login-head-text .login-subtitle{margin:0}.login-loading{color:var(--text-2);font-size:14px}@keyframes login-slide-in{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}.login-anim-in{animation:.3s both login-slide-in}@media (prefers-reduced-motion:reduce){.login-anim-in{animation:none}}.login-collapse{opacity:0;grid-template-rows:0fr;margin-top:-10px;transition:grid-template-rows .33s,opacity .26s,margin-top .33s;display:grid}.login-collapse.open{opacity:1;grid-template-rows:1fr;margin-top:0}.login-collapse-inner{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:hidden}@media (prefers-reduced-motion:reduce){.login-collapse{transition:none}}.login-buttons{flex-direction:column;gap:14px;display:flex}.login-btn{touch-action:manipulation;border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;padding:13px 16px;font-size:15px;font-weight:600;transition:opacity .15s,transform 50ms;display:flex}.login-btn:disabled{opacity:.55;cursor:default}.login-btn:active:not(:disabled){transform:scale(.985)}.login-btn-icon{justify-content:center;align-items:center;width:20px;font-weight:700;display:inline-flex}.login-btn-google,.login-btn-apple{color:#1f1f1f;background:#fff;border-color:#dadce0}.login-error{color:var(--accent);margin-top:16px;font-size:13px}.login-notice{color:#2e9e5b;margin-top:14px;font-size:13px;line-height:1.5}.login-resend{cursor:pointer;color:var(--accent);background:0 0;border:none;margin-top:10px;font-size:12.5px;font-weight:600;text-decoration:underline}.login-resend:disabled{opacity:.5;cursor:default}.login-consent{border:1px solid var(--border);color:var(--text-2);text-align:left;background:#7f7f7f0d;border-radius:12px;align-items:flex-start;gap:10px;margin-top:14px;padding:11px 13px;font-size:12.5px;line-height:1.5;display:flex}.login-consent input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex:none;margin-top:1px}.login-consent-link{cursor:pointer;color:var(--accent);font-weight:600;font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline;text-decoration-thickness:1px;transition:text-decoration-thickness .15s}.login-consent-link:hover{text-decoration-thickness:2px}.login-oauth-consent{color:var(--text-3,var(--text-2));text-align:center;margin:10px 2px 0;font-size:11.5px;line-height:1.45}.gdpr-overlay{z-index:4000;background:#0000008c;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.gdpr-modal{background:var(--bg-elevated,#0d1020);border:1px solid var(--border);border-radius:16px;width:100%;max-width:520px;max-height:85dvh;padding:26px 24px;position:relative;overflow-y:auto;box-shadow:0 24px 70px #00000080}.gdpr-modal h2{color:var(--text-1);margin:0 0 14px;font-size:1.2rem}.gdpr-modal h3{color:var(--text-1);margin:16px 0 4px;font-size:.95rem}.gdpr-body{color:var(--text-2);font-size:13.5px;line-height:1.6}.gdpr-body p{margin:0 0 8px}.gdpr-body strong{color:var(--text-1)}.gdpr-close{color:var(--text-2);cursor:pointer;background:0 0;border:none;font-size:18px;line-height:1;position:absolute;top:12px;right:14px}.gdpr-modal .login-btn-primary{margin-top:18px}.logout-btn{cursor:pointer;color:var(--text-2);transition:color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:4px 6px;font-size:18px;line-height:1;display:inline-flex}.logout-btn:hover{color:var(--accent)}.place-detail-author{letter-spacing:.1px;color:var(--text-2);opacity:.65;align-items:center;gap:5px;margin:6px 0 12px;font-size:11.5px;font-weight:400;display:flex}.place-detail-author svg{opacity:.9;flex:none;width:12px;height:12px}.login-form{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.login-tabs{gap:6px;margin-bottom:4px;display:flex}.login-tabs button{cursor:pointer;color:inherit;background:#7f7f7f1f;border:none;border-radius:8px;flex:1;padding:8px;font-size:14px;font-weight:600}.login-tabs button.active{color:#fff;background:#4f8ef7}.login-input{box-sizing:border-box;width:100%;color:inherit;background:#7f7f7f0f;border:1px solid #7f7f7f4d;border-radius:9px;padding:11px 13px;font-size:15px}.login-input:focus{border-color:#4f8ef7;outline:none}.login-btn-primary{color:#fff;background:#4f8ef7;justify-content:center;font-weight:600}.login-btn-busy{align-items:center;gap:9px;display:inline-flex}.login-spinner{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}.login-divider{color:#8a8a8a;align-items:center;gap:10px;margin:14px 0;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:#7f7f7f40;flex:1;height:1px}.login-guest-btn{width:100%;color:var(--text-2,#9aa1ad);cursor:pointer;text-align:center;background:0 0;border:0;border-radius:0;margin:16px 0 2px;padding:4px 0;font-size:14px;font-weight:600;text-decoration:none;transition:color .15s;display:block}.login-guest-btn:hover{text-decoration:underline}@media (hover:hover) and (pointer:fine){.login-guest-btn:hover{color:var(--accent,#e5484d);text-decoration:underline}}.preview-bar{background:var(--accent,#e5484d);color:#fff;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:9px 16px;font-size:13.5px;font-weight:600;line-height:1.3;display:flex}.preview-bar-label{opacity:.96}.preview-bar-cta{color:var(--accent,#e5484d);cursor:pointer;white-space:nowrap;background:#fff;border:0;border-radius:999px;flex:none;padding:6px 15px;font-size:13px;font-weight:800}@media (hover:hover) and (pointer:fine){.preview-bar-cta:hover{opacity:.9}}.login-role{gap:6px;display:flex}.login-role-btn{cursor:pointer;color:inherit;background:#7f7f7f0f;border:1px solid #7f7f7f4d;border-radius:999px;flex:1;padding:9px 10px;font-size:13.5px;font-weight:600;line-height:1.2;transition:background-color .25s,color .25s,border-color .25s}.login-role-btn.active{color:#fff;background:#4f8ef7;border-color:#4f8ef7}.login-role-note{color:var(--text-2);text-align:left;margin:0;font-size:12.5px;line-height:1.45}.login-link-btn{cursor:pointer;color:var(--accent);text-underline-offset:2px;background:0 0;border:none;align-self:center;padding:2px 4px;font-family:inherit;font-size:12.5px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;transition:text-decoration-thickness .15s,opacity .15s}.login-link-btn:hover{text-decoration-thickness:2px}.login-link-btn:disabled{opacity:.5;cursor:default}.login-forgot-row{justify-content:flex-end;display:flex}.login-forgot-row .login-link-btn{align-self:auto;margin:-2px 0 0}.login-form-lead{color:var(--text-2);text-align:left;margin:0 0 2px;font-size:12.5px;line-height:1.5}.login-form-lead strong{color:var(--text-1);word-break:break-word}.login-error-block{text-align:left;margin:0 0 4px;line-height:1.5}.account-section{flex-direction:column;gap:20px;margin-top:8px;display:flex}.account-identity{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:16px}.account-provider-badge{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-glow);border-radius:999px;align-items:center;gap:8px;margin-bottom:12px;padding:6px 12px;font-size:14px;font-weight:600;display:inline-flex}.account-provider-icon{justify-content:center;align-items:center;height:1em;font-size:15px;line-height:1;display:inline-flex}.account-identity-fields{flex-direction:column;display:flex}.account-field-row{justify-content:space-between;gap:12px;padding:11px 2px;font-size:15px;display:flex}.account-field-row+.account-field-row{border-top:1px solid var(--border)}.account-field-label{color:var(--text-2)}.account-field-value{color:var(--text-1);word-break:break-all;text-align:right;font-weight:500}.account-admin-badge{color:var(--accent)}.account-block{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:16px}.account-block-title{color:var(--text-1);margin:0 0 4px;font-size:15px}.account-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.account-form .cat-label-input{flex:1;min-width:180px}.account-form--col{flex-direction:column;align-items:stretch}.account-form--col .btn-save{align-self:flex-start}.account-danger{background:linear-gradient(0deg, #e5484d0a, #e5484d0a), var(--bg-elevated);border-color:#e5484d59}.account-danger .account-block-title{color:#e5484d}.account-danger-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.account-danger-text{flex-direction:column;flex:1;gap:2px;min-width:200px;display:flex}.account-danger-text strong{color:var(--text-1);font-size:14px}.account-danger-divider{background:var(--border);height:1px;margin:14px 0 2px}.account-confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.btn-archive{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);cursor:pointer;white-space:nowrap;transition:all var(--transition);border-radius:8px;padding:8px 18px;font-size:.88rem;font-weight:600}.btn-archive:hover:not(:disabled){border-color:var(--text-2);background:var(--bg)}.btn-archive:disabled{opacity:.6;cursor:default}.btn-delete-account{color:#e5484d;cursor:pointer;white-space:nowrap;transition:all var(--transition);background:0 0;border:1px solid #e5484d;border-radius:8px;padding:8px 18px;font-size:.88rem;font-weight:600}.btn-delete-account:hover:not(:disabled){color:#fff;background:#e5484d}.btn-delete-account:disabled{opacity:.5;cursor:default}.account-delete-confirm{background:#e5484d0f;border:1px solid #e5484d59;border-radius:10px;flex-direction:column;gap:10px;margin-top:12px;padding:14px;display:flex}.account-delete-warn{color:var(--text-1);margin:0;font-size:13px;line-height:1.5}.account-danger-linkwrap{justify-content:center;margin-top:4px;display:flex}.account-danger-link{cursor:pointer;color:var(--text-2);transition:color var(--transition), background var(--transition);background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-size:.82rem;font-weight:500;display:inline-flex}.account-danger-link:hover{color:#e5484d;background:#e5484d0f}.account-danger-link-arrow{opacity:.8;font-size:1em}.account-actions-group{background:var(--bg-elevated);border-radius:12px;margin-top:22px;overflow:hidden}.account-action-row{text-align:left;cursor:pointer;width:100%;min-height:52px;color:var(--text-1);background:0 0;border:0;align-items:center;gap:13px;padding:13px 14px;font-size:16px;font-weight:500;display:flex;position:relative}.account-action-row+.account-action-row:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:50px;right:0}@media (hover:hover) and (pointer:fine){.account-action-row:hover{background:#80808024}}.account-action-icon{color:#e5484d;flex:none;display:inline-flex}.account-action-label{flex:1;min-width:0}.account-action-chevron{color:var(--text-3,var(--text-2));opacity:.5;flex:none}.account-action-row--danger .account-action-label{color:#e5484d}.account-back-link{cursor:pointer;color:var(--text-2);transition:color var(--transition);background:0 0;border:none;align-self:flex-start;margin-bottom:4px;padding:4px 4px 4px 0;font-size:.9rem;font-weight:600}.account-back-link:hover{color:var(--text-1)}.report-section{flex-direction:column;margin-top:4px;display:flex}.report-form{flex-direction:column;gap:20px;display:flex}.report-field{flex-direction:column;gap:9px;display:flex}.report-field-label{color:var(--text-1);font-size:16px;font-weight:700}.report-seg{background:#7878803d;border-radius:10px;gap:3px;padding:3px;display:flex}.report-seg-btn{color:var(--text-1);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:9px 10px;font-size:15px;font-weight:500;transition:background .15s}.report-seg-btn.active{background:#5c5c60;font-weight:600}[data-theme=light] .report-seg-btn.active{background:#fff;box-shadow:0 1px 3px #00000024}.report-input{box-sizing:border-box;background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);font:inherit;border-radius:12px;padding:12px 14px;font-size:16px}.report-input::placeholder,.report-textarea::placeholder{color:var(--text-3,var(--text-2))}.report-input:focus{border-color:var(--blue,#0a84ff);outline:none}.report-textarea-wrap{position:relative}.report-textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--border);background:var(--bg-elevated);width:100%;min-height:130px;color:var(--text-1);font:inherit;border-radius:12px;padding:12px 14px 26px;font-size:16px}.report-textarea:focus{border-color:var(--blue,#0a84ff);outline:none}.report-charcount{color:var(--text-3,var(--text-2));pointer-events:none;font-size:12.5px;position:absolute;bottom:9px;right:13px}.report-submit{justify-content:center;align-self:stretch}.report-footer-note{color:var(--text-2);margin:2px 0 0;font-size:13px;line-height:1.5}.report-footer-note a{color:var(--accent)}.admin-users-section{flex-direction:column;gap:12px;margin-top:8px;display:flex}.admin-users-filters{flex-wrap:nowrap;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.admin-users-filter-seg{flex-wrap:wrap;flex:auto;gap:6px;min-width:0;display:flex}.admin-users-seg-btn{box-sizing:border-box;background:var(--bg-elevated);border:1px solid var(--border);min-height:32px;color:var(--text-2);cursor:pointer;white-space:nowrap;transition:all var(--transition);border-radius:9px;align-items:center;gap:5px;padding:6px 12px;font-size:12.5px;font-weight:600;line-height:1.4;display:inline-flex}.admin-users-seg-btn:hover{color:var(--text-1);border-color:var(--text-3)}.admin-users-seg-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.admin-users-sort{box-sizing:border-box;min-height:32px;color:var(--text-1);border:1px solid var(--border);cursor:pointer;appearance:none;background-color:var(--bg-elevated);transition:all var(--transition);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238b949e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:12px;border-radius:9px;flex:none;padding:6px 28px 6px 12px;font-size:12.5px;font-weight:600;line-height:1.4}.admin-users-sort:hover{border-color:var(--text-3)}.admin-users-sort:focus,.admin-users-sort:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.admin-user-venue-badge{color:#2e9e6b;background:#2e9e6b24;border:1px solid #2e9e6b66;border-radius:999px;padding:2px 8px;font-size:12px}.admin-user-venue-controls{background:color-mix(in srgb, var(--green,#2e9e6b) 8%, transparent);border:1px solid color-mix(in srgb, var(--green,#2e9e6b) 22%, transparent);border-radius:9px;flex-direction:column;gap:8px;margin-top:8px;padding:8px 10px;display:flex}.admin-user-venue-proof{flex-wrap:wrap;gap:10px;display:flex}.admin-user-venue-ctrl-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-user-venue-ctrl-label{color:var(--text-2);font-size:12.5px;font-weight:600}.admin-user-step{cursor:pointer;background:var(--bg-surface);border:1px solid var(--border);width:26px;height:26px;color:var(--text-1);border-radius:7px;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.admin-user-step:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.admin-user-step:disabled{opacity:.4;cursor:default}.admin-user-step-val{text-align:center;min-width:18px;font-size:13px;font-weight:700}.admin-users-list{flex-direction:column;gap:10px;display:flex}.admin-user-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.admin-user-top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.admin-user-name{color:var(--text-1);font-weight:600}.admin-user-provider{color:var(--text-2);background:var(--bg-hover);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:12px}.admin-user-admin-badge{color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:999px;padding:2px 8px;font-size:12px}.admin-user-meta{color:var(--text-2);flex-wrap:wrap;gap:4px 14px;font-size:12.5px;display:flex}.admin-user-meta-item{white-space:nowrap}.admin-user-frozen-badge{color:#5b9bd5;background:#5b9bd524;border:1px solid #5b9bd559;border-radius:999px;padding:2px 8px;font-size:12px}.admin-user-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.admin-user-btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);cursor:pointer;transition:var(--transition,all .15s ease);border-radius:8px;padding:5px 12px;font-size:12.5px}.admin-user-btn:hover:not(:disabled){background:var(--bg-hover)}.admin-user-btn:disabled{opacity:.5;cursor:default}.admin-user-btn--danger{color:#e0556a;border-color:#e0556a66}.admin-user-btn--danger:hover:not(:disabled){background:#e0556a1f}.admin-user-btn--active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.admin-user-contrib{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:10px;padding-top:10px;display:flex}.admin-user-contrib-title{color:var(--text-1);margin-bottom:4px;font-size:12.5px;font-weight:600}.admin-user-stats{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.admin-user-stat{color:var(--text-2);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.admin-user-stat-btn{cursor:pointer;font-family:inherit;transition:all .12s}.admin-user-stat-btn:hover{border-color:var(--accent);color:var(--text-1)}.admin-user-stat-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.admin-user-contrib-list{color:var(--text-1);flex-direction:column;gap:3px;max-height:180px;margin:0;padding-left:18px;font-size:12.5px;display:flex;overflow-y:auto}.admin-user-contrib-date{color:var(--text-2);font-size:11.5px}.admin-user-contrib-link{cursor:pointer;color:var(--accent);text-align:left;background:0 0;border:none;padding:0;font-size:12.5px;font-weight:600;text-decoration:none}.admin-user-contrib-link:hover{text-decoration:underline}.admin-user-contrib-note{color:var(--text-2);font-style:italic}.admin-reports-section{flex-direction:column;gap:12px;margin-top:8px;display:flex}.admin-reports-list{flex-direction:column;gap:10px;display:flex}.admin-report-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.admin-report-unread{border-color:var(--accent-glow);background:var(--accent-dim)}.admin-report-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-report-subject{color:var(--text-1);font-size:14.5px}.admin-report-badge{text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.admin-report-cat-badge{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.admin-report-cat-bug{color:#ff6b5e;background:#ff6b5e24;border:1px solid #ff6b5e66}.admin-report-cat-feature{color:#a78bfa;background:#a78bfa24;border:1px solid #a78bfa66}.admin-report-cat-other{color:#8b949e;background:#8b949e24;border:1px solid #8b949e66}.admin-report-date{color:var(--text-3);margin-left:auto;font-size:12px}.admin-report-from{color:var(--text-2);margin:4px 0 8px;font-size:12.5px}.admin-report-msg{color:var(--text-1);white-space:pre-wrap;word-break:break-word;font-size:14px}.admin-report-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.proj-row-author{color:var(--text-2);white-space:nowrap;margin-left:6px;font-size:12px}.console-pick{border-left:2px solid var(--border);margin-top:8px;margin-bottom:10px;padding-left:12px}.console-pick-label{color:var(--text-2);margin-bottom:6px;font-size:13px;font-weight:600}.console-pick-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.console-pick-chip{border:1px solid var(--accent-glow);background:var(--accent-dim);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:4px 6px 4px 11px;font-size:.78rem;font-weight:600;display:inline-flex}.console-pick-chip-x{cursor:pointer;width:16px;height:16px;color:var(--accent);transition:background var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;display:inline-flex}.console-pick-chip-x:hover{background:var(--accent-glow);color:#fff}.console-pick-add{border:1px solid var(--accent-glow);background:var(--accent-dim);color:var(--accent);cursor:pointer;transition:all var(--transition);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin:6px 0 8px;padding:7px 18px;font-size:12.5px;font-weight:600;display:inline-flex}.console-pick-add:hover{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 10px var(--accent-glow)}.console-pick-actions{align-items:center;gap:10px;margin:6px 0 8px;display:flex}.console-pick-actions .console-pick-add{align-self:auto;margin:0}.console-pick-sep{color:var(--border);-webkit-user-select:none;user-select:none;font-size:15px}.console-pick-none{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-2);cursor:pointer;transition:all var(--transition);border-radius:999px;align-items:center;padding:7px 18px;font-size:12.5px;font-weight:600;display:inline-flex}.console-pick-none:hover{border-color:var(--text-3);color:var(--text-1)}.console-pick-none.active{background:var(--text-3);border-color:var(--text-3);color:var(--bg-surface)}.console-pick+* .pv-popup-item-main,.pv-popup-item .pv-popup-item-main{font-weight:600}.dimensions-section{margin:4px 0 2px}.dimensions-title{color:var(--text-2);margin-bottom:8px;font-size:13px;font-weight:600}.dimensions-row{flex-wrap:wrap;gap:10px;padding:12px 14px 14px;display:flex}.dim-section{margin-top:0;margin-bottom:0}.dimensions-field{flex:140px;min-width:120px}.dimensions-field label{color:var(--text-2);margin-bottom:4px;font-size:12px;display:block}.place-detail-dimensions{color:var(--text-1);align-items:center;gap:6px;padding:6px 0 2px;font-size:.85rem;display:flex}.dimensions-detail-text{color:var(--text-2)}.dimensions-detail-part{color:var(--text-1);font-weight:600}.rozmery-label{margin-top:16px;margin-bottom:2px}.section-empty-row{color:var(--text-2);align-items:center;gap:8px;padding:3px 2px;font-size:.82rem;display:flex}.section-empty-info{flex:1;min-width:0}.section-empty-val{color:var(--text-3);font-style:italic}.section-empty-btn{background:var(--bg-elevated);border:1px solid var(--border);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:flex}.section-empty-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.place-detail-group{text-transform:uppercase;letter-spacing:.7px;color:var(--text-2);border-top:1px solid var(--border);align-items:center;gap:6px;margin:18px 0 9px;padding-top:14px;font-size:.72rem;font-weight:800;display:flex}.tech-ic{vertical-align:middle;flex-shrink:0}.access-section-title .tech-ic{color:var(--blue)}.place-detail-group--light{color:var(--light)}.place-detail-group--sound{color:var(--green)}.place-detail-group--other{color:var(--text-2)}.place-detail-group--rigging{color:var(--blue)}.rigging-section{background:var(--bg-elevated);border:0;border-radius:14px;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;display:flex}.rigging-section .rigging-chip{background:color-mix(in srgb, var(--text-1) 12%, transparent)}.rigging-section .rigging-chip.active{background:var(--accent)}.rigging-bars-box{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;margin:8px 0 0;overflow:hidden}.rigging-section .rigging-bars-box{border:0;border-top:1px solid var(--border);background:0 0;border-radius:0;width:100%;margin:0}.rigging-section .rigging-bars-head{padding:9px 0 0}.rigging-section .rigging-bars-list{padding:8px 0 0}.rigging-section .rigging-bars-open{margin:0}.rigging-bars-head{width:100%;color:var(--text-1);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:9px 11px;font-size:.86rem;display:flex}.rigging-bars-head .tech-ic{color:var(--blue)}.rigging-bars-count{font-variant-numeric:tabular-nums;color:var(--text-2);margin-left:auto;font-weight:700}.rigging-bars-arrow{transition:transform var(--transition);color:var(--text-2)!important}.rigging-bars-head.open .rigging-bars-arrow{transform:rotate(180deg)}.rigging-bars-list{flex-direction:column;gap:6px;padding:0 11px 9px;display:flex}.rigging-bars-row{color:var(--text-1);align-items:center;gap:8px;font-size:.84rem;display:flex}.rigging-bars-row-ic{color:var(--blue);flex:none}.rigging-bars-row-text{flex:1}.rigging-bars-row-del{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:4px;display:inline-flex}.rigging-bars-row-del:hover{background:var(--bg-hover);color:var(--accent)}.rigging-bars-open{background:color-mix(in srgb, var(--blue) 14%, transparent);color:var(--blue);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;margin:0;padding:9px 16px;font-size:.95rem;font-weight:600;display:inline-flex}.rigging-bars-open:hover{background:color-mix(in srgb, var(--blue) 24%, transparent)}.rigging-bars-dialog{text-align:left;width:min(92vw,460px);max-width:460px}.rigging-tag-rows{flex-wrap:wrap;gap:8px;display:flex}.rigging-tag-group{flex-wrap:nowrap}.rigging-bars-body{scrollbar-gutter:stable;max-height:min(60vh,520px);padding-right:4px;overflow-y:auto}.rigging-bars-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);margin:12px 0 6px;font-size:.7rem;font-weight:700}.rigging-bars-label:first-child{margin-top:0}.rigging-profile-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.rigging-profile-tile{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);cursor:pointer;transition:all var(--transition);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 8px;font-size:.82rem;font-weight:500;display:flex}.rigging-profile-tile:hover{border-color:var(--accent)}.rigging-profile-tile.active{background:var(--accent);border-color:var(--accent);color:#fff}.rigging-profile-tile.active .tech-ic{color:#fff}.rigging-bars-nums{gap:10px;margin-top:12px;display:flex}.rigging-bars-num{color:var(--text-2);flex-direction:column;flex:1;gap:4px;font-size:.78rem;display:flex}.rigging-bars-num input{border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--text-1);border-radius:8px;padding:8px 10px;font-size:16px}.rigging-bars-unit{color:var(--text-2);align-items:center;gap:6px;display:flex}.rigging-bars-unit input{flex:1;width:auto;min-width:0}.rigging-bars-note{color:var(--text-3);margin-top:6px;font-size:.7rem;line-height:1.35}.rigging-bars-actions{gap:10px;width:100%;margin-top:14px;display:flex}.rigging-bars-actions .rigging-bars-add{white-space:nowrap;flex:1;justify-content:center;margin-top:0}.rigging-bars-add{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:20px;align-items:center;gap:6px;margin-top:12px;padding:8px 14px;font-size:.84rem;font-weight:600;display:inline-flex}.rigging-bars-add:disabled{opacity:.45;cursor:not-allowed}.rigging-bars-done{border:1px solid var(--border);color:var(--text-1);background:0 0}.rigging-bars-done:hover{border-color:var(--accent);color:var(--accent)}.rigging-bars-dialog .rigging-bars-list{padding:0}.balcony-detail-row{align-items:flex-start}.balcony-detail-text{align-items:baseline;gap:6px;display:flex}.balcony-detail-list{flex-direction:column;gap:2px;display:flex}.place-detail-capacity{align-items:flex-start}.capacity-body{flex-direction:column;min-width:0;display:flex}.capacity-head{color:var(--text-2);margin-bottom:6px;padding-left:1px}.capacity-values{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.capacity-row{white-space:nowrap;color:var(--text-2);align-items:center;gap:5px;display:inline-flex}.capacity-ico{color:var(--blue);flex-shrink:0;align-items:center;display:inline-flex}.capacity-sep{background:var(--border);flex-shrink:0;align-self:stretch;width:1px;min-height:1.1em}.settings-subsection{margin-top:8px}.settings-subsection h3{color:var(--text-1);margin-bottom:2px;font-size:.95rem;font-weight:700}.user-loc-icon{background:0 0;border:none}.user-loc-dot{background:#2997ff;border:2px solid #fff;border-radius:50%;width:16px;height:16px;animation:2s infinite userLocPulse}@keyframes userLocPulse{0%{box-shadow:0 0 #2997ff8c}70%{box-shadow:0 0 0 14px #2997ff00}to{box-shadow:0 0 #2997ff00}}.place-info .place-distance{color:var(--accent);font-weight:600}.pgv-distance{color:var(--accent);margin-top:2px;font-size:12px;font-weight:600}.elec-distance{margin-top:22px;padding-top:2px}.electricity-editor .elec-distance-label{color:var(--text-2);font-size:.88rem;line-height:1.5;display:block;margin:10px 0 2px!important}.electricity-editor .elec-distance{padding-top:2px;position:relative}.electricity-editor .elec-distance:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:34px;right:0}.add-place-form .elec-distance-input,.elec-distance-input{box-sizing:border-box;background:0 0;border:0;border-radius:0;width:100%;padding:6px 0 12px}.elec-detail-dist{color:var(--text-2)}.sidebar-more-hint{color:var(--text-2);opacity:.8;padding:8px 14px 14px;font-size:12px}@media (width>=769px) and (width<=1100px){:root{--detail-w:340px}.sidebar{width:240px}.place-detail,.add-place-panel{width:var(--detail-w)}.map-area:has(.place-detail) .map-locate-fab{right:calc(var(--detail-w) + 16px)}}@media (width>=1500px){:root{--detail-w:460px}.sidebar{width:330px}.place-detail{width:var(--detail-w)}.map-area:has(.place-detail) .map-locate-fab{right:calc(var(--detail-w) + 16px)}.list-detail-modal{max-width:520px}}@media (width>=1900px){:root{--detail-w:500px}.sidebar{width:360px}.place-detail{width:var(--detail-w)}.map-area:has(.place-detail) .map-locate-fab{right:calc(var(--detail-w) + 16px)}.list-detail-modal{max-width:560px}}.place-building-photo{margin-top:14px}.place-building-photo-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.place-building-photo-img{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:84px;height:60px}.place-claim-box{margin-top:14px}.place-claim-btn{background:var(--accent-dim);border:1px solid var(--accent-glow);width:100%;color:var(--accent);cursor:pointer;transition:background-color var(--transition), color var(--transition);border-radius:8px;padding:9px 14px;font-size:.84rem;font-weight:600}.place-claim-btn:hover:not(:disabled){background:var(--accent-glow);color:var(--text-1)}.place-claim-btn:disabled{opacity:.6;cursor:default}.place-claim-msg{color:var(--green);background:color-mix(in srgb, var(--green) 12%, transparent);border:1px solid color-mix(in srgb, var(--green) 30%, transparent);border-radius:8px;padding:9px 12px;font-size:.82rem;line-height:1.5}.photo-collab-body{flex-direction:column;gap:14px;margin-top:2px;display:flex}.photo-collab-section{background:color-mix(in srgb, var(--bg-elevated) 60%, transparent);border:1px solid var(--border);border-radius:12px;padding:12px 14px 14px}.photo-collab-sec-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.photo-collab-sec-title{color:var(--text-1);letter-spacing:.01em;font-size:.92rem;font-weight:600}.photo-collab-count{color:var(--text-2);background:color-mix(in srgb, var(--text-2) 14%, transparent);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 9px;font-size:.72rem;font-weight:600}.photo-collab-count.is-full{color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent)}.photo-collab-note{color:var(--text-2);opacity:.85;margin:10px 0 0;font-size:.74rem;line-height:1.45}.place-marker{filter:drop-shadow(0 1.5px 2.5px #00000059);background:0 0;border:none}.restaurant-marker{background:0 0;border:none}.restaurant-marker-pin{background:#16a34a;border:2px solid #fff;border-radius:50% 50% 50% 0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex;transform:rotate(-45deg);box-shadow:0 2px 6px #0006}.restaurant-marker-pin>*{transform:rotate(45deg)}.restaurant-marker-pin{line-height:1}.leaflet-tooltip.map-preview-tooltip{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-1);border-radius:12px;padding:0;box-shadow:0 8px 28px #00000059}.leaflet-tooltip-top.map-preview-tooltip:before{border-top-color:var(--bg-elevated)}.leaflet-tooltip-bottom.map-preview-tooltip:before{border-bottom-color:var(--bg-elevated)}.leaflet-tooltip-left.map-preview-tooltip:before{border-left-color:var(--bg-elevated)}.leaflet-tooltip-right.map-preview-tooltip:before{border-right-color:var(--bg-elevated)}.map-preview-popup .leaflet-popup-content-wrapper{background:var(--bg-elevated);color:var(--text-1);border:1px solid var(--border);border-radius:12px;padding:0;overflow:hidden;box-shadow:0 8px 28px #00000059}.map-preview-popup .leaflet-popup-content{margin:0;width:auto!important}.map-preview-popup .leaflet-popup-tip{background:var(--bg-elevated);border:1px solid var(--border)}.map-hover-card{z-index:1200;background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;border-radius:12px;animation:.12s hover-card-in;position:absolute;transform:translate(-50%,calc(-100% - 46px));box-shadow:0 8px 28px #00000059}@keyframes hover-card-in{0%{opacity:0}to{opacity:1}}.map-preview{cursor:pointer;align-items:center;gap:10px;width:230px;padding:8px;display:flex}.map-preview-img{object-fit:cover;border-radius:8px;flex:none;width:66px;height:66px}.map-preview-noimg{background:var(--bg);border-radius:8px;flex:none;justify-content:center;align-items:center;width:66px;height:66px;font-size:30px;display:flex}.map-preview-body{flex:1;min-width:0}.map-preview-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;line-height:1.2;overflow:hidden}.map-preview-cat{color:var(--text-2);align-items:center;gap:.32em;margin-top:3px;font-size:.75rem;display:inline-flex}.map-preview-addr{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.72rem;overflow:hidden}@keyframes restMarkerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes restMarkerFadeOut{0%{opacity:1}to{opacity:0}}.restaurant-marker{animation:.75s restMarkerFadeIn}.map-wrapper.rest-fading-out .restaurant-marker{animation:.75s forwards restMarkerFadeOut}.map-restaurant-btn.open{color:#fff!important;background:#16a34a!important;border-color:#16a34a!important}.restaurant-mode-frame{z-index:1000;pointer-events:none;opacity:0;visibility:hidden;border:4px solid #16a34a;transition:opacity .75s,visibility .75s;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #16a34a59}.restaurant-mode-frame.active{opacity:1;visibility:visible}.map-restaurant-toggle{display:none}@media (width<=768px){.map-restaurant-toggle{border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0 0 12px;padding:10px 12px;display:flex}.map-restaurant-btn{display:none!important}}.map-restaurant-toggle-text{flex-direction:column;gap:2px;min-width:0;display:flex}.map-restaurant-toggle-title{color:var(--text-1);font-size:.9rem;font-weight:600}.map-restaurant-toggle-desc{color:var(--text-3);font-size:.72rem;line-height:1.35}.map-restaurant-switch{background:var(--border);border-radius:999px;flex:none;width:42px;height:24px;transition:background .18s;position:relative}.map-restaurant-switch.on{background:#16a34a}.map-restaurant-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000059}.map-restaurant-switch.on .map-restaurant-knob{transform:translate(18px)}.price-level-row{gap:8px;margin-bottom:4px;display:flex}.price-level-btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:8px;flex:1;padding:9px 2px;font-size:.78rem;font-weight:600;transition:all .12s}.price-level-btn:hover{border-color:var(--accent)}.price-level-btn.active{color:#fff;background:#16a34a;border-color:#16a34a}.restaurant-photo-editor{margin-bottom:4px}.restaurant-photo-add{border:1px dashed var(--border);cursor:pointer;color:var(--text-2);background:var(--bg-elevated);border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-size:.85rem;display:inline-flex}.restaurant-photo-add:hover{border-color:var(--accent);color:var(--text)}.restaurant-photo-preview{display:inline-block;position:relative}.restaurant-photo-preview img{border-radius:10px;max-width:100%;max-height:200px;display:block}.restaurant-photo-remove{color:#fff;cursor:pointer;background:#000000a6;border:none;border-radius:50%;width:26px;height:26px;font-size:.8rem;line-height:1;position:absolute;top:6px;right:6px}.add-place-error{color:#f87171;background:#dc26261f;border:1px solid #dc262666;border-radius:8px;margin:4px 0 0;padding:8px 12px;font-size:.82rem}.btn-danger{color:#f87171;cursor:pointer;background:#dc26261f;border:1px solid #dc262680;border-radius:8px;padding:10px 18px;font-weight:600}.btn-danger:hover{background:#dc262638}.restaurant-detail-stars{color:#f5a623;letter-spacing:2px;margin:2px 0 10px;font-size:1.05rem}.restaurant-detail-meta{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.restaurant-tag{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);border-radius:999px;padding:3px 10px;font-size:.78rem}.restaurant-detail-dish,.restaurant-detail-addr,.restaurant-detail-note,.restaurant-detail-author{color:var(--text-2);margin:6px 0;font-size:.86rem;line-height:1.5}.restaurant-detail-note{color:var(--text);white-space:pre-wrap}.restaurant-detail-author{color:var(--text-3);font-size:.76rem}.rest-gcard{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;margin-top:10px;padding:12px}.rest-gcard-status{color:var(--text-3);margin:0;font-size:.8rem}.rest-gcard-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.rest-gcard-g{letter-spacing:.3px;color:var(--text-3);text-transform:uppercase;font-size:.72rem;font-weight:700}.rest-gcard-rating{align-items:center;gap:5px;font-size:.9rem;display:inline-flex}.rest-gcard-stars{color:#f5a623;letter-spacing:1px}.rest-gcard-count{color:var(--text-3);font-size:.8rem}.rest-gcard-open{margin:4px 0;font-size:.85rem;font-weight:600}.rest-gcard-open.is-open{color:#16a34a}.rest-gcard-open.is-closed{color:var(--accent,#e5484d)}.rest-gcard-today{color:var(--text-2);font-weight:400}.rest-gcard-hours-toggle{color:var(--text-1);cursor:pointer;text-align:left;background:0 0;border:0;margin-top:2px;padding:4px 0;font-size:.82rem;font-weight:500;display:block}.rest-gcard-hours{margin:4px 0 2px;padding:0;list-style:none}.rest-gcard-hours li{color:var(--text-2);padding:2px 0;font-size:.8rem}.rest-gcard-hours li.is-today{color:var(--text-1);font-weight:600}.rest-gcard-link{color:var(--accent,#4a9eff);margin-top:10px;font-size:.82rem;font-weight:500;text-decoration:none;display:block}.rest-gcard-link:hover{text-decoration:underline}.rest-gcard-attrib{color:var(--muted,#8a8f98);margin:6px 0 0;font-size:11px}.rest-google-hint-inline{color:var(--text-3);font-size:.72rem;font-weight:400}.rest-google-link{position:relative}.rest-google-status{color:var(--text-3);margin:4px 2px;font-size:.78rem}.rest-google-results{border:1px solid var(--border);background:var(--bg-surface);border-radius:8px;margin-top:4px;overflow:hidden}.rest-google-result{border:0;border-bottom:1px solid var(--border-soft);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:2px;width:100%;padding:8px 10px;display:flex}.rest-google-result:last-child{border-bottom:0}.rest-google-result:hover{background:var(--bg-elevated)}.rest-google-result-name{color:var(--text-1);font-size:.85rem;font-weight:600}.rest-google-result-addr{color:var(--text-3);font-size:.76rem}.rest-google-chip{background:#16a34a1a;border:1px solid #16a34a;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;display:flex}.rest-google-chip-name{color:#16a34a;font-size:.84rem;font-weight:600}.rest-google-chip-x{color:var(--text-2);cursor:pointer;background:0 0;border:0;font-size:.8rem}.rest-gpick-btn{color:#fff;cursor:pointer;background:#16a34a;border:0;border-radius:6px;margin-top:4px;padding:5px 10px;font-size:.8rem;font-weight:600}.rest-dup-warn{background:#f5a6231f;border:1px solid #f5a62373;border-radius:10px;margin-top:8px;padding:12px}.rest-dup-warn p{color:var(--text-1);margin:0 0 10px;font-size:.85rem;line-height:1.45}.rest-dup-actions{gap:8px;display:flex}.rest-dup-actions button{flex:1}.balcony-ico{width:74px;height:46px;color:var(--text-2);flex:none;display:block}.balcony-picker{flex-direction:column;gap:6px;display:flex}.balcony-opt{cursor:pointer;text-align:left;width:100%;color:var(--text-1);background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:6px 8px;display:flex}.balcony-opt:hover{background:var(--bg-elevated)}.balcony-opt.active{background:#e0913a1a;border-color:#e0913a}.balcony-opt-box{border:1px solid var(--border);background:var(--bg-elevated);color:#fff;border-radius:6px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:.85rem;display:flex}.balcony-opt.active .balcony-opt-box.checked{background:#16a34a;border-color:#16a34a}.balcony-opt-label{font-size:.88rem;line-height:1.3}.place-detail-balcony-figure{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;align-self:flex-start;margin:6px 0 8px 30px;padding:8px 14px}.place-detail-balcony-figure .balcony-ico{width:112px;height:68px;color:var(--text-2)}.food-section{border-top:1px solid var(--border-soft);margin-top:10px;padding-top:8px;scroll-margin-top:12px}.food-section-toggle{cursor:pointer;width:100%;color:var(--text-1);background:0 0;border:0;justify-content:space-between;align-items:center;padding:8px 0;font-size:.9rem;font-weight:600;display:flex}.food-count{color:var(--text-3);font-weight:400}.food-arrow{color:var(--text-3);font-size:.7rem}.food-list-wrap{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .3s,opacity .25s;display:grid}.food-list-wrap.open{opacity:1;grid-template-rows:1fr;transition:none}.food-list-clip{min-height:0;overflow:hidden}.food-list{flex-direction:column;gap:5px;max-height:260px;margin:2px 0 8px;padding:0;list-style:none;display:flex;overflow-y:auto}.food-item{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text-1);text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;font-size:.86rem;display:flex}.food-item:hover{border-color:#16a34a}.food-item-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.food-item-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.food-stars{color:#f5a623;letter-spacing:1px;font-size:.8rem}.food-dist{color:var(--text-3);font-size:.78rem}.map-rest-search-input{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:.9rem}.map-rest-search-input:focus{border-color:var(--accent)}.map-rest-search-status{color:var(--text-2);background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin:6px 0 0;padding:8px 12px;font-size:.8rem}.map-rest-search-results{border:1px solid var(--border);background:var(--bg-surface);max-height:260px;box-shadow:var(--shadow,0 8px 24px #0006);border-radius:8px;margin-top:6px;overflow:hidden auto}.map-rest-search-result{text-align:left;border:0;border-bottom:1px solid var(--border-soft);cursor:pointer;background:0 0;flex-direction:column;gap:2px;width:100%;padding:9px 11px;display:flex}.map-rest-search-result:last-child{border-bottom:0}.map-rest-search-result:hover{background:var(--bg-elevated)}.map-rest-search-name{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;overflow:hidden}.map-rest-search-addr{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.map-find-result{flex-direction:row;align-items:center;gap:10px}.map-find-thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:40px;height:40px}.map-find-thumb--empty{background:var(--bg-elevated);justify-content:center;align-items:center;font-size:20px;display:flex}.map-find-texts{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.nice-select{width:100%;position:relative}.nice-select-btn{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);cursor:pointer;text-align:left;transition:border-color var(--transition);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-family:inherit;font-size:.88rem;display:flex}.nice-select.open .nice-select-btn{border-color:var(--accent)}.nice-select-placeholder{color:var(--text-3)}.nice-select-arrow{color:var(--text-3);flex-shrink:0;font-size:.7rem;transition:transform .15s}.nice-select.open .nice-select-arrow{transform:rotate(180deg)}.nice-select-menu{z-index:40;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;max-height:240px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0006}.nice-select-menu-portal{z-index:4000;right:auto}.nice-select-opt{text-align:left;width:100%;color:var(--text-1);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:.86rem;display:block}.nice-select-opt:hover{background:var(--bg-elevated)}.nice-select-opt.active{background:var(--accent);color:#fff}.datepicker-btn{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-1);cursor:pointer;text-align:left;transition:border-color var(--transition);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-family:inherit;font-size:.88rem;display:flex}.datepicker-btn.open{border-color:var(--accent)}.datepicker-ico{color:var(--text-3);flex-shrink:0}.datepicker-btn.open .datepicker-ico{color:var(--accent)}.datepicker-backdrop{z-index:4000;background:#00000080;justify-content:flex-end;align-items:flex-end;animation:.18s dp-fade;display:flex;position:fixed;inset:0}@keyframes dp-fade{0%{opacity:0}to{opacity:1}}@keyframes dp-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}.datepicker-pop{z-index:4001;width:min(var(--detail-w), 100vw);background:color-mix(in srgb, var(--detail-card) 72%, transparent);-webkit-backdrop-filter:blur(30px)saturate(180%);backdrop-filter:blur(30px)saturate(180%);padding:8px 16px calc(14px + env(safe-area-inset-bottom));-webkit-user-select:none;user-select:none;will-change:transform;box-sizing:border-box;border:0;border-radius:20px 20px 0 0;max-height:min(86vh,640px);animation:.32s cubic-bezier(.32,.72,0,1) dp-rise;overflow-y:auto;box-shadow:0 -10px 40px #00000080}@media (width<=768px){.datepicker-backdrop{justify-content:center}.datepicker-pop{border-radius:18px 18px 0 0;width:100vw}}.dp-sheet-head{justify-content:space-between;align-items:center;padding:8px 2px 12px;display:flex}.dp-sheet-title{color:var(--text-1);font-size:1.05rem;font-weight:700}.dp-done{cursor:pointer;color:var(--accent);background:0 0;border:0;padding:6px 4px;font-family:inherit;font-size:1rem;font-weight:600}.dp-head{align-items:center;gap:6px;margin-bottom:8px;padding:0 2px;display:flex}.dp-title{color:var(--text-1);text-transform:none;text-align:left;flex:1;font-size:1.05rem;font-weight:700}.dp-nav{cursor:pointer;width:28px;height:28px;color:var(--text-2);transition:background var(--transition);background:0 0;border:0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.15rem;line-height:1;display:flex}.dp-nav:hover{background:var(--bg-elevated);color:var(--text-1)}.dp-today{border:2px solid var(--text-3);cursor:pointer;width:12px;height:12px;transition:border-color var(--transition);background:0 0;border-radius:50%;flex-shrink:0;padding:0}.dp-today:hover{border-color:var(--accent)}.dp-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-weekdays{margin-bottom:2px}.dp-wd{text-align:center;color:var(--text-2);text-transform:uppercase;padding:4px 0;font-size:.72rem;font-weight:600}.dp-day{aspect-ratio:1;cursor:pointer;min-height:32px;color:var(--text-1);transition:background var(--transition);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;font-family:inherit;font-size:.95rem;display:flex}.dp-day:hover{background:var(--bg-hover)}.dp-day--other{color:var(--text-3);opacity:.55}.dp-day--today{color:var(--accent);font-weight:700}.dp-day--sel{font-weight:600;background:var(--accent)!important;color:#fff!important}.account-logout-wrap{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.settings-logout-btn{color:#e5484d;cursor:pointer;background:0 0;border:1px solid #e5484d;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:600;transition:all .15s;display:inline-flex}.settings-logout-btn:hover{color:#fff;background:#e5484d}@media (width<=768px){.app-header{padding:env(safe-area-inset-top) 8px 0;gap:6px}.header-actions{gap:6px}.sidebar-toggle,.logout-btn,.settings-toggle,.theme-toggle,.portal-back-btn{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-elevated);width:40px;min-width:40px;height:40px;color:var(--text-2);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.settings-toggle.active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim,var(--bg-hover))}.settings-toggle-label{display:none}.settings-toggle-icon{color:inherit;justify-content:center;align-items:center;line-height:1;display:inline-flex}.logout-btn svg{width:20px;height:20px}.portal-back-btn{font-size:1.1rem;text-decoration:none}.view-tabs{border-radius:11px;gap:3px;padding:3px}.view-tab{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;height:34px;padding:0 12px;font-size:.9rem;display:inline-flex}.view-tab-label{display:inline!important}.map-filter-panel{padding:14px 14px calc(14px + env(safe-area-inset-bottom));gap:16px}.map-filter-chip{border-radius:22px;padding:8px 14px;font-size:.9rem}.map-filter-chips{gap:8px}.range-slider{height:34px;padding:0 14px}.range-slider-knob{width:28px;height:28px;margin:-14px 0 0 -14px}.map-filter-cap-row{font-size:.88rem}.map-filter-check-label{gap:12px;padding:6px 0;font-size:.95rem}.map-filter-check-label input[type=checkbox]{width:22px;height:22px}.map-filter-header{font-size:1rem}.map-filter-clear{padding:6px 8px;font-size:.95rem}}.soundfiles-block{margin:12px 12px 14px}label.soundfiles-block-label{margin-bottom:8px;display:block}.soundfiles-block>.soundfiles-editor{margin-top:0}.soundfiles-editor{flex-direction:column;gap:10px;margin:8px 0 0;display:flex}.soundfiles-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;min-width:0;padding:16px;display:flex}.soundfiles-item-main{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.soundfiles-name{padding-left:2px}.soundfiles-tool-wrap{width:100%;max-width:280px}.soundfiles-name{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.soundfiles-remove{color:var(--text-3);cursor:pointer;transition:color var(--transition);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.05rem;line-height:1}.soundfiles-remove:hover{color:var(--accent)}.soundfiles-add{background:color-mix(in srgb, var(--green) 16%, transparent);color:var(--green);cursor:pointer;transition:all var(--transition);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:.95rem;font-weight:600;display:inline-flex}.soundfiles-add:hover:not(:disabled){background:color-mix(in srgb, var(--green) 26%, transparent)}.soundfiles-add:disabled{opacity:.6;cursor:not-allowed}.soundfiles-hint{color:var(--text-2,#7b8798);margin:6px 0 0;font-size:12px}.soundfiles-error{color:var(--accent);padding:4px 2px;font-size:.78rem}.place-detail-soundfiles{margin:8px 0}.place-detail-soundfiles--light{margin-bottom:0}.soundfiles-detail-list{flex-direction:column;gap:6px;margin-top:6px;display:flex}.soundfiles-detail-item{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-1);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;font-size:.9rem;display:flex}.soundfiles-detail-item:hover{border-color:var(--accent)}.soundfiles-detail-dl{color:var(--accent);width:38px;height:38px;transition:background-color var(--transition);border-radius:50%;flex:none;justify-content:center;align-items:center;margin:-6px -6px -6px 0;display:flex}.soundfiles-detail-dl:hover{background:color-mix(in srgb, var(--accent) 15%, transparent)}.soundfiles-detail-label{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.soundfiles-detail-ic{flex:none;font-size:1.15rem;line-height:1}.soundfiles-detail-text{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.soundfiles-detail-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.soundfiles-detail-tool{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.app-boot-loader{background:var(--bg,#000);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.app-boot-spinner{border:3px solid #80808040;border-top-color:var(--accent,#4f8ef7);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite app-boot-spin}@keyframes app-boot-spin{to{transform:rotate(360deg)}}.deeplink-error{z-index:4000;border:1px solid var(--accent);background:var(--bg-elevated);max-width:min(92vw,520px);color:var(--text-1);box-shadow:var(--shadow);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:11px 14px;font-size:.88rem;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.deeplink-error-x{color:var(--text-2);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:1.1rem;line-height:1}.session-expired-banner{z-index:10000;text-align:center;background:var(--accent,#f0556a);color:#fff;padding:12px 18px;font-size:.92rem;font-weight:600;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #00000040}:focus-visible{outline:2px solid var(--accent,#4f8ef7)!important;outline-offset:2px!important}.leaflet-container:focus-visible,.leaflet-container :focus-visible{outline:none!important}.leaflet-container a:focus-visible,.leaflet-container button:focus-visible{outline:2px solid var(--accent,#4f8ef7)!important;outline-offset:2px!important}.place-detail-group--video{color:#7f6bd6}.video-entry{margin:2px 0 6px}.video-entry-title{color:#7f6bd6;font-size:.9rem;font-weight:600}.video-entry-detail{color:var(--text-2);font-size:.8rem}.tech-chip--video{color:#7f6bd6;background:#7f6bd624;border-color:#7f6bd659}.video-editor{flex-direction:column;padding:6px 14px 14px;display:flex}.video-sub{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:7px;margin:16px 0 8px;font-size:12px;font-weight:700;display:flex}.video-sub:first-child{margin-top:4px}.video-sub .tech-ic{color:var(--text-2)}.video-row{background:var(--bg-hover);border:1px solid var(--border-soft,var(--border));border-radius:12px;margin:0 0 10px;padding:12px 14px}.video-row-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:2px;display:flex}.video-row-head strong{font-size:15px;font-weight:700}.video-row-remove{color:var(--text-2);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1}.video-row-remove:hover{color:var(--accent)}.video-row-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.video-chip:hover{border-color:var(--accent-glow)}.video-nested{background:#7f6bd614;border-left:3px solid #7f6bd68c;border-radius:0 10px 10px 0;margin:14px 0 2px;padding:10px 12px 12px}.video-nested-label{letter-spacing:.06em;text-transform:uppercase;color:#7f6bd6;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.video-nested-label .tech-ic{color:#7f6bd6}.video-add-row{flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 4px;display:flex}.video-add-row .console-pick,.video-add-row .console-pick-actions{margin:0}.video-add-btn{border:1px solid var(--accent-glow);background:var(--accent-dim);color:var(--accent);cursor:pointer;transition:all var(--transition);border-radius:999px;align-items:center;gap:6px;padding:7px 18px;font-size:12.5px;font-weight:600;display:inline-flex}.video-add-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.video-editor .console-pick--compact,.video-editor .console-pick{border-left:none;margin:0;padding-left:0}.console-pick--compact .console-pick-actions{margin:0}.video-generic-chip{color:#7f6bd6;background:#7f6bd629;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin:2px 8px 6px 0;padding:4px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.video-generic-chip button{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.video-hint{color:var(--text-2);margin-left:8px;font-size:.76rem;display:inline-block}.video-chips{flex-wrap:wrap;gap:6px;display:flex}.video-chip{background:var(--bg-2);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:999px;padding:4px 11px;font-size:.82rem}.video-chip.active{background:var(--blue);border-color:var(--blue);color:#fff}.video-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:6px;margin-top:4px;font-size:.8rem;font-weight:700;display:flex}.video-sublabel{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);margin:8px 0 4px;font-size:.74rem;font-weight:700}.video-nested{background:#7f6bd612;border-left:3px solid #7f6bd68c;border-radius:0 8px 8px 0;margin-top:10px;padding:8px 10px 14px}.video-nested-label{letter-spacing:.04em;text-transform:uppercase;color:#7f6bd6;margin-bottom:6px;font-size:.72rem;font-weight:700}.video-nested-row{background:var(--bg-1);border-radius:8px;margin-bottom:6px;padding:6px 8px}.video-nested--view{margin-top:4px}.video-add-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.video-add-row .console-pick,.video-add-row .console-pick-actions{margin:0}.video-text-input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-2);width:100%;color:var(--text);border-radius:10px;margin:4px 0 2px;padding:9px 11px;font-size:.9rem;display:block}.video-text-input.video-num{max-width:120px}.video-inline-input{border:1px solid var(--border);background:var(--bg-2);min-width:110px;color:var(--text);border-radius:999px;padding:3px 9px;font-size:.82rem}.section-note{flex-direction:column;gap:4px;margin:10px 12px 12px;padding-top:10px;display:flex;position:relative}.section-note:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:0;right:0}.section-note-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.8px;font-size:.72rem;font-weight:600}.section-note-input{box-sizing:border-box;width:100%;color:var(--text-1);resize:vertical;transition:border-color var(--transition);background:0 0;border:0;border-radius:0;outline:none;min-width:0;padding:2px 0 8px;font-family:inherit;font-size:.9rem}.section-note-input:focus{outline:none}.section-note-input::placeholder{color:var(--text-3)}.section-note-add{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:4px 0;font-size:.95rem;font-weight:600;display:inline-flex}.section-note-add:hover{text-decoration:underline}.section-note-add--pill{background:color-mix(in srgb, var(--text-1) 10%, transparent);color:var(--text-2);border-radius:999px;padding:9px 16px}.section-note-add--pill:hover{background:color-mix(in srgb, var(--text-1) 16%, transparent);text-decoration:none}.rigging-actions{box-shadow:inset 0 1px 0 var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.rigging-actions .section-note{flex:220px;margin:8px 0 2px}.rigging-actions .section-note:before{display:none}.rigging-actions .section-note{padding-top:0}.rigging-actions .section-note .section-note-input{border:1px solid var(--border);background:color-mix(in srgb, var(--text-1) 6%, transparent);border-radius:10px;padding:9px 12px}.section-note-detail{margin:2px 0 10px}.section-note-detail-text{color:var(--text-2);white-space:pre-wrap;font-size:.86rem;line-height:1.45}.deploy-bar{color:#fff;text-align:center;background:#b45309;justify-content:center;align-items:center;gap:9px;padding:8px 16px;font-size:13.5px;font-weight:600;line-height:1.3;display:flex}.deploy-bar-dot{background:#fff;border-radius:50%;flex:none;width:8px;height:8px;animation:1.4s ease-in-out infinite deploy-pulse}@keyframes deploy-pulse{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.deploy-bar-dot{animation:none}}.proj-dropdown-icon{color:var(--blue);flex-shrink:0}.proj-dropdown-btn>span{flex:1;min-width:0}.proj-dropdown-arrow{color:var(--text-2);flex-shrink:0;transition:transform .2s}.proj-dropdown-arrow.open{transform:rotate(180deg)}.local-lights-card{background:var(--bg-elevated);border-radius:14px;padding:2px 16px}.switch-row{cursor:pointer;color:var(--text-1);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;font-size:.95rem;display:flex}.switch-row input.switch{appearance:none;background:color-mix(in srgb, var(--text-1) 22%, transparent);cursor:pointer;border-radius:999px;flex-shrink:0;width:72px;height:32px;margin:0;transition:background .2s;position:relative}.switch-row input.switch:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .2s cubic-bezier(.32,.72,0,1);position:absolute;top:2.5px;left:2.5px;box-shadow:0 2px 5px #00000059}.switch-row input.switch:checked{background:var(--accent)}.switch-row input.switch:checked:after{transform:translate(40px)}.local-lights-conn{padding:13px 0 14px;position:relative}.local-lights-conn:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:0;right:0}.add-place-form .local-lights-conn-label,.local-lights-conn-label{letter-spacing:.8px;text-transform:uppercase;color:var(--text-2);margin:0 0 8px;font-size:.72rem;font-weight:700;display:block}.pgv-name-row{align-items:center;gap:10px;display:flex}.pgv-name-row .pgv-name{flex:1;min-width:0}.pgv-rating{color:var(--star,#f5a623);background:color-mix(in srgb, var(--star,#f5a623) 16%, transparent);border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:.85rem;font-weight:700}@media (width<=768px){.pgv-grid{padding:0 0 max(16px, env(safe-area-inset-bottom));grid-template-columns:1fr;gap:0}.pgv-item{background:0 0;border:0;border-radius:0;align-items:flex-start;gap:14px;min-width:0;padding:14px 16px}.pgv-item+.pgv-item{position:relative}.pgv-item+.pgv-item:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:90px;right:16px}.pgv-item:hover,.pgv-item.active{background:var(--bg-hover);border:0}.pgv-wrap{overflow-y:auto}.pgv-grid{overflow:visible}.pgv-toolbar{z-index:6;position:sticky;top:0}.pgv-thumb{border-radius:10px;width:60px;height:60px}.pgv-info{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex;overflow:hidden}.pgv-name{font-size:1.02rem;font-weight:700}.pgv-cat{padding:3px 10px;font-size:.82rem}.pgv-addr{font-size:.85rem}.pgv-distance{color:var(--accent);font-size:.85rem;font-weight:600}.header-spacer{display:none}.view-tabs{background:#1c1c1e;border:0;border-radius:999px;flex:1;gap:0;min-width:0;padding:4px}.view-tab{min-width:0;color:var(--text-1);background:0 0;border-radius:999px;flex:1;padding:9px 12px;font-size:1rem;font-weight:500}.view-tab.active,.view-tab.active:hover{color:#fff;background:0 0;font-weight:700}.view-tab:hover{color:var(--text-1);background:0 0}.settings-toggle{color:#fff;background:#1c1c1e;border:0}[data-theme=light] .view-tabs{background:#e9e9ec}[data-theme=light] .view-tab.active,[data-theme=light] .view-tab.active:hover{color:#000;background:0 0}[data-theme=light] .settings-toggle{color:#000;background:#e9e9ec}}.pfs .pfs-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.pfs-shown{background:var(--detail-card,var(--bg-elevated));color:var(--text-2);border-radius:12px;margin-bottom:14px;padding:13px 16px;font-size:.95rem}.pfs-shown b{color:var(--text-1)}.pfs-clear{cursor:pointer;color:var(--accent);background:0 0;border:0;padding:0 0 12px;font-family:inherit;font-size:.9rem;font-weight:600}.pfs-group{margin-bottom:16px}.pfs-label{letter-spacing:.6px;text-transform:uppercase;color:var(--text-2);align-items:center;gap:6px;margin-bottom:8px;font-size:.78rem;font-weight:700;display:inline-flex}.pfs-chips{flex-wrap:wrap;gap:8px;display:flex}.pfs-count-row{color:var(--text-2);align-items:center;gap:10px;margin-top:10px;font-size:.9rem;display:flex}.pfs-count-row .elec-counter{margin-left:auto}.pfs-count-value{color:#f59e0b}.pfs-cap{align-items:center;gap:8px;margin-bottom:8px;display:flex}.pfs-cap label{color:var(--text-2);flex:0 0 82px;font-size:.9rem}.pfs-cap input{background:var(--detail-card,var(--bg-elevated));min-width:0;color:var(--text-1);border:1px solid #0000;border-radius:10px;outline:none;flex:1;padding:9px 12px;font-size:.92rem}.pfs-cap input:focus{border-color:var(--accent)}.pfs-hint{color:var(--text-3);margin-top:4px;font-size:.8rem}.pfs-switches{background:var(--detail-card,var(--bg-elevated));border-radius:12px;padding:0 16px}.pfs-switches .switch-row+.switch-row{box-shadow:inset 0 1px 0 var(--border)}.pfs-switches .switch-row span{align-items:center;gap:8px;display:inline-flex}.pgv-proj-btn{position:relative}.pgv-filter-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:6px}.pgv-proj-btn--tag{border-color:var(--border)}@media (width>=769px){.pfs-backdrop{justify-content:center;align-items:center;padding:24px}.datepicker-pop.pfs{border-radius:18px;width:min(540px,100%);max-height:min(82vh,760px);padding:10px 20px 20px;animation:.2s cubic-bezier(.32,.72,0,1) pfs-pop;box-shadow:0 24px 64px #0009}@keyframes pfs-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}}
